【技术分享】FPGA&DSP 图像采集与处理系统
0赞最近在研发一个图像识别系统,大致要求就是FPGA 实现图像数据的采集,然后DSP 进行图像的预处理,然后通过FPGA 的USB传送到PC。
首先选型。对于FPGA 选了 spartan6 系列的100T ,带高速收发器,这个收发器主要是用来DSP和FPGA 互相交互数据,这种接口类似PCIE,这种高速口,可达到上Gbit的速度,当芯片高端了以后,时钟也上去了,选用了差分时钟,频率为200M,当然单端输入的时钟也OK 的,因为内部有PLL,所以一切皆有可能,呵呵,PCIE 也是单独时钟的,这里注意的是FPGA 和DSP 的PCIE 时钟要一致的。另外FPGA 还跟DSP 做了EMIF 的总线通信。在做图像处理的时候,FPGA 还需要扩展一个DDR,100T 支持DDR3,支持2片,但是分别在不同的bank,而且是IO 最多的2个bank为了全局考虑,就只做了一片DDR2,128M,基本够用了,然后还做了一个备用的NANDFLASH和SPI flash 方便存一些数据和变量。
DSP 这边,自然也是选带高速收发器的DSP,然后最主要的还是要求主频很高,因此选择了6455,主频达到1G,这个芯片有个纠结的地方是调试的时候才发现的,就是CVDD和GND之间阻抗很小,只有几十欧姆,说道这里又有一个插曲以前做FPGA spartan3的时候,发现BGA 焊接上去就短路,当我打电话去问的时候,xilinx官方说是芯片可能受潮了,吧芯片烘烤24小时,我后来烘烤到第二天,发现BGA 在焊接上去的时候,就没有短路了。这里的6455阻抗很小,万用表测量是短路状态,这个我烘烤了,也是这样的,这说明,DSP 功耗高也是有原因的,当然也可能是芯片问题,因为我们买的是散芯,然后贴2片DDR2,和一个EEP、SPIflash 。总体上还是比较简单。最终的验证终于证实了,外面的散货真的不可信啊!还是TI 原厂的芯片好使,上去就OK 了!
FPGA和DSP设计完了以后,调试中,FPGA 比较顺利,一下就OK,DSP 就遇到纠结的东西,我用的510 plus 这个仿真器1.2K,真贵呀,说是可以识别64+高性能DSP,但是还是识别不到,但是发现XDS100V2 非常的坚挺,居然能识别,虽然慢是慢了点,不过也不错了,哈哈。
到目前,FPGA 与DSP 都调试OK,图像采集与处理也OK,通过CY7C68013 上传到了PC非常OK,哈哈!!
哈哈,大家下面欣赏下我的DSP TMS320C6455 和100T 的板子吧,由于我没有拍摄实物,所以看下allegro 的PCB 吧
下面的时间我会继续多核DSP,C6678,当然仍然是采用FPGA 和DSP 模式,因为DSP 需要FPGA 提供上电的时序,而且DSP单独工作也是不能做啥的,需要一个FPGA 或则ARM 这样的东西配合,应该是互相配合吧!哈哈!!
有兴趣的盆友可以互相交流下!!