电 子 科 技 大 学
实 验 报 告
学生姓名:ZYZ 学 号:2014060103026 指导教师:DJ
一、实验项目名称: Verilog组合逻辑设计
二、实验目的:
使用ISE软件和Verilog语言进行组合逻辑的设计与实现。
三、实验内容:
1.3-8译码器的设计和实现。
2.4位并行进位加法器的设计和实现。
3.两输入4位多路选择器的设计和实现。
实验要求如下:
1.采用Verilog语言设计,使用门级方式进行描述。
2.编写仿真测试代码。
3.编写约束文件,使输入、输出信号与开发板的引脚对应。
4.下载到FPGA开发板,拨动输入开关,观察Led灯的显示是否符合真值表。
四、实验原理:
1.74x138译码器是输出低有效的3-8译码器。表1所示为74x138译码器的真值表。
表1 74x138译码器的真值表
输入
输出
G1
G2A_L
G2B_L
C
B
A
Y7_L
Y6_L
Y5_L
Y4_L
Y3_L
Y2_L
Y1_L
Y0_L
0
x
x
x
x
x
1
1
1
1
1
1
1
1
x
1
x
x
x
x
1
1
1
1
1
1
1
1
x
x
1
x
x
x
1
1
1
1
1
1
1
1
1
0
0
0
0
0
1
1
1
1
1
1
1
0
1
0
0
0
0
1
1
1
1
1
1
1
0
1
1
0
0
0
1
0
1
1
1
1
1
0
1
1
1
0
0
0
1
1
1
1
1
1
0
1
1
1
1
0
0
1
0
0
1
1
1
0
1
1
1
1
1
0
0
1
0
1
1
1
0
1
1
1
1
1
1
0
0
1
1
0
1
0
1
1
1
1
1
1
1
0
0
1
1
1
0
1
1
1
1
1
1
1
根据3-8译码器的真值表,可得输出的函数表达式为
根据上述函数表达式,可画出逻辑电路图为。
图1 3-8译码器的逻辑电路图
2. 数据选择器的逻辑功能是根据地址选择端的控制,从多路输入数据中选择一路数据输出。因此,它可实现时分多路传输电路中发送端电子开关的功能,故又称为复用器(Multiplexer),并用MUX来表示。
表2 2输入1位多路选择器的真值表
数据输入
选择控制S
输出Y
D0
D1
0
0
0
0
0
1
0
0
1
0
0
1
1
1
0
1
0
0
1
0
0
1
1
1
1
0
1
0
1
1
1
1
2选1数据选择器的真值表如表1所示,其中,D0、D1是2路数据输入,S为选择控制端,Y为数据选择器的输出,根据真值表可写出它的输出函数表达式为:
如果输入再加上低有效的输入使能端,则输出的表达式变为
根据上述函数表达式,可画出2输入4位多路选择器的逻辑电路图为。
图2 2输入4位多路选择器的逻辑电路图
2. 1位全加器的真值表如下
表3 1位全加器的真值表
输入变量
输出变量
A
B
Ci
Ci+1
S
0
0
0
0
0
0
0
1
0
1
0
1
0
0
1
0
1
1
1
0
1
0
0
0
1
1
0
1
1
0
1
1
0
1
0
1
1
1
1
1
0
1
1
1
0
根据真值表,输出表达式为:
对于4位并行加法器,可以按入下公式进行设计
图3所示为4位并行进位加法器框图,本实验中用Verilog语句来描述。
图3 4位并行进位加法器
五、实验器材(设备、元器件):
PC机、Windows XP、Anvyl或Nexys3开发板、Xilinx ISE 14.7开发工具、Digilent Adept下载工具。
六、实验步骤:
实验步骤包括:建立新工程、原理图或代码输入、设计仿真、输入输出引脚设置、生成流代码与下载调试。
七、关键源代码:
1.在ISE设计中可以直接输入如下3-8译码器的代码
2.3-8译码器的仿真测试代码
仿真结果如下图所示。
图4 译码器的仿真结果
3.译码器在Nexys3开发板上的约束文件
4.4位并行加法器的代码
5.加法器的仿真测试代码
仿真结果如下图所示。
图5 加法器的仿真结果
6.加法器在Nexys3开发板上的约束文件
7.数据选择器的代码
module mux_2in4bit(
input EN_L , S ,
input[4:1] D0 , D1 ,
output[4:1] Y
);
wire w0 , w1 , w2 , w3 , w4 , w5 , w6 , w7 , w8 , w9 ;
wire S_L ;
not ( S_L , S ) ;
nor ( w0 , EN_L , S ) ;
nor ( w1 , EN_L , S_L ) ;
and ( w2 , D0[1] , w0 ) ;
and ( w3 , D1[1] , w1 ) ;
and ( w4 , D0[2] , w0 ) ;
and ( w5 , D1[2] , w1 ) ;
and ( w6 , D0[3] , w0 ) ;
and ( w7 , D1[3] , w1 ) ;
and ( w8 , D0[4] , w0 ) ;
and ( w9 , D1[4] , w1 ) ;
or ( Y[1] , w2 , w3 ) ;
or ( Y[2] , w4 , w5 ) ;
or ( Y[3] , w6 , w7 ) ;
or ( Y[4] , w8 , w9 ) ;
endmodule
8. 数据选择器的仿真测试代码
// Add stimulus here
EN_L = 1 S = 1'bx
#100
EN_L = 0 S = 0
D0 = 4'b0101
#100
EN_L = 0 S = 1
D1 = 4'b1010
仿真结果如下图所示。
图6 数据选择器的仿真结果
9.数据选择器在Nexys3开发板上的约束文件
#Switch
NET D0[1] LOC= T10; #SW0
NET D0[2] LOC= T9; #SW1
NET D0[3] LOC= V9; #SW2
NET D0[4] LOC= M8; #SW3
NET D1[1] LOC= N8; #SW4
NET D1[2] LOC= U8; #SW5
NET D1[3] LOC= V8; #SW6
NET D1[4] LOC= T5; #SW7
#Led
NET Y[1] LOC=U16; #LED0
NET Y[2] LOC=V16; #LED1
NET Y[3] LOC=U15; #LED2
NET Y[4] LOC=V15; #LED3
#Button
Net S Loc= B8; #BTN0
Net EN_L Loc= C4; #BTNL
八、实验结论:
九、总结及
心得体会
决胜全面小康心得体会学党史心得下载党史学习心得下载军训心得免费下载党史学习心得下载
:
分析好逻辑关系后,在写代码。调试,有时候再运行一遍就可以。约束条件最容易出问
题
快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题
。
十、对本实验过程及方法、手段的改进建议:
减少实验项目。
报告
软件系统测试报告下载sgs报告如何下载关于路面塌陷情况报告535n,sgs报告怎么下载竣工报告下载
评分:
指导教师签字: