数字逻辑实验报告-Verilog时序逻辑设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
电子科技大学
实验报告
学生姓名:任彦璟学号:2015040101018 指导教师:吉家成米源王华
一、实验项目名称:Verilog时序逻辑设计
二、实验目的:
掌握边沿D触发器74x74、同步计数器74x163、4位通用移位寄存器74x194,的工作原理。
设计移位寄存器74x194设计3位最大序列长度线性反馈移位寄存器(LFSR:Linear Feedback Shift Register)计数器。
设计同步计数器74x163 。
三、实验内容:
1.设计边沿D触发器74x74。
2.设计通用移位寄存器74x194。
3.采用1片74x194和其它小规模逻辑门设计3位LFSR计数器。
4.设计4位同步计数器74x163。
四、实验原理:
74x74逻辑电路图
CLK_D CLR_L_D
S1_L
S1_H S0_L
S0_H
w1
w2
w3
w4
w5
w6
w7
w8
w9
w10
w11
w12
w13
w14
w15
w16
w17
w18
w19
w20 74x194逻辑电路图
3位LFSR逻辑电路图
74x163逻辑电路图
上图的设计可以采用门级描述,也可以采用教材《数字设计—原理与实践》(第4版)第525页的表8-20中的行为描述
五、实验器材(设备、元器件):
PC 机、Windows XP 、Anvyl 或Nexys3开发板、Xilinx ISE 14.7开发工具、Digilent Adept 下载工具。
六、实验步骤:
实验步骤包括:建立新工程,设计代码与输入,设计测试文件,设置仿真,查看波形,约束与实现、生成流代码与下载调试。
七、关键源代
码及波形图: 1.D 触发器的Verilog 代码 源码如下
module vr74x74(CLK, D, PR_L, CLR_L, Q, QN);
input CLK, D, PR_L, CLR_L ;
output Q, QN ;
wire w1, w2, w3, w4 ;
nand (w1, PR_L, w2, w4);
nand (w2, CLR_L, w1, CLK) ;
nand (w3, w2, CLK, w4) ;
nand (w4, CLR_L, w3, D) ;
nand (Q, PR_L, w2, QN);
nand (QN, Q, w3, CLR_L);
endmodule
检查输入输出关系,设计无误。2.4位通用移位寄存器74x194 源码如下:
module
Vr74x194(CLK,CLR_L,LIN,RIN,S1,S0,A,B,C,D,Q A,QB,QC,QD);
input CLK,CLR_L,LIN,RIN,S1,S0,A,B,C,D ;
output QA,QB,QC,QD ;
wire CLK_D ;
wire CLR_L_D ;
wire S1_L,S1_H;
wire S0_L,S0_H;
wire QAN,QBN,QCN,QDN ;
wire
w1,w2,w3,w4,w5,w6,w7,w8,w9,w10;
wire
w11,w12,w13,w14,w15,w16,w17,w18,w19, w20;
buf(CLK_D,CLK);
buf(CLR_L_D,CLR_L);
not(m1,S1);
not(m0,S0);
and(n1,S0,m1,RIN);
and(n2,S0,S1,A);
and(n3,m0,m1,QA); and(n5,S0,m1,QA);
and(n6,S0,S1,B);
and(n7,m0,m1,QB);
and(n8,m0,S1,QC);
and(n9,S0,m1,QB);
and(n10,S0,S1,C);
and(n11,m0,m1,QC);
and(n12,m0,S1,QD);
and(n13,S0,m1,QC);
and(n14,S0,S1,D);
and(n15,m0,m1,QD);
and(n16,m0,S1,LIN);
or(p1,n1,n2,n3,n4);
or(p2,n5,n6,n7,n8);
or(p3,n9,n10,n11,n12);
or(p4,n13,n14,n15,n16);
vr74x74
q1(CLK_D,p1,1'b1,CLR_L_D,QA,QAN);
vr74x74
q2(CLK_D,p2,1'b1,CLR_L_D,QB,QBN);
vr74x74
q3(CLK_D,p3,1'b1,CLR_L_D,QC,QCN);
vr74x74
q4(CLK_D,p4,1'b1,CLR_L_D,QD,QDN); endmodule
仿真结果如下图所示
检验输入输出结果正常,设计无误。
3.3位LFSR计数器
源码如下:
module LFSR( CLK,RESET,X2,X1,X0);
input CLK,RESET;
output X2,X1,X0;
wire w1,w3,w6 ;
Vr74x194 U1(.CLK(CLK),
.CLR_L(1'b1),
.RIN(w6),
.S1(RESET),
.S0(1'b1),
.A(1'b1),
.B(1'b0),
.C(1'b0),
.D(1'b0),
.QA(X2),
.QB(X1) ,
.QC(X0)
);
xor (w3,X1,X0) ;
nor (w1,X2,X1) ;
xor (w6,w1,w3) ;
endmodule