一 验证和仿真概念
验证是指:在将设计付诸于硬件之前所做的一切确保设计正确的手段 保设计正确的手段。在传统 ASIC设计领域领域, 验证是最费时耗力的一个环节,到了CPLD/FPGA等可编程逻辑器件领域,验证的问题就简单多了。CPLD/FPGA的一个重要优势在于,可大大地简化验证流程,缩短设计到市场的时间。我们可以使如ModelSim或Active-HDL等HDL仿真工具对设计进行功能和时序上的仿真 进;也可以将一些仿真硬件与仿真工具相结合,通过软硬件联合仿真,加速仿真速度;我们还可以在硬件上直接使用逻辑分析仪、示波器等测量手段直接观察设计的工作情况 。
仿真的一般性含义是:通过EDA工具,通过对设计实际工作情况的模拟 实,验证设计的正确性。。由此可见,仿真的重点在于使用EDA软件工具模拟设计的实际工作情况 实际工作情。在CPLD/FPGA设计领域最通用的仿真工具是ModelSim。
二 仿真的流程
1 仿真的切入点与目标
特别需要强调的是,在FPGA/CPLD设计流程中提到3种仿真:功能仿真 、综合后仿真与时序仿真,这些仿真步骤也被 称为仿真的切入点。
功能仿真的主要目的在于验证语言设计的电路结构和功能是 否和设计意图相符;
综合后仿真的主要目的在于验证综合后的电路结构是否与设计意图相符,是否存在歧意综合结果;
布局布线后仿真,即时序仿真的主要目的在于验证是否存在时序违规。
这些不同阶段不同层次的仿真配合使用,能够更好的确保设计的正确性, 明确问题定位,节约调试时间。
以上所述仅仅是最常用3种仿真切入点,其实EDA工具还提 供很多其他仿真切入点。学习仿真的首要问题是要搞清楚每种不同切入点的仿真的目的功能和输入输出,做到有的放矢。
2. 仿真的流程图
Figure 1 Simulation Flow
Simulation step to step:
为DUT(Design Under Test, 待测试设计)提供激励信号;
正确实例化DUT;
将仿真结果的数据显示在终端或者存为文件,或者显示在波形窗口以供分析检查;
复杂设计可以使用 EDA工具,或者通过用户接口自动比较仿真结果与理想值 自动比较仿真结果与理想值,实现结果的自动检查。
文章评论(0条评论)
登录后参与讨论