第2講微型計算機系統(tǒng)的微處理器_第1頁
第2講微型計算機系統(tǒng)的微處理器_第2頁
第2講微型計算機系統(tǒng)的微處理器_第3頁
第2講微型計算機系統(tǒng)的微處理器_第4頁
第2講微型計算機系統(tǒng)的微處理器_第5頁
已閱讀5頁,還剩92頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、1蘇放 北京郵電大學 信息與通信工程學院8086/8088微處理器微處理器238086微處理器的結構 8086CPU是Intel系列的16位微處理器,它采用HMOS工藝制造,雙列直插,有40個引腳。 8086CPU的電源為單一5V,主時鐘頻率為5MHz10MHz。它的外部數(shù)據(jù)總線為16位,地址線為20根。因為可用20位地址,所以可尋址的地址空間達1MB。48086微處理器的結構 8086CPU在內(nèi)部采用了并行流水線結構,可以提高CPU的利用率和處理速度。 8086CPU被設計為支持多處理器系統(tǒng),因此能方便地與數(shù)值協(xié)處理器8087或其他協(xié)處理器相連,構成多處理器系統(tǒng),從而提高系統(tǒng)的數(shù)據(jù)處理能力。

2、 8086CPU還具有一個功能相對完善的指令系統(tǒng),能對多種類型的數(shù)據(jù)進行處理,使程序設計方便、靈活。58086的功能結構 從功能上講,8086分為兩部分,即總線接口部件BIU(Bus Interface Unit)和執(zhí)行部件EU(Execution Unit)。6總線接口部件BIU BIU是CPU與外部存儲器及IO的接口,負責與存儲器和I0系統(tǒng)進行數(shù)據(jù)交換。 BIU由下列各部分組成: 4個16位段地址寄存器 代碼段寄存器CS 數(shù)據(jù)段寄存器DS 附加段寄存器ES 堆棧段寄存器SS7 16位指令指針I(yè)P:IP用于存放下一條要執(zhí)行指令的有效地址EA(即偏移地址) 。 20位物理地址加法器:加法器用于

3、將邏輯地址變換成讀寫存儲器所需的20位物理地址,即完成地址加法操作。 6字節(jié)的指令隊列:當執(zhí)行單元EU正在執(zhí)行指令中,且不需要占用總線時,BIU會自動進行預取下一條或幾條指令的操作,并按先后次序存入指令隊列中排隊,由EU按順序取來執(zhí)行。 總線控制邏輯:總線控制邏輯用于產(chǎn)生并發(fā)出總線控制信號,以實現(xiàn)對存儲器和IO端口的讀寫控制。8執(zhí)行部件EU 執(zhí)行部件EU的功能就是負責指令的執(zhí)行。 EU包括下列幾個部分: 算術邏輯單元ALU: ALU完成16位或8位的二進制數(shù)的算術邏輯運算,絕大部分指令的執(zhí)行都由ALU完成。 標志寄存器FR:它用來反映CPU最近一次運算結果的狀態(tài)特征或存放控制標志。 通用寄存器

4、組:它包括4個數(shù)據(jù)寄存器AX、BX、CX、DX,4個專用寄存器:基址指示器BP、堆棧指示器SP、源變址寄存器SI和目的變址寄存器DI。 EU控制器:它接收從BIU中指令隊列取來的指令,經(jīng)過指令譯碼形成各種定時控制信號,向EU內(nèi)各功能部件發(fā)送相應的控制命令,以完成每條指令所規(guī)定的操作。9BIU和EU的動作管理 在8086中, EU和BIU兩部分是按流水線方式并行工作的 取指執(zhí)行取指執(zhí)行取指執(zhí)行取指執(zhí)行取指執(zhí)行(a) 早期微處理器指令的執(zhí)行過程(b) 8086微處理器指令的執(zhí)行過程108086的寄存器結構 8086CPU內(nèi)部有14個16位寄存器,可以分為三組: 數(shù)據(jù)寄存器ALAHBHBLCHCLD

5、HDLSPBPDISIIPCSDSSSESAXBXCXDX堆棧指針基數(shù)指針源變址目的變址指令指針狀態(tài)標志代碼段數(shù)據(jù)段堆棧段附加段指針寄存器指針寄存器控制寄存器段寄存器通 用寄存器FLAG11通用寄存器組 通用寄存器可以分為兩組:數(shù)據(jù)寄存器和地址指針與變址寄存器。數(shù)據(jù)寄存器數(shù)據(jù)寄存器包括AX、BX、CX、DX等4個16位寄存器它們既可以作為16位寄存器使用,也可以將每個寄存器高字節(jié)和低字節(jié)分開作為兩個獨立的8位寄存器使用。12地址指針和變址寄存器 地址指針和變址寄存器組包括SP、BP、SI和DI等4個16位寄存器。它們主要是用來存放或指示操作數(shù)的偏移地址。 堆棧指針SP中存放的是當前堆棧段中棧頂

6、的偏移地址。 BP是訪問堆棧時的基址寄存器。SP、BP通常和SS聯(lián)用。 SI和DI稱為變址寄存器。它們通常與DS聯(lián)用,為程序訪問當前數(shù)據(jù)段提供操作數(shù)的段內(nèi)偏移地址。SI和DI中的內(nèi)容分別是當前數(shù)據(jù)段和當前附加段中某一存儲單元的偏移地址。 當SI、DI和BP不作指示器和變址寄存器使用時,也可將它們當作一般數(shù)據(jù)寄存器使用,存放操作數(shù)或運算結果。 138086CPU中通用寄存器的特殊用途和隱含性質中通用寄存器的特殊用途和隱含性質 AX,AL在輸入輸出指令中作數(shù)據(jù)寄存器不能隱含乘法指令中存放被乘數(shù)和乘積,除法指令中存放被除數(shù)和商隱含AH在LAHF指令中,作目標寄存器用隱含在十進制運算指令中作累加器用隱

7、含AL在XLAT指令中作累加器用隱含BX在間接尋址中作基址寄存器用不能隱含在XLAT中作基址寄存器用 隱含CX在串操作指令和LOOP指令中作計數(shù)器用隱含CL在移位循環(huán)移位指令中作移位次數(shù)計數(shù)器用 不能隱含DX在字乘法除法指令中存放乘積高位或被除數(shù)高位或余數(shù)隱含在間接尋址的輸入輸出指令中作地址寄存器用 不能隱含SI在字符串運算指令中作源變址寄存器用 隱含在間接尋址中作變址寄存器用 不能隱含DI在字符串運算指令中作目的寄存器用 隱含在間接尋址中作變址寄存器用 不能隱含BP在間接尋址中作基址指針用 不能隱含SP在堆棧操作中作堆棧指針用 隱含14段寄存器組 8086CPU可直接尋址lMB的內(nèi)存空間。直

8、接尋址時需要20位地址碼,而所有的內(nèi)部寄存器都是16位的,用它們作地址寄存器,只能直接尋址64KB單元。 在8086CPU中采用了存儲空間分段技術來解決這一矛盾。將lMB的存儲空間分成若干個邏輯段,每段最大長度為64KB。 15物理地址形成 段寄存器中的16位數(shù)自動左移4位,然后與16位偏移量相加 ,形成20位物理地址。地址加法器段基址左移4位偏移地址20位物理地址段寄存器有效地址 EA 19015019016段寄存器的選擇 在形成物理地址時,究竟是取哪一個段寄存器的內(nèi)容做段基址,這取決于CPU做何操作: 對于取指操作,是將當前CS中的內(nèi)容左移4位(相當乘16)再加上IP的內(nèi)容,形成20位指令

9、地址; 對于存取數(shù)據(jù)操作,是將當前數(shù)據(jù)段寄存器DS中的段基址左移4位,再與16位偏移地址EA相加,形成20位的物理地址; 對于壓棧和彈棧操作,是將當前堆棧段寄存器SS中的段基址左移4位,再與SP相加,形成20位的物理地址; 在對目的串操作時,是以當前附加段寄存器ES中的段基址左移4位,再與DI相加以形成20位的物理地址。17段超越除了基本段約定之外,8086還允許部分改變基本段約定,如存取數(shù)據(jù)的基本段為數(shù)據(jù)段,但可以臨時改變?yōu)榇a段、或附加段、或堆棧段,這種情況稱為段超越。 CPUCPU執(zhí)行的操作執(zhí)行的操作基本段約定基本段約定允許修改的段允許修改的段偏移地址偏移地址取指令取指令CSCS無無IP

10、IP壓棧、彈棧壓棧、彈棧SSSS無無SPSP源串源串DSDSCS,ES,SSCS,ES,SSSISI目的串目的串ESES無無DIDI通用數(shù)據(jù)讀寫通用數(shù)據(jù)讀寫DSDSCS,ES,SSCS,ES,SS有效地址有效地址EAEABPBP作間址寄存器作間址寄存器SSSSCS,DS,ESCS,DS,ES有效地址有效地址EAEA18控制寄存器 指令指針I(yè)P 用來存放將要執(zhí)行的下一條指令在現(xiàn)行代碼段中的偏移地址。 程序運行中,IP的內(nèi)容由BIU自動修改,使IP始終指向下一條將要執(zhí)行的指令地址。 正常情況下,程序是不能直接訪問(修改)IP的內(nèi)容的,但當需要改變程序執(zhí)行順序時,如遇到中斷指令或調用指令時,IP中的

11、內(nèi)容將被自動修改。19控制寄存器標志寄存器FR標志寄存器FR用來存放指令執(zhí)行結果特征。狀態(tài)標志:狀態(tài)標志位有6個,由CPU在運算過程中自動置位或清零,用來表示運算結果的特征。除CF標志外,其余5個狀態(tài)標志一般不能直接設置或改變。 1)、CF(Carry Flag)進位標志。當算術運算結果使最高位(對字節(jié)操作是D7位,對字操作是D15位)產(chǎn)生進位或借位時,則CF=1;否則CF 0。循環(huán)移位指令執(zhí)行時也會影響此標志。 2)、PF(Parity Flag)奇偶標志。若本次運算結果中的低8位含有偶數(shù)個1,則PF=1;否則 PF0。 3)、AF(Auxiliary Carry Flag)輔助進位標志。本

12、次運算過程中若D3位有進位或借位時,AF1;否則AF0。該標志用于BCD運算中的十進制調整。 4)、ZF(Zero Flag)零標志。若本次運算結果為0,則ZF1;否則ZF0。 5)、SF(Sign Flag)符號標志。它總是與運算結果的最高有效位相同,用來表示帶符號數(shù)本次運算結果是正還是負。 6)、OF(Overflow Flag)溢出標志。當帶符號數(shù)的補碼運算時,結果超出了機器所能表達的范圍時,就會產(chǎn)生溢出,這時溢出標志位OF1。OFDFIFTFSFZFAFPFCF20標志寄存器FR控制標志: 控制標志是用來控制CPU的工作方式或工作狀態(tài)的標志。用戶可以使用指令設置或清除。 1)、IF(I

13、nterrupt Flag) 中斷允許標志。它是控制可屏蔽中斷的標志,如IF=1時,允許CPU響應可屏蔽中斷;當IF=0時,即使外設有中斷申請,CPU也不響應,即禁止中斷。 2)、DF(Direction Flag) 方向標志。該標志用來控制串操作指令中地址指針的變化方向。在串操作指令中,若DF0,地址指針為自動增量,即由低地址向高地址進行串操作;若DF1,地址指針自動減量,即由高地址向低地址進行串操作。 3)TF(Trap Flag)單步標志。TF1時,CPU為單步方式,即每執(zhí)行完一條指令就自動產(chǎn)生一個內(nèi)部中斷,使用戶可逐條跟蹤程序進行調試。若TF0時,CPU正常執(zhí)行程序。21例例 將二進制

14、數(shù)(0101 0100 0011 1001)與(0100 0101 0110 1010)相加,分析其對標志位的影響。解:解: 0101 0100 0011 1001 + 0100 0101 0110 1010 1001 1001 1010 0011 對狀態(tài)標志的影響:SF1;ZF0;PF1;CF0;AF1;OF1。22例例 將二進制數(shù)(0010 0011 0100 0101)與(0011 0010 0001 1001)相加,分析其對標志位的影響。解:解: 0010 0011 0100 0101 + 0011 0010 0001 1001 0101 0101 0101 1110 對標志位的影響如

15、下: SF=0; ZF=0; PF=0; CF=0; AF=0; OF=0。238086的引腳信號及工作模式 為了盡可能適應各種應用場合,80868088 CPU設置有兩種工作模式:最大工作模式和最小工作模式。 最小工作模 式,指系統(tǒng)中只有80868088一個微處理器,在最小模式系統(tǒng)中,所有的總線控制信號都直接由80868088 CPU產(chǎn)生,系統(tǒng)的總線控制邏輯部件最少,因此,稱為最小工作模式。 最大工作模式,指系統(tǒng)中包含有兩個或兩個以上的微處理。其中,一個為主處理器,就是80868088 CPU;其它的稱為協(xié)處理器,它們協(xié)助主處理器工作。 248086 CPU 8086CPU采用40個引腳的雙

16、列直插式封裝形式。 80868088 CPU采用了引腳復用技術: 采用了分時復用的地址/數(shù)據(jù)總線 。 根據(jù)不同的工作模式定義不同的引腳功能。 8086的引腳圖258086的引腳及其功能 GND,Vcc(輸入)GND為接地端,Vcc為電源端。8086CPU采用的電源為5V10。ADl5AD0(AddressData Bus)地址數(shù)據(jù)復用總線(雙向、三態(tài))CPU訪問一次存儲器或I/O端口稱完成一次總線操作,或執(zhí)行一次總線周期。一個總線周期通常包括T1、T2、T3、T4四個T狀態(tài)。在每個狀態(tài)CPU將發(fā)出不同的信號。ADl5AD0作為復用引腳,在總線周期的T1狀態(tài),CPU在這些引腳上輸出要訪問的存儲器

17、或I0端口的地址。在T2T3狀態(tài),如果是讀周期,則處于浮空(高阻)狀態(tài),如果是寫周期,則為傳送數(shù)據(jù)。在中斷響應及系統(tǒng)總線處于“保持響應”周期時,ADl5AD0都被浮置為高阻抗狀態(tài)。 268086的引腳及其功能A19S6A16S3(AddressStatus)地址狀態(tài)復用線(輸出、三態(tài)) 在總線周期的T1狀態(tài),用來輸出地址的最高4位,在總線周期的其他狀態(tài)(T2,T3和T4狀態(tài)),用來輸出狀態(tài)信息。S6總是為0,表示8086CPU當前與總線相連。S5表明中斷允許標志的當前設置。S4和S3狀態(tài)的組合指出當前正使用哪個段寄存器。當系統(tǒng)總線處于“保持響應”周期時,A19/S6Al6/S3被置為高阻狀態(tài)。

18、S4S3含義含義00當前正在使用當前正在使用ES01當前正在使用當前正在使用ES10當前正在使用當前正在使用CS,或者未用任何段寄存器,或者未用任何段寄存器11當前正在使用當前正在使用DS278086 CPU引腳及其功能BHE/ S7 :允許高字節(jié)傳送/狀態(tài)輸出在T1狀態(tài), BHE在高8位數(shù)據(jù)總線D15 D8上傳送 一個字節(jié)數(shù)據(jù);BHE與A0把存儲器分為兩組(高組與低組):BHEA0狀態(tài)0 016位數(shù)據(jù)01高8位( D15 D8 )10低8位( D7 D0 )11保留不用288086 CPU引腳及其功能RD 讀信號,輸出 讀MEM或I/O操作,由M/IO引腳決定是讀M還是I/O口:M/IO=1

19、,讀MEM; M/IO=0,讀I/O口。READY:(輸入)外部器件發(fā)回的準備就緒信號 由MEM或I/O口發(fā)回的應答信號,CPU在T3的上升沿檢測該信號,若為高,則準備就緒,不插入Tw ;若為低,則未準備好,插入Tw ;系統(tǒng)規(guī)定可插入不超過10個Tw 。298086 CPU引腳及其功能INTR:(Interrupt)可屏蔽中斷請求信號(IN),高電平有效觸發(fā)的輸入信號,由外部設備發(fā)來; 該信號是在每一指令周期的最后一個T狀態(tài)被采樣,以決定是否進入中斷響應周期。 可用軟件屏蔽(CLI指令使IF=0)。7. NMI:非屏蔽中斷請求信號(IN) 邊沿 觸發(fā)信號,若有 NMI 請求,則現(xiàn)行指令結束后立

20、即引起中斷。 該信號不能用指令屏蔽,其檢測時間與INTR一樣。308086 CPU引腳及其功能TEST:檢測信號(IN) 該信號由8087發(fā)來,在WAIT指令執(zhí)行期間,CPU監(jiān)視TEST信號。若TEST為低電平,8086繼續(xù)執(zhí)行WAIT的下一條指令,否則CPU處于等待(空閑)狀態(tài),且重復測試TEST信號;TEST為高時,處于WAIT狀態(tài),TEST低電平時退出WAIT狀態(tài)。 8086CPU8087TEST BUSY318086 CPU引腳及其功能RESET:復位信號(IN),高有效 該信號使CPU結束現(xiàn)行操作,初始化內(nèi)部REG,CPU復位后: CS=FFFFH IP=0000H DS=0000H

21、 ES=0000H SS=0000H FR=0000(禁止中斷)指令隊列空,復位后執(zhí)行的第一條指令在內(nèi)存的FFFF0H(引導程序的入口地址),用JMP可轉到實際開始處。 CLK:時鐘,Vcc與GND:電源與地(IN) 328086 CPU引腳及其功能MN/MX:最小最大組態(tài)控制信號(IN) 當MN/MX=0,為最大組態(tài),構成多處理器系統(tǒng); 在最大組態(tài)時,控制信號由S2S0經(jīng)總線譯碼器8288譯碼產(chǎn)生。 當MN/MX=1,為最小組態(tài),構成單處理器系統(tǒng),CPU提供所有的總線控制信號。 MN/MX的接法決定了8個引腳(2431)之功能。338086 CPU引腳及其功能 當MN/MX=Vcc(最小組態(tài)

22、)時,各引腳功能:INTA:中斷響應信號(OUT) 是INTR的應答信號,在中斷響應時發(fā)兩個INTA周期。ALE:地址鎖存允許信號(OUT) (Address Latch Enable) 把地址/數(shù)據(jù)、地址/狀態(tài)線上的地址信號鎖存到地址鎖存器中,ALE在T1狀態(tài)有效。348086 CPU引腳及其功能M/IO:MEM與I/O控制信號(OUT) 決定訪問的是MEM或者是I/O: M/IO=1,訪問MEM; M/IO=0,訪問I/O口。WR:寫信號(OUT) 用來表示CPU處于寫MEM或者I/O口(與M/IO配合使用)。 358086 CPU引腳及其功能DT/R:數(shù)據(jù)收發(fā)信號(雙向,三態(tài)) 增加數(shù)據(jù)

23、總線的驅動能力,采用外加總線驅動器(收發(fā)器8286/8287)。當 DT/R=1,發(fā)送; DT/R=0,接收。 DEN:數(shù)據(jù)允許信號(Data Enable)(OUT) 作為總線驅動器8286/8287芯片的輸出允許信號(OE)。 在DMA方式時,被置為高阻抗狀態(tài)。 368086 CPU引腳及其功能HOLD(IN)與HLDA(OUT):總線請求保持 與總線響應保持信號 總線請求HOLD是由其它主設備發(fā)送給CPU; CPU檢測HOLD的時間: 在每一個總線周期的最后一 個T狀態(tài)。 總線響應HLDA作為CPU對HOLD之應答,并讓出總線控制權。378088 CPU的最小模式 只有8位數(shù)據(jù)總線,不需

24、要 信號。因此,34引腳定義為 。和 及 信號組合起來,決定了當前總線周期的操作。 SS0IO/MDT/RBHE3880868088 最小模式系統(tǒng)的基本配置最小模式系統(tǒng):最小模式系統(tǒng):應用于單一的微機處理系統(tǒng),應用于單一的微機處理系統(tǒng),3 3片片82828282鎖存鎖存2020位地址信息和位地址信息和BHE BHE ,2 2片片82868286作為作為1616位數(shù)據(jù)收發(fā)器位數(shù)據(jù)收發(fā)器 MN/MX RD WR CLK READY M/IORESET ALE A19-A16 BHE AD15-AD08086CPU DT/R DEN STB 8282 8282 或或828382838286 8286

25、 或或8287 8287 T TOEOE82848284RES RES 時鐘時鐘 發(fā)生器發(fā)生器存儲器 DATAI/O外設DATA數(shù)據(jù)總線數(shù)據(jù)總線地址總線地址總線地址總線地址總線地址地址/ /數(shù)據(jù)數(shù)據(jù)V VCCCCV VCCCCBHEBHE39鎖存器82828283 82828283用于鎖存CPU地址,形成獨立的數(shù)據(jù)和地址總線 82828283是帶有三態(tài)緩沖器的8位數(shù)據(jù)鎖存器,兩者輸出極性不同: 8282的輸出/輸入極性相同 8283的輸出/輸入極性相反 8位鎖存器74LS373的功能與82828283相同,也可實現(xiàn)鎖存功能。 4082868287總線收發(fā)器80868088 CPU輸出或接收數(shù)據(jù)

26、的能力是有限的。當總線上連接的設備較多時,為使系統(tǒng)穩(wěn)定工作,需要使用數(shù)據(jù)功率放大器,提高80868088 CPU數(shù)據(jù)總線的驅動能力。82868287是一種具有三態(tài)輸出的8位雙向總線收發(fā)器驅動器 OET方向01AB00BA1X三態(tài)41時鐘發(fā)生器8284A 時鐘發(fā)生器: 8284A提供系統(tǒng)時鐘。 8284A組成:晶體震蕩器,一個三分頻器,起同步作用的READY信號及復位RESET信號。 功能:提供時鐘信號,與外設時鐘; (外部晶體15MHz/24MHz3) 提供系統(tǒng)復位控制邏輯 ; 提供起同步作用的READY信號。輸出:RESET,CLK(5MHz),PCLK(2.5MHz), OSC(15MHz

27、),READY42 引腳信號功能引腳信號功能CSYNC: 使多個使多個8284A時鐘同步時鐘同步信號,信號,=0,內(nèi)部計數(shù),內(nèi)部計數(shù)PCLK: 外設時鐘信號外設時鐘信號AEN1,AEN2: 制約信號制約信號,與與RDY配合配合READY: 準備就緒準備就緒RDY1,RDY2: 總線準備就緒總線準備就緒ASYNC: READY同步選擇一、同步選擇一、兩級兩級RES,RESET: 復位入,復位復位入,復位出出OSC: 振蕩器輸出振蕩器輸出EFI: 外部時鐘頻率外部時鐘頻率F/C: 頻率頻率/晶體選擇晶體選擇438086 CPU引腳及其功能 當MN/MX=0(最大組態(tài))時,各引腳功能:S2、S1、S

28、0 :總線周期狀態(tài)信號(OUT) 此三狀態(tài)信號由總線控制器8288譯碼產(chǎn)生CPU所需的各種控制信號,產(chǎn)生8個控制信號。 S2 S1 S0功功 能能0 0 0中斷響應中斷響應0 0 1I/O 讀讀0 1 0I/O 寫寫0 1 1Halt1 0 0取操作碼取操作碼1 0 1存儲器讀存儲器讀1 1 0存儲器寫存儲器寫1 1 1Passive448086 CPU引腳及其功能 RQ/ GT0,RQ/ GT1:(Request/Grant) 總線請求(IN)/總線允許(OUT) 每一引腳都是雙向的,既可作為總線請求,又可 作為總線響應信號。外部主設備發(fā)來的請求信號為 輸入,CPU響應時為輸出。 若有兩個主

29、設備同時請求時 , RQ/ GT0比 RQ/ GT1級別高。458086 CPU引腳及其功能LOCK:總線鎖定信號(OUT) 該信號由前綴指令“LOCK”使其生效,且一直保持到下一指令執(zhí)行完,以使得外部總線主控設備不能獲得對系統(tǒng)總線的控制權。在80868088 CPU處于中斷響應周期期間, 會自動變?yōu)橛行?,以防其他總線主控件在中斷響應過程中占有總線而使一個完整的中斷響應過程被間斷。在DMA期間,被置為高阻抗狀態(tài)。 LOCK468086 CPU引腳及其功能QS1,QS0: 指令隊列狀態(tài)信號(OUT) 讓外部設備能監(jiān)視CPU內(nèi)部指令隊列狀況。 編碼如下:QS1QS0含義00無操作01來自隊列中指令

30、代碼的第一個字節(jié)10隊列空11來自隊列的后續(xù)字節(jié)478086最大模式系統(tǒng)下的基本配置 488086最大模式系統(tǒng)下的基本配置 與最小模式系統(tǒng)的主要區(qū)別是增加了一個總線控制器8288和一個總線仲裁器8289。 80868088 CPU輸出的狀態(tài)信號S2、 S1 、 S0同時送給8288和8289,由8288輸出CPU系統(tǒng)所需要的總線控制信號,包括對存儲器和IO端口進行讀寫的信號、對地址鎖存器8282和總線收發(fā)器8286的控制信號,以及中斷控制器8259的控制信號。 總線仲裁器8289對系統(tǒng)多個處理器間共享總線資源進行控制。 49總線控制器8288 50總線控制器82888288提供超前寫命令(AM

31、WC、AIOWC): 即在寫周期開始之前就啟動寫過程,其時序與讀 命令相同,在一定程度上避免處理器進入沒必要的 等待狀態(tài)。 8288有兩種工作方式,由IOB決定: 當IOB=0,系統(tǒng)總線工作方式: 8288工作在適合于單處理器工作的方式。此時,要求接地,CEN接5 V。 當IOB=1,I/O總線工作方式:此時IOB接5 V時,并且CEN接5 V, 端輸出外部設備數(shù)據(jù)允許PDEN信號。在多處理器系統(tǒng)中,該信號作為數(shù)據(jù)總線收發(fā)器的開啟信號。 MCE/PDEN518088的引腳與的引腳與8086的不同之處的不同之處8088的地址的地址/數(shù)據(jù)復用線為數(shù)據(jù)復用線為8條,即條,即AD7AD0,而而A15A

32、8為單一的地址線。為單一的地址線。8088中無中無/S7,該引腳為,該引腳為SS0狀態(tài)信號線。狀態(tài)信號線。該引腳信號在最大方式下保持高電平,在最小方式該引腳信號在最大方式下保持高電平,在最小方式下等效于最大方式下下等效于最大方式下S0的作用,的作用,SS0與與IO/、DT/組組合,以確定當前的總線周期合,以確定當前的總線周期 8088的的M /IO控制信號為控制信號為IO/ M ,即該信號為高,即該信號為高電平時,是電平時,是I/O端口訪問;為低電平時,是存儲器端口訪問;為低電平時,是存儲器訪問。這與訪問。這與8086的的M/ IO線剛好相反。線剛好相反。5280868088的存儲器組織 1、

33、8086/8088系統(tǒng)存儲器的組織系統(tǒng)存儲器的組織 8086/8088是是16位的微處理器,在組成存儲系統(tǒng)位的微處理器,在組成存儲系統(tǒng)時,總是使偶地址單元的數(shù)據(jù)通過時,總是使偶地址單元的數(shù)據(jù)通過AD0 AD7傳傳送,而奇地址單元的數(shù)據(jù)通過送,而奇地址單元的數(shù)據(jù)通過AD8 AD15傳送,傳送,所有的操作可以是按字節(jié)為單位也可以是按字為所有的操作可以是按字節(jié)為單位也可以是按字為單位來處理的。單位來處理的。 但但8086/8088系統(tǒng)中的存儲器是以系統(tǒng)中的存儲器是以8位(一個字位(一個字節(jié))為單位對數(shù)據(jù)進行處理的。因此每個字節(jié)用節(jié))為單位對數(shù)據(jù)進行處理的。因此每個字節(jié)用一個唯一的地址碼表示,這稱為存

34、儲器的一個唯一的地址碼表示,這稱為存儲器的標準結標準結構構。 53存儲器中的數(shù)據(jù)組織存儲器中的數(shù)據(jù)組織 計算機系統(tǒng)中,作為一個整體一次計算機系統(tǒng)中,作為一個整體一次存放或取出內(nèi)存儲器的數(shù)據(jù)稱為存放或取出內(nèi)存儲器的數(shù)據(jù)稱為“存儲字存儲字”例如例如8位機的存儲字是位機的存儲字是8位字長(即位字長(即一個字節(jié));一個字節(jié));16位機的存儲字是位機的存儲字是16位字長;位字長;32位機的存儲字是位機的存儲字是32位字長位字長。在現(xiàn)代計算機系統(tǒng)中,特別是微機在現(xiàn)代計算機系統(tǒng)中,特別是微機系統(tǒng)中,內(nèi)存儲器一般都以字節(jié)編系統(tǒng)中,內(nèi)存儲器一般都以字節(jié)編址,即一個存儲地址對應一個址,即一個存儲地址對應一個8位位

35、存儲單元。存儲單元。在在Intel 80X86系統(tǒng)中,系統(tǒng)中,16位存儲位存儲字或字或32位存儲字的地址是位存儲字的地址是2個或個或4個存儲單元中最低端的存儲單元的個存儲單元中最低端的存儲單元的地址,而此最低端存儲單元中存放地址,而此最低端存儲單元中存放的是的是32位字中最低位字中最低8位。位。例如,例如,32位存儲字位存儲字12345678H存存放在內(nèi)存中的情況放在內(nèi)存中的情況548086/8088系統(tǒng)存儲器的組織系統(tǒng)存儲器的組織需要說明的是,在存儲器中,任何連續(xù)存放需要說明的是,在存儲器中,任何連續(xù)存放的兩個字節(jié)都可以稱為一個字。的兩個字節(jié)都可以稱為一個字。 存放時,其低位字節(jié)可從奇數(shù)地址

36、開始,存放時,其低位字節(jié)可從奇數(shù)地址開始,這種方式稱為非規(guī)則方式,奇數(shù)地址的字這種方式稱為非規(guī)則方式,奇數(shù)地址的字稱為非規(guī)則字。稱為非規(guī)則字。 其高位字節(jié)可從偶數(shù)地址開始,這種方式其高位字節(jié)可從偶數(shù)地址開始,這種方式稱為規(guī)則方式,。將偶數(shù)地址的字稱為規(guī)稱為規(guī)則方式,。將偶數(shù)地址的字稱為規(guī)則字。則字。 552、 8086存儲器的分段結構存儲器的分段結構 由于由于8086/8088有有20條地址線,可以尋址多達條地址線,可以尋址多達220(1M)字節(jié),所以把)字節(jié),所以把1M字節(jié)的存儲器分為任意數(shù)量字節(jié)的存儲器分為任意數(shù)量的段,其中每一段最多可達尋址的段,其中每一段最多可達尋址64K字節(jié)。字節(jié)。

37、8086CPU把把1M字節(jié)的存儲器空間劃分為任意的字節(jié)的存儲器空間劃分為任意的一些存儲段,一個存儲段是存儲器中可獨立尋址的一一些存儲段,一個存儲段是存儲器中可獨立尋址的一個邏輯單位,也稱邏輯段,每個段的長度為個邏輯單位,也稱邏輯段,每個段的長度為64K字節(jié)。字節(jié)。 8086CPU中有四段寄存器:中有四段寄存器:CS,DS,SS和和ES,這四個段寄存器存放了這四個段寄存器存放了CPU當前可以尋址的四個段的當前可以尋址的四個段的基址,也即可以從這四個段寄存器規(guī)定的邏輯段中存基址,也即可以從這四個段寄存器規(guī)定的邏輯段中存取指令代碼和數(shù)據(jù)。一旦這四個段寄存器的內(nèi)容被設取指令代碼和數(shù)據(jù)。一旦這四個段寄存

38、器的內(nèi)容被設定,就規(guī)定了定,就規(guī)定了CPU當前可尋址的段。當前可尋址的段。 563、8086存儲器的邏輯地址和物理地址存儲器的邏輯地址和物理地址存儲器中的每個存儲單元都可以用兩個形式的地址來存儲器中的每個存儲單元都可以用兩個形式的地址來表示:表示:實際地址(或稱物理地址)和邏輯地址實際地址(或稱物理地址)和邏輯地址。實際地址實際地址:也稱物理地址,是用唯一的:也稱物理地址,是用唯一的20位二進制數(shù)位二進制數(shù)所表示的地址,規(guī)定了所表示的地址,規(guī)定了1M字節(jié)存儲體中某個具體單字節(jié)存儲體中某個具體單元的地址元的地址 。邏輯地址邏輯地址在程序中使用,即在程序中使用,即 段地址:偏移地址段地址:偏移地址

39、 。(4)物理地址的形成物理地址的形成物理地址有兩部分組成:物理地址有兩部分組成:段基址和偏移地址段基址和偏移地址。 578086存儲器的邏輯地址和物理地址存儲器的邏輯地址和物理地址 實際地址(物理地址PA:Physical Address):PA=(段地址16)+偏移地址 對二進制數(shù)來說,乘2相當于左移1位(21),乘16相當于左移4位(24); 所以:PA=段地址左移4位+偏移地址 實際操作:段地址(16進制數(shù))添0,再加上偏移地址.588086存儲器的邏輯地址和物理地址存儲器的邏輯地址和物理地址 若地址用16進制數(shù)表示,則左移4位,就是在原來的16進制數(shù)的后面加一個0; 所以:PA=段地

40、址添一個0+偏移地址 如:段地址=2100H,偏移地址=1234HPA=21000H + 1234H 22234H598086/8088CPU中有一個地址加法器,它將段寄存器提中有一個地址加法器,它將段寄存器提供的段地址自動乘以供的段地址自動乘以10H即左移即左移4位,然后與位,然后與16位的偏位的偏移地址相加,并鎖存在物理地址鎖存器中。如圖所示。移地址相加,并鎖存在物理地址鎖存器中。如圖所示。物理地址物理地址=段基址段基址 * 16 +偏移地址。偏移地址。段基址:段基址:CS、DS、ES、SS。偏移地址:偏移地址:IP、DI、SI、BP、SP等。等。段寄存器值段寄存器值偏移量偏移量+物理地址

41、物理地址16位位4位位16位位20位位存儲器物理地址的計算方法存儲器物理地址的計算方法60 CS 0000 IP代碼段代碼段 DS或或ES 0000 SI、DI或或BX SS 0000 SP或或BP數(shù)據(jù)段數(shù)據(jù)段堆棧段堆棧段存儲器存儲器段寄存器和偏移地址寄存器組合關系段寄存器和偏移地址寄存器組合關系61存儲器組織 存放的信息是字節(jié)信息,則按字節(jié)順序存放; 存放的信息是字信息(16位),則應將字的高字節(jié)放在高地址,低字節(jié)放在低地址; 若將字信息的低位數(shù)據(jù)放在偶數(shù)地址,高字節(jié)放在奇數(shù)地址,則為規(guī)則存放。規(guī)則存放的字可以在一個總線周期完成讀寫。62存儲器組織 存儲器由兩個512KB存儲體組成,分別稱為

42、高位庫和低位庫; 低位庫為偶數(shù)地址,高位庫為奇數(shù)地址; 對16位數(shù)據(jù)的尋址,只要用19條地址;即A19 A1; 用A0和BHE分別選擇高位庫或高位庫; 只要輸出一次地址(偶地址),就可完成16位數(shù)據(jù)的讀寫。6364存儲器組織 注意在圖中,CPU發(fā)出的地址是A19 A0,但直接控制存儲器地址的是A19 A1,接到存儲器的A18 A0;658086的存儲器訪問操作的存儲器訪問操作 (1) 字節(jié)訪問和字訪問字節(jié)訪問和字訪問 8088是準是準16位微處理器,其外部數(shù)據(jù)總線為位微處理器,其外部數(shù)據(jù)總線為8位,內(nèi)部寄存器和位,內(nèi)部寄存器和運算器為運算器為16位,一個總線周期只能訪問一個字節(jié),要進行字操作,

43、位,一個總線周期只能訪問一個字節(jié),要進行字操作,必須用兩個總線周期,第一個總線周期訪問低位字節(jié)、第二個總必須用兩個總線周期,第一個總線周期訪問低位字節(jié)、第二個總線周期訪問高位字節(jié)。線周期訪問高位字節(jié)。 8086是標準的是標準的16位微處理器,其外部數(shù)據(jù)總線為位微處理器,其外部數(shù)據(jù)總線為16位,每個存儲位,每個存儲周期可以訪問存儲器中的周期可以訪問存儲器中的8位或位或16位信息。位信息。 當當8086訪問一個整字(訪問一個整字(16位)變量時,該變量的地址為偶地址位)變量時,該變量的地址為偶地址(即字變量的低字節(jié)在偶地址單元,高字節(jié)在奇地址單元),則(即字變量的低字節(jié)在偶地址單元,高字節(jié)在奇地址

44、單元),則8086將用一個總線周期訪問該字變量;將用一個總線周期訪問該字變量; 如果該字變量的地址為奇地址(即字變量的低字節(jié)在奇地址單元,如果該字變量的地址為奇地址(即字變量的低字節(jié)在奇地址單元,高字節(jié)在偶地址單元),則高字節(jié)在偶地址單元),則8086要用兩個連續(xù)的總線周期才能訪要用兩個連續(xù)的總線周期才能訪問該字變量,每個周期訪問一個字節(jié)。問該字變量,每個周期訪問一個字節(jié)。668086的存儲器訪問操作的存儲器訪問操作(2) “對準的對準的”字與字與“未對準的未對準的”字字 8086 CPU能同時訪問奇存儲體和偶存儲體中的能同時訪問奇存儲體和偶存儲體中的一個字節(jié),以組成一個存儲字。一個字節(jié),以組

45、成一個存儲字。 要訪問的要訪問的1個字的低個字的低8位存放在偶存儲體中,稱為位存放在偶存儲體中,稱為“對對準的準的”字(字(aligned,又稱為,又稱為“對界的對界的”),這是一種),這是一種規(guī)則的存放字。規(guī)則的存放字。 對于對于“對準的對準的”字,字,8086 CPU只要一個總線周期就能只要一個總線周期就能完成對該字的訪問;完成對該字的訪問; 當要訪問的當要訪問的16位字的低位字的低8位字節(jié)存放在奇存儲體中,稱位字節(jié)存放在奇存儲體中,稱該字為該字為“未對準的未對準的”字(字(unaligned,又稱為,又稱為“未對界未對界的的”),這是一種非規(guī)則的存放字。必須用兩個總線),這是一種非規(guī)則的

46、存放字。必須用兩個總線周期才能訪問該字。周期才能訪問該字。 678086的存儲器訪問操作的存儲器訪問操作68字節(jié)傳送69字傳送70存儲器組織 存儲器分段 分段是任意的,可以重疊,也可以不重疊; 出現(xiàn)重疊是因為實際上對一個具體的段,不要求有64K字節(jié)。 同一個物理地址可以對應不同的偏移地址和段地址(邏輯地址)。71728086/80888086/8088總線結構和總線周期總線結構和總線周期 總線周期時序總線周期時序 1 1、指令周期、總線周期和時鐘周期概念、指令周期、總線周期和時鐘周期概念l l 指令周期:執(zhí)行一條指令所需要的時間,有若干總線周期組成。指令周期:執(zhí)行一條指令所需要的時間,有若干總

47、線周期組成。l l 總線周期(機器周期):總線周期(機器周期):CPUCPU進行一次數(shù)據(jù)傳輸所需的時間。一個總線周期至少包括進行一次數(shù)據(jù)傳輸所需的時間。一個總線周期至少包括 4 4個個T T狀態(tài)。狀態(tài)。l l T T狀態(tài)(時鐘周期):狀態(tài)(時鐘周期):CPUCPU處理動作的最小單位位時間。就是時鐘信號處理動作的最小單位位時間。就是時鐘信號CLKCLK的周期。的周期。73各種周期的動態(tài)演示各種周期的動態(tài)演示74總線周期總線周期75 2、8086的基本工作時序的基本工作時序 在指令譯碼器和外面時鐘信號作用下產(chǎn)生的和在指令譯碼器和外面時鐘信號作用下產(chǎn)生的和各個命令控制下進行的,分內(nèi)操作和外操作兩種各

48、個命令控制下進行的,分內(nèi)操作和外操作兩種 內(nèi)操作:控制內(nèi)操作:控制ALU進行算術運算,控制寄存器組進進行算術運算,控制寄存器組進行行REG選擇以及送選擇以及送DB/AB,讀,讀/寫操作等寫操作等 外部操作:是系統(tǒng)對外部操作:是系統(tǒng)對CPU的控制或是的控制或是CPU對系統(tǒng)的對系統(tǒng)的控制,用戶必須了解這些控制信號以便正確使用??刂疲脩舯仨毩私膺@些控制信號以便正確使用。 8086的工作時序包括:的工作時序包括: 存儲器讀操作存儲器讀操作 存儲器寫操作存儲器寫操作 中斷響應操作中斷響應操作 輸入輸出周期輸入輸出周期 系統(tǒng)復位系統(tǒng)復位 空轉周期空轉周期768086/80888086/8088總線結構和

49、總線周期總線結構和總線周期 二、總線周期時序二、總線周期時序 2 2、80868086的基本工作時序的基本工作時序: :存儲器讀操作、存儲器讀操作、 存儲器寫操作、存儲器寫操作、 中斷響應操作、中斷響應操作、 輸入輸出周期輸入輸出周期 系統(tǒng)復位、系統(tǒng)復位、圖2-9 CPU從存儲器或I/O端口讀取數(shù)據(jù)的時序T1T2T3TWT4T1T2T3TWT4(1 1)T1T1狀態(tài)狀態(tài)M/IOM/IO信號:從存儲器讀還信號:從存儲器讀還是從是從I/OI/O設備中讀數(shù)據(jù)。設備中讀數(shù)據(jù)。AD15-AD0AD15-AD0、A19/S7-A19/S7-A16/S3A16/S3:確定:確定2020位地址。位地址。BHE

50、BHE:選擇奇地址存儲體:選擇奇地址存儲體選擇。選擇。ALEALE:地址鎖存信號,以:地址鎖存信號,以使地址使地址/ /數(shù)據(jù)線分開。數(shù)據(jù)線分開。(2 2)T2T2狀態(tài)狀態(tài)A19/S6-A16/S3A19/S6-A16/S3:出現(xiàn):出現(xiàn)S6-S3S6-S3狀態(tài)信號。決定段狀態(tài)信號。決定段寄 存 器 、寄 存 器 、 I FI F 狀 態(tài) 、狀 態(tài) 、8086CPU8086CPU是否連在總線上。是否連在總線上。AD15-AD0AD15-AD0:高阻狀態(tài)。:高阻狀態(tài)。RDRD:由高電平變?yōu)榈碗姡河筛唠娖阶優(yōu)榈碗娖剑_始進行讀操作。平,開始進行讀操作。DENDEN:變低電平,啟動收:變低電平,啟動收發(fā)

51、器發(fā)器82688268,做好接收數(shù)據(jù),做好接收數(shù)據(jù)的準備。的準備。(3 3)T3T3狀態(tài)狀態(tài)若存儲器或若存儲器或I/OI/O端口已做端口已做好發(fā)送數(shù)據(jù)準備,則在好發(fā)送數(shù)據(jù)準備,則在T3T3狀態(tài)期間將數(shù)據(jù)放到數(shù)據(jù)狀態(tài)期間將數(shù)據(jù)放到數(shù)據(jù)總線上,在總線上,在T3T3結束時,結束時,CPUCPU從從AD15-AD0AD15-AD0上讀取數(shù)上讀取數(shù)據(jù)。據(jù)。(4 4)TWTW狀態(tài)狀態(tài)在在T3T3狀態(tài),存儲器或外狀態(tài),存儲器或外設沒有準備好數(shù)據(jù),不能設沒有準備好數(shù)據(jù),不能在在T3T3狀態(tài)將數(shù)據(jù)放到總線狀態(tài)將數(shù)據(jù)放到總線上,使上,使READY=0READY=0,則,則CPUCPU在在T3T3和和T4T4之間插

52、入一個或幾之間插入一個或幾個個TWTW狀態(tài),直到數(shù)據(jù)準備狀態(tài),直到數(shù)據(jù)準備好好READY=1READY=1為止。為止。TWTW狀態(tài)時總線的動作與狀態(tài)時總線的動作與T3T3時相同時相同 (5 5)T4T4狀態(tài)狀態(tài)CPUCPU對數(shù)據(jù)總線進行采樣,對數(shù)據(jù)總線進行采樣,讀出數(shù)據(jù)。讀出數(shù)據(jù)。 778086/80888086/8088總線結構和總線周期總線結構和總線周期 二、總線周期時序二、總線周期時序 2 2、80868086的基本工作時序的基本工作時序: : 存儲器寫操作、存儲器寫操作、 中斷響應操作、中斷響應操作、 輸入輸出周期輸入輸出周期 系統(tǒng)復位、系統(tǒng)復位、存儲器讀操作、存儲器讀操作、T1T2T

53、3TWT4T1T2T3TWT4(1 1)T1T1狀態(tài)狀態(tài)M/M/信號:對存儲器寫還是信號:對存儲器寫還是對對I/OI/O設備中寫數(shù)據(jù)。設備中寫數(shù)據(jù)。AD15-AD0AD15-AD0、A19/S7-A19/S7-A16/S3A16/S3:確定:確定2020位地址。位地址。BHEBHE:選擇奇地址存儲體:選擇奇地址存儲體選擇。選擇。ALEALE:地址鎖存信號,以:地址鎖存信號,以使地址使地址/ /數(shù)據(jù)線分開。數(shù)據(jù)線分開。DT/RDT/R:為高電平,指示收:為高電平,指示收發(fā)器發(fā)器82868286發(fā)送數(shù)據(jù),寫操發(fā)送數(shù)據(jù),寫操作。作。(2 2)T2T2狀態(tài)狀態(tài)A19/S6-A16/S3A19/S6-A

54、16/S3:出現(xiàn):出現(xiàn)S6-S3S6-S3狀態(tài)信號。決定段狀態(tài)信號。決定段寄 存 器 、寄 存 器 、 I FI F 狀 態(tài) 、狀 態(tài) 、8086CPU8086CPU是否連在總線上。是否連在總線上。AD15-AD0:AD15-AD0:發(fā)發(fā)1616位數(shù)據(jù)。位數(shù)據(jù)。WRWR:由高電平變?yōu)榈碗姡河筛唠娖阶優(yōu)榈碗娖?,開始進行寫操作。平,開始進行寫操作。DENDEN:變低電平,啟動收:變低電平,啟動收發(fā)器發(fā)器82688268,做好發(fā)送數(shù)據(jù),做好發(fā)送數(shù)據(jù)的準備的準備 (3 3)T3T3狀態(tài)狀態(tài)存儲器或存儲器或I/OI/O端口做好接端口做好接收準備,則在收準備,則在T3T3期間將數(shù)期間將數(shù)據(jù)放據(jù)放DBDB上

55、,在上,在T3T3結束時,結束時,CPUCPU將將AD15-AD0AD15-AD0上數(shù)據(jù)寫上數(shù)據(jù)寫入到存儲器或入到存儲器或I/OI/O設備中設備中 (4 4)TWTW狀態(tài)狀態(tài)在在T3T3狀態(tài),存儲器或外狀態(tài),存儲器或外設沒有準備好接收數(shù)據(jù),設沒有準備好接收數(shù)據(jù),使使READY=0READY=0,則,則CPUCPU在在T3T3和和T4T4之間插入一個或幾個之間插入一個或幾個TWTW狀態(tài),直到設備準備好狀態(tài),直到設備準備好READY=1READY=1為止。為止。(5 5)T4T4狀態(tài)狀態(tài)數(shù)據(jù)從數(shù)據(jù)從DBDB上被撤除,各種上被撤除,各種控制信號和狀態(tài)信號進入控制信號和狀態(tài)信號進入無效狀態(tài),無效狀態(tài),

56、CPUCPU完成了對完成了對存儲器或存儲器或I/OI/O設備的寫操設備的寫操作作 圖2-10 CPU往存儲器或I/O端口寫數(shù)據(jù)的時序78例例 8086CPU工作于最小模式,試指出當CPU完成將AH的內(nèi)容送到物理地址為 91001H的存儲單元操作時,以下哪些信號應為低電平: 、 、 、 、 。若CPU完成的是將物理地址91000H單元的內(nèi)容送到AL中,則上述哪些信號應為低電平。M/IOM/IORDWRBHE/S7DT/RDT/RRDARM處理器處理器79ARM Ltd 成立于1990年11月 前身為 Acorn計算機公司 主要設計ARM系列RISC處理器內(nèi)核 授權ARM內(nèi)核給生產(chǎn)和銷售半導體的合

57、作伙伴 ARM 公司不生產(chǎn)芯片 另外也提供基于ARM架構的開發(fā)設計技術 軟件工具, 評估板, 調試工具,應用軟件,總線架構, 外圍設備單元,等等ARM Offices Worldwide700+ employees worldwideEnglandCambridge, Maidenhead, Sheffield, BlackburnGermanyMunichFrance Paris, Sophia AntipolisKoreaSeoulUSSeattle, Los Gatos, Walnut Creek, Austin, Boston, San DiegoAsiaShanghai Beijin

58、g TaiwanJapanShin-Yokohama (Tokyo)ARM Partnership Model數(shù)據(jù)和指令類型 ARM 采用的是32位架構. ARM 約定: Byte :8 bits Halfword :16 bits (2 byte) Word :32 bits (4 byte) 大部分ARM core 提供: ARM 指令集(32-bit) Thumb 指令集(16-bit ) Jazelle cores 支持 Java bytecode處理器工作模式 ARM 有7個基本工作模式: User : 非特權模式,大部分任務執(zhí)行在這種模式 FIQ : 當一個高優(yōu)先級(fast) 中

59、斷產(chǎn)生時將會進入這種模式 IRQ : 當一個低優(yōu)先級(normal) 中斷產(chǎn)生時將會進入這種模式 Supervisor :當復位或軟中斷指令執(zhí)行時將會進入這種模式 Abort : 當存取異常時將會進入這種模式 Undef : 當執(zhí)行未定義指令時會進入這種模式 System : 使用和User模式相同寄存器集的特權模式r0r1r2r3r4r5r6r7r8r9r10r11r12r13 (sp)r14 (lr)r15 (pc)cpsrr13 (sp)r14 (lr)spsrr13 (sp)r14 (lr)spsrr13 (sp)r14 (lr)spsrr13 (sp)r14 (lr)spsrr8r9

60、r10r11r12r13 (sp)r14 (lr)spsrFIQIRQSVCUndefAbortUser Moder0r1r2r3r4r5r6r7r8r9r10r11r12r13 (sp)r14 (lr)r15 (pc)cpsrr13 (sp)r14 (lr)spsrr13 (sp)r14 (lr)spsrr13 (sp)r14 (lr)spsrr13 (sp)r14 (lr)spsrr8r9r10r11r12r13 (sp)r14 (lr)spsrCurrent Visible RegistersBanked out RegistersFIQIRQSVCUndefAbortr0r1r2r3r

溫馨提示

  • 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

提交評論