自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 基本番茄钟的实现

`timescale 1ns / 1ps//16进制module second(input wire clk,output reg sec);reg [27:0]q1;always @(posedge clk) begin if(q1==500000) begin q1<=0; sec<=~sec; end else

2020-11-25 18:39:55 1168

原创 四位数码管

module x7seg_4bit(input clk,input rst_n,input [15:0] x, //等待显示的BCD码output reg [6:0] a_to_g, //段信号output reg [3:0] an //位选信号);//时钟分频 计数器reg [20:0] clkdiv;always @(posedge clk or negedge rst_n)begin if(!rst_n) clkdiv<=21'd0; else clk

2020-11-25 18:31:00 2007

原创 状态机的基本框架

//状态编码parameter s0=4'b0000, s1=4'b0000, s2=4'b0000, s3=4'b0000, s4=4'b0000, s5=4'b0000, s6=4'b0000, s7=4'b0000, s8=4'b0000, s9=4'b0000, s0=4'b0000, s0=4'b0000, s0=4'b0000, s0=4'b0000,//状态转移always @(posedge clk or posedge rst) if(rst) c

2020-11-25 18:30:11 577

原创 两位的数码管

module x7seg_4bit(input clk,input rst_n,input [7:0] x, //等待显示的BCD码output reg [6:0] a_to_g, //段信号output reg [1:0] an //位选信号);//时钟分频 计数器reg [19:0] clkdiv;always @(posedge clk or negedge rst_n)begin if(!rst_n) clkdiv<=20'd0; else clkd

2020-11-25 18:28:55 1882

原创 含有en端和load端的25min倒计时器

`timescale 1ns / 1ps//16进制module second(input wire clk,output reg sec);reg [27:0]q1;always @(posedge clk) begin if(q1==50000000) begin q1<=0; sec<=~sec; end else

2020-11-25 09:59:22 417

原创 状态机学习

状态机学习`timescale 1ns / 1ps//本代码是状态机 在三个状态来回切换//三个状态:IDLE 0 1, S 1 0, S2 0 0;module state_1(input key1,input key2,input clk,input rst,output reg cnt_en,output reg load//output reg [1:0]cstate,//output reg [1:0]nstate ); //状态编码parameter

2020-11-24 19:21:48 288 1

原创 番茄钟(25min 倒计时 )vivado

`timescale 1ns / 1ps//////////////////////////////////////////////////////////////////////////////////// Company: // Engineer: // // Create Date: 2020/11/11 08:15:03// Design Name: // Module Name: tomato// Project Name: // Target Devices: // Tool

2020-11-11 09:36:08 3815 5

原创 60进制BCD 减法计数器 数码管显示 vivado

`timescale 1ns / 1psmodule second(input wire clk,output reg sec);reg [27:0]q1;always @(posedge clk) begin if(q1==50000000) begin q1<=0; sec<=~sec; end else q1<=

2020-11-11 00:23:24 2113 1

原创 模26的减法计数器 vivado

模60的减法计数器module second(input wire clk,output reg sec);reg [27:0]q1;always @(posedge clk) begin if(q1==50000000) begin q1<=0; sec<=~sec; end else q1<=q1+1; e

2020-11-11 00:10:55 1228

原创 二十四进制 加法计数器 并用数码管显示

二十四进制 (BCD码)加法计数器 并用数码管显示`timescale 1ns / 1ps//////////////////////////////////////////////////////////////////////////////////// Company: // Engineer: // // Create Date: 2020/11/09 19:37:50// Design Name: // Module Name: cnt24// Project Name: //

2020-11-10 23:15:35 3090

原创 D触发器 vivado

源程序module DFF( input clk, input rst_n, input en, input d, output reg q ); always @(posedge clk, negedge rst_n) begin if(rst_n==0) q <= 1'b0; else if (en==1) q <= d; end endmodule仿真程序

2020-11-10 23:13:06 2058

原创 100Mhz秒脉冲发生器 vivado

源代码module Second_pulse_generator( input wire clk,//外部时钟,所用时钟为100MHz,周期为10ns input wire rst,//清零端 output reg sec_pule//脉冲信号 ); reg [27:0] m=0;//用于时间计数 //reg n; initial begin m=28'b0; sec_pule=0; end alway

2020-11-10 23:10:10 3079

原创 vivado第一次上手

源代码module gates( input a, input b, output [5:0]z );assign z[5]=a&b;assign z[4]=~(a&b);assign z[3]=a|b;assign z[2]=~(a|b);assign z[1]=a^b;assign z[0]=a~^b;endmodule仿真代码module gates_tb;reg a,b;wire [5:0]z;initial begin a=0;

2020-11-10 23:05:44 313 1

原创 两种方式实现3-8译码器

第一种:case语句`timescale 10ns/1nsmodule decode3_8 (data_out,data_in,enable) ;input [2:0] data_in;input enable;output [7:0] data_out;reg [7:0] data_out; always @(data_in or enable)begin if (enable==1) case (data_in )

2020-11-10 23:02:30 2737

原创 vivado 60进制计数器并用数码管显示

module second(input wire clk,output reg sec);reg [27:0]q1;always @(posedge clk) begin if(q1==50000000) begin q1<=0; sec<=~sec; end else q1<=q1+1; endendmodu

2020-11-10 22:54:28 3894

原创 vivado 数码管学习(二)数码管显示一位数字和显示八位数字

数码管显示一位 9module shumaguan(//input clk,input rst_n,output reg [6:0] a_to_g, //段信号output reg an=1'b1 //位选信号);wire [3:0]x=4'b1001;//x={H,L};//时钟分频 计数器/*reg [19:0] clkdiv;always @(posedge clk or negedge rst_n)begin if(!rst_n) clkdiv<=

2020-11-10 22:51:37 12461 1

原创 ❤❤❤框架:数码管显示模块设计vivado

源程序module x7seg_4bit(input clk,input rst_n,input [15:0] x, //等待显示的BCD码output reg [6:0] a_to_g, //段信号output reg [3:0] an //位选信号);时钟分频信号产生 5ms变一次的两位二进制数(方法一)//时钟分频 计数器reg [20:0] clkdiv;always @(posedge clk or negedge rst_n)begin if(!rst

2020-11-10 22:47:13 2067

原创 Vivado主界面及设计流程介绍

Vivado主界面及设计流程介绍RTL分析:用Verilog语言描述电路的时候,可能出现语法或逻辑上的错误。一般语法错误在编写程序的过程中,vivado会自动检测并在程序界面中有所提示,在Messages中也会提示“Error”。对于逻辑错误软件是不会提示的,最多在Messages中的“Warning”提示中找到一些蛛丝马迹。而设计者可以利用RTL分析进行逻辑和功能检查。行为仿真:检验设计是否满足功能要求。如果直接在FPGA芯片上测试,可能因为多次综合、实现而浪费时间。时序仿真:时序仿真:之前的

2020-11-09 21:09:09 1537

原创 2020.11.33-8译码器 vivado 2018.3 同时实现转4-16译码器

3-8译码器 vivado 2018.3 同时实现转4-16译码器一、源程序方法①module a3_8( input [2:0] a, input en, output reg [7:0] y ); always @(a or en) begin if (en==1) case(a) 3'b000: y=8'b00000001; 3'b001: y=8'b00000010;

2020-11-03 23:10:37 1713 1

空空如也

空空如也

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

TA关注的人

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