习题:
采用触发器(D or J-K)构建10分频器,完成对输入时钟10分频的功能。
要求:1、思路2、逻辑表达式
3、模型图和输出波型4、分析和总结
一、思路
构建十分频器,就是说要使得输出的波形的周期为CLOCK周期的十倍。
可以首先构建一个五进制的计数器,然后再在计数器后面添加一个T触发器,使得每有一个进位会让输出波形翻转一次。也就是五个周期翻转一次。最后达到一个周期有十个脉冲。
首先构建的是五进制的计数器:
Q2
Q1
Q0
Y
0
0
0
0
0
0
1
0
0
1
0
0
0
1
1
0
1
0
0
1
二、逻辑表达式
画出卡诺图
Q1Q0
00
01
11
10
Q2
0
001/0
010/0
100/0
011/0
1
000/1
可以有
Q2*
Q1Q0
00
01
11
10
Q2
0
0
0
1
0
1
0
X
X
X
Q1*
Q1Q0
00
01
11
10
Q2
0
0
1
0
1
1
0
X
X
X
Q0*
Q1Q0
00
01
11
10
Q2
0
1
0
0
1
1
0
X
X
X
C(进位)
Q1Q0
00
01
11
10
Q2
0
0
0
0
0
1
1
X
X
X
化简可以得到
Q2*=Q1Q0
Q1*=Q1’Q0+Q1Q0’
Q0*=Q2’Q0’
C=Q2
这里考虑使用D触发器
三、模型图
波形图
四、分析总结
使用D触发器做到了一个十分频分频器。也可以使用JK触发器进行设计。
使用JK触发器只需要将逻辑公式进行稍微的改动
Q2*=Q1Q0Q2+Q1Q0Q2’ (J=Q1Q1,K=(Q1Q2)’)
Q1*=Q1’Q0+Q1Q0’ (J=Q1,K=Q1)
Q0*=Q2’Q0’+0*Q0 (J=Q2,K=1)
C=Q2
逻辑图如下
这里多了一个数据类型转换模块,是因为如果没有这个模块JK触发器会有数据类型错误。(使用D触发器就没有这个问题)
不过,最后输出的仍然是一个错误的结果,并未找到其中的原因。
展开阅读全文