读书笔记
xuhqist
这个作者很懒,什么都没留下…
展开
-
词汇解释
门级网表:逻辑门及相互之间的连接关系 逻辑综合:在标准单元库和特定的设计约束的基础上,把设计的高层次描述转换成优化的门级网表的过程 断言:表示设计者预期行为 覆盖:衡量验证进度,帮助设计者判断什么时候验证工作可以认为是完整的了原创 2016-12-14 12:25:19 · 200 阅读 · 0 评论 -
Verilog仿真器
Verilog仿真器根据执行仿真的不同方法,Verilog仿真器可以分为以下3种类型: ① 解释型的仿真器。 解释型仿真器读入Verilog代码,在计算机的内存中生成数据结构,然后解释性地运行仿真,每次运行仿真时,进行一次编译,编译通常很快就可以完成。Cadence公司的Verilog-XL仿真器就是一种解释型的仿真器。 ②编译型的仿真器。编译型的仿真器读入Verilog代码,然后把它转换为相应翻译 2016-12-14 10:30:30 · 3044 阅读 · 0 评论 -
Class
使用类的好处: 1,代码复用 2,代码易于维护 3,内存管理class rectangle; int length; int width; function new(int l, int w); length = l; width = w; endfunction function int area()翻译 2016-12-17 11:25:20 · 303 阅读 · 0 评论 -
从RTL到逻辑门的逻辑综合过程
从RTL到逻辑门的综合过程由逻辑综合工具自动完成,其中包括以下几个步骤: ① RTL描述 设计者在高层次上使用RTL结构描述设计。设计者在功能验证上耗费一定的时间,以确保RTL描述的功能正确无误。功能验证完成后,才能把RTL输入到逻辑综合工具。 ② 翻译 RTL描述被逻辑综合工具转换为一个未经优化的内部中间表示。这一过程称为翻译。翻译器读入Verilog RT翻译 2016-12-14 16:12:07 · 2339 阅读 · 0 评论 -
在UVM中添加env
在验证平台中加入reference model、driver、scoreboard等组件后,如何在验证平台中对它们进行实例化呢?显然使用factory机制注册后使用run_test(),已经不行啦,run_test最多只能实例化一个组件。因此需要引入一个容器类,这个容器类可以包含所有的组件,通过对容器类的实例,就可以实现对所有组件的实例化。这个容器类称为uvm_env。所有的env都应该派生于uvm翻译 2016-12-22 14:02:47 · 1968 阅读 · 0 评论 -
UVM中的TLM通信
TLM即事务级建模,用于在uvm_component之间通信。如monitor向scoreboard传递一个数据。 一个transaction就是把具有一定功能的一组信息封装在一起而成为的一个类。 常用术语: put操作: 发送者A将一个transaction发送给B,A的端口为PORT,B的端口为EXPORT,数据从A流向B; get操作:A向B索要一笔transactio翻译 2016-12-26 21:22:31 · 1955 阅读 · 1 评论 -
覆盖率
为了测量功能覆盖率(functional verification),首先要设定验证计划(verification plan)。 在测试平台中对变量和表达式的值进行采样。这些采样点就是覆盖点(coverpoint)。 而覆盖组(covergroup)就是包含了同一时间采集的一个或多个数据点。covergroup CovPort; coverpoint tr.port;endgrouop翻译 2016-12-19 21:02:12 · 508 阅读 · 0 评论 -
SV中的interface
随着设计复杂度的增加,模块之间的连接也变的复杂。通常连接DUT和Testbench的信号很多,一旦连接错误,平台就不能工作。并且很难发现其中的错误。添加信号的时候也是非常麻烦的。逻辑设计已经变的如此复杂,即使是块之间的通信也必须分割为独立的实体。SV中接口为块之间的通信建模,接口可以看成是一捆智能的连线。接口包含了连接,同步,甚至是两个块或者更多块之间的通信功能。它们连接了设计和测试平台。`ifn翻译 2017-05-23 22:35:00 · 3132 阅读 · 0 评论