随笔分类 -  最近日常

摘要:Sequence Virtual Sqr 在my_vsqr.sv中 class my_vsqr extends uvm_sequencer; my_sequencer p_sqr0; my_sequencer p_sqr1; function new(string name, uvm_compone 阅读全文
posted @ 2022-01-20 17:47 大浪淘沙、 阅读(191) 评论(0) 推荐(0)
摘要:phase的 跳转 在drv中,phase.jump控制了跳转。当线程中发现了复位信号,则跳转到reset相位(task_phase族中的)。 可跳转的phase包括12个动态运行的phase(task_phase)以及随后的phase(不包括和task_phase并行运行的run_phase) t 阅读全文
posted @ 2022-01-19 20:16 大浪淘沙、 阅读(439) 评论(0) 推荐(0)
摘要:TLM的put my_case的main_phase中设定了raise_objection,并延时1000仿真单位后,drop,后续代码中的main_phase不设定raise和drop。 TLM的demo,(port->export->imp) 在A和B之间通信,首先在env中构建对应的实例(在不 阅读全文
posted @ 2022-01-18 08:42 大浪淘沙、 阅读(158) 评论(0) 推荐(0)
摘要:field的automation部分 取消trans的部分字段被打包的效果。并提供if语句。 `uvm_object_utils_begin(my_transaction) `uvm_field_int(dmac, UVM_ALL_ON) `uvm_field_int(smac, UVM_ALL_O 阅读全文
posted @ 2022-01-17 17:37 大浪淘沙、 阅读(520) 评论(0) 推荐(0)
摘要:https://gitee.com/bai-mengwei/uvm_practive_first 顶层连接与通信 顶层,是top_tb.sv,包括了interface、dut、和testbatch,驱动时钟、复位。 并包含uvm的宏文件svh、导入uvm的包。以及包含其它各个模块的文件。 引入uvm 阅读全文
posted @ 2022-01-16 21:40 大浪淘沙、 阅读(396) 评论(0) 推荐(0)
摘要:\$sformatf $sformat(str,format,args); $sformat是$sscanf的反函数。将字符串按照给定的格式填入相应的参数args中 $sformatf(format,args); $sformatf任务和$sformat相似,除了其返回字符串结果。字符串作为$sfo 阅读全文
posted @ 2022-01-15 16:47 大浪淘沙、 阅读(390) 评论(0) 推荐(0)
摘要:https://www.cnblogs.com/YanRuoChuanFPGA/p/9585361.html 定义package package PA; `include "AA.sv" endpackage :PA import引用 package PB ; inport PA::AA ; AA 阅读全文
posted @ 2022-01-14 18:13 大浪淘沙、 阅读(60) 评论(0) 推荐(0)
摘要:切换到当前打开文件的目录下: :NERDTree % cd: 将CWD改为当前目录 https://www.cnblogs.com/gaoxiaoyuan/p/3832016.html Makefile FILES = top_tb.sv FLAGS = -sverilog -R -debug_al 阅读全文
posted @ 2022-01-12 18:49 大浪淘沙、 阅读(146) 评论(0) 推荐(0)
摘要:https://blog.csdn.net/k331922164/article/details/51648707 阅读全文
posted @ 2022-01-10 12:35 大浪淘沙、 阅读(25) 评论(0) 推荐(0)
摘要:公说公有理,婆说婆有理。我就直接用。 用build phase创建实例,用connect phase建立通信,然后经过两个phase后,进入仿真时间域中。run phase与另外的12个phase 并行。12个phase主要是reset、config、main、shutdown。 处理完以后,退出仿 阅读全文
posted @ 2022-01-09 15:26 大浪淘沙、 阅读(82) 评论(0) 推荐(0)
摘要:来源 《UVM实战》的第二章 代码统计 find . -name "*.py" |xargs cat|grep -v ^$|wc -l 编译选项 top_tb为顶层,dut为待测设计。 vcs -sverilog -f filelist.f -timescale=1ns/1ps 其中的filelis 阅读全文
posted @ 2022-01-08 15:37 大浪淘沙、 阅读(110) 评论(0) 推荐(0)
摘要:虚接口 没有虚接口,那interface无法接入到class中。 interface SBus (); // nets logic req, grant; logic [7:0] addr, data; endinterface : SBus class SBusTrans; // data or 阅读全文
posted @ 2022-01-07 15:29 大浪淘沙、 阅读(82) 评论(0) 推荐(0)
摘要:验证计划参照 # 验证计划 根据验证计划安排testcase进行验证。 ## 1 时钟 ### 1.1 时钟频率 最小值、典型值、最大值、随机值(可选) ### 1.2 复位 上电复位,运行中复位、检查fifo是否复位(如果有) ## 2 DUT相关 ### 2.1 读写 #### 2.1.1)si 阅读全文
posted @ 2022-01-06 10:12 大浪淘沙、 阅读(84) 评论(0) 推荐(0)
摘要:SystemVerilog的ctags 目前使用仓库的内容即可: ctags需要更换软件。https://gitee.com/bai-mengwei/vimrc --exclude=.SOS --exclude=.git --exclude=nobackup --exclude=nobkp --la 阅读全文
posted @ 2022-01-05 16:33 大浪淘沙、 阅读(82) 评论(0) 推荐(0)
摘要:vim操作 《Vim实用技巧》第二版 阅读全文
posted @ 2022-01-04 14:56 大浪淘沙、 阅读(31) 评论(0) 推荐(0)
摘要:断言测试代码 module taa (); reg clk1, clk2, clk3; reg a,b,c,d,e,f,g,h; initial begin fork begin clk1=0; forever #2 clk1=~clk1; end begin clk2=0; forever #3 阅读全文
posted @ 2022-01-03 13:28 大浪淘沙、 阅读(255) 评论(0) 推荐(0)
摘要:fork join的label(tag) https://bbs.eetop.cn/thread-883536-1-1.html 其中只要有任何一个线程结束,都退出并行运行块,并打印DONE。要求分别用fork-join、fork-join_any,fork-join_none来实现. 实现基于la 阅读全文
posted @ 2022-01-02 12:08 大浪淘沙、 阅读(115) 评论(0) 推荐(0)
摘要:demo -cm line+cond+fsm+tgl+branch program automatic test (); class Transaction; // data or class properties rand bit [3:0] data; rand bit [4:0] addr; 阅读全文
posted @ 2021-12-31 14:49 大浪淘沙、 阅读(99) 评论(0) 推荐(0)
摘要:fork join `include "exp_inside/tbb.sv" class ClassBase; virtual function void disp(); $display("the base print"); endfunction: disp endclass : ClassBa 阅读全文
posted @ 2021-12-30 14:20 大浪淘沙、 阅读(47) 评论(0) 推荐(0)
摘要:类copy、虚类等 虚类,以下代码中若基类没有virtual声明,则输出全为基类的disp调用。 copy函数是手动实现的。有必要的时候内部实现一个copy_data函数辅助。 class ClassTest; // data or class properties static int count 阅读全文
posted @ 2021-12-29 13:01 大浪淘沙、 阅读(41) 评论(0) 推荐(0)