版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
13.1X86系列處理器的功能結(jié)構(gòu)13.2X86系列結(jié)構(gòu)微處理器的工作方式第13章 X86系列微處理器的結(jié)構(gòu)與工作方式濟南大學(xué)控制學(xué)院12007年概述微處理器的發(fā)展第一節(jié)課詳細講過。20年來,Intel公司的微處理器有了極大的發(fā)展,從8086(8088)到80286、80386、80486、奔騰(也稱為80586)、奔騰MMX、奔騰PRO(也稱80686)、奔騰II、奔騰III、直至最新的奔騰4,形成了IA(IntelArchitectuce)-32結(jié)構(gòu)。目前IA-64已經(jīng)推出,微處理器正在向64位發(fā)展。濟南大學(xué)控制學(xué)院22007年上節(jié)課對8086/8088微處理器的結(jié)構(gòu)詳細講過(是我們學(xué)的重點,也是學(xué)習(xí)IA-32微處理器結(jié)構(gòu)的起點和基礎(chǔ)?;仡櫰浣ㄖP?,也就是IA-32結(jié)構(gòu))IA-32結(jié)構(gòu)微處理器的最新版本的發(fā)展能追溯到8085和8080微處理器和4004微處理器.在IA-32結(jié)構(gòu)系統(tǒng)引進32位微處理器之前,是8086/8088.所以IA-32結(jié)構(gòu)微處理器同時包括16位和32位微處理器.IA-32結(jié)構(gòu)最成功之作:1978年開始的那些處理器建立的目標(biāo)程序仍然能夠在IA-32結(jié)構(gòu)系列的最新的處理器上執(zhí)行.8086/8088將段引進IA-32結(jié)構(gòu).關(guān)于段----16位寄存器---64KB的內(nèi)存指針---可以段于與段的尋址(即256KB)----用段和16位指針可形成20位(1MB)的地址范圍.80286在此基礎(chǔ)上擴充24位基地址,允許最大物理存儲器16KB.濟南大學(xué)控制學(xué)院32007年13.1.1Intel80386微處理器80386微處理器是在IA-32結(jié)構(gòu)微處理器系列中第一個32位處理器.80386是32位處理器,每個32位寄存器(EAX----AX參見P53)的后一半保留兩個早期處理器(8086和80286)的16位寄存器的特性,以提供完全的后向兼容。32位總線提供4GB的物理空間;在原來基礎(chǔ)上引用許多的新技術(shù),如段中又分頁(每段分256頁大家可以空間想象);碼預(yù)取單元(從總線單元接受目標(biāo)碼并把它存放至16字節(jié)隊列)。其結(jié)構(gòu)功能:有6個并行操作部件(總線接口單元、碼預(yù)取單元、指令譯碼單元、執(zhí)行單元、段單元和分頁單元)濟南大學(xué)控制學(xué)院42007年13.1.2Intel80486微處理器80486在80386基礎(chǔ)上擴展為五個流水線段(定義見P170第9行)。在不同段上同時執(zhí)行五條指令。增加8KB的緩存(Cache).80486是第一次把80X87FPU(浮點處理單元----浮點數(shù)一般采用M×2E的形式來表示,M為,它一般為小數(shù);E為階碼,)集成到處理器上并增加了新的引腳、位和指令支持更復(fù)雜有力的系統(tǒng)(二級Cache支持和多處理器支持)。使用專用的中斷腳觸發(fā)的系統(tǒng)管理模式,允許復(fù)雜的系統(tǒng)管理特性(如:停止時鐘、自動暫停電源下降、減速的時鐘速率下執(zhí)行以節(jié)省電源)。在工藝方面方面進一步改善。濟南大學(xué)控制學(xué)院52007年13.1.3Pentium處理器Intel奔騰(Pentium)處理器增加了第二個執(zhí)行流水線以達到超標(biāo)量性能。一片Cache加到16KB,主要寄存器是32位,每段可形成4MB的頁,外部總線到64位,內(nèi)部可以進行128和256位的數(shù)據(jù)相互傳送,而且增加了高級可編程中斷控制器(?)。把IntelMMX(8個64位積存器)技術(shù)引入IA-32結(jié)構(gòu)。可以進行單指令多數(shù)據(jù)(SIMD)執(zhí)行方式,從而使高級媒體技術(shù)、攝像處理和數(shù)據(jù)壓縮應(yīng)用程序運行和應(yīng)用成為可能。濟南大學(xué)控制學(xué)院62007年13.1.4IntelP6系列處理器建立新的性能標(biāo)準(zhǔn),工藝先進(0.6微米)。IntelPentiumPro處理器是基于P6微結(jié)構(gòu)的第一個處理器。P6處理器系統(tǒng)隨后的成員是IntelPentiumII、IntelPentiumIIXeon(至強)、IntelCeleron(賽揚)、IntelPentiumIIIXeon(至強)處理器。其主要性能:能被5個執(zhí)行單元順序執(zhí)行。Cache增加到256KB總線擴展為36位總線最大可達到64GB的物理地址空間濟南大學(xué)控制學(xué)院72007年13.1.5Intel奔騰2--4處理器工藝逐步提高Cache逐步增到1MB逐步加速視頻、語音、加密、攝像和照片處理技術(shù)濟南大學(xué)控制學(xué)院82007年13.2Intel80386微處理器的功能結(jié)構(gòu)功能具體體現(xiàn):(1).從16位寄存器發(fā)展32位寄存器;(2).地址寄存器也發(fā)展為32位,可尋址的地址范圍達到4GM(但段寄存器仍為16位),可分頁;(3).增加了保護方式,使處理器有了兩種工作方式:實地址方式和保護虛地址方式,實地址方式用于與8086兼容;保護虛地址方式32位處理器能夠真正發(fā)揮其完整功能的工作方式;(4).引入了多任務(wù)、任務(wù)切換的概念;(5).引入了四級特權(quán),引入了調(diào)用門、陷入門、中斷門,使程序在不同特權(quán)之間切換;(6).引入了存儲管理單元(MMU),使采用80386的操作系統(tǒng)方便地實現(xiàn)頁(每頁為4KB)虛擬存儲器管理;(7).增加了新指令(主要保護方式的指令)。濟南大學(xué)控制學(xué)院92007年13.1.3Intel80486微處理器的功能結(jié)構(gòu)其基本基礎(chǔ)結(jié)構(gòu)與80386一樣,不同的是:(1)將80386處理器的指令譯碼和執(zhí)行部件擴展成五級流水線,五條指令可同時執(zhí)行,最快能夠在每個CPU時鐘內(nèi)執(zhí)行一條指令;(2)增加8KB高速緩存Cache),在此的指令可每個時鐘內(nèi)執(zhí)行5個以上;(3)在80486中首次將浮點處理器部件80X87FPU集成到微處理器(4)總線接口更加復(fù)雜,增加了許多功能。濟南大學(xué)控制學(xué)院102007年CLKALEA0~A19MEMRD0~D7T1T3T2T4存儲器讀總線周期濟南大學(xué)控制學(xué)院112007年13.3操作模式IA-32結(jié)構(gòu)處理器支持三種操作模式:保護模式、實地址模式和系統(tǒng)管理模式。保護模式---是處理器基本模式,提供做高的功能和性能;實地模式---是8086微處理器編程環(huán)境的工作模式并有一些擴展。在系統(tǒng)上電或復(fù)位后,處理器總是處在實地址模式系統(tǒng)管理模式---是操作系統(tǒng)為實現(xiàn)平臺特定的功能或系統(tǒng)安全提供的一種透明機制。主要用于自動暫停、睡眠等節(jié)省電源模式濟南大學(xué)控制學(xué)院122007年基本執(zhí)行環(huán)境概要IA-32處理器上執(zhí)行的程序或任務(wù),都給予一組執(zhí)行指令的資源,用于存儲代碼、數(shù)據(jù)和狀態(tài)信息。這些資源構(gòu)成了IA-32結(jié)構(gòu)處理器的執(zhí)行環(huán)境。(1)地址空間(808620條;8038632條)(2)基本程序執(zhí)行寄存器(通用寄存器、段寄存器、標(biāo)志寄存器和指令寄存器)(3)80x87FPU(浮點處理單元)寄存器*(4)MMX寄存器(八個64位寄存器)單指令多數(shù)據(jù)(SIMD)(5)XMM寄存器(八個128位寄存器)(6)堆棧祥見P49圖2-7除了基本執(zhí)行環(huán)境提供的資源之外(這些對我們來說僅是了解)。IA-32結(jié)構(gòu)處理器提供以下資源。(1)控制寄存器;(2)存儲管理寄存器;(3)調(diào)試寄存器;(4)存儲類型范圍寄存器。
濟南大學(xué)控制學(xué)院132007年存儲器組織處理器在它的地址總線上尋址的存儲器成為物理存儲器.物理存儲器按8位字節(jié)序列組織.每個字節(jié)賦予一個惟一的地址,稱為物理地址.我們構(gòu)建一個測量或控制系統(tǒng),一般不會使用IA-32結(jié)構(gòu)的高檔微處理器,而是使用8086微處理器或單片機來構(gòu)建系統(tǒng)。所以我們重點學(xué)習(xí)8086微處理器的結(jié)構(gòu)、指令、匯編語言以及相應(yīng)的外設(shè)接口(見P50頁)濟南大學(xué)控制學(xué)院142007年1實地址方式存儲器組織IA-32結(jié)構(gòu)微處理器中的實地址方式是為了與8086/8088微處理器兼容而設(shè)計的。所以該方式組織與8086/8088的存儲器組織是一樣的。濟南大學(xué)控制學(xué)院152007年控制寄存器16位寄存器AHALBHBLCHCLDHDL
AXBXCXDX
SPBPSIDIIPFLAGCSDSSSES(A)累加器基地址寄存器計數(shù)器數(shù)據(jù)寄存器(SP)堆棧指針寄存器基地址寄存器源變址寄存器目的變址寄存器(PC)指令指針寄存器(PSW)狀態(tài)標(biāo)志寄存器代碼段寄存器數(shù)據(jù)段寄存器堆棧段寄存器附加段寄存器通用寄存器段寄存器8位寄存器1.結(jié)構(gòu)?寄存器結(jié)構(gòu)濟南大學(xué)控制學(xué)院162007年2、存儲器組織
1.存儲器分段
8088有20條地址線,它的直接尋址能力為1M,所以在一個8088組成的系統(tǒng)中,可以有多達1M字節(jié)的存儲器,這1M字節(jié)在邏輯上可以組成一個線性矩陣,地址從00000到FFFFF。給定一個20位的地址,就可以從中取出所需的指令和數(shù)據(jù)。在8088內(nèi)部,ALU能進行16位的運算,有關(guān)地址寄存器如:IP、SP、BX、BP、SI、DI等都是16位的,因而對地址的運算也只能是16位。其尋址的范圍最多是64K。
在8088中怎樣形成這20位的地址呢?——分段!
將內(nèi)存的1M字節(jié)以64K為范圍,分成若干段;在8088中設(shè)置4個段寄存器CS、DS、SS、ES,在尋址一個具體的內(nèi)存單元(物理地址)時,由一個段寄存器中保存的16位基地址,加上由IP(或SP,或BP,或BX,或SI,或DI)中保存的、可由CPU處理的16位偏移量,來形成20位的物理地址.在形成物理地址時,地址加法器將段寄存器中的16位數(shù)左移4位,然后與16位偏移地址相加,形成20位的物理地址。濟南大學(xué)控制學(xué)院172007年(2000:2002010:100?......說明什么道理?)
16位段地址16位段內(nèi)偏移量16位段地址000020位物理地址地址加法器段寄存器偏移量寄存器左移4位濟南大學(xué)控制學(xué)院182007年在不改變段存儲器的訪問情況下,尋址的最大范圍是64KB,所以有一個程序,它的長度、堆棧長度以及數(shù)據(jù)區(qū)長度都不超過64KB,則在程序開始時,分別給CS、SS、DS置值,然后在程序中可以不在考慮這些段寄存器,程序就可以在各自的區(qū)域中正常地進行工作。
這種存儲器分段方法,對于要求在程序區(qū)、堆棧區(qū)和數(shù)據(jù)區(qū)之間隔離是非常方便的。(問:如果不要求分區(qū),如何理解)如果一個程序超過64KB,怎樣處理?如果都超過64KB,又怎么處理?濟南大學(xué)控制學(xué)院192007年2.分段模式存儲器結(jié)構(gòu)IA-32結(jié)構(gòu)微處理器的基本存儲器是分段式存儲模式.與8088類似,程序給出的地址由兩部分組成:即段基地址(一個段的起始地址)和段內(nèi)的偏移量.段地址由段寄存器的值確定,而段的偏移量是由指令的尋址方式確定.8088的段結(jié)構(gòu)我們多次講過,試回憶一下.80386有6個段寄存器(增加了兩個數(shù)據(jù)段寄存器FS和GS),每個段寄存器仍是16位的.但在尋址上不同于8088.80386的段基地址是32位,16位段寄存器內(nèi)容僅是選擇32位基地址的段的索引和描述,而不是象8088那樣合成.同理段內(nèi)偏移量的寄存器也32位,故一個段最大為4GB.上述地址的描述就是邏輯地址:在系統(tǒng)上定義的任一字節(jié)的地址和段內(nèi)偏移量兩部分組成.在訪問一個存儲器地址,處理器把每個邏輯地址轉(zhuǎn)換為線性地址(32位的段基地址與32位的段偏移量相加產(chǎn)生32位地址.用分段的存儲器的最初的理由是增加程序和系統(tǒng)的可靠性.如把程序的堆棧防在一個段,防止堆棧的增長進入程序和數(shù)據(jù)區(qū)(空間).濟南大學(xué)控制學(xué)院202007年3.平面存儲模式平面存儲模式實質(zhì)上是分段存儲模式的一種特例.在平面存儲模式,存儲器作為單個連續(xù)的地址空間,稱為線性空間。代碼(程序)、數(shù)據(jù)和過程堆棧全部包含在此地址空間中.在80386以上的IA-32結(jié)構(gòu)微處理器上運行的操作系統(tǒng)和應(yīng)用程序,廣泛用平面存儲模式。濟南大學(xué)控制學(xué)院212007年內(nèi)存地址空間和數(shù)據(jù)組織實模式下Pentium微處理器只有20條地址線有效,因此實模式下內(nèi)存空間為220=1MB,地址由00000-FFFFF(H)編碼若存放的信息是字節(jié),則按順序存放若存放的信息是字,則將字的低位字節(jié)存放在低地址,高位字節(jié)存放在高地址若存放的信息是雙字,則將雙字的低位字存放在低地址,高位字存放在高地址實模式內(nèi)存地址空間組織低字節(jié)低地址,高字節(jié)高地址濟南大學(xué)控制學(xué)院222007年對準(zhǔn)雙字:對應(yīng)地址是4的倍數(shù)對準(zhǔn)字:對應(yīng)地址是2的倍數(shù)例.雙字A00055FF如何存儲在地址為02102的存儲單元中例.字23AB如何存儲在地址為02102的存儲單元中內(nèi)存地址空間和數(shù)據(jù)組織存放數(shù)據(jù)的起始地址可以任意,但是字?jǐn)?shù)據(jù)存放在偶數(shù)地址單元,雙字?jǐn)?shù)據(jù)存放在能被4整除的地址單元,可以改善程序性能?!幚砥鲗?nèi)存的訪問只需一個總線周期濟南大學(xué)控制學(xué)院232007年實模式下,1MB內(nèi)存空間分通用和專用兩個區(qū)域00000-003FF專用,存放中斷向量表00400-FFFFF通用中斷向量表表內(nèi)指針用來指出相應(yīng)的中斷服務(wù)程序的起始點,表內(nèi)每個指針占2個字,占據(jù)較高地址的是段基址,占據(jù)較低地址的是偏移量?中斷向量表可以包含
個中斷指針內(nèi)存地址空間和數(shù)據(jù)組織濟南大學(xué)控制學(xué)院242007年邏輯地址和物理地址實模式下邏輯地址由段基址和偏移量兩部分組成。編寫程序時只能使用邏輯地址。段基址是段寄存器給出的段起始地址;偏移量為存儲單元在段內(nèi)相對于段起始地址的偏移距離,也稱為偏移地址段基址和偏移量都為16位邏輯地址的表示形式——段基址:偏移量段基址來自段寄存器。偏移量通常來自指令指針寄存器、基址寄存器、指針寄存器和變址寄存器,也可以由其中幾個寄存器的內(nèi)容組合而成。濟南大學(xué)控制學(xué)院252007年邏輯地址和物理地址訪問存儲器的操作數(shù)類型不同,使用的段寄存器和段內(nèi)偏移量的來源也不同。實模式下,缺省的段寄存器和偏移地址的結(jié)合方式:CS IP 指令SS SP 堆棧操作SS BP 存取堆棧內(nèi)的數(shù)據(jù)DS BX、SI、DI或指令中 存取數(shù)據(jù)段的的局 給出的8/16位數(shù)據(jù) 部數(shù)據(jù)ES DI 串操作的目標(biāo)操作 數(shù)段寄存器 偏移地址 操作類型濟南大學(xué)控制學(xué)院262007年物理地址是CPU與存儲器進行數(shù)據(jù)交換時實際尋址所使用的地址。實模式下物理地址為20位。每個內(nèi)存單元的物理地址都是唯一的,同一個物理地址可以由不同的邏輯地址來構(gòu)成。邏輯地址和物理地址例.假設(shè)段寄存器內(nèi)容為002A,偏移量為0023,求構(gòu)成的物理地址濟南大學(xué)控制學(xué)院272007年邏輯地址和物理地址 JMPF000:0100MOVAX,D000MOVDS,AXMOVAX,A320MOVSS,AXMOVAX,7200MOVES,AXMOVAX,3000MOVFS,AXMOVAX,1000MOVGS,AXCSDSSSESFSGSF000D000A32072003000100064K代碼段64K數(shù)據(jù)段64K堆棧段64K數(shù)據(jù)段E64K數(shù)據(jù)段F64K數(shù)據(jù)段GFFFFFF0000D0000A320072000300001000000000F000:0100濟南大學(xué)控制學(xué)院282007年邏輯地址和物理地址MOVAX,FFFFMOVDS,AXMOVAL,[0010]物理地址:FFFF00010100000+MOVAX,FFFFMOVDS,AXMOVAL,[FFFF]物理地址:FFFF0FFFF10FFEF+物理地址10000~10FFEF超出了實模式1MB尋址空間范圍濟南大學(xué)控制學(xué)院292007年邏輯地址和物理地址通過開放地址線A20,使Pentium微處理器訪問1BM以上的6
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 機關(guān)技術(shù)崗位管理制度匯編(3篇)
- 細胞呼吸的原理與應(yīng)用課件2025-2026學(xué)年高一上學(xué)期生物人教版必修1
- 2026廣東廣州市天河區(qū)華南師范大學(xué)招聘教輔人員2人備考考試試題及答案解析
- 2026年寶雞青銅器博物院寒假志愿者招募備考考試試題及答案解析
- 2026上半年云南事業(yè)單位聯(lián)考省民族宗教事務(wù)委員會委屬事業(yè)單位公開招聘人員備考考試試題及答案解析
- 2026青海海東市第二人民醫(yī)院校園引才招聘10人筆試備考題庫及答案解析
- 2026天津市河?xùn)|區(qū)教育系統(tǒng)招聘事業(yè)單位160人備考考試試題及答案解析
- 2026上海交通大學(xué)醫(yī)學(xué)院尚思神經(jīng)與視覺研究院招聘教學(xué)科研人員6人考試參考試題及答案解析
- 第四單元8夜色
- 2026浙江杭州蕭山區(qū)公安分局招聘警務(wù)輔助人員100人筆試備考試題及答案解析
- 安全監(jiān)理生產(chǎn)責(zé)任制度
- 2026年云南保山電力股份有限公司校園招聘(50人)考試參考試題及答案解析
- 2026年云南保山電力股份有限公司校園招聘(50人)筆試備考題庫及答案解析
- 中央中國熱帶農(nóng)業(yè)科學(xué)院院屬單位2025年第一批招聘筆試歷年參考題庫附帶答案詳解
- 研發(fā)費用加計扣除審計服務(wù)協(xié)議
- 2025年二年級上冊語文期末專項復(fù)習(xí)-按課文內(nèi)容填空默寫表(含答案)
- 2026年遼寧經(jīng)濟職業(yè)技術(shù)學(xué)院單招職業(yè)傾向性考試題庫及參考答案詳解1套
- 建筑施工公司成本管理制度(3篇)
- 2025年婦產(chǎn)科副高試題庫及答案
- 全國物業(yè)管理法律法規(guī)及案例解析
- 2025年度黨委黨建工作總結(jié)
評論
0/150
提交評論