题解 | #多bit MUX同步器#

多bit MUX同步器

http://www.nowcoder.com/practice/30e355a04a454e16811112cb82af591e

`timescale 1ns/1ns

module mux( input clk_a , input clk_b ,
input arstn , input brstn , input [3:0] data_in , input data_en ,

output reg  [3:0] 	dataout

); reg [3:0]qa_data; reg qa_en; reg qb_en_1,qb_en_2;

always @(posedge clk_a or negedge arstn)begin
    if(~arstn)begin
        qa_en<=0;qa_data<=0;
    end
    else begin
        qa_en<=data_en;
        qa_data<=data_in;
    end
end

always @(posedge clk_b or negedge brstn)begin
    if(~brstn)begin
        qb_en_1<=0;qb_en_2<=0;
    end
    else begin
        qb_en_1<=qa_en;
        qb_en_2<=qb_en_1;
    end
end


always @(posedge clk_b or negedge brstn)begin
    if(~brstn)begin
        dataout<=0;
    end
    else if(qb_en_2==1)begin
        dataout<=qa_data;
    end
    else begin
        dataout<=dataout;
    end
end

endmodule

全部评论

相关推荐

我见java多妩媚:大外包
点赞 评论 收藏
分享
11-18 15:57
门头沟学院 Java
最终归宿是测开:这个重邮的大佬在重邮很有名的,他就喜欢打92的脸,越有人质疑他,他越觉得爽😂
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务