用Verilog语言设计一个3-8译码器~(要求分别用case语句和if_else语句各写一份~)

用Verilog语言设计一个3-8译码器~(要求分别用case语句和if_else语句各写一份~),第1张

module decoder38(

input [2:0]code,

output reg[7:0]result

)

always@(*)

begin

case(code)

3'b000: result = 8'h01

3'b001: result = 8'h02

3'b010: result = 8'h04

3'b011: result = 8'h08

3'b100: result = 8'h10

3'b101: result = 8'h20

3'b110: result = 8'h40

3'b111: result = 8'h80

endcase

end

endmodule

module decoder38(

input [2:0]code,

output reg[7:0]result

)

always@(*)

begin

if(code[2])

if(code[1])

if(code[0])

result = 8'h80

else

result = 8'h40

else

if(code[0])

result = 8'h20

else

result = 8'h10

else

else

if(code[1])

if(code[0])

result = 8'h08

else

result = 8'h04

else

if(code[0])

result = 8'h02

else

result = 8'h01

else

end

endmodule

工作原理

使用Verilog描述硬件的基本设计单元是模块(module)。构建复杂的电子电路,主要是通过模块的相互连接调用来实现的。模块被包含在关键字module、endmodule之内。实际的电路元件。Verilog中的模块类似C语言中的函数,它能够提供输入、输出端口,可以实例调用其他模块,也可以被其他模块实例调用。模块中可以包括组合逻辑部分、过程时序部分。

以上内容参考:百度百科-Verilog HDL

姓名:杨汉雄

学号:19011210569

【嵌牛导读】Verilog HDL是一种硬件描述语言,以文本形式来描述数字系统硬件的结构和行为的语言,用它可以表示逻辑电路图、逻辑表达式,还可以表示数字逻辑系统所完成的逻辑功能。 Verilog HDL和VHDL是世界上最流行的两种硬件描述语言,都是在20世纪80年代中期开发出来的。前者由Gateway Design Automation公司开发。两种HDL均为IEEE标准。

【嵌牛正文】

        3-8译码器的输入是3个脚,输出是8个脚。用高低电平来表示输入和输出。输入是二进制。3只脚也就是3位二进制数。输入可以3位二进制数。3位二进制最大是111 也就是8。输出是8个脚,表示10进制。是根据输入的二进制数来输出。如果输入是101 那么就是第5只脚高电平,表示二进制数是5。 其实3-8译码器的功能就是把输入的3位2进制数翻译成10进制的输出。

        本次实验使用verilog语言实现3-8译码器的功能并实现WVF的功能性仿真。

        在quartusII中创建一个波形图文件(WVF),仿真器参数设定:将仿真器的仿真结束时间设定为 1s,仿真时间步长设定为 10ms。设置信号类型:将输入信号 a 设置为二进制类型,设置其余的输入信号 b、c、en 和输出信号 y 都为二进制类型。设定输入信号:设定输入信号 a 为 10ms 周期的时钟信号,设定信号 b 为 20ms 周期的时钟信号,信号 c 为 40ms 周期的时钟信号,在输入信号 en 上设置一段高电平信号。

        可以看到当使能端EN拉高时,输出无效(被置成高电平),当EN为低时实现正常的译码输出。

1,新建工程

2,编写testbench,设置时钟、激励

3,编译文件,可用命令 vlog filename.v

4,仿真,可用命令vsim work.filename

5,添加波形信号

6,run


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11700066.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存