实验要求:编写8输入优先编码器,做出RTL View
代码:
module priority_encoder8( //定义模块8输入的优先编码器的输入输出端口
IN ,
OUT );
input [7:0] IN; //定义输入输出信号位宽
output [3:0] OUT;
reg [3:0] OUT; //定义了输出信号OUT是4位的寄存器数据
always @(IN)
begin
if(IN[7]) //第一优先
OUT = 4'b0111;
else if(IN[6]) //第二优先
OUT = 4'b0110;
else if(IN[5]) //第三优先
OUT = 4'b0101;
else if(IN[4]) //第四优先
OUT = 4'b0100;
else if(IN[3]) //第五优先
OUT = 4'b0011;
else if(IN[2]) //第六优先
OUT = 4'b0010;
else if(IN[1]) //第七优先
OUT = 4'b0001;
else if(IN[0]) //第八优先
OUT = 4'b0000;
else
OUT = 4'b1111; //输出没有结果
end
endmodule
8输入优先编码器我是根据4输入优先编码器改写的
RTL View: