




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
微處理器系統結構與嵌入式系統設計第三章微處理器體系結構及
關鍵技術3.1微處理器體系結構及功能模塊簡介處理器的主要功能處理器的基本結構一個簡化的處理器模型結構示例3.2處理器設計
1.指令系統2.數據通路3.控制流程4.時序部件5.
控制邏輯3.3指令系統設計3.4指令流水線技術3.5典型微處理體系結構簡介2023/2/4數據類型、指令功能、指令格式、尋址方式ALU、Reg、總線寬度、周期程序、指令、微操作時鐘周期、工作周期、指令周期隨機邏輯、微程序(微碼)幾個概念中央處理單元
CentralProcessingUnit,CPU微處理器
MicroProcessingUnit,MPU微控制單元
MicroControlUnit,
MCU單片機計算機單片芯片控制器、運算器、寄存器CPU、少量存儲器及I/O接口CPU+存儲器+總線/接口+外設*3/864微處理器的主要功能計算機系統設計師認為:處理器是指一種能夠經過多個步驟執行計算任務的數字設備。從本質上講,處理器的作用是協調和控制計算機的各個部件,并執行程序的指令序列。處理器的5個主要功能:①指令控制:控制指令按程序邏輯順序執行。②操作控制:按照指令執行過程及指令約定功能的需求產生各種操作控制信號。③時序控制:能夠在適當的時間(時刻)使相應操作控制信號有效,并保持所需的時長。④數據加工:對數據進行算術和邏輯運算處理。⑤中斷處理:程序執行過程中應能夠及時處理出現的I/O操作請求及異常情況。CPU最基本的功能CPU的作用是協調和控制計算機的各個部件并執行程序中的指令序列,因此應具有以下基本功能:①取指令:當程序已在存儲器中時,首先根據程序入口地址取出一條程序,需要發出指令地址及控制信號。②分析指令:即指令譯碼,是指對當前取得的指令進行分析,指出它要求什么操作,并產生相應的操作控制命令。③執行指令:根據分析指令時產生的“操作命令”形成相應的操作控制信號序列,通過運算器、存儲器及輸入/輸出設備的執行,實現每條指令的功能,其中包括對運算結果的處理以及下條指令地址的形成。*5/86微處理器的基本結構馮·諾依曼機:5大部件存儲程序串行單順序數據通路CPU的RTL描述:數據通路控制器數據通路:ALU+Reg+內部總線ALU:運算Reg組:暫存內總線:傳輸控制器輸入輸出CPU與內存儲器的接口1.對外形成三總線形式;2.寄存器MAR和MBR簡化了CPU與主存之間的傳送通路,使其容易控制;3.寄存器MAR和MBR對用戶透明,即不能編程訪問;微處理器的總體結構數據通道組成:ALU+寄存器+內部總線功能:基本的二進制算術、邏輯及移位運算;根據運算結果設置狀態標志(進/借位、溢出等);特性:數據通路寬度:即字長,CPU單次傳送和處理數據的能力。數據通路周期:ALU運算并將結果保存的過程。控制單元(控制器)時序控制部件:指令周期、工作周期、時鐘周期(工作脈沖)指令譯碼邏輯:微程序(CISC)、硬連邏輯(RISC)、……3.3指令系統設計指令集結構(ISA)是體系結構的主要內容之一,其功能設計實際就是確定軟硬件的功能分配。考慮因素速度、成本和靈活性實現方式硬件、軟件優化策略RISC、CISC;流水線;多核;……實現內容數據類型、指令功能、指令格式、尋址方式實現步驟根據應用初擬出指令的分類和具體的指令;編寫出針對該指令系統的各種高級語言編譯程序;對多種算法程序進行模擬測試,確認指令系統的操作碼和尋址方式的效能是否都比較高;用硬件實現高頻使用的指令,軟件實現低頻使用指令。機器指令符號表示法由于直接與機器指令二進制表示法打交道很困難,于是普遍使用的是機器指令符號表示法(symbolrepresentation)。操作碼可縮寫成助記符(mnemonic)來表示:
ADD加 SUB減 MUL乘 DIV除 LOAD由存儲器裝入 STOR存入存儲器*12/86匯編語言指令支持的數據類型確認某種特殊類型的數據是否應該得到硬件支持數值型數據:無符號整數、帶符號整數、浮點數非數值數據:字符串確認字長(對數據長度的限制)截斷(truncation)或溢出(overflow)在選擇數據格式和長度時需要平衡數值范圍、程序執行期間發生溢出的可能性、處理設備和存儲設備的復雜性、以及價格和速度等因素。指令類型指令按功能可分成以下三種基本類型:數據傳輸:將數據從一個地方(源地址)復制到另一個 地方(目的地址),傳輸結束后源地址中的內容不變。數據傳送范圍:R->R、R->M、M->R或M->M
數據傳送寬度:一般為固定值(如8、16或32bit),其 它寬度的數據傳送一般可通過軟件移位和合 并操作來實現。數據運算:包括算術運算(加、減、乘、除等)和邏輯運算(與、或、非、異或等)。 該類指令需要明確操作數的類型和長度。控制類:用于改變正常的程序執行流程,完成程序的跳轉,主要包括轉移指令和過程指令。I/O機器指令要素操作碼(operationcode,opcode):需要完成的操作;源操作數(sourceoperandreference):操作所需的輸入;結果操作數(resultoperandreference):操作產生的結果;下一條指令(nextinstructionreference):告訴CPU到哪里取下一條指令。*指令格式在計算機內部,指令由一個位串來表示。相應于指令的各要素,這些位串劃分成幾個字段:操作碼字段:說明CPU應進行的操作按操作類型分組:同類操作要求同樣或類似的控制信號,因此編碼也類似(有盡可能多的公共位)操作數字段/地址字段:說明源操作數和目的操作數存放的位置信息(R、M或I/O);說明源操作數和目的操作數的數據類型;下一條指令地址字段:如緊跟當前指令,在主存或虛存中,則不需顯示引用;如可能產生跳轉,則需要顯示給出存儲地址;操作碼字段常見指令字段分配擴展操作碼操作數字段
二元操作(binaryoperation)是一種基本操作類型,這樣的指令通常包含三個操作數地址:兩個源操作數和一個目的(結果)操作數。為了縮短指令長度,可以采用以下方法:只有一個地址指定給存儲器中的操作數,而其余地址都指定給寄存器,可以在指令格式中明確地指定其寄存器號。把一個、兩個或三個操作數的地址在指令格式中變成隱含的地址。隱含的地址可以指定給專用寄存器,而這些寄存器的名字隱含在指令格式的操作碼中。尋址方式操作數實際存放位置:尋址方式:1.在指令碼中指定操作數:立即數尋址2.在寄存器中指定操作數:寄存器(直接)尋址3.在存儲器中指定操作數:存儲器直接尋址、存儲器間接尋址4.在匯編程序中指定操作數:
相對尋址5.操作數在I/O接口中:存儲器尋址(存儲器映像編址)或端口尋址(獨立編址)立即數尋址
immediateaddressingmode寄存器直接尋址方式
registerdirectaddressingmode指令的地址字段給出寄存器號(名),而被指定的寄存器的內容就是操作數。存儲器直接尋址
memorydirectaddressingmode 指令的地址字段直接給定一個立即數作為存儲單元的地址。寄存器直接尋址存儲器間接尋址
memoryindirectaddressingmode(1)寄存器間接尋址方式(2)存儲器間接尋址方式(3)位移量尋址方式(4)變址尋址方式(5)比例尺尋址方式用于加強編寫與位置無關的匯編語言程序寄存器間接尋址方式
registerindirectaddressingmode將存儲器地址指定在寄存器中,即讓寄存器內容指向一個可訪問到操作數的存儲器單元。*24/86存儲器間接尋址方式
memoryindirectaddressingmode
多級間接尋址;通常用于訪問存儲器中的“跳轉表”:跳轉表首址指定在寄存器中,該表中的每個表項指向一個可訪問到操作數的存儲器單元。位移量尋址方式
displacementaddressingmode
通常用于數組、矩陣類向量數據的存取立即數值指定數組首址,寄存器指定組內偏移;指數尋址方式
indexedaddressingmode
通常用于數組、矩陣類向量數據的存取:寄存器Rs值指定數組首址,寄存器Rx指定組內偏移;比例尺尋址方式
scaledaddressingmode用字節表示的操作數的長度PC相對尋址方式
ProgramCounter-relatedaddressingmode
主要用在轉移和跳轉指令,指定匯編語言程序碼的內部位置作為目的地址偏移量操作數。指令:JMPLable操作:PC←(PC)updated+immSign_ext指令集設計示例假設某機器的字長是8位,支持常見的簡單指令:指令是雙地址指令,源操作數采用2種尋址方式—寄存器尋址(R0~R1)和立即尋址;目標操作數可采用2種尋址方式-寄存器尋址和存儲器直接尋址。請為下述九條機器指令設計可行的代碼方案。若采用定長編碼(8bit)方案,可定義指令格式如下:76543210=0000表示ADD=0001表示SUB=0010表示MOV=0011表示IN=0100表示OUT=0101表示RR……目的操作數尋址方式:0—直接尋址
1—寄存器尋址目標寄存器編號源操作數尋址方式:0—立即尋址
1—寄存器尋址源寄存器編號操作碼機器指令集3.4流水線技術的特點單個操作延遲增加;整體吞吐量增加;延遲=320ps吞吐量=1/320ps
=
3.125GIPS延遲=360ps吞吐量=1/120ps=8.33GIPS流水線時序過程流水線的局限性各階段性能差異會導致流水線性能下降寄存器延遲開銷導致流水線性能下降硬件空閑延遲=?ps吞吐量=?GIPS延遲=360ps吞吐量=5.88GIPS指令流水線設計基本要求流水線各個段的操作相互獨立流水線各個段的操作同步性能指標吞吐率(ThroughputRate)加速比(SpeedupRatio)效率(Efficiency)相關及處理
結構相關、數據相關和控制相關理想流水線:各級延時時間相等;無等待時間;大量代碼不斷流;吞吐率(ThroughputRate)吞吐率Tp:指單位時間內能完成的作業量。最大吞吐率Tpmax:流水線達到穩定狀態后的吞
吐率。用于描述流水線執行各種運算的速率,通常表示為每秒執行的運算數或每周期執行的運算數。若一個m級線性流水線各級時長(即拍長)均為Δt,則連續處理n條指令時的實際吞吐率Tp為:可以看出,當n→時,最大吞吐率Tpmax=1/Δt加速比(SpeedupRatio)非流水線執行時間相對流水線執行時間之比。若一個m級線性流水線各級時長(即拍長)均為Δt,則連續處理n條指令時的加速比Sp為:可以看出,當n→時,Sp→m,即最大加速比等于流水線的段數m。效率(Efficiency)一定時段內,流水線所有段處于工作狀態的比率。若一個m級線性流水線各級時長(即拍長)均為Δt,則連續處理n條指令時的效率E為:E=指令完成時間內占用的時空區/指令總時空區可以看出,當n→時,E→1,即流過流水線的指令越多,流水線效率越高。3.2處理器設計數據通道組成:ALU+寄存器+內部總線功能:基本的二進制算術、邏輯及移位運算;根據運算結果設置狀態標志(進/借位、溢出等);特性:數據通路寬度:即字長,CPU單次傳送和處理數據的能力。數據通路周期:ALU運算并保存結果的過程。控制單元(控制器)時序控制部件指令譯碼邏輯微處理器設計1、擬定指令系統:需要完成哪些操作。2、確定總體結構:寄存器設置、運算部件、控制部件的設計3、安排時序:時序控制信號的產生(控制器完成具體產生)4、擬定指令流程:指令執行過程中的每一步傳送操作的流程。5、形成控制邏輯:根據指令流程形成最終的控制邏輯。程序、指令、微操作3.2.4時序控制部件時序控制部件:用以產生各種系統所需的、滿足時序要求的控制信號。指令周期
讀取并執行一條指令所需的時間工作周期
指令周期中的不同工作階段時鐘周期系統中最小的基本時間分段CPU中的多級時序一個指令周期中的多個工作周期現代控制器設計趨勢:
采用非集中控制模式,I/O和存儲器擁有各自的控制器,從而變為自主的功能部件。
I/O和存儲器采用異步控制。按照微控制命令的形成方式,控制器可分為隨機邏輯控制和微程序控制兩種基本類型。3.2.5控制器的設計
控制器根據指令譯碼結果和當前狀態決定在什么時間、根據什么條件、發出什么命令、做什么操作:生成時序控制信號生成指令執行所需的控制信號響應各種中斷或異常事件請求隨機邏輯CPU的結構隨機邏輯(硬連邏輯)體系結構用布爾邏輯函數來表示控制單元的輸入和輸出之間的關系。時序部件指令預處理隨機邏輯體系結構需求背景:銷售量很大(性能要求不是很高)目標:減少制造費用方法:減少使用的門電路總數用途:支持簡單指令集隨機邏輯CPU的特點優點:
可通過簡化指令減少所使用的門電路總數從而減少制造費用。缺點:指令集結構與硬件邏輯方程之間存在著密切聯系,設計過程復雜。重用性差,設計成果很少能再利用到以后的新CPU設計中。適用于較簡單的指令集結構。隨機邏輯控制器(硬連線邏輯控制器):采用組合邏輯控制方式的控制器隨機邏輯CPU的設計步驟指令集結構驅動硬件的邏輯方程定義所需的指令集結構;根據指令集決定硬件邏輯及狀態機;硬件邏輯方程反饋到指令集結構對指令集結構做必要的修改和優化;最大限度地減少邏輯復雜度;最小化邏輯門數目 優化硬件邏輯、盡可能地少用觸發器優化硬件時序邏輯門級數最小化;建立并行通路以滿足時序約束(增加邏輯)簡化指令集 邏輯簡單、寄存器數量少隨機邏輯CPU的設計要點RISC最重要的目的隨機邏輯CPU的操作1-取指令①程序計數器的值經MUX送到存儲器;②存儲器送回的指令寫入指令寄存器;③程序計數器加1后回寫;隨機邏輯CPU的操作2-指令執行①寄存器堆中的某個地址寄存器通過MUX尋址存儲器,獲得ALU的一個操作數;②另一個操作數來自于寄存器堆中的數據寄存器;③ALU的結果值被回寫入寄存器堆。BalancingOperatorsa,b,c,d:4-bitvectorsout=a*b*c*dXabXcXdzXabout=(a*b)*(c*d)XcdXzUnbalancedBalanced4x48x412x416-bit4x44x48x816-bitDelaythrough3StagesofMultiplyDelaythrough2StagesofMultiply隨機邏輯CPU的指令集設計考慮如何讓邏輯門可以快速而方便地實現指令譯碼。在隨機邏輯CPU的指令集中,可以使用以下4種類型的指令:分支指令(branchinstruction)、存儲器引用指令(memoryreferenceinstruction)、ALU指令(ALUinstruction)、設置指令(SETinstruction)一般的設計方法是將指令內部的結構劃分成多個指令字段(field)。同時還要求這些指令字段在各指令中所放的位置盡可能一樣。這樣,在CPU中可以減少指令譯碼所需的邏輯數量。52/86指令的簡化示例如果限制在機器內部只用一個累加器,則指令集就會被限制在如下范圍內:①使用單目操作數的指令,可以將累加器作為一個源操作數,同時可作為一個目的操作數。②使用雙目操作數的指令,可以將累加器作為一個源操作數,以存儲器作為另一個源操作數,累加器同時也可作為目的操作數。如果只用一個索引寄存器,則尋址模式將局限于以下兩種方式:①
當進行直接存儲器尋址時,存儲器地址由指令中的部分字段提供。②當進行指數尋址時,目標地址一部分來自指令的存儲器地址,與指數寄存器相加之后,形成目標操作數的地址。微碼CPU的結構在微碼結構中,控制單元的輸入和輸出之間的關系被視為一個存儲系統。時序部件指令預處理工作原理微程序控制(存儲控制)組成微碼控制器+微代碼微碼CPU的特點優點:可以通過減少取指令次數的方法來降低存儲器總訪問時間從而提高系統性能;簡化硬件設計,可使其成品機器幾乎沒有設計上的錯誤;建立或改動微代碼比建立或改動電路省時、不易出錯,因此更易于創建新的CPU版本;缺點:同樣功能微代碼比硬連邏輯實現的開銷大;*55/86微碼結構與隨機邏輯結構的比較硬件設計開銷隨機邏輯CPU的硬件和指令集必須同步進行設計和優化,因此比較復雜。微碼CPU的指令集設計并不直接影響現有硬件,修改指令集并不需要重新設計新的硬件。性能如果采用相同指令集,則隨機邏輯CPU操作會更快。如果執行相同的計算任務,微碼CPU能夠通過使用更少(但更復雜)的指令達到更高性能。當系統整體性能受限于存儲器的速度時,微碼CPU對性能提高的優勢更為明顯。*56/86微碼CPU的設計步驟建立硬件體系結構,保證其具備執行必要基本功能步驟的功能。將指令分割成許多微步驟,轉寫成微程序并寫入控制存儲器。微指令Micro-instruction微程序Micro-program(固件fireware)指令instruction微碼CPU的操作1-指令譯碼與執行控制邏輯對IR中的指令譯碼,確定對應微碼程序地址并寫入PC;PC向微碼ROM提供
地址,返回的微碼寫入IR;IR譯碼后產生相應的控制信號;PC地址加1后獲取下一條微指令地址,直到完成整個微碼程序微碼CPU的操作2-讀寫數據數據通路一般應有如下三個基本的時鐘周期:從存儲器讀數據后:寫入寄存器堆(RegisterFile);寫入指令寄存器(IR);寫入臨時寄存器(TempIn);作為ALU的一個輸入;從寄存器讀數據后:寫入存儲器地址寄存器MAR;寫入臨時寄存器作為ALU的一個輸入;存入存儲器;將Result寄存器內容寫入寄存器組,或存入存儲器;3.5ARM體系結構1。RISC指令集,內核小,功耗低、成本低2。哈佛結構3。運算器操作數只能從寄存器輸入/輸出4。采用桶式移位器處理ALU輸入,靈活高速ARM指令系統特點1、RISC指令規則,適合流水設計2、尋址方式靈活簡單,執行效率高3、所有指令的條件執行實現最快速的代碼執行4、支持Thumb(16位)/ARM(32位)雙指令集,能很好的兼容8位/16位器件3.58086體系結構1、馮式結構2、運算器操作數可以從寄存器、存儲器或I/O端口獲得3、分成兩大功能部件EU、BIU8086指令系統特點1。為保持兼容性采用變長的、高度不規則的CISC指令集。2。是基于
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 異地貸款備案管理辦法
- 外聘培訓機構管理辦法
- 肺功能檢查護理課件
- 肯德基兒童畫課件
- 肥胖中醫課件
- 店鋪陳列培訓課件
- 肝膽中醫課件
- 高新一中八上數學試卷
- 東莞中考經典數學試卷
- 封面白色的數學試卷
- 2025年中考物理解題方法復習專題10力學壓軸題的常見解法
- 慈利一中選拔考試題及答案
- 殘疾人護理實操考試題及答案
- DB54∕T 0296-2023 文物古建筑消防安全評估規范
- 醫共體醫保管理工作制度
- 注塑模具保養維修培訓
- 商城周年慶活動方案方案
- 2025年高考軍隊院校征集和招錄人員政治考核表(原表)
- TCCEAS001-2022建設項目工程總承包計價規范
- 2024年人教版九年級英語單詞默寫單(微調版)
- DL-T 1476-2023 電力安全工器具預防性試驗規程
評論
0/150
提交評論