![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
FPGA实例
文章平均质量分 53
FPGA-GouDan
FPGA小学生一枚。
展开
-
FPGA序列检测模块编码、测试及ModelSim波形状态显示技巧
FPGA序列检测编码、测试及ModelSim状态显示检测序列1010110,出现此序列时输出一个时钟周期的脉冲,且当出现…101011010110…时输出两次脉冲。状态转移图代码module flow_check( input wire clk, input wire rst_n, input wire idata, output reg flag); localparam S0 = 7'b000_0000; localparam S1 = 7'b000_原创 2021-08-09 15:49:03 · 728 阅读 · 0 评论 -
【FPGA实例】FPGA的呼吸灯实现
FPGA的呼吸灯实现设计报告呼吸灯原理------呼吸灯是指灯光在微电脑的控制之下完成由亮到暗的逐渐变化,感觉好像是人在呼吸。其广泛应用于手机之上,并成为各大品牌新款手机的卖点之一,起到一个通知提醒的作用。设计要求------时钟频率50MHz,要求实现led灯在4s的时间长度内实现一次呼吸,即由暗变亮随即再变暗。设计思路------led灯呼吸效果是由时钟周期内高低电平的时长不同所导致的,也即占空比不同。相同时钟周期内, 占空比50%的LED灯亮度高于占空比为40%的LED灯亮度。---原创 2021-03-11 17:33:35 · 3425 阅读 · 1 评论 -
【FPGA实例】基于FPGA的DDS信号发生器设计
DDS 原理DDS(直接频率合成)技术是根据奈奎斯特抽样定理及数字处理技术,把一系列的模拟信号进行不失真的抽样,将得到的数字信号存储在存储器中,并在时钟的控制下,通过数模转换,将数字量变成模拟信号的方法。DDS 模块主要由相位累加器、查找表、DAC 转换器和低通滤波器组成,基本结构如下。相位累加器,是 DDS 的核心组成部分,用于实现相位的累加,并输出相应的幅值。相位累加器由 M 位宽加法器和 M 位宽寄存器组成,通过时钟控制,将上一次累加结果反馈到加法器输入端实现累加功能,从而使每个时钟周期内的相转载 2021-03-10 20:48:47 · 12572 阅读 · 6 评论 -
【FPGA实例】FPGA矩阵键盘驱动设计及Testbench验证
设计思路采用20ms的延时电路产生使能时钟去扫描,可以直接省略掉按键的消抖延时;虽然每个状态都要进行一次延时消抖,但RTL设计上却更加简单了。矩阵键盘的Verilog HDL实现/* ░░░░░░░░░░░░░░░░░░░░░░░░▄░░ * ░░░░░░░░░▐█░░░░░░░░░░░▄▀▒▌░ * ░░░░░░░░▐▀▒█░░░░░░░░▄▀▒▒▒▐ * ░░░░░░░▐▄▀▒▒▀▀▀▀▄▄▄▀▒▒▒▒▒▐ * ░░░░░▄▄▀▒░▒▒▒▒▒▒▒▒▒█▒▒▄█▒▐ * ░░░▄▀▒▒▒░原创 2021-01-14 15:41:32 · 1082 阅读 · 2 评论 -
【FPGA实例】FPGA按键驱动设计方案及testbench验证
原理这一检测方案中,由于在按键的抖动中,计数器不断地清零,所以时间不会达到20ms;而按键按下的时间必然会大于20ms,因此必然能够检测到。同时,在松开按键时,计数器再次被清零。按键检测方案的Verilog HDL实现module key_count_scan( input clk, input rst_n, input [3:0] key_data, output reg key_flag, output reg [3:0] key_value);//原创 2021-01-13 16:43:27 · 545 阅读 · 0 评论 -
【FPGA实例】LED呼吸灯的设计及Testbench验证
Verilog HDL代码//led breathe displaymodule led_breathe_display( input clk, input rst_n, output [3:0] led_data );//---------------------------//generate for 1us delay signal//localparam DELAY_TOP1 = 6'd50; //1uslocalparam DELAY_TOP1原创 2021-01-12 12:12:36 · 712 阅读 · 0 评论 -
【FPGA实例】FPGA简易电子钟实现及Testbench验证
简易电子钟计时模块//简易电子钟//模块:分秒计数模块//时分秒计数模块module real_timer( input clk, input rst_n, output reg [5:0] second, //second(0~59) output reg [5:0] minute, //minute(0~59) output reg [4:0] hour //hour(0~23) );//parameter defineparam原创 2021-01-07 11:43:30 · 1427 阅读 · 0 评论 -
【FPGA实例】LED跑马灯显示实验及Testbench验证
跑马灯(或称流水灯)即4位LED中,任何一个时刻只亮一个LED,循环奔跑,实现花样显示操作。LED跑马灯显示模块端口列表端口名输入/输出clkinputrst_ninputled_dataoutput代码如下://Water LEDmodule Water_LED( input clk, input rst_n, output reg [3:0] led_data);//--------------------------原创 2021-01-11 21:07:14 · 1926 阅读 · 0 评论