「Verilog学习笔记」时钟切换

2023-12-25 12:33:32
专栏前言

本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网

`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 @ (*) 
		if (!rst) clk_out <= 0 ; 
		else clk_out = (q0 & clk0) | (q1 & clk1) ;

//*************code***********//
endmodule

文章来源:https://blog.csdn.net/m0_54689021/article/details/135195463
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。