在验证中,有时候对具有复杂算法的design,在验证环境中可能需要去拿c model做referrence model来做比对。 主要有两种做法: 一种是c model吃输入文件后输出结果,design也吃同样的输入文件,把c mdel和design产生的输出进行比对。 另一种是,直接动态的混合仿真,在仿真过程中调用c model的函数处理数据,或者调 ...
ref:http://www.sutherland-hdl.com/papers/2012-DAC_What-is-new-in-SystemVerilog-2012.pdf (只提取一些目前自己感觉比较实用的地方) 1.构造函数new 从前 想要用一个父类handle指向一个子类的object,需要三步 现在 通过 typed new()可以直接完成: base_trans t_base = reset_tran ...
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 ...
Case: 有一个DUT cfg , 可以在simulation过程中动态配置,并有一定的constraint;但是在某一种模式下存在limitation导致该变量必须保持不变而其它变量还是可以random,由于testplan是没有预期到这个limitaion,所以并没有做特殊处理。所以想到直接把该变量rand_mode设为0;结果发现在simulation的时候报错,指示其defau ...
使用fork.. join_any/join_none,我们有时候需要在某些条件下kill掉之前的线程。 最简单的方法是使用disable fork。 但有时候,想要kill的fork离caller太远,甚至中间还隔其它fork。 这时候去get需要kill的线程的handle,在需要的地方去kill掉 EX: process p; fork p = process::self ...
Riching
京存高性能存储
jason.aliang
cj_181888888
zhaowell
teresa_xie
ElectroRent
toradex
metotj
hirain123
18222691126
mjd888
模拟后端的小白
Iamliutt
xiaozhuo
edadoc2013
l030121
小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网 ( 京ICP备:10050787号 京公网安备:11010502037710 )
GMT+8, 2024-4-28 03:53 , Processed in 0.012439 second(s), 3 queries , Gzip On, Redis On.