Chinaunix首页 | 论坛 | 博客
  • 博客访问: 594734
  • 博文数量: 61
  • 博客积分: 4112
  • 博客等级: 上校
  • 技术积分: 749
  • 用 户 组: 普通用户
  • 注册时间: 2006-06-27 16:20
文章分类

全部博文(61)

文章存档

2016年(1)

2013年(1)

2012年(2)

2010年(1)

2008年(2)

2007年(25)

2006年(29)

分类:

2007-01-04 00:45:22

    明晚就要考数字逻辑了,不对,应该是今天晚上了,在这贴一道同步时序逻辑电路设计题,顺便也屡屡思路,然后睡觉。
 
题目:
用JK触发器设计一个111序列检测器,即检测到输入为111时输出为1,否则为0
 
步骤:
(一)建立状态图与状态表:
 
电路特点:具有一个串行输入端X,一个检测结果端Z。
分析:    因为检测的是111,所以需要纪录的输入有1,11,111还有一个初态共四个状态。
         设初态为S0,收到1为S1,收到11为S2,收到111为S3
 
                                 原始状态图
                                                      
(注:红色的圈表示假设的几个状态,线上的形式为X/Y,即:输入/输出(例,1/0表示输入为1,输出为0))
 
                                 原始状态表
                
                        (注:S0/0表示,次态为S0,输出为0)
 
(二)化简状态图和状态表
 
               
 
                
经化简后变成了只需要记忆3个状态,这样就可以减少一个JK触发器,需要2个JK触发器就够了,而不是3个。
 
(三)编码
 
因为是3个状态,所以用二位二进制编码表示就可以了,即两个JK触发器。
S0=00,S1=01,S2=11
(因为需要相邻的编码之间只能有一位不同,所以S2=11,而不是S2=10)
 
(四)做激励表
 
输入  现态     次态              Q1     Q2      输出
 X  Q1 Q0  Q1n+1 Q0n+1  J1 K1 J0 K0
 0  0  0  0     0  0  X  0  X  0
 0  0  1  0     0  0  X  X  1  0
 0  -  -  -     -  X  X  X  X  X
 0  1  1  0     0  X  1  X  1  0
 1  0  0  0     1  0  X  1  X  0
 1  0  1  1     1  1  X  X  0  0
 1  -  -  -     -  X  X  X  X  X
 1  1  1  1     1  X  0  X  0  1
 
 
(五)写输出方程和控制方程
 
对结果分别画出卡诺图并化简得:
Z = X Q1
J1= X Q0
K1= X(反)
J0= X
K0= X(反)
 
(六)逻辑图
 
 
(七)检测
 
检测如果电路进入无效状态10时,应检查电路能否进入正常状态,并且输出Z=0。
 
可以根据上面的控制方程得到两个触发器的状态方程。
得:当X=0时,触发器由10转成00  输出结果为0
    当X=1时,触发器由10装成11  输出结果为1 (产生错误)
 
所以得到输出方程化简错误,重新将去掉多余的无关态,得新的输出方程:
Z=X Q1 Q0
 
根据方程得到新的逻辑图
(红色部分为改进的部分)
 
 
 
PS:
   写完Blog心情总会好一些,但愿今天能早点睡着,不要做梦。
 
 
阅读(6767) | 评论(3) | 转发(0) |
给主人留下些什么吧!~~

loveanna72008-11-03 22:44:30

vb SF

chinaunix网友2008-06-13 10:25:49

ss