喜欢0次
                                团队编号:CICC1230
团队名称:少吃米饭多吃肉
前文提到了3:2压缩器,4:2压缩器的实现方法,本文结合本队的设计提出了5:2压缩器的设计,并且给出压缩器的混合使用方法。

对于一般的5:2压缩器实现过程如上图所示,由一个4:2压缩器和一个3:2压缩器串联组成,这样设计的最长延时路径(critical path)为6个XOR门的延迟。
而本文提出的方法如下:
其中rtl实现如下:
module single52 (
    input op1,
    input op2,
    input op3,
    input op4,
    input op5,
    input Cin1,
    input Cin2,
    output Cout1,
    output Cout2,
    output Sum,
    output Carry
);
    wire o1,o2,o3,o4,o5,o6;
    xor xor1(o1,op1,op2);
    xor xor2(o2,op3,op4);
    xor xor3(o3,o1,o2);
    xor xor4(o4,op5,Cin1);
    xor xor5(o5,o3,o4);
    xor xor6(o6,o5,Cin2);
    assign Sum = o6;
    assign Carry = (o5 == 1'b1) ? Cin2 : op5;
    assign Cout1 = (op1 | op2) & (op3 | op4);
    assign Cout2 = (o3 == 1'b1) ? Cin1 : (op1 & op2) | (op3 & op4);
endmodule //single52
