JOHNSON计数器,环形计数器,普通计数器
1.普通4bit计数器,n位计数,2^n个状态:
module top_module ();reg clk=0;always #5 clk = ~clk; // Create clock with period=10initial `probe_start; // Start the timing diagram`probe(clk); // Probe signal "clk"// A testbenchreg reset;initial beginreset=0;#10 reset=1;$display ("Hello world! The current time is (%0d ps)", $time);#50 $finish; // Quit the simulationendcount inst1 (.clk(clk),.reset(reset)); // Sub-modules work too.endmodulemodule count(clk, reset, out);output [3:0] out;reg [3:0] out;input clk,reset;always @(posedge clk) beginif (reset==0)out<=0; elseout<=out+1;end`probe(clk); // Sub-modules can also have `probe()`probe(out);
endmodule
结果:
2.JOHNSON计数器n位计数2n个状态,相邻变化只有一位,同格雷码:
module top_module ();reg clk=0;always #5 clk = ~clk; // Create clock with period=10initial `probe_start; // Start the timing diagram`probe(clk); // Probe signal "clk"// A testbenchint k;reg reset;reg [3:0] out;initial beginreset=0;#10 reset=1;for(k=0;k<9;k++) begin$display ("out=%b timr=%g",out,$time);#10;end #10 $finish; // Quit the simulationendcount inst1 (.clk(clk),.reset(reset),.out(out)); // Sub-modules work too.endmodulemodule count(clk, reset, out);output [3:0] out;reg [3:0] out;input clk,reset;always @(posedge clk) beginif (reset==0)out<=4'b0000; else beginif (out[0]==0)//第一位为0就推进1,第一位为1就推进0out<={1'b1,out[3:1]};elseout<={1'b0,out[3:1]};endend`probe(clk); // Sub-modules can also have `probe()`probe(out);
endmodule
结果(见其中变化过程):
3. 环形计数器,类似独热码,n位计数n个状态:
module top_module ();reg clk=0;always #5 clk = ~clk; // Create clock with period=10initial `probe_start; // Start the timing diagram`probe(clk); // Probe signal "clk"// A testbenchint k;reg reset;reg [3:0] out;initial beginreset=0;#10 reset=1;for(k=0;k<9;k++) begin$display ("out=%b timr=%g",out,$time);#10;end #10 $finish; // Quit the simulationendcount inst1 (.clk(clk),.reset(reset),.out(out)); // Sub-modules work too.endmodulemodule count(clk, reset, out);output [3:0] out;reg [3:0] out;input clk,reset;always @(posedge clk) beginif ((reset==0) | (out[0]==1))//or表示或门out<=4'b1000; else out<={1'b0,out[3:1]};end`probe(clk); // Sub-modules can also have `probe()`probe(out);
endmodule
输出:
JOHNSON计数器,环形计数器,普通计数器相关推荐
- 【Verilog HDL 训练】第 08 天(二进制、Johnson、环形计数器)
5月6日 计数器 1. 用verilog实现一个4bit二进制计数器. a) 异步复位 b) 同步复位 input clk, rst_n; output [3:0] o_cnt; Verilog实现代 ...
- 【Java 虚拟机原理】Class 字节码二进制文件分析 三 ( 访问和修饰标志 | 类索引 | 父类索引 | 接口计数器 | 接口表 | 字段计数器 | 字段表 )
文章目录 前言 一.访问和修饰标志 二.类索引 三.父类索引 四.接口计数器 五.接口表 六.字段计数器 七.字段表 前言 上一篇博客 [Java 虚拟机原理]Class 字节码二进制文件分析 二 ( ...
- 计算机电路计数器pl什么意思,计数器原理—不懂就要看哦~~
导读:在数字系统中使用最多的时序电路是计数器.计数器不仅能用于对时钟脉冲进行计数还可以用于分频.定时,产生节拍脉冲和脉冲序列以及进行数字运算等.下面就让小编为大家介绍一下计数器原理.本文引用地址:ht ...
- 网站浏览计数器html,Web浏览计数器的设计应用
Web浏览计数器的设计应用 [摘要]随着网络的迅速普及,上网人数与日俱增,如何有效的统计浏览网页的人数是很多网站应用的重要技术.本文通过利用Delphi提供的WebMoudle 模块能够建立一个Web ...
- redis mysql 原子计数器_redission计数器实现,redisTemplate计数器
在redission 2.9.0版本之前是有BUG,在实现下面代码时,第一次是成功的,但是在第二次就会失败: RedissonClient client;//client参考别的demo RMapCa ...
- 数字时钟计数器(内含模60计数器以及8421BCD码计数器设计代码)
目录 前言 模60计数器 verilog设计代码如下: ISE综合 模24的8421BCD码计数器 原理 verilog HDL代码 测试文件 仿真波形 数字时钟计数器 verilog HDL代码 测 ...
- 分别设计网页访问计数器,会话计数器,访问网站计数器。
张继军 董卫 <java web 应用开发技术与实案列教程>课后习题之第三章第7题 网页访问计数器count1.jsp 会话计数器count2.jsp 访问网站访问计数器count3.js ...
- hdl四位二进制计数器_四位二进制计数器这样接成十进制计数器
十进制计数器与4位二进制计数器有些相似,但4位二进制计数器需要计数到1111然后 才能返回到0000,而十进制计数器要求计数到1001 (相当于9)就返回0000.8421BCD码 十进制计数器是一种 ...
- 模6计数器以及模10计数器(Verilog HDL语言设计)(Modelsim仿真与ISE综合)
目录 前言 模6计数器 Verilog HDL语言描述 测试文件 仿真电路图 RTL Schematic Technology Schematic 模10计数器 Verilog HDL语言描述 测试文 ...
- html网页访问计数器,HTML添加网站计数器(Cookie)
Cookie 计数器 function www_helpor_net(offset) { var endstr=document.cookie.indexOf(";",offset ...
最新文章
- 【 MATLAB 】DFT性质讨论(一)线性、循环反转、共轭与实序列的对称性的MATLAB实现
- python绘图添加上下标
- 删除链表的倒数第n个节点 python_19.leetcode题目讲解(Python):删除链表的倒数第N个节点...
- Dubbo框架设计原理
- goroutine sync.Mutex互斥锁Lock的使用
- 百度NeurIPS全球顶会冠军团队,带你7日从零实践强化学习
- Java向后不兼容历史的观察
- elementui的css文件没有引入_Python中引入模块详细介绍,使用模块的过程中注意事项教程...
- 如何解决多线程并发访问一个资源的安全性问题?
- 2020护网参考学习 关于护网行动的总结
- (03)Verilog HDL模块例化
- 设计模式学习每天一个——Bridge模式
- Java To CSharp源代码转换
- linux抓取snmp trap告警命令,linux snmptrap的发送与接收
- windows批处理备份压缩文件夹rar
- Oracle 11g 表空间管理
- VS2019 + QT5.12调试时无法显示Qt相关变量如QString具体值
- 433m的模块含义及该如何适当的选择对应的无线模块
- [原创]TenJi Game-线下玩法技巧
- [论文评析]基于人体姿态识别的立定跳远 动作智能评估系统