systemverilog验证学习笔记(3)
记分板
保存期望事务,找出测试平台接收到的实际事务相匹配的期望事务。 Class scorebroad; Transaction scb[$];
Function void save_expect(transaction tr); Scb.push_back(tr); Endfunction
Function void compare_actual(transation tr); Int b[$];
B=scb.find_index(x) with (x.src=tr.src); Case(b.size())
0:$display(“no match find”); 1:scb.delete(q[0]); Default:
$display(“error,multiple matches found”); Endcase
Endfunction: compare_actual Endclass
功能覆盖率
Program automatic test(busifc.TB.ifc); Class transaction;
Rand bit[31:0]data; Rand bit[2:0]port; Endclass
Covergroup covport; Coverpoint tr.port; Endgroup Initial begin Transaction tr; Covport ck; Tr=new(); Ck=new();
Repeat(32)begin
Assert(tr.randomize); Ifc.cb.port<=tr.port;
Ck.sample(); //收集覆盖率,触发覆盖组 @ifc.cb; End End Endprogram
Auto_bin_max指明了自动创建仓的最大值
Covergroup CovPort; Option. Auto_bin_max=2; Coverpoint tr.port; Endgroup 分成两个仓 bit[2:0]port
auto[0:3]auto[4:7]两个仓 仓
Covergroup Covport; Kind: Coverpoint tr.kind; { bins zero={0};
Bins lo={[1:3],5}; //1:3和5是一个仓
Bins hi[]={8:$}; //8到最大值15,8个独立的仓,hi_0,hi_1…….. Bins misc=deflaut; //一个仓代表剩余的值
Bins t1=(1,2=>3,4); //翻转覆盖率,表示自重翻转过程 Ignore_bins h2={[6,7]}; //被忽略的仓
Illegal_bins h3={[6,7]}; //非法的仓,出现会报错 }
Port:coverpoint tr.port;
Cross kind,port; //交叉覆盖率 Endgroup
测试 发生器 代理 驱动器 计分板 断言 检测器 功 能 覆 盖 监视器 率 待测设计
发生器
Class generation
UNI_cell blueprint;//定义的需要测试的对象的蓝图,可以通过修改起约束或者扩展替换他 mailbox gen2drv; //信箱
event drv2gen; //drive 完成时的事件 int ncells; …………
Function new(Input mailbox gen2drv, Input event drv2gen,
………. )
This.gen2drv=gen2drv; This.drv2gen=drv2gen; This.ncell=ncell; ………………. Blueprint=new(); Endfunction:new Task run(); UNI_cell cell; Repeat(ncells)begin
Assert(blueprint.randomize());
$cast(cell,blueprint.copy()); Gen2drv.put(cell); @drv2gen; end Endtask:run Endclass:generation
驱动类
Typedef class Drive_cbs; Class drive Mailbox gen2drv; Event drv2gen;
//基类句柄指向拓展对象 //事务放进信箱发送给驱动器
相关推荐:
- [建筑文档]2018年公需课:专业技术人员创新能力与
- [建筑文档]2013年福建教师招考小学数学历年真题
- [建筑文档]高中信息技术课flash知识点总结 - 图文
- [建筑文档]电工实训 - 图文
- [建筑文档]最高院公告案例分析100篇(民商篇)
- [建筑文档]南开中学高2017级14-15学年(上)期末
- [建筑文档]五粮液集团战略分析
- [建筑文档]鲁教版(2012秋季版)九年级化学 酸碱
- [建筑文档]超星尔雅2017中国哲学概论自整理题库答
- [建筑文档]关于成为海口金盘饮料公司材料独家供货
- [建筑文档]LNG学习资料第一册 基础知识 - 图文
- [建筑文档]四年级品社下册《好大一个家》复习资料
- [建筑文档]现阶段领导权力腐败的特点及发展趋势
- [建筑文档]魏晋南北朝诗歌鉴赏—嵇康
- [建筑文档]坚持追求真爱是理智的行为 正方一辩稿
- [建筑文档]湘西州刑释解教人员帮教安置工作存在的
- [建筑文档]园林工程试题库及答案
- [建筑文档]计算机长期没有向WSUS报告状态
- [建筑文档]日语最新流行语
- [建筑文档]B62-016 景观进场交底专题会议
- 2018年中考语文课内外古诗词鉴赏专题复
- 高考试题研究心得体会
- C语言基础题及答案
- 电气控制及PLC习题及答案
- 都昌小学家长学校汇报材料
- GMAT作文模板正确使用方法
- 俄军办坦克大赛:中国99式有望与豹2A6
- 成本会计练习题
- 酒店餐饮业最流行的5S管理方法
- 2014-2015学年山东省菏泽市高二(下)
- 《黄鹤楼送孟浩然之广陵》教案、说课、
- 2013年结构化学自测题 有答案版
- 2011西安世界园艺博览会游览解说词(附
- 窗口文明单位示范单位创建活动总结
- 2018满分超星尔雅就业课后练习期末答案
- 韶山市城市总体规划-基础资料
- 苏教版第三单元知识点归纳
- 第4章 曲轴模态分析
- 加大查办案件力度的思考
- 武汉CPC导轨介绍




