電子科大微嵌2_第1頁
電子科大微嵌2_第2頁
電子科大微嵌2_第3頁
電子科大微嵌2_第4頁
電子科大微嵌2_第5頁
已閱讀5頁,還剩69頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

自動化工程學院測試技術及儀器研究所肖寅東E-mail:xydarcher@TELE處理器系統(tǒng)結(jié)構與嵌入式系統(tǒng)設計8/12/20232/32第二章計算機系統(tǒng)的結(jié)構組成與工作原理2.1計算機系統(tǒng)的基本結(jié)構與組成結(jié)構Architecture、組成Organization與實現(xiàn)Realization2.2計算機系統(tǒng)的工作原理馮·諾依曼計算機架構模型機:系統(tǒng)結(jié)構、指令集、工作流程計算機系統(tǒng)層次結(jié)構2.3微處理器體系結(jié)構的改革改進:指令集(RISC/CISC)、分層存儲器、高速總線/接口改變:流水線、超標量、超長指令字、多機/核、多線程2.4計算機體系結(jié)構分類2.5計算機性能評測Performance

字長、存儲容量、運算速度并行技術Flynn8/12/20233/32體系結(jié)構、組成與實現(xiàn)體系結(jié)構Architecture

程序員關心的計算機概念結(jié)構與功能特性

如:確定指令集中是否有乘法指令;計算機組成Organization

從硬件角度關注物理機器的組織 如:乘法指令由專用乘法器還是用加法器實現(xiàn)計算機實現(xiàn)Realization

底層的器件技術、微組裝技術、冷卻技術等 如:加法器底層的物理器件類型及微組裝技術系列機計算機的組成(1)8/12/20235/32計算機的組成(2)總線結(jié)構8/12/20236/32計算機的組成(3)同步數(shù)字系統(tǒng)7設計原理圖8/12/20238/32計算機的實現(xiàn)半導體技術制造技術封裝技術裝配技術電源技術冷卻技術……沙子到CPU過程-提取純凈硅10切割硅錠11光繪50nm工藝:晶體管柵極的寬度12蝕刻13離子注入14敷銅15金屬連接分層16切割、測試17封裝18設計原理圖19PCB布板8/12/202320/32制板、焊接8/12/202321/32計算機的體系結(jié)構

1946年,美國賓夕法尼亞大學莫爾學院的物理學博士Mauchley和電氣工程師Eckert領導的小組研制成功世界上第一臺數(shù)字式電子計算機ENIAC

。著名的美籍匈牙利數(shù)學家VonNeumann參加了為改進ENIAC而舉行的一系列專家會議,研究了新型計算機的體系結(jié)構。

1949年,英國劍橋大學的威爾克斯等人在EDSAC

機上實現(xiàn)了馮·諾依曼模式。直至今天馮·諾依曼體系結(jié)構依然是絕大多數(shù)數(shù)字計算機的基礎。22馮·諾依曼體系結(jié)構硬件組成五大部分運算器、存儲器、控制器、輸入設備、輸出設備以存儲器為中心信息表示:二進制

計算機內(nèi)部的控制信息和數(shù)據(jù)信息均采用二進制表示,并存放在同一個存儲器中。工作原理:存儲程序/指令(控制)驅(qū)動

編制好的程序(包括指令和數(shù)據(jù))預先經(jīng)由輸入設備輸入并保存在存儲器中;計算機開始工作后,在不需要人工干預的情況下由控制器控制高速地從存儲器中取出指令依次執(zhí)行。8/12/202323/32模型機體系結(jié)構基于總線的馮·諾依曼架構模型機存儲器子系統(tǒng):用來存放當前的運行程序和數(shù)據(jù)總線子系統(tǒng):作為公共通道連接各子部件,用于實現(xiàn)各

部件之間的數(shù)據(jù)、信息等的傳輸和交換輸入輸出子系統(tǒng):用于完成計算機與外部的信息交換CPU子系統(tǒng):集成了運算器、控制器和寄存器的超大規(guī)模集成電路芯片(VLSI)總線簡介1.完成模塊之間的通信2.可以一對一或一對多通信。3.典型總線公用通信的媒介,及線纜。(省錢)來看看最簡單的同步總線工作模式??刂破髂K模塊地址數(shù)據(jù)控制clk8/12/202325/32模型機總線結(jié)構按傳輸信息的不同,可將總線分為數(shù)據(jù)總線DB、地址總線AB和控制總線CB三類:地址總線通常是單向的,由主設備(如CPU)發(fā)出,用于選擇讀寫對象(如某個特定的存儲單元或外部設備);數(shù)據(jù)總線用于數(shù)據(jù)交換,通常是雙向的;控制總線包括真正的控制信號線(如讀/寫信號)和一些狀態(tài)信號線(如是否已將數(shù)據(jù)送上總線),用于實現(xiàn)對設備的監(jiān)視和控制。MPURAMROMI/O接口外設ABDBCB26模型機內(nèi)存儲器存儲器組織由許多字節(jié)單元組成,每個單元都有一個唯一的編號(存儲單元地址),保存的信息稱為存儲單元內(nèi)容。訪問(讀或?qū)?存儲單元:存儲單元地址經(jīng)地址譯碼后產(chǎn)生相應的選通信號,同時在控制信號的作用下讀出存儲單元內(nèi)容到數(shù)據(jù)緩沖器,或?qū)?shù)據(jù)緩沖器中的內(nèi)容寫入選定的單元。8/12/202327/32算術邏輯單元ALU累加器ACC累加鎖存器暫存器標志寄存器FR通用寄存器組堆棧指針SP程序計數(shù)器PC微操作控制電路指令譯碼器ID指令寄存器IR

操作碼,地址碼脈沖分配器時鐘脈沖源控制總線CB地址總線AB數(shù)據(jù)總線DB內(nèi)部總線地址緩沖器數(shù)據(jù)緩沖器運算器寄存器組控制器模型機CPU子系統(tǒng)28模型機指令系統(tǒng)指令是發(fā)送到CPU的命令,指示CPU執(zhí)行一個特定的處理,如從存儲器取數(shù)據(jù)、對數(shù)據(jù)進行邏輯運算等。CPU可以處理的全部指令集合稱為指令集(InstructionSet)。指令集結(jié)構(ISA,InstructionSetArchitecture)是體系結(jié)構的主要內(nèi)容之一,對CPU的基本組織會產(chǎn)生非常大的影響。ISA功能設計實際就是確定軟硬件的功能分配。指令通常包含操作碼和操作數(shù)兩部分。操作碼指明要完成操作的性質(zhì),如加、減、乘、除、數(shù)據(jù)傳送、移位等;操作數(shù)指明參加上述規(guī)定操作的數(shù)據(jù)或數(shù)據(jù)所存放的地址。匯編語言源程序機器語言程序(目標代碼)匯編(匯編程序)高級語言源程序編譯或解釋(編譯程序)29模型機常用匯編指令指

型操作碼示例操作數(shù)示例說

明算術類加法ADDRs1,Rs2,Rd①Rs,Imm②,Rd(Rs1)+(Rs2)Rd(Rs)+ImmRd運算類指令只能對寄存器中的數(shù)據(jù)或立即數(shù)進行直接操作減法SUBRs1,Rs2,RdRs,Imm,Rd(Rs1)-(Rs2)Rd(Rs)-ImmRd邏輯類位與ANDRs1,Rs2,RdRs,Imm,Rd(Rs1)?(Rs2)Rd(Rs)?ImmRd位或ORRs1,Rs2,RdRs,Imm,Rd(Rs1)?(Rs2)Rd(Rs)?ImmRd位非NOTRs,Rd!(Rs)Rd傳送類存儲器或I/O讀LDR[MEM],Rd[MEM](Rd)將指定地址的存儲單元或I/O端口的值讀入寄存器Rd存儲器或I/O寫STRRs,[MEM](Rs)[MEM]將寄存器Rs的值寫入指定地址的存儲單元或I/O端口寄存器訪問MOVRs,RdImm,Rd(Rs)

(Rd)跳轉(zhuǎn)類無條件跳轉(zhuǎn)JMPLableLable(PC)條件跳轉(zhuǎn)JX/JNXLableIfX為真/假,則Lable(PC)過程調(diào)用CALLSub-LableSub-Lable(PC)調(diào)用子程序過程返回RET-返回主程序其他停機HLT-8/12/202330/32模型機工作原理計算機的工作本質(zhì)上就是執(zhí)行程序的過程。一、順序執(zhí)行指令執(zhí)行的基本過程可以分為取指令(fetch)、分析指令(decode)和執(zhí)行指令(execute)三個階段。非順序執(zhí)行轉(zhuǎn)移(jump):執(zhí)行條件/無條件轉(zhuǎn)移指令,不返回過程(procedure)調(diào)用:主程序調(diào)用子程序后返回斷點中斷(interrupt)、異常(exception)、陷阱(trap):執(zhí)行過程中發(fā)生了意外事件。2023/8/1230/818/12/202331/32程序的執(zhí)行過程取指令、分析指令、執(zhí)行指令ABDBALU累加器ACC暫存器標志寄存器FR寄存器組

操作控制器OC指令譯碼器ID指令寄存器IR

操作碼,地址碼內(nèi)部總線地址緩沖器數(shù)據(jù)緩沖器程序計數(shù)器PC地址譯碼讀控制B0H5CH04H2EH地址1001H1002H1003H內(nèi)容1000H內(nèi)存儲器MOV5CH,R1ADDR1,2EH,R2+1CPU外CPU內(nèi)①②③④⑤⑥①②③④⑤⑥①③④⑤⑥②①②③④⑤⑥⑦⑧(a)軟硬件層次(b)語言層次計算機系統(tǒng)的層次結(jié)構(a)圖自下而上反映了系統(tǒng)逐級生成的過程,自上而下反映了系統(tǒng)求解問題的過程;軟硬件的邏輯等價性可以表現(xiàn)為:硬件軟化(如RISC思想)、軟件硬化(如CISC思想)、固件化(如微程序);(b)圖中的虛擬機:與某種特殊編程語言對應的假想硬件機器微體系結(jié)構層(微程序或硬連邏輯)操作系統(tǒng)層語言處理層(解釋、編譯)用戶程序?qū)樱ㄕZ言編程)系統(tǒng)分析層(數(shù)學模型、算法)硬核級數(shù)字邏輯層(硬件)指令系統(tǒng)層(機器語言指令)應用語言虛擬機高級語言虛擬機匯編語言虛擬機操作系統(tǒng)虛擬機機器語言級微程序級寄存器級(硬件)硬件系統(tǒng):異常處理機構、指令系統(tǒng)、CPU、存儲器、I/O及通信子系統(tǒng)系統(tǒng)軟件:操作系統(tǒng)、編譯器、數(shù)據(jù)庫管理系統(tǒng)、Web瀏覽器、設備驅(qū)動、中斷服務程序應用軟件33對馮·諾依曼體系結(jié)構的改進一、改進CPU指令集

存儲器子系統(tǒng)

輸入/輸出子系統(tǒng)

改變改變串行執(zhí)行模式,發(fā)展并行技術;改變控制方式,發(fā)展數(shù)據(jù)、需求、模式等其它驅(qū)動方式;3-6章重點指令功能、指令格式、尋址方式分層結(jié)構高速總線+多種接口方式

馮·諾依曼型計算機的本質(zhì)特點也造成了其瓶頸:

指令執(zhí)行的串行性

存儲器讀取的串行性8/12/2023/32原始的設計思路:CISCCISC(ComplexInstructionSetComputer,復雜指令集計算機)不斷增強指令的功能以及設置更復雜的新指令取代原先由程序段完成的功能,從而實現(xiàn)軟件功能的硬化。8/12/202335/32CISC的特點及設計思想一、控制器硬件復雜(指令多,且具有不定長格式和復雜的數(shù)據(jù)類型),占用了大量芯片面積,且容易出錯;二、指令操作繁雜,速度慢;三、指令規(guī)整性不好,不利于采用流水線技術提高性能。四、相同邏輯時使用的指令總數(shù)少*35/688/12/2023/32研究結(jié)果指導的設計思路:RISC美國加州大學Berkeley分校的研究結(jié)果表明:許多復雜指令很少被使用,“2-8原則”RISC(ReducedInstructionSetComputer,精簡指令集計算機)通過減少指令種類和簡化指令功能來降低硬件設計復雜度,從而提高指令的執(zhí)行速度。8/12/202337/32RISC的特點及設計思想

RISC機的設計應當遵循以下五個原則:①指令條數(shù)少,格式簡單,易于譯碼;②提供足夠的寄存器,只允許load

和store指令訪問內(nèi)存;③指令由硬件直接執(zhí)行,

在單個周期內(nèi)完成;④充分利用流水線;⑤依賴優(yōu)化編譯器的作用;;

*37/688/12/202338/32不同的指令集設計策略:CISC與RISCCISC(ComplexInstructionSetComputer,復雜指令集計算機)不斷增強指令的功能以及設置更復雜的新指令取代原先由程序段完成的功能,從而實現(xiàn)軟件功能的硬化。RISC(ReducedInstructionSetComputer,精簡指令集計算機)通過減少指令種類和簡化指令功能來降低硬件設計復雜度,從而提高指令的執(zhí)行速度。*38/86現(xiàn)代計算機:RISC+CISC8/12/202339/32CISC與RISC的數(shù)據(jù)流IRIDREGALUMEM開始退出IRIDALUMEMREG微操作通道開始退出單通數(shù)據(jù)通道RISC:Load/Store結(jié)構CISC:尋址方式復雜*39/868/12/202340/32分層的存儲子系統(tǒng)如何以合理的價格搭建出容量和速度都滿足要求的存儲系統(tǒng),始終是計算機體系結(jié)構設計中的關鍵問題之一?,F(xiàn)代計算機系統(tǒng)通常把不同的存儲設備按一定的體系結(jié)構組織起來,以解決存儲容量、存取速度和價格之間的矛盾。設計目標:整個存儲系統(tǒng)速度接近M1而價格和容量接近Mn8/12/202341/32其他改善存儲器帶寬的方法并行存儲器雙端口存儲器哈佛體系結(jié)構DSP程序數(shù)據(jù)I/O接口外設程序地址數(shù)據(jù)讀地址數(shù)據(jù)寫地址程序讀總線數(shù)據(jù)讀總線程序/數(shù)據(jù)寫數(shù)據(jù)程序8/12/202342/32現(xiàn)代高速總線高速并行總線高速總線串行化多級總線結(jié)構北橋南橋前端總線FrontSideBus8/12/202344/32輸入輸出管理方式45計算機體系結(jié)構的演進:并行處理技術指令級并行技術ISP

流水線、超標量、超長指令字系統(tǒng)級并行技術SLP

多處理器(多機/多核)、多磁盤線程級并行技術TLP

同時多線程SMT電路級并行技術CLP

組相聯(lián)cache、先行進位加法器并行處理技術實現(xiàn)多個處理器或處理器模塊的并行性,其基本思想包括時間重疊(timeinterleaving)、資源重復(resourcereplicaiton)和資源共享(resourcesharing)。8/12/202346/32流水線技術可通過分割邏輯,插入緩沖寄存器(流水線Reg)來構建8/12/202347/32指令時空圖順序執(zhí)行4級流水線執(zhí)行流水線滿載48流水線滿載獨立硬件模塊8/12/202349/32更細的流水線取指(FI)指令譯碼(DI)計算操作數(shù)地址(CO)取操作數(shù)(FO)執(zhí)行指令(EI)寫操作數(shù)(WO)49/868/12/202350/32流水線CPU的特點優(yōu)點:

通過指令級并行來提高性能。缺點:增加了硬件成本。流水寄存器會引入延遲和時鐘偏移,這些額外開銷會使每條指令的執(zhí)行時間有所增加,同時限制了流水線的深度。流水線中各段的操作存在關聯(lián)(dependence)時可能會引起流水線中斷,從而影響流水線的性能和效率。*50/868/12/2023/32流水線數(shù)據(jù)沖突8/12/2023/32流水線數(shù)據(jù)沖突--定向技術8/12/2023/32流水線數(shù)據(jù)沖突--調(diào)度技術8/12/202354/32流水線數(shù)據(jù)沖突及亂序執(zhí)行注意這里其實需要兩個獨立執(zhí)行部件8/12/2023/32流水線結(jié)構沖突8/12/2023/328/12/2023/32多端口寄存器堆8/12/2023/328/12/2023/32哈弗結(jié)構存儲器8/12/202360/32流水線結(jié)構沖突及超標量流水線?有5個執(zhí)行單元的超標量流水線有2套硬件的超標量流水線CPU共用一個取指單元的5段雙流水線*8/12/2023/32流水線控制沖突跳轉(zhuǎn)指令8/12/202362/32流水線沖突理想流水線的性能:每個時鐘周期完成一條指令實際流水機器中可能存在冒險(hazard)導致停頓:①數(shù)據(jù)冒險(如后面的計算要用到前面的結(jié)果)定向技術可將結(jié)果數(shù)據(jù)從其產(chǎn)生的地方直接傳送到所有需要它的功能部件編譯器可利用流水線調(diào)度(scheduling)技術來重新組織指令順序②結(jié)構冒險(硬件資源不夠)增加額外的同類型資源改變資源的設計使其能被同時使用③控制冒險(分支等跳轉(zhuǎn)指令引起)可采用分支預測及預測執(zhí)行技術最大限度地使處理器各部分保持運行狀態(tài)。多端口的寄存器堆哈佛結(jié)構存儲器、超標量*62/868/12/202363/32超標量CPU的體系結(jié)構超標量技術:可在一個時鐘周期內(nèi)對多條指令進行并行處理,使CPI小于1;特點:處理器中有兩個或兩個以上的相同的功能部件;

要求操作數(shù)之間必須沒有相關性;整數(shù)指令浮點指令*64超標量處理機一般概念性結(jié)構instructionfetching多個流水線讀取及轉(zhuǎn)移預測邏輯instructiondecoding并行譯碼器,預譯碼技術instructiondispatching動態(tài)規(guī)劃instructionexecution多個流水線功能單元instructioncompletion暫存結(jié)果數(shù)據(jù)instructionretiring真正更新Reg和Mem中的結(jié)果數(shù)據(jù)*8/12/202365/32超標量結(jié)構機器的例子兩條輸入流水線三條執(zhí)行流水線每個時鐘周期可從存儲器中獲取兩條指令用于執(zhí)行不需要訪問存儲器的指令可處理所有需要或不需要訪問存儲器的指令可用于進行乘、除類較復雜的算術運算決定應使用哪一條執(zhí)行流水線8/12/202366/32VLIW處理機和超標量處理機不同,超長指令字VLIW(VeryLongInstructionWord)依靠編譯器在編譯時找出指令之間潛在的并行性,并通過指令調(diào)度把可能出現(xiàn)的數(shù)據(jù)沖突減少到最小,最后把能并行執(zhí)行的多條指令組裝成一條很長的指令,然后由處理機中多個相互獨立的執(zhí)行部件分別執(zhí)行長指令中的一個操作,即相當于同時執(zhí)行多條指令。VLIW處理機能否成功,很大程度上取決于代碼壓縮的效率,其編譯程序和體系結(jié)構的關系非常密切,缺乏對傳統(tǒng)軟件和硬件的兼容,因而不大適用一般應用領域。*8/12/202367/32多機并行系統(tǒng)大規(guī)模并行處理機(MPP)是一種價格昂貴的超級計算機,它由許多CPU通過高速專用互聯(lián)網(wǎng)絡連接。機群(cluster)由多臺同構或異構的獨立計算機通過高性能網(wǎng)絡或局域網(wǎng)連在一起協(xié)同完成特定的并行計算任務。刀片(blade)通常指包含一個或多個CPU、內(nèi)存以及網(wǎng)絡接口的服務器主板。通常一個刀片柜共享其它外部I/O和電源,而輔助存儲器則有距離刀片柜較近的存儲服務器提供。網(wǎng)格(Network)是一組由高速網(wǎng)絡連接的不同的計算機系統(tǒng),可以相互合作也可獨立工作。網(wǎng)格計算機將接受中央服務器分配的任務,然后在不忙的時候(如晚上或周末)執(zhí)行這些任務。8/12/202368/32多核處理器8/12/202369/32片上網(wǎng)絡(NOC)技術P處理器M存儲器C緩存rni

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論