Ch10-大型系统的设计_第1页
Ch10-大型系统的设计_第2页
Ch10-大型系统的设计_第3页
Ch10-大型系统的设计_第4页
Ch10-大型系统的设计_第5页
已阅读5页,还剩90页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第10章大型系統的設計10.1導論10.2暫存器轉移邏輯10.3演算法狀態機的設計10.4控制單元的製作10.1導論小型數位系統設計特性較少數目的輸入與輸出端,並且僅具有少數的狀態許多實用系統須完成的設計要求具有極大數目的輸入與輸出相當大數目的狀態來

/10.1導論導論(續)系統層次設計的基本觀念將複雜的系統以模組方式來設計將系統分割成較小而容易設計的功能模組,然後連接這些模組完成系統設計

/10.1導論大型數位系統模型使用下圖模型來簡化設計程序大型數位系統都是由資料處理單元與控制單元組合而成圖10.1大型數位系統模型

/10.1導論大型數位系統模型(續)處理單元在輸入端獲得資料並以控制單元所定義的方式來處理資料然後產生輸出以代表此系統的響應

/10.1導論大型數位系統模型(續)控制單元確定資料處理單元能以正確的方式動作操作方式是傳送正確的順序控制訊號到資料處理單元,以啟動處理的每個步驟接受資料處理單元所反饋的狀態訊號,以修正其內部動作,進而改變控制訊號能從系統外部接受資訊而影響處理的方式,產生的控制訊號可為其他外部系統使用

/10.1導論演算法狀態機圖以硬體演算法指定數位系統的控制序列與資料處理工作演算法由一組用來指示如何解決問題的程序組成硬體演算法用已知設備解決問題的程序硬體演算法以特別發展的流程圖來定義此特殊流程圖稱為演算法狀態機圖(AlgorithmicStateMachine,簡稱ASM)

/10.1導論演算法狀態機圖(續)狀態機是序向電路的另一稱法(亦稱序向機)數位系統的基本架構演算法狀態機圖(ASM圖)指明數位系統的輸入與輸出資料關係描述控制器中狀態與事件從一狀態轉移到另一狀態的時序關係

/10.1導論10.2暫存器轉移邏輯暫存器是構成數位系統的最基本元件系統層次設計上暫存器與暫存器操作是系統的基本組成要素數位系統能以暫存器及其動作來說明暫存器中的基本動包含移位、計數、載入、與清除等暫存器轉移暫存器上的資料流動及工作處理

/10.2暫存器轉移邏輯

暫存器轉移邏輯(續)暫存器轉移操作的構成要素系統中的暫存器組成及其功能暫存器資料的運算方式系統的控制流程動作

/10.2暫存器轉移邏輯

暫存器轉移邏輯(續)以符號表示暫存器,由運算動作介紹暫存器轉移的特性使用類似撰寫程式的運算式及敘述表示暫存器轉移可說明不同元件間的連繫功能

/10.2暫存器轉移邏輯

10.2.1暫存器轉移暫存器的表示方法

圖10.2暫存器的表示方法

/10.2暫存器轉移邏輯

暫存器間的資料轉移以轉移運算子表示符號形式表示為:敘述R1←R2代表暫存器R2的資料轉移至暫存器R1R1的內容被R2的內容所取代R2的值在轉移後並不改變表示來源暫存器的輸出與目的暫存器的輸入間有可用的轉移電路目的暫存器具有並列載入的功能

/10.2暫存器轉移邏輯

特定情況的轉移使用If-Then敘述表示特定情況下的轉移If(T1=1)Then(R1←R2)T1是控制電路中產生的控制訊號利用控制函數將暫存器轉移中的控制變數分開T1:R1←R2控制函數以冒號作結束當T1=1時

R2至R1的轉移動作才發生圖10.3敘述T1:R1←R2的電路製作

/10.2暫存器轉移邏輯

暫存器轉移邏輯的基本符號表10.1暫存器轉移邏輯的基本符號

/10.2暫存器轉移邏輯

10.2.2微運算微運算是將暫存器資料加以運算的基本動作數位系統使用的微運算可分為

轉移微運算、算術微運算

邏輯微運算、移位微運算轉移微運算:資料傳送過程中不會改變其值其他三種微運算:處理過程中資料值會改變

/10.2暫存器轉移邏輯

算術微運算基本的算術微運算加法,減法,遞增,遞減表10.2算術微運算

/10.2暫存器轉移邏輯

邏輯微運算邏輯微運算可將位元值改變,清除,或設定成新的值表10.3邏輯與移位微運算

/10.2暫存器轉移邏輯

移位微運算移位微運算使用在資料序向傳送亦可使用在算術,邏輯,與控制運算暫存器值向左移位或向右移位R2←ShlR2,R1←ShrR1表示暫存器R2向左移一位元,暫存器R1向右移一位元。終端位元接受串列輸入來的位元資料右移位的終端位元是最左(最高)位元,左移的終端位元是最右(最低)位元邏輯移位中,通常終端位元接受0

/10.2暫存器轉移邏輯

移位微運算(續)旋轉移位操作其串列輸出便接至串列輸入,資料因而不會流失算術移位將有號數向左或向右移位的運算必須使正負符號的位元值維持不變算術左移位將有號數乘2算術右移位將有號數除以2

/10.2暫存器轉移邏輯

10.3演算法狀態機的設計方法資料處理單元與控制單元關係的數位系統結構/10.3

演算法狀態機的設計方法

圖10.4數位系統結構

演算法狀態機圖以演算法狀態機圖(ASM)做數位邏輯設計序向程序控制演算法定義序向機狀態時的所有可能序列序向機的次態是由控制演算法、現態及演算法在該狀態時的輸入來決定序向控制演算法為序向性質且在任何指定時刻都能以其狀態來描述其次態則取決於該時刻的現態與輸入/10.3

演算法狀態機的設計方法

10.3.1基本概念演算法狀態機圖與傳統的流程圖都是使用由上而下的設計方法,但在解釋上有點不同傳統流程圖在描述演算法的程序步驟順序與判別路徑時,不用考慮其時序關係演算法狀態機圖除了描述處理的順序外,也描述序向控制器狀態間的時序關係/10.3

演算法狀態機的設計方法

基本概念(續)演算法狀態機圖與狀態圖的關連針對所要的行為而作的圖形描述演算法狀態機圖的盒狀符號內包含簡潔的敘述以控制訊號與狀態訊號對系統的動作與決策進行描述最後得到資料處理單元與控制單元所組成的完整設計此時可使用固定或可規劃的邏輯電路來實作/10.3

演算法狀態機的設計方法

ASM圖的元素圖10.5ASM圖的元素/10.3

演算法狀態機的設計方法

ASM圖的構造ASM圖是由狀態盒,決策盒與條件輸出盒彼此間以箭號相互連結而組成的流程圖完整而清楚的於暫存器層次描述由資料處理單元與控制單元組成的序向機操作行為ASM圖以類似於狀態圖的方式定義序向機控制單元的狀態行為資料處理單元的行為可由控制單元的行為推導出來資料處理單元可算是由ASM圖定義/10.3

演算法狀態機的設計方法

ASM圖的構造(續)ASM圖與狀態圖基本上是可互換的ASM圖中的狀態盒相當於狀態圖中的狀態決策盒與條件輸出盒組合成狀態圖中兩個狀態間的連線與標記ASM圖若只具有無條件輸出相當於莫耳型電路ASM圖若只具有條件性輸出相當於米利型電路/10.3

演算法狀態機的設計方法

莫耳型控制單元只有狀態盒與決策盒就能決定莫耳型控制單元的行為因為輸出的控制訊號是無條件的由現態決定,所有必要的行動可以進入狀態盒內莫耳型實例JK正反器/10.3

演算法狀態機的設計方法

圖10.6JK正反器的描述

10-29米利型控制單元ASM圖中須要使用條件輸出盒只有在某些輸入變數於特定的數值時,序向機才會對發生於某些狀態中的輸出動作加以指定條件輸出盒的路徑是由某一狀態盒(Si)穿過一個或多個決策盒所推導出來的內容型態與狀態盒中的內容型態完全相同亦即準備啟動一系列的輸出訊號條件輸出盒所指定的動作,只有在所有自狀態盒(Si)到條件輸出盒的條件都滿足時才能發生/10.3

演算法狀態機的設計方法

圖10.7米利機的描述

(a)狀態圖(b)ASM圖10.3.2設計程序演算法狀態機(ASM)能以演算法描述來代表序向處理的控制從控制演算法可以獲得ASM圖以四個步驟設計能完成自動序向處理的數位系統

1.將程序結構為兩個主要部分來描述系統規格程序處理與程序控制演算法2.使用系統層次的設計工具來發展系統的圖形描述系統結構圖與控制流程圖3.簡化並求出資料處理單元與控制單元的解4.以數位邏輯系統完成實作/10.3

演算法狀態機的設計方法

設計程序(續)1. 結構為兩個主要部分來描述系統規格指定實現此程序的系統需求來實作電路這些要求則被稱為系統規格結構的兩個主要部分程序處理與程序控制演算法/10.3

演算法狀態機的設計方法

設計程序(續)2. 發展系統的圖形描述a.系統結構圖圖10.8ASM的系統結構圖/10.3

演算法狀態機的設計方法

設計程序(續)a.系統結構方塊圖可將系統分成(1)資料處理單元(資料路徑)包含函數型元件如暫存器,多工器,解多工器,編碼器,解碼器組織上述元件以完成指定的處理工作由控制器內的輸出解碼器產生的控制訊號引導/10.3

演算法狀態機的設計方法

設計程序(續)(2)控制單元(控制器)包含次態產生器與輸出解碼器次態產生器是控制演算法的實作使用輸入與控制演算法的現態決定控制演算法的次態輸出解碼器能在正確的時間產生合適的序列(資料路徑)控制訊號使資料處理單元的元件能完成指定的處理函數/10.3

演算法狀態機的設計方法

設計程序(續)b.控制流程圖

控制演算法的操作以控制流程圖來作圖形描述控制流程圖顯示狀態變遷的控制狀態與條件並且產生傳送到資料路徑元件的控制訊號/10.3

演算法狀態機的設計方法

設計程序(續)3. 完成系統實作以數位邏輯系統實作ASM,包含a.資料處理單元可以利用詳細的方塊圖或邏輯電路表示b.控制單元,包含次態產生器輸出解碼器/10.3

演算法狀態機的設計方法

設計程序(續)b.控制單元,包含(1)次態產生器可從程序控制演算法的狀態圖或狀態表發展出來以多工器,或正反器,或微程式控制的方式完成實作(2)輸出解碼器由資料處理單元控制訊號的邏輯方程式發展出來可從控制流程圖獲得。/10.3

演算法狀態機的設計方法

設計程序(續)4. 數位系統能整合控制單元與資料處理單元以完成實作控制單元的邏輯設計直接與解決問題的資料處理單元有關資料處理單元部分是由控制演算法中推導出來/10.3

演算法狀態機的設計方法

10.4控制單元的製作控制邏輯與資料處理單元間的關係資料是微運算時需要執行的分離性資訊控制資訊提供執行微運算順序命令的訊號

/10.4控制單元的製作

控制單元的製作(續)數位系統設計是推導出邏輯電路的過程執行資料的處理與提供控制訊號資料處理單元可能是一個能通用的處理機單元也可能是由一些暫存器與相關的邏輯函數組成內部的微運算都是由控制單元來啟動

/10.4控制單元的製作

控制單元的製作(續)控制邏輯能產生一連串微運算訊號的序向電路由內部狀態操控系統的控制函數在特定時間內此序向控制電路的狀態起動特定的一組微運算,然後依狀態與其他輸入的情況進入次態以起動其他微運算控制邏輯電路以產生訊號的時間順序來啟動系統的資料處理單元微運算

/10.4控制單元的製作

10.4.1設計方法四種設計控制單元的方法可視為傳統序向邏輯法與暫存器轉移法的延伸

1.每個狀態使用一個正反器法2.順序暫存器與解碼器法3.可規劃邏輯陣列控制法4.微程式控制法

/10.4控制單元的製作

10.4.1設計方法1.每個狀態使用一個正反器法2.順序暫存器與解碼器法上述兩種方法推導出的電路大都可使用SSI與MSI元件製作在IC間以導線相互連接即可形成控制網路若要做任何變更或修改必須重新連接線路來完成

/10.4控制單元的製作

10.4.1設計方法3.可規劃邏輯陣列控制法4.微程式控制法上述兩種方法使用PLA或ROM的大型積體電路在微程式控制中做任何變更或修改只要從插座中換上一個新規格的ROM即可完成,不須變動電路

/10.4控制單元的製作

1.每個狀態使用一個正反器法控制邏輯電路中的每個狀態使用一個正反器任何時間只有一個正反器被設定,其他正反器都會被清除此法設計最簡單,但其序向電路沒有使正反器的數目達到最少實際上使用最多的正反器數目

/10.4控制單元的製作

每個狀態使用一個正反器法(續)此型式的控制電路能由控制順序的狀態圖來設計因使用較多的正反器會使系統的價格提高能減少設計時間,使運算更簡單並可能會減少製作序向電路時所需要的組合電路

/10.4控制單元的製作

圖10.9每個狀態一個正反器的控制單元10-49每個狀態一個正反器—實例(續)使用四個D型正反器的結構此結構為四個狀態的序向控制邏輯,每狀態使用一個正反器兩個時脈觸發間可能有一個正反器為1,其他正反器都是0

/10.4控制單元的製作

每個狀態一個正反器—實例(續)使用四個D型正反器的結構(續)現態至次態的改變是目前正反器輸出為1時的Ti與輸入的函數即在前一個正反器清除且新的正反器設定時,同時決定了次態值每個正反器的輸出連接至數位系統的資料處理單元,並起動某些微運算

/10.4控制單元的製作

2.順序暫存器與解碼器法使用一個暫存器產生控制狀態的順序將此暫存器解碼的輸出提供給每個狀態若順序暫存器中有n個正反器,則電路將有2n個狀態,解碼器也將有2n個輸出例如一個4位元暫存器有16種狀態一個4×16解碼器有16個輸出

/10.4控制單元的製作

具有四個狀態順序的控制邏輯結構

圖10.10使用順序暫存器與解碼器的控制邏輯單元順序暫存器與解碼器法—實例(續)具有四個狀態順序的控制邏輯結構順序暫存器有兩個正反器,解碼器建立每個狀態的輸出順序暫存器中的狀態改變(次態)是現態與外界輸入的函數

/10.4控制單元的製作

順序暫存器與解碼器法—實例(續)具有四個狀態順序的控制邏輯結構(續)通常不直接使用正反器的輸出而是利用解碼器的輸出當作現態變數除了解碼器輸出外,其他只要是現態與外界輸入函數的輸出都可起動微運算若控制電路不需外界輸入順序暫存器可簡化成一個計數器

/10.4控制單元的製作

3.PLA控制法可規劃邏輯陣列(PLA),為LSI裝置,可用來製作任何複雜的組合電路PLA本質上與順序暫存器與解碼器法類似只是所有的組合電路都是以PLA製作這些組合電路包含解碼器與控制邏輯利用PLA能使IC數目與連接線數目減少

/10.4控制單元的製作

可規劃邏輯陣列—實例使用PLA控制器的結構圖10.11PLA控制單元

/10.4控制單元的製作

可規劃邏輯陣列—實例(續)由順序暫存器建立控制電路的現態PLA的輸出由外界輸入與順序暫存器的狀態來決定輸出決定那些微運算需要起動同時有些PLA的輸出決定順序暫存器的次態

/10.4控制單元的製作

可規劃邏輯陣列—實例(續)由順序暫存器建立控制電路的現態PLA的輸出由外界輸入與順序暫存器的狀態來決定輸出決定那些微運算需要起動同時有些PLA的輸出決定順序暫存器的次態若PLA僅執行組合電路,則順序暫存器為PLA的外部電路若PLA不但包含邏輯閘外,同時還包含了正反器,此型式的PLA如同指定閘的鏈結一樣,必須指定連接至正反器的鏈結來執行此序向電路

/10.4控制單元的製作

4.微程式控制法控制單元產生一系列的控制訊號用來順序起動微運算這些控制訊號可由一串1與0組成的控制字表示並使用程式來規劃以啟動系統中的元件

/10.4控制單元的製作

4.微程式控制法微程式控制單元控制單元的控制變數儲存在記憶體時稱之記憶體內的每個控制字稱為微指令一串微指令組成微程式因為微程式很少變更,因此記憶體可以使用ROM,在決定位址後,微程式將所有的控制變數放入ROM的字中內容指定為系統中的微指令,由控制單元連續讀出使用

/10.4控制單元的製作

微程式控制單元的一般結構控制記憶體假定為ROM內儲存所有的控制資訊控制記憶讀出的字就代表微指令控制位址暫存器指出要讀出字的位址圖10.12微程式控制單元

/10.4控制單元的製作

微程式控制單元的一般結構(續)執行微運算時由下一位址產生器計算出下個位址再轉移至控制位址暫存器以讀出下個微指令控制單元必須決定微運算執行後的下一個位址下個微指令的位址須是執行順序中的下一個,或者位於控制記憶體某處必須使用微指令中的幾個位元來指定下個位址下個位址也可能是外界輸入的函數

/10.4控制單元的製作

10.4.2設計實例設計一個具有正反器E,F與四位元二進位計數器的數位系統計數器A以A3A2A1A0表示,其中A3是最高有效位元致能控制S起動系統操作後,清除計數器A與正反器F然後在下個時脈週期開始時將計數器加1並持續此增量到操作停止計數器位元A3與A2決定操作序列為(1)A2=0時,E清除為0並繼續計數(2)A2=1時,E設定為1。然後若A3=0,則繼續計數;若A3=1,則F在下個時脈設定為1,系統並停止計數

/10.4控制單元的製作

圖10.13設計實例的ASM圖10-65設計實例的ASM圖(續)系統的起始狀態是T0控制輸入S=1時,計數器A與正反器F都清除為0,控制器並進入T1狀態計數器在下個時脈遞增,在相同的時脈有下列三個可能操作發生(1)E被清除並進入控制狀態T1(A2=0)(2)E被設定並進入控制狀態T1(A3A2=01)(3)E被設定並進入控制狀態T2(A3A2=11)

/10.4控制單元的製作

設計實例的ASM圖(續)控制器在狀態T2時正反器F設定為1,然後控制器會回到起始狀態T0控制邏輯具有外部輸入S與兩個狀態輸入A3與A2

/10.4控制單元的製作

設計實例的控制狀態圖由ASM圖可得設計數位系統所須的全部資訊資料處理單元的要求能在狀態盒與條件輸出盒加以指定控制單元由決策盒與所需的狀態轉變來決定

/10.4控制單元的製作

設計實例的控制狀態圖(續)設計實例的系統結構圖(a)資料處理單元

(b)控制單元圖10.14設計實例的系統結構圖

/10.4控制單元的製作

設計實例的控制狀態圖(續)設計實例的控制狀態圖圖10.15設計實例的控制狀態圖與狀態表

(a)狀態圖

/10.4控制單元的製作

設計實例的控制狀態圖(續)設計實例的控制狀態表圖10.15設計實例的控制狀態圖與狀態表

(b)狀態表

/10.4控制單元的製作

控制單元的實作1.每狀態使用一個正反器法電路可直接由狀態圖推導出來不需要使用狀態表或激勵表指定三個正反器代表三個狀態T0,T1,T2

正反器的輸入函數由現態與輸入條件決定

/10.4控制單元的製作

1.每狀態使用一個正反器法(續)圖10.16每個狀態使用一個正反器的控制邏輯圖

/10.4控制單元的製作

2.順序暫存器與解碼器法採用D型正反器可直接由狀態表求正反器的激勵函數(不必使用激勵表)使用狀態表的次態欄推導出每個正反器為1的所有條件正反器G1與G0的輸入函數為

/10.4控制單元的製作

2.順序暫存器與解碼器法採用D型正反器(續)在正反器的輸出加入解碼器,可得輸出T0,T1,T2以解碼器的輸出取代正反器的輸出作為現態正反器的輸入函數可表示為

/10.4控制單元的製作

圖10.17使用順序暫存器與解碼器的控制邏輯圖採用D型正反器使用JK正反器從狀態表可導出激勵表(a)激勵表圖10.18使用JK正反器的控制邏輯順序暫存器與解碼器法(續)使用JK正反器(續)激勵表經過卡諾圖化簡得正反器的輸入函數三個狀態輸出函數為

/10.4控制單元的製作

使用JK正反器的控制邏輯圖圖10.18使用JK正反器的控制邏輯(b)邏輯電路圖3.可規劃邏輯陣列控制法(續)PLA與順序暫存器及解碼器唯一的差異控制的組合電路製作PLA取代解碼器與輸入處的所有邏輯閘PLA的作用像是序向電路的組合邏輯部分用來產生控制輸出與次態值

/10.4控制單元的製作

圖10.19PLA的控制方塊圖PLA的輸入是由現態(正反器G1與G0)及三個控制輸入(S,A3,A2)構成輸出能提供電路的下個狀態值與控制輸出變數可規劃邏輯陣列控制法(續)圖10.20PLA規劃表*PLA的內部路徑是根據規劃表的規格製作規劃表可由狀態表直接求出,不用簡化

/10.4控制單元的製作

可規劃邏輯陣列控制法(續)PLA規劃表(續)規劃表列有六個乘積項每一列代表狀態表中的一列,輸入與輸出都用數字來代表,加到這些有數字編號的變數如圖10.19的方塊圖所示不連接的PLA路徑在規劃表中用橫線“-”來代表。狀態表內的X代表隨意條件,表示在PLA中無接點;輸出欄的0表示在PLA內不接至OR閘

/10.4控制單元的製作

可規劃邏輯陣列控制法(續)將狀態表轉換為PLA規劃表將輸入欄的“X”及次態與輸出欄的“0”都改為橫線“-”,其他項則保持不變PLA的輸入與狀態表的現態及輸入相同PLA的輸出與狀態表的次態及輸出相同

/10.4控制單元的製作

可規劃邏輯陣列控制法(續)使用PLA設計控制邏輯的程序先由系統的規格求出控制單元

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论