当前位置: 首页 > 工具软件 > mux > 使用案例 >

MUX优化

阮才俊
2023-12-01
module mux_pro
#(
    parameter D = 4,
    parameter W = 6
)    
(
    input wire [D*W-1:0] i_array,
    input wire [D-1:0] i_hot,
    output  reg [W-1:0] o_sel
);

always @(*) begin :proc_dmux
    integer i;
    o_sel = {W{1'b0}};
    for(i=0;i<D;i=i+1)
 //       o_sel = ~(    ~o_sel & ~({W{i_hot[i]}}&i_array[i*W+:W])     );
        o_sel =     o_sel | ({W{i_hot[i]}}&i_array[i*W+:W])     ;
end

endmodule
 类似资料: