【Verilog异步清零计数器】

这篇具有很好参考价值的文章主要介绍了【Verilog异步清零计数器】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

本人只是初学,代码经过实验验证,仅供参考
我自己查找模仿编写运行的代码,如有侵权,联系删除。

一、异步清零的计数器

这是异步清零+控制加减法+进位指示灯的计数器

1.代码

代码如下(示例):

module jishu_125 (CLK,RST,x,q,co);	//时钟信号,清零信号,加减法控制端,输出,进位输出
	input CLK,RST,x;
	output[3:0] q;
	output co;
	reg[3:0] q;
	reg co;
	always@(posedge CLK or negedge RST)	//异步清零的控制语句
	begin 
		if(!RST)     	 //异步清零控制
		q<=4'd0000;
		else
		begin
			if(x==1'b1)    //如果x=1(高电位),控制为加法器
			begin
				if (q==4'b1001) //如果q=9,则把0赋值给q
				q<=4'b0000;
				else if (q>=4'b0000&&q<4'b1001)	
				q<=q+1'b1;
				else q<=4'b0000;
				end
			if (x==1'b0)  //如果x=0(低电位),控制为减法器
			begin
				if (q==4'b0000)
				q<=4'b1001;
				else if (q>=4'b0000&&q<4'b1010)  //这里减法特殊,范围要到10才能包含9
				q<=q-1'b1;
				else q<=4'b0000;
				end
			end		
 	end
 always @(q)	//进位显示端口可以删去
	begin 
		if (RST==1'b0)
		co<=1'b0;
		else if (x==1'b1&&q==4'b1001) co<=1'b1;
		else if (x==1'b1&&q==4'b0000) co<=1'b1;
		else co <=0;
	end
endmodule

总结

这个程序适合已经了解书本例题的同学,要先看书上的例题
第一次写这个,不太会,有问题可以问我哈,一般晚上休息会回复
有什么建议,也欢迎留言文章来源地址https://www.toymoban.com/news/detail-503942.html

到了这里,关于【Verilog异步清零计数器】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Verilog数字系统设计——10进制计数器,具有异步复位功能

    编程实现10进制计数器,具有异步复位功能,十位和个位用8421BCD码表示,各端口定义如下图所示: 仔细考虑端口定义中每个端口的含义; 要求完成程序编辑、编译、时序仿真; 实验提交Verilog设计文件(.v文件)、仿真波形截图以及对于第3个步骤所提出问题的回答,文件打包

    2024年02月11日
    浏览(35)
  • 用Verilog设计一个8位二进制加法计数器,带异步复位端口,进行综合和仿真。

    点此处编译 这里还需将rst置1才有效 可以在clk=0;后加rst=1; 或者在clk=0;后加rst=0; 并且在#DELY clk=~clk;后加#(DELY*20) rst=~rst; 仿真即可

    2024年02月04日
    浏览(43)
  • 【FPGA】Verilog:升降计数器 | 波纹计数器 | 约翰逊计数器 | 实现 4-bit 升降计数器的 UP/DOWN

    目录 Ⅰ. 理论部分 0x00 升降计数器(UP DOWN Counter) 0x01 波纹计数器(Ripple Counter)

    2024年02月05日
    浏览(49)
  • 数字电路11-异步计数器

    1、原理 同步:在CLK到来时判断以往的状态是否需要翻转 异步:判断低位是否有进位来判断是否需要翻转 2、电路-下降沿触发 使用3个 下降沿 触发的T触发器构成异步计数器 CLK 0 的下降沿导致FF 0 翻转,若初始状态为000时,需要翻转两次,Q 0 才会产生下降沿,从而CLK i 的翻转

    2024年02月06日
    浏览(43)
  • verilog计数器

    (1) 深入了解计数器原理 (2) 学习使用 Verilog 实现同步计数器 ( 模八) 计数器的功能是记忆脉冲个数,它是数字系统中应用最为广泛的时序逻辑构件。 下图为设计 计数器从0开始每隔25_000_000个时钟周期(0.25秒)数码管末位显示加一,最大值为7,7后复0值              这

    2024年02月05日
    浏览(61)
  • Verilog实现按键计数器

    一、简介 计数器我们都知道,这里我们旨在使用Verilog HDL 来实现按键计数器的操作,功能有: 1、按下一个键,计数加一(+1); 2、按下另一个键,计数减一(-1); 3、按下复位键,则计数清零。 4、最多计数60次。 二、 代码实现 我们使用了两个模块,第一个是按键消抖模

    2024年02月04日
    浏览(43)
  • 【Verilog基础】7.计数器

    如果是电平触发的话,只需要把posedge clk 换成reset or clk 就可以了; Johnson 计数器是一种数字电路, 具有以反馈方式连接的一系列触发器。 如果位数为N,则Verilog Johnson计数器是对2N个状态进行计数的计数器。 该电路是一种特殊类型的移位寄存器, 中最后一个触发 器的补码输出

    2024年02月13日
    浏览(44)
  • verilog手撕代码5——计数器(置位、加减、环形、扭环形、格雷码计数器实现)

    2023.5.12 编写一个十六进制计数器模块,计数器输出信号递增每次到达0,给出指示信号 zero ,当置位信号 set 有效时,将当前输出置为输入的数值 set_num 。 注意 :这里zero=1和num=0是同一拍输出的,按道理如果根据num=0,然后去输出zero=1应该延迟一拍。所以这里考虑将number延迟一

    2024年02月07日
    浏览(52)
  • 【FPGA】Verilog:时序电路设计 | 二进制计数器 | 计数器 | 分频器 | 时序约束

    前言: 本章内容主要是演示Vivado下利用Verilog语言进行电路设计、仿真、综合和下载 示例:计数器与分频器   ​​ 功能特性: 采用 Xilinx Artix-7 XC7A35T芯片  配置方式:USB-JTAG/SPI Flash 高达100MHz 的内部时钟速度  存储器:2Mbit SRAM   N25Q064A SPI Flash(样图旧款为N25Q032A) 通用

    2024年02月02日
    浏览(58)
  • Verilog基础之十、计数器实现

    目录 一、前言 二、工程设计 2.1 设计代码 2.2 综合结果 ​2.3 仿真结果     计数器是较为基础的逻辑,很多其他逻辑可依靠计数器实现,如控制器,分频。原理为通过统计时钟脉冲的个数来输出计数值。 工程设计以计数20的计数器为例 测试代码 综合后的网表可知,6位的计

    2024年02月09日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包