FPGA/IC设计入门7-功能仿真及验证
上一篇 /
下一篇 2007-04-28 18:49:52 / 天气: 晴朗
/ 心情: 高兴
/ 个人分类:IC Design
功能仿真及验证
验证的目的视为了保证设计实现提供的功能特性是正确的,是与设计规范中定义的功能特性保持一致。验证的目的在于证明设计没有错误。然而事实上验证只能证明某些设计错误存在或者不存在,验证是一个穷举设计中可能存在的错误的过程。业界中存在着相当度的验证手段和验证的策略,其中主要的验证手段可以粗略地划分为功能仿真技术、静态时序分析技术、形式验证技术等。
功能仿真与调试
功能仿真是设计验证的主要形式。从仿真的抽象层次来看,包括基于事件(event based)的仿真,基于时钟周期(cycle based)的仿真,基于事务交易(tansaction based)的仿真。
基于事件的仿真器把输入激励的变化认为是事件的触发,每一个仿真时间仿真器处理一个事件触发,根据事件触发的内容对整个设计重新计算直到一个仿真稳态出现为止。
基于事件触发的仿真特点是同时覆盖了设计的功能和时序模型,仿真结果精确,它非常容易探测到设计中的毛刺电路,尤其适用于异步电路的仿真。
基于时钟周期的仿真在一个时钟周期那没有时间的概念,它只在时钟的上升沿或下降沿进行触发,每一个时钟周期的时间对电路计算一次。
基于事务交易的仿真以数据包、图形、语音等对象作为直接的仿真激励而不在是添加到设计引脚的激励波形。
功能验证的方法主要有三种:黑盒法、白盒法和灰盒法。
架构测试环境在软件仿真过程称作“writing testbenches”。Testbench通常是指这样的代码,它对设计进行恰当的配置、产生测试激励盒有选择性地观察地响应。Testbench一般用硬件描述语言Verilog HDL或VHDL实现,也可以包含C语言或者C++语言产生地激励数据加上PLI,现在业界还有专门地验证语言Vera和Specman E。
今后有空再跟大家介绍一下Modelsim和VCS:)
导入论坛
收藏
分享给好友
管理
举报
TAG: