在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
分享 uvm1.2与uvm1.1的区别
索手锋芒 2016-6-1 17:42
1.关于在seuqnce中raise/drop objection T-M-D,copy下面这段话居然有危险字符 uvm1.2不建议user自己去在sequence中手动去raise/drop objection,所以在uvm1.1中的经典写法在1.2中就有问题. 如 下所示(虽然被set到default_sequence的top sequence还有starting_phase这个变量,但是null的。1.2中建议用 set_a ...
个人分类: UVM notebook|6030 次阅读|0 个评论 热度 1
分享 debug simulation hang技巧
索手锋芒 2016-5-23 15:05
Case: 作为DV,经常碰到各种simulation hang住的情况,比如使用wait忘了加delay,使用forever等,有时候非常难通过打log来debug。 Resolution: 1.使用DVE,在compile option 中加-debug_all,在simulation option中加-gui,在DVE中设定断点然后simulation step by step。这种方法其实还是蛮繁琐的,因为即使1个cycle ...
个人分类: SV note|1222 次阅读|0 个评论
分享 rand_mode使用注意
索手锋芒 2016-5-23 14:36
Case: 有一个DUT cfg , 可以在simulation过程中动态配置,并有一定的constraint;但是在某一种模式下存在limitation导致该变量必须保持不变而其它变量还是可以random,由于testplan是没有预期到这个limitaion,所以并没有做特殊处理。所以想到直接把该变量rand_mode设为0;结果发现在simulation的时候报错,指示其defau ...
个人分类: SV note|1662 次阅读|0 个评论
分享 关于set_type_override_by_type
索手锋芒 2016-3-31 11:27
set_type_override_by_type其overrid_type必须是original_type的子类,现在碰到一个case: 原本有一个父类base_sequence。 其它子类的sequence都是从这个base_sequence里面引出来的。 后来,design基本属性有变化,本来想直接再extends出一个子类,然后用set_type_override_by_type去overrid父类,理所当然的想到其它子类就 ...
个人分类: UVM notebook|6943 次阅读|0 个评论 热度 1
分享 vcs seed的产生技巧
索手锋芒 2016-3-15 16:09
testbench一切随机变量都是和vcs的 +ntb_random_seed 变量相关。这个option的值相当于所有random var的种子,有几种比较差的做法: 1. 从一个固定数开始递增或递增, 这样,seed之间相差不大,testbench中的随机数其实变化不是特别大,所以达不到很随机去验证的目的。如果有10个rand int var, seed =1 和seed = 2两次仿真 ...
个人分类: eda tool|6797 次阅读|0 个评论
分享 `uvm_do_with注意事項
索手锋芒 2016-3-9 09:48
Case: 在上层top_seq调用下层sub-seq或seq_item时,可能会使用`uvm_do_with对下层的random变量进行约束。 通常为了coding的方便,上层和下层seq变量的名字可能是一样的。这样就有一个问题,我们会发现如果使用`uvm_do_with(sub_seq, {var_a == var_a;}), 这个约束是无法启作用的,下层的var_a该怎 ...
个人分类: UVM notebook|5676 次阅读|0 个评论
分享 pkt在tlm中傳輸注意事項
索手锋芒 2016-3-4 09:26
component 之間通過tlm傳輸pkt的時候,需要注意在接到pkt后,第一步一定要進行copy后進行操作,而不是直接拿到handle后進行操作。因為這要可能會破壞原始數據,如果有幾個component都要接收這份pkt,就會導致后處理的數據被破壞。 virtual function uvm_object clone () :The default implementation calls create fo ...
个人分类: UVM notebook|824 次阅读|0 个评论
分享 vcs dump fsdb
索手锋芒 2015-8-5 21:36
关于破解: 现在verdi已经是synopsys的产品了,所以verdi和vcs的license可以破解在一个license文件里面了。 之前在破解的时候verdi直接解压后设定环境变量就用了;没有额外的操作。 至于在.v文件中使用$fsdbDumpfile来dump fsdb以供verdi读取,也不用像以前需要在环境变量里面指定相关变量; 直接在compile option里 ...
个人分类: eda tool|1861 次阅读|0 个评论
分享 ahb slave input hready_in的作用
索手锋芒 2015-4-25 16:24
由于ahb的addr phase和data phase是可以overlap的,当发生back-to-back操作的时候,会出现当前cycle是上一个slave的data phase,也是下一个slave的addr phase。 在这时如果S1的heady_out拉低,说此时我最后一个data还没准备好(read access)或还没有准备收(write access); 而此时S2已经看到访问自己的NONSEQ,而且我已经 ...
个人分类: AMBA note|4255 次阅读|0 个评论
分享 multi-clock system driver使用clock blocking注意事项
索手锋芒 2015-4-18 23:27
如果driver对interface驱动是使用clock blocking,那么在多时钟域的情况下,由于clock blocking的特性,有可能会有丢失package的问题。 ex: task my_rd_task; cb.rd_en = 1'b1; cb.address = tr.addr; @(cb); cb.rd_en = 1'b0; cb.addr= 0;   ...
个人分类: UVM notebook|825 次阅读|0 个评论
关闭

站长推荐 上一条 /1 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-5-6 09:34 , Processed in 0.011899 second(s), 3 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部