有一个32*16 的FIFO 用于视屏采集 现要用DMA 将FIFO数据 按帧(176*144*2 Bytes) 送到SDRAM ,且DMA一帧只启动一次
FIFO深度 不等于 DMA配置传送的长度 这怎么实现DMA不间断传输啊 ???我是做 驱动的 硬件具体实现很多还是 不懂 希望高手赐教 !!!!
能不能多启动几次呢?反正只要把一屏数据传送完就再传送下一屏不就行啦?屏幕都是一个点一个点的打出来的。
dma还没有用过啊 啊 关注一下啊 好像对速度要求很高啊
一般DMA要设3个参数:
1. 传输的位宽:你这里应该是32位吧
2. 一个burst的长度:这取决于FIFO的大小,通常一个burst会把FIFO取空。每次FIFO被填满后,视频设备应该会发出一个DMA请求来触发一次burst
3. DMA传输的总量:因为你一帧只启动一次DMA,这个参数应该是176*144*2 Bytes。传完176*144*2 Bytes之后DMA会发出一个DMA中断,表明自己完成任务了。
具体的实现就要自己看芯片的datasheet了。