|
|
| | -文章搜索 - 最新文章 - | |
什么是验证环境? --- 验证的流程VHDL实例 |
| 发布时间:2006年7月27日 点击次数:1772 |
| 来源: 作者: |
我们知道验证分为:编写testbench,利用仿真工具进行功能仿真,利用检测覆盖率工具进行代码覆盖率分析,进行loose的综合,等价性检测,门级仿真。当然在这些步骤之中,都需要同时写就各个阶段的文档。 各个验证阶段的关系,见下图: 下面概略性的讲解每一个步骤: 1. 编写testbench 编写testbench 是验证工程师的一个重点工作,好的testbench易于阅读,升级,重用。要写就好的testbench是基于对设计的理解和对spec的要求上的。testbench所要使用的语言有很多,比如:vera,systemverilog ,verilog 和C 等等。每种语言都有各自的好处,在此处就不说明了。比如C具体的这方面的内容见: 论坛的 验证语言版块 2.功能仿真 在testbench写就后,就需要对这个设计进行验证了。而这个步骤就是利用仿真工具进行仿真。这一阶段的工具很多,最典型的是: Cadence 的 NC系列,Synopsys的VCS以及Metor的 Modelsim工具。这一阶段一般都分为三步骤:编译,连接和仿真。 编译,就是对所写的testbench每个文件进行语法验证和编译; 连接,把每个testbench文件进行连接; 仿真,对testbench进行添加激励并按时序进行运行。 3.综合 这里的综合,是非常宽松的综合,所涉及的约束也不是很多,但是能一定程度反映问题。或许你可以只设一个上限频率,观察是否符合时序要求,如果是在10%左右或许还可以通过综合的技巧进行修改,如果有大的误差,就表明设计有问题,需要重新设计。这一步骤主要是想产生,门级的电路描述。采用的工具可能是:Synopsys的Design Compiler , Cadence的RTL Compiler。 4. 等价性检测 由于综合工具不能保证综合后的设计是百分百正确的,检测综合后的网表和RTL代码之间的一致性就是非常必要的。这一阶段的工具:LEC。 5. 门级仿真 这一步骤是对网表级描述的设计进行仿真,这一步骤与功能仿真不同的是有一些延时信息引入到仿真中,更能接近于现实的情况。 说到这里,所有主要的验证步骤都已经涉及到,这里讲的也许有诸多不全或者疏忽和错误之处,请大家指正和补充。 另:这里提到的工具的使用和技巧,请见设计工具版 |
|
|
|
|
[EDA/IC设计] 相关文章: FPGA中双向端口的设计问题简介:
在工程应用中,双向电路是设计者不得不面对的问题.在实际应用中,数据总线往往是双向的.如何正确处理数据总线是进行时序逻辑电路设计的基础.在程序设计过程中,关键技术在于:实体部分必须对端口属性进行申明,端口属性必须为inout类型,在构造体需要对输出信号进行有条件的高阻控制.在双向电路的处理问题上,常用的处理方式有两种,在介绍双向电路的处理方式之前,先看看双向电路的基本格式: ENTITY bidir_pin IS ( bidir : INOUT std_logic; oe, clk, from_core : IN std_logic; to_core : OUT std_logi...... 和可靠性有关的几个概念
FPGA中的冒险现象
关于时钟的讨论---3
关于时钟的讨论---2
提高同步系统的运行速度
assura RCX 简介(转)
用MAX+PLUSⅡ开发Altera CPLD
[转载]基于CPLD和接触式图像传感器的图像采集系统
视频分配器中提高信号完整性的方法 |
|
|
|