请问专家们:
1 8168采集、DSP处理、显示的图像数据是放到DDR3中的么??
2 如果是,那么请问DDR3的处理速度是1.6GHz,,Demo例程中的OSD算法,为何必须要把数据用DDR3中传输到DSP的L2中??如果不用DMA传输,直接对DDR3中的数据进行处理不可么??
3 如果必须用到DMA传输,那么DSP的L2缓存只有256K,根本容不下一幅彩色图像,如果要在DSP中实现图像的旋转,那么应该如何处理呢??
非常感谢!
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
请问专家们:
1 8168采集、DSP处理、显示的图像数据是放到DDR3中的么??
2 如果是,那么请问DDR3的处理速度是1.6GHz,,Demo例程中的OSD算法,为何必须要把数据用DDR3中传输到DSP的L2中??如果不用DMA传输,直接对DDR3中的数据进行处理不可么??
3 如果必须用到DMA传输,那么DSP的L2缓存只有256K,根本容不下一幅彩色图像,如果要在DSP中实现图像的旋转,那么应该如何处理呢??
非常感谢!
- 图像的处理通常是分块操作的。很多图像处理也无需对整幅图像都做处理,一部分就可以了。
- 不可能直接在DDR内对数据进行修改,只会是 DDR读到处理器,处理,写回DDR。这样数据出现在L2是正常的
你好,谢谢你的回答!还想请教你两个问题:
(1)你说的不能直接在DDR内对数据进行修改,是指不能对FVID2_frame中,诸如addr[0][0],addr[0][1]中的数据进行修改么,就像附件中标出的红色部分,我只是在AlgLink_algProcessData中增加了一段这样的代码,就很卡,就是因为我直接修改了DDR的数据么??
如果要改写此段代码,需要用到函数SWOSD_TI_DMA_Fast2D1D()或2D2D()把数据传输到L2中么??
(2)DDR为不同的子系统分配了不同的空间,做算法处理的时候,需要把数据(Video M3)拷贝到DSP所属的DDR空间中么??
你好,谢谢你的回答!不过我还是有两个问题请教您:
(1)我在AlgLink_algProcessData(0函数中添加了一段代码(如附件),实现的功能为,将Pframe->addr[0][1]的彩色分量置为128,结果就很卡,这是为什么 呢?是因为,我直接对DDR的数据进行修改了么??
如果要优化此段代码,需要用DMA把数据传送到L2,进行处理,然后再用DMA把数据从L2传送到DDR么??
DMA读,写的过程,是用到函数SWOSD_TI_DMA_2D2D()或2D1D()函数么??
(2)如果算法较为复杂,L2缓存容量不够,可否不将数据从DDR传送到L2中,将数据缓存在DDR分配给DSP的专有内存中,可以么??
(3)能否详细告知从采集,处理,到最终显示,数据的存储方式,或者说,每一步数据存在哪里??
非常感谢!