第2章 微處理器.ppt_第1頁
第2章 微處理器.ppt_第2頁
第2章 微處理器.ppt_第3頁
第2章 微處理器.ppt_第4頁
第2章 微處理器.ppt_第5頁
已閱讀5頁,還剩60頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、微型計算機原理與接口技術(shù),主 編 何 超,中國水利水電出版社,8086/8088CPU的組成、引腳功能和工作模式。 時序基本概念。 微處理器的發(fā)展歷程,主流CPU及其最新技術(shù)。,第2章 微處理器,2.1 微處理器概述,2.1.1 CPU的基本概念 中央處理器(CPU,Central Processing Unit),是整個計算機系統(tǒng)的核心,負(fù)責(zé)整個系統(tǒng)指令的執(zhí)行,對數(shù)據(jù)信息進(jìn)行數(shù)學(xué)與邏輯運算和處理、數(shù)據(jù)的存儲與傳送以及對內(nèi)對外輸入與輸出的控制,并實現(xiàn)本身運行過程的自動化。 MPU: 即微型化的中央處理器。早期微處理器以MPU表示,以區(qū)別于大型主機的多芯片CPU。 CPU有通用CPU和嵌入式CP

2、U之分,通用和嵌入式的分別,主要是根據(jù)應(yīng)用模式的不同而劃分的。,2.1.2 CPU的功能,CPU的主要功能是控制計算機運行存儲在主存儲器中的程序,完成人們對問題的求解工作,運行程序就是執(zhí)行指令序列。其基本功能主要如下。 1指令控制 CPU的首要任務(wù)就是控制各條程序的執(zhí)行,保證程序嚴(yán)格按規(guī)定執(zhí)行。 2操作控制 一條指令的執(zhí)行需要若干個微操作命令信號,通過這些微操行信號作用于CPU內(nèi)部及外部的不同部件上,完成指令功能。因此,操作控制的功能是協(xié)調(diào)各個工作部件按指令完成規(guī)定任務(wù)的基礎(chǔ)。 3時間控制 CPU執(zhí)行每一條指令都有嚴(yán)格的時間順序。例如對各種操作信號的產(chǎn)生時間、穩(wěn)定時間、撤銷時間及相互之間的關(guān)系

3、都應(yīng)有嚴(yán)格的要求。 4數(shù)據(jù)加工 CPU能夠根據(jù)指令功能的要求,完成對數(shù)值數(shù)據(jù)的算術(shù)運算、邏輯變量的邏輯運算及其他非數(shù)值數(shù)據(jù)的處理。對數(shù)據(jù)的輸入、加工處理以及輸出數(shù)據(jù)是CPU的基本功能。 5中斷處理 CPU能對其內(nèi)部或外部的中斷(異常)做出響應(yīng),進(jìn)行相應(yīng)的處理。 6其他功能 除以上各種功能之外,CPU具有其他功能。例如CPU能對直接存儲器存取請求做出響應(yīng),能對復(fù)位信號做出響應(yīng)并將復(fù)位啟動的入口地址送入PC中等。,2.1.3 CPU的組成,1CPU的內(nèi)核 從結(jié)構(gòu)上說,任何CPU都包括運算器(算術(shù)邏輯運算單元Arithmetic Logic Unit,ALU)、控制器(Control Unit,CU

4、)和寄存器(Register)三個主要組成部分。 (1)運算器: 1)算術(shù)邏輯運算單元ALU 2)浮點運算單元FPU(Floating Point Unit) (2)控制器: 1)指令控制器 2)時序控制器 3)總線控制器 4)中斷控制器,(3)內(nèi)部寄存器組 1)運算寄存器 2)數(shù)據(jù)寄存器DR(Data Register) 3)地址寄存器AR(Address Register) 4)標(biāo)志寄存器FR(Flag Register) 5)程序計數(shù)器PC(Program Counter) 6)通用寄存器組 7)專用寄存器,2CPU的外核,(1)解碼器(Decode Unit) 作用:是把長度不定的x8

5、6指令轉(zhuǎn)換為長度固定的指令,并交由內(nèi)核處理。 解碼:分為硬件解碼和微解碼。 硬件解碼:對于簡單的x86指令,速度較快; 微解碼:對于復(fù)雜的x86指令,并把它分成若干條簡單指令,速度較慢且很復(fù)雜。 (2)一級緩存和二級緩存(Cache) 一級緩存和二級緩存是為了緩解較快的CPU與較慢的存儲器之間的矛盾 。,一級緩存:(L1)通常集成在CPU內(nèi)核 二級緩存: (L2)以較快于存儲器的速度運行,2.1.4 指令系統(tǒng),指令系統(tǒng)指的是CPU所能夠處理的全部指令的集合 。 CISC(Complex Instruction Set Computer,復(fù)雜指令系統(tǒng)指令集計算機) RISC(Reduced In

6、struction Set Computer,精簡指令系統(tǒng)指令集計算機) EPIC(Explicitly Parallel Instruction Computers,顯式并行指令系統(tǒng)指令集計算機),2.1.5 CPU的架構(gòu)和封裝方式,(1)CPU的架構(gòu) CPU構(gòu)架是按CPU的安裝插座類型和規(guī)格確定的。目前常用的CPU按其安裝插座規(guī)范可分為Socket x和Slot x兩大構(gòu)架。 以Intel處理器為例,Socket 構(gòu)架的CPU中分為Socket 370、Socket 423和Socket 478三種,分別對應(yīng)Intel PIII/Celeron處理器和P4處理器。Slot x架構(gòu)的CPU中

7、可分為Slot 1、Slot 2兩種,分別使用對應(yīng)規(guī)格的Slot槽進(jìn)行安裝。其中Slot 1是早期Intel PII、PIII和Celeron處理器采取的構(gòu)架方式,Slot 2是尺寸較大的插槽,專門用于安裝P和P序列中的工作組服務(wù)器上的Xeon(至強)處理器。,(2)CPU的封裝方式,所謂封裝是指安裝半導(dǎo)體集成電路芯片用的外殼,通過芯片上的接點用導(dǎo)線連接到封裝外殼的引腳上,這些引腳又通過印刷電路板上的插槽與其他器件相連接。它起著安裝、固定、密封、保護芯片及增強電熱性能等方面的作用。 CPU的封裝方式取決于CPU安裝形式,最早的是DIP(雙列直插式)封裝。而80286封裝是一種被稱為PGA(引腳

8、網(wǎng)格陣列)的正方形包裝。通常采用Socket插座安裝的CPU使用PGA(柵格陣列)的形式進(jìn)行封裝,而采用Slot X槽安裝的CPU則全部采用SEC(單邊接插盒)的形式進(jìn)行封裝。,2.1.6 CPU主要技術(shù)參數(shù),1)位(bit) 位是計算機所能處理的最小數(shù)據(jù)單位,位只能有兩種狀態(tài):“0”和“1”。 Bit通常縮寫為b。 2)字節(jié)(byte)、KB、MB、GB 和TB 1字節(jié)包含8個二進(jìn)制(8 bit )位,通常寫為B 。字節(jié)是計算機存儲器容量的基本單位。 在計算機中,K通常代表210 ,即1024。 1KB=1024B, 1MB=1024KB, 1GB=1024MB, 1TB=1024GB,1位

9、、字節(jié)和字長,3)字(word):字在不同的場合有不同的含義。一種是在計算機編程語言中,一個字代表2個字節(jié),即16位;另一種是在計算機硬件中,字是CPU與(IO)設(shè)備和存儲器之間傳送數(shù)據(jù)的基本單位。 2CPU外頻與主頻 外頻:每個計算機的主板上均有一個按固定頻率產(chǎn)生時鐘信號的裝置,稱為主時鐘CLK,主時鐘的頻率叫外頻,是為CPU提供的基準(zhǔn)時鐘頻率,即CPU與外部進(jìn)行數(shù)據(jù)傳輸時使用的頻率,也叫做系統(tǒng)總線頻率。 主頻:CPU的內(nèi)核實際運行頻率被稱為主頻,主頻的高低直接影響CPU的運算速度,即CPU每秒鐘運算的次數(shù)。 倍頻:可使CPU的內(nèi)核實際運行頻率比外頻提高數(shù)倍,按倍頻系數(shù)乘以外頻而來。,4高速

10、緩沖存儲器(L1和L2 Cache)的容量和速率,目的: 為了解決高速CPU和慢速內(nèi)存之間的速度匹配問題。普遍在CPU和常規(guī)主存之間增設(shè)一級或二級高速小容量存儲器,稱為高速緩沖存儲器,簡稱Cache,其速度比內(nèi)存大一個數(shù)量級,大體與CPU的處理速度相當(dāng)。在Cache中存放著最近訪問或?qū)⒁L問的指令和數(shù)據(jù)。 作用:提高計算機速度起關(guān)鍵作用 。 說明: CPU的L2 Cache分芯片內(nèi)部安裝和外部安裝兩種。設(shè)在CPU芯片內(nèi)的L2 Cache運行速度與主頻相同,而采用P方式安裝在CPU芯片外部的L2 Cache運行頻率一般為主頻的1/2,因此其效率要比芯片內(nèi)的L2 Cache要低。,3前端總線(FS

11、B)頻率,前端總線也就是CPU總線,一般主板上前端總線頻率與內(nèi)存總線頻率相同。內(nèi)存總線頻率指主存的工作頻率,也由主板提供,很多情況下等于外頻。但現(xiàn)在一些主板提供內(nèi)存異步技術(shù),使內(nèi)存工作頻率和CPU外頻不同,更先進(jìn)的CPU如Intel P4、AMD的K7等更可以使FSB數(shù)倍于系統(tǒng)總線頻率。,2.1.7 CPU主流技術(shù)術(shù)語淺析,1流水線技術(shù) 2超流水線和超標(biāo)量技術(shù) 3過程調(diào)用和中斷技術(shù) 4. 亂序執(zhí)行技術(shù) 5動態(tài)執(zhí)行技術(shù) 6指令特殊擴展技術(shù) 7處理器的體系結(jié)構(gòu)(IA)與微體系結(jié)構(gòu) 8、超線程技術(shù) 9、向量機,2.1.8 微型計算機的存儲器組織,1、存儲器組織的實模式,以8086/8088 CPU為

12、例,其有20條地址線,因而其發(fā)出的地址信號是20位二進(jìn)制數(shù),由于每個地址對應(yīng)1個存儲單元,故存儲單元的地址也是20位二進(jìn)制數(shù)(由于20位二進(jìn)制數(shù)寫起來太長,所以人們一般改用等價的十六進(jìn)制表示,即5位十六進(jìn)制數(shù))。20 位二進(jìn)制數(shù)可表示 220=1MB,因而8086/8088系統(tǒng)中存儲單元的個數(shù)最多為1MB,即8086/8088的尋址空間為1MB。,分段,即將1MB的內(nèi)存從邏輯上分為若干個小塊,每個小塊稱為1個段。分段 是邏輯上的概念,不是將內(nèi)存硬件進(jìn)行了物理分隔,所以不同的程序可以使用不同 的的分段方法,而不會對物理內(nèi)存造成影響。,分段以后,對每個段的存儲單元用16位數(shù)從0開始重新進(jìn)行編址,這

13、個地址稱為 段內(nèi)偏移量,簡稱為偏移量。16位二進(jìn)制數(shù)最多能尋址的空間為216=64KB,故1個段 不能多于64K個存儲單元。當(dāng)段長度達(dá)到64KB時,偏移量的范圍從0000HFFFFH。,段內(nèi)偏移量是16位的,解決了運算和存儲的問題,但它僅描述了1個存儲單元距 離段內(nèi)首單元的位置偏移,并不能用來絕對定位1個存儲單元。但若知道了段內(nèi)首 單元的20位物理地址,配合偏移量則可實現(xiàn)對段內(nèi)任一存儲單元的絕對定位。,存儲器的分段:為尋址方便,對1M內(nèi)存空間引入分段的方法,規(guī)則1:,規(guī)則2:,1個段只有1個段基址,但每個單元各有自己的偏移量。,1個段必須從物理地址的最末4位二進(jìn)制數(shù)全為0(即十六進(jìn)制數(shù)最末1位

14、數(shù)為0) 的單元開始。這樣,段首單元只有前16位需要描述,這16位數(shù)稱為段基址。,段基址后再補上4個0 (即乘以十六進(jìn)制的10H),就是這個段首單元的物理地址。,存儲器分段,實際物理地址,這4位為段基址,偏移量,邏輯地址:程序中用來描述存儲單元位置的地址稱為邏輯地址。 邏輯地址的表示:段基址:偏移量 如 1374:0000H, 1374:0001H 等。,邏輯地址向物理地址的轉(zhuǎn)換公式: 物理地址 = 段基址 10H + 偏移量,例如:邏輯地址 1374:0003H 表示的存儲單元的物理地址為:,1374 10H + 0003H = 13743H,(1)段的長度=64K,(2)段只能從物理地址低

15、4位二進(jìn)制數(shù)全為0的單元開始。,分段的規(guī)則:,注意:,(1)內(nèi)存可分為多個段。,(2)段長度可在 1 64 K 個單元之間。,(3)段之間可以重疊,重疊部分的存儲單元將有兩個或更多個邏輯地址,但由這些邏輯地址運算出的物理地址是惟一的。,2、存儲器組織的保護模式簡介,保護模式同實模式的根本區(qū)別是正在運行中的程序進(jìn)程中,其內(nèi)存受保護與否。 80286內(nèi)存尋址有兩種方式:保護模式和實模式。系統(tǒng)啟動時處理器處于實模式,只能訪問1M內(nèi)存空間,經(jīng)過處理可以進(jìn)入保護模式,可訪問16M內(nèi)存空間,但要從保護模式回到實模式必須重啟機器。,堆棧,堆棧是在內(nèi)存中開辟的按后進(jìn)先出原則組織的一個特別存儲區(qū)域,主要用于子程

16、序調(diào)用等操作中,從主程序的哪一步離開,到哪里去找子程序入口地址,這些信息都要做個記號,保存在堆棧中(壓棧),以便返回;返回時,找回記號(出棧)。,例2.1 若用戶程序的分段情況為:代碼段需要8K(2000H)存儲區(qū),數(shù)據(jù)段需要2K(800H)存儲區(qū),堆棧段需要256個字節(jié)的存儲區(qū)。假定操作系統(tǒng)從02000H單元開始分配存儲區(qū),則此時分段情況如圖2-2所示。,2.2 8086/8088微處理器,Intel 8086/8088采用HMOS工藝制造,29000個晶體管、40引腳、雙列直插式。 數(shù)據(jù)總線: 8086:16位,8088:8位。 地址總線:20位,部分與數(shù)據(jù)線復(fù)用。 內(nèi)存空間:20位、直接

17、尋址1MB空間。 尋址方式:7種基本的尋址方式。 指令系統(tǒng):100條基本指令除能完成數(shù)據(jù)傳送、算數(shù)運算、邏輯運算、控制轉(zhuǎn)移和處理器控制功能外,內(nèi)部還設(shè)有硬件乘除法與串處理指令電路。 時鐘頻率:8088: 4.7MHz/ 8086: 5MHz/ 8086-2:8MHz。 中斷功能:內(nèi)外部中斷源多達(dá)256個。 工作模式:支持單處理器、多處理器兩種模式。,2.2.1 8086的編程結(jié)構(gòu),8086編程結(jié)構(gòu)如下頁圖所示,8086分為兩個部分: 1、總線接口部件 BIU(Bus Interface Unit) 2、執(zhí)行部件EU(Execution Unit),編程結(jié)構(gòu):從程序員和使用者的角度來看的結(jié)構(gòu)。,

18、8086 CPU 內(nèi)部結(jié)構(gòu)示意圖,20位地址加法器,4個16位的段地址寄存器,16位的指令指針寄存器IP,6字節(jié)的指令隊列緩沖器,總線控制部件,EU執(zhí)行單元的控制電路,8個16位的寄存器,16位的標(biāo)志寄存器FR,1個數(shù)據(jù)暫存寄存器,代碼段寄存器,數(shù)據(jù)段寄存器,堆棧段寄存器,擴展段寄存器,1個16位的算術(shù)邏輯單元ALU,堆棧指針寄存器SP,目的變址寄存器DI,源變址寄存器SI,基數(shù)指針寄存器BP,8086微處理器內(nèi)部有14個16位寄存器,這14個寄存器分為三大類。,8086寄存器,通用寄存器,數(shù)據(jù)寄存器,變址寄存器,指針寄存器,AX 累加器,BX 基數(shù)寄存器,CX 計數(shù)寄存器,DX 數(shù)據(jù)寄存器,

19、SP 堆棧指針寄存器,BP 基址指針寄存器,SI 源變址寄存器,DI 目的變址寄存器,段寄存器,CS 代碼段寄存器,DS 數(shù)據(jù)段寄存器,SS 堆棧段寄存器,ES 附加段寄存器,控制寄存器,IP 指令指針寄存器,FLAG 標(biāo)志寄存器,8086寄存器結(jié)構(gòu),1、通用寄存器,通用寄存器用途比較廣泛,一般用在算術(shù)和邏輯運算指令中,用來存放算術(shù)運算 的源/目的操作數(shù),某些通用寄存器還常用來存放存儲器操作數(shù)的地址。通用寄存器 共8個,包括數(shù)據(jù)寄存器4個,指針寄存器2個和變址寄存器2個。,(1)數(shù)據(jù)寄存器,數(shù)據(jù)寄存器有4個,這4個寄存器比較特殊,每個均既可作為1個16位寄存器 使用,又可作為兩個8位寄存器使用

20、。當(dāng)用作16位時,稱為AX、BX、CX、DX。 當(dāng)用作8位時,高8位分別稱為AH、BH、CH、DH,低8位分別稱為AL、BL、 CL、DL。,(2)指針寄存器,指針寄存器有兩個,均是16位寄存器。堆棧指針SP用以指出在堆棧操作中 棧頂?shù)奈恢?,入棧(PUSH)和出棧(POP)指令要用到這一位置?;分羔楤P指出要處理的數(shù)據(jù)在堆棧段中的基地址,故稱為基址指針寄存器。,(3)變址寄存器,在字符串處理中,被處理的數(shù)據(jù)稱為源操作數(shù),它們的偏移地址存放在源變址 寄存器SI中,而處理后的字符串的偏移地址則放在目的變址寄存器DI中。,8個通用寄存器一般均可用來存放指令的操作數(shù)或保存運算結(jié)果,但在某些 操作中又

21、必須專用某個寄存器,如 I/O 操作時必須使用 AX,循環(huán)指令中必須使用 CX。 指針和變址實際上是相同的概念,都是存儲單元地址,一般指令中用來存放存儲單 元的地址可作用 BX、BP、SI、DI 之一,但字符串操作指令中必須使用 SI 和 DI ,而 堆棧操作中必須使用 SP 來存放棧頂單元地址。,2、段寄存器,段寄存器是專用寄存器,用在存儲器訪問時存放段的基址。,3、控制寄存器,(1)指令指針寄存器,指令指針寄存器IP中存放著下一條要取出指令的偏移地址,它具有自動加1功能,每取出1B的指令機器碼,它就自動加1,使它指向下一個要取的內(nèi)存單元。這個寄存器由CPU內(nèi)部使用,CPU正是利用此寄存器才

22、確保程序中的指令能依次執(zhí)行。程序中不可訪問此寄存器,但某些指令具有隱含改變IP的功能,如轉(zhuǎn)移、循環(huán)、調(diào)用子程序等指令。,(2)標(biāo)志寄存器,標(biāo)志寄存器(Flag Register)共有16位,其中7位未用。標(biāo)志寄存器內(nèi)容如圖2-5所示。,這9個標(biāo)志位按功能分為6個條件標(biāo)志和3個控制標(biāo)志。條件標(biāo)志用于存放程序運行的狀態(tài)信息,由硬件自動設(shè)定??刂茦?biāo)志由軟件設(shè)定,用于中斷、串操作等控制 。,4、 標(biāo)志寄存器,圖2-5標(biāo)志寄存器結(jié)構(gòu)圖,OF:溢出標(biāo)志。反映帶符號數(shù)運算結(jié)果是否超過機器所能表示的數(shù)值范圍,對字節(jié)運算為128+127,對字運算為32768+32767。若超過上述范圍稱為“溢出”,OF置1;否

23、則,置0。,SF:符號標(biāo)志。反映運算結(jié)果的符號。若結(jié)果為負(fù)數(shù),即最高位為1時,SF置1;否則,置0。SF取值與運算結(jié)果最高位一致。,(1)條件標(biāo)志,ZF:零標(biāo)志。反映運算結(jié)果是否為零。若結(jié)果為零,ZF置1;否則,置0。,AF:半進(jìn)位標(biāo)志。反映一個8位量的低4位向高4位有無進(jìn)位或借位。有則置1;否則,置0。用于BCD碼算術(shù)運算指令。,PF:奇偶標(biāo)志。反映操作結(jié)果的低8位中“1”的個數(shù)的奇偶性。若“1”的個數(shù)為偶數(shù),PF置1;否則,置0。,CF:進(jìn)位標(biāo)志。反映算術(shù)運算后最高位出現(xiàn)進(jìn)位或借位的情況。有則置1;否則,置0。移位和循環(huán)指令也會改變CF的值。,標(biāo)志寄存器(Flag Register)共有1

24、6位,其中7位未用。標(biāo)志寄存器內(nèi)容如圖2-5所示。,4、 標(biāo)志寄存器,圖2-5標(biāo)志寄存器結(jié)構(gòu)圖,(1)控制標(biāo)志,DF:方向標(biāo)志。進(jìn)行字符串操作時,每執(zhí)行一條串操作指令,對地址會進(jìn)行一次自動調(diào)整,由DF決定地址是增還是減。若DF為1,則為減,否則為增。,IF:表示系統(tǒng)是否允許“外部可屏蔽中斷”(其含義見后述“中斷”內(nèi)容)。若IF為1,表示允許;否則表示不允許。IF對非屏蔽中斷和內(nèi)部中斷請求不起作用。該標(biāo)志可由中斷控制指令設(shè)置或清除。,TF:陷阱標(biāo)志。TF為1時,CPU每執(zhí)行完一條指令,便自動產(chǎn)生一個內(nèi)部中斷,可以利用它對程序進(jìn)行逐條檢查。程序調(diào)試過程中的“單步執(zhí)行”就是利用這個標(biāo)志。,分析【例2

25、.2】,68086的存儲體結(jié)構(gòu),8086CPU對應(yīng)的1MB存儲空間可分為兩個512KB的地址存儲體,其中由奇數(shù)地址的存儲單元組成的稱為高字節(jié)體(或奇體),和數(shù)據(jù)總線高8位D15D8相連;由偶數(shù)地址的存儲單元組成的稱為低字節(jié)體(或偶體),和數(shù)據(jù)總線低8位D7D0相連。,規(guī)則字:低位字節(jié)放在低偶地址單元,高位字節(jié)放在較高奇地址單元 非規(guī)則字:高位字節(jié)放在低偶地址單元,低位字節(jié)放在高奇地址單元,特殊情況: 1、如一個數(shù)據(jù)的高8位全部是0,只有低8位有非0的數(shù)據(jù),為節(jié)省內(nèi)存,只用一個字節(jié); 2、有時只需要存取一個數(shù)據(jù)的高8位,也會涉及到奇偶規(guī)則問題。,8086存儲器的連接圖,7. 8086的總線操作時

26、序的概念,時鐘周期:(T狀態(tài)) 在微機系統(tǒng)中,CPU是在時鐘脈沖CLK的統(tǒng)一控制下,按節(jié)拍有序地執(zhí)行指令序列。時鐘脈沖的重復(fù)周期稱為時鐘周期,時鐘周期又叫T狀態(tài),是CPU的時間基準(zhǔn),時序系統(tǒng)中的最小時間單位,由計算機主頻決定。 如: 8086主頻是 5MHz,則其時鐘周期是? 1/5MHZ=0.210-6 s=200ns,指令周期: 執(zhí)行一條指令的全過程,從取指令開始,經(jīng)過分析指令、對操作數(shù)尋址,然后執(zhí)行指令,保存操作結(jié)果,這個過程稱為指令執(zhí)行周期,簡稱指令周期。不同指令的指令周期不一定是等長的。 總線周期: 完成一次讀/寫操作所需要的時間稱為總線周期,又稱機器周期。,一個指令周期又細(xì)分為若干

27、個總線周期,而一個總線周期又由若干個時鐘周期組成。 一個指令周期=n*總線周期(n=1) 一個總線周期=n*時鐘周期(n=1) 注意: 8086系統(tǒng)總線周期至少由四個時鐘周期組成(T1T4),7. 8086的總線操作時序的概念,空閑狀態(tài)時鐘周期(Ti): 若在完成一個總線周期后不發(fā)生任何總線操作,則填入空閑狀態(tài)時鐘周期(Ti),兩個總線周期之間插入幾個Ti與執(zhí)行的指令有關(guān)。 等待周期(Tw): 若存儲器或I/O端口在數(shù)據(jù)傳送中不能以足夠快的速度作出響應(yīng),會發(fā)出一個請求延長總線周期的信號到8086 CPU的READY引腳,8086收到該請求后,則在T3與T4間插入一個或若干個等待周期(Tw,也是

28、時鐘周期),加入Tw的個數(shù)與請求信號的持續(xù)時間長短有關(guān)。,7. 8086的總線操作時序的概念,2.2.2 8086的工作模式和引腳功能,8086有兩種工作模式:,最小模式,最大模式,最小模式:系統(tǒng)中只有1個微處理器,在這種系統(tǒng)中,8086直接產(chǎn)生所有的總線控制信號,系統(tǒng)所需要的外加總線控制邏輯部件最少。最小模式適用于由單微處理器組成的小系統(tǒng)。,最大模式:系統(tǒng)中含有2個或多個微理器,其中1個為主處理器8086,其他的處理器稱為協(xié)處理器,它們是協(xié)助主處理器工作的。常見的有8087、8089兩種 。,引腳特性:,8086CPU采用雙列直插式的封裝形式,具有40條引腳。 分時復(fù)用:有一部分引腳采用分時

29、復(fù)用(如地址/數(shù)據(jù)總線),即在不同時鐘周期內(nèi),引腳的作用不同; 雙重功能:一部分引腳在最小模式和最大模式下的作用不同。 所以有一部分引腳具有雙重功能。 模式轉(zhuǎn)換:33號引腳MN/用于確定配置方式,當(dāng)MN/引腳接+5V電壓時,8086工作在最小模式下;當(dāng)MN/引腳接地時,8086工作在最大模式下。,圖2-6 8086的引腳信號(括號中為最大模式下的名稱),(1)AD0AD15(Address Data Bus):雙向/三態(tài) 。這16條線是多路轉(zhuǎn)換的地址/數(shù)據(jù)總線的復(fù)用引腳。在一個總線周期的第一個時鐘周期里,這些引腳表示地址的低16位。在其他的時鐘周期,這些引腳都用作數(shù)據(jù)總線。,(2)A16/S3

30、 A19/S6(Address/Status):輸出三態(tài)。 4條地址/狀態(tài)復(fù)用引腳,在一條指令執(zhí)行的第一個時鐘周期內(nèi)用作地址線,其余時鐘周期輸出系統(tǒng)的狀態(tài)信息。,(3)BHE/S7(Bus High Enable/Status):輸出/三態(tài)。 在讀、寫以及中斷響應(yīng)的時序中,若為低電平,在數(shù)據(jù)總線的高8位上有數(shù)據(jù)傳送。在其他的時鐘周期,這條引腳用來輸出S7的信息,S7實際沒有定義,/S7 將維持其第一周期的輸出電平。若為高電平。此引腳無意義,不起作用。,(5)READY:輸入。當(dāng)存儲器(或輸入/輸出設(shè)備)的讀寫操作已準(zhǔn)備就緒或預(yù)計可按時完成時,就通過此線向CPU發(fā)一個高電平信號,使READY有效

31、,表示可以在正常時序內(nèi)完成數(shù)據(jù)傳送操作。否則,存儲器(或輸入/輸出設(shè)備)就在某個合適的時間(總線周期的中間,如時鐘周期T3之前)通過此線向CPU發(fā)一個低電平信號,則8086將插入TW時鐘周期而處于“等待”狀態(tài),一直到READY電平升高為止。,圖2-6 8086的引腳信號(括號中為最大模式下的名稱),(7)INTR:輸入。 可屏蔽中斷請求信號,CPU在每條指令執(zhí)行的最后一個時鐘周期將采樣這個信號。如果允許中斷位IF為1,而且INTR為高,則8086將進(jìn)入一個中斷響應(yīng)的時序,并且轉(zhuǎn)移到相應(yīng)的中斷服務(wù)程序中,否則執(zhí)行下一條指令。INTR是高電平觸發(fā)的輸入信號。,(8)NMI:輸入。 不可屏蔽中斷請求

32、信號,它是上升沿觸發(fā)的輸入信號。如果NMI從低電平變高,則8086將完成當(dāng)前指令的執(zhí)行,然后把控制轉(zhuǎn)移到不可屏蔽中斷服務(wù)程序。不可屏蔽中斷服務(wù)程序的地址放在存儲單元00008H起的4個字節(jié)中。對于這種中斷,IF標(biāo)志位是不能禁止的。這就是“不可屏蔽”的含義。,圖2-6 8086的引腳信號(括號中為最大模式下的名稱),(9)RESET:輸入。系統(tǒng)復(fù)位信號,由8284時鐘發(fā)生器同步后送給CPU,加電源時,RESET高電平信號至少要持續(xù)50s。,和A0對數(shù)據(jù)訪問的控制作用,和A0這兩個信號,用來配合讀/寫操作,指出當(dāng)前的16位數(shù)據(jù)總線中哪幾位有效,如表2-2所示。,圖2-6 8086的引腳信號(括號中

33、為最大模式下的名稱),最小模式下的引腳信號意義,8086CPU最小模式下的典型配置,外部晶體振蕩器產(chǎn)生的振蕩信號經(jīng)8284A分頻后,作為主頻信號CLK提供給8086。同時將外部的準(zhǔn)備好信號READY和復(fù)位信號RESET整理后送往8086。 8282功能說明: 8282的作用是在地址鎖存信號ALE控制下經(jīng)8282鎖存后輸出8086的20位地址信號A19A16,AD15AD0,以及高位字節(jié)允許信號。 8286功能說明: 8086CPU在8286的控制下實現(xiàn)16位數(shù)據(jù)線AD15AD0雙向數(shù)據(jù)傳送。,8284A功能說明:,8086CPU最小模式下的典型配置,2最大工作模式,圖2-6 8086的引腳信號

34、(括號中為最大模式下的名稱),在最大控制模式下工作時,控制信號是通過8288總線控制器提供的。最大模式用于中、大型的系統(tǒng)。,S2、S1、S0和總線具體操作之間的對應(yīng)關(guān)系,8086CPU最大工作模式下的典型配置,最大模式系統(tǒng)示例,包含兩個處理器8086和8087的連接示意圖,進(jìn)一步說明主處理器和協(xié)處理器之間的協(xié)調(diào)工作問題和對總線的共享控制問題。,2.2.3 8086的總線時序,8086CPU的總線周期主要有以下幾種: 最小模式下的總線讀寫,包括存儲器讀寫和I/O讀寫。 最大模式下的總線讀寫,包括存儲器讀寫和I/O讀寫。 中斷周期。 最小模式下的總線保持。 最大模式下的總線請求/允許。 最大模式與

35、最小模式的總線讀寫周期操作在邏輯上基本相同,只是在最大模式下要同時考慮CPU發(fā)出的信號和總線控制器發(fā)出的信號。,1、最小模式下的總線周期時序,(1)讀周期的時序(見圖2-11),圖2-11 8086讀總線周期,一個基本的讀周期一般包含如下幾個狀態(tài):,T1狀態(tài):M/信號有效,指出讀內(nèi)存還是I/O。高為讀內(nèi)存,低為讀I/O。CPU送出20位地址信號,高4位通過A16/S3 A19/S6,低16位通過AD0AD15,需鎖存。ALE輸出信號作為地址鎖存信號;信號低電平有效,表示高8位數(shù)據(jù)總線上信息可用,信號也同樣要被鎖存到地址鎖存器中。 T2狀態(tài):地址信號消失,AD15-AD0進(jìn)入高阻狀態(tài)為讀入數(shù)據(jù)作

36、準(zhǔn)備。 T3狀態(tài):若存儲器和外設(shè)速度足夠快,此時CPU接收數(shù)據(jù)。 Tw狀態(tài):如果存儲器和外設(shè)速度較慢,還要在T3之后插入一個或幾個Tw。Tw不是必須的。 T4狀態(tài):一個總線周期結(jié)束,數(shù)據(jù)從總線上撤銷,數(shù)據(jù)、地址總線均進(jìn)入高阻狀態(tài)。,(2)寫周期的時序,取代,:即寫操作取代了讀操作。,:讀周期中為低電平,控制數(shù)據(jù)從總線進(jìn)入CPU; 寫周期中為高電平,控制數(shù)據(jù)從CPU進(jìn)入總線。,圖2-12 8086寫總線周期,DT/,2、最大模式下的總線周期時序,讀操作允許,每個T狀態(tài)的時序操作:,1)控制信號在最大模式下由總線控制器8288產(chǎn)生,在T1期間,ALE信號將地址鎖存;由狀態(tài)信號判斷為讀操作,DTR輸

37、出低電平。 2)在T2期間,8086將AD15AD0切換到數(shù)據(jù)總線;然后輸出信號DEN=1(相位與最小模式下相反),接通數(shù)據(jù)收發(fā)器,允許數(shù)據(jù)輸出到8086。 3)在讀周期的T3狀態(tài)開始時,8086采樣READY,若其為有效電平,進(jìn)入T4狀態(tài)。8086讀取數(shù)據(jù),一次讀操作完成。在T4之前的時鐘周期信號(如T3)的上升沿,8086就發(fā)出過渡的狀態(tài)信息s0 s1 s2111,使各信號在T4周期恢復(fù)初態(tài)(無源狀態(tài))。一旦進(jìn)入無源狀態(tài)就意味著很快可以啟動一個新的總線周期。 4)等待狀態(tài)Tw的插入過程與最小模式時相同。,(2)最大模式下的總線寫存儲器操作,最大模式下的總線寫存儲器操作要完成的功能也是要將C

38、PU輸出的數(shù)據(jù)寫入指定的存儲器單元或IO端口。,寫操作允許,圖2-14 8086最大模式下的總線寫操作時序,1)在T1期間,8086發(fā)出地址和狀態(tài)信號,ALE信號將地址鎖存,8288判斷為寫操作( s0 s1 s2 010),DTR輸出高電平。 2)在T2期間,8086將AD15AD0切換到數(shù)據(jù)總線;然后輸出信號DEN=1(相位與最小模式下相反)和寫命令或(這兩個信號大約相差200ns),接通數(shù)據(jù)收發(fā)器,允許數(shù)據(jù)經(jīng)數(shù)據(jù)總線寫到選中的存儲器單元。 3)T3狀態(tài)開始時,8086采樣READY,若其為有效電平,進(jìn)入T4狀態(tài)。8086一次寫操作完成。 s0 s1 s2 111,使系統(tǒng)各信號恢復(fù)初態(tài)。迎接下一個新的總線周期。,每個T

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論