最近在做一个基于FPGA的实时成像系统
由于功能比较单一,即只需要基本的成像与显示调节,没有涉及到机器视觉方面,
所以只用了单FPGA(EP3C55F484)的方案,并且全部采用逻辑实现,这个硬件电路不是我们自己设计的因为这个项目是中间拿过来的(其实也就是别人做到一半,觉得做的不好,扔过来的),用的是别人的硬件设计,我们在此基础上设计软件部分
这个项目不算大,但要求短期完成,仅由2个人完成,一人负责探测器配置与数据采集,显示(ADV7123)控制,这个是我的partner的工作,另一人负责数据格式转换与算法实现,也就是我咯。
提供的硬件电路中仅有两片存储器,其中一片(异步ram)用于“显示控制模块”,该sram由“显示控制模块”独享;另一片ram(同步ram-ZBT)用于上述其它需要存储器的算法功能。其中“数据格式转换模块”,“校正模块”以及“参数模块”均需要使用这片同步ram,因此在使用过程中,这几个模块均需要向“仲裁模块”(流程图中未标)申请控制同步ram,由“仲裁模块”统一调配ram的使用。校正通过按键完成,需要控制挡片电机。
个人认为这个项目还是比较麻烦的,因为首先存储电路明显不够,需要合理控制访问冲突,此外呢ZBT-SRAM没有用过,不太熟悉相应的控制,而且由于图像数据16位,而RAM为32位(真无语,我也不知道为什么用32位的RAM),就要考虑如何充分利用存储空间的问题。
以后会把调试过程中的一些经验写下来,供自己和大家参考,因为涉及到保密问题,源码是不可以公开的希望大家理解。
用户291633 2010-8-27 15:12