简易计数器1

本文介绍了一个使用Verilog实现的简单计数器模块的设计过程,包括电路结构RTL图的手工绘制、计数器的Verilog代码及波形仿真结果。计数器能够根据设定的最大计数值进行循环计数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

##实验内容
这里写图片描述


##手工绘制的电路结构RTL图

这里写图片描述


##计数器代码

//////////////////// 计数器代码  /////////////////////////
module counter(
  RST   , // 异步复位, 高有效
  CLK   , // 时钟,上升沿有效
  CNT     // 输出的计数值信号
);
input RST, CLK;
output [3:0] CNT;

reg [3:0] CNT;	

integer CNT_MAX = 6;       //CNT_MAX,最大计数值
always @ (posedge CLK or posedge RST) 
begin
  if(RST) 
	CNT <= 0;               //异步复位
  else if(CNT < CNT_MAX)   //计数器未计数到最大值,下一值加1
	begin
		CNT <= CNT + 1'b1;
	end
  else                     //计数器计数到最大值,下一计数值为0
	begin
		CNT <= 0;
		if(CNT_MAX < 9)
			CNT_MAX <= CNT_MAX + 1;
		else
			CNT_MAX <= 6;
	end
	
end
endmodule


##计数器波形仿真截图

这里写图片描述


##Quartus扫描生成的电路RTL图
这里写图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值