二、采用小规模集成器件设计同步计数器
前面我们的例题,就是采用小规模器件进行设计的。
下面我们再举两个例题,进一步熟悉这种设计方法。
例 7-10 设计二 — 十进制同步计数器(十进制值按
5121码规律设计)
解,
( 1)建立原始状态图和原始状态表
( 2)状态化简
与前面的例子相比,本例要简单了许多。因为是要
设计十进制计数器,因此必须有十个状态,不能省去任
何一个。此步可免!
( 3)状态分配
由于题目要求使用 5121— BCD码,所以每个状态的
编码就相对固定了,以数值来确定:
S0=0000 S1=0001 S2=0010 S3=0011 S4=0111
S5=1000 S6=1001 S7=1010 S8=1011 S9=1111
由状态转移表作出卡诺图
Z=Q4Q3
( 4)检验是否具
有自启动特性
为检验自启动
特性,写出该电路
的状态转移方程,
将没有使用的另六
个状态代入,求出
下一状态。
( 5)画出电路图(以 J-K触发器为例)
例 7-11 设计一个模 6计数器
解, 模 6计数器,是指有六个有效状态周期循环的电路。
每循环一次应有一个标志输出。
( 1)建立状态转移图表
( 2)状态简化(免)
( 3)状态编码
考虑前后状态的相邻特性,令:
S0=000 S1=001 S2=011
S3=111 S4=110 S5=100
( 4)状态转移表和转移特性表
多余的两个状态先作为任意处理。
( 5)画出卡诺图
( 6)检验是否具有自启动特性
将两个偏离状态
代入状态方程,发现
偏离状态形成死循环。
因此不具有自启动特
性。
我们要打破偏离
状态的死循环,只需
使其中一个状态转向
主循环的某一状态。 本例我们让 101 011 相应的
转移状态位 W3=? W2=? W1=1。 修改卡诺图中的
相应方格(此前是作为任意值处理的),重新写触发器
的驱动方程。再次检验自启动特性,知道满意为止。
重新化简,求得:
例 7-12 设计一个可变模值的同步计数器,由 M来控
制,M=0时按模 7计数,M=0时按模 5计数 (自学)
本例题增加了一个输入 M,以此作为计数进制的切换。实
际上,将这个题作为两道题模 7、模 5同步计数器没有问题。
合并在一起后,只是把两者的状态转移表、转移特性表拼
凑在一块,卡诺图合并,以后的设计过程是一样的。
三、采用小规模集成器件设计异步计数器
异步计数器的设计过程与同步计数器基本相同。但由
于每个触发器的时钟信号是不同的,因此设计的重点是为
每个触发器确定有效的时钟信号。
通常状态转移的次序是给定的,由此就可以知道各触
发器的转移特性,利用某些触发器的输出沿,可以作为其
它触发器的时钟信号。
下面通过一个例题说明异步计数器的设计过程
例 7-13 设计一个 8421BCD二 — 十进制异步计数器。
使用下降沿触发的触发器。
解:
( 1)确定原始状态和状态转移图表
由于指定设计 8421BCD十进制计数器,所以应该有
10个状态,而且每个状态的编码也无须斟酌,必须符合
8421位权值。
因此本例在状态确定和状态编码方面可以很容易地
确定了。我们取自然二进制的前 10个状态即可。
(2)由状态转移表,为各触发器确定时钟
选择触发器时钟的原则:
第一,在该触发器应该翻转的时候,必须有触发沿到达!
( 该来就要来 )
第二,在满足第一原则的条件下,时钟输入端的触发沿
越少越好。( 不需要时,最好别来 )
根据上述原则,我们开始为每个触发器选时钟:
第一级 Q1,来回翻转,没有停歇,只有时钟信号 CP
能够保证足够触发沿。 CP1=CP
第二级 Q2,有四次翻转,CP信号和 Q1都可以给出所
需的下降沿,根据第二条原则,我们采用 CP2=Q1。
第三级 Q3,有两次翻转,CP,Q1,Q2都能满足,
根据第二原则,我们采用 CP3=Q2。
第四级 Q4,有三次翻转,CP和 Q1可以提供所需的下
降沿,( Q2,Q3在 9 0时不能提供沿),因此 CP4=Q1。
( 3)确定转移特性
各触发器时钟确定后,我们可以对转移特性加以修改。
( 4)作出卡诺图,选择触发器,实现该电路
( 5)检验是否具有自启动特性
由上一步的 J,K驱动方程,写出状态转移方程,将
其它六个偏离状态代入,观察自启动特性。
注意是异步时序
次态的确定
要查看
所有时钟
( 6)画逻辑电路图