數(shù)字邏輯:第7章 時(shí)序邏輯設(shè)計(jì)原理2_第1頁(yè)
數(shù)字邏輯:第7章 時(shí)序邏輯設(shè)計(jì)原理2_第2頁(yè)
數(shù)字邏輯:第7章 時(shí)序邏輯設(shè)計(jì)原理2_第3頁(yè)
數(shù)字邏輯:第7章 時(shí)序邏輯設(shè)計(jì)原理2_第4頁(yè)
數(shù)字邏輯:第7章 時(shí)序邏輯設(shè)計(jì)原理2_第5頁(yè)
已閱讀5頁(yè),還剩71頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

7.5用狀態(tài)圖設(shè)計(jì)狀態(tài)機(jī)在數(shù)字系統(tǒng)設(shè)計(jì)中,把規(guī)模較大的系統(tǒng)從邏輯上劃分為控制電路和運(yùn)算電路兩大部分,運(yùn)算電路實(shí)現(xiàn)對(duì)信號(hào)進(jìn)行運(yùn)算和傳遞,而控制電路則是保證運(yùn)算電路的數(shù)據(jù)處理按規(guī)定的微操作序列進(jìn)行運(yùn)算電路任務(wù):接受控制單元發(fā)出控制信號(hào),完成信息的加工和存儲(chǔ),并檢驗(yàn)信息間的函數(shù)關(guān)系,產(chǎn)生狀態(tài)變量控制電路核心是時(shí)序電路,本質(zhì)是一個(gè)狀態(tài)發(fā)生器基本功能:對(duì)指令流和數(shù)據(jù)流實(shí)施時(shí)間上和空間上的正確控制狀態(tài)發(fā)生器的主要兩個(gè)功能是:寄存控制單元的現(xiàn)態(tài)和生成次態(tài)。若采用觸發(fā)器作為寄存器狀態(tài)的元件,就可以用觸發(fā)器的狀態(tài)組合來表示控制單元的狀態(tài)1/3/202317.5用狀態(tài)圖設(shè)計(jì)狀態(tài)機(jī)(續(xù))一個(gè)電路的輸入端可能有很多轉(zhuǎn)移表達(dá)式,其值為1時(shí),會(huì)發(fā)生相應(yīng)轉(zhuǎn)移互斥性:對(duì)應(yīng)某種輸入,只有一個(gè)次態(tài)完備性:對(duì)應(yīng)某種輸入,總有一個(gè)次態(tài)1/3/20232000111110101100A’A’A’A’A’B’A’BAAAABAB’A7.5用狀態(tài)圖設(shè)計(jì)狀態(tài)機(jī)(續(xù))例:設(shè)計(jì)一個(gè)時(shí)鐘同步狀態(tài)機(jī)來控制雷鳥車尾燈?如何采用轉(zhuǎn)移表達(dá)式畫狀態(tài)圖1/3/202337.5用狀態(tài)圖設(shè)計(jì)狀態(tài)機(jī)(續(xù))

雷鳥車尾每邊有3個(gè)燈,這些燈輪流順序亮起,以表示車子的轉(zhuǎn)向;狀態(tài)機(jī)有2個(gè)輸入信號(hào)(LEFT和RIGHT),它們分別表示駕駛員左轉(zhuǎn)和右轉(zhuǎn)的要求。另外還有1個(gè)應(yīng)急閃爍輸入(HAZ),它要求車尾燈工作在告警狀態(tài),即所有6個(gè)燈輪流協(xié)調(diào)地閃爍。還假設(shè)有一個(gè)單獨(dú)運(yùn)行時(shí)鐘信號(hào),該信號(hào)的頻率等于這些燈所要求的閃爍頻率。1/3/202347.5用狀態(tài)圖設(shè)計(jì)狀態(tài)機(jī)(續(xù))輸入:LEFT,RIGHT,HAZ,(時(shí)鐘)輸出:LC,LB,LA,RA,RB,RC共有8個(gè)狀態(tài),其中IDLE為空閑狀態(tài)(沒有燈發(fā)光);L1表示左轉(zhuǎn)時(shí),1個(gè)燈亮;LR3告警狀態(tài)1/3/20235問題2:在IDLE狀態(tài)時(shí),如果LEFT和HAZ同時(shí)有效會(huì)怎么樣?7.5用狀態(tài)圖設(shè)計(jì)狀態(tài)機(jī)(續(xù))輸出的數(shù)目太多,單獨(dú)列出一個(gè)輸出表而不是把輸出值直接寫在狀態(tài)圖中每一個(gè)輸出變量表示為使其值為1的輸入變量之和問題1:可以用L1、L2等直接做輸出?即:在IDLE狀態(tài)時(shí),次態(tài)是往L1還是LR3,存在二異性1/3/20236狀態(tài)圖必須沒有二義性,即離開每一個(gè)狀態(tài)的弧線上所標(biāo)出的轉(zhuǎn)移表達(dá)式都是互斥的,并且是完備的。7.5用狀態(tài)圖設(shè)計(jì)狀態(tài)機(jī)(續(xù))互斥性:在離開每一狀態(tài)的弧線上所標(biāo)的任意一對(duì)轉(zhuǎn)移表達(dá)式的邏輯積等于0。完備性:在離開每一狀態(tài)的弧線上所標(biāo)的所有轉(zhuǎn)移表達(dá)式的邏輯和等于1。右圖無二義性圖7-63雷鳥車尾燈的正確狀態(tài)圖如何判斷無二異性?1/3/20237完備性:在離開每一狀態(tài)的弧線上所標(biāo)的所有轉(zhuǎn)移表達(dá)式的邏輯和等于1?;コ庑则?yàn)證:令狀態(tài)LEFT為狀態(tài)A,RIGHT:B,HAZ:C互斥性:在離開每一狀態(tài)的弧線上所標(biāo)的任意一對(duì)轉(zhuǎn)移表達(dá)式的邏輯積等于0。對(duì)狀態(tài)IDLE而言:(LEFT·HAZ’·RIGHT’)·(LEFT+RIGHT+HAZ)’=(A·C’·B’)·(A+B+C)’=AB’C’·A’B’C’=0對(duì)狀態(tài)IDLE而言:(A·C’·B’)+(A+B+C)’+B·C’·A’+(C+A·B)=AB’C’+A’B’C’+A’BC’+AB+C=1(卡諾圖中所有方塊內(nèi)全為1)完備性驗(yàn)證:7.5用狀態(tài)圖設(shè)計(jì)狀態(tài)機(jī)(續(xù))1/3/20238

有沒有更好的改進(jìn)?一旦左轉(zhuǎn)循環(huán)或者右轉(zhuǎn)循環(huán)開始了,即使HAZ有效的話,這個(gè)循環(huán)也可以進(jìn)行到最后,(一旦出故障,可以立即進(jìn)入告警模式嗎?)

問題37.5用狀態(tài)圖設(shè)計(jì)狀態(tài)機(jī)(續(xù))1/3/202397.5用狀態(tài)圖設(shè)計(jì)狀態(tài)機(jī)(續(xù))初態(tài):000;左轉(zhuǎn):Q2=0,Q1Q0用葛萊碼;右轉(zhuǎn):Q2=1,Q1Q0用葛萊碼;全亮:100。一個(gè)更好的改進(jìn)對(duì)駕駛員來說,一有可能就進(jìn)入告警模式會(huì)更安全些1/3/2023107.5用狀態(tài)圖設(shè)計(jì)狀態(tài)機(jī)(續(xù))1/3/202311Q2Q1Q0 000 001 010 011 100 101 110 111000 000 100 101 100 001 101 100 100001…………111 110 100 110 100 110 100 110 100LEFTRIGHTHAZQ2*Q1*Q0*表7-8,7-17均無二異性表7-8次態(tài)是輸入和現(xiàn)態(tài)的函數(shù)表7-17次態(tài)是輸入(轉(zhuǎn)移表達(dá)式,輸入的變形形式)和現(xiàn)態(tài)的函數(shù)雷鳥車尾燈轉(zhuǎn)移表7.5用狀態(tài)圖設(shè)計(jì)狀態(tài)機(jī)(續(xù))1/3/202312LCLBLARARBRC0000000000000000000000001111111111111111111111117.5用狀態(tài)圖設(shè)計(jì)狀態(tài)機(jī)(續(xù))雷鳥車尾燈狀態(tài)、輸出表1/3/2023137.6用轉(zhuǎn)移表綜合狀態(tài)機(jī)

轉(zhuǎn)移方程轉(zhuǎn)移方程是根據(jù)前面狀態(tài)和輸入來定義每個(gè)下一狀態(tài)變量V*下一狀態(tài)變量V*的轉(zhuǎn)移方程可以寫成為一種混合求和范式:即:轉(zhuǎn)移方程中對(duì)應(yīng)于V*列中值為1的每一行,都有一個(gè)轉(zhuǎn)移p項(xiàng)一個(gè)轉(zhuǎn)移p項(xiàng)就是該行當(dāng)前狀態(tài)的最小項(xiàng)與轉(zhuǎn)移表達(dá)式的乘積。轉(zhuǎn)移列表可以看成是一種混合的真值表1/3/2023147.6用轉(zhuǎn)移表綜合狀態(tài)機(jī)(續(xù))激勵(lì)方程使用D觸發(fā)器時(shí),若Qi*=表達(dá)式,則Di=表達(dá)式使用其它觸發(fā)器時(shí),要建立激勵(lì)產(chǎn)生表,如p418。1/3/2023157.6用轉(zhuǎn)移表綜合狀態(tài)機(jī)(續(xù))

其他方法由轉(zhuǎn)移列表獲得轉(zhuǎn)移方程和激勵(lì)方程,如果在某個(gè)下一狀態(tài)變量的列中,0的個(gè)數(shù)比1的個(gè)數(shù)要少得多,就可以利用這一特性先寫出該狀態(tài)變量列的關(guān)于0元素的轉(zhuǎn)移方程。即:Q2*的方程,只需要對(duì)上式兩邊求補(bǔ)即可Q2*=(Q2+Q1+Q0+HAZ+RIGHT)(Q2+Q0’+HAZ)(Q1’+Q0)(Q2’+Q0)1/3/2023167.6用轉(zhuǎn)移表綜合狀態(tài)機(jī)(續(xù))利用轉(zhuǎn)移列表中的0值而直接得到下一狀態(tài)變量V*的表達(dá)式:Q2*=(Q2+Q1+Q0+(LEFT+HAZ+RIGHT)’)·(Q2+Q1+Q0+LEFT·HAZ’·RIGHT’)·(Q2+Q1+Q0’+HAZ’)·(Q2+Q1’+Q0’+HAZ’)·(Q2+Q1’+Q0)·(Q2’+Q1’+Q0)·(Q2’+Q1+Q0)某一行的轉(zhuǎn)移s項(xiàng)即是該行當(dāng)前狀態(tài)的最大項(xiàng)與該行轉(zhuǎn)移表達(dá)式之和。轉(zhuǎn)移方程將V*表示成“或-與”式。1/3/2023177.7其他狀態(tài)機(jī)設(shè)計(jì)舉例設(shè)計(jì)一個(gè)時(shí)鐘同步狀態(tài)機(jī)(“猜謎游戲”機(jī)),它有4個(gè)按鈕輸入G1~G4和4個(gè)燈輸出L1~L4,按鈕和燈都有一個(gè)編號(hào)。另外,還有一個(gè)ERR信號(hào)輸出與一個(gè)紅燈相連。4個(gè)燈在時(shí)鐘控制下,輪流地被點(diǎn)亮,時(shí)鐘頻率為4Hz。按下一個(gè)按鈕,就有一個(gè)輸入Gi為有效。如果在時(shí)鐘觸發(fā)沿所測(cè)得Gi與時(shí)鐘觸發(fā)沿到來前就有效的燈輸出不相同的話,ERR信息有效,紅燈被點(diǎn)亮。一旦完成了一次猜測(cè),游戲就停止并且ERR輸出會(huì)維持1個(gè)或多個(gè)時(shí)鐘周期,直到輸入Gi被取消,游戲又恢復(fù)進(jìn)行。1/3/2023187.7其他狀態(tài)機(jī)設(shè)計(jì)舉例(續(xù))?問題:在STOP狀態(tài)時(shí)無法記住“猜測(cè)”的結(jié)果是否正確1/3/2023197.7其他狀態(tài)機(jī)設(shè)計(jì)舉例(續(xù))當(dāng)使用者想要通過同時(shí)按下2個(gè)或者多個(gè)按鈕,或者通過在停止?fàn)顟B(tài)時(shí)改變他的猜測(cè)方式來愚弄機(jī)器的話,就要求機(jī)器進(jìn)入SERR狀態(tài)。解決辦法:設(shè)置兩個(gè)停止?fàn)顟B(tài)如何使游戲更具挑戰(zhàn)性?1/3/2023207.7其他狀態(tài)機(jī)設(shè)計(jì)舉例(續(xù))1/3/202321輸出方程7.7其他狀態(tài)機(jī)設(shè)計(jì)舉例(續(xù))轉(zhuǎn)移方程1/3/2023227.7其他狀態(tài)機(jī)設(shè)計(jì)舉例(續(xù))猜謎游戲的狀態(tài)圖有6個(gè)狀態(tài),而實(shí)際的狀態(tài)機(jī)是由3個(gè)觸發(fā)器所構(gòu)成,具有8個(gè)狀態(tài)。將未用狀態(tài)從轉(zhuǎn)移列表中刪除,從十分有限的意義上來說,是把它們當(dāng)成為“無關(guān)狀態(tài)”:猜謎游戲狀態(tài)機(jī)中對(duì)于所有的輸入取值組合,未用狀態(tài)的下一狀態(tài)編碼都會(huì)是100當(dāng)機(jī)器陷入未用狀態(tài)時(shí)安全的、可以接受的特性,因?yàn)?00是正常狀態(tài)(SOK)的編碼。

未用狀態(tài)1/3/2023237.7其他狀態(tài)機(jī)設(shè)計(jì)舉例(續(xù))輸出編碼狀態(tài)賦值∵機(jī)器的輸出只是狀態(tài)的函數(shù)∴用輸出作為狀態(tài)變量,而且給每一個(gè)已命名的狀態(tài)賦予所要求的組合與優(yōu)先編碼器比較1/3/202324輸出編碼狀態(tài)賦值得到的激勵(lì)方程,有時(shí)會(huì)比采用最小狀態(tài)變量法進(jìn)行狀態(tài)賦值所得到的激勵(lì)和輸出方程要簡(jiǎn)單。在表7-18的轉(zhuǎn)移列表中,每個(gè)下一狀態(tài)列中的1的個(gè)數(shù)都很少,所以每個(gè)轉(zhuǎn)移/激勵(lì)方程所包含的轉(zhuǎn)移p項(xiàng)也很少:7.7其他狀態(tài)機(jī)設(shè)計(jì)舉例(續(xù))無輸出方程1/3/2023257.7其他狀態(tài)機(jī)設(shè)計(jì)舉例(續(xù))

“無關(guān)”狀態(tài)編碼在表7-19中,5變量的32種編碼狀態(tài)只用了6種,剩余都是未用的且這些未用狀態(tài)的下一狀態(tài)都是00000另一種未用狀態(tài)的處理方法:就是在給當(dāng)前狀態(tài)進(jìn)行編碼狀態(tài)賦值時(shí),通過謹(jǐn)慎地應(yīng)用“無關(guān)”項(xiàng)來實(shí)現(xiàn)的轉(zhuǎn)移方程:每一個(gè)可能的當(dāng)前狀態(tài)變量組合對(duì)應(yīng)于編碼狀態(tài)中的一個(gè)(例如,10111=S1,00101=S3)1/3/2023267.7其他狀態(tài)機(jī)設(shè)計(jì)舉例(續(xù))1/3/2023277.7其他狀態(tài)機(jī)設(shè)計(jì)舉例(續(xù))例:機(jī)器不小心進(jìn)入狀態(tài)01011(S2類中之一),當(dāng)轉(zhuǎn)移表達(dá)式為G1’G2’G3’G4’時(shí),下一狀態(tài)是S3S2全部類S3G1’G2’G3’G4’1/3/2023287.7其他狀態(tài)機(jī)設(shè)計(jì)舉例(續(xù))例:設(shè)計(jì)一個(gè)序列檢測(cè)器,用來檢測(cè)串行二進(jìn)制序列,每當(dāng)連續(xù)輸入三個(gè)(或三個(gè)以上)1時(shí),序列檢測(cè)器的輸出為1,其他情況下輸出為0。解第一步做原始狀態(tài)圖和狀態(tài)表典型輸入、輸出序列如下:輸入X0111011110輸出Z0001000110設(shè)電路的初始狀態(tài)為AX輸入第一個(gè)1時(shí) 檢測(cè)器的狀態(tài)為

BX輸入11CX輸入111D1/3/202329ABCD001/10/01/01/01/10/0狀態(tài)S輸入X/輸出Z0/0次態(tài)/輸出ABCD現(xiàn)態(tài)

X=0X=1A/0A/0A/0A/0B/0C/0D/1D/1原始狀態(tài)圖第二步狀態(tài)化簡(jiǎn)次態(tài)/輸出ABC現(xiàn)態(tài)

X=0X=1A/0A/0A/0B/0C/0D/1已化簡(jiǎn)的轉(zhuǎn)移/輸出表原始狀態(tài)表7.7其他狀態(tài)機(jī)設(shè)計(jì)舉例(續(xù))1/3/202330第三步狀態(tài)編碼次態(tài)/輸出000111現(xiàn)態(tài)

Q1Q0

X=0X=100/000/000/001/011/011/1確定狀態(tài)A的編碼為00

狀態(tài)B的編碼為01

狀態(tài)C的編碼為11狀態(tài)表第四步選擇觸發(fā)器選擇J-K觸發(fā)器第五步構(gòu)造激勵(lì)表假設(shè)未用狀態(tài)轉(zhuǎn)移到000(最小冒險(xiǎn)法)XQ2Q1Q2*Q1*J2K2J1K1Q2*Q1*J2K2J1K1Z00000d

0d010d1d001000dd1111dd001100d1d111d0d011000d10d00d10d00 1完整的狀態(tài)表、激勵(lì)表與輸出表7.7其他狀態(tài)機(jī)設(shè)計(jì)舉例(續(xù))1/3/202331第七步由激勵(lì)表推導(dǎo)出激勵(lì)方程第八步由狀態(tài)表推導(dǎo)出輸出方程J2=XQ1K2=Q1’J1=XQ2K1=XZ=Q2Q1第九步由激勵(lì)方程和輸出方程畫邏輯電路圖思考:實(shí)現(xiàn)相同的功能,Moore型狀態(tài)機(jī)與Mealy狀態(tài)機(jī)所需的狀態(tài)個(gè)數(shù)一樣嗎?7.7其他狀態(tài)機(jī)設(shè)計(jì)舉例(續(xù))1/3/2023327.8狀態(tài)機(jī)的分解

大型的狀態(tài)機(jī)也很難概念化、設(shè)計(jì)以及調(diào)試。面對(duì)大型狀態(tài)機(jī)的問題時(shí),設(shè)計(jì)者常常要尋找機(jī)會(huì)使用較小的狀態(tài)機(jī)集合來解決問題。

有一個(gè)較為完善的狀態(tài)機(jī)分解理論,可以用來分析任何給定的單片式狀態(tài)機(jī),以確定該狀態(tài)機(jī)是否可以用較小型的狀態(tài)機(jī)的集合來實(shí)現(xiàn)。例:主機(jī)開始啟動(dòng)計(jì)數(shù)器工作,這時(shí)它希望在某個(gè)特定的主狀態(tài)能保持n個(gè)時(shí)鐘觸發(fā)沿;當(dāng)?shù)趎個(gè)時(shí)鐘觸發(fā)沿發(fā)生時(shí),子機(jī)計(jì)數(shù)器使得一個(gè)DONE信號(hào)有效。把主機(jī)設(shè)計(jì)成一直處于等待狀態(tài)直到DONE信號(hào)有效為止。這個(gè)要求使得主機(jī)增加了一個(gè)額外的輸入和一個(gè)額外的輸出(START和DONE),但是卻減少了n-1個(gè)狀態(tài)。1/3/2023337.8狀態(tài)機(jī)的分解(續(xù))要使得游戲更具有挑戰(zhàn)性,可以使時(shí)鐘頻率為原來的2倍或是3倍,并且讓燈保持原來狀態(tài)的時(shí)間為任意長(zhǎng)。這樣游戲者就真正要做出判斷:某一盞燈在某一狀態(tài)上保持的時(shí)間是否足以讓他按下按鈕。1/3/202334EN有效時(shí),才能從S3變到下一狀態(tài)S41/3/202335

一個(gè)有n個(gè)反饋回路的電路,有2n種狀態(tài)。反饋回路是記憶元件,儲(chǔ)存著電路當(dāng)前的狀態(tài)。反饋時(shí)序電路內(nèi)部狀態(tài)的變化直接由輸入變化引起,故用總態(tài)表示電路所處的狀態(tài),它是內(nèi)部狀態(tài)和輸入狀態(tài)的組合。7.9反饋時(shí)序電路各種類型的鎖存器和觸發(fā)器等,都是反饋時(shí)序電路,它們都有一個(gè)或者多個(gè)反饋回路。1/3/2023367.9反饋時(shí)序電路(續(xù))穩(wěn)定的總態(tài)表明由當(dāng)前的內(nèi)部狀態(tài)和輸入狀態(tài)所確定的下一個(gè)內(nèi)部狀態(tài)與當(dāng)前的內(nèi)部狀態(tài)相同。如果下一個(gè)內(nèi)部狀態(tài)與當(dāng)前的內(nèi)部狀態(tài)不同,則當(dāng)前的總態(tài)是一個(gè)不穩(wěn)定的總態(tài)。

對(duì)于反饋時(shí)序電路來說,不允許多個(gè)輸入同時(shí)發(fā)生變化,而且兩次變化之間的時(shí)間不能太短。反饋時(shí)序電路是基本模式電路的一種形式。反饋時(shí)序電路對(duì)輸入的限制條件1/3/202337其輸入一般不允許同時(shí)變化,分析中,假設(shè)每一次只有一個(gè)輸入發(fā)生變化,兩次連續(xù)變化的時(shí)間間隔,足以使電路達(dá)到一個(gè)穩(wěn)定的內(nèi)部狀態(tài)如反饋時(shí)序電路這樣的基本模式電路,沒有用時(shí)鐘來控制電路在何時(shí)采樣輸入值,而是認(rèn)為電路會(huì)不斷地(如果愿意的話,也可以認(rèn)為是每10ns)對(duì)當(dāng)前狀態(tài)和輸入值作出評(píng)判。根據(jù)每一次評(píng)判的結(jié)果,電路會(huì)轉(zhuǎn)入相應(yīng)的下一狀態(tài)基本模式操作的本質(zhì):大多數(shù)情況下下一狀態(tài)和當(dāng)前狀態(tài)相同電路中多個(gè)輸入信號(hào)可以隨意發(fā)生變化而不會(huì)影響電路的狀態(tài),所有的輸入值是被(時(shí)鐘觸發(fā)沿)采樣的,所以引起狀態(tài)變化的時(shí)間取決于時(shí)鐘信號(hào)7.9反饋時(shí)序電路(續(xù))基本模式電路帶時(shí)鐘控制的電路1/3/2023387.9.1分析

D鎖存器的反饋分析通過插入一個(gè)虛構(gòu)的緩沖器就能將回路斷開,緩沖器的輸出定義為Y圖7-73D鎖存器的轉(zhuǎn)移表激勵(lì)方程1/3/2023397.9.1分析(續(xù))每一個(gè)穩(wěn)定的總狀態(tài)都用一個(gè)圓圈圈住D鎖存器轉(zhuǎn)移表狀態(tài)表狀態(tài)和輸出表幾個(gè)轉(zhuǎn)移分析對(duì)任何一個(gè)期望的輸入變化序列所引起的電路行為進(jìn)行跟蹤。1/3/2023407.9.1分析(續(xù))沒有任何事情會(huì)真正地同時(shí)發(fā)生。從電路操作的觀點(diǎn)看,一組n個(gè)輸入看來是“同時(shí)地”變化,實(shí)際上是以n!個(gè)不同順序中的任何1種順序在發(fā)生變化。與“同時(shí)地”的概念密切相關(guān)的時(shí)間間隔,就是D鎖存器的建立和保持時(shí)間窗。若D信號(hào)在建立和保持時(shí)間窗內(nèi)的任何時(shí)刻變化,則觸發(fā)器的輸出就不可預(yù)測(cè),并可能進(jìn)入亞穩(wěn)態(tài)1/3/2023417.9.1分析(續(xù))假設(shè):起始的穩(wěn)定總狀態(tài)為S1/11?,F(xiàn)在假設(shè)C和D同時(shí)變?yōu)?,而實(shí)際上電路表現(xiàn)是好像某個(gè)輸入先變成0。假設(shè)是C先變成0,于是兩個(gè)向左的箭頭表明電路最終達(dá)到穩(wěn)定的總狀態(tài)S1/00。然而,如果是D先發(fā)生變化,那么另一組箭頭序列表明了電路最終達(dá)到穩(wěn)定的總狀態(tài)S0/00。所以,電路最終的狀態(tài)是不可預(yù)測(cè)的,這就暗示著:如果硬要讓C和D同時(shí)為0的話,反饋回路實(shí)際上就變成是亞穩(wěn)態(tài)的了。C先變D先變C再變D再變1/3/2023427.9.2分析多反饋回路電路所以,

在多反饋回路電路中,必須斷開所有的回路,并且為每一個(gè)斷開了的回路設(shè)置一個(gè)虛構(gòu)緩沖器和狀態(tài)變量才能便于分析。有許多種斷開方式,斷點(diǎn)數(shù)最少的方式是最好的,但可能有多種。由不同的最小割集得到的狀態(tài)/輸出表所表示的輸入/輸出特性是一樣的,只是狀態(tài)的命名和編碼不同而已。如果采用多于最小斷點(diǎn)數(shù)的割集去分析反饋時(shí)序電路,所得到的狀態(tài)/輸出表仍可以正確地描述電路特性。但是,因?yàn)榧僭O(shè)多用了m個(gè)斷點(diǎn),分析過程中所用到的狀態(tài)變量數(shù)增大了2m倍,其中m是額外的斷點(diǎn)數(shù)。采用形式化狀態(tài)最小化過程可以將這個(gè)較大的表簡(jiǎn)化為合適的大小,但是,最好還是在一開始就選用最小割集為好。為了使得存儲(chǔ)在每個(gè)回路的下一狀態(tài)值可以被預(yù)測(cè)為電路的輸入值及存儲(chǔ)在所有回路中的當(dāng)前值的一個(gè)函數(shù),即Q*=f(Q,X)1/3/2023437.9.2分析多反饋回路電路(續(xù))74LS741/3/2023441/3/2023457.9.2分析多反饋回路電路(續(xù))圖7-79圖7-78中D觸發(fā)器的轉(zhuǎn)移表激勵(lì)和輸出方程:1/3/2023467.9.3競(jìng)爭(zhēng)在反饋時(shí)序電路中,競(jìng)爭(zhēng)(race)是指一個(gè)輸入信號(hào)的變化,引起多個(gè)內(nèi)部狀態(tài)變量改變狀態(tài)。右圖中,當(dāng)CLK信號(hào)由0變到1時(shí),穩(wěn)定總態(tài)011/00就會(huì)發(fā)生競(jìng)爭(zhēng)。由于競(jìng)爭(zhēng)的存在,內(nèi)部狀態(tài)從011變到000的過程:可能是011/00→001/10→000/10(Y2的變化速度比Y3的變化速度快);或者是011/00→010/10→000/10(Y3的變化速度比Y2的變化速度快);或者是011/00→000/10(Y2的變化速度與Y3的變化速度一致)1112212231112212231/3/202347如果競(jìng)爭(zhēng)的結(jié)果不會(huì)出現(xiàn)兩個(gè)不同的最終狀態(tài),則這樣的競(jìng)爭(zhēng)稱為非臨界競(jìng)爭(zhēng)。否則稱為臨界競(jìng)爭(zhēng),它是有害的。思考:如果初始總態(tài)為010/00,當(dāng)C由01時(shí),會(huì)產(chǎn)生競(jìng)爭(zhēng)嗎?在設(shè)計(jì)一個(gè)基于反饋的時(shí)序電路時(shí),必須確保轉(zhuǎn)移表中沒有任何臨界競(jìng)爭(zhēng)現(xiàn)象。否則,競(jìng)爭(zhēng)轉(zhuǎn)移的下一狀態(tài)就會(huì)取決于溫度、電壓以及月亮的圓缺,從而使得電路的操作存在著不可預(yù)測(cè)性。7.9.3競(jìng)爭(zhēng)(續(xù))1/3/2023487.9.3競(jìng)爭(zhēng)(續(xù))Y2變化速度>Y3Y2變化速度<Y3Y2變化速度=Y1產(chǎn)生臨界竟?fàn)幍膬蓚€(gè)條件:有兩個(gè)或兩個(gè)以上的內(nèi)部狀態(tài)變量(激勵(lì))同時(shí)發(fā)生變化;對(duì)于每一種輸入狀態(tài)有兩個(gè)或兩個(gè)以上的穩(wěn)定狀態(tài)。11122122233011/00→001/10→000/10011/00→010→110/10→111/10011→000/101/3/2023497.9.4狀態(tài)表與流程表狀態(tài)表表示單個(gè)輸入變量變化時(shí),電路達(dá)到新的穩(wěn)定總態(tài)時(shí)所發(fā)生的多個(gè)“跳程”。流程表刪除了多個(gè)跳程,只表示出每次轉(zhuǎn)移過程的最終目標(biāo),還去掉了未用的內(nèi)部狀態(tài),從不會(huì)到達(dá)的狀態(tài)。

如何由狀態(tài)表衍變成流程表?1/3/2023507.9.4狀態(tài)表與流程表(續(xù))設(shè)觸發(fā)器的初始總態(tài)為S0/10,此時(shí)觸發(fā)器儲(chǔ)存0,CLK為1,D為0。

D:01,狀態(tài)和輸出都不變;

CLK:10,狀態(tài)變?yōu)镾2或者S6,取決于此時(shí)的D是0還是1,但輸出依然沒變;

D:01,狀態(tài)在S2和S6之間跳動(dòng),但輸出仍不變;

CLK:01,狀態(tài)變?yōu)镾0(初始穩(wěn)態(tài)為S2/00)或S7(初始穩(wěn)態(tài)為S6/01),輸出Q變?yōu)?或?yàn)?,這取決于此時(shí)的狀態(tài)是S2還是S6。觸發(fā)器的邊沿觸發(fā)特性分析1/3/2023517.10反饋時(shí)序電路設(shè)計(jì)鎖存器:任何只有一個(gè)反饋回路的電路,都只不過是一個(gè)S-R觸發(fā)器或者是D鎖存器的變形。它們的一般結(jié)構(gòu)和激勵(lì)方程如下所示。

S-R和D鎖存器的激勵(lì)方程如下:1/3/2023527.10反饋時(shí)序電路設(shè)計(jì)(續(xù))對(duì)于D鎖存器:C=D=1時(shí),Q*=1;C:10時(shí),Q*應(yīng)鎖存在1。但除非反相器的速度非???,否則,反饋回路將鎖存在0狀態(tài)。111010001不可靠的D鎖存器無冒險(xiǎn)D鎖存器S-R鎖存器1/3/2023537.10反饋時(shí)序電路設(shè)計(jì)(續(xù))1/3/2023547.10.2設(shè)計(jì)基本模式流程表原始流程表:表中的每一行只有一個(gè)穩(wěn)定的總狀態(tài)。每一個(gè)狀態(tài)都具有比較精確的“含義”,但通常包含一些多余的狀態(tài)。例1:設(shè)計(jì)一個(gè)具有2個(gè)輸入,即P(脈沖)和R(復(fù)位),1個(gè)輸出Z的反饋時(shí)序電路。每當(dāng)P從0變到1(即脈沖出現(xiàn))時(shí),輸出被置為1;而每當(dāng)R為1(即進(jìn)行復(fù)位)時(shí),輸出就被復(fù)位為0。1/3/202355原始流程表相容IDLE相容RES相容PLS狀態(tài)激勵(lì)狀態(tài)S*

輸出

S

PR=00 PR

=01

PR

=11

PR=10 ZIDLE(00)IDLERES1

--

PLS1 0RES1(01)IDLE

RES1RES2

-- 0RES2(11)--

RES1

RES2PLSN 0PLSN(10)IDLE

--

RES2

PLSN 0PLS1(10)PLS2--

RES2

PLS1 1PLS2(00) PLS2 RES1 -- PLS117.10.2設(shè)計(jì)基本模式流程表(續(xù))已知PR/Z:00/0 10/1,且01,11/0

(RES1,01)/O (RES2,11)/0 (PLSN,10)/0(IDLE,00)/0 (PLS1,10)/1 (PLS2,00)/1

S*,PR/Z1/3/2023567.10.2設(shè)計(jì)基本模式流程表(續(xù))

注意:當(dāng)每一列都有了一個(gè)穩(wěn)定的狀態(tài)后,要盡量使更多的轉(zhuǎn)移進(jìn)入這些狀態(tài),而不是總要定義新的狀態(tài)。只有在這些狀態(tài)不能利用時(shí)才定義新的狀態(tài)。含義S 00 01 11 10 ZPR空閑,等待脈沖 IDLE IDLE RES1 -- PLS1 0重置,無脈沖 RES1 IDLE RES1 RES2

-- 0捕獲脈沖,輸出為1 PLS1 PLS2

-- RES2 PLS1 1重置,獲得脈沖 RES2 -- RES1 RES2 PLSN 0錯(cuò)過脈沖,輸出為1 PLS2 PLS2 RES1 -- PLS1 1捕獲脈沖,但輸出為0 PLSN IDLE -- RES2 PLSN 0S*1/3/202357例2:某反饋時(shí)序電路的輸入為x2和x1,輸出為Z。當(dāng)輸入x2x1的變化序列為000111時(shí),

輸出Z為1,否則Z為0。試根據(jù)總態(tài)圖作出該電路的原始流程表。

解:作總態(tài)圖作原始流程表二次狀態(tài)激勵(lì)狀態(tài)/輸出狀態(tài)(Y2Y1/Z)

yx2x1=00

01

11101

1/022/03

3/04

4/15

5/06

6/0完善原始流程表7.10.2設(shè)計(jì)基本模式流程表(續(xù))(1,00)/0(2,01)/0(3,10)/0(4,11)/1(5,11)/0(6,01)/0Y*,x2x1/Z1/3/202358例3:某電平異步時(shí)序電路的輸入為x1和x2,輸出為Z。輸入與輸出之間的邏輯關(guān)系為:只要x1=0,輸出Z就為0;當(dāng)x1=1時(shí),x2的第一次跳變使輸出Z=1,直到x1由10時(shí),輸出Z才由10。試作出該電路的原始流程表。

解:做總態(tài)圖7.10.2設(shè)計(jì)基本模式流程表(續(xù))已知x1x2/Z為00,01/0;1011/1,1110/1(1,00)/0(5,01)/0(2,10)/0(6,11)/0(3,11)/1(4,10)/11/3/202359內(nèi)部狀態(tài)激勵(lì)狀態(tài)/輸出狀態(tài)(Y/Z)

yx1x2=00

01

11101

1/02/-2

3/-2/03

3/14/-41/-

4/1內(nèi)部狀態(tài)激勵(lì)狀態(tài)/輸出狀態(tài)(Y/Z)

yx1x2=00

01

11101

1/05/-

-/-2/-21/-

-/-

3/-

2/03

-/-

5/-3/14/-41/-

-/-3/-

4/151/-

5/0

6/--/-6-/-

5/-

6/04/-完善部分流程表根據(jù)總態(tài)圖做原始流程表7.10.2設(shè)計(jì)基本模式流程表(續(xù))1/3/2023607.10.3流程表的最小化可用形式化方法來最小化原始流程表,這通常要利用流程表中的無關(guān)項(xiàng)。對(duì)于簡(jiǎn)單的流程表,也可以通過觀察來完成簡(jiǎn)化。含義S 00 01 11 10 ZPR空閑,等待脈沖 IDLE IDLE IDEL RES PLS 0捕獲脈沖,輸出為1 PLS PLS IDEL RES PLS 1重置,獲得脈沖 RES IDEL IDEL RES RES 0狀態(tài)IDLE和RES1,PLS1和PLS2、RES2和PLSN產(chǎn)生相同的輸出,并且對(duì)于相同的輸入取值組合,它們有相同的下一狀態(tài)。因此,它們是相容的,可以分別用IDLE、PLS和RES來代替。合并后狀態(tài)“意義”比較含糊。1/3/2023617.10.4無競(jìng)爭(zhēng)狀態(tài)賦值法反饋時(shí)序電路的回路一定不能包含任何的臨界競(jìng)爭(zhēng),否則電路的操作就不可預(yù)測(cè)。要想消除競(jìng)爭(zhēng),常常需要增加電路中狀態(tài)的數(shù)目。

相鄰圖:是一個(gè)簡(jiǎn)化了的狀態(tài)圖,它去掉了自回路并且沒有標(biāo)出轉(zhuǎn)移方向(即A→B和B→A相同),或者引起轉(zhuǎn)移的輸入組合相鄰圖1/3/2023627.10.4無競(jìng)爭(zhēng)狀態(tài)賦值法(續(xù))避免競(jìng)爭(zhēng)的四種方法:1、用合理的賦值來避免競(jìng)爭(zhēng)(將有相鄰轉(zhuǎn)換關(guān)系的狀態(tài)分配相鄰的二進(jìn)制代碼)例1:圖7-93的狀態(tài)賦值

兩個(gè)狀態(tài)如果在狀態(tài)相鄰圖中有弧線相連,這兩個(gè)狀態(tài)就稱做是相鄰的(相鄰狀態(tài)(adjacentstates))要得到無競(jìng)爭(zhēng)的轉(zhuǎn)移,相鄰狀態(tài)的編碼只能有一位不同1/3/202363

例2:給下圖所示的狀態(tài)賦值內(nèi)部狀態(tài)激勵(lì)狀態(tài)

x1x2=00x1x2=01x1x2=11x1x2=10AA

CBABABBBCCCDADCDDDABCD狀態(tài)相鄰圖y2y101ACDB017.10.4無競(jìng)爭(zhēng)狀態(tài)賦值法(續(xù))1/3/2023647.10.4無競(jìng)爭(zhēng)狀態(tài)賦值法(續(xù))

2、通過增加一些多余的、非穩(wěn)定的過渡狀態(tài)來避免競(jìng)爭(zhēng)。(用過渡狀態(tài)將不相鄰狀態(tài)連接起來,使它們每變化一次都是作相鄰轉(zhuǎn)換)1/3/2023657.10.4無競(jìng)爭(zhēng)狀態(tài)賦值法(續(xù))例3:增加過渡狀態(tài)的狀態(tài)賦值

y2y101ADCB01內(nèi)部激勵(lì)狀態(tài)狀態(tài)

x2x1=00x2x1=01x2x1=11x2x1=10AA

AB

CB

-

CB

CCACC

C內(nèi)部激勵(lì)狀態(tài)狀態(tài)

x1x2=00x1x2=01x1x2=11x1x2=10AA

ABDB-CBCCDCCCDA--CABCD增加過渡狀態(tài)的狀態(tài)相鄰圖ABC原始狀態(tài)相鄰圖AC輸入由10去CA輸入由00去1/3/202366ABCD00,0101,10,1111101110,010000X2X17.10.4無競(jìng)爭(zhēng)狀態(tài)賦值法(續(xù))101/3/2023677.10.4無競(jìng)爭(zhēng)狀態(tài)賦值法(續(xù))

3、用n維編碼來滿足最大連接度為n的無競(jìng)爭(zhēng)狀態(tài)賦值要求。圖7-97最壞情況的情景(a)4狀態(tài)相鄰圖(b)采用等效狀態(tài)對(duì)的賦值脈沖捕捉器8種可能的無競(jìng)爭(zhēng)狀態(tài)賦值之一1/3/2023687.10.4無競(jìng)爭(zhēng)狀態(tài)賦值法(續(xù))內(nèi)部激勵(lì)狀態(tài)狀態(tài)

x2x1=00x2x1=01x2x1=11x2x1=10AA

ACBB

ACB

BCACC

By2y101ACB

01ABC狀態(tài)相鄰圖內(nèi)部激勵(lì)狀態(tài)狀態(tài)

x2x1=00x2x1=01x2x1=11x2x1=1000

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論