同步时序电路的设计步骤同步时序电路的设计步骤同步时序电路的分析是根据给定的时序逻辑电路,求出能反映该电路功能的状态图。状态图清楚地表明了电路在不同的输入、输出原状态时,在时钟作用下次态状态的变化情况。同步时序电路的设计的设计是分析的反过程,其是根据给定的状态图或通过对设计要求的分析得到的状态图,设计出同步时序电路的过程。这里主要讨论给定状态图的情况下的同步时序电路的设计,对于具体的要求得到状态图的过程一般是一个较复杂的问题,这是暂不讲。根据已知状态图设计同步时序电路的过程一般分为以下几步:1.确定触发器的个数。首先根据状态的个数来确定所需要触发器的个数,如给定的状态个数为n,由应满足n≤2K,K为实现这来状态所需要的触发器的个数。(实际使用时可能给定的状态中存在冗余项,这时一般还须对状态进行化简。)2.列出状态转移真值表。根据状态列出状态转移真值表,也称状态表、状态转移表。3.触发器选型。选择合适的触发器,通常可选的触发器有:JK-FF,D-FF,T-FF,一般使用较广的为JK-FF。根据状态图和给出的触发器的型号写出其输入方程,通常在写输入方程时须对其进行化简,以使电路更简单。4.求出输出方程。根据状态表,求出输出逻辑函数Z的输出方程,还过有些电路没有独立的输出,这一步就省了。5.画出逻辑图。根据输入方程、输出方程画出逻辑电路图。6.讨论设计的电路能否自启动。在设计的电路中可能出现一些无关的状态,这些状态能否经过若干个时钟脉冲后进行有效的状态。同步时序电路设计举例例按下图状态图设计同步时序电路。1.根据状态数确定触发器的数目:由状态图可以看出,其每个状态由两个状态,故可用两个触发器。其变量可用Q1,Q0表示;2.根据状态图列出状态表:状态表的自变量为输入变量x和触发器当前状态Q1n,Q0n,而应变量为触发器的次态Q1n+1Q0n+1、及输出z,列表时将自变量的所有组合全部列出来,其中当Q1nQ0n=01的状态为不出现,其输出可看作任意项处理。xQ1nQ0nQ1n+1Q0n+1z000000001ddd010100011110100100111ddd1101101110013.选择触发器并确定各触发器的输入方程:以Q1n+1、Q0n+1、z分别为应变量,可根据上面状态表画出如下的卡诺图:根据上面的卡诺图可写出各触发器的次态方程为:Q1n+1=x/Q1n+(/x+/Q0n)Q1nQ0n+1=xQ1n/Q0n+/xQ0n假设在这里选择JK触发器,则根据上式与JK触发器的特征方程进行比较可得其输入方程为:J0=xQ1nK0=xJ1=xK1=xQ1n4.求输出函数:由上图的卡诺图可写出输出函数为:z=xQ0n在上面的卡诺图的化简中,其结果不是唯一的,其也可以有其它的化简结果,其化简的原则是其使用的门尽可能少、连线最少等。5.画出逻辑图。6.检查该电路是否可以自启动。在该设计中状态01没有出现,现在须验证状态01能否进入有效的循环,将x为0和1及状态10分别带代入上面电路可得到下图的状态转移图,从图上可能看出其可以实现自启动,故设计是可行的。同步时序电路自启动设计方法在上面的设计过程中我们是在最后一步对电路的自启动与否进行判断,如果不能自启动就重新进行设计,这是比较痛苦的事件,如果一开始进行设计时能知道你设计的电路能否自启动,到最后也就没有必要再进行判断是否能自启动了,那么是不是可以解决这个办法?答案是肯定的。下面通过例子加以说明其解决的办法:例设计一个按顺序000→001→010→100→101→111→000循环的自启动同步时序电路。从题目上可以看出该时序电路有三个触发器,其共有8个状态,即:000,001,010,011,100,101,110,111,而现在使用了:000,001,010,100,101,111共六个状态,故011,110为无效,如果这两个状态的次态落在上面的有效状态上,那么该时序电路就可能自启动,解决的办法只须一开始就选定这两个状态的次状态,而不是将这两个状态作为任意状态进行处理,并且这两个状态的次状态必须是有效状态中的一个,这样一来就可以解决了。具体设计步骤如下:1.确定触发器的个数:从上面的状态可以看出其有3个变量,故只须三个触发器即可。2.根据状态图写出状态表:在这个例子中没有输入、输出,其是一个典型的摩尔型时序电路,其状态表如下:Q2nQ1nQ0nQ2n+1Q1n+1Q0n+10000010010100101000111001001011011111101111110003.根据状态表写出输入方程:由状态表列出以次态为应变量的卡诺图经过化简后就得到次态方程:(在JK触发器来实现时序电路时,画卡诺圈时应注意在每一项中包含对应输出的原态,即Q2n+1中包含Q2n项,其可以是原变量或反变量的形式)Q2n+1=/Q2nQ1n+(/Q1n+/Q0n)Q2nQ1n+1=/Q1nQ0n+Q1nQ2n/Q0nQ0n+1=(/Q1n+Q2n)/Q0n+Q2n/Q1nQ0n假设使用JK触发器,根据JK触发器的特征方程Qn+1=J/Qn+/KQn可得到各触发器输入方程:J2=Q1nK2=Q1nQ0nJ1=Q0nK1=/(Q2n/Q0n)J0=/Q1n+Q2nK0=/(Q2n/Q1n)4.根据上面的输入方程画出逻辑图:根据输入方程您可以很方便画出逻辑电路图,请您自行画出。进一步研究通过上面自启动的设计你可以解决了自启动问题,但是其电路不是最简的电路,如果须得到最简的电路,只须在绘制卡诺图时重新调整任意项的取值,使其在有效状态中或经过几个无效状态后进入有效状态,这样得到的电路将是最简的电路,如上面设计中将:110的次态选在000,101的次态选在100将可得到最简的电路。回主页下一页上一页