自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 Verilog中`timescale设置与覆盖问题

对于每个文件中的内容如下:(如test0.v)设置不同的时间精度,用来查看仿真结果,是否有方波发出。test2.v 定义的为 `timescale 1ns/100ps。第一个数值代表仿真的时间单位是1ns;第二个数值代表的时间精度1ps.test1.v 定义的为 `timescale 1ns/10ps。`timescale 1ns/1ps(仿真时间单位/精度。tb.v 定义的时间为 `timescale 1ns/1ps。仿真结果:可以看出最小的时间精度都可以达到1ps。test0.v 没对其定义。

2023-03-31 20:53:33 4313

原创 DFT 与扫描链

DFT测试:验证芯片生成中的晶圆或者生成过程等造成的物理缺陷,DFT测试在CP阶段进行测试。注:CP(chip probe)在wafer level进行的芯片测试,此时的测试可以检测在晶圆和工艺生产过程中的良率,将bad die筛掉,从而降低后续的封装及测试成本。在数字设计中,通过IC工具插入 DFT 逻辑,比如 Scan Chain(寄存器)、Boundary Scan(IO)、MBist(片上存储器)、等,然后利用 ATPG、Boundary Scan 、MBist工具产生测试向量,仿真验证测试向量。

2023-03-25 11:15:04 1281

原创 Linux shell---sed的几个简单的替换应用

删除最后一个下划线 _ 后的字符:(将下划线后的字符替换为空字符)提取第一个下划线 _ 前的字符:(将下划线后的字符替换为空字符)例如:提取字符串aa_bb_cc_dd中的字符。运行结果:aa_bb_cc_ee。运行结果:ee_ee_ee_ee。运行结果:aa_bb_cc。

2023-03-21 14:01:21 611

原创 xrun编译报错 *E,DUPUNI,选项-allowredefinition

但是,多个lib 中可能,会对同一个cell都有primitive的定义,而且定义是完全相同的。此时,xrun会报错,提示 *E, DUPUNI,在不同的文件中重复定义。但是需要注意的是:这几个cell中的定义必须一致才行,要不然就和你的设计初衷不一样了。后编译的选项,可能会会覆盖前面的代码,造成仿真出现问题时,不容易定位原因。因为lib cell设计人员,不应该随便修改,所以可以使用该选项来解决问题。如果是verilog block代码,在导入时,就应该确保代码的唯一性,防止代码块的错用。

2023-03-20 19:08:27 954

原创 1)vim提示 press enter or type command 2)报错:E576: viminfo: Missing ‘>‘ in line

在Linux系统中,使用gvim。以前使用gvim工作正常,但是最近却同时出现了以下两个问题:1)gvim打开文件,会提示:press enter or type command; 只有键盘输入后,才打开文件;2)同时,还会报错提示:E576: viminfo: Missing ‘>‘ in line经过,查询发现是 .viminfo的问题,该文件保存了各种有用但非关键状态信息的元数据,如果该文件出现问题或损害,就会出现以上的问题。解决办法:删除该文件:rm ~/.viminfo注:删除该文件不会对

2023-03-09 14:53:42 1002

原创 多时钟--RTL前仿真,仿真工具误采样问题

在数字设计中,会遇到处理多个时钟的问题(如下面的a_clk、apb_clk),虽然在综合时,会将处于同一个时钟域的clock放在一个group中,保证了时序的同步性。但是,在RTL前仿中,仿真工具不会对其进行识别,会认为多个时钟处于不同的时钟域,从而会出现采样位置不对的现象。这是因为仿真工具,对不同的时钟域之间的信号分析后,判定为此处可以采样到高电平,所以位置3处a_cs拉高。在设计仿真阶段,一定要注意该问题,不然会造成仿真结果与实际设计出现误差,或者RTL仿真与后仿真结果不一致,浪费时间去排查问题。

2022-11-14 08:12:08 509

原创 简易配置:vim添加systemverilog语法高亮

在工作中,需要添加systemverilog语法支持:(Lniux环境下)三个目录(里面都有相应的支持语法的vim配置文件)。2)在用户目录下(~/),ls -a 查看找到。1)所需要语法支持包:自己可去其它网站下载,如果没有,自己建立一个。

2022-11-10 11:05:51 1069

原创 E34-2G4H20D:nRF24L01 单载波配置输出测试

E34-2G4H20D是一个基于nRF24L01的无线通信模块,工作频率在2.4~2.518GHz频段,Tx Power最大为20dBm。可以修改:发射功率、频率信道、传输方式等。这里只是测试单载波方式,我选择“透传模式”。3、通过串口工具,写入单载波发送指令“CECE01”,则芯片进入到“单载波发送模式”。利用,频谱仪测试结果如下:在2410MHz下,可以检测到 单载波输出。配置完成后,“写入参数”,则配置就会写入固化到芯片中。1、模式通过M0 M1管脚配置为休眠模式。配置完成后,关闭 工具即可。

2022-11-02 22:18:05 934

原创 LTDZ_35-4400M 频谱仪使用

Stop frequecy 需要配置小于等于Max.Sweep Frequency,感觉这里的Stop frequecny和Start frequency的频率应该也是10的倍数的关系。这块板子,能进行简单的扫频监测使用,我是用来对设计的射频模块的输出频率测试的,由于频谱仪价格都比较昂贵,对于做DIY实验来说,是不现实的。我就入手了这个模块,用来简单的扫频测试使用。不知道,是不是软件版本不同的造成的这个问题,还是我配置的参数还是不匹配。但是,从测试现象来看,按照我目前的配置,测试到的频率,是正确的。

2022-11-02 21:25:09 1224

原创 复位策略:同步复位与异步复位

从而确保了该时钟和reset作用下的逻辑电路的启动工作的一致性,避免因为复位和时钟的关系异步,造成的启动不一致(例如:错位一个时钟周期。注意:1.1)可以看出使用同步复位时,需要保证在复位时,需要有时钟的存在而且需要大于时钟周期,否则复位信号无法被捕获到该逻辑中。2)对复位信号的脉冲宽度有要求,必须大于指定的时钟周期,且很难保证复位信号到达各个寄存器的时序;在IC设计种,复位策略分为同步复位和异步复位两种设计,根据不同的设计,会采用不同的复位方式。这样方式,是在异步复位中,为了避免时序问题,必然要使用的。

2022-10-25 11:14:28 2711 1

原创 bin文件转化为8bit指令数据输出,用于8051内核仿真

数字IC设计中,有时需要进行内核仿真,需要协助软件人员进行代码调试。软件人员会将其写的开发代码,生成hex或者bin文件用于数字IC环境仿真。当然在IC开发中,会有很多脚本辅助完成这些操作。这里,描述一下不需要脚本,简单的bin代码转化为8bit指令数据的方法。这样就可以将bin文件转化为了,8bit一行的文件了,用于给sram、rom、MTP等存储器测试使用。

2022-10-21 12:16:53 483 2

systemverilog.vim-1.9插件包

vim 支持 systemverilog的插件。功能包括自动补全、语法高亮、语法检查、格式化等。

2022-11-06

TimingGenerate简单的使用教程视频

Timimg Generate是专业的时序图波形软件,可以将画出的时序图直接复制到Word、excel; 可以通过将时序图保存为elf文件,在viso中使用。 该资源包括简单的使用教程视频和software。

2022-11-03

E34-2G4H20D 2.4G模块:中文说明书、代码、RF配置软件、电路图

该资源为E34-2G4H20D 2.4G无线通信模块资料,包括中文说明书、代码demo、RF配置软件、电路图、PCB封装、串口调试助手。 芯片方案:nRF24L01+ 载波频率:2.4~2.518GHz 发射功率:20dBm 接口类型:UART

2022-11-03

LTDZ-35-4400M-频谱仪使用说明、WinNWT4软件

该资源为LTDZ_35-4400M 频谱仪使用说明和控制软件。

2022-11-02

空空如也

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

TA关注的人

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