自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

weixin_41994704的博客

一个IC菜鸟的笔记

  • 博客(12)
  • 收藏
  • 关注

原创 RTL设计中的接口握手机制

IC设计中的模块间握手机制。

2023-07-25 19:19:08 368 1

原创 systemverilog 中的bind 的使用和语法

下面的例子是把 fpu_props绑定到cpu 上,每个cpu的实例化都会被绑定一个fpu_props,fpu_props实例化的名字是fpu_rules_1。层级结构显示为 cpu0.fpu_rules_1, cpu1.fpu_rules_1...下面的例子是把 fpu_props绑定到cpu 的实例化cpu1 上,层级结构显示为 cpu1.fpu_rules_1。一个参数化的target module, bind file 也是参数化的。(*)通配符代表所有信号的链接。为了设计和验证代码的分离。

2023-07-17 13:01:58 1085 1

原创 命令行改变环境中parameter的值

vcs 命令行改变parameter 值

2023-07-14 18:46:39 402 1

原创 添加编译选项

添加编译选项,CMP_OPTS += -top top_tb

2022-03-31 10:15:44 289

原创 验证环境发生卡死(stuck),如何调试

调试方法ctrl+c 进入到ucli 界面输入:run 1ns查看程序运行在哪里?输入:step查看程序的运行。stuck 的原因rtl的组合逻辑形成了闭环,一直在运行,tb的while(1)。UVM_TIMEOUT是仿真时间一直在走,不能退出的stuck,到达设置的仿真时间退出。...

2022-03-17 13:15:41 1229 1

原创 UVM中的TLM机制

一、TLM: transaction level modeling(事务级建模)UVM 中的TLM机制用于transaction在验证环境中的传递, 大致分为两类:1、用于sequencer 和driver中的传递uvm_seq_item_pull_portuvm_seq_item_pul_imp2、用于其他组件(component)之间的传递, eg: monitor 和scoreboarduvm_blocking_put_imp(uvm_imp)uvm_blocking_put_port(

2021-11-17 18:44:42 2486

原创 Ethernet 协议

Ethernet 协议1. Internet 与 Ethernet 协议的关系Internet 将世界各地的计算设备连接起来,其中“连接”需要两部分:物理连接(即硬件连接)和软件连接。物理连接指的就是硬件设备,比如光纤、无线网络信号等;软件连接指的就是各种通信协议。而 Ethernet 是一种局域网协议,所以它是 Internet 的组成部分。2.Ethernet 协议数据包格式Destination/目的字段:标识目标通信方的MAC地址Source/源字段:标识发送端的MAC地址Eth

2021-11-11 17:48:06 838

翻译 纯虚类(virtual class)和纯虚方法(pure virtual function)

具体内容参加绿皮书,virtual methodclass Transaction; rand bit[31:0] src,dst,data[8]; bit[31:0]crc; virtual function void calc_crc(); crc=src^dst^data.xor; endfunctionendclass :Transaction class BadTr extends Transaction; rand bit bad_

2021-11-11 17:10:37 2257

原创 UVM中的sequencer

p_sequencer 与m_sequencer 的关系m_sequencer是在UVM 原码中定义的,p_sequencer 需要我们在代码中进行宏定义才能使用,通过如下定义后, 可以直接引用p_sequencer变量。class er_gtx_ast_seq extends er_ast_transfer_seq; `uvm_object_param_utils(er_gtx_ast_seq) `uvm_declare_p_sequencer(er_ast_sequencer)

2021-10-27 19:35:54 2288 2

原创 通过DPI集成C++ model

DPI:direct program interface在仿真环境中集成C, C++模型是一个遇见的问题,下面展示如何集成C++ model.虽然项目环境是E-language的,但是顶层文件tb.sv 是SV语言,这里是在tb.sv中通过DPI集成C++的方式。在这里插入图片描述...

2021-10-22 19:26:52 681 3

原创 【SV】中$cast 的用法

常见$cast, 但对其功能(向下类型转换)和具体应用场景却一知半解, 现将一点心得记录在此。类型向下转换 :将父类句柄(father_handle) 赋给 扩展类(child_handle)child_handle = father_handle类型向上转换: 将扩展类句柄(child_handle) 赋给 基类(father_handle)father_handle = child_handle下面插入SV绿皮书 8.3.1 中的代码, 又加入了print()来说明virtual

2021-05-14 15:29:05 6946 5

原创 linux 指令汇总

grepgrep -rn “egress_bandwidth” --include tc_2payload1.log > a.loggrep只在当前层级文件搜索,不会查找下级文件夹,*的作用还不知道,但是不加*就会不工作seroiuts00514 [15:44] [verif/enuyesu/sim_ecp] -> grep sunyue *grep: AA: Is a directory//不会向下查找grep -r 会去下级目录查找seroiuts00514 [15:40] [

2021-03-24 16:18:17 105 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除