1、設(shè)計(jì)電路最簡(jiǎn)的標(biāo)準(zhǔn)是:
1.選用小規(guī)模集成電路時(shí),所用的觸發(fā)器和門電路的數(shù)目最少,而且觸發(fā)器和門電路的輸入端數(shù)目也最少。
3. 使用中、大規(guī)模集成電路時(shí),所用的集成電路數(shù)目最少,種類最少,而且互相間的連線也最少。
2、同步時(shí)序邏輯電路的設(shè)計(jì)步驟
一、邏輯抽象,得出電路的狀態(tài)轉(zhuǎn)換圖或狀態(tài)轉(zhuǎn)換表
1.分析給定的邏輯問題,確定輸入變量、輸出變量以及電路的狀態(tài)數(shù)。
2.定義輸入、輸出邏輯狀態(tài)和每個(gè)電路狀態(tài)的含意,并將電路狀態(tài)順序編號(hào)。
3.按照題意列出電路的狀態(tài)轉(zhuǎn)換表或畫出電路的狀態(tài)轉(zhuǎn)換圖。
二.狀態(tài)化簡(jiǎn)
等價(jià)狀態(tài):若兩個(gè)電路狀態(tài)在相同的輸入下有相同的輸出,并且轉(zhuǎn)換到同一個(gè)次態(tài)去。
狀態(tài)化簡(jiǎn)目的:合并等價(jià)狀態(tài),求得最簡(jiǎn)的狀態(tài)轉(zhuǎn)換圖。
三.狀態(tài)分配(狀態(tài)編碼)
確定觸發(fā)器的數(shù)目n。為獲得時(shí)序電路所需的m個(gè)狀態(tài),必須滿足2n-1 <m<2n
給每個(gè)電路狀態(tài)規(guī)定對(duì)應(yīng)的觸發(fā)器狀態(tài)組合,即從2n個(gè)狀態(tài)中取m個(gè)狀態(tài)。方案可能有多種。
四.選定觸發(fā)器的類型,求出電路的狀態(tài)方程、驅(qū)動(dòng)方程和輸出方程
選定觸發(fā)器的類型后,根據(jù)狀態(tài)轉(zhuǎn)換圖(或狀態(tài)轉(zhuǎn)換表)和選定的狀態(tài)編碼,觸發(fā)器的類型,寫出電路的狀態(tài)方程、驅(qū)動(dòng)方程和輸出方程。
五.根據(jù)得到的方程式畫出邏輯圖
六.檢查設(shè)計(jì)的電路能否自啟動(dòng)
如不能自啟動(dòng),則需采取措施,解決辦法為:
1.在電路開始工作時(shí)通過預(yù)置數(shù)將電路的狀態(tài)置成有效狀態(tài)循環(huán)中的某一種。
2. 修改邏輯程序
下圖是設(shè)計(jì)工作的方框圖:
例5.3 試設(shè)計(jì)一個(gè)帶有進(jìn)位輸出端的十三進(jìn)制計(jì)數(shù)器
解:首先進(jìn)行邏輯抽象,計(jì)數(shù)器是屬于摩爾型的一種簡(jiǎn)單時(shí)序電路。設(shè)有進(jìn)位輸出時(shí)c=1,無進(jìn)位輸出時(shí)c=0。
設(shè)十三個(gè)有效狀態(tài)為s0s1s2……s12電路狀態(tài)轉(zhuǎn)換圖如圖5.6所示。
圖5.6 例5.3的狀態(tài)轉(zhuǎn)換圖
狀態(tài)轉(zhuǎn)換圖不能再簡(jiǎn)化。
因?yàn)閙=13,所以n=4。
狀態(tài)編碼:取自然二進(jìn)制數(shù)的0000~1100作為s0~s12的編碼,如下表所示。
表 電路的狀態(tài)轉(zhuǎn)換表
狀態(tài)變化順 序
狀態(tài)編碼
進(jìn)位輸出
等效
q3 q2 q1 q0
s0
s1
s2
s3
s4
s5
s6
s7
s8
s9
s10
s11
s12
s0
0 0 0 0
0 0 0 1
0 0 1 0
0 0 1 1
0 1 0 0
0 1 0 1
0 1 1 0
0 1 1 1
1 0 0 0
1 0 0 1
1 0 1 0
1 0 1 1
1 1 0 0
0 0 0 0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
2
3
4
5
6
7
8
9
10
11
12
0
畫出表示次態(tài)邏輯函數(shù)和進(jìn)位輸出函數(shù)的卡諾圖,如圖5.7所示。
圖5.7 例5.3的卡諾圖
為清晰起見,可將上圖的卡諾圖分解為五個(gè)卡諾圖,如圖5.8所示。
圖5.8 的卡諾圖
從卡諾圖得電路的狀態(tài)方程為:
輸出方程為 : c=q3q2
如果選用jk觸發(fā)器,把狀態(tài)方程進(jìn)行變換,得驅(qū)動(dòng)方程:
畫出計(jì)數(shù)器的邏輯圖如圖5.9所示。
圖5.9 例5.3的電路
檢查電路能否自啟動(dòng)。將三個(gè)無效狀態(tài)1101、1110、1111分別代入電路中進(jìn)行分析,所得次態(tài)分別為0010、0010、0000,因此電路能自啟動(dòng)。
下圖是該電路完整的狀態(tài)轉(zhuǎn)換圖。
圖5.10 例5.3的狀態(tài)轉(zhuǎn)換圖
例5.4 設(shè)計(jì)一個(gè)串行數(shù)據(jù)檢測(cè)器。對(duì)它的要求是:連續(xù)輸入3個(gè)或3個(gè)以上的1時(shí)輸出為1,其他輸入情況下輸出為0。
解:首先進(jìn)行邏輯抽象,畫出狀態(tài)轉(zhuǎn)換圖。
取輸入數(shù)據(jù)為輸入變量,用x表示;取檢測(cè)結(jié)果為輸出變量,用y表示。
設(shè)s0:沒有輸入1以前的狀態(tài),
s1:輸入一個(gè)1以后的狀態(tài),
s2:輸入兩個(gè)1以后的狀態(tài)
s3:輸入3個(gè)或3個(gè)以上1以后的狀態(tài)。
若以sn表示電路的現(xiàn)態(tài),sn+1表示電路的次態(tài),可得狀態(tài)轉(zhuǎn)換表,如表所示。
表 狀態(tài)轉(zhuǎn)換表
x sn
s0
s1
s2
s3
0
s0/0
s0/0
s0/0
s0/0
1
s1/1
s2/1
s3/1
s3/1
sn+1/y
狀態(tài)轉(zhuǎn)換圖如圖5.11所示。
圖5.11 例5.4狀態(tài)轉(zhuǎn)換圖
進(jìn)行狀態(tài)簡(jiǎn)化。s2和s3是等價(jià)狀態(tài),可以合并為一個(gè)。于是得到化簡(jiǎn)后的狀態(tài)轉(zhuǎn)換圖。
在電路狀態(tài)m=3的情況下,取觸發(fā)器位數(shù) n = 2.
圖5.12 例5.4化簡(jiǎn)后的狀態(tài)轉(zhuǎn)換圖
取s0=00,s1=01,s2=10,選定jk觸發(fā)器,得次態(tài)和輸出的卡諾圖,如圖5.13所示。
圖5.13 例5.4的電路次態(tài)/輸出卡諾圖
經(jīng)化簡(jiǎn)得狀態(tài)方程為:
得驅(qū)動(dòng)方程為
輸出方程為 : y=xq1
由驅(qū)動(dòng)方程和輸出方程得電路圖如圖5.14所示。
圖5.14 例5.4的電路
電路狀態(tài)轉(zhuǎn)換圖如圖5.15所示。
圖5.15 例5.4的狀態(tài)轉(zhuǎn)換圖
這個(gè)電路能夠自啟動(dòng)。
若改用d觸發(fā)器,則驅(qū)動(dòng)方程為
得電路圖如圖5.16所示.
圖5.16