译码器是数字系统的常用功能模块,典型的行为代码如下:
module decoder3to8(out,in,enable);
input [2:0] in;
input enable;
output [7:0] out;
reg [7:0] out;
always @(in or enable)
begin
if(enable==1'b0)
out=8'b11111111;
else
out=81'b1<<in; //左移操作
end
endmodule
分析其原理:
当enable=0时,输出out为全1;当enable使能时,输出out根据输入in的值把最低位的1依次左移,从而完成译码器操作。