微機(jī)原理與接口技術(shù)第2章微處理器_第1頁
微機(jī)原理與接口技術(shù)第2章微處理器_第2頁
微機(jī)原理與接口技術(shù)第2章微處理器_第3頁
微機(jī)原理與接口技術(shù)第2章微處理器_第4頁
微機(jī)原理與接口技術(shù)第2章微處理器_第5頁
已閱讀5頁,還剩79頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第2章微處理器2.1微處理器概述2.28086CPU的內(nèi)部結(jié)構(gòu)2.38086CPU的外部引腳2.48086CPU的工作模式與系統(tǒng)構(gòu)成2.58086CPU時序分析2.680X86CPU簡介2.1微處理器概述微處理器運(yùn)算器控制器內(nèi)部寄存器微處理器是微型計算機(jī)的核心,是計算機(jī)內(nèi)部對數(shù)據(jù)進(jìn)行處理并對處理過程進(jìn)行控制的部件。CPU:是計算機(jī)中執(zhí)行運(yùn)算和控制功能的區(qū)域,由算術(shù)邏輯部件(ALU)和控制部件兩大主要部分組成。微處理器:把CPU和一組稱為寄存器(Register)的特殊存儲器集成在一片大規(guī)模集成電路或超大規(guī)模集成電路封裝之中。2.1.1微處理器的主要性能指標(biāo)1、字長字長是微處理器一次可以直接處理的二進(jìn)制數(shù)碼的位數(shù),它通常取決于微處理器內(nèi)部通用寄存器的位數(shù)和數(shù)據(jù)總線的寬度。微處理器的字長有4位、8位、16位、32位和64位等等。2、主頻主頻即CPU的時鐘頻率(CPU的工作頻率),用來表示微處理器的運(yùn)行速度,單位MHZ。一個時鐘周期完成的指令數(shù)是固定的,故主頻越高,CPU的速度越快。外頻:系統(tǒng)總線的工作頻率,外頻越高說明微處理器與系統(tǒng)內(nèi)存數(shù)據(jù)交換的速度越快。倍頻是CPU主頻和外頻之間的比例關(guān)系,一般為:

主頻=外頻*倍頻

超頻:就是通過人為的方式將CPU、顯卡等硬件的工作頻率提高(實際就是提高電壓),讓它們在高于其額定的頻率狀態(tài)下穩(wěn)定工作。以IntelP4C2.4GHz的CPU為例,它的額定工作頻率是2.4GHz,如果將工作頻率提高2.6GHz,系統(tǒng)仍然可以穩(wěn)定運(yùn)行,那這次超頻就成功了。CPU超頻的主要目的是為了提高CPU的工作頻率,也就是CPU的主頻。而CPU的主頻又是外頻和倍頻的乘積。所以,提升CPU的主頻可以通過改變CPU的倍頻或者外頻來實現(xiàn)。但如果使用的是IntelCPU,你盡可以忽略倍頻,因為IntelCPU使用了特殊的制造工藝來阻止修改倍頻。AMD的CPU可以修改倍頻,但修改倍頻對CPU性能的提升不如外頻好。而外頻的速度通常與前端總線、內(nèi)存的速度緊密關(guān)聯(lián)。因此當(dāng)你提升了CPU外頻之后,CPU、系統(tǒng)和內(nèi)存的性能也可能同時提升了。3、MIPS

MIPS是MillionsofInstructionPerSecond的縮寫,用來表示微處理器的性能,意思是每秒鐘能執(zhí)行多少百萬條指令。通常也用主頻來描述運(yùn)算速度,主頻越高,運(yùn)算速度越快。4、iCOMP指數(shù)(英特爾微處理器性能比較指數(shù))

1993年,為評價386、486SX、486DX、486DX2等各種CPU的性能,Intel公司提出了一種簡單、單一的指標(biāo)——iCOMP指數(shù),即IntelCOMPARATIVEMICROPROCESSOPERMANCE。2.1.2微處理器的主要功能基本功能:(1)進(jìn)行算術(shù)和邏輯運(yùn)算(2)接受存儲器和I/O接口發(fā)來的數(shù)據(jù)及發(fā)送數(shù)據(jù)給存儲器和I/O接口。(3)可以少量暫存數(shù)據(jù)。(4)能對指令系統(tǒng)進(jìn)行寄存、譯碼并執(zhí)行指令所規(guī)定的操作。(5)能提供整個系統(tǒng)所需的定時和控制信號。(6)可響應(yīng)I/O設(shè)備的中斷請求。程序設(shè)計角度,其功能:(1)賦值和算術(shù)表達(dá)式。(2)無條件轉(zhuǎn)移。(3)條件轉(zhuǎn)移以及關(guān)系和邏輯表達(dá)式。(4)循環(huán)。(5)數(shù)組和其他數(shù)據(jù)結(jié)構(gòu)。(6)子程序。(7)輸入、輸出。2.28086CPU的內(nèi)部結(jié)構(gòu)

8086:16位微處理器,16根數(shù)據(jù)線、20根地址線,可尋址1M字節(jié);8088:準(zhǔn)16位微處理器,其內(nèi)部寄存器、內(nèi)部運(yùn)算部件以及內(nèi)部操作均按16位設(shè)計,但對外的數(shù)據(jù)總線只有8條。8086CPU內(nèi)部結(jié)構(gòu)由總線接口部件(BIU,BusInterfaceUnit)和執(zhí)行部件(EU,ExecutionUnit)組成??偩€控制邏輯內(nèi)部總線16位地址加法器總線接口部件BIU123456指令隊列執(zhí)行部件EU通用寄存器AXAHALBXBHBLCXCHCLDXDHDLSPBPDISIEU控制器80888086CSDSSSESIP暫存器外部總線專用(段)寄存器ALU暫存器標(biāo)志寄存器8位隊列總線20位地址總線16位數(shù)據(jù)總線完成16或8位二進(jìn)制數(shù)的算術(shù)運(yùn)算和邏輯運(yùn)算通用寄存器組包括數(shù)據(jù)寄存器和地址指針與變址寄存器。生成20位物理地址CS:存放代碼段段基址DS:存放數(shù)據(jù)段段基址SS:存放附加段段基址ES:存放堆棧段段基址IP:存放下一條要執(zhí)行指令的有效地址EA。8086:6個字節(jié)8088:4個字節(jié)8086指令隊列空2個字節(jié)(8088空1個字節(jié)),且EU部件沒有要求BIU部件進(jìn)入存取操作數(shù)等總線周期時,BIU部件就會自動從內(nèi)存單元順序取指令字節(jié)填滿指令流隊列。1、執(zhí)行部件(EU)組成:由8個通用寄存器、1個標(biāo)志寄存器、算術(shù)邏輯單元和EU控制電路組成。作用:(1)從BIU指令隊列中取出指令。(2)對指令進(jìn)行譯碼,發(fā)出相應(yīng)的控制信號。(3)接收由總線接口送來的數(shù)據(jù)或發(fā)送數(shù)據(jù)至接口。(4)進(jìn)行算術(shù)運(yùn)算。1)算術(shù)邏輯單元ALU完成8位或者16位二進(jìn)制算術(shù)和邏輯運(yùn)算,計算偏移量。2)數(shù)據(jù)暫存寄存器

16位寄存器,協(xié)助ALU完成運(yùn)算,暫存參加運(yùn)算的數(shù)據(jù)。3)執(zhí)行部件的控制電路從總線接口的指令隊列取出指令操作碼,通過譯碼電路分析,發(fā)出相應(yīng)的控制命令,控制ALU數(shù)據(jù)流向。2、總線接口部件(BIU)組成:(1)四個段地址寄存器CS,16位代碼段寄存器;DS,16位數(shù)據(jù)段寄存器;ES,16位附加段寄存器;SS,16位堆棧段寄存器。(2)16位指令指針寄存器IP(PC)。(3)20位的地址加法器。(4)6B的指令隊列緩沖器。(5)內(nèi)部暫存器(6)I/O接口電路說明:(1)指令隊列緩沖器:在執(zhí)行指令的同時,將取下一條指令,并放入指令隊列緩沖器中。CPU執(zhí)行完一條指令后,可以執(zhí)行下一條指令(流水線技術(shù)),提高CPU效率。(2)地址加法器:產(chǎn)生20位地址。CPU內(nèi)無論是段地址寄存器還是偏移量都是16位的,通過地址加法器產(chǎn)生20位地址。功能:BIU負(fù)責(zé)8086CPU與存儲器和外設(shè)之間的信息傳送。(1)從內(nèi)存取指令送到指令隊列。(2)CPU執(zhí)行指令時,到指定的位置取操作數(shù),并將其送至要求的位置單元中。1)地址加法器和段寄存器由于8086微處理器具有20位地址總線,可尋址1MB的內(nèi)存單元。但CPU內(nèi)部只有16位的寄存器,無法保存和傳送每個存儲單元的20位地址信息,為正確訪問存儲器,8086采用分段結(jié)構(gòu),將1MB內(nèi)存空間劃分為若干邏輯段,在每個邏輯段中使用16位段基址和16位偏移地址進(jìn)行尋址,段寄存器用來存放各段的段基址。利用BIU加法器計算并形成CPU所要訪問的存儲單元地址(20位)或I/O端口地址(16位)。2)指令隊列緩沖器即6B的“先進(jìn)先出”的RAM存儲器,用來按順序存放CPU要執(zhí)行的指令代碼,并送入執(zhí)行部件EU中執(zhí)行。EU從指令隊列的輸出端取指令,當(dāng)指令隊列中存滿一條指令后,EU就立即開始執(zhí)行。當(dāng)指令隊列中前兩個指令字節(jié)被取走后,BIU就自動執(zhí)行總線操作,讀取指令并填入指令隊列中。當(dāng)程序發(fā)生跳轉(zhuǎn)時,BIU立即清除指令隊列中內(nèi)容并重新開始讀取指令代碼。3)總線控制電路主要負(fù)責(zé)產(chǎn)生總線控制信號。如產(chǎn)生對存儲器的讀/寫控制信號和I/O端口的讀/寫控制信號等。

CPU取指過程執(zhí)行單元(EU)總線接口單元(BIU)存儲器DBCBAB

CPU向內(nèi)存寫數(shù)過程執(zhí)行單元(EU)總線接口單元(BIU)存儲器DBCBAB

EU取指、譯碼過程執(zhí)行單元(EU)總線接口單元(BIU)存儲器DBCBAB…8086CPU內(nèi)部有14個16位寄存器,可以分為以下三組。通用寄存器組段寄存器組專用寄存器組數(shù)據(jù)寄存器地址指針與變址寄存器指令指針I(yè)P標(biāo)志寄存器FR2.2.38086寄存器結(jié)構(gòu)AXBXCXDX目的變址指針DI源變址指針SI基址指針BP堆棧指針SP數(shù)據(jù)寄存器DLDHDX計數(shù)寄存器CLCHCX基址寄存器BLBHBX累加器ALAHAX數(shù)據(jù)寄存器

可分為兩個8位,主要用于數(shù)據(jù)操作地址指針寄存器主要用于地址操作16位888086的16位通用寄存器是:AX BX CX DXSI DI BP SP8086的8位通用寄存器是:AH BH CH DHAL BLCLDL對其中某8位的操作,并不影響另外對應(yīng)8位的數(shù)據(jù)BX:常用做存放存儲器地址;CX:作為循環(huán)和串操作等指令中的隱含計數(shù)器;數(shù)據(jù)寄存器:AX:使用頻度最高,用于算術(shù)、邏輯運(yùn)算以及與外設(shè)傳送信息等;DX:常用來存放雙字長數(shù)據(jù)的高16位,或存放外設(shè)端口地址;AXBXCXDX目的變址指針DI源變址指針SI基址指針BP堆棧指針SP數(shù)據(jù)寄存器DLDHDX計數(shù)寄存器CLCHCX基址寄存器BLBHBX累加器ALAHAX數(shù)據(jù)寄存器

可分為兩個8位,主要用于數(shù)據(jù)操作地址指針寄存器主要用于地址操作16位88地址指針和變址寄存器:SP:指示棧頂?shù)钠频刂?,不能再用于其他目的,具有專用目的。BP:數(shù)據(jù)在堆棧段中的基地址。SP和BP寄存器與SS段寄存器聯(lián)合使用來訪問堆棧。SI和DI:串操作類指令中,常用于存儲器尋址時提供地址。操作取指令存取數(shù)據(jù)堆棧操作目的串操作訪問:代碼段物理地址的構(gòu)成:CS×10H+IP訪問:數(shù)據(jù)段物理地址的構(gòu)成:DS×10H+EA物理地址的構(gòu)成:SS×10H+SP物理地址的構(gòu)成:ES×10H+DI3、段寄存器CS、DS、SS、ES(16位)物理地址=段地址×10H+有效地址CS左移4位20位+地址加法器CS16位物理地址20位IP或偏移地址20位物理地址形成過程演示專用寄存器組指令指針I(yè)P標(biāo)志寄存器FR作用:存放將要執(zhí)行的下一條指令在現(xiàn)行代碼段中的偏移地址,它與CS相結(jié)合生成指向指令的物理地址。特點:IP是一個專用寄存器,其內(nèi)容由BIU部件自動修改,不能直接訪問IP,但可以通過轉(zhuǎn)移或調(diào)用指令改變其內(nèi)容。作用:存放指令執(zhí)行結(jié)果特征位和對CPU運(yùn)行特點的控制位。特點:8086CPU中設(shè)置了16位標(biāo)志寄存器,只用了9位,其余位用來擴(kuò)展。9位標(biāo)志分為6位狀態(tài)標(biāo)志和3位控制標(biāo)志兩類。AF:輔助進(jìn)位標(biāo)志AF=1:數(shù)據(jù)的第3位(半個字節(jié))需要向前產(chǎn)生進(jìn)位/借位。AF=0:數(shù)據(jù)的第3位(半個字節(jié))不會向前產(chǎn)生進(jìn)位/借位。CF:進(jìn)位/借位標(biāo)志CF=1:最高位需要向前產(chǎn)生進(jìn)位/借位。CF=0:最高位不會向前產(chǎn)生進(jìn)位/借位。PF:奇偶標(biāo)志PF=1:結(jié)果的低8位中有偶數(shù)個1。PF=0:結(jié)果的低8位中有奇數(shù)個1。影響全部狀態(tài)標(biāo)志:加法、減法運(yùn)算。影響部分狀態(tài)標(biāo)志:移位操作。不影響任何狀態(tài)標(biāo)志:數(shù)據(jù)傳送指令。ZF:全零標(biāo)志ZF=1:運(yùn)算結(jié)果為全0。不包括進(jìn)位的情況ZF=0:運(yùn)算結(jié)果不為0。(2)標(biāo)志寄存器16位,只用了其中9位,唯一能按位操作的寄存器。用于反映指令執(zhí)行結(jié)果或控制指令執(zhí)行形式。OFD11D15..D12DFD10IFD9TFD8SFD7ZFD6D5AFD4D3PFD2D1CFD06位狀態(tài)標(biāo)志:OF、SF、ZF、PF、CF、AF作用:反映指令對數(shù)據(jù)作用之后,結(jié)果的狀態(tài),控制后續(xù)指令的執(zhí)行。3位控制標(biāo)志:DF、IF、TF作用:值不由數(shù)據(jù)運(yùn)算結(jié)果決定,由指令直接賦值,決定后續(xù)指令執(zhí)行情況。OF:溢出標(biāo)志(指補(bǔ)碼)OF=1:操作數(shù)超過了機(jī)器表示的范圍,溢出。OF=0:操作數(shù)未超過了機(jī)器能表示的范圍,不溢出。求解方法:最高位進(jìn)位次高位進(jìn)位TF:跟蹤(單步)標(biāo)志位TF=1,每執(zhí)行一條指令后,自動產(chǎn)生一次內(nèi)部中斷,使CPU處于單步執(zhí)行指令工作方式,便于進(jìn)行程序調(diào)試,用戶能檢查程序。TF=0,CPU正常工作。16位,只用了其中9位,唯一能按位操作的寄存器用于反映指令執(zhí)行結(jié)果或控制指令執(zhí)行形式OFD11D15..D12DFD10IFD9TFD8SFD7ZFD6D5AFD4D3PFD2D1CFD0IF:中斷允許/禁止標(biāo)志位IF=1,允許外部可屏蔽中斷。CPU可以響應(yīng)可屏蔽中斷請求。IF=0,關(guān)閉中斷。CPU禁止響應(yīng)可屏蔽中斷請求。IF的狀態(tài)對不可屏蔽中斷和內(nèi)部軟中斷沒有影響。SF:符號標(biāo)志SF=1:運(yùn)算結(jié)果的最高位為1,如果為帶符號數(shù),則為負(fù)數(shù)。SF=0:運(yùn)算結(jié)果的最高位為0,如果為帶符號數(shù),則為正數(shù)。帶符號數(shù)的最高位為符號位;而無符號數(shù)的最高位為數(shù)值位。DF:方向控制標(biāo)志位用于串處理指令,控制從前往后、還是從后往前對字符串進(jìn)行操作處理。DF=1,每次串處理操作后使變址寄存器SI和DI的值遞減,使串處理從高地址向低地址方向處理。DF=0,每次串處理操作后使變址寄存器SI和DI的值遞增,使串處理從低地址向高地址方向處理??刂茦?biāo)志與狀態(tài)標(biāo)志的區(qū)別:控制標(biāo)志:其值由系統(tǒng)程序或用戶程序根據(jù)需要用指令設(shè)置。狀態(tài)標(biāo)志:由中央處理器執(zhí)行運(yùn)算指令,并根據(jù)運(yùn)算結(jié)果而自動設(shè)置。例1:2個數(shù)相加后,分析各標(biāo)志位的值例2:2個數(shù)相減后,分析各標(biāo)志位的值10001101001101100011001000011001+0110011010101001運(yùn)算結(jié)果最高位為1 ∴SF=1;第三位向第四位有進(jìn)位 ∴AF=1;次高位向最高位有進(jìn)位,最高位向前沒有進(jìn)位,∴OF=10=1最高位沒有進(jìn)位 ∴CF=0;低8位中1的個數(shù)為偶數(shù)個 ∴PF=1;運(yùn)算結(jié)果本身≠0 ∴ZF=0;返回10001101001101100011001000011001-0010110010001100運(yùn)算結(jié)果最高位為0 ∴SF=0;第三位向第四位沒有借位 ∴AF=0;次高位向最高位沒有借位,最高位向前沒有借位,∴OF=00=0最高位沒有借位 ∴CF=0;低8位中1的個數(shù)為奇數(shù)個 ∴PF=0;運(yùn)算結(jié)果本身≠0 ∴ZF=0;例:將5394H與-777FH相加,并說明其標(biāo)志位的狀態(tài)。【解】先求-777FH的補(bǔ)碼:原碼:1111011101111111反碼:1000100010000000補(bǔ)碼:1000100010000001再做加法運(yùn)算:0101001110010100

+10001000100000011101110000010101結(jié)果標(biāo)志位為:CF=0、PF=0、AF=0ZF=0、SF=1、OF=0芯片與其他部件的聯(lián)系全靠在引腳上傳送信息,這些信息可能自芯片向外輸出,也可能從外部輸入到芯片,還可能是雙向的。指控制引腳使用有效時的邏輯電平。低電平有效的引腳名字上面加有一條橫線,引腳名字上無橫線者為高電平有效。另有一些引腳高、低電平均有效,分別表示不同的狀態(tài)或數(shù)值。還有些引腳信號為邊沿有效。芯片引腳特性描述信號引腳功能信號的有效電平信號流向引腳復(fù)用三態(tài)能力引腳信號的定義一個引腳具有兩種或兩種以上的功能,可以減少引腳的數(shù)量?!叭龖B(tài)”能力是指有些引腳除了能正常輸出或輸入高、低電平外,還能輸出高阻狀態(tài)。當(dāng)它輸出高阻狀態(tài)時,表示芯片實際上已放棄了對該引腳的控制,使之“浮空”。這樣,與總線相連接的其它設(shè)備就可以獲得對總線的控制權(quán),系統(tǒng)轉(zhuǎn)為接受總線的設(shè)備控制下工作。2.38086CPU的外部引腳40條引腳,雙列直插式封裝采用分時復(fù)用地址/數(shù)據(jù)總線兩種模式:最大模式、最小模式

最大模式:兩個或多個微處理器(多微處理器模式),一個主處理器為8086CPU,另外的處理器可以是浮點數(shù)協(xié)助處理器8087或I/O處理器8089。

最小模式:只有8086CPU一個微處理器(單處理器模式)。思考:如何選擇兩種工作模式?思考:何時傳輸?shù)刂?,何時傳輸數(shù)據(jù)?8086有40個引腳,其中第33(最小/最大模式)腳很關(guān)鍵,它是一條輸入線,可以加高電平,也可以加低電平,由該線所加電平的高或低電平?jīng)Q定24-31引腳的功能(24-31引腳括號內(nèi)為最大模式功能)其他引腳不受第33引腳的影響,我們把這部分引腳稱為一般引腳。8086CPU的引腳線按照功能分為3類。數(shù)據(jù)引腳線地址引腳線8086CPU引腳分類控制引腳線1.地址、數(shù)據(jù)引腳線AD0~AD15:分時復(fù)用的地址數(shù)據(jù)引腳線,雙向、三態(tài)。T1期間作地址線A15~A0用,輸出存儲單元低16位地址。T2~T3期間作數(shù)據(jù)線D15~D0用,雙向。

寫操作為T2~T3;

讀操作為T3,T2處于懸空狀態(tài);

CPU響應(yīng)中斷及系統(tǒng)總線處理“保持響應(yīng)”狀態(tài)時,AD0~AD15處于懸空狀態(tài)。S5:表示中斷允許標(biāo)志狀態(tài)。

S5=1表示中斷允許標(biāo)志IF=1,允許可屏蔽中斷請求;

S5=0表示IF=0,禁止可屏蔽中斷請求。S6:指示8086當(dāng)前是否與總線相連。

S6=0表示8086連在總線上。T1期間,作為20位地址線的高4位A19~A16。T2~T4期間作為S6~S3狀態(tài)線用。S4和S3狀態(tài)組合與當(dāng)前段的關(guān)系表S4S3當(dāng)前使用的段寄存器00ES段寄存器01SS段寄存器10存儲器尋址時為CS段寄存器,I/O端口則不需要11DS段寄存器2.控制引腳線CPU在進(jìn)行具體操作時所發(fā)出的控制信號,CPU的操作不同,使用的引腳線也各不相同。啟動復(fù)位和時鐘信號操作類型最小/最大方式的讀/寫操作總線請求和響應(yīng)操作中斷請求和響應(yīng)操作控制數(shù)據(jù)和地址信息傳送操作CPU等待檢測操作及其他信號復(fù)位條件:至少保持4個時鐘周期的高電平復(fù)位處理:除CS=FFFFH外,包括IP在內(nèi)的其余 寄存器和指令流隊列的值均為0。復(fù)位結(jié)果:從FFFF:0000H處開始執(zhí)行程序。一般放置一條轉(zhuǎn)移指令轉(zhuǎn)到程序真正的入口地址。啟動復(fù)位和時鐘信號RESET復(fù)位信號CLK時鐘輸入信號提供了CPU和總線控制的基本定時脈沖。寄存器狀態(tài)標(biāo)志Reg清除CSFFFFHIP、DS、ES、SS0000H指令流隊列清除最小方式的讀/寫操作信號選擇信號讀信號寫信號高電平:CPU當(dāng)前訪問存儲器低電平:當(dāng)前CPU訪問I/O端口表示CPU正在對存儲器或I/O端口進(jìn)行讀操作表示CPU當(dāng)前正在對存儲器或I/O端口進(jìn)行寫操作8086/8088CPU讀寫操作信號對照表具體操作110寫存儲器101讀存儲器010寫外設(shè)001讀外設(shè)總線請求和響應(yīng)操作信號HOLD總線保持請求信號HLDA總線保持響應(yīng)信號HOLD=1,有總線請求;HOLD=0,無總線請求。當(dāng)HOLD=1時,HLDA=1;表示CPU讓出總線使用權(quán)。HOLD和HDLA一對聯(lián)絡(luò)信號的應(yīng)答關(guān)系

中斷響應(yīng)信號:CPU對中斷請求信號INTR的響應(yīng)。目的為了獲取中斷類型碼。中斷請求和響應(yīng)操作信號非屏蔽中斷(NMI),上升沿有效。可屏蔽中斷(INTR和中斷響應(yīng)信號)不受中斷允許標(biāo)志IF的控制,也不能用軟件進(jìn)行屏蔽。當(dāng)INTR=1,并且中斷允許標(biāo)志位IF=1時,則CPU在當(dāng)前指令周期結(jié)束后,轉(zhuǎn)入中斷響應(yīng)周期??刂菩畔魉筒僮鞯南嚓P(guān)控制信號ALE地址鎖存允許信號在任何一個總線周期T1狀態(tài),表示當(dāng)前地址/數(shù)據(jù)復(fù)用總線上輸出是地址信息,下降沿將地址信息鎖存到鎖存器。數(shù)據(jù)允許信號數(shù)據(jù)發(fā)送/接收控制信號CPU控制8286/8287等數(shù)據(jù)總線收發(fā)器的選通信號。有效時間:存儲器訪問、I/O訪問、中斷響應(yīng)周期作用:控制8286/8287的數(shù)據(jù)傳送方向。=1時,發(fā)送;=0時,接收。等待檢測操作信號高電平:CPU繼續(xù)空轉(zhuǎn)等待;低電平:退出等待,執(zhí)行下一條指令。READY準(zhǔn)備就緒信號測試信號作用:使CPU和低速的存儲器或I/O設(shè)備之間實現(xiàn)速度匹配。READY=1:按正常時序進(jìn)行讀、寫操作,不插入TW;READY=0:在T3和T4之間自動插入一個或幾個TW。2.48086/8088CPU工作模式及其系統(tǒng)結(jié)構(gòu)最小模式系統(tǒng)特點只有8086/8088一個微處理器所有總線控制信號直接由CPU提供將33號引腳接+5V需要地址鎖存器進(jìn)行地址信息分流需要使用總線緩沖器將數(shù)據(jù)信息分流到數(shù)據(jù)總線

圖8086在最小模式下的典型配置

時鐘發(fā)生器/驅(qū)動器8位通用數(shù)據(jù)鎖存器,分流20位地址信息。8位雙向數(shù)據(jù)緩沖器,分流數(shù)據(jù)。圖8086在最大模式下的典型配置

2.3.2最大模式和系統(tǒng)組成最大模式下,除了8282鎖存器和8286數(shù)據(jù)收發(fā)器外,還增加了8288總線控制器。對CPU發(fā)出的控制信號進(jìn)行變換和組合,獲得對存儲器和I/O端口的讀/寫信號及對鎖存器8282和總線收發(fā)器8286的控制信號。8288引腳如圖所示:圖2-118288與8086CPU的連接圖

與CPU相連,接收狀態(tài)信息,確定當(dāng)前CPU要執(zhí)行的操作,發(fā)出相應(yīng)的命令信號。接收時鐘發(fā)生器的CLK信號,使8288與CPU及系統(tǒng)中的其它部件同步。I/O端口讀命令低電平:將所選中端口中的數(shù)據(jù)讀到數(shù)據(jù)總線上。 相當(dāng)于最小模式中由CPU發(fā)出的控制信號和為低電平的組合。中斷響應(yīng)信號,送往發(fā)出中斷請求的接口。

:I/O端口寫命令。有效時,把數(shù)據(jù)總線上的數(shù)據(jù)寫入被選中的端口中。它相當(dāng)于最小模式系統(tǒng)中由CPU發(fā)出的控制信號有效和為低電平的組合。:存儲器讀命令。有效時,被選中的存儲單元把數(shù)據(jù)送到數(shù)據(jù)總線。它相當(dāng)于最小模式系統(tǒng)中由CPU發(fā)出的控制信號有效和為高電平的組合。:存儲器寫命令。有效時,把數(shù)據(jù)總線上的數(shù)據(jù)寫入被選中的存儲單元中。它相當(dāng)于最小模式系統(tǒng)中由CPU發(fā)出的控制信號有效和為高電平的組合。

:提前的存儲器寫命令,其功能與一樣,只是提前一個時鐘周期輸出。:提前的I/O端口寫命令,其功能與一樣,只是提前一個時鐘周期輸出。ALE:地址鎖存允許信號。相當(dāng)于最小模式系統(tǒng)中的ALE。:主級連允許/外設(shè)數(shù)據(jù)允許信號。此功能取決于8288的輸入控制信號IOB(I/O總線方式)。

DEN:數(shù)據(jù)總線允許信號。DEN有效:數(shù)據(jù)收發(fā)器把局部數(shù)據(jù)總線和系統(tǒng)數(shù)據(jù)總線連接,形成一個傳輸數(shù)據(jù)的通路;

DEN無效:數(shù)據(jù)收發(fā)器使局部數(shù)據(jù)總線與系統(tǒng)數(shù)據(jù)總線斷開。

:數(shù)據(jù)收發(fā)信號。1MB的存儲單元,每個存儲單元中存放一個8位的二進(jìn)制信息每一存儲單元用唯一的地址碼,其地址范圍00000H~FFFFFH。字節(jié)編址:將存儲器空間按字節(jié)地址號順序排列的方式。2.4.38086存儲器的其尋址字:將連續(xù)存放的兩個字節(jié)數(shù)據(jù)構(gòu)成一個16位的字?jǐn)?shù)據(jù):高8位存放在高地址單元,低8位存放在低地址單元。將低位字節(jié)的地址作為這個字的地址。對準(zhǔn)字:字地址為偶地址,存取一個字需要一個總線周期。非對準(zhǔn)字:字地址為奇地址,存取一個字需要兩個總線周期。

8086CPU對準(zhǔn)字和非對準(zhǔn)字讀寫表

A0具體操作引腳線00從偶地址開始讀/寫一個字(規(guī)則字)AD15~AD001從奇地址開始讀/寫一個字節(jié)AD15~AD810從偶地址開始讀/寫一個字節(jié)AD7~AD00110從奇地址開始讀寫一個字(非規(guī)則字)第一總線周期高8位數(shù)據(jù)有效,第二總線周期低8位數(shù)據(jù)有效AD15~AD8AD7~AD0(1)分段結(jié)構(gòu)①將1M的存儲空間劃分成若干個段,每個段最大長度64K。②

段基址就是指一個段的起始地址。③

邏輯段在物理存儲器中可以是鄰接的、間隔的、部分重疊的和完全重疊的等4種情況。④

在任一時刻,一個程序只能訪問4個當(dāng)前段中的內(nèi)容。2.存儲器的分段結(jié)構(gòu)和物理地址的形成圖段重疊結(jié)構(gòu)示例段1基址段2基址重疊部分段1長度段2長度(2)物理地址的形成在8086/8088系統(tǒng)中,每個存儲單元都有物理地址和邏輯地址兩種地址表示。物理地址:

20位,范圍為00000H~FFFFFH。邏輯地址:段地址+偏移量存放在某一個段寄存器中,是一個邏輯段的起始單元地址的高16位。某個存儲單元與它所在段的段地址之間的字節(jié)距離。表示方法:段地址:偏移量例如,3267H:00A0H例題:將邏輯地址0915H:003AH轉(zhuǎn)換為物理地址。左移4位堆棧:存儲器中的一個特殊數(shù)據(jù)區(qū)。功能:按“后進(jìn)先出”的原則用來存放需要暫時保存的數(shù)據(jù)。容量:最大64KB,其位置可以在1MB空間內(nèi)浮動。棧底在高地址端,棧頂在低地址端,地址由高向低變化。 存儲單元的地址=(SS)×10H+(SP)存放堆棧基地址,表明堆棧所在的邏輯段。存放棧頂?shù)刂?,始終指向最后推入堆棧的數(shù)據(jù)所在的單元。壓棧:把數(shù)據(jù)推入堆棧。(SP)-2送SP,再與SS形成物理地址,將數(shù)據(jù)存入相應(yīng)單元。彈棧:從堆棧取數(shù)據(jù)。從當(dāng)前SS和SP形成的物理地址上取出數(shù)據(jù),再將(SP)+2送SP。堆棧操作:以字為單位,數(shù)據(jù)必須按規(guī)則字存放。低字節(jié)在偶地址單元,高字節(jié)在奇地址單元。按“后進(jìn)先出”的規(guī)則進(jìn)行SP的修改自動進(jìn)行。例題若已知當(dāng)前SS=1050H,SP=0008H,AX=1234H,則8086系統(tǒng)中堆棧的入棧和出棧操作如下圖所示。12AA…10500H10501H10502H10503H10504H10505H10506H10507H10508H棧底BB10509H段基址(SS)AX3412123434PUSHAX1050AHBBAAAABB1234BX34POPBXPOPAX12棧頂SP2.58086CPU時序分析總線周期(BusCycle)8086CPU通過總線與外部交換信息,一次信息交換所耗用的時間稱為一個總線周期,也稱機(jī)器周期(MachineCycle)。指令周期(InstructionCycle)8086CPU執(zhí)行一條指令所需要的時間稱為指令周期一個指令周期由一個或若干個總線周期組成,不同指令的指令周期不等長,最短為一個總線周期,長的指令周期,如乘法指令周期,長達(dá)124個時鐘周期。8086CPU必須在時鐘信號CLK控制下工作,一個時鐘脈沖的時間長度稱為一個時鐘周期,時鐘信號的周期也稱為狀態(tài)周期T,它是微處理器的最小時間單元。時鐘周期(ClockCycle)8086的主要總線操作系統(tǒng)復(fù)位啟動操作總線讀/寫操作總線保持操作或總線請求/允許操作中斷響應(yīng)操作暫停操作空操作CPU的操作時序是指CPU在操作進(jìn)行過程中各個環(huán)節(jié)在時間上的先后順序。至少包含傳送地址和傳送數(shù)據(jù)兩個過程。T1——CPU輸出地址;T2~T4——數(shù)據(jù)傳送。時序圖:描述某一操作過程中,芯片/總線上有關(guān)引腳信號隨時間發(fā)生變化的關(guān)系圖。一個總線周期復(fù)位操作條件:檢測到RESET引腳上為上升沿。復(fù)位邏輯電路:用CLK來與外部RESET同步,內(nèi)部RESET信號要在時鐘的上升沿到來時才有效。

①外部RESET變?yōu)楦唠娖舰贑LK上升沿,內(nèi)部RESET有效③總線復(fù)位④總線懸浮,直到復(fù)位結(jié)束復(fù)位時總線狀態(tài)地址線為高阻態(tài),直到RESET變?yōu)榈碗娖?,開始從FFFF0H單元取指令;ALE、HLDA為低電平(無效);其它控制信號先變成高電平,然后呈高阻態(tài)。一個總線周期T1T3T2T4CLKA19/S6~A16/S3BHE/S7AD15~AD0ALEM/IORDDT/RDEN地址,BHE狀態(tài)輸出地址輸出數(shù)據(jù)輸入低電平讀IO,高電平讀存儲器1.總線讀操作最小模式下的總線時序一個總線周期T1T3T2T4CLKA19/S6~A16/S3BHE/S7AD15~AD0ALEM/IOWRDT/RDEN地址,BHE狀態(tài)輸出地址輸出低電平寫IO,高電平寫存儲器數(shù)據(jù)輸出2.總線寫操作一個總線周期T1T3T2T4CLKAD15~AD0A19/S6~A16/S3BHE/S7ALEDT/RDENS7~S3地址輸出數(shù)據(jù)輸入MRDC/IORCS2~S0S2~S0S2~S0無效BHEA19~A16最大模式讀時序一個總線周期T1T3T2T4CLKAD15~AD0A19/S6~A16/S3BHE/S7ALEDENS7~S3地址輸出數(shù)據(jù)輸出MWTC/IOWCS2~S0S2~S0S2~S0無效BHEA19~A16AMWC/AIOWC最大模式寫時序2.680X86CPU介紹(1)80386微處理器擁有32位數(shù)據(jù)總線和32位地址總線,可直接尋址4GB物理存儲空間,具有虛擬存儲能力,虛擬存儲空間達(dá)64TB。存儲器采用分段結(jié)構(gòu)80386微處理1、80386的主要特點(2)系統(tǒng)采用流水線和指令重疊技術(shù)、虛擬存儲技術(shù)、片內(nèi)存儲器管理技術(shù)、存儲器管理分段、分頁保護(hù)技術(shù)等,系統(tǒng)實現(xiàn)了多用戶多任務(wù)操作(3)提供32位的指令,可支持8位、16位、32位的數(shù)據(jù)類型,具有8個通用的32位寄存器(4)首次在芯片內(nèi)使用Cache,以使內(nèi)存速度能更好地與運(yùn)算器的速度相匹配,從而大大提高指令的執(zhí)行速度和工作效率(5)提供32位外部總線接口,最大數(shù)據(jù)傳輸速率為32Mbps。系統(tǒng)可同高速的DRAM芯片接口,支持動態(tài)總線寬度控制,能動態(tài)地切換32位/16位數(shù)據(jù)總線(6)具有片內(nèi)集成的存儲器管理部件MMU,可支持虛擬存儲和特權(quán)保

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論