[Verilog HDL] 3-8线译码器

[复制链接]
 楼主| gaochy1126 发表于 2022-12-29 21:57 | 显示全部楼层 |阅读模式
  1. //3-8线译码器
  2. module cy4(input[2:0] E,//输入端口声明
  3.            input[2:0] A,//输入端口声明
  4.            output reg[7:0]Y//输出端口声明
  5.           );
  6. always @(A,E)
  7. if(E == 3'b111)        
  8.    begin
  9.      case(A)
  10.       3'b000: Y <= 8'b1111_1110;
  11.       3'b001: Y <= 8'b1111_1101;
  12.       3'b010: Y <= 8'b1111_1011;
  13.       3'b011: Y <= 8'b1111_0111;
  14.       3'b100: Y <= 8'b1110_1111;
  15.       3'b101: Y <= 8'b1101_1111;
  16.       3'b110: Y <= 8'b1011_1111;
  17.       3'b111: Y <= 8'b0111_1111;
  18.      default: Y <= 8'b1111_1111;
  19.      endcase
  20.    end
  21. else;
  22. endmodule


 楼主| gaochy1126 发表于 2022-12-29 21:58 | 显示全部楼层


测试脚本代码:
`timescale 1 ns/ 1 ps
module cy4_vlg_tst();
reg [2:0] A;
reg [2:0] E;
wire [7:0] Y;
cy4 i1 (
.A(A),
.E(E),
.Y(Y)
);
initial
begin
E = 3’b111;

1000;

A = 3’b000;

100;

A = 3’b001;

100;

A = 3’b010;

100;

A = 3’b011;

100;

A = 3’b100;

100;

A = 3’b101;

100;

A = 3’b110;

100;

A = 3’b111;

100;

<span id="MathJax-Element-1-Frame" tabindex="0" data-mathml="stop;" role="presentation" style="box-sizing: border-box; border: 0px; font: inherit; vertical-align: baseline; position: relative;">stop;stop;display(“Running testbench”);
end
endmodule


您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:这个社会混好的两种人:一是有权有势,二是没脸没皮的。

1148

主题

11651

帖子

26

粉丝
快速回复 在线客服 返回列表 返回顶部
个人签名:这个社会混好的两种人:一是有权有势,二是没脸没皮的。

1148

主题

11651

帖子

26

粉丝
快速回复 在线客服 返回列表 返回顶部