Verilog组合逻辑设计说明.docx

上传人:b****6 文档编号:6308731 上传时间:2023-01-05 格式:DOCX 页数:18 大小:1.46MB
下载 相关 举报
Verilog组合逻辑设计说明.docx_第1页
第1页 / 共18页
Verilog组合逻辑设计说明.docx_第2页
第2页 / 共18页
Verilog组合逻辑设计说明.docx_第3页
第3页 / 共18页
Verilog组合逻辑设计说明.docx_第4页
第4页 / 共18页
Verilog组合逻辑设计说明.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

Verilog组合逻辑设计说明.docx

《Verilog组合逻辑设计说明.docx》由会员分享,可在线阅读,更多相关《Verilog组合逻辑设计说明.docx(18页珍藏版)》请在冰豆网上搜索。

Verilog组合逻辑设计说明.docx

Verilog组合逻辑设计说明

电子科技大学

实验报告

学生:

ZYZ学号:

26指导教师:

DJ

一、实验项目名称:

Verilog组合逻辑设计

二、实验目的:

使用ISE软件和Verilog语言进行组合逻辑的设计与实现。

三、实验容:

1.3-8译码器的设计和实现。

2.4位并行进位加法器的设计和实现。

3.两输入4位多路选择器的设计和实现。

实验要求如下:

1.采用Verilog语言设计,使用门级方式进行描述。

2.编写仿真测试代码。

3.编写约束文件,使输入、输出信号与开发板的引脚对应。

4.下载到FPGA开发板,拨动输入开关,观察Led灯的显示是否符合真值表。

四、实验原理:

1.74x138译码器是输出低有效的3-8译码器。

表1所示为74x138译码器的真值表。

表174x138译码器的真值表

输入

输出

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译码器的真值表,可得输出的函数表达式为

根据上述函数表达式,可画出逻辑电路图为。

图13-8译码器的逻辑电路图

 

2.数据选择器的逻辑功能是根据地址选择端的控制,从多路输入数据中选择一路数据输出。

因此,它可实现时分多路传输电路中发送端电子开关的功能,故又称为复用器(Multiplexer),并用MUX来表示。

表22输入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位多路选择器的逻辑电路图为。

图22输入4位多路选择器的逻辑电路图

2.1位全加器的真值表如下

表31位全加器的真值表

输入变量

输出变量

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语句来描述。

图34位并行进位加法器

五、实验器材(设备、元器件):

PC机、WindowsXP、Anvyl或Nexys3开发板、XilinxISE14.7开发工具、DigilentAdept下载工具。

六、实验步骤:

实验步骤包括:

建立新工程、原理图或代码输入、设计仿真、输入输出引脚设置、生成流代码与下载调试。

七、关键源代码:

1.在ISE设计中可以直接输入如下3-8译码器的代码

2.3-8译码器的仿真测试代码

仿真结果如下图所示。

图4译码器的仿真结果

3.译码器在Nexys3开发板上的约束文件

4.4位并行加法器的代码

5.加法器的仿真测试代码

仿真结果如下图所示。

图5加法器的仿真结果

6.加法器在Nexys3开发板上的约束文件

7.数据选择器的代码

modulemux_2in4bit(

inputEN_L,S,

input[4:

1]D0,D1,

output[4:

1]Y

);

wirew0,w1,w2,w3,w4,w5,w6,w7,w8,w9;

wireS_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

八、实验结论:

九、总结及心得体会:

分析好逻辑关系后,在写代码。

调试,有时候再运行一遍就可以。

约束条件最容易出问题。

十、对本实验过程及方法、手段的改进建议:

减少实验项目。

报告评分:

指导教师签字:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1