我是靠谱客的博主 壮观发卡,最近开发中收集的这篇文章主要介绍编码器和译码器设计——Verilog HDL编码器设计 ——Verilog HDL语言译码器设计——Verilog HDL语言,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

编码器和译码器设计——Verilog HDL

  • 编码器设计 ——Verilog HDL语言
  • 译码器设计——Verilog HDL语言

编码器设计 ——Verilog HDL语言

//设计一个输入输出均为高电平有效的3位二进制优先编码器
//I[7]的优先权最高,I[0]的优先权最低
module encoder8_3_test(I,Y);
input [7:0] I;
output reg[2:0] Y;

// 请在下面添加代码,完成设计任务
/* Begin */
always @(I)
begin
if(I[7]) Y = 3'b111;
else if(I[6]) Y = 3'b110;
else if(I[5]) Y = 3'b101;
else if(I[4]) Y = 3'b100;
else if(I[3]) Y = 3'b011;
else if(I[2]) Y = 3'b010;
else if(I[1]) Y = 3'b001;
else Y = 3'b000;
end
/* End */
endmodule

译码器设计——Verilog HDL语言

//设计具有一位使能端的3线-8线译码器。当使能端为0时,8位输出信号全为0;
//如果一位使能信号为1,则输出高电平有效的译码信号。
module decoder3e_test(a,ena,y);
  input [2:0] a;
  input ena;
  output reg [7:0] y; 

  // 请在下面添加代码,完成设计任务
/* Begin */
always @(a,ena)
begin
case({ena,a})
4'b0000,4'b0001,4'b0010,4'b0011,4'b0100,4'b0101,4'b0110,4'b0111:y = 8'b00000000;
4'b1000:y = 8'b00000001;
4'b1001:y = 8'b00000010;
4'b1010:y = 8'b00000100;
4'b1011:y = 8'b00001000;
4'b1100:y = 8'b00010000;
4'b1101:y = 8'b00100000;
4'b1110:y = 8'b01000000;
4'b1111:y = 8'b10000000;
endcase
end

/* End */
endmodule

最后

以上就是壮观发卡为你收集整理的编码器和译码器设计——Verilog HDL编码器设计 ——Verilog HDL语言译码器设计——Verilog HDL语言的全部内容,希望文章能够帮你解决编码器和译码器设计——Verilog HDL编码器设计 ——Verilog HDL语言译码器设计——Verilog HDL语言所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(65)

评论列表共有 0 条评论

立即
投稿
返回
顶部