精华内容
下载资源
问答
  • 在之前对于同步计数器的... 我们通过同步十进制加法计数器和同步六进制加法计数器的有机组合来看一下这其中的奥妙. 对于同步十进制加法计数器的设计, 我们都知道在1001->0000时, Y由0->1: 那么问题来了, 究...

            在之前对于同步计数器的设计中, 我从未验证过输出Y对于下一位(较高位)计数器的影响. 之前对于计数器的输出Y值的设定就有一定的疑惑, 今日终于有了更进一步的理解. 我们通过同步十进制加法计数器和同步六进制加法计数器的有机组合来看一下这其中的奥妙.

            对于同步十进制加法计数器的设计, 我们都知道在1001->0000时, Y由0->1: 那么问题来了, 究竟是电路状态为1001时Y=1还是电路状态为0000时Y=1呢——我的课本上告诉我是1001. 可真正将该结论应用到实际中时, 我发现, 这是错误的: 若按书上的思路来, 电路状态来到08后, 会变到19, 而后再变为10(这很显然是不对的); 电路状态在18、28、38、48、58时都会面临这一问题. 

            根据出现的问题, 我将同步十进制加法计数器部分的输出Y改为Y=Q3n'Q2n'Q1n'Q0n', 再模拟电路波形后发现, 上述问题已不存在. 吸取了这一教训后, 我又将同步六进制加法计数器部分的输出Y改为Y=Q2n'Q1n'Q0n'. 

            当然, 我也只是用multisim7模拟了电路的运行情况, 并不是真正意义上的运行, 所以我的结论有可能不完全正确, 还请各位朋友帮我分析这一问题, 在这向提供宝贵意见的朋友们表示衷心的感谢!

            最后, 我们来看一下该如何有机组合这两个电路. 

            (1)准备好统一使用上升沿触发的D触发器构成的同步十进制加法计数电路,

            (2)准备好统一使用上升沿触发的D触发器构成的同步六进制加法计数电路,

            (3)将信号发生器的输出端接到每个同步十进制加法计数电路中的D触发器的CLK端,

            (4)将同步十进制加法计数电路的输出Y接到每个同步六进制加法计数电路中的D触发器的CLK端,

            (5)用两个4输入数码管, 实时显示两个电路的状态.

            由于电路版图过大, 下面只展示电路图的缩略版本, 若想获取更加详细的电路图, 可从本博客的资源中找到该电路的详细设计过程及电路逻辑图.

    展开全文
  • 本电路用同步十进制加法计数电路和同步六进制加法计数器电路的有机组合, 实现了六十进制加法计数器的功能. 通过该例子的设计, 可对同步N进制加法计数器输出Y的设定有进一步的认识.
  • 同步十进制加法计数器设计

    千次阅读 2019-10-01 09:09:07
    (1)逻辑抽象: ... 设加法进位输出变量为Y, 使用上升沿触发的触发器进行设计. 状态转换关系为 从0000开始计数, 经过10个脉冲后, 实现了0000->0001->0010->0011->0100->0101->011...

    (1)逻辑抽象:

            由分析, 共有10个有效状态, 需要\left \lceil \log(2, 10) \right \rceil = 4 个触发器.设4个触发器编码变量自高位到低位依次设为Q_{3}Q_{2}Q_{1}Q_{0}.

            设加法进位输出变量为Y, 使用上升沿触发的触发器进行设计.  状态转换关系为 从0000开始计数, 经过10个脉冲后, 实现了0000->0001->0010->0011->0100->0101->0110->0111->1000->1001->0000的状态转换. 按照上升沿触发的方式要求, 在1001->0000时,  Y由0->1.

    (2)绘制状态图, 并转换为状态表:

            由于状态转换关系比较明确, 这里直接绘制出状态表即可.

    同步十进制加法计数器状态表
    ^{​{Q_{3}}^{n}}^{​{Q_{2}}^{n}}^{​{Q_{1}}^{n}}^{​{Q_{0}}^{n}}^{​{Q_{3}}^{n+1}}^{​{Q_{2}}^{n+1}}^{​{Q_{1}}^{n+1}}^{​{Q_{0}}^{n+1}}Y
    000000010
    000100100
    001000110
    001101000
    010001010
    010101100
    011001110
    011110000
    100010010
    100100001

    (3)选择触发器, 绘制状态激励表:

            这里选择JK触发器, 对于JK触发器, 有下述关系:

            

    JK触发器状态
    Q^{^{n}}Q^{^{n+1}}JK
    000\times
    011\times
    10\times1
    11\times0

     

    同步十进制加法计数器状态激励表
    ^{​{Q_{3}}^{n}}^{​{Q_{2}}^{n}}^{​{Q_{1}}^{n}}^{​{Q_{0}}^{n}}^{​{Q_{3}}^{n+1}}^{​{Q_{2}}^{n+1}}^{​{Q_{1}}^{n+1}}^{​{Q_{0}}^{n+1}}YJ_{3}K_{3}J_{2}K_{2}J_{1}K_{1}J_{0}K_{0}
    0000000100\times0\times0\times1\times
    0001001000\times0\times1\times\times1
    0010001100\times0\times\times01\times
    0011010000\times1\times\times1\times1
    0100010100\times\times00\times1\times
    0101011000\times\times01\times\times1
    0110011100\times\times0\times01\times
    0111100001\times\times1\times1\times1
    100010010\times00\times0\times1\times
    100100001\times10\times0\times\times1
    1010\times\times\times\times\times\times\times\times\times\times\times\times\times
    1011\times\times\times\times\times\times\times\times\times\times\times\times\times
    1100\times\times\times\times\times\times\times\times\times\times\times\times\times
    1101\times\times\times\times\times\times\times\times\times\times\times\times\times
    1110\times\times\times\times\times\times\times\times\times\times\times\times\times
    1111\times\times\times\times\times\times\times\times\times\times\times\times\times

    (4)根据状态激励表求出输出方程和激励方程组:

    J_{0}=1, K_{0}=1

     {Q_{1}}^{n}{Q_{0}}^{n}00011110
    {Q_{3}}^{n}{Q_{2}}^{n}  
    000000
    010000
    11\times{\color{Red} \times }{\color{Red} \times }\times
    1001{\color{Red} \times }\times
    Y={Q_{3}}^{n}{Q_{0}}^{n}

     

     {Q_{1}}^{n}{Q_{0}}^{n}00011110
    {Q_{3}}^{n}{Q_{2}}^{n}  
    000000
    010010
    11\times\times{\color{Red} \times }\times
    100\times\times\times
    J_{3}={Q_{2}}^{n}{Q_{1}}^{n}{Q_{0}}^{n}

     

     {Q_{1}}^{n}{Q_{0}}^{n}00011110
    {Q_{3}}^{n}{Q_{2}}^{n}  
    00\times{\color{Red} \times }{\color{Red} \times }\times
    01\times{\color{Red} \times }{\color{Red} \times }\times
    11\times{\color{Red} \times }{\color{Red} \times }\times
    1001{\color{Red} \times }\times
    K_{3}={Q_{0}}^{n}

     

     {Q_{1}}^{n}{Q_{0}}^{n}00011110
    {Q_{3}}^{n}{Q_{2}}^{n}  
    000010
    01\times\times{\color{Red} \times }\times
    11\times\times{\color{Red} \times }\times
    1000{\color{Red} \times }\times
    J_{2}={Q_{1}}^{n}{Q_{0}}^{n}

     

     {Q_{1}}^{n}{Q_{0}}^{n}00011110
    {Q_{3}}^{n}{Q_{2}}^{n}  
    00\times\times{\color{Red} \times }\times
    010010
    11\times\times{\color{Red} \times }\times
    10\times\times{\color{Red} \times }\times
    K_{2}={Q_{1}}^{n}{Q_{0}}^{n}

     

     {Q_{1}}^{n}{Q_{0}}^{n}00011110
    {Q_{3}}^{n}{Q_{2}}^{n}  
    0001{\color{Red} \times }\times
    0101{\color{Red} \times }\times
    11\times\times\times\times
    1000\times\times
    J_{1}=\overline{​{Q_{3}}^{n}}{Q_{0}}^{n}

     

     {Q_{1}}^{n}{Q_{0}}^{n}00011110
    {Q_{3}}^{n}{Q_{2}}^{n}  
    00\times{\color{Red} \times }10
    01\times{\color{Red} \times }10
    11\times{\color{Red} \times }{\color{Red} \times }\times
    10\times{\color{Red} \times }{\color{Red} \times }\times
    K_{1}={Q_{0}}^{n}

    (5)检查电路自启动功能:

            由于电路在设计时未采用全编码, 所以要考虑无效状态次态的问题, 因此电路必须检查自启动功能.

    检查思路:

            将激励方程组代入状态特性方程组, 

    {Q_{3}}^{n+1}=J_{3}\overline{​{Q_{3}}^{n}}+\overline{K_{3}}{Q_{3}}^{n}=\overline{​{Q_{3}}^{n}}{Q_{2}}^{n}{Q_{1}}^{n}{Q_{0}}^{n}+{Q_{3}}^{n}\overline{​{Q_{0}}^{n}},

    {Q_{2}}^{n+1}=J_{2}\overline{​{Q_{2}}^{n}}+\overline{K_{2}}{Q_{2}}^{n}=\overline{​{Q_{2}}^{n}}{Q_{1}}^{n}{Q_{0}}^{n}+{Q_{2}}^{n}\overline{​{Q_{1}}^{n}{Q_{0}}^{n}}={Q_{2}}^{n}\oplus ({Q_{1}}^{n}{Q_{0}}^{n}),

    {Q_{1}}^{n+1}=J_{1}\overline{​{Q_{1}}^{n}}+\overline{K_{1}}{Q_{1}}^{n}=\overline{​{Q_{3}}^{n}}\cdot \overline{​{Q_{1}}^{n}}\cdot {Q_{0}}^{n}+{Q_{1}}^{n}\cdot \overline{​{Q_{0}}^{n}},

    {Q_{0}}^{n+1}=J_{0}\overline{​{Q_{0}}^{n}}+\overline{K_{0}}{Q_{0}}^{n}=\overline{​{Q_{0}}^{n}}+\overline{1} \cdot {Q_{0}}^{n}=\overline{​{Q_{0}}^{n}}.

            对于设计中的无效状态1010/1011/1100/1101/1110/1111代入状态特性方程组, 得出的次态分别为 1011/0100/1101/0100/1111/0000, 构成 1010->1011->0100, 1100->1101->0100, 1110->1111->0000, 由此可以看出, 

    所有的无效状态都可进入有效状态的循环, 则电路具备自启动功能.

    (6)绘制状态图:

     (7)设计心得:

            与设计同步八进制可逆加法计数器不同, 在设计同步十进制加法计数器时, 需考虑到无效状态的问题: 电路设计未采用全编码, 故会有一些无效状态. 

            在判断无效状态能否进入有效状态的循环时, 只需将激励方程组代入触发器的状态特性方程, 求出每一个无效状态对应的次态, 再判断这些无效状态的次态能否进入有效状态的循环即可.

            由于同步十进制加法计数器的状态转换关系比较明确, 故在设计时直接给出状态表. 在即将设计的110序列检测器中, 就需要先分析出原始状态表, 再对原始状态表进行等价状态化简, 之后对化简后的原始状态进行编码——最后才能得到110序列检测器的状态表. 

            从一开始的分析给定同步时序逻辑电路功能, 到后来的设计同步N进制计数器, 再到即将设计的110序列检测器, 我们可以发现分析难度是在递增的. 如果能设计出110序列检测器, 那么对于同步时序逻辑电路的学习就进入了一个新的层次.

            虽然设计同步十进制加法计数器难度不大, 但深刻理解该设计用例是十分重要的. 只有把该例子的设计流程捻熟于心, 才能进入同步时序逻辑电路设计下一阶段的学习.

     

    展开全文
  • 同步十进制加法计数器(JK)

    千次阅读 2019-10-28 10:56:17
  • Verilog设计十进制加法器(FPGA)

    万次阅读 2018-04-25 17:51:12
    本文提供了一个同步清零、同步置数的十进制加法计数器代码和一个异步清零、异步置数的可逆十进制计数器代码,且使用ISE13.4综合通过并在Basys2开发板上成功验证功能,此外大家可以修改代码以调节周期。同步清零、...

    本文提供了一个同步清零、同步置数的十进制加法计数器代码和一个异步清零、异步置数的可逆十进制计数器代码,且使用ISE13.4综合通过并在Basys2开发板上成功验证功能,此外大家可以修改代码以调节周期。

    同步清零、同步置数的十进制加法计数器代码:

    module add_1(
       input clk,//50MHz,20ns
    	input sw0,//清零
    	input sw1,//置数
    	input [3:0] data,
    	output reg [3:0] led
        );
    
      reg [25:0] mclk;
      reg q;//1Hz时钟
      
      initial mclk=26'b0;
      initial q=0;
      
      always@(posedge clk)
      begin
        if(mclk==25000000)
    	   begin
    		mclk<=0;
    		q=!q;
    		end
    	 else
    	   begin
    		mclk<=mclk+1;
    		end
       end
    	
    	always@(posedge q)
    	begin
    	if(sw0==1)
    	  begin
    	  led<=0;
    	  end
    	else if(sw1==1)
    	  begin
    	  led<=data;
    	  end
    	else if(led>=9)
    	  begin
    	  led<=0;
    	  end
    	else
    	  begin
    	  led<=led+1;
    	  end
    	end	
    endmodule

    约束条件:

    NET"clk"LOC=B8;
    NET"sw0"LOC=N3;
    NET"sw1"LOC=E2;
    NET"data[0]"LOC=P11;
    NET"data[1]"LOC=L3;
    NET"data[2]"LOC=K3;
    NET"data[3]"LOC=B4;
    NET"led[0]"LOC=M5;
    NET"led[1]"LOC=M11;
    NET"led[2]"LOC=P7;
    NET"led[3]"LOC=P6;
    异步清零、异步置数的可逆十进制计数器代码下载地址: https://download.csdn.net/download/weixin_39603637/10374030


    展开全文
  • 同步10进制加法计数器实验电路multisim源文件,multisim10及以上版本可以正常打开仿真,是教材上的电路,可以直接仿真,方便大家学习。
  • 4位同步进制加法计数器74LS161实验电路multisim源文件,multisim10及以上版本可以正常打开仿真,是教材上的电路,可以直接仿真,方便大家学习。
  • 从之前的博客中大家应该会感觉到, 在使用触发器设计时序逻辑电路的基本功大致达标后, 我一直在用中规模集成电路芯片来进行时序逻辑电路的设计, 如同步十进制加法计数器74160、同步十六进制加法计数器74163等....
  • 进制加法器

    千次阅读 2019-03-17 16:59:52
    上一节我们学习了ALU的加法实现功能部件——全加器,进行两个4bit的二进制数相加,就要用到4个全加器(如图1所示)。那么在进行加法运算时,首先准备好的是1号全加器的3个input。而2、3、4号全加器...
  • 同步进制加法计数器(JK)

    千次阅读 2019-10-28 11:02:56
  •  4位同步进制加法计数器的工作原理是指当时钟信号clk的上升沿到来时,且复位信号clr低电平有效时,就把计数器的状态清0。  在clr复位信号无效(即此时高电平有效)的前提下,当clk的上升沿到来时,如果计数器...
  • 学会十进制加法计数器设计,为复杂时序逻辑电路的设计打基础。 实验预习: 掌握十进制加法计数器的设计原理; 同步、异步电路的实现; if语句的用法。 实验讲解1: D触发器和锁存的VerilogHDL描述: module...
  • vhdl实验二(异步触发十进制加法计数器),有源程序,仿真图,eda2000连接图。
  • 目录 一、状态表 二、卡诺图 三、方程 四、状态图 五、仿真设计图 可能存在错误的细节(*——*)。 一、状态表 二、卡诺图 三、方程 四、状态图 五、仿真设计图
  • library ieee; use ieee.std_logic_1164.all; entity adderT is port(clr : in std_logic; clk : in std_logic; cnt : buffer integer range 9 downto 0); end adderT; architecture behavior of ... if clr =
  • 异步清除是指复位信号有效时,直接将计数器的状态清零。在本设计中,复位信号为clr,低电平有效;时钟信号时clk,上升沿是有效边沿。在clr清除信号无效的的前提下,当clk的上升沿到来时,如果计数器原态是9(“1001...
  • 1.代码 module cnt10_2bit(clk,rst,en,out0,out1,data); input clk,en,rst; output [3:0] out0; output [3:0] out1;...//位 wire [7:0] data; always @(posedge clk or negedge rst) if(!rst) begin
  • VHDL---基于状态机的十进制加法计数器

    千次阅读 多人点赞 2018-04-28 16:55:36
    代码工程由四部分构成:顶层文件、数码管显示元件、分频元件、基于状态机的加法计数器。 顶层文件: --数码管显示 --通过拨码开关控制CLK,EN,LOAD; --通过独立按键控制RST. --v1.0 使用拨码开关产生...
  • 基于verilog HDL编写的分别显示个位和位的十二进制加法计数器,压缩包里有vwf时序波形和最简单的testbench测试代码
  • (1)、设计一个具有同步清零和并行输出功能的10进制加法计数器,实体名称为“counter10”,其引脚名称和逻辑功能如下表所示。 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; ...
  • 4) 不同芯片也可实现六十进制。 1.2 计数器设计组成 1) 用两个 74ls192芯片和一个与非门实现。 2) 当定时器递增到 59 时,定时器会自动返回到 00 显示,然 后继续计时。 3) 两个芯片间的级联 实验设备与器件...
  • 同步时钟同步清零的六十进制可逆计数器 VHDL 可编程器件
  • 这是一个由VHDL语言实现的60进制加法计数器的实例代码。
  • 60进制加计数 VHDL QuartusII仿真 可自由更改进制
  • 在10.28日的博客中讲述了如何设计异步十进制加法计数器, 这里我们再以异步十六进制加法计数器的设计, 加深对异步时序逻辑电路设计思路的理解. 设计方案1: 第一步, 和同步时序逻辑电路的设计套路一样, 列十六进制...
  • 原文:...本文件包含三个实体:分别是计数器counter4,译码decoder,以及一个顶层实体HIERARCHIC,顶层文件里实现了计数器和译码的结合。)源程序:LIBRARY IEEE; USE IE...
  • 同步集成电路计数器 || 74161 74163 74160 || 同步级联 异步级联 ||...1. 4位同步进制计数器7416174161的功能有4个:异步清零同步置数保持同步计数其逻辑图和功能表如下图所示,(CLR非)是异步清零端(LD非)是同步置...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,463
精华内容 1,785
关键字:

同步十进制加法器