题解 | #时钟切换#
时钟切换
https://www.nowcoder.com/practice/1de5e9bf749244cb8e5908626cc36d36
//用DFF来做通过在每个时钟源的选择路径中插入一个负边沿触发的D触发器,可以确保时钟在高电平时,输出保持不变。 通过这种反馈的方式使得在时钟切换时需要等待当前时钟取消选择,从而避免毛刺的产生。
`timescale 1ns/1ns
module huawei6(
input wire clk0 ,
input wire clk1 ,
input wire rst ,
input wire sel ,
output reg clk_out
);
//*************code***********//
reg q0,q1;
always@(negedge clk0 or negedge rst)
if(!rst)
q0<=0;
else
q0<=~sel&(~q1);
always@(negedge clk1 or negedge rst)
if(~rst)
q1<=0;
else
q1<=sel&(~q0);
always @ (*) begin
clk_out <= (q1 & clk1) | (q0 & clk0);
end
//*************code***********//
endmodule
查看22道真题和解析
基恩士成长空间 421人发布