第10章 暫存器與計數器 - gauss.com.twgauss.com.tw/book/logic/chapter10.pdf · 柯建平著...
TRANSCRIPT
柯建平 著 請勿侵犯著作權!-只限「數位邏輯」教科書購買學生及其教師下載列印
高斯圖書出版社-數位邏輯補充教材--第十章-1
第10章 暫存器與計數器
10.1 暫存器正反器只能儲存一個位元的資料,想要儲存多位元的資料就必須將多個正反
器並連或串聯起來使用,這種可以控制多位元資料輸入貯存的裝置,稱為暫存器。
暫存器依其資料輸入/輸出的型式可分為:
10.1-1 串列輸入/串列輸出串列輸入/串列輸出(Serial-In/Serial-Out),簡稱 SISO。如圖 10.1-1 所示,資
料輸入端是最左端 D 型正反器的輸入端,每一個 D 型正反器的輸出都串接至下一個 D 型正反器的輸入端,所以若有一四位元的資料要存入此暫存器,就必須在時脈(Clock)有效動作前,依序將四位元的資料置於串列輸入端,經過四個時脈後資料就可以移入暫存器中。同理,想要將資料從串列輸出端移出也是須要四個時脈。這種電路的特性就是位元傳輸線只需一對線,適合距離較長的傳輸,但是傳輸速率較慢。
10.1-2 串列輸入/並列輸出串列輸入/並列輸出(Serial-In/Parallel-Out),簡稱 SIPO,又稱為移位暫存器,
圖(10.1-1) 串列輸入/串列輸出暫存器
D0 Q0
Q0
CkD1 Q1
Q1
CkD2 Q2
Q2
CkD3
K3
Q3
Q3
Ck
Clock
串列輸入 串列輸出
Clock
圖(10.1-2) 串列輸入/並列輸出暫存器
串列輸入
並列輸出
D0 Q0
Q0
CkD1 Q1
Q1
CkD2 Q2
Q2
CkD3
K3
Q3
Q3
Ck
Q0
0
Q1
0
Q2
0
Q3
0
柯建平 著 請勿侵犯著作權!-只限「數位邏輯」教科書購買學生及其教師下載列印
高斯圖書出版社-數位邏輯補充教材--第十章-2
分為左移及右移兩種。如圖 10.1-2 所示是一個右移的移位暫存器,資料輸入的方式是串列的,但是資料的取得卻可以從每一正反器的輸出端並列輸出的,當然我們執意要把它當做串列輸入/串列輸出(SISO)來用也是可以的。串列輸入/並列輸出電路通常用在接收串列輸入資料後需要轉換為並列資料的場合,例如電腦用的滑鼠傳給電腦介面的資料是串列的,但是經過介面卡電路送給電腦內部的資料卻是並列的。
10.1-3 並列輸入/串列輸出
並列輸入/串列輸出(Parallel -In/ Serial -Out),簡稱 PISO。如圖 10.1-3 所示,當載入/移位(Load/Shift)控制線為「1」時,時脈(Clock)無法有效進入正反器,但是資料 D0D1D2D3 卻可透過及閘對正反器產生預置(PR)或清除(CLR)的功能,換句話說就是資料並列的輸入到正反器中了。但是要取得資料時,就必須令載入/移位控制線為「0」,而且依時脈的順序資料從串列輸出移出。如果要將並列的資料以串列的方式傳輸,當然就必須用到並列輸入/串列輸出暫存器,例如數位式搖控器都會有這樣的裝置,因為一個可以多項搖控的編碼,在搖控器時是並列編碼,到了發射端必然是一個位元接一個位元調變(註1)傳送出去的。
10.1-4 並列輸入/並列輸出並列輸入/並列輸出(Parallel -In/ Parallel -Out),簡稱 PIPO。如圖 10.1-4 所示,
當時脈(Clock)負緣發生時,載入(Load)控制線為「1」,會將資料 D0D1D2D3 透過AND-OR 閘輸入正反器,而載入(Load)控制線為「0」時,Q0Q1Q2Q3透過 AND-OR
(註1)調變:將某位準電壓去改變一個可以發射頻率(載波)的振幅或頻率、相位。
串列輸出
Clock
圖(10.1-3) 並列輸入/串列輸出暫存器
並列輸入
Q0 D1 Q1
Q1
D2 Q2
Q2
D3
K3
Q3
Q3
Ck Ck Ck CkD0
PR
0
CLR
Q0
0
PR
0
CLR
0
PR
0
CLR
0
PR
0
CLR
0
載入/移位
D0
0
D1
0
D2
0
D3
0
串列輸入Ck
Q0
Q0
柯建平 著 請勿侵犯著作權!-只限「數位邏輯」教科書購買學生及其教師下載列印
高斯圖書出版社-數位邏輯補充教材--第十章-3
閘再回輸入正反器。也就是 Load=1,Clock 作用時即可更新暫存器的資料,否則只是將暫存器的資料讀出至並列輸出端。
此種暫存器廣泛的應用在電子計算機的記憶電路中,可暫存程式演算過程中的資料,而 Load 控制線在計算機的電路中常被稱為讀/寫(R/W)控制線。
10.2 計數器計數器由正反器構成,可以記錄狀態的變遷,或可說是正反器隨時脈的變化
次數做故定狀態的循環。計數器以正反器狀態改變是否與計數時脈同步來區分,可分為同步計數器與非同步兩種,若以計數狀態的呈現又可分為 2n模(狀態)及非2n 模兩種,如果描述得更清楚些,還可以分為上數計數器或是下數計數器以及環式計數器等等。
10.2-1 漣波計數器(非同步計數器)漣波計數器是一種非同步計數器,基本結構是由 T 型正反器推動下一只 T 型
正反器產生計數狀態。
(1)2N模漣波計數器如圖(10.2-1)所示,每一只正反器均由 J-K 正反器接成 T 型正反器,Q0 的狀態
Clock
圖(10.1-4) 並列輸入/並列輸出暫存器
並列輸入
Q0
Q0
D1 Q1
Q1
D2 Q2
Q2
D3
K3
Q3
Q3
Ck Ck Ck CkD0
CLR
0
CLR
0
CLR
0
CLR
0
Load
D0
0
D1
0
D2
0
D3
0
Clear
並列輸出
Q0
0
Q1
0
Q2
0
Q3
0
CkQ0
柯建平 著 請勿侵犯著作權!-只限「數位邏輯」教科書購買學生及其教師下載列印
高斯圖書出版社-數位邏輯補充教材--第十章-4
隨著計數脈波(Pulse)的負緣交變一次,Q1 的狀態隨著 Q0 的負緣交變一次,Q2 的狀態隨著 Q1 的負緣交變一次,Q3 的狀態隨著 Q1 的負緣交變一次,4 個正反器的變化組合為 24 個狀態,故稱為 2n 模計數器。若將各正反器輸出的時序圖繪出,我們發現每一只正反器對於脈波的反應都有延遲現象,而且越到後面的正反器延遲越大,最大延遲時間與正反器的個數成正比,因為每一只正反器的反應無法同步,故稱此計數器為非同步計數器。
一個非同步漣波計數器,當計數脈波的頻率增加時,導致末端的正反器來不及反應,產生計數狀態的錯誤。如圖 10.2-2 所示,當正反器的延遲時間為 tfd,當末端正反器反應時,對計數脈波的負緣已經延遲了 4 tfd,如果將計數脈波的週期縮短到 4 tfd 之內,Q4 將無法反應,因此漣波計數器的最大計數頻率為:
(圖 10.2-1) 除 16(2n 模)漣波計數器
J0
K0
Q0
Q0
Ck
1
J1
K1
Q1
Q1
Ck
1
J2
K2
Q2
Q2
Ck
1
J3
K3
Q3
Q3
Ck
1
pulse
漣波計數器正確輸出所需時間(Td)=正反器延遲時間(tfd)×正反器之個數(N)
漣波計數器最大計數頻率(Fmax)=1/ Td
Ck
Q0
Q1
Q2
Q3
1 2 3 5 64 7
tfd
2tfd
3tfd
4tfd
0000 0001 0010 0011 0100 0101 0110
(圖 10.2-2) 除 16 漣波計數器之時序圖Q3Q2Q1Q0
8 9
10000111
10 11 12 14 1513 0
4tfd
1010 1011 1100 1101 1110 1111 00001001
柯建平 著 請勿侵犯著作權!-只限「數位邏輯」教科書購買學生及其教師下載列印
高斯圖書出版社-數位邏輯補充教材--第十章-5
從圖 10.2-2 可知,若將某連續脈波由 Ck 端輸入,在 Q3 端的輸出頻率將是 Ck端的 1/16 倍,所以計數器在這種應用場合又可稱為除頻電路。
若將圖 10.2-1 中的正反器改成正緣觸發(圖 10.2-4),將使其計數模式變成下數型態,圖 10.2-3 是時序圖的分析。由於負緣觸發改成正緣觸發等於時脈輸入端加了反閘,因此從正反器的反向輸出端(Q') 接至次一級正反器的負緣觸發端,同樣可是一只下數計數器,如圖 10.2-5。
(圖 10.2-4) 除 16 正緣觸發下數漣波計數器
J0
K0
Q0
Q0
Ck
1
J1
K1
Q1
Q1
Ck
1
J2
K2
Q2
Q2
Ck
1
J3
K3
Q3
Q3
Ck
1
pulse
(圖 10.2-5) 除 16 負緣觸發下數漣波計數器
J0
K0
Q0
Q0
Ck
1
J1
K1
Q1
Q1
Ck
1
J2
K2
Q2
Q2
Ck
1
J3
K3
Q3
Q3
Ck
1
pulse
15 14 13 11 1012 9 8 7 6 5 4 2 13 0
Q0
Q1
Q2
1111 1110 1101 1100 1011 1010 1001
(圖 10.2-3) 除 16漣波下數計數器之時序圖Q3Q2Q1Q0
01111000 0101 0100 0011 0010 0001 00000000 0110
Ck
Q3
柯建平 著 請勿侵犯著作權!-只限「數位邏輯」教科書購買學生及其教師下載列印
高斯圖書出版社-數位邏輯補充教材--第十章-6
(2)非 2n 模漣波計數器非 2n 模漣波計數器利用了正反器清除(clear)或預置(Preset)接腳的功能,當一
個上數計數器為 N 模時,我們就可以檢測第 N+1 個狀態到來時,將所有正反器的啟始狀態重新設定,例如一個除 12(非 2n)模漣波上數計數器(圖 10.2-7),計數狀態為 0~11,第 N+1 個狀態為 12,所以 12(11002) 狀態發生時將產生正反器清除使計數狀態等於 0,對於下數計數器則可使用預置和清除回到較大的數。
一個非 2n 模漣波計數器,其計數模態為 M 時,則正反器的數量 n 必須滿足 2n
> M,故一個 12 模漣波計數器至少需要 4 只正反器。
非 2n 模漣波計數器的狀態檢查電路 往往只是一個簡單的解碼電路,例如狀態 12 的 解 碼 輸 出 應 為 Q3Q2Q1'Q0'(1100),但是圖 10.2-7 中的解碼電路確簡單到等於 Q3Q2,這是因為 從 0000~1011 的 12 個計數狀態中 Q3Q2
=11 的狀態從未出現,一旦出現就表示 1100 已經到來,因此用 Q3Q2 NAND 起來的輸出就可以對所有的正反器產生清 除,使用 NAND 而不是 AND 是因為正反器的清除需要「0」動作。
(圖 10.2-7) 除 12(12 模)漣波計數器
J0
K0
Q0
Q0
Ck
1
J1
K1
Q1
Q1
Ck
1
J2
K2
Q2
Q2
Ck
1
J3
K3
Q3
Q3
Ck
1
pulse
狀態 12(模 13)檢查電路
N 模漣波數計數器 N+1 模檢查電路
Q0 Qn-1
脈波
正反器清除或預置端
(圖 10.2-6) 除 N(非 2n 模)漣波計數器結構圖
計數狀態輸出
柯建平 著 請勿侵犯著作權!-只限「數位邏輯」教科書購買學生及其教師下載列印
高斯圖書出版社-數位邏輯補充教材--第十章-7
非 2n 模漣波計數器有一個必須重視的缺點,也就是每一只正反器的清除(或預置)時間不同時,就會導致錯誤的計數順序,例如圖 10.2-7 當 Q3Q2Q1Q0=1100 時,若 Q3 先被清除時,解碼電路的 NAND 輸出端將轉為「1」,因而失去對正反器的清除作用,使 Q2 將被保留為「1」,則下一個時脈將從 0100 開始計數。
10.2-2 同步計數器同步計數器結構上與漣波計數器最大的不同,就是同步計數器中所有正反器
的時脈輸入端(Ck)都接在一起,而且必然是計數脈波的輸入端,這意味著當計數脈波發生時,所有正反器將同步反應輸出狀態。
(1)2n 模同步計數器2n 模同步計數器的結構有一個簡單的脈絡可循,我們以 16 模同步計數器為
例,分幾個步驟來說明 2n 模同步計數器的形成。
1. 首先可以依 16=24可定出正反器的個數為4 。
2. 在列出的狀態表(表 10.2-1)中,可以發現Q0 隨著每一次的計數脈波改變一次狀態,所以 Q0 正反器接成 T 型正反器,且令 T=1 即可。
3. Q1 會改變狀態的時候是當計數器前一個狀態的 Q0 =1 時,所以將 Q1 正反器的 T端接在 Q0,當計數脈波發生時且 Q0 =1,Q1 將會改變狀態。
4. Q2 會改變狀態的時候是當計數器前一個狀態的 Q1Q0 =1 時,所以將 Q2 正反器的 T端接在 Q1Q0 的 AND 端,當計數脈波發生時且 Q1Q0 =1,Q2 將會改變狀態。
5. 同理,Q3 正反器的 T 端接在 Q2Q1Q0 的AND 端,當計數脈波發生時且 Q2Q1Q0
No. Q3 Q2 Q1 Q0
0 0 0 0 01 0 0 0 12 0 0 1 03 0 0 1 14 0 1 0 05 0 1 0 16 0 1 1 07 0 1 1 18 1 0 0 09 1 0 0 110 1 0 1 011 1 0 1 112 1 1 0 013 1 1 0 114 1 1 1 015 1 1 1 1
(表 10.2-1)16 模計數狀態表
非 2n 模漣波計數器正確輸出所需時間(Td)=正反器延遲時間(tfd)×正反器之個數(N) + 狀態檢查電路的延遲(tgd)
漣波計數器最大計數頻率(Fmax)=1/ Td
柯建平 著 請勿侵犯著作權!-只限「數位邏輯」教科書購買學生及其教師下載列印
高斯圖書出版社-數位邏輯補充教材--第十章-8
=1,Q3 將會改變狀態。
由於同步計數器正反器的時脈端都接在一起,狀態反應是與時脈同步的,所以狀態輸出的最大延遲時間為一個正反器的延遲時間(tfd)再經過一個及閘的延遲時間(tgd)。因此最大計數頻率為:
(2)非 2n 模同步計數器任何一種同步計數器都可以用圖 10.2-9 的結構來完成,2n 模同步計數器從狀
態表中可以輕易的歸納出變化的規則,但是非 2n 模同步計數器就不是這麼容易了,此時我們可以經由邏輯推理一步一步的找出圖 10.2-9 中組合邏輯的電路,大功即算告成。
J0
K0
Q0
Q0
CkJ1
K1
Q1
Q1
CkJ2
K2
Q2
Q2
CkJ3
K3
Q4
Q4
Ck
pulse
1
(圖 10.2-8)16 模同步計數器
T=Q2Q1Q
0
T=Q1Q0T=Q0T=1
2n模同步計數器正確輸出所需時間(Td)=正反器延遲時間(tfd) + 及閘的延遲時間(tgd)
2n 模同步計數器最大計數頻率(Fmax)=1/ Td
FF0
組合邏輯0
Q0
Q0 ~ Q
n
FFn
組合邏輯n
Qn
Q0 ~ Q
n
Pulse
狀態輸出
Ck0 Ckn
(圖 10.2-9) 非 2n 模同步計數器基本結構圖
柯建平 著 請勿侵犯著作權!-只限「數位邏輯」教科書購買學生及其教師下載列印
高斯圖書出版社-數位邏輯補充教材--第十章-9
從圖 10.2-9 的結構圖可知,每一個正反器的下一個狀態均由目前的計數狀態Q0 ~ Qn 來決定,因此只要設計出每一個計數狀態對下一個正反器狀態輸入端應有的組合邏輯電路,此同步計數器就可完成,舉例如下。
例 10.2-1
使用 J-K 正反器設計一只除 3 同步計數器。
步驟 1
列出計數狀態表如表 10.2-2,在此表中規定了三個狀態分別為 00、01、10,10 的下一個狀態又回到 00,依其順序的循環。
這裡必須說明的是三個狀態不一定要依 00、01、10 排列,排列為 10、11、00 也未常不可,只是我們必須明白我們怎麼安排,將來所設計完成的計數狀態就會怎麼變化。
步驟 2
依據 J-K 正反器真值表列出 J-K 正反器激勵表。
所謂正反器激勵表是只正反器的下一個時脈激發時,所欲轉變狀態應有的輸入設定,例如 J-K 正反器的 Q 希望從 0→0,則 J、K 有 0、1 和 0、0 兩種設定,故激勵表記為 0、×,「×」表示 0、1 都無所謂的意思。
步驟 3為了對映狀態表方便,可以先做一個參考用卡諾圖。
No. Q1 Q0
0 0 01 0 12 1 0
(表 10.2-2)除 3 狀態表
J K Qn+1
0 0 Qn
0 1 01 0 11 1 Qn
(表 10.2-3) J-K 真值表
Qn→Qn+1 J K0→0 0 ×0→1 1 ×1→0 × 11→1 × 0
(表 10.2-4) J-K 激勵表
0 1
0 No.0 No.1
1 No.2 No.3
Q0Q1
(圖 10.2-10)狀態參考卡諾圖
柯建平 著 請勿侵犯著作權!-只限「數位邏輯」教科書購買學生及其教師下載列印
高斯圖書出版社-數位邏輯補充教材--第十章-10
步驟 4依據計數狀態為每一個正反器的輸入端,也就是圖 10.2-9 組合邏輯電路的輸
出端做一卡諾圖。
No.0 由於狀態 00 的下一個狀態是 01,這表示 Q0 將由 0→1,而 Q1 將由 0→0,依 J-K 激勵表必須安排 J0=1、K0=×,而 J1=0、K1=×,分別將這些值填入 No.0 的 4 個卡諾圖中。
No.1 由於狀態 01 的下一個狀態是 10,這表示 Q0 將由 1→0,Q1 將由 0→1,依 J-K 激勵表必須安排 J0=×、K0=1,而 J1=1、K1=×,分別將這些值填入No.1 的 4 個卡諾圖中。
No.2 由於狀態 10 的下一個狀態是 00,這表示 Q0 將由 0→0,Q1 將由 1→0,依 J-K 激勵表必須安排 J0=0、K0=×,而 J1=×、K1=1,分別將這些值填入No.2 的 4 個卡諾圖中。
No.3 此狀態從不出現,所以全部以不顧慮項×填入。
步驟 5將每一個卡若圖化簡成布林代數式。
J0 = Q1'K0 = 1J1 = Q0
K1= 1
0 1
0 1 ×
1 0 ×
Q0Q1
(圖 10.2-11)J0 的卡諾圖
0 1
0 × 1
1 × ×
Q0Q1
(圖 10.2-12)K0 的卡諾圖
0 1
0 0 1
1 × ×
Q0Q1
(圖 10.2-13)J1 的卡諾圖
0 1
0 × ×
1 1 ×
Q0Q1
(圖 10.2-14)K1 的卡諾圖
柯建平 著 請勿侵犯著作權!-只限「數位邏輯」教科書購買學生及其教師下載列印
高斯圖書出版社-數位邏輯補充教材--第十章-11
步驟 6將布林代數式接成電路圖。
連接完化簡後的布林代數式,請別忘了將所有正反器的 Ck 接到計數脈波輸入端,要知道不送脈波計數狀態是不會改變的。
現在我們已經完整介紹了同步計數器的設計過程,如果想要使用其它型態的正反器來完成計數器也是可以的,但是必需參考到各種正反器的激表,從下面的表列中,我們將它們與表 10.2-4 的 J-K 激勵表比較,顯然的 J-K 激勵表中的隨意項(×)比較多,這對於計數器設計時的化簡是很有幫助的,所以用 J-K 正反器設計出來的電路,邏輯閘可以較少。
10.2-3 環式計數器
(1)N 模環式計數器N 模環式計數器需要 N 個正反器,圖 10.3-1 是一個 4 模環式計數器,以 J-K
J0
K0
Q0
Q0
CkJ1
K1
Q1
Q1
Ck
pulse
1
(圖 10.2-15) 3 模同步計數器
1
Qn→Qn+1 S R0→0 0 ×0→1 1 01→0 0 11→1 × 0
(表 10.2-5) S-R 激勵表
Qn→Qn+1 D0→0 00→1 11→0 01→1 1
(表 10.2-6) D 激勵表
Qn→Qn+1 T0→0 00→1 11→0 11→1 0
(表 10.2-7) T 激勵表
J0
K0
Q0
Q0
CkJ1
K1
Q1
Q1
CkJ2
K2
Q2
Q2
CkJ3
K3
Q3
Q3
Ck
pulse
0啟始設定
Pr
Clr ClrClr
(圖 10.3-1) 4 模環式計數器
柯建平 著 請勿侵犯著作權!-只限「數位邏輯」教科書購買學生及其教師下載列印
高斯圖書出版社-數位邏輯補充教材--第十章-12
正反器接成了 D 型正反器型態,當啟始設定開關按下時,僅有 Q0 預置為 1,其餘正反器被清除為 0,當啟始設定放開後,每送一個脈波,將依 1000→0100→0010→0001 再回到 1000 的狀態循環,故稱為環式計數器。
(2)2N 模強森計數器若將環式計數器最後一級反向接回第一級正反器輸入端,則計數模態(M)=2×
正反器個數(N),稱為 2N 模強森(Johnson)計數器,以圖 10.3-2 為例的計數狀態為:
(3)奇數模強森計數器若將 2N 模強森計數器末端正反器的回授線提前到前一級正反器,則計數模態
(M)=2×正反器個數(N)-1,稱為奇數模強森計數器或 2N-1 模計數器,圖 10.3-3為 4 個正反器的奇數模強森計數器,與 2N 模強森計數器相比少掉了 1111 這個狀態。
→0000→1000→1100→1110→1111→0111→0011→0001
J0
K0
Q0
Q0
CkJ1
K1
Q1
Q1
CkJ2
K2
Q2
Q2
CkJ3
K3
Q3
Q3
Ck
pulse
(圖 10.3-2) 8 模強森計數器
→0000→1000→1100→1110→0111→0011→0001
J0
K0
Q0
Q0
CkJ1
K1
Q1
Q1
CkJ2
K2
Q2
Q2
CkJ3
K3
Q3
Q3
Ck
pulse
(圖 10.3-3) 7 模強森計數器
柯建平 著 請勿侵犯著作權!-只限「數位邏輯」教科書購買學生及其教師下載列印
高斯圖書出版社-數位邏輯補充教材--第十章-13
補充資料(十)1. 上/下數非同步計數器。
一個負緣觸發的非同步計數器,以 Q 輸出為觸發來源,則此計數器為上數,若以 Q'輸出為觸發來源,則此計數器為下數。圖 S-1 為 Q 及 Q'做了一個選擇電路,當 Up/Down=1 則 Q 輸出到 Ck 形成上數,Up/Down=0 則 Q'輸出到 Ck 形成下數。
2. 左/右移暫存器。圖 S-2 是一個三位元左/右移暫存器,當 R/L=1 為左移,R/L=0 為右移。
(圖 S-1) 上/下數非同步計數器
J0
K0
Q0
Q0
Ck
1
J1
K1
Q1
Q1
Ck
1
pulse
Up/Down
(圖 S-2) 左/右移暫存器
clock
R/L
D2
CkD1 Q1
CkQ2D0
CkQ0
L Input
R Input
柯建平 著 請勿侵犯著作權!-只限「數位邏輯」教科書購買學生及其教師下載列印
高斯圖書出版社-數位邏輯補充教材--第十章-14
No. Q0 Q3 Q2 Q1
0 0 0 0 01 0 0 0 12 0 0 1 03 0 0 1 14 0 1 0 05 1 0 0 06 1 0 0 17 1 0 1 08 1 0 1 19 1 1 0 0
(表 S-2)先除 5 後除 2
3. 7490 是一只內含除 2 及除非同步計數器,可構成的除 10 非同步計數器。
圖 S-3 顯示 7490 是一只除 2 及除 5 電路,CP0 是除 2 正反器的時脈輸入端,CP1 是除計數器的時脈輸入端,R9 及閘的兩輸入端為 1 時,可將 Q3~Q0 設定為1001, R0 及閘的兩輸入端為 1 時,可將Q3~Q0 清除為 0000。
若接成先除 2 再除 5 電路如圖 S-4,則可得到如表 S-1,以二進碼進位的除 10 計數器。
若接成先除 5 再除 2 電路如圖 S-5,則可得到如表 S-2,非二進碼進位的除 10 計數器,這種模式用於除頻電路時,在 Q0 輸出的波形是對稱的方波。
4. 以 7490 做除 6 計數器
No. Q3 Q2 Q1 Q0
0 0 0 0 01 0 0 0 12 0 0 1 03 0 0 1 14 0 1 0 05 0 1 0 16 0 1 1 07 0 1 1 18 1 0 0 09 1 0 0 1
(表 S-1)先除 2 後除 5
Q0
CP0
÷2
Q 1 Q 2 Q 3
CP1
÷5R9
1 2
R0
1 2
(圖 S-3) 7490 結構圖
Q0
CP0
÷2
Q 1 Q 2 Q 3
CP1
÷5R9
1 2
R0
1 2
(圖 S-4) 先除 2 後除 5"0"
Pulse
Q0
CP0
÷2
Q 1 Q 2 Q 3
CP1
÷5R9
1 2
R0
1 2
(圖 S-5) 先除 5 後除 2
Pulse
"0"
柯建平 著 請勿侵犯著作權!-只限「數位邏輯」教科書購買學生及其教師下載列印
高斯圖書出版社-數位邏輯補充教材--第十章-15
7490 做除 6 計數器可以先將 7490 連接成二進碼的除十計數器,再將 6 這個狀態檢測出來回授至清除端,由於 0110 中 Q2Q1=11 是 0~6 狀態中獨一無二的,所以用 Q2Q1 回授即可。
5. 以 J-K 負緣觸發正反器做(6~1)下數除 6 計數器
J-K 負緣觸發正反器做)下數計數器,必須將 Q'接至下一正反器的 Ck,由 6數到 1 表示 0 狀態時要還原為 6 狀態,故以 OR 閘檢測 Q2Q1Q0 =000 時,將 Q2Q1
設定為 1,Q0 清除為 0。
Q0
CP0
÷2
Q 1 Q 2 Q 3
CP1
÷5R9
1 2
R0
1 2
(圖 S-6) 7490 除 6 電路
"0"
PulseNo. Q3 Q2 Q1 Q0
0 0 0 0 01 0 0 0 12 0 0 1 03 0 0 1 14 0 1 0 05 0 1 0 1
6/0 0/0 1/0 1/0 0/0
(圖 S-7) 7490 下數除 6 電路
J0
K0
Q0
Q0
Ck
1
J1
K1
Q1
Q1
CkJ2
K2
Q2
Q2
Ckpulse
Pr Pr Pr
Clr Clr Clr
No. Q2 Q1 Q0
6 1 1 05 1 0 14 1 0 03 0 1 12 0 1 01 0 0 1
0/6 0/1 0/1 0/0
柯建平 著 請勿侵犯著作權!-只限「數位邏輯」教科書購買學生及其教師下載列印
高斯圖書出版社-數位邏輯補充教材--第十章-16
歸納與整理(十)1. 暫存器依其資料輸入/輸出的型式可分為:
a. 串列輸入/串列輸出(Serial-In/Serial-Out),簡稱 SISO。b. 串列輸入/並列輸出(Serial-In/Parallel-Out),簡稱 SIPO。c. 並列輸入/串列輸出(Parallel -In/ Serial -Out),簡稱 PISO。d. 並列輸入/並列輸出(Parallel -In/ Parallel -Out),簡稱 PIPO。
2. 串列輸入/串列輸出適合距離較長的傳輸,但是速率較慢。3. 串列輸入/並列輸出又稱為移位暫存器。4. 電腦用的滑鼠傳給電腦介面的資料是串列的,但是經過介面卡電路送給電腦
內部的資料卻是並列的。5. 數位式搖控器都會有並列輸入/串列輸出的裝置。6. 並列輸入/並列輸出暫存器廣泛的應用在電子計算機的記憶電路中,可暫存
程式演算過程中的資料,而 Load 控制線在計算機的電路中常被稱為讀/寫(R/W)控制線。
7. 漣波計數器是一種非同步計數器,基本結構是由 T 型正反器。8. 漣波計數器正確輸出所需時間(Td)=正反器延遲時間(tfd)×正反器之個數(N)。9. 漣波計數器最大計數頻率(Fmax)=1/ 漣波計數器正確輸出所需時間(Td)。10. 若將某連續脈波由計數器的 Ck 端輸入,在計數器的輸出端頻率為 Ck 端的
1/N 倍,計數器在這種應用場合又可稱為除頻電路。11. 若將漣波計數器中的負緣觸發正反器改成正緣觸發,將使其計數模式變成下
數型態。12. 若將漣波計數器中的觸發源由 Q 改成 Q'觸發,則本來為上數計數模式將變
成下數計數模式。13. 一個非 2n 模漣波計數器,其計數模態為 M 時,則正反器的數量 n 必須滿足
2n > M。14. 一個除 12 模漣波上數計數器,計數狀態為 0~11,狀態為 12 發生時將產生正
反器清除使計數狀態等於 0。15. 非 2n 模漣波計數器正確輸出所需時間(Td)=正反器延遲時間(tfd)×正反器之個
數(N) + 狀態檢查電路的延遲(tgd)。16. 同步計數器中所有正反器的時脈輸入端(Ck)都接在一起,而且必然是計數脈
波的輸入端。17. 2n 模同步計數器最大計數頻率(Fmax)= 1/{正反器延遲時間(tfd) + 及閘的延遲
時間(tgd)}
18. 所謂正反器激勵表是只正反器的下一個時脈激發時,所欲轉變狀態應有的輸入設定。
19. J-K 正反器的 Q 希望從 0→0,則 J、K 有 0、1 和 0、0 兩種設定,故激勵表記為 0、×,「×」表示 0、1 都無所謂的意思。
柯建平 著 請勿侵犯著作權!-只限「數位邏輯」教科書購買學生及其教師下載列印
高斯圖書出版社-數位邏輯補充教材--第十章-17
20. J-K 激勵表中的隨意項(×)比較多,這對於計數器設計時的化簡是很有幫助的,所以用 J-K 正反器設計出來的電路,邏輯閘可以較少。
21. 2n 模同步計數器的結構有一個簡單的脈絡可循,Q0 正反器接成 T 型正反器,且令 T=1 即可,Q1 正反器的 T= Q0,Q2 正反器的 T= Q0 Q1,Q3 正反器的T= Q0 Q1 Q2,如此類推。
22. 每一個正反器的下一個狀態均由目前的計數狀態 Q0 ~ Qn 來決定,因此只要設計出每一個計數狀態下對正反器輸入端應有的組合邏輯電路,此同步計數器就可完成。
23. N 模環式計數器需要 N 個正反器。24. 計數模態(M)=2×正反器個數(N),稱為 2N 模強森(Johnson)計數器。25. 計數模態(M)=2×正反器個數(N)-1,稱為奇數模強森計數器或 2N-1 模計數器。26. 上/下數非同步計數器可借由一只 AND-OR 電路來選則 Q 或 Q'為觸發源。27. 非同步除 N 及除 M 電路,串聯使用後等於除 N×M 電路。28. 各種正反器的激勵表。
Qn→Qn+1 S R0→0 0 ×0→1 1 01→0 0 11→1 × 0
S-R 激勵表
Qn→Qn+1 D0→0 00→1 11→0 01→1 1
D 激勵表
Qn→Qn+1 T0→0 00→1 11→0 11→1 0
T 激勵表
Qn→Qn+1 J K0→0 0 ×0→1 1 ×1→0 × 11→1 × 0
J-K 激勵表
柯建平 著 請勿侵犯著作權!-只限「數位邏輯」教科書購買學生及其教師下載列印
高斯圖書出版社-數位邏輯補充教材--第十章-18
問題與討論(十)1. 移位暫存器改用 S-R 正反器來做,該如何連接?2. 漣波計數器可以用 D 型正反器設計嗎?3. 一個下數非 2n 模漣波計數器,想要從 9 數到 3 該選用什麼條件的正反器來設
計?(例如該不該有預置和清除端)4. 7 模上數漣波計數器,從 0 數到 6,狀態 7 出現時產生清除,未什麼用 LED
監視輸出狀態時看不到 111 呢?5. 設計同步計數器,每一個狀態不一定要依二進碼排列,這表示是不是可以安
排出 2→5→7→3→6 狀態變化的計數器?6. 市面上有除 10 的計數器 IC,沒有除 100 的 IC,一定要自行用正反器設計嗎?7. 電子錶從 01:00 變化到 12:59 表示內部「分」的控制有一個除幾的計數器?
「時」的控制又有一個除幾的計數器?8. 將上數同步計數器中的負緣觸發正反器改成正緣的,計數狀態會改變嗎?9. 圖 D-1 與圖 D-2 均為負緣觸發的除 16 計數器,想要將它們合成除 256 的計
數器,該怎麼連接?10. 圖 D-3 與圖 D-4 為正緣觸發的除 16 計數器,想要將它們合成除 256 的計數
器,右該怎麼連接?
Q0 Q1 Q2 Q3
CkClock
(圖 D-1)
LSB MSB
Q0 Q1 Q2 Q3
Ck
(圖 D-2)
LSB MSB
Q0 Q1 Q2 Q3
CkClock
(圖 D-3)
LSB MSB
Q0 Q1 Q2 Q3
Ck
(圖 D-4)
LSB MSB
柯建平 著 請勿侵犯著作權!-只限「數位邏輯」教科書購買學生及其教師下載列印
高斯圖書出版社-數位邏輯補充教材--第十章-19
學後評量(十)( )1. 數位式搖控器都會有(1)SISO (2)SIPO (3)PISO (4)PIPO 的裝置。
( )2. 與滑鼠連接的介面會有(1)SISO (2)SIPO (3)PISO (4)PIPO 的裝置。
( )3. 圖 T-1 是一個 4 位元除 16 的漣波計數器,當 Clock 的方波頻率為 8KHz時,Q2 的頻率為(1)16KHz (2)24KHz (3)1KHz (4)0.5KHz。
( )4. 除 16 的漣波計數器所使用正反器的延遲時間為 50nS,則此計數器最大計數頻率為(1)20MHz (2)50MHz (3)10MHz (4)5MHz。
( )5. 除 16 的同步計數器所使用正反器及一只邏輯閘的延遲時間均為 50nS,則此計數器最大計數頻率為(1)20MHz (2)50MHz (3)10MHz (4)5MHz。
( )6. 圖 T-2 中 Q0 Q1 Q2 Q3的啟始值為 0000 經過三個 Clock 脈波後,Q0 Q1 Q2
Q3 為(1)0001 (2)0010 (3)1110 (4)0111。
( )7. 圖 T-3 中 Q0 Q1 =10 的下一個狀態為(1)00 (2)01 (3)10 (4)11。
( )8. 圖 T-4 中 Q0 Q1 =10 的下一個狀態為(1)00 (2)01 (3)10 (4)11。
Q0 Q1 Q2 Q3
CkClock
(圖 T-1)
LSB MSB
Clock
(圖 T-2)
1
並列輸出
D0 Q0
Q0
CkD1 Q1
Q1
CkD2 Q2
Q2
CkD3
K3
Q3
Q3
Ck
Q0
0
Q1
0
Q2
0
Q3
0
J0
K0
Q0
Q0
Ck
1
J1
K1 Q1
Ck
1
pulse
(圖 T-3)
Q1 J0
K0
Q0
Q0
Ck
1
J1
K1 Q1
Ck
1
pulse
(圖 T-4)
Q1
柯建平 著 請勿侵犯著作權!-只限「數位邏輯」教科書購買學生及其教師下載列印
高斯圖書出版社-數位邏輯補充教材--第十章-20
( )9. 漣波計數器是一種非同步計數器,基本結構是 (1) S-R (2)T (3) D (4)J-K型正反器。
( )10. 一個 37 模計數器,則正反器的數量至少為(1) 4 (2)6 (3)17 (4)37 個。
( )11. 一個 10 模漣波上數計數器從 0 開始計數,則在(1)0 (2)1 (3)9 (4)10 狀態時產生正反器清除回到 0。
( )12. 圖 T-5 中 Clear 動作時,將令 Q0 Q1 Q2 Q3 =0000,則此電路為(1)除 6 (2)除 8 (3)除 9 (4)除 10 電路。
( )13. J-K 正反器的 Q 希望從 0→1,則 J、K 設定為(1)0、× (2) 1、× (3) ×、1 (4) ×、1。
( )14. S-R 正反器的 Q 希望從 1→1,則 S、R 設定為(1)0、× (2) 1、0 (3) 0、1 (4) ×、1。
( )15. J-K 正反器的 Q 希望從 1→0,則 J、K 設定為(1)0、× (2) 1、× (3) ×、1 (4) ×、1。
( )16. S-R 正反器的 Q 希望從 1→0,則 S、R 設定為(1)0、× (2) 1、0 (3) 0、1 (4) ×、1。
( )17. 8 模環式計數器需要(1)3 (2) 4 (3)6 (4)8 個正反器。( )18. 16 模強森(Johnson)計數器需要(1)3 (2) 4 (3)6 (4)8 個正反器。( )19. 15 模強森計數器計數器需要(1)3 (2) 4 (3)6 (4)8 個正反器。
( )20. 4 位元並列輸入/並列輸出暫存器,載入 4 位元資料需要(1)1 (2)2 (3)3 (4)4 個時脈。
( )21. 圖 T-6 計數器的時脈為 6KHz,則 Q1 端的頻率為(1)18 KHz (2) 2 KHz (3) 1.5 KHz (4)2.5KHz。
Q0 Q1 Q2 Q3
CkClock
(圖 T-5)
LSB MSB
Clear
J0
K0
Q0
Q0
Ck
1
J1
K1 Q1
Ck
(圖 T-6)
Q1
柯建平 著 請勿侵犯著作權!-只限「數位邏輯」教科書購買學生及其教師下載列印
高斯圖書出版社-數位邏輯補充教材--第十章-21
( )22. 圖 T-7 的 Q0 Q1 Q2 Q3 =0111 的下一個狀態是(1)1111 (2)0011 (3)1011 (4)1110。
( )23. 圖 T-7 計數器共有(1)4 (2)8 (3)15 (4)16 個狀態。
( )24. 圖 T-8 計數器共有(1)4 (2)8 (3)15 (4)16 個狀態。
( )25. 圖 T-8 計數器 Q0 Q1 Q2 Q3 不會出現的狀態為(1)1111 (2)0011 (3)1000 (4)1110。0000→1000→1100→1110→0111→0011→0001
( )26. 圖T-8計數器Q0 Q1 Q2 Q3 =1110的下一個狀態是(1)1111 (2)0111 (3)0001 (4)0110。
( )27. 圖 T-9 一共有(1)3 (2)5 (3)7 (4)10 個計數模態。
( )28. 圖 T-9 的 Q0 輸出方波責任週期為(1)10% (2)20% (3)50% (4)70%。
( )29. 圖 T-9 的 Q1 Q2 Q3 Q0 =0011 的下一個狀態是(1)1100 (2)0111 (3)1011 (4)0000。
( )30. 除 12 計數器可以用(1)除 6 和除 6 (2)除 8 和除 4 (3)除 6 和除 2 (4)除 24和除 2 兩只計數器漣波串接而成。
J0
K0
Q0
Q0
CkJ1
K1
Q1
Q1
CkJ2
K2
Q2
Q2
CkJ3
K3
Q3
Q3
Ck
pulse
(圖 T-7)
J0
K0
Q0
Q0
CkJ1
K1
Q1
Q1
CkJ2
K2
Q2
Q2
CkJ3
K3
Q3
Q3
Ck
pulse
(圖 T-8)
Q0
CK0
÷2
Q 1 Q 2 Q 3
CK1
÷5Clock
(圖 T-9)
柯建平 著 請勿侵犯著作權!-只限「數位邏輯」教科書購買學生及其教師下載列印
高斯圖書出版社-數位邏輯補充教材--第十章-22
學習與生活
-----------電子輪盤-----------王皓是東部某高職二年級的學生,沒考上好高中讓他耿耿於懷,雖然就讀於
高職但是對於學習技術卻不熱衷,認為高中後再讀一般大學才有前途,直到他學習數位邏輯之後,突然頓悟到工科的教育讓他的思路不再天馬行空,邏輯的思考訓練,更讓他樂於推理與判斷,開始喜歡動腦設計一些小電路,讓他覺得生活不但充滿樂趣也有多了一份成就感。
在放寒假前不久,他繪製了一張電子輪盤的電路,並向老師說明了每一方塊圖中的功能,希望老師能給他一些指點和支援。
-------功能說明-------脈波產生電路:產生連續的時脈,週期約為 0.5 秒,用於控制輪盤轉動
時 LED 變化的速度。計數時間控制:控制 BCD 計數器開啟的時間,好讓輪盤轉動幾秒後停
止。BCD 計數器: 0~9 計數。BCD 解碼器:將 BCD 碼解碼至 10 只 LED。
限流電阻:配合解碼器輸出電壓限制 LED 電流在 10~15mA。Sw:啟動計數時間控制。
LED:排成圓形,可指示輪盤轉動及最後停留的位置。
BCD(除十)計數器
BCD 解碼器
脈波產生電路
計數時間控制
Sw
LED0~9
限流電阻
柯建平 著 請勿侵犯著作權!-只限「數位邏輯」教科書購買學生及其教師下載列印
高斯圖書出版社-數位邏輯補充教材--第十章-23
老師看了電路圖之後,對王皓稱讚著說:「你真懂得學以致用啊!教過你的都拿來用了,脈波產生電路沒教過你也會。」
王皓:「脈波產生電路實習課時學過一點,請老師看看可以這樣用嗎?」
老師:「很好啊,這是一個無穩態電路,拿來產生連續性的脈波相當正確。」
王皓:「但是我還不清楚脈波週期如何計算?」
老師:「這種 CMOS 無穩態電路的週期隨著 IC 會有所差異,大約為 R1C1的兩倍,R2 用於改善波形用的,選擇十倍 R1 的電阻值就可以了。」
王皓:「還有計數時間控制怎樣做才會簡單?」
老師:「如果計數器是 CMOS 電路,你可以用下圖電路達到目的,因為開關壓下時 Enable=0,計數器開始計數,開關放開時電容開始充電,但是充電到Enable=1 的位準由 RC 的大小來控制,這段時間剛好用來讓計數器動作。」
王皓:「我懂了,最後再請教老師一個問題,BCD 計數器和解碼器,有沒有現成的 IC 可以應用?」
老師:「你可以參考 CD4017B 這只 IC,BCD 計數器和解碼器都做在一起了。」
王皓認真的繪下了老師幫他查到的資料(見圖 L10-3),向老師道謝後,露出滿足的表情離開了。
寒假就快到了,同學們是不是可以比王皓快一步做出來呢?
R2 R1C1
至計數器時脈輸入
端(圖 L10-1)
+V
R
CSw
Enable 計數器
(圖 L10-2)
柯建平 著 請勿侵犯著作權!-只限「數位邏輯」教科書購買學生及其教師下載列印
高斯圖書出版社-數位邏輯補充教材--第十章-24
CD4017B 簡介
BCD 計數器
BCD 解碼器
Clock
Enable
Reset
Carry out
0 1 2 3 4 5 6 7 8 9
A B C D
3 2 4 7 10 1 5 6 9 11 12
14
13
15
(圖 L10-3)CD4017B 接腳及功能圖
Clock:時脈輸入端。
Enable:計數允許端,以"0"動作。
Reset:計數器清除端,以"1"動作。
Carry out:計數 0~4 為"1",5~9 為"0"。
0~9:BCD 解碼輸出端。
ClockReset
Enable
0
1
2
3
4
5
6
7
8
9Carry out