题解 | #优先编码器Ⅰ#

优先编码器Ⅰ

https://www.nowcoder.com/practice/a7068b8f4c824d6a9592f691990b21de

`timescale 1ns/1ns

module encoder_83(
   input      [7:0]       I   ,
   input                  EI  ,
   
   output reg [2:0]      Y   ,
   output reg            GS  ,
   output reg            EO    
);

always @(*) begin
  if ( ~EI ) begin
    Y  = 'b0;
    GS = 'd0;
    EO = 'd0;
  end
  else begin
    casex(I)
        'b00000000: begin Y= 'd0; EO = 'd1; GS = 'd0; end
        'b1xxxxxxx: begin Y= 'd7; EO = 'd0; GS = 'd1; end
        'b01xxxxxx: begin Y= 'd6; EO = 'd0; GS = 'd1; end
        'b001xxxxx: begin Y= 'd5; EO = 'd0; GS = 'd1; end
        'b0001xxxx: begin Y= 'd4; EO = 'd0; GS = 'd1; end
        'b00001xxx: begin Y= 'd3; EO = 'd0; GS = 'd1; end
        'b000001xx: begin Y= 'd2; EO = 'd0; GS = 'd1; end
        'b0000001x: begin Y= 'd1; EO = 'd0; GS = 'd1; end
        'b00000001: begin Y= 'd0; EO = 'd0; GS = 'd1; end
//        default :begin Y= 'd0; EO = 'd0; GS = 'd1; end
    endcase
  end
end
endmodule

重点在于casex和case的区别,使用x态所以需要casex

全部评论

相关推荐

03-24 21:23
已编辑
郑州大学 Java
点赞 评论 收藏
分享
马上要带我人生中的第一个实习生了,想问问大家都喜欢什么的mentor?好让我有个努力的目标
拒绝996的劳伦斯很勇敢:看得见目标且护犊子的 具体就是明确告诉组员要干什么,然后当别的组甩dirty work时能护的组自家新人
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务