- 博客(63)
- 资源 (31)
- 收藏
- 关注
原创 VL9 使用子模块实现三输入数的大小比较
在数字芯片设计中,通常把完成特定功能且相对独立的代码编写成子模块,在需要的时候再在主模块中例化使用,以提高代码的可复用性和设计的层次性,方便后续的修改。请编写一个子模块,将输入两个8bit位宽的变量data_a,data_b,并输出data_a,data_b之中较小的数。并在主模块中例化,实现输出三个8bit输入信号的最小值的功能。
2022-10-03 23:30:23
2477
5
原创 VL8 使用generate_for语句简化代码
使用generate…for语句编写代码,替代该语句,要求不能改变原module的功能,列巨额了generate的几种用法,最终搭建的Testbench代码覆盖率达到100%
2022-10-02 13:42:55
9594
3
原创 VL7 求两个数的差值
根据输入信号a,b的大小关系,求解两个数的差值:输入信号a,b为8bit位宽的无符号数。如果a>b,则输出a-b,如果a≤b,则输出b-a。可以使用if - else if - else实现三个条件的输出。注意:在Testbench中,无符号数随机数产生和有符号数随机数产生的范围不一样。
2022-09-27 20:09:42
6275
原创 VL6 多功能数据处理器
根据指示信号select的不同,对输入信号a,b实现不同的运算。输入信号a,b为8bit有符号数,当select信号为0,输出a;当select信号为1,输出b;当select信号为2,输出a+b;当select信号为3,输出a-b,经过测试,覆盖率良好,结果与预期计算值一致
2022-09-25 18:52:57
5028
2
原创 VL5 位拆分与运算
位拆分与运算。该模块采用同步复位且复位信号在低电平有效;可以使用时序逻辑对输入数据d进行锁存到data_buff;输出信号out和validout可使用组合逻辑输出,输出信号根据sel的变化进行变化。
2022-09-20 20:21:50
3248
1
原创 VL4 移位运算与乘法
已知d为一个8位数,在每个时钟周期分别输出该数乘1/3/7/8的结果,并输出一个信号通知此时刻输入的d有效(d给出的信号的上升沿表示写入有效),相关覆盖率达到100%
2022-09-14 18:06:33
4477
3
原创 VL3 奇偶校验
对输入的32位数据进行奇偶校验,根据输入的sel情况(0是奇校验,1是偶校验),进行校验位(check)的输出。(`时钟下降沿变化`),对RTL进行了仿真和覆盖率收集。
2022-09-14 08:40:10
5533
2
原创 VL2 异步复位的串联T触发器
用verilog实现两个串联的异步复位的T触发器的逻辑,附带完整的RTL、TestBench并进行了覆盖率收集。
2022-09-12 11:39:55
5508
2
原创 VL1_四选一多路器(完整RTL、Testbench和覆盖率)
有两种实现方法,一是使用if-else,二是使用case语句。实现的方式有三种,一是使用四输入查找表case方式;二是使用if-else if-else;三是使用两个二输入的查找表方式
2022-09-05 17:42:53
7893
原创 【读书笔记】AMBA 2 AHB、AMBA 3 AHB(AHB_Lite)和AMBA 5 AHB协议比较
解读AMBA 2 AHB协议,并对比AHB2、AHB_Lite和AHB5协议的异同
2022-07-20 11:39:51
17733
2
原创 VCS查看代码覆盖率(行、状态机、翻转、条件、分支覆盖率等)
VCS在统计代码覆盖率的过程中,需要在编译和仿真命令上添加对应的开关命令,生成.vdb文件记录覆盖率情况,再使用dve打开该文件进行查看覆盖率。
2022-07-07 20:54:09
22802
10
原创 05【Verilog实战】AMBA 3 APB接口设计(附源码RTL/TB)
一、APB协议 1.1 简介 1.2 APB2 1.3 APB3 1.4 APB4 二、Spec 2.1 Function descripton 2.2 Feature list 2.3 Block Diagram 2.4 Interface description 2.5 Timing 2.6 FSM 三、Design an....
2022-05-30 11:11:20
36240
17
原创 04【Verilog实战】SPI协议底层硬件接口设计(附源码RTL/TB)
一、SPI协议 1.1 概念 1.2 物理层 1.3 协议层 二、Spec 2.1 Function descripton 2.2 Feature list 2.3 Block Diagram 2.4 Interface description 2.5 Timing 三、Design and Verification 3.1 RTL.........
2022-05-23 07:29:41
26086
11
原创 05 Gvim代码自动匹配显示-autocomplpop插件(免安装)
Autocomplpop插件下载地址文章目录(1)功能(2)教程(3)效果(1)功能 自动弹出候选菜单,可用过上下选中指定字符,回车使用字符,实现以文字或单词补全。autocomplpop插件,Gvim会自动弹出菜单并显示相应补全项,在输入字符或插入模式下移动光标时完成,并且不会阻止继续输入字符。(2)教程压缩包解压解压,得到doc/acp.txt、 autoload/acp.vim和plugin/acp.vim文件。将plugin下的脚本文件(.vim)、doc下的帮助文件(.txt).
2022-05-22 13:07:17
6191
7
原创 02【Verilog实战】异步FIFO设计(附源码RTL/TB)
二、异步FIFO (1)FIFO基本概念 (2)异步FIFO基本概念 (3)异步FIFO的作用 (4)异步FIFO的读/写指针 (5)异步FIFO空/满标志 (6)指针计数器的选择 (7)二进制与格雷码相互转换 三、Spec (1)Function descripton (2)Feature list (3)Block Diagram (4)Interface description...............
2022-05-17 21:32:30
34765
29
原创 04 .vimrc文件配置
;本文适合在linux环境下,进行verilog 代码开发时,对vim用户配置文件“.vimrc”进行编写,配置vim编辑器语法高亮、文件类型检测、显示行号、括号匹配、tab缩进和==调用别名文件==等,可提高设计开发的效率。...
2022-05-15 20:01:44
42465
1
原创 【读书笔记】Verilog的亚稳态现象和跨时钟域处理方法
文章目录 一、亚稳态 (1)跨时钟域的亚稳态现象 (2)亚稳态的多径传输 二、跨时钟域处理 2.1 单bit信号跨时钟域处理 (1)单径两级触发器同步器 (2)相位控制 (3)多径与多级寄存器同步链 (4)组合逻辑信号的同步化 (5)快时钟域信号的同步化 2.2 多bit信号的跨时钟域处理 (1)异步FIFO (2)双口RAM.........
2022-05-13 21:20:29
22238
9
原创 01 交通信号灯(附源码)
一、Overview (1)Demand (2)Theory 二、Interface Description 三、EW_FSM 四、Design and Functional Verification (1)RTL (2)Test Bench 五、Result (1)复位 (2)倒计时 (3)最终结果.........
2022-05-09 18:02:45
11581
10
原创 08 SCL&SDA,类IIC协议(附源码)
一、Overview (1)Theory (2)Demand 二、Interface Description 三、Timeing (1)M1-Timing (2)M2-Timing 四、Design and Functional Verification (1)M1-RTL (2)M1-Test Bench (3)M2-RTL (4)M2-Test Bench 五、Result (1)M1 ....
2022-05-06 20:53:06
9242
原创 【读书笔记】《Verilog数字系统设计教程》第7章 调试用系统任务和常用编译预处理语句(附思考题答案)
一、系统任务 (1)监控任务($monitor) (2)仿真时间函数 (3)仿真控制任务($finish、\$stop) (4)文件输出任务 (5)随机函数random (6)小结 二、编译预处理语句 (1)`define语句 (2)`include语句 (3)timescale语句 (4)条件编译命令\`ifdef、\`else、`endif (5)条件执行 (6)小结 三、思考题...
2022-05-05 12:04:59
4700
原创 00 可综合风格的模块实例(附源码)
一、组合逻辑电路设计实例 (1)8位带进位端的加法器 (2)指令译码电路 (3)利用task和电平敏感的always块做冒泡排序 (4)数值比较器 (5)3-8译码器 (6)8-3译码器 (7)多路选择器 (8)奇偶校验位生成器 (9)三态输出驱动器 (10)三态双向驱动器 二、时序电路设计实例 (1)触发器 (2)电平敏感型锁存器1 (3)带置位和复位端的电平敏感型锁存器2.........
2022-05-02 12:13:32
6029
2
原创 03【Verilog实战】UART通信协议,半双工通信方式(附源码)
一、Overview (1)Theory (2)Baud Rate (3)Check Bit (4)Demand 二、Interface Description 三、Block Diagram 四、Timeing (1)write timing (2)read timing 五、Design and Functional Verification (1)RTL (2)Test Bench.........
2022-04-30 16:14:53
16806
14
原创 【读书笔记】《Verilog数字系统设计教程》第6章 结构语句、系统任务、函数语句和显示系统任务(附思考题答案)
一、学习内容 二、结构语句 (1)initial语句 (2)always语句 (3)小结 三、task和function (1)task语句 (2)function (3)任务和函数的区别 (3)小结 四、系统任务 (1)监控任务 (2)仿真控制任务 (3)文件输出任务 (4)仿真时间函数 (5)随机函数random (6)小结 五、思考题
2022-04-28 07:59:17
3332
3
原创 04 4bit移位寄存器设计与功能验证(附源码)
一、Overview (1)Theory (2)Demand 二、Interface 三、Timeing 四、Design and Functional Verification (1)RTL (2)Test Bench 五、Result (1)行为级描述测试结果 (2)结构级描述测试结果...
2022-04-27 16:07:27
13086
原创 05 占空比可调的整数奇偶分频器设计与功能验证(附源码)
一、Demand 二、Timeing 三、Design and Functional Verification (1)RTL (2)Test Bench 四、Result (1)8分频(50%,#(8,4)) (2)3分频(50%,#(3,3))
2022-04-26 22:01:00
3274
2
原创 03 可配置表决器设计与功能验证(附源码)
一、Demand 二、Block Diagram 三、Design and Functional Verification (1)RTL (2)Test Bench 四、Result
2022-04-26 16:40:29
2950
原创 06 8位数据比较器设计与功能验证(附源码)
一、Demand 二、Block Diagram 三、Design and Functional Verification (1)RTL (2)Test Bench 四、Result (1)Solution 1 (2)Solution 2
2022-04-25 12:09:08
5336
2
原创 07 串行数据流特定序列循环检测器的设计与功能验证(附源码)
一、需求 二、Spec (1)Analyze (2)Interface Description (3)Block Diagram 三、Design and Functional Verification (1)RTL (2)Test Bench 四、验证结果
2022-04-24 20:26:44
6758
原创 【读书笔记】《Verilog数字系统设计教程》 第5章 条件语句、循环语句和块语句(附思考题答案)
书※目:Verilog数字系统设计教程(第四版)夏宇闻等编著虚拟机:VMware -14.0.0.24051环 境:ubuntu 18.04.1脚 本:makefile(点击直达)应用工具:vcs 和 verdi文章目录一、条件语句(1)if-else语句(2)case语句二、循环语句(1)for语句(2)repeat语句(3)while语句(4)forever语句三、顺序块与并行块(1)顺序块(也称过程块)(2)并行块四、思考题&答案一、条件语句 条件语句有if-else和c.
2022-04-22 21:00:39
7496
4
原创 【读书笔记】《Verilog数字系统设计教程》第4章 运算符、赋值语句和结构说明语句(附思考题答案)
文章目录 一、运算符 (1)算术运算符 (2)逻辑运算符 (3)位运算符 (4)关系运算符(双目) (5)等式运算符(双目) (6)缩减运算符 (7)移位运算符(单目) (8)条件运算符(三目) (9)位拼接运算符 (10)算术运算符 (11)小结 二、关键词 三、赋值语句 (1)两类 (2)非阻塞赋值和阻塞赋值的区别 四、结构说明语句 (1)顺序块 (2
2022-04-20 21:19:38
3780
原创 【读书笔记】《Verilog数字系统设计教程》 第3章 模块的结构、数据类型、变量和基本运算符号(附思考题答案)
※书目:Verilog数字系统设计教程(第四版)夏宇闻等编著 一、模块的结构 (1)I/O声明的格式 (2)内部信号说明 (3)功能定义 二、数据类型、常量和变量 (1)数字 (2)参数(parameter)型 【例 3.1】参数传递 【例 3.2】多层次模块 (3)wire型 (4)reg型 (5)memory型 三、运算符及表达式 (1)基本算术运算符 (2)位运算符 四、思考
2022-04-18 17:24:35
2313
原创 【读书笔记】《Verilog数字系统设计教程》 第2章 Verilog语法的基本概念(附思考题答案)
文章目录 一、例子 【例 2.1】二选一多路选择器(行为级描述) 【例 2.2】带与非门的二选一多路选择器 【例 2.3】二选一多路选择器(门级描述) 【例 2.4】一个3位加法器(使用连续赋值语句描述) 【例 2.5】一个3位比较器(用连续赋值语句描述) 【例 2.6】三态门选择器 【例 2.7】二个模块的三态门选择器 【例 2.8】对【例2.1】~【例2.3】多路模块测试 二、思考题
2022-04-17 22:01:06
1952
原创 03 makeflie脚本,verilog代码一步完成编译仿真
一、脚本内容 二、讲解 (1)make all (2)make elab (3)make run/rung (4)make verdi (5)make clean
2022-04-15 11:32:12
10076
3
原创 01 【Verilog实战】同步FIFO的设计(附源码RTL/TB)
文章目录一、学习内容二、基本概念三、Overview3.1 Function description3.2 Feature list3.3 Block diagram3.4 Interface description3.5 Timing(3)design四、思考和小结(1)思考(2)小结
2022-04-14 17:00:16
15507
16
原创 00 大厂的verilog代码风格与规范
虚拟机:VMware-workstation-full-14.0.0.24051环 境:ubuntu 18.04.1所有的信号名、变量名和端口名都用小写,这样做是为了和业界的习惯保持一致;常量名和用户定义的类型则用大写。使用有意义的信号名、端口名、函数名和参数名。例如模块端口名用 a2b_data、a2c_ctrl,而不是直接用 data1、ctrl1 等。信号名长度不要太长。对于超过 28 个字符的信号名,有些 EDA 工具不能够识别,太长的信号名也不容易记忆。因此,在描述清楚的前提下,尽可能
2022-04-13 19:32:56
3109
sync_fifo.zip,博客对应同步FIFO接口源码(RTL和TB)
2022-08-12
AMBA 3 APB接口设计的RTL、Test bench、makefile和tcl文件
2022-05-30
异步FIFO模块的RTL代码文件、Testbench 代码文件、tcl和makefile脚本文件
2022-05-17
11【Verilog实战】交通信号灯RTL&TB.zip,博文【Verilog实战】栏目,项目11的完整RTL和TB
2022-05-09
你要的FPGA&数字前端笔面试题都在这儿了.pdf
2022-04-17
TCL教程(中文).pdf
2022-04-17
【酒酒】数字IC问题知识点(很全很详细).pdf
2022-04-08
【酒酒】数字IC手撕代码总结.docx
2022-04-07
时序图画图工具-TimeGen3.2安装包
2022-04-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人