![微處理器系統(tǒng)_第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-5/30/07b8ae18-dd67-4ca0-bf00-6cecf024214f/07b8ae18-dd67-4ca0-bf00-6cecf024214f1.gif)
![微處理器系統(tǒng)_第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-5/30/07b8ae18-dd67-4ca0-bf00-6cecf024214f/07b8ae18-dd67-4ca0-bf00-6cecf024214f2.gif)
![微處理器系統(tǒng)_第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-5/30/07b8ae18-dd67-4ca0-bf00-6cecf024214f/07b8ae18-dd67-4ca0-bf00-6cecf024214f3.gif)
![微處理器系統(tǒng)_第4頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-5/30/07b8ae18-dd67-4ca0-bf00-6cecf024214f/07b8ae18-dd67-4ca0-bf00-6cecf024214f4.gif)
![微處理器系統(tǒng)_第5頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-5/30/07b8ae18-dd67-4ca0-bf00-6cecf024214f/07b8ae18-dd67-4ca0-bf00-6cecf024214f5.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、微處理器系統(tǒng)概述“好奇號(hào)好奇號(hào)”火星探測(cè)器的硬件火星探測(cè)器的硬件和和軟件軟件 北京時(shí)間北京時(shí)間2012年年8月月6日日13:31分,美國(guó)宇分,美國(guó)宇航局好奇號(hào)火星車在火星著陸,它將展開(kāi)航局好奇號(hào)火星車在火星著陸,它將展開(kāi)為期兩年的任務(wù),主要任務(wù)是探索火星過(guò)為期兩年的任務(wù),主要任務(wù)是探索火星過(guò)去或者現(xiàn)在的環(huán)境是否適宜生命存在去或者現(xiàn)在的環(huán)境是否適宜生命存在好奇號(hào)“好奇號(hào)”微處理器系統(tǒng)硬件 兩套完全相同的微處理器系統(tǒng) CPU為為BAE RAD750(1040萬(wàn)晶體管,核心頻率110到200 MHz),基于IBM的PowerPC 750設(shè)計(jì)而來(lái),速度達(dá)到400 MIPS(勇氣號(hào)和機(jī)遇號(hào)為35 MIP
2、S),可以承受-55和70度氣溫變化以及1000gray的輻射水平 256K EEPROM、256MB內(nèi)存、內(nèi)存、2GB閃存閃存軟件 VxWoks 6.9實(shí)時(shí)操作系統(tǒng) Wind River Systems(已被Intel收購(gòu))開(kāi)發(fā) 好奇號(hào)代碼共250萬(wàn)行,程序語(yǔ)言是C,多是用Python腳本自動(dòng)生成 超過(guò)一百萬(wàn)行代碼是手寫(xiě) 程序包含150個(gè)獨(dú)立模塊,每個(gè)模塊執(zhí)行不同的功能,高度耦合的模塊組合成組件手機(jī)基本結(jié)構(gòu)1.1 系統(tǒng)基本結(jié)構(gòu) 微處理器 內(nèi)部存儲(chǔ)器 外部設(shè)備完整的微處理系統(tǒng)的基本構(gòu)架16位PC-8086微處理器結(jié)構(gòu)微處理器 用來(lái)實(shí)現(xiàn)運(yùn)算和控制功能的部件,由運(yùn)算器、控制器和寄存器三個(gè)基本單元組
3、成 運(yùn)算器用于完成數(shù)據(jù)的算術(shù)和邏輯運(yùn)算 CPU內(nèi)部的寄存器用來(lái)暫存參加運(yùn)算的操作數(shù)和運(yùn)算結(jié)果 控制器通常由指令寄存器、指令譯碼器和控制電路組成 指令是一組二進(jìn)制編碼信息,主要包括兩個(gè)內(nèi)容: 告訴計(jì)算機(jī)進(jìn)行什么操作; 指出操作數(shù)或操作數(shù)地址。 控制電路根據(jù)指令的要求向微型機(jī)各部件發(fā)出一系列相應(yīng)的控制信息,使它們協(xié)調(diào)有序地工作。系統(tǒng)總線 微處理器通過(guò)系統(tǒng)總線與內(nèi)部存儲(chǔ)器(簡(jiǎn)稱內(nèi)存)和外部設(shè)備(簡(jiǎn)稱外設(shè))相連 系統(tǒng)總線由三個(gè)部分組成:地址總線,提供存儲(chǔ)單元的地址;數(shù)據(jù)總線,提供存儲(chǔ)單元讀寫(xiě)操作時(shí)的數(shù)據(jù);控制總線,提供讀寫(xiě)使能信號(hào)和其它輔助信號(hào) 微處理器通過(guò)總線對(duì)它們進(jìn)行數(shù)據(jù)的讀取和寫(xiě)入,即讀操作和寫(xiě)
4、操作微處理器系統(tǒng) 是完成信息處理,主要處理操作為數(shù)據(jù)傳送、數(shù)學(xué)計(jì)算和流程控制 處理過(guò)程采用格式化的二進(jìn)制代碼描述構(gòu)成程序,并保存在存儲(chǔ)設(shè)備中 程序可以存放在內(nèi)存中,也可以存放在外部存儲(chǔ)器中 當(dāng)需要執(zhí)行這些程序時(shí),必須先將這些程序讀入內(nèi)存 微處理器可以自動(dòng)通過(guò)系統(tǒng)總線從內(nèi)存中讀取這些代碼,并能夠自動(dòng)通過(guò)系統(tǒng)總線來(lái)獲取和保存操作中所需要和產(chǎn)生的數(shù)值微處理器系統(tǒng) 硬件和軟件兩個(gè)部分組成 硬件實(shí)現(xiàn)具體操作過(guò)程 軟件實(shí)現(xiàn)處理過(guò)程,即操作流程微處理器 在功能上主要體現(xiàn)為數(shù)據(jù)傳送、數(shù)學(xué)運(yùn)算和流程控制 在形式上體現(xiàn)為數(shù)據(jù)和指令 在結(jié)構(gòu)上由數(shù)學(xué)運(yùn)算單元、寄存器、指令控制單元和存儲(chǔ)控制單元組成處理的格式化描述 每
5、個(gè)處理包括三個(gè)部分:執(zhí)行條件、處理動(dòng)作、處理內(nèi)容。 執(zhí)行條件是可選的,沒(méi)有給出條件就意味著無(wú)條件或者認(rèn)為條件恒成立 處理動(dòng)作主要是數(shù)據(jù)傳送、數(shù)學(xué)運(yùn)算和流程控制這三大類 處理內(nèi)容則是數(shù)據(jù)傳送的源和目的、運(yùn)算的輸入輸出和流程控制的參數(shù)等功能實(shí)現(xiàn)結(jié)構(gòu) 信息處理:操作及操作對(duì)象 從電路設(shè)計(jì)角度來(lái)看,邏輯功能單元和存儲(chǔ)功能單元 存儲(chǔ)功能單元:寄存器單元和存儲(chǔ)器單元 邏輯功能單元:運(yùn)算器和控制器控制器。完成對(duì)整個(gè)計(jì)算機(jī)系統(tǒng)操作的協(xié)調(diào)與指揮運(yùn)算器。數(shù)據(jù)加工處理部件,所進(jìn)行的全部操作由控制器發(fā)出的控制信號(hào)指揮寄存器 通用寄存器和專用寄存器 通用寄存器。用來(lái)存放原始數(shù)據(jù)和運(yùn)算結(jié)果,有時(shí)還可以作為計(jì)數(shù)器和地址指針
6、等 專用寄存器。專門(mén)用來(lái)完成某一種特殊功能的寄存器,通常不允許編程直接操作,必須通過(guò)專用指令來(lái)修改,有的只是內(nèi)部使用,無(wú)法編程更改專用寄存器 至少要有5個(gè)專用的寄存器:指令寄存器(IR)程序計(jì)數(shù)器(PC)地址寄存器(AR)數(shù)據(jù)緩沖寄存器(DR)狀態(tài)條件寄存器(PSW)存儲(chǔ)總線 存儲(chǔ)器。由大量可以存儲(chǔ)一個(gè)二進(jìn)制代碼的存儲(chǔ)元構(gòu)成存儲(chǔ)器 通常為單獨(dú)器件,指令和數(shù)據(jù)都存放在存儲(chǔ)器中運(yùn)算器 ALU、操作數(shù)通道單元、判別邏輯和控制單元等構(gòu)成了運(yùn)算器 運(yùn)算器不僅可以完成算術(shù)邏輯運(yùn)算,還可以作為數(shù)據(jù)信息的傳送通道 向ALU提供操作數(shù)的實(shí)現(xiàn)方法有兩種:ALU輸入端加多路選擇器ALU輸入端加一級(jí)暫存器(鎖存器)帶
7、多路選擇器的運(yùn)算器 由寄存器的同步輸入脈沖CPi將內(nèi)部總線上的數(shù)據(jù)送入Ri帶輸入鎖存器的運(yùn)算器運(yùn)算器內(nèi)部總線 主要有3種結(jié)構(gòu)形式 單總線結(jié)構(gòu)運(yùn)算器 雙總線結(jié)構(gòu)運(yùn)算器 三總線結(jié)構(gòu)運(yùn)算器單總線結(jié)構(gòu)運(yùn)算器雙總線結(jié)構(gòu)運(yùn)算器三總線結(jié)構(gòu)運(yùn)算器控制器 讀取指令 翻譯、分析指令 執(zhí)行指令指令部件 程序計(jì)數(shù)器(PC):用來(lái)保存當(dāng)前正在執(zhí)行的一條指令或接著要執(zhí)行的下一條指令的地址; 指令寄存器(IR):用來(lái)存放從存儲(chǔ)器中取出的指令; 指令譯碼器(ID):用來(lái)解釋指令、產(chǎn)生相應(yīng)的控制信號(hào)提供給微操作信號(hào)發(fā)生器; 地址形成部件:根據(jù)指令不同尋址方式,形成操作數(shù)的有效地址。時(shí)序部件 產(chǎn)生一定的時(shí)序信號(hào),以保證系統(tǒng)的各功
8、能部件有節(jié)奏地進(jìn)行信息傳送、加工和信息存儲(chǔ)微操作信號(hào)發(fā)生器 微操作。一條指令的取出和執(zhí)行可以分解成很多最基本的操作,這種最基本的不可再分割的操作稱為微操作信號(hào)發(fā)生器 控制單元(CU)。它是控制器的核心。不同的機(jī)器指令具有不同的微操作序列 微操作控制信號(hào)。由指令部件提供的譯碼信號(hào)、時(shí)序部件提供的時(shí)序信號(hào)和備控制功能部件所反饋的狀態(tài)及條件綜合形成的中斷控制邏輯 用來(lái)控制中斷處理的硬件邏輯存儲(chǔ)結(jié)構(gòu) 微處理器所執(zhí)行的指令和操作數(shù)據(jù)都是放在存儲(chǔ)器中 主要有兩種結(jié)構(gòu): 哈佛結(jié)構(gòu):微處理器連接一個(gè)指令存儲(chǔ)器和一個(gè)數(shù)據(jù)存儲(chǔ)器,指令和數(shù)據(jù)是獨(dú)立存儲(chǔ)的; 馮諾伊曼結(jié)構(gòu):微處理器只接一個(gè)存儲(chǔ)器,該存儲(chǔ)器中既有指令又
9、有數(shù)據(jù)哈佛結(jié)構(gòu)馮諾伊曼結(jié)構(gòu)微處理結(jié)構(gòu) 利用二者各自優(yōu)點(diǎn)進(jìn)行折衷構(gòu)建現(xiàn)在流行的帶高速緩存的 從外部上看是馮諾伊曼結(jié)構(gòu),即程序和數(shù)據(jù)都存在一個(gè)存儲(chǔ)器中,接口總線只有一套,接口簡(jiǎn)單且存儲(chǔ)成本低 從內(nèi)部上看是哈佛結(jié)構(gòu),即有獨(dú)立的指令和數(shù)據(jù)緩存,指令與數(shù)據(jù)是分開(kāi)存儲(chǔ)的,指令執(zhí)行速度快新微處理器結(jié)構(gòu)高速緩存(Cache) 最大特點(diǎn):存取速度快,但容量較小 將當(dāng)前使用頻率較高的程序和數(shù)據(jù)通過(guò)一定的替換機(jī)制從存儲(chǔ)器放入Cache指令集體系 指令的強(qiáng)弱是CPU的重要指標(biāo) 指令集是提高微處理器效率的最有效工具之一 主流體系結(jié)構(gòu):指令集可分為復(fù)雜指令集(CISC)和精簡(jiǎn)指令集(RISC)兩部分CISC 是一種為了便
10、于編程和提高記憶體訪問(wèn)效率的晶片設(shè)計(jì)體系 體系的指令特征使用微代碼 新設(shè)計(jì)的處理器,只需增加較少的電晶體就可以執(zhí)行同樣的指令集,也可以很快地編寫(xiě)新的指令集程式 其優(yōu)點(diǎn):能夠有效縮短新指令的微代碼設(shè)計(jì)時(shí)間,允許設(shè)計(jì)師實(shí)現(xiàn)CISC體系機(jī)器的向上相容 缺點(diǎn):指令集以及晶片的設(shè)計(jì)比上一代產(chǎn)品更復(fù)雜,不同的指令,需要不同的時(shí)鐘周期來(lái)完成,執(zhí)行較慢的指令,將影響整臺(tái)機(jī)器的執(zhí)行效率RISC 是為了提高處理器運(yùn)行的速度而設(shè)計(jì)的晶片體系 關(guān)鍵技術(shù)在于流水線操作。即在一個(gè)時(shí)鐘周期里完成多條指令 同樣長(zhǎng)度的指令;單機(jī)器周期指令 優(yōu)點(diǎn):在使用相同的晶片技術(shù)和相同運(yùn)行時(shí)鐘下,RISC系統(tǒng)的運(yùn)行速度將是CISC的24倍。
11、RISC處理器比相對(duì)應(yīng)的CISC處理器設(shè)計(jì)更簡(jiǎn)單 缺點(diǎn):多指令的操作使得程式開(kāi)發(fā)者必須小心地選用合適的編譯器,而且編寫(xiě)的代碼量會(huì)變得非常大。另外就是RISC體系的處理器需要更快記憶體CISC與RISC差異 CISC指令復(fù)雜,故采微指令碼控制單元的設(shè)計(jì),而RISC的指令90%是由硬體直接完成,只有10%的指令是由軟體以組合的方式完成,指令執(zhí)行時(shí)間上RISC較短,所須ROM空間相對(duì)的比較大 CISC的需要較多的定址模式,而RISC只有少數(shù)的定址模式,CISC占用的匯流排周期較多 CISC指令的格式長(zhǎng)短不一,執(zhí)行時(shí)的周期次數(shù)也不統(tǒng)一,而RISC結(jié)構(gòu)剛好相反,達(dá)到平均一周期完成一指令 在設(shè)計(jì)上RISC
12、較CISC簡(jiǎn)單;RISC因指令精簡(jiǎn)化后造成應(yīng)用程式碼變大,需要較大的程式記憶體空間 大量使用寄存器指令執(zhí)行過(guò)程 一條指令運(yùn)行的過(guò)程可分為3個(gè)階段:取指令階段分析取數(shù)階段執(zhí)行階段微處理器指令運(yùn)行控制流程取指令階段 完成的任務(wù)是將現(xiàn)行指令從主存儲(chǔ)器中取出來(lái)并送至指令寄存器(IR)中去,具體操作如下: 將程序計(jì)數(shù)器(PC)中的內(nèi)容送至存儲(chǔ)器地址寄存器(AR),并送地址總線(AB); 由控制單元(CU)經(jīng)控制總線(CB)向存儲(chǔ)器發(fā)讀命令; 從主存儲(chǔ)器中取出指令通過(guò)數(shù)據(jù)總線(DB)送到數(shù)據(jù)寄存器(DR); 將DR的內(nèi)容送至指令寄存器(IR)中; 將PC的內(nèi)容遞增,為取下一條指令做好準(zhǔn)備。取指令階段中微處
13、理器個(gè)部分工作流程分析取數(shù)階段 取出指令后,指令譯碼器(ID)可識(shí)別和區(qū)分出不同的指令類型執(zhí)行階段 完成指令規(guī)定的各種操作,形成穩(wěn)定的運(yùn)算結(jié)果,并將其存儲(chǔ)起來(lái)流水線構(gòu)架 一條指令從存儲(chǔ)器讀出來(lái)到執(zhí)行完,其主要工作流程為:取指(F)譯指(D)讀數(shù)(R)運(yùn)算(A)寫(xiě)數(shù)(W) 微處理器需要經(jīng)過(guò)5步才完成一條指令的操作 寄存器保存數(shù)據(jù)需要時(shí)鐘信號(hào),時(shí)鐘是操作的節(jié)拍,所有操作都是以時(shí)鐘為最基本時(shí)間進(jìn)行的 處理速度取決于每個(gè)節(jié)拍的時(shí)鐘周期馮諾依曼結(jié)構(gòu)的處理器時(shí)序圖平均每5個(gè)時(shí)鐘周期可以完成1條指令兩級(jí)流水線 微處理器分成兩個(gè)部分,取指和總線單元為一個(gè)功能體,譯指和運(yùn)算單元為一個(gè)功能體 兩個(gè)功能體相對(duì)獨(dú)立,
14、兩個(gè)功能體可以同時(shí)工作 平均每3個(gè)時(shí)鐘完成1條指令工作時(shí)序圖三級(jí)流水線 取指、讀寫(xiě)數(shù)據(jù)都會(huì)對(duì)存儲(chǔ)器進(jìn)行操作,采用哈佛結(jié)構(gòu)將指令讀取和數(shù)據(jù)讀取分離可以進(jìn)一步加快執(zhí)行速度 處理器含有三個(gè)功能體指令總線及讀取功能體;數(shù)據(jù)總線讀寫(xiě)功能體;譯指和運(yùn)算功能體 三個(gè)功能體相對(duì)獨(dú)立,三個(gè)功能體可以同時(shí)工作 平均每4個(gè)時(shí)鐘周期完成2條指令,即每個(gè)2時(shí)鐘周期完成1條指令工作時(shí)序圖5級(jí)流水線 最佳的途徑為:譯指和運(yùn)算分離,數(shù)據(jù)讀和寫(xiě)分離 譯指和運(yùn)算本身就是相互獨(dú)立的,所以非常容易分離 傳統(tǒng)的數(shù)據(jù)總線上的讀寫(xiě)是不可同時(shí)進(jìn)行,只能采用新型的存儲(chǔ)結(jié)構(gòu)和讀寫(xiě)策略來(lái)完成了數(shù)據(jù)同時(shí)讀寫(xiě) 平均每1個(gè)時(shí)鐘周期完成1條指令工作時(shí)序圖
15、加快處理速度 減小時(shí)鐘周期是唯一的途徑 減小時(shí)鐘周期就意味著這些運(yùn)算不能正確實(shí)現(xiàn) 將這些耗時(shí)較長(zhǎng)的操作將分成若干個(gè)耗時(shí)較短的子操作級(jí)聯(lián)起來(lái)完成,通過(guò)增加獨(dú)立單元的數(shù)目來(lái)實(shí)現(xiàn)高速處理,即增加流水線級(jí)數(shù)來(lái)實(shí)現(xiàn)并行操作量,相當(dāng)于以空間換時(shí)間。 整個(gè)程序的執(zhí)行速度不僅取決于指令的執(zhí)行速度,還受到流程跳轉(zhuǎn)的限制存儲(chǔ)控制 地址總線寬度決定存儲(chǔ)器的容量 微處理器通過(guò)外部總線與存儲(chǔ)器相連,N個(gè)地址線決定了存儲(chǔ)器容量最大為2N個(gè)基本存儲(chǔ)單元 微處理器通常是以字節(jié)為基本存儲(chǔ)單元的,每個(gè)基本存儲(chǔ)單元都有唯一的地址與之對(duì)應(yīng) 基本存儲(chǔ)單元地址的計(jì)算稱為尋址分段結(jié)構(gòu) 字長(zhǎng)W決定的存儲(chǔ)范圍為一個(gè)存儲(chǔ)組織,稱之為段,那么可以
16、將若干個(gè)段組合起來(lái)構(gòu)成整個(gè)存儲(chǔ)空間 地址分為段地址(SA)和有效地址(EA)。有效地址是指相對(duì)于段首的偏移量,也稱為偏移地址,它是由前面所述的尋址方式計(jì)算得到的。 段地址和有效地址按公式(SA)2M+(EA)進(jìn)行計(jì)算給出實(shí)際地址值,其中M為段移位量,2M為相鄰兩個(gè)段首之間的存儲(chǔ)空間大小,也就是當(dāng)前的段與后面的段不重疊的存儲(chǔ)空間大小非交疊方式和交疊方式 虛擬存儲(chǔ) 主要功能有兩個(gè):使程序中的地址與存儲(chǔ)器的地址相互獨(dú)立,保證用戶的程序設(shè)計(jì)中不需要考慮存儲(chǔ)器空間大小的限制;存儲(chǔ)器由主存和輔存兩類存儲(chǔ)設(shè)備組成 主存速度快但容量小,負(fù)責(zé)程序執(zhí)行,而輔存速度慢但容量大,負(fù)責(zé)程序保存地址映射 虛擬地址(VA)
17、,物理地址(PA) 相同的VA在不同時(shí)刻對(duì)應(yīng)的PA可能不同,不同的VA可能在不同時(shí)刻對(duì)應(yīng)的PA相同。 內(nèi)存管理單元(MMU):主要功能是負(fù)責(zé)VA到PA的映射關(guān)系 物理地址空間既可以大于也可以小于虛擬地址空間 MMU通常以頁(yè)為單位進(jìn)行VA到PA的映射,32位處理器的頁(yè)尺寸通常是4KB 映射關(guān)系是通過(guò)保有存在物理內(nèi)存中的頁(yè)表來(lái)描述的,MMU會(huì)查找頁(yè)表來(lái)確定一個(gè)VA應(yīng)該映射到PA主輔存儲(chǔ) 虛擬存儲(chǔ)器的基本思想是程序大小可以超過(guò)主存的大小,系統(tǒng)把當(dāng)前使用的部分保留在主存中,而把其它未被使用的部分保存在輔存中。 如果主存空間不足,那么可以將主存中暫時(shí)不用的存儲(chǔ)空間的內(nèi)容保存在輔存中,再將這些空間用來(lái)調(diào)入
18、所需要的程序工作流程 首先進(jìn)行內(nèi)部地址轉(zhuǎn)換(過(guò)程),如果要訪問(wèn)的數(shù)據(jù)在主存中(也就是內(nèi)部地址轉(zhuǎn)換成功),則根據(jù)轉(zhuǎn)換所得到的物理地址訪問(wèn)主存儲(chǔ)器(過(guò)程); 如內(nèi)部地址轉(zhuǎn)換失敗,則要根據(jù)邏輯地址進(jìn)行外部地址轉(zhuǎn)換(過(guò)程),得到輔存地址 需檢查主存中是否有空閑區(qū)(過(guò)程),如果沒(méi)有,就要根據(jù)替換算法,把主存中暫時(shí)不用的某塊數(shù)據(jù)通過(guò)I/O機(jī)構(gòu)調(diào)出,送往輔存(過(guò)程),再把由過(guò)程得到的輔存地址中的塊通過(guò)I/O機(jī)構(gòu)送往主存(過(guò)程); 如主存中有空閑區(qū)域,則直接把輔存中有關(guān)的塊通過(guò)I/O機(jī)構(gòu)送往主存(過(guò)程)虛擬存儲(chǔ)工作流程虛擬存儲(chǔ)器實(shí)現(xiàn) 需要操作系統(tǒng)和MMU配合自動(dòng)實(shí)現(xiàn)對(duì)存儲(chǔ)信息的調(diào)度和管理 操作系統(tǒng)在初始化或分
19、配、釋放內(nèi)存時(shí)會(huì)執(zhí)行一些指令在物理內(nèi)存中填寫(xiě)頁(yè)表,然后用指令設(shè)置MMU,告訴MMU頁(yè)表在物理內(nèi)存中的什么位置 設(shè)置好之后,CPU每次執(zhí)行訪問(wèn)內(nèi)存的指令都會(huì)自動(dòng)引發(fā)MMU做查表和地址轉(zhuǎn)換操作 地址轉(zhuǎn)換操作由硬件自動(dòng)完成,不需要用指令控制MMU去做總線操作 存儲(chǔ)器對(duì)于微處理器來(lái)說(shuō),是信息及處理算法的存放地 外設(shè)接口中的存儲(chǔ)單元是真正的信息源和信息宿 微處理器不僅要與存儲(chǔ)器相連,還要與外設(shè)接口相連存儲(chǔ)器的訪問(wèn)操作 行為存儲(chǔ)單元,列為存儲(chǔ)單元所含的位,存儲(chǔ)器只允許外部一次訪問(wèn)一個(gè)單元存儲(chǔ)器容量 存儲(chǔ)器的存儲(chǔ)單元是通過(guò)地址線來(lái)定位的,每個(gè)存儲(chǔ)單元都有一個(gè)唯一片內(nèi)地址與之對(duì)應(yīng) 每個(gè)存儲(chǔ)單元的大小就是存儲(chǔ)器
20、的數(shù)據(jù)線寬度 地址線寬度決定了存儲(chǔ)器的字?jǐn)?shù),n條地址線的存儲(chǔ)器的字?jǐn)?shù)為2n 數(shù)據(jù)線寬度決定了存儲(chǔ)器的字長(zhǎng)存儲(chǔ)器時(shí)序 存儲(chǔ)器的數(shù)據(jù)線是三態(tài)雙向線存儲(chǔ)器擴(kuò)展舉例:字?jǐn)U展示意圖 系統(tǒng)需要2m個(gè)字長(zhǎng)為w的存儲(chǔ)單元,現(xiàn)有的字長(zhǎng)為w的存儲(chǔ)器只有n個(gè)地址線,且nm分析 統(tǒng)所需要的存儲(chǔ)單元字長(zhǎng)為w,而現(xiàn)有的存儲(chǔ)器本身字長(zhǎng)為w,將存儲(chǔ)器的數(shù)據(jù)線與系統(tǒng)的數(shù)據(jù)線一一相連 系統(tǒng)所需要地址線比現(xiàn)有的存儲(chǔ)器的地址線多,需要多個(gè)存儲(chǔ)器來(lái)擴(kuò)展 假定m=10,n=8,可知k=4,即有4片RAM擴(kuò)展字?jǐn)U展結(jié)構(gòu)圖 RAM0:000H0FFH,RAM1:100H1FFH,RAM2:200H2FFH,RAM3:300H3FFH舉例:位
21、擴(kuò)展 系統(tǒng)需要個(gè)地址線數(shù)為n和字長(zhǎng)為m的存儲(chǔ)單元,現(xiàn)有的字長(zhǎng)為w的存儲(chǔ)器只有n個(gè)地址線,且wm,給出位擴(kuò)展示意圖分析 系統(tǒng)所需要的地址線與現(xiàn)有的存儲(chǔ)器的地址線相同,將存儲(chǔ)器的地址線與系統(tǒng)的地址線一一相連 系統(tǒng)所需要數(shù)據(jù)線比現(xiàn)有的存儲(chǔ)器的數(shù)據(jù)線多。所需要的存儲(chǔ)器數(shù)量為k=m/w 所有存儲(chǔ)器的同一個(gè)片內(nèi)地址的存儲(chǔ)空間的系統(tǒng)地址相同且唯一 假定n=8,w=4,m=16,可知k=4,即有4片RAM擴(kuò)展位擴(kuò)展結(jié)構(gòu)圖 4個(gè)RAM對(duì)應(yīng)的系統(tǒng)地址均為000H0FFH存儲(chǔ)器讀寫(xiě)操作 8位的存儲(chǔ)器是以字節(jié)作為基本存儲(chǔ)單元的,所以存儲(chǔ)器的控制只需要地址線、片選和讀寫(xiě)使能等信號(hào) 16位的存儲(chǔ)器字長(zhǎng)是2個(gè)字節(jié),分別稱低
22、8位為低字節(jié),高8位為高字節(jié) 通常16位存儲(chǔ)器會(huì)提供一個(gè)專用的高字節(jié)使能(UB)和低字節(jié)使能(LB)信號(hào)讀寫(xiě)操作信號(hào)32位存儲(chǔ)器 字長(zhǎng)是4個(gè)字節(jié),分別稱為最高字節(jié),次高字節(jié)、次低字節(jié)和最低字節(jié) 支持字節(jié)和雙字節(jié)操作,通常會(huì)提供4個(gè)相應(yīng)的字節(jié)使能信號(hào)UUB、ULB、LUB和LLB舉例:存儲(chǔ)器讀寫(xiě) 有一個(gè)字長(zhǎng)為16的存儲(chǔ)器,如下圖所示。如果將數(shù)據(jù)12H和34H讀出,那么該存儲(chǔ)器的地址線、數(shù)據(jù)線和字節(jié)使能信號(hào)的值。如果將數(shù)據(jù)12H和78H讀出,又為何值方案 讀取12H和34H有兩種方案,一種是先讀12H,再讀34H;另一種方案把12H和34H一次讀出 讀取12H和78H只有一種方案,即先讀12H再讀
23、78H系統(tǒng)總線讀寫(xiě)操作 微處理器是以字節(jié)為基本單位來(lái)對(duì)存儲(chǔ)空間進(jìn)行編址的 地址總線有n條,數(shù)據(jù)總線有w條,將數(shù)據(jù)總線以8位為一組,從低到高分成m組,每組就是一個(gè)字節(jié) 對(duì)應(yīng)的存儲(chǔ)器需要n條地址且字長(zhǎng)為mB,其容量為2nmB 總線的地址線和數(shù)據(jù)線決定系統(tǒng)最大容量 存儲(chǔ)器需要字節(jié)使能信號(hào),這個(gè)信號(hào)應(yīng)由總線提供存儲(chǔ)器示意圖8位總線D0-D7 總線大小就是字節(jié),直接采用給定的地址進(jìn)行訪問(wèn)即可,不需要對(duì)地址進(jìn)行特殊處理16位總線D0-D15 總線為2個(gè)字節(jié),地址總線由A1-An-1組合而成 數(shù)據(jù)總線的低8位D0-D7對(duì)應(yīng)著偶地址,高8位D8-D15對(duì)應(yīng)著奇地址,通過(guò)字節(jié)使能線 和 選擇規(guī)定的空間 值剛好與
24、物理地址的A0值相等,所以有的16位微處理器只給出A0,而 改記為0BE1BE0BE1BEBHE16位存儲(chǔ)器結(jié)構(gòu) 32位總線D0-D31 共有4個(gè)字節(jié),所以地址總線由A2-An-1組合而成 數(shù)據(jù)總線的最低字節(jié)D0-D7、次低字節(jié)D8-D15、次高字節(jié)D16-D23和最高字節(jié)D24-D31 根據(jù)指令要求通過(guò)字節(jié)使能線 、 、 和 選擇規(guī)定的空間0BE1BE2BE3BE32位存儲(chǔ)器結(jié)構(gòu) 舉例 某16位處理器的算法中有以下三條指令分別為:以字節(jié)方式將0ABH和0CDH分別保存在地址1234H和1235H的存儲(chǔ)空間中,再以字方式將這兩個(gè)存儲(chǔ)空間內(nèi)容讀出。給出這三步操作執(zhí)行時(shí)地址總線、控制總線和數(shù)據(jù)總線
25、上的信號(hào)總線信號(hào)總線與存儲(chǔ)器的連接總線信號(hào)關(guān)系舉例 有一16位微處理器,可尋址空間為64KB。外部有兩片容量為16K8位的RAM,還有一片16K16位的RAM。試給出總線與存儲(chǔ)器連接的示意圖結(jié)構(gòu)圖總線與外設(shè)接口的連接 外設(shè)接口的寄存器可以8位、16位或32位,它們通常都是直接訪問(wèn)整個(gè)寄存器 外設(shè)接口的內(nèi)部寄存器是有一個(gè)唯一的片內(nèi)地址 當(dāng)多個(gè)外設(shè)同時(shí)連接在總線上時(shí),采用部分高端地址進(jìn)行區(qū)分,通過(guò)譯碼器產(chǎn)生外設(shè)的片選信號(hào) 如果總線字長(zhǎng)與外設(shè)接口數(shù)據(jù)字長(zhǎng)相同,那么數(shù)據(jù)線直接對(duì)應(yīng)相連即可,其訪問(wèn)地址是連續(xù)的8位接口數(shù)據(jù)連接16位總線 兩類接法:直接接數(shù)據(jù)總線的低8位或高8位,接低8位時(shí)要讓BE0參與片
26、選產(chǎn)生,接高8位時(shí)要讓BE1參與片選產(chǎn)生;采用三態(tài)傳輸門(mén)電路,即BE0有效而B(niǎo)E1無(wú)效時(shí),等效接數(shù)據(jù)總線的低8位,BE0無(wú)效而B(niǎo)E1有效時(shí),等效接數(shù)據(jù)總線的高8位連接示意圖 (a)8位總線連接方式 (b)16位總線低8位連接方式 (c)16位總線高8位連接方式 (d)16位總線連接連接信號(hào)表面向軟件系統(tǒng)的支撐結(jié)構(gòu) 微處理器主要工作是執(zhí)行算法程序的代碼,按照代碼進(jìn)行信息處理 一個(gè)微處理器系統(tǒng)必須擁有ROM 算法程序代碼可以放在ROM中,也可以放在外部海量存儲(chǔ)器中 存放在外部海量存儲(chǔ)器中的算法程序代碼必須加載到RAM中才可以執(zhí)行 外接外部海量存儲(chǔ)器的微處理器系統(tǒng)中,ROM必須有這樣的功能程序代碼,
27、它能夠驅(qū)動(dòng)外部海量存儲(chǔ)器、加載其中的程序代碼到RAM中和執(zhí)行RAM中的程序代碼等功能程序執(zhí)行 實(shí)際微處理器系統(tǒng)中,加電后微處理器會(huì)自動(dòng)初始化內(nèi)部的寄存器,其中的指令地址寄存器會(huì)變成規(guī)定的初始值,微處理器就從這個(gè)地址開(kāi)始執(zhí)行程序 啟動(dòng)加載過(guò)程。系統(tǒng)的第一條程序代碼應(yīng)放在這個(gè)規(guī)定地址,可以通過(guò)跳轉(zhuǎn)指令將指令地址轉(zhuǎn)到任何程序代碼的存放地址上。 RAM的首要功能是保存程序代碼執(zhí)行過(guò)程中產(chǎn)生的數(shù)據(jù) 在程序的設(shè)計(jì)時(shí),程序代碼空間視為只讀空間,在ROM或RAM中執(zhí)行都可以棧存儲(chǔ)結(jié)構(gòu) 在實(shí)際的程序設(shè)計(jì)中,由于寄存器數(shù)據(jù)數(shù)目有限,而計(jì)算會(huì)需要大量的中間數(shù),采用寄存器保存所有中間數(shù)是不可能 為中間數(shù)都開(kāi)辟存儲(chǔ)器空
28、間可以緩解了寄存器與計(jì)算中間數(shù)保存之間的矛盾 最佳的方法是動(dòng)態(tài)分配存儲(chǔ)單元,即先定義一定大小的存儲(chǔ)器空間作為數(shù)據(jù)暫存空間 兩種方式:先進(jìn)先出(FIFO)方式和后進(jìn)先出(LIFO)方式先進(jìn)先出方式 是數(shù)據(jù)結(jié)構(gòu)中稱為隊(duì)列的方式,它需要兩個(gè)指針,即隊(duì)首指針和隊(duì)尾指針 寫(xiě)入數(shù)據(jù)時(shí)隊(duì)尾指針后移,讀取數(shù)據(jù)時(shí)隊(duì)首指針后移 隊(duì)列的長(zhǎng)度是有限的,需要將該隊(duì)列構(gòu)成循環(huán)隊(duì)列方式進(jìn)行操作 要通過(guò)隊(duì)首指針和隊(duì)尾指針的比較運(yùn)算來(lái)判定隊(duì)列是否為空或滿 隊(duì)尾指針和隊(duì)首指針相同就表明堆棧為空,隊(duì)列初始化時(shí)必須為空先進(jìn)先出方式結(jié)構(gòu)后進(jìn)先出方式 是數(shù)據(jù)結(jié)構(gòu)中稱為堆棧的方式,只需要一個(gè)堆棧指針 當(dāng)寫(xiě)入數(shù)據(jù)時(shí)指針后移,也稱為入?;驂簵?/p>
29、,當(dāng)讀取數(shù)據(jù)時(shí)指針前移,也稱為出棧或彈棧 堆棧本身有兩個(gè)指針,一個(gè)是用來(lái)保存數(shù)據(jù)的,始終指向最后一個(gè)保存的數(shù)據(jù),稱為棧頂指針,也就是常說(shuō)的堆棧指針;另一個(gè)指針始終指向第一個(gè)數(shù)據(jù)存放單元的前一個(gè)單元,稱為棧底指針 棧頂指針和棧底指針相同就表明堆棧為空,堆棧初始化時(shí)必須為空后進(jìn)先出方式結(jié)構(gòu)堆棧結(jié)構(gòu)特點(diǎn) 堆棧是微處理器支撐軟件功能的必備結(jié)構(gòu) 堆??梢苑奖隳承┝康呐R時(shí)保存,也可以開(kāi)辟一些臨時(shí)量為處理所用堆棧應(yīng)用舉例子過(guò)程 在程序設(shè)計(jì)中,有許多操作可能被多處使用。為了節(jié)約空間,程序設(shè)計(jì)中采用過(guò)程(或稱為函數(shù))實(shí)現(xiàn)功能的同時(shí)又減少空間浪費(fèi) 這種結(jié)構(gòu)特點(diǎn)有利于減少程序空間,同時(shí)也減少了編程工作量,并且程序更
30、易讀 調(diào)用指令在轉(zhuǎn)移前要保存該指令后面的指令地址,調(diào)用結(jié)束返回調(diào)用指令的下一條指令地址子過(guò)程調(diào)用和返回結(jié)構(gòu)中斷 CPU正在執(zhí)行常規(guī)處理程序指令時(shí),發(fā)生了一件需要盡快處理的事件并通知CPU,CPU將暫停當(dāng)前工作,轉(zhuǎn)向執(zhí)行該事件所對(duì)應(yīng)的處理程序指令。當(dāng)執(zhí)行完該事件的所有處理程序指令后,再繼續(xù)當(dāng)前的工作 中斷通常是用來(lái)處理需要及時(shí)處理的事件(也稱為異常事件)產(chǎn)生中斷的方法 通知CPU事件發(fā)生稱為中斷請(qǐng)求 中斷兩類:外部設(shè)備通過(guò)電信號(hào)的變化來(lái)產(chǎn)生中斷稱為硬中斷或外部中斷;由軟件本身產(chǎn)生,稱為軟中斷或內(nèi)部中斷,通常簡(jiǎn)稱為軟中斷中斷 CPU暫停當(dāng)前工作而轉(zhuǎn)向執(zhí)行相應(yīng)的事件處理程序稱為中斷響應(yīng) 其相應(yīng)的事件
31、處理程序稱為中斷處理程序或中斷服務(wù)程序 當(dāng)前工作的暫停之處稱為斷點(diǎn) 當(dāng)CPU處理完中斷處理程序后將返回?cái)帱c(diǎn),繼續(xù)當(dāng)前的工作,這稱為中斷返回中斷返回 中斷處理程序執(zhí)行完后要返回 在處理中斷處理程序之前要將當(dāng)前工作將要執(zhí)行的指令的地址保存起來(lái) 當(dāng)中斷處理程序結(jié)束時(shí)將該地址取出 CPU從該地址繼續(xù)執(zhí)行當(dāng)前工作中斷嵌套 中斷為了解決事件的優(yōu)先級(jí)問(wèn)題,對(duì)中斷也采用優(yōu)先級(jí)處理策略 高優(yōu)先級(jí)的中斷可以暫停正在進(jìn)行的低優(yōu)先級(jí)中斷的中斷處理程序 只有高優(yōu)先級(jí)的中斷完成后,低優(yōu)先級(jí)中斷的處理程序才能繼續(xù)進(jìn)行中斷處理流程 完成當(dāng)前的指令 將當(dāng)前微處理器狀態(tài)和即將執(zhí)行的指令地址保存(有的用堆棧,有的用寄存器) 關(guān)中斷 根據(jù)中斷類型取出相應(yīng)的中斷處理程序地址 執(zhí)行中斷處理程序:先進(jìn)行現(xiàn)場(chǎng)保護(hù),再執(zhí)行中斷處理操作,最后恢復(fù)現(xiàn)場(chǎng)。 中斷處理程序結(jié)束時(shí),執(zhí)行返回指令,將微處理器狀態(tài)恢復(fù)到進(jìn)入中斷前的值,并將程序執(zhí)行的地址變更為進(jìn)入
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 人教版七年級(jí)數(shù)學(xué)下冊(cè)8.2.1.2《代入消元法(2)》聽(tīng)評(píng)課記錄
- 新版華東師大版八年級(jí)數(shù)學(xué)下冊(cè)《18平行四邊形》聽(tīng)評(píng)課記錄30
- 珍稀郵票贈(zèng)與合同(2篇)
- 生物識(shí)別技術(shù)開(kāi)發(fā)合同(2篇)
- 蘇人版道德與法治九年級(jí)上冊(cè)2.1《參與公共生活》聽(tīng)課評(píng)課記錄
- 《青銅器與甲骨文》聽(tīng)課評(píng)課記錄2(新部編人教版七年級(jí)上冊(cè)歷史)
- 晉教版地理七年級(jí)下冊(cè)《9.1 東南亞──兩洲兩洋的“十字路口”》聽(tīng)課評(píng)課記錄2
- 蘇科版數(shù)學(xué)七年級(jí)上冊(cè)第四章 一元一次方程-應(yīng)用教聽(tīng)評(píng)課記錄
- 湘教版數(shù)學(xué)八年級(jí)下冊(cè)2.2.2《平行四邊形的判定定理》聽(tīng)評(píng)課記錄2
- 湘教版九年級(jí)數(shù)學(xué)上冊(cè)第1章反比例函數(shù)1.3反比例函數(shù)的應(yīng)用聽(tīng)評(píng)課記錄
- 5《這些事我來(lái)做》(說(shuō)課稿)-部編版道德與法治四年級(jí)上冊(cè)
- 2025年度高端商務(wù)車輛聘用司機(jī)勞動(dòng)合同模板(專業(yè)版)4篇
- 2025年福建福州市倉(cāng)山區(qū)國(guó)有投資發(fā)展集團(tuán)有限公司招聘筆試參考題庫(kù)附帶答案詳解
- 2025年人教版新教材數(shù)學(xué)一年級(jí)下冊(cè)教學(xué)計(jì)劃(含進(jìn)度表)
- GB/T 45107-2024表土剝離及其再利用技術(shù)要求
- 2025長(zhǎng)江航道工程局招聘101人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025年黑龍江哈爾濱市面向社會(huì)招聘社區(qū)工作者1598人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025年國(guó)新國(guó)際投資有限公司招聘筆試參考題庫(kù)含答案解析
- 2025年八省聯(lián)考四川高考生物試卷真題答案詳解(精校打印)
- 《供電營(yíng)業(yè)規(guī)則》
- 執(zhí)行總經(jīng)理崗位職責(zé)
評(píng)論
0/150
提交評(píng)論