预览加载中,请您耐心等待几秒...
1/5
2/5
3/5
4/5
5/5

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

之序列信号发生器 VerilogHDL 一、原理 在数字电路中,序列信号是指在同步脉冲作用下循环地产生一串周期性的二进制信号. 能产生这种信号的逻辑器件就称为序列信号发生器.根据结构不同,它可分为反馈移位型和 计数型两种。 移位型序列信号发生器是由移位寄存器和组合电路两部分构成,组合电路的输出,作为移 位寄存器的串行输入。 计数型序列信号发生器能产生多组序列信号,这是移位型发生器所没有的功能.计数型 序列信号发生器是由计数器和组合电路构成的。 本实验的目的就是设计一个序列信号发生器。设计产生序列11100100、 11100100、···的计数型序列信号发生器电路。 二、实现 在设计文件中输入Verilog代码 防抖模块 1/******************************分频模 块*************************************/ 2 3`timescale1ns/1ps 4modulequ_dou(clk,rst,a,b); 5 6inputclk; 7wireclk; 8inputrst; 9inputa; 10wirea; 11 12outputb; 13regb; 14 15reg[31:0]cnt; 16regclkout; 17always@(posedgeclkornegedgerst) 18begin 19if(rst==1'b0) 20cnt<=0; 21elsebeginif(a==1'b1)begin 22if(cnt>=32'd3000000) 23b<=1; 24else 25cnt<=cnt+1'b1; 26 27end 28elsebeginb<=1'b0; 29cnt<=0; 30end 31end 32end 33 34 35endmodule 功能实现 1`timescale1ns/1ps 2 3modulexlgen(Q,clk,res,rst,sysclk); 4 5inputclk; 6wireclk; 7inputres; 8wireres; 9inputsysclk; 10inputrst; 11 12outputQ; 13regQ; 14reg[7:0]Q_r; 15 16/*****************例化去抖模块*************************************/ 17wireclk_r; 18qu_douqu_dou( 19.clk(sysclk), 20.rst(rst), 21.a(clk), 22.b(clk_r)); 23 24//******************************************************************** 25 26always@(posedgeclk_rorposedgeres) 27begin 28 29if(res==1)begin 30Q<=1'b0; 31Q_r<=8'b11100100; 32end 33else 34begin 35Q<=Q_r[7]; 36Q_r<=Q_r<<1; 37Q_r[0]<=Q; 38end 39end 40 41endmodule