精华内容
下载资源
问答
  • 环形计数器

    2011-11-29 17:35:31
    用移位寄存器和适当门电路设计的一个四位环形计数器,此计数器有1111、0111、0011、0001、0000、1000、1100、1110八个有效状态,可以自启动
  • 环形计数器环形计数器设计.doc
  • 基于FPGA的环形计数器环形计数器.pdf
  • 移位型计数器包括环形计数器以及扭环计数器,原理差不多,几乎相同,但又各自有各自的精彩之处。本资源包括二者的Verilog HDL设计代码以及文档分析。
  • 目录 数字集成电路 -- 各种计数器简介 1. 环形计数器 2. 环形计数器 3.... 4. 行波计数器 ...2. 环形计数器 https://wenku.baidu.com/view/73ec140bba1aa8114431d945.html N个寄存器构成..

    目录

    https://www.cnblogs.com/lyc-seu/p/13062697.html#1-%E7%8E%AF%E5%BD%A2%E8%AE%A1%E6%95%B0%E5%99%A8

    •  
      • 1.环形计数器
      • 2.扭环形计数器
      • 3.线性反馈移位寄存器
      • 4.行波计数器

     

    1. 环形计数器

    module ring_counter4bit
    #(parameter N=4)
    (
    input clk,
    input rst_n,
    output reg[N-1:0]ring_cnt
        );
    always@(posedge clk or negedge rst_n)
    begin
    if(!rst_n)
    ring_cnt<=4'b0001;
    else
    ring_cnt<={ring_cnt[0],ring_cnt[N-1:1]};
    end
    endmodule

    https://wenku.baidu.com/view/73ec140bba1aa8114431d945.html

    N个寄存器构成的环形计数器,状态数:N

     

    2. 扭环形计数器

    https://wenku.baidu.com/view/73ec140bba1aa8114431d945.html

    约翰逊(Johnson)计数器又称扭环计数器,是一种用n位触发器来表示2n个状态的计数器。它与环形计数器不同,后者用n位触发器仅可表示n个状态。2~n进制计数器(n为触发器的个数)有2~n个状态。若以四位二进制计数器为例,它可表示16个状态。但由于8421码每组代码之间可能有二位或二位以上的二进制代码发生改变,这在计数器中特别是异步计数器中就有可能产生错误的译码信号,从而造成永久性的错误。而约翰逊计数器的状态表中,相邻两组代码只可能有一位二进制代码不同,故在计数过程中不会产生错误的译码信号。鉴于上述优点,约翰逊计数器在同步计数器中应用比较广泛。

    module  Johnson_counter4bit
    #(parameter N=4)
    (
    input clk,
    input rst_n,
    output reg[N-1:0]Johnson_cnt
    );
    always@(posedge clk or negedge rst_n)begin
    if(!rst_n)
    Johnson_cnt<=0;
    else
    Johnson_cnt<={~Johnson_cnt[0],Johnson_cnt[N-1:1]};
    end
    endmodule

    N个寄存器构成的扭环形计数器,状态数:2N

    就是将环形计数器最后一级反向后接到第一级。 对于自启动的设计,如下:

    分析:

          修改反馈逻辑的值,可使进入正常工作的循环。通过分析可知,s,s,r,r总共有四种状态可以修改反馈进入正常的计数反馈循环。通过卡诺图分析,s,s包围的2*2黄色框和原先4*2橙色框面积最大,反馈函数最简单,电路实现便捷。

          另外一种反馈函数:

     

     

     

    3. 线性反馈移位寄存器

    N级的线性反馈移位寄存器最多有  2^N-1 个状态。
    线性反馈移位寄存器的基本结构见

    https://blog.csdn.net/qq_44113393/article/details/89852994
    https://www.cnblogs.com/weijianlong/p/11947741.html

    假设开始的时候(D2,D1,D0 ) = (0,0,1),那么每过一个时钟周期会进行跳变一次,可以看到具体的跳变如图所示:

    对于反馈多项式具有什么数学性质实际上我一直比较好奇,应该不只是表示一个等效电路这么简单,直到看到这篇文章:

    http://blog.sina.com.cn/s/blog_62d9edac01015lsd.html

    得到的余数就是R(x)。 

      

    可以发现,当一开始输入一个1,之后每个周期代表的输入序列M(x)除以反馈多项式得到的R(x)代表的寄存器值就是001,010,100,011,101,111,101,也就是上面表中的状态。

    通过这一特性,线性移位寄存器在CRC电路中有广泛应用。

    4. 行波计数器

    2的幂次分频

     每一级的输出都是输入时钟的二分频,N级串联实现输入时钟的2N2N次分频

     

    展开全文
  • 基于FPGA的N位环型计数器设计.pdf
  • 为探索MSI(Medinmscale Integratede Ircuit)可编程计数器进行非常规使用改变应用方向的逻辑修改技术,探讨了基于74Lsl61的环形计数器自启动设计问题,提出了Msl可编程计数器改变应用方向的逻辑修改方法。通过对可...
  • 选用D触发器和555定时器作为主要器件,利用组合逻辑电路、时序逻辑电路和555定时器等方面的数字电路理论,将环形计数器应用到十字路口交通信号灯自动控制电路中,并利用Multisim作为设计工具进行仿真。
  • 为了克服目前在保持右移移位寄存器内部结构不变的基础上只求解第1位触发器的激励函数设计方法的局限性,分析了环形计数器工作时的状态转换过程,提出在不改变右移移位、取反循环移位的状态变化规律时可对任何一位...
  • 4bit环形计数器

    千次阅读 2020-04-03 19:41:18
    环形计数器 1.1 verilog HDL code module twisted_counter(clk,rst_n,dout); input clk,rst_n; output reg [3:0] dout; always@(posedge clk or negedge rst_n) if(!rst_n) dout <=4’b0000; else begin dout&...

    扭环形计数器

    1.1 verilog HDL code

    module twisted_counter(clk,rst_n,dout);
    input clk,rst_n;
    output reg [3:0] dout;
    always@(posedge clk or negedge rst_n)
    if(!rst_n) dout <=4’b0000;
    else begin
    dout<={dout[2:0],~dout[3]};
    end
    endmodule

    1.2 testbench

    module twisted_counter_tb;
    reg clk,rst_n;
    wire [3:0] dout;
    twisted_counter U1 (.clk(clk),.rst_n(rst_n),.dout(dout));
    always #10 clk=~clk;
    initial begin
    clk=1’b0;
    rst_n=1’b1;
    #10 rst_n=1’b0;
    #10 rst_n=1’b1;
    #100;
    end
    endmodule

    1.3 wave
    在这里插入图片描述

    展开全文
  • 74ls74能自启动的环形计数器实验电路multisim源文件,multisim10及以上版本可以正常打开仿真,是教材上的电路,可以直接仿真,方便大家学习。
  • 环形计数器构成的顺序脉冲发生器实验电路multisim源文件,74LS74+74LS08方案,multisim10及以上版本可以正常打开仿真,是教材上的电路,可以直接仿真,方便大家学习。
  • 8位扭环计数器(Verilog HDL)

    千次阅读 2019-01-22 13:15:36
    扭环计数器又叫约翰逊(Johnson)计数器,用n位触发器来表示2n个状态的计数器,若以四位二进制计数器为例,它可表示16个状态。但由于8421码每组代码之间可能有二位或二位以上的二进制代码发生改变,这在计数器中特别...

    Verilog HDL学习笔记五

    扭环计数器又叫约翰逊(Johnson)计数器,用n位触发器来表示2n个状态的计数器,若以四位二进制计数器为例,它可表示16个状态。但由于8421码每组代码之间可能有二位或二位以上的二进制代码发生改变,这在计数器中特别是异步计数器中就有可能产生错误的译码信号,从而造成永久性的错误。而约翰逊计数器的状态表中,相邻两组代码只可能有一位二进制代码不同,故在计数过程中不会产生错误的译码信号。

    约翰逊计数器的长度N=2n,因为移位寄存器串行输入端的信号是从反向端 ~Q取得的。经过n个时钟后,计数器的状态与初始状态刚好相反,必须再经过n个时钟后才能回到扭环原态。
    以四位扭环计数器为图例,如下图所示:
    在这里插入图片描述
    在这里插入图片描述
    设计代码:

    module twist_counter8(out,clk,rst_n);
    	input clk;
    	input rst_n;
    	output reg [7:0]out;
    
    reg [31:0] count;
    reg clk_div;
    localparam N = 50000000;
    //Describe the counter in an always block
    always @ (posedge clk or negedge rst_n)				//将50MHz的时钟频率分为1Hz
    begin
        if (!rst_n)
            count <= 32'b0;
        else if (count == N - 1)
            count <= 32'b0;
        else
            count <= count + 1'b1;
    end
    
    //Describe the flip-flop together with the comparator 
    always @ (posedge clk or negedge rst_n)
    begin
        if (!rst_n)
            clk_div <= 1'b0;
        else if (count == N- 1)
            clk_div <= ~clk_div;
        else
            clk_div <= clk_div;
    end
    
    always @(posedge clk_div or negedge rst_n)
    begin
    	if(!rst_n)
    	out <=8'b0;
    	else
    	out[7:0] <= {out[6:0],~out[7]};
    end
    endmodule
    

    测试代码:

    module twist_counter8_tb;
    reg clk;
    reg rst_n;
    wire [7:0]out;
    
    twist_counter8 unit(
    	.clk(clk),
    	.rst_n(rst_n),
    	.out(out));
    	#10 clk=~clk;
    initial
    begin
    	clk=1'b0;rst_n=1'b0;
    	#20 rst_n=1'b1;
    end
    endmodule
    

    若需详细了解环形计数器和约翰逊计数器可参考文档:[https://wenku.baidu.com/view/0b116b23c1c708a1294a446e.html]

    展开全文
  • 掌握中规模集成移位寄存器74LS194的逻辑功能及测试方法。 用74LS194设计任意模值的扭环计数器的方法
  • 环型计数器只有四个有效状态,其他12个状态均为无效状态,如何提高移位寄存器构建的有效状态数。将反馈QA改为QA’,一下,列出计数顺序表 修改反馈方程实现自校正功能,修改反馈方程,检验了组合逻辑里化简...

    利用quartus仿真时还有一个好处,思考的同时可以避免睡觉。上数电课时老师拿着激光笔在PPT上的波形图指来指去,一下就睡着了。下午三节数电课,通常可以说睡两节半课。

    • 环型计数器只有四个有效状态,其他12个状态均为无效状态,如何提高移位寄存器构建的有效状态数。将反馈QA改为QA’,扭一下,列出计数顺序表
      在这里插入图片描述

    • 修改反馈方程实现自校正功能,修改反馈方程,检验了组合逻辑里化简表达式的知识
      在这里插入图片描述

    • 预置法强制进入有效循环,仿真无法进行因为无法修改输出值而模拟出现意外状况的情况
      在这里插入图片描述

    展开全文
  • 在进入到同步时序逻辑电路的设计部分前, 必须要先掌握分析同步时序逻辑电路的方法. 下面的例子展示了如何根据给定逻辑图来一步步分析电路功能. ...
  • 环形、扭环、LFSR计数器

    千次阅读 2020-06-22 10:26:33
    扭环计数器 线性反馈移位寄存器 从这个题目来谈起今天的话题:移位寄存器由8级触发器构成,则构成的扭环计数器有多少个有效状态?环形计数器?线性反馈移位寄存器? 环形计数器 规则:环形计算器的规则是利用一个...
  • 基本环形计数器(带自启动功能)设计

    千次阅读 2019-11-08 11:34:53
    (1)列基本环形计数器的状态表: 值得注意的是, 基本环形计数器只有4个有效状态 0001, 0010, 0100, 1000, 其余12个状态均为无效状态: 它们的次态用×填充. (2)根据状态表, 绘制状态激励表(选择D触发器): (3)...
  • quartus仿真4:74194构建环型计数器

    千次阅读 2020-10-02 19:18:51
    移位寄存器构建环型模4计数器,数据表来自德州仪器 问题:电路受到干扰后无法进行自校正 鼠标选中波形上的一段设为1便可实现单脉冲的设置,仿真波形如图所示 以上分析出现重大问题,反复核对,我发现我把...
  • 常用计数器的verilog实现(binary、gray、one-hot、LFSR、环形、环形) 代码测试功能正确,时间有限,错误难免;如有错误,欢迎指正。  binary(二进制)计数器 很简单,可根据需要完成同步或异步复位、置数、...
  • 环形计数器3. 线性反馈移位寄存器4. 行波计数器 1. 环形计数器 https://wenku.baidu.com/view/73ec140bba1aa8114431d945.html N个寄存器构成的环形计数器,状态数:N 2. 环形计数器 ...
  • 计数器 1. 用verilog实现一个4bit二进制计数器。 a) 异步复位 b) 同步复位 input clk, rst_n; output [3:0] o_cnt; Verilog实现代码: module count_2( input clk, input rst_n, output reg [3:0] o_cnt ) ...
  • 实验四:环形计数器的设计 实验五:顺序排列的设计 实验六:二进制除法器的设计 实验七:数字显示频率计的设计 实验八:序列检测器的设计 实验九:数字秒表的设计 实验十:自助售票机的设计 实验三:JK触发器...
  • 环形计数器 顺序脉冲发生器 环形计数器 将移位寄存器首位相接,连续不断的数据将在寄存器内循环右移。 如初始状态为1000,则电路的循环变化为:1000 --> 0001 --> 0010 --> 0100 --> 1000 ,可以把这...
  • 环形计数器具有8个有效状态,仍然有8个无效状态。进一步提高移位寄存器构建的计数器的有效状态数,可采用线性反馈移位寄存器计数器(Linear Feedback Shift-Register Counters LFSR)。 验证波形如下图所示 解决...

空空如也

空空如也

1 2 3 4 5 ... 17
收藏数 333
精华内容 133
关键字:

扭环计数器