欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

8-3线优先编码器

程序员文章站 2024-02-23 08:13:28
...
//8-3线优先编码器
module cy4(input[7:0] I,
           input EI,//输入端口声明
           output reg[2:0] Y,//输出端口声明
           output reg GS,//输出端口及变量的数据类型声明
           output reg EO//输出端口及变量的数据类型声明
          );
always @(EI, I)
if(EI == 0) 
  begin
    Y <= 3'b000;
    GS = 1'b0;
    EO = 1'b0;
  end
else //当EI=1时,实现优先编码器的功能
begin
  GS = 1; EO = 0;//编码器的输入信号有效时,设定GS、EO的输出值
  casex(I)//逻辑值x表示输入信号中那些位可以为任意值
  8'b1000_0001: Y <= 3'b000;

  8'b0100_001x: Y <= 3'b001;

  8'b0010_01xx: Y <= 3'b010;

  8'b0001_1xxx: Y <= 3'b011;

  8'b0001_xxxx: Y <= 3'b100;

  8'b001x_xxxx: Y <= 3'b101;

  8'b01xx_xxxx: Y <= 3'b110;

  8'b1xxx_xxxx: Y <= 3'b111;

  default:begin
          Y <= 3'b000;
          GS <= 0;
          EO <= 1;
          end//处理编码器输入信号无效的情况
  endcase  
end
endmodule 
相关标签: FPGA