设计验证是视频通信设计所面临的主要挑战之一,除了传统的模拟之外,对新芯片做仿真也是避免在整个芯片制造过程中重复设计的一个重要方法。样机设计遇到的问题表明,设计人员不仅要考虑芯片工作性能,而且还要考虑怎样对芯片进行控制和通信。本文通过实例介绍如何开发仿真环境,完成对芯片的验证。
由于垂直转接器减少了FPGA上的引线数,所以没有足够的引线把36位总线纳入“总线”网络,因此用菊花链电缆连到每个FPGA所配备的垂直转接器翼形连接器上。该线缆为36位总线提供直接连接,但在连结过程中会大量增加电容量,为减少增加电容,电缆之间连接板采用四个单股菊花链线缆,连接板还带有在线上拉电阻插座,可进行直接信号连接。这些分立板允许用四个菊花链电缆提供连续总线,每个信号可并联三个上拉电阻。在三种连接板上,只有一种板需要装配上拉电阻以提供36位三态总线所需时序,另两个连接板没有配上拉电阻。对样机系统的其它改动包括将DSP和存储器时钟放慢到其正常运行速度的一部分,同时增加DSP等待状态。
硬件问题解决之后,在要考虑的硅片代码和FPGA代码之间HDL也要改变。SDRAM芯片要求样机的刷新时间和原系统一样,但由于系统时钟速度降低,很少有系统时钟周期能满足刷新周期数量,为补偿时钟速度放慢,对存储器控制的模块进行修改使其提供刷新周期所需数量。这种代码改动只在仿真代码上进行,而不在硅片存储器控制模块上,每个模块所需HDL改动都用FPGA SRAM模型代替硅片SRAM模型。每个Cougar模块含有内置“中间结果暂存器”SRAM模型,为中间结果提供储存。由于这些SRAM模型在硅片代码中是用实例说明的,所以FPGA必须要有自己的SRAM模型,FPGA库提供的SRAM配置与硅库SRAM的工作方式相同。用于每个模块的FPGA存储器在存储器外部结构下构造并进行说明,存储器外部结构可提供与硅片库SRAM模型相同的引线输出,这样控制SRAM的HDL代码就不需要更改,用FPGA存储器外部结构就可直接替代硅片SRAM。
硬件平台和HDL改动完成之后,再开发DSP器件驱动器,并为PC编写图形用户界面(GUI),该GUI允许直接进入Cougar主处理器接口及预编程方案,用这种方法测试可验证的预缺省设置(如典型ISDN呼入设置)及用户选项(如PIP位置)。为便于调试,逻辑分析仪利用MP4调试特性和直接连接所需信号方式连接主机总线、DSP接口、视频输入、视频输出和SDRAM接口。硬件、软件和调试平台都完成以后,就可以着手开始验证工作了。
其它问题
验证工作还发现了以前不知道的一些需要改动HDL代码的设计问题,可以分为以下三类:
- 模拟测试可能会发现的问题。这类问题因为接口模型不完整而引起,如果模拟用另一种方式进行也可能会发现。
- 模拟未测试的问题。由于时间限制或者因为仿真系统比模拟环境测试效果更好,有些项目没有在模拟中测试。
- 由于仿真系统像真正系统一样使用异步外置接口而发现的问题。因为用户要求改变与片上时序不同步,所以这些问题通过了模拟但未通过仿真。
第一类问题采用更全面建模和深入模拟环境可以解决;在仿真中经常遇到的是第二类问题,因为系统复杂性需要模拟环境所没有的测试特性;第三类问题表明了与模拟相比仿真最引人注目的性能,虽然这类问题在模拟中不是不可能发现,但需要几个事件在特定时间以特定顺序发生才行,而这些事件的发生概率很小。第三类问题需要改变代码和重新综合,如果它们在硅片里已经做好,那么所有层都需要改动才能解决问题,要不然就只能减少功能。
除了验证之外,仿真系统还有助于软件开发。尽管Cougar芯片还在制造当中,但用仿真器模拟Cougar芯片已在DSP上开发生产软件驱动器,连上逻辑分析仪后,能更容易准确发现编程命令,以及用硅片替代仿真器后“芯片”在真实环境下如何反应,Cougar生产完成后,即可对为终端系统应用而定制的生产电路驱动器进行编写测试,并集成到整个DSP栈中。
仿真工作也有助于芯片调试。随着平台的开发,硅片上电效果非常清楚。把连接DSP开发板与仿真器的电缆拆除,然后将含有Cougar芯片的专用设计子板连到同一个连接器上,从软件观点看,实验室DSP电路驱动器需要修改以控制真正的NTSC/PAL解码器和编码器。硬件和软件都完成后,硅片在实验室工作台上加电一天即可调试完毕。通过整个样机制作工作可以学到很多经验,从而对正在开发的下一代MPEG-4芯片模拟和仿真策略做出改进。
Cinda Flynn
摩托罗拉半导体产品事业部