序列发生器及序列检测器设计Verilog代码VIVADO仿真
名称:序列发生器及序列检测器设计Verilog代码VIVADO仿真
软件:VIVADO
语言:Verilog
代码功能:
时钟同步状态机设计
设计一个序列发生器产生学号后两位数值对应的8421BCD
码,再设计一个对应学号后两位数值8421BCD码的序列检测器
要求仿真实现:
将设计的序列发生器输出作为序列检测器输入。当检测到对
图。应学号的数值时,输出为“1”,否这输出为“0”。
序列检测器输入始终为“1”,测出此时检测器的输出
FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com
演示视频:
设计文档:
部分代码展示:
1. 工程文件

2. 序列发生器

3. 序列检测器

4. Testbench
将序列发生器输出作为序列检测器的输入

仿真图


可以看到序列发生器输出了00100010,序列检测器检测到后,输出了高电平
5. Testbench2
序列检测器输入始终为1

仿真图

输入一直为1,检测不到00100010,check_out没有输出高电平
`timescale 1ns / 1ps ////////////////////////////////////////////////////////////////////////////////// // Company: // Engineer: // // Create Date: 2019/12/21 15:29:36 // Design Name: // Module Name: sequence_generate // Project Name: // Target Devices: // Tool Versions: // Description: // // Dependencies: // // Revision: // Revision 0.01 - File Created // Additional Comments: // ////////////////////////////////////////////////////////////////////////////////// //学号序列产生模块--2018021407022 //22=00100010 module sequence_generate( input clk, output reg sequence_out ); parameter Student_ID=8'b00100010;//定义学号BCD码值 reg [2:0] count=3'd0; always@(posedge clk) count<=count+3'd1;//count循环累加0~7循环 //输出序列 always@(posedge clk) case(count)//由高位到低位输出 3'd0:sequence_out<=Student_ID[7]; 3'd1:sequence_out<=Student_ID[6]; 3'd2:sequence_out<=Student_ID[5]; 3'd3:sequence_out<=Student_ID[4]; 3'd4:sequence_out<=Student_ID[3]; 3'd5:sequence_out<=Student_ID[2]; 3'd6:sequence_out<=Student_ID[1];
代码文件(付费下载):
![]()
1、代码文件需要付费后才可见。
2、支付问题请联系微信公众号客服。
3、优质Verilog/VHDL代码资源,所见即所得。
Verilog/VHDL资源下载 » 序列发生器及序列检测器设计Verilog代码VIVADO仿真
2、支付问题请联系微信公众号客服。
3、优质Verilog/VHDL代码资源,所见即所得。
Verilog/VHDL资源下载 » 序列发生器及序列检测器设计Verilog代码VIVADO仿真