题解 | 使用8线-3线优先编码器Ⅰ实现16-4优先编码器

代码

module encoder_164(
   input      [15:0]      A   ,
   input                  EI  ,
   
   output wire [3:0]      L   ,
   output wire            GS  ,
   output wire            EO    
);
    wire       EO_hi, GS_hi, GS_lo;
    wire [2:0] Y_lo,  Y_hi;
    
    encoder_83 Encoder_lo(.I(A[7 :0]), .EI(EO_hi), .Y(Y_lo), .GS(GS_lo), .EO(EO)   );
    encoder_83 Encoder_hi(.I(A[15:8]), .EI(EI),    .Y(Y_hi), .GS(GS_hi), .EO(EO_hi));
    
    assign L  = {GS_hi, Y_lo|Y_hi};
    assign GS = GS_hi | GS_lo;
endmodule

简析

8-3编码器见优先编码器Ⅰ。两片8-3编码器组合成16-4编码器可参考SNx4HC148 8-Line to 3-Line Priority Encoders
alt
注意,本题的编码器逻辑是相反的,要注意更改。

Verilog篇题解 文章被收录于专栏

本人对牛客网verilog篇题目一些理解

全部评论
assign GS = GS_hi ^ GS_lo;这里异或应该是或吧
点赞 回复 分享
发布于 2022-11-26 15:24 上海

相关推荐

09-13 13:10
南京大学 C++
点赞 评论 收藏
分享
09-04 21:05
已编辑
西南科技大学 Java
点赞 评论 收藏
分享
3 1 评论
分享
牛客网
牛客企业服务