实验五Verilog设计组合电路Word下载.docx

上传人:b****6 文档编号:16250718 上传时间:2022-11-21 格式:DOCX 页数:19 大小:2.44MB
下载 相关 举报
实验五Verilog设计组合电路Word下载.docx_第1页
第1页 / 共19页
实验五Verilog设计组合电路Word下载.docx_第2页
第2页 / 共19页
实验五Verilog设计组合电路Word下载.docx_第3页
第3页 / 共19页
实验五Verilog设计组合电路Word下载.docx_第4页
第4页 / 共19页
实验五Verilog设计组合电路Word下载.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

实验五Verilog设计组合电路Word下载.docx

《实验五Verilog设计组合电路Word下载.docx》由会员分享,可在线阅读,更多相关《实验五Verilog设计组合电路Word下载.docx(19页珍藏版)》请在冰豆网上搜索。

实验五Verilog设计组合电路Word下载.docx

HDL设计法设计并仿真8-3线优先编码器encode.v,其真值表如下表所示。

3、用Verilog语言编写3-8译码器的程序,符号如图所示,其中g1,g2a,g2b是使能控制输入端,当g1为高电平,g2a,g2b为低电平时,译码器工作,其他状态时,译码器被禁止工作,全部输出均为无效电平(高电平‘1’)。

 

当CBA=000时,Y0N=0,其余为1;

当CBA=001时,Y1N=0,其余为1;

依此类推,文件命名为decoder3_8.v。

(选做)

三、实验步骤:

第一个实验:

1、打开QuartusII,新建一个工程f_adderyjq

2、新建一个Verilog 

HDL文件

3、输入程序(数据流方式):

modulef_adder1(a,b,cin,s,co);

inputa,b,cin;

outputs,co;

assigns=(a^b)^cin;

assignco=(a&

b)|(cin&

(a^b));

endmodule

4、设置顶层实体名(点settings>

general>

下拉选)

5、编译

6、新建一个Verilog 

HDL文件输入文件f_adder2.v

7、输入程序(结构描述方式):

modulef_adder2(a,b,cin,s,co);

wires1,s2,s3;

xor(s1,a,b);

and(s2,s1,cin);

and(s3,a,b);

xor(s,cin,s1);

or(co,s2,s3);

8、设置顶层实体名(点settings>

9、编译

10、新建一个Verilog 

HDL文件输入文件f_adder3.v

11、输入程序(行为描述方式):

modulef_adder3(a,b,cin,s,co);

regs,co;

always@({a,b,cin})

begin

case({a,b,cin})

'

b000:

s=0;

b001:

s=1;

b010:

b011:

b100:

b101:

b110:

b111:

endcase

co=0;

co=1;

end

12、设置顶层实体名(点settings>

13、编译

14、执行file>

Create/Update>

CreateSymbolFilesforCurrentFlie为VHDI设计文件生成原件符号

15、建立波形文件

8、导入引脚

9、仿真结果如下:

总结根据电路图分析可知:

abc

sco

1

与仿真的波形相符。

第二个实验:

1、打开QuartusII,新建一个工程encodeyjq

HDL文件输入文件encodeyjq.v

3、输入程序

moduleencode(y,a);

input[7:

0]a;

output[2:

0]y;

reg[2:

always@(a)

if(~a[7])y='

b111;

elseif(~a[6])y='

b110;

elseif(~a[5])y='

b101;

elseif(~a[4])y='

b100;

elseif(~a[3])y='

b011;

elseif(~a[2])y='

b010;

elseif(~a[1])y='

b001;

elseif(~a[0])y='

b000;

end

4、设置顶层文件(点settings>

6、执行file>

7、建立波形文件

总结:

结果与图片相同,仿真正确。

第三个实验

1、打开QuartusII,新建一个工程decoderyjq

HDL文件输入文件decoderyjq.v

moduledecoder(g1,g2a,g2b,A,B,C,y);

inputA,B,C,g1,g2a,g2b;

output[7:

reg[7:

always@(g1org2aorg2borAorBorC)

begin

if(g1!

=1|g2a!

=0|g2b!

=0)y='

b11111111;

else

case({C,B,A})

y<

='

b11111110;

b11111101;

b11111011;

b11110111;

b11101111;

b11011111;

b10111111;

b01111111;

9、仿真

仿真结果与实验要求相同,故仿真正确。

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

当前位置:首页 > 法律文书 > 调解书

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

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