时序逻辑电路的分析和设计
專題一:時序邏輯電路的分析和設計
說明:由于CSDN文本限制,反變量均寫為`X(注意X前面有`);內容、圖片可能不完全顯示,原版word文檔請點擊更多文章。
鏈接:https://pan.baidu.com/s/1jJhtwqE 密碼:w208
<!-- 鏈接失效請發郵件至2867555086@qq.com -->
一、時序邏輯電路的基本分析方法
1.基本步驟
Step 1:寫出各觸發器的控制函數(又稱驅動方程);
Step 2:結合各類型觸發器的特性方程和控制函數寫出各觸發器的狀態方程;
Step 3:若電路有輸出變量,則寫出電路的輸出函數;
Step 4:根據觸發器的狀態方程作狀態轉換表;
Step 5:根據狀態轉換表做出狀態轉換圖;
Step 6:根據題目要求,若有要求畫出時序波形圖,則根據狀態轉換表并結合觸發器觸發方式畫出時序波形圖;
Step 7:觀察狀態轉換圖得到時序邏輯電路的功能;
Step 8:最后一步說明該時序邏輯電路能否自啟動。
2.幾個名詞的含義
①觸發器的控制函數(驅動方程)
例如對于JK觸發器,特性方程為Qn+1= J`Qn+ `KQn
根據所給電路圖,得到控制端的表達式(這里是JK)即為該觸發器的控制函數。
②觸發器的特性方程
描述觸發器次態與現態的函數關系。
(幾種觸發器的特性方程見P271本章小結第4點)
③觸發器的狀態方程
將所得控制函數帶入到觸發器特性方程得到的結果。
④狀態轉換表
本質是真值表,其中輸入變量為現態Q0n~Qmn(m=1,2,3, …),輸出變量為次態Q0n+1~Qm n+1、輸出變量Y。有幾個觸發器就有幾個現態,幾個次態變量(即m=觸發器總個數)。
⑤狀態轉換圖
描述現態到次態的轉化過程,每個狀態為一個圈,根據狀態轉換表連接各個圈。圈與圈之間用箭頭連接,同時若有輸入輸出變量,則在箭頭上方標上輸入/輸出。
⑥時序波形圖
描述Q0~Qm隨著CP脈沖變化情況的波形圖(要注意觸發器在上升沿還是下降沿有效)。
⑦自啟動
無效狀態間形成了循環,一旦某些干擾造成落入無效循環,那么再也回不到有效狀態,也就不能正常工作了,具體判斷方法見后。
3.結合例題應用上述步驟
eg. 見P283 [例5.1.1]
Step1:圖中共有3個觸發器FF0、FF1、FF2。結合電路連接可以得到:
對于FF0,J0 = Q2n ???K0 = Q2n
對于FF1, ?J1 = Q0n ???K1= Q0n
對于FF0,J2 = Q1n???K2 = Q1n
這樣就得到了各個觸發器的控制函數(驅動方程)。
Step2:本題全部使用JK觸發器,特性方程為Qn+1 = J `Qn + `K Qn? 從而得到5.1.5各觸發器的狀態方程。
Step3:圖示有輸出變量Y, 根據電路圖可得到5.1.2的輸出方程。
Step4:根據5.1.5和5.1.2得到表5.1.1狀態表。
Step5:根據表5.1.1作出狀態轉換圖。
000的下一個狀態是001, 此時輸出為1。則作從000到001的箭頭,且無輸入變量,輸出變量為1,因此在箭頭上方標上 /1;
再從001開始,從轉換表來看,001的下個狀態是001,此時輸出為1。則緊接著在001后寫下001,并作從001到011的箭頭,在箭頭上方標上/1;
再從011開始,011的下一個狀態是111,此時輸出為1。則在011后寫下111,并作箭頭,標上/1;
接下來類似,每次按照狀態轉換表,將現態與次態對應的狀態寫在一起,并用箭頭連接,并在箭頭上標上輸入/輸出,一直到狀態100轉化為狀態000結束。
此時,構成了一個由6個狀態形成的環,即為圖5.1.3的 (a) 圖。接下來,找到轉換表上剩下的不在所畫圈內的狀態,同樣按照上述步驟畫圖,得到(b)圖。
Step6:時序波形圖的畫法見前章。注意本題觸發器下降沿觸發,且次態依賴于現態變化,從而得到圖5.1.1的時序圖。
Step7:觀察狀態轉換圖可知,該圖的功能是構成十進制0、1、3、7、6、4的循環,形成一個模六計數器。
Step8:由圖5.1.3的狀態轉換圖可知,無效狀態010、101間構成了死循環,因此該電路不能夠自啟動。
4.能否自啟動的判斷方法
對于計數器,我們記計數長度為N,電路用到的觸發器個數為m。
①若N=2m,則該電路能夠自啟動;
②若N<2m,將不在圈內的余下N-2m個狀態依次帶入狀態轉換表,觀察是否構成無效循環。若是,則不能自啟動;反之可以自啟動。
二、時序邏輯電路的基本設計方法
1.基本步驟
Step 1:明確設計電路功能,作出基于功能涉及到的所有編碼排序的狀態轉換圖;
Step 2:判斷電路是否有輸入或輸出變量,并根據狀態轉換圖畫出狀態轉換表;
Step 3:根據狀態轉換表,分離出各觸發器輸出量Q0~Qm(m=1、2、3…)、輸出變量Y的卡諾圖并化簡,得到各個觸發器的狀態方程;
Step 4:選用恰當的觸發器(一般選用JK觸發器),通過將每個觸發器的輸出量Qi變形并與所選觸發器的特征方程比對,得到各觸發器的控制函數;
Step 5:畫電路圖。根據選用的各個觸發器的控制函數及輸出函數,借助邏輯門電路連接電路圖;
Step 6:根據狀態轉換圖,判斷所設計的電路能否自啟動。
2.幾個名詞的含義
①編碼排序
這里提到的編碼排序是答題者根據題目要求的功能自行設計的編碼,用二進制碼表示,二進制位數由狀態數確定。例如功能需要7個狀態,則二進制位數設為3;需要15個狀態,二進制位數設為4。
3.結合例題應用上述步驟
我們以P393 [題5.8]為例。
Step1:由于電路要求的功能以狀態轉換圖的形式給出,因此第一步可以省略;
Step2:由狀態轉換圖可知要設計的電路無輸入與輸出變量,得到狀態轉換表如下圖所示:
| Q2n | Q1n | Q0n | Q2n+1 | Q1n+1 | Q0n+1 |
| 0 | 0 | 0 | 0 | 0 | 1 |
| 0 | 0 | 1 | 0 | 1 | 1 |
| 0 | 1 | 0 | X | X | X |
| 0 | 1 | 1 | 1 | 1 | 1 |
| 1 | 0 | 0 | 0 | 0 | 0 |
| 1 | 0 | 1 | X | X | X |
| 1 | 1 | 0 | 1 | 0 | 0 |
| 1 | 1 | 1 | 1 | 1 | 0 |
?
Step3:由上圖可分離出Q0n+1,Q1n+1,Q2n+1的卡諾圖如圖所示:
| Q2n/Q1n Q0n | 00 | 01 | 11 | 10 |
| 0 | 1 | 1 | 1 | X |
| 1 | 0 | X | 0 | 0 |
Q0n+1
| Q2n/Q1n Q0n | 00 | 01 | 11 | 10 |
| 0 | 0 | 1 | 1 | X |
| 1 | 0 | X | 1 | 0 |
Q1n+1
| Q2n/Q1n Q0n | 00 | 01 | 11 | 10 |
| 0 | 0 | 0 | 1 | X |
| 1 | 0 | X | 1 | 1 |
Q2n+1
通過卡諾圖并化簡可得:
Q0n+1 = `Q2n
Q1n+1 = Q0n
Q2n+1 = Q1n
Step4:選用JK觸發器(Qn+1 = J `Qn + `K Qn)
Q0n+1 = `Q2n= `Q2n(Q0n+`Q0n)= `Q2n?`Q0n+`Q2nQ0n
因此對于FF0:J0 = `Q2n;K0 = Q2n
Q1n+1 = Q0n =Q0n(Q1n+ `Q1n)= Q0n`Q1n+ Q0n?Q1n
因此對于FF1:J1 = Q0n ;K1= `Q0n
Q2n+1 = Q1n= Q1n (Q2n+`Q2n)= Q1n `Q2n+ Q1n Q2n
因此對于FF2:J2=Q1n;K2=`Q1n
Step5:畫電路圖。根據觸發器狀態方程得到如下圖所示的電路,設計的電路為同步時序邏輯電路,所有觸發器共用一個CP脈沖。
Step6:判斷能否自啟動。不在圈內的狀態有010、101。他們之間構成了圈,如下圖所示,因此該電路不能自啟動。
010???????? 101
三、需要注意的幾點
①不論是時序邏輯電路的設計還是分析,都必須在最后加上對電路能否自啟動的分析,對于不能自啟動的,要把無效狀態之間形成的環畫出來后說明不能自啟動;
②在設計時序邏輯電路時,畫電路圖要注意觸發器的觸發方式,是上升沿出發還是下降沿觸發,且若為下降沿觸發,需要再CP端畫上小空心圓圈;
③所有專題都需要結合書本復習。
四、對應課后習題答案
注:下面提供的答案步驟與上述步驟有不符,但強烈建議同學們嚴格按照上述步驟解題,把每一步都寫出來。
課本P393~P394
鏈接:https://pan.baidu.com/s/1jJhtwqE 密碼:w208
<!-- 鏈接失效請聯系我 2867555086@qq.com -->
再次感謝孫道清和徐德琴老師的指導!
?????????????????????作者:LeoHao
??????????????????????單位:安徽師范大學數學計算機科學學院
總結
以上是生活随笔為你收集整理的时序逻辑电路的分析和设计的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 前端学习(2517):子传父
- 下一篇: vb实现随机生成100个整数,将其中的奇