题解 | #多bit MUX同步器#

多bit MUX同步器

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

跨时钟域传输,电路图如图所示: alt

完整代码:

`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]data_in1;
    reg data_ena1,data_enb1,data_enb2;
    always@(posedge clk_a or negedge arstn)begin
        if(!arstn)begin
            data_in1 <= 0;
            data_ena1 <= 0;
        end
        else begin
            data_in1 <= data_in;
            data_ena1 <= data_en;
        end
    end
    
    always@(posedge clk_b or negedge brstn)begin
        if(!brstn)begin
            data_enb1 <= 0;
            data_enb2 <= 0;
        end
        else begin
            data_enb1 <= data_ena1;
            data_enb2 <= data_enb1;
        end
    end
    
    always@(posedge clk_b or negedge brstn)begin
        if(~brstn)
            dataout <= 0;
        else 
            dataout <= data_enb2? data_in1: dataout;
    end
                   
endmodule
全部评论

相关推荐

不愿透露姓名的神秘牛友
06-27 14:11
很喜欢小米的新车,校招薪资每月22k,攒多久能买?
测试糕手手:别看工资,先看现金流存款。有50W存款以上再考虑,车是消耗品,选适合自己的重要。你有钱就当我没说过
点赞 评论 收藏
分享
牛客84809583...:举报了
点赞 评论 收藏
分享
点赞 评论 收藏
分享
xdm怎么说&nbsp;要被拷打了&nbsp;担心是KPI
丹田:面就完了,就当日薪四位数的大佬免费给给你面试。
点赞 评论 收藏
分享
评论
7
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务