Transcript 6.1 暫存器
暫存器與計數器 Chapter 6 6.1 暫存器 時控序向電路 ㄧ群正反器及組合邏輯閘 加以連接形成回授網路 正反器 + 組合邏輯閘 (必要的) (可選的) 暫存器: ㄧ群正反器 邏輯閘決定這個資料如何轉移至暫存器。 計數器 (counter) : 本質上是一個暫存器,依照預定的順序轉變其二進位狀態。 2 6-1 暫存器 n-位元暫存器 一個 n 位元的暫存器是由 n 個 正反器所構成,可儲存n 位元的 二進位資訊 四位元暫存器:圖6-1 3 具有一載入控制輸入的四位元資料儲存暫存器 load' load 4 移位暫存器 6-2 移位暫存器 一個可將儲存在每一胞元的二元資料以所指定之方向移位至 其相鄰胞元的暫存器稱為移位暫存器 (shift register)。 最簡單的移位暫存器僅僅使用正反器,如圖6-3所示。 1 1 0 1 1 0 5 1 1 0 1 串列轉移與並行轉移形成對照 串列轉移: 一個數位系統一次轉移或處理一個位元的資料時,則此系 統被稱為操作於串列模式。 從原來的暫存器移位至預定的暫存器。 並行轉移: 並行轉移則是在相同時間轉移暫存器內的全部位元資料。 6 範例:暫存器 A 串列轉移至暫存器 B 7 範例:暫存器 A 串列轉移至暫存器 B 8 利用D型正反器的串列加法 1 0101 1010 0 0 1 1 0011 ?001 9 1 0 1 0 1 利用JK正反器的串列加法 JQ = x y KQ = x y = (x + y) S =xyQ 10 電路圖 JQ = x y KQ = x y = (x + y) S =xyQ Ci 11 通用移位暫存器 (universal shift register) 單向移位暫存器 (unidirectional shift register) 雙向移位暫存器 (bidirectional shift register) 通用移位暫存器 (universal shift register) : 具有雙向移位功能且具備並列載入能力的暫存器 12 通用移位暫存器具有下列功能: 1. 一個清除 (clear) 控制將暫存器清除為0。 2. 一個時脈 (clock) 輸入使所有操作同步化。 3. 一個右移 (shift-right) 控制用以啟動向右移位操作,以及串列 輸入及輸出 (serial input and output) 線配合成可向右移位。 4. 一個左移 (shift-left) 控制用以啟動向左移位操作,以及串列 輸入及輸出 (serial input and output) 線配合成可向左移位。 5. 一個並列載入 (parallel-load) 控制以啟動並列轉移,及有 n 條 輸入線配合提供並列轉移。 6. n條的並列輸出線。 7. 在時脈不斷供應之下,有一個控制狀態可使暫存器內的資訊 維持不變。其他的移位暫存器可能只有前述的部分功能,但 至少具備一種移位操作功能。 13 範例: 4-位元 通用移位暫存器 14 A2 A0 15 A1 功能表 16 6-3 漣波計數器 計數器 (counter): 暫存器依據輸入時脈,行經規定的狀態順序,稱為計 數器 (counter)。 依據應用的輸入脈波而定 輸入脈波:輸入脈波可能是時脈脈波或是從一些外在來源 所產生 狀態順序:狀態的順序可能依照二進位數字順序,或是任 何其他的狀態順序。 依照二進位數字順序的計數器,稱為二進位計數器 (binary counter)。 17 計數器的分類為兩種: 1. 漣波計數器(Ripple counters) 在漣波計數器中,正反器的輸出轉變被當作是其他正反器 的觸發來源。 無共同的時脈脈波 (非同步) 2. 同步計數器(Synchronous counters) 在同步計數器中,所有正反器的輸入 C 接受共同的時脈。 18 範例:四位元的二進位漣波計數器 二進位計數順序: 四位元 19 10 10 20 BCD漣波計數器 21 電路圖 22 串接BCD計數器可組成多位數的十進位計數器 三位數的十進位計數器:三個串接的BCD計數器 23 6-4 同步計數器 同步計數器 同步計數器的時脈脈波同時加至全部正反器的輸入,同時 觸發所有的正反器。 設計程序 應用與同步序向電路相同的設計程序 同步計數器比一般的同步序向電路簡單 24 四位元同步二進位計 數器 C_en A0 C_en A0 A1 C_en A0 A1 A2 25 up 四位元上-下數二進位 計數器 down up A0 down A'0 down A'0 A'1 down A'0 A'1 A'2 26 up A0 A1 BCD計數器 簡化後的函數: 27 具有並列載入的4位元二進位計數器 28 load count load' c_en c_en A0 async 29 具有並列載入的計數器可用來產生任何想要的計數順 序。 例如:圖6-15是並列載入計數器用來產生兩個BCD計數的 兩種方式。 30 6-5 其他計數器 計數器: 計數器可加以設計,以達到產生所需的狀態順序。 除以 N 的計數器 (就像模數 N 計數器) 一個除以 N 的計數器 (就像模數 N 計數器) 即以 N 個計 數為重複順序的計數器。 此順序可能依照二進位計數或其他任意的順序。 31 n個正反器 2n 個二進位狀態 未使用狀態 未被使用來指定FSM的狀態稱之 未使用的狀態可被視為不理會條件或可被指定明確的次一狀 態。 自我修正計數器 一旦電路設計並組成,必須確認電路進入合理的狀態之一, 而可以正常動作。 必須加以研究,以判斷未使用的狀態對電路的影 響。 32 範例 兩個未使用的狀態: 011 & 111 簡化後正反器輸入方程式: JA = B, KA = B JB = C, KB = 1 JC = B, KC = 1 33 電路的邏輯圖與狀態圖 簡化後正反器輸入 方程式: JA = B, KA = B JB = C, KB = 1 JC = B, KC = 1 34 Lab 4 4-bit binary counter. 請務必使用D型正反器. 35