常用数字电路模块
文章平均质量分 58
该专栏发布常用的数字模块,便于以后调用和设计。
AIBCI_05
这个作者很懒,什么都没留下…
展开
-
位宽计算的Verilog设计
在systermverilog中可以利用$clog2()函数来计算一个数据的位宽,但是Verilog中没有这个函数。可使用以下function在Verilog中实现$clog2()的功能。原创 2024-02-26 20:13:25 · 242 阅读 · 0 评论 -
按键消抖的Verilog设计
按键消抖模块的Verilog设计原创 2024-02-21 13:39:11 · 132 阅读 · 0 评论 -
呼吸灯的Verilog设计
呼吸灯的verilog设计原创 2024-02-21 13:36:11 · 116 阅读 · 0 评论 -
FIFO的Verilog设计(三)——最小深度计算
在实际使用FIFO时,需要考虑FIFO的深度如何设置,如果深度设置不当,可能会出现资源浪费或者数据丢失等情况。下面将简要介绍FIFO的最小深度如何计算。原创 2023-12-12 23:19:27 · 1384 阅读 · 0 评论 -
FPGA的Verilog设计(二)——异步FIFO
在上篇文章同步FIFO中简要介绍了FIFO的基本概念以及同步FIFO的实现。本篇文章将重点介绍异步FIFO的工作原理以及硬件实现。原创 2023-12-08 10:59:29 · 1211 阅读 · 0 评论 -
二进制转格雷码的Verilog设计
格雷码累加每次变化只变化一位,是跨时钟域处理中经常采用的编码方式,能有有效降低亚稳态发生的概率。当读地址由4'b0111向4'b1000变化时,所有位都需要变化,如果写时钟恰好在地址变化时采样,写时钟得到的读地址是不确定的(为0000~1111中任意一个),因此为了降低该亚稳态的发生概率,地址采用格雷码编码。格雷码每次只变化一位,可以有效降低亚稳态的发生概率,同时单bit又可以采用打两拍的方法再次降低亚稳态发生的概率。原创 2023-12-07 11:41:32 · 365 阅读 · 0 评论 -
FIFO的Verilog设计(一)——同步FIFO
FIFO在系统设计中被广泛应用,但是大多时候使用X家和A家封装的IP核,为了更好的理解FIFO工作原理并且为了方便在不同厂商工作环境之间移植,自己编写一个FIFO IP也是不错的选择。下面将介绍同步FIFO的工作原理和Verilog实现。原创 2023-12-06 17:14:37 · 1237 阅读 · 1 评论 -
RAM的verilog设计
RAM是用一块memory和外围的读写控制电路组成。在FPGA中RAM可分为分布式RAM(distributed ram,消耗lut资源)和块RAM(block ram,消耗BRAM资源)。原创 2023-12-06 15:39:47 · 633 阅读 · 1 评论 -
常用模块之VGA时序生成模块
VGA时序生成模块。原创 2023-11-03 09:56:09 · 122 阅读 · 0 评论