![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Verilog
文章平均质量分 75
Anのzg
这个作者很懒,什么都没留下…
展开
-
Verilog语法总结
可以提前将VGA数据,比如颜色的数据存放在一个源文件中(起名为VGA_Para.v或者VGA_Para.h)在VGA的driver和display模块可以直接调用这个文件VGA_Para.v。可以在编译期间将一个Verilog源文件包含在另一个Verilog文件中,作用类似于C语言中的#include结构。它的作用和`ifdef 是相反的----当其后的标识符未被定义时,则编译后续的代码段。只有1,10,100才是合法的说明时间单位和时间精度的整数。#3、任务:关键字 task-----endtask。原创 2023-04-12 23:15:23 · 956 阅读 · 1 评论 -
Verilog-UART串口通信协议
uart:通用异步收发传输器(Universal Asynchronous Receiver/Transmitter),是一种通用串行数据总线,用于异步通信。uart能实现双向通信,在嵌入式设计中,它常用于主机与辅助设备通信。uart包括RS232、RS449、RS432、RS422和RS485等接口标准规范和总线标准规范,既uart是异步串行通信口的的总称。原创 2023-04-13 08:30:00 · 2076 阅读 · 0 评论 -
Verilog-实现时钟分频(1KHZ、奇、偶分频,占空比为50%)
由时序图看出分别用时钟上升沿和下降沿得到高电平:低电平 = 4 :3,然后将两者相与就可以得到7分频占空比为50%的时钟。(1)高电平:低电平 = 4 :3(即 1:0 = 4 :3)(2)低电平:高电平 = 4 :3(即 0:1 = 4 :3)接下来会介绍两种实现方法(占空比为50%)本篇随笔为学习记录所用,如有错误,请各位指正批评。二者实现方式相同,这里只介绍第一种方法。1khz分频-testbench。偶数分频testbench。奇数分频testbench。原创 2023-04-12 23:38:28 · 6848 阅读 · 0 评论 -
verilog-实现按键消抖模块
轻触按键:相当于是一种电子开关,按下时开关接通,松开时开关断开,实现原理是通过轻触按键内部的金属弹片受力弹动来实现接通和断开。本篇随笔为学习记录所用,如有错误,请各位指正批评。高电平有效的Verilog实现。高电平有效的TESTBENCH。低电平有效的Verilog实现。低电平有效的TESTBENCH。##(1)高电平有效的情况。##(2)低电平有效的情况。#3.Verilog代码。#2.实现方案-状态机。原创 2023-04-12 23:22:15 · 2881 阅读 · 0 评论 -
Verilog-实现脉冲边缘检测电路
本篇博客主要记录使用Verilog实现对脉冲的上升沿和下降沿检测;下面的链接是博主所写的“基于basys2的按键消抖”,其中状态机实现按键消抖使用了本篇博客所介绍的边缘检测电路。原创 2023-04-12 23:21:05 · 999 阅读 · 1 评论 -
Verilog-实现使用计数器得到特定时间的高脉冲信号
本篇博客主要介绍:使用计数器来得到自己想要的的一段脉冲信号。原创 2023-04-12 23:20:14 · 849 阅读 · 3 评论 -
Verilog-实现基于状态机的序列检测--一段式状态机、二段式状态机、三段式状态机
将时序逻辑和组合逻辑划分开来,时序逻辑进行当前状态和下一状态的切换,组合逻辑实现输入、输出以及状态的判断,这种写法相对容易维护,不过组合逻辑输出容易出现毛刺等问题。代码易维护,时序逻辑的输出解决了二段式写法中组合逻辑的毛刺问题,但是三段式消耗的资源相对多一点,并且三段式从输入到输出比一段式和二段式会延时一个时钟周期。将所有的逻辑(输入、输出、状态)在一个always块里进行描述,这种写法看起来简单,但对于复杂的状态会容易出错,并且在大型项目中这些代码是不利于维护的。的工作,这就要用到状态机的思想。原创 2023-04-12 23:19:14 · 2973 阅读 · 1 评论