自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 资源 (3)
  • 收藏
  • 关注

原创 数字ic验证-vcs编译选项-q

项目中因为需要编译的文件太多,编译信息被管理人员关掉了,没有parsing信息就不好debug吃入的include文件和顺序是否正确。正常显示parsing信息如下,如果有两个目录下存放相同的被include文件,incdir最后指定的目录优先级更高。如果编译过程加入了-q选项,将不会显示parsing信息和timescale信息。通过vcs -h >help.v将vcs帮助文件大隐刀help.v并打开。搜索compile,发现如下信息。

2024-05-13 09:20:28 122

原创 vcs run out of memory的一个案例

电路仿真过程中报错run out of memory allocated memory size 22540MB,requested size 11548127454bytes经过分析验证环境的打印信息,是在一for循环中使用了会产生负数的减法(256-800),但是两数相减为一个无符号数,因此得到了一个该负数的无符号的表达形式,256-800=4294966752for循环了4294966752次,往一个队列里放入数据,导致内存不够用总结是在代码中要很注意减法的使用,仿真减法产生超大的非符号数.

2021-12-29 17:11:04 688

原创 vim中文乱码

正常编码方式设置为utf-8就行,但是我的vim的中文显示有点像繁体字的中文,utf-8编码方式会显示为乱码首先,在vim文件中:help encoding-value会显示很多种encoding的方式,一个个试验:set encoding=encoding-value最后确定encoding为ucs-4使繁体字可以正常显示...

2021-12-06 16:39:00 95

原创 sv宏连接

符号``可以连接左右两个字符,a``b=ab,a和b都不会代入变量的值,比如string a=helloa``b还是=ab``符号只能在define中使用在sv中没有办法通过for循环给a_i这种形式的变量连续赋值

2021-12-06 16:38:08 318

原创 sv异步驱动

一,异步,也就是说测试块和dut代码块的时钟不一样,下面的例子,r_1信号没有经过任何时钟,直接接入代码,request经过测试块的时钟,再接入代码二,波形分析,request从2变为1在时钟上升沿处,dut只能采到1,2值被漏采了。r_1在同样的位置变化,但是r_1没有经过任何时钟,因此dut采到的r_tmp1和r_1一模一样...

2021-07-16 11:10:51 101

原创 sv接口中的clocking block、modport

一,在顶层模块例化下层模块和接口,将接口中的modport传入下层模块,如24行二,定义modport的时候,将时钟块加入port list也就是括号内,如9行三,下层模块的括号(port list)内不能传入时钟块,如25行,否则会报错如图2四,总结就是只有接口和modport才能传入模块的信号列表中,要想使用时钟块,只能通过interface.cb和modport.cb来引用...

2021-07-15 11:52:59 2860

原创 python删除当前目录下某些文件以外的所有文件和文件夹

引用3个库os,fnmatch,shutil21行:用os库删除文件夹时,若文件夹非空,则会报oserror类型的错误,因此删除文件夹用shutil库19行:删除文件,如果括号里的是文件夹,则会报oserror类型错误,因此要用os.path.isfile判断是否是文件,括号里可以写绝对路径-fpath,也可以直接写文件名file,直接写文件名就会在当前目录查找...

2021-07-14 14:44:48 621

原创 SV学习-clocking blok

一,代码如下二,波形如下,clocking cb中的ck.vld会在时钟上升沿的前3ns采样,在上升沿delta cycle之后的时间点发生改变三,打印结果,vld.tmp和ck.vld相等,在5ns也就是时钟上升沿的时候为X态,在6ns也就是时钟上升沿delta cycle之后发生改变$5000 vld:x$6000 vld:1...

2021-07-13 15:31:34 1068

原创 SV学习——delta_cycle

一,代码如下,clk2由clk1生成,d1在clk1上升沿递加,代码加入$vcdplusdeltacycleon查看deltacycle二,自动生成的vcdpluson.vpd文件用dve -vpd vcdpluson.vpd打开,查看deltacycle

2021-07-13 09:50:34 1577

原创 perl here文档

大致的用法是用两个一样的标志符,把一大段字符串封装起来标记符可以是自定义的任何名称具体格式如下:$a =<<标志符要打印的内容要打印的内容…标志符后面引用这个变量a的时候,就代表这一大段要打印的内容标志符还可以用不同符号包起来,代表要打印的内容的打印格式比如标志符用双引号或者什么符号都不加,则表示要打印的内容按原格式打印,里面有变量就要引用变量的值,\n会跳行标志符加单引号,要打印的内容就原封不动的打印出来,\n就会打印出\n不跳行标志符加esc下面的反引号就是输出uni

2021-01-30 11:05:16 137

原创 gvim安装nerdtree----显示当前文件目录,在一个vim文件窗口中浏览当前目录下的所有文件

gvim安装nerdtree----显示当前文件目录,在一个vim文件窗口中浏览当前目录下的所有文件:1,进入网址往下拉,下载nerd_tree.zip解压,将解压后的doc/文件和plugin/文件都拷贝到.vim/目录下,2,在gvim.src中添加语句:nmap :NERDTree ,将F9设置为nerdtree的快捷键,如果不设置快捷键的话,在vim打开的文件命令行中输入:NERDTree也可以打开nerdtree3.新建vim文件,按F9就可以显示目录了ps.网址下载的5.0版本会报错

2021-01-27 15:50:29 2256

原创 usb2.0学习笔记第四章

usb2.0学习笔记第四章usb共享互连??拓扑结构最多七层,第一层是host和根hub(主机),第七层只能是usb设备,不能是hub和复合设备hub和主机控制器间可以高速传送数据,避免了高速设备的传输被低速全速设备的传输影响...

2021-01-11 10:01:49 96

原创 vcs 自带uvm库仿真

vcs 自带uvm库仿真学习阶段可以用vcs自带uvm进行仿真makefile里的编译命令:vcs -ntb_opts uvm-1.1 +incdir+${UVM_HOME}/srccshrc配置里面添加uvm_home:setenv UVM_HOME vcs安装路径/etc/uvm-1.1报错undefined type时在第一个被编译的文件开头加入:`include “uvm.sv”...

2021-01-08 14:19:37 2411

GPIO简介.docx

GPIO的基础知识总结,需要了解MOS开关管的概念即可,GPIO接口的寄存器方案有待添加

2021-08-27

usb2.0协议学习总结.pptx

usb

2021-06-25

usb2.0协议学习总结第一部分.pptx

usb入门学习ppt

2021-03-03

空空如也

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

TA关注的人

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