论文部分内容阅读
随着集成电路(IC)技术的发展,电子设计自动化(EDA)逐渐成为重要的设计手段,已经广泛应用于数字电路和数字信号处理(DSP)系统等许多领域。同时,随着门电路数目和系统复杂性以指数倍增,产品设计中功能验证也日益重要。 基于仿真的验证和形式验证是用于测试的两种方法。由于形式验证难以用于大型设计的测试,所以HDL验证的主要方法是通过大量的测试向量仿真HDL代码来完成。实际中一般运用功能覆盖方法来定量分析仿真的完备性,虽然100%的覆盖并不能表明程序100%的没有错误,但却是衡量测试是否完成的一个重要标准。 本文首先综述了EDA技术的设计流程,功能验证的重要性,两种验证方法,以及测试平台的构建。然后分析了语句覆盖、路径覆盖、判定覆盖,接着重点分析了du对覆盖,du对覆盖是语句覆盖和路径覆盖的折衷。对于状态机测试,重点分析了SFSM覆盖。由于快速傅立叶变换(FFT)是DSP的核心技术,所以本文用VHDL语言实现了一个浮点FFT实时处理器,并编写了测试平台,进行了代码覆盖分析。 本设计采用基-2算法,单精度32位二进制的浮点形式,主控制器采用状态机建模。整个设计利用Xilinx公司提供的先进的ISE5.3系列软件,采用了先进的结构化设计思想。总设计通过了ModelSim仿真与验证,在主时钟频率为100MHz时,完成8点FFT的操作总共需要875ns的时间,二十多个模块的代码覆盖率达到了100%,个别模块的代码覆盖率也在90%以上。实践结果表明,应用VHDL实现的FFT处理器可快速完成浮点数据快速傅式变换,代码覆盖率也表明系统的测试工作比较完备。