微機接口技術(shù)課件_第1頁
微機接口技術(shù)課件_第2頁
微機接口技術(shù)課件_第3頁
微機接口技術(shù)課件_第4頁
微機接口技術(shù)課件_第5頁
已閱讀5頁,還剩401頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1微機接口技術(shù)

2第一章

微機系統(tǒng)與接口技術(shù)概述1計算機發(fā)展概況2計算機基礎(chǔ)知識3微型計算機結(jié)構(gòu)與接口4微型計算機系統(tǒng)3第一代電子計算機稱為電子管計算機。第二代計算機稱為晶體管計算機,其主要邏輯元件采用的是晶體管。第三代計算機的內(nèi)存儲器采用了半導(dǎo)體存儲器,可靠性和存取速度有了明顯的改善。第四代計算機以采用大規(guī)模和超大規(guī)模集成電路為標(biāo)志。1、計算機發(fā)展概況

4微型計算機的發(fā)展第一階段(1971~1973):

典型的微型機以Intel4004和Intel4040為基礎(chǔ)。微處理器和存儲器采用PMOS工藝,工作速度很慢。微處理器的指令系統(tǒng)不完整;存儲器的容量很小,只有幾百字節(jié);沒有操作系統(tǒng),只有匯編語言。主要用于工業(yè)儀表、過程控制或計算器中。第二階段(1974~1977):

以8位微處理器為基礎(chǔ),典型的微處理器有Intel8080/8085、Zilog公司的Z80及Motorola公司的6800。微處理器采用高密度MOS(HMOS)工藝,具有較完整的指令系統(tǒng)和較強的功能。存儲器容量達64KB,配有熒光屏顯示器、鍵盤、軟盤驅(qū)動器等設(shè)備,構(gòu)成了獨立的臺式計算機。配有簡單的操作系統(tǒng)(如CP/M)和高級語言。

5第三階段(1978~1981):以16位和準(zhǔn)32位微處理器為基礎(chǔ),如Intel公司的8086、Motorola的68000和Zilog的Z8000。微處理器采用短溝道高性能NMOS工藝。在體系結(jié)構(gòu)方面吸納了傳統(tǒng)小型機甚至大型機的設(shè)計思想,如虛擬存儲和存儲保護。

第四階段(20世紀(jì)80年代):80年代初,IBM公司推出開放式的IBMPC,這是微型機發(fā)展史上的一個重要里程碑。IBMPC采用Intel80x86(當(dāng)時為8086/8088、80286、80386)微處理器和Microsoft公司的MSDOS操作系統(tǒng)并公布了IBMPC的總線設(shè)計。第五階段(20世紀(jì)90年代開始):RISC(精簡指令集計算機)技術(shù)的問世使微型機的體系結(jié)構(gòu)發(fā)生了重大變革。

精簡指令集復(fù)雜指令集(CISC)62、計算機基礎(chǔ)知識

2.1常用名詞術(shù)語位(Bit)、字節(jié)(Byte)、字(Word)和字長“字”是計算機內(nèi)部進行數(shù)據(jù)傳送處理的基本單位,通常與計算機內(nèi)部的寄存器、運算裝置或總線寬度一致。一個字所包含的二進制位數(shù)稱為字長。

通常把字定義為2個字節(jié)。72.2指令和程序一條指令由一組二進制代碼組成,對應(yīng)著一種基本操作。計算機所能執(zhí)行的全部指令,就是計算機的指令系統(tǒng)(InstructionSet)。指令通常分成操作碼和操作數(shù)兩大部分。操作碼表示計算機執(zhí)行什么操作;操作數(shù)指明參加操作的數(shù)的本身或操作數(shù)所在的地址。8在使用計算機時,必須把要解決的問題編成一條條指令。這些指令的集合就稱為程序。92.3計算機基本操作過程程序通常是順序執(zhí)行的,所以程序中的指令也是一條條順序存放的,執(zhí)行過程中由程序計數(shù)器PC(ProgramCounter)指出指所在的地址。10在開始執(zhí)行時,給PC賦以程序中第一條指令所在的地址,然后每取出一條指令(確切地說是每取出一個指令字節(jié))PC中的內(nèi)容自動加1,指向下一條指令的地址(Address),以保證指令的順序執(zhí)行。只有當(dāng)程序中遇到轉(zhuǎn)移指令、調(diào)用子程序指令或遇到中斷時,PC才把控制轉(zhuǎn)到所需要的地方去。11執(zhí)行程序的過程就是不斷地從存儲器中取出指令并執(zhí)行指令規(guī)定的操作。計算機只能識別二進制碼,所以所有指令都要以二進制表示,稱為機器碼。匯編語言程序以及所有高級語言程序都必須處理成二進制代碼之后才能在計算機上運行。123、微型計算機結(jié)構(gòu)與接口3.1微型計算機的結(jié)構(gòu)

3.2

I/O接口概述133.1微型計算機的結(jié)構(gòu)

微型計算機由硬件系統(tǒng)和軟件系統(tǒng)組成。所謂計算機的硬件系統(tǒng),通俗地說就是構(gòu)成計算機的看得見摸得著的部件,即構(gòu)成計算機的硬設(shè)備。例如:計算機的主機、顯示器、鍵盤、磁盤驅(qū)動器等。見圖1-1(a)、(b)。1-1(a)微型計算機的組成14個人計算機(PC)由主機和外部設(shè)備組成:個人計算機主機機箱電源CPU主板內(nèi)存顯示卡硬盤、軟盤驅(qū)動器光盤驅(qū)動器CD-ROM聲卡外部設(shè)備音箱鼠標(biāo)顯示器鍵盤1-1(b)個人計算機的組成15外圍設(shè)備地址總線CPU存儲器I/O接口數(shù)據(jù)總線控制總線控制I/O總線1-2

微型計算機結(jié)構(gòu)示意圖微型計算機由CPU、存儲器和輸入/輸出接口電路等組成,各個部分之間通過系統(tǒng)總線相連接。16

系統(tǒng)總線包括地址總線AB、數(shù)據(jù)總線DB和控制總線CB組成。在微機中,各功能部件之間通過系統(tǒng)總線相連,這使得各個部件的之間的相互關(guān)系變?yōu)槊嫦蛳到y(tǒng)總線的單一關(guān)系。一個部件只要滿足總線標(biāo)準(zhǔn),就可以連接到采用這種總線標(biāo)準(zhǔn)的系統(tǒng)中。17圖1-3微型計算機的功能模塊183.2

I/O接口概述

介于主機和外設(shè)之間的一種緩沖電路稱為I/O接口電路。I/O接口的功能:(1)速度的不匹配;(2)信息格式的不匹配;(3)信號電平的不匹配;(4)時序的不匹配。打印機、MODEM19微處理機接口電路外部設(shè)備Internet1Internet2圖1-4

微處理機通過接口與外設(shè)交換信息204、微型計算機系統(tǒng)4.1計算機系統(tǒng)基本組成4.2計算機系統(tǒng)軟件概述214.1計算機系統(tǒng)基本組成以微型計算機為中心,配以相應(yīng)的外圍設(shè)備、電源以及系統(tǒng)軟件就組成微型計算機系統(tǒng)。22圖1-5PⅢ微型計算機典型系統(tǒng)主板結(jié)構(gòu)圖23圖1-6典型奔騰系統(tǒng)微型計算機系統(tǒng)組成結(jié)構(gòu)示意圖241.微處理器(CPU)處理器不僅是主板的核心組件,也是整個微機系統(tǒng)的核心,通過一個符合一定標(biāo)準(zhǔn)的接口插槽與主板相連,然后再將CPU插在該插槽上。這樣便于系統(tǒng)的CPU升級,以提高整個微機系統(tǒng)的性能價格比。BIOS:BasicInput/OutputSystem252.高速緩存(Cache)

第一級高速緩存Cache(L1)位于微處理器CPU內(nèi)部,其中又分為指令Cache和數(shù)據(jù)Cache兩種,其大小一般各為16KB和32KB。第二級高速緩存Cache(L2)一般位于微處理器CPU外部,即系統(tǒng)主板上,其大小一般為256KB或512KB,有的甚至高達1MB。但隨著微電子技術(shù)的發(fā)展,第二級高速緩存Cache(L2)也被集成到微處理器CPU內(nèi)部。263.系統(tǒng)存儲器

主存儲器由動態(tài)存儲器DRAM組成,這種存儲器的特點是容量較小、存取速度相對較慢,需要進行動態(tài)刷新。這種內(nèi)存常見的有DRAM、EDODRAM、SDRAM。現(xiàn)在還出現(xiàn)了更快的內(nèi)存,如DDRRAM和RAMBUS等形式的內(nèi)存,其速度更快、性能更高。27北橋芯片負(fù)責(zé)CPU與高速的CACHE、主存儲器和AGP總線的連接。南橋芯片負(fù)責(zé)連接PCI總線和更低速的外部接口,如串行接口(USB)、并行接口,甚至ISA總線等。現(xiàn)代微型計算機系統(tǒng)中大多是用兩塊被稱為北橋芯片和南橋芯片的芯片組代替以前大量的接口芯片和中小規(guī)模集成電路。4.控制邏輯芯片組(SICL)285.系統(tǒng)輸入/輸出接口控制器系統(tǒng)輸入/輸出(I/O)接口控制器主要作用是為微型計算機系統(tǒng)中一些慢速的輸入/輸出設(shè)備與ISA總線之間提供接口,以便信息能夠在ISA/PCI總線上傳輸,這些I/O設(shè)備包括常用的鍵盤、鼠標(biāo)、串行接口設(shè)備、并行接口設(shè)備以及軟盤驅(qū)動器等。29圖1-8鍵盤插口示意圖及各引腳功能圖1-7微機系統(tǒng)的接口插座306.圖形(或視頻)接口控制器

圖形控制器的主要作用是輔助CPU進行高速圖形、視頻信息的處理和顯示。目前的微機操作系統(tǒng)都是面向圖形的,如WINDOWS等,這些接口電路的形式一般采用PCI或AGP總線接口方式。有的系統(tǒng)將這種接口集成在主板中,由主板控制邏輯芯片完成圖形接口任務(wù)。31圖1-9計算機顯示卡組成示意圖32顯示系統(tǒng)的工作原理,如圖1-10所示。顯示接口卡從主機接收顯示輸出信號,經(jīng)過處理和變換然后輸出。顯示器從VGA顯示卡的輸出端口接收紅、藍(lán)、綠三色模擬信號及行同步信號和場同步信號,并對它們進行不同的處理后送到CRT,這樣才可以在屏幕上顯示出字符和圖像。

33圖1-10VGA方式CRT顯示系統(tǒng)工作原理框圖

紅藍(lán)綠三色信號

藍(lán)

CRT

場偏轉(zhuǎn)

行偏轉(zhuǎn)

VGA

視頻處理

電路

場振蕩電路

場輸出電路

行振蕩電路

行輸出電路

開關(guān)穩(wěn)壓電源

高、中壓輸出電路

347.磁盤及其接口硬盤、軟盤都是采用磁記錄原理進行工作的。磁記錄是以磁介質(zhì)受外磁場的磁化、當(dāng)去掉外磁場后仍有介質(zhì)剩余磁化狀態(tài)這一性質(zhì)為基本原理。

磁盤機(HDD、FDD)是由介質(zhì)、讀寫磁頭、讀寫電路、馬達及伺服驅(qū)動電路等組成。35圖1-11磁盤讀寫原理示意圖36硬盤驅(qū)動器是將硬盤機構(gòu)與控制機構(gòu)的電路密封在一起構(gòu)成的,硬盤驅(qū)動器通過數(shù)據(jù)電纜線與計算機主板中的硬盤適配器相連。

硬盤適配器電路主要包括硬盤接口電路、硬盤控制器電路。其結(jié)構(gòu)如圖1-12所示。37圖1-12硬盤驅(qū)動器的基本組成示意圖38計算機軟件可分為系統(tǒng)軟件和應(yīng)用軟件。4.2計算機系統(tǒng)軟件概述由機器的設(shè)計者提供的,為了使用和管理計算機的軟件,統(tǒng)稱為系統(tǒng)軟件。用戶利用計算機以及它所提供的各種系統(tǒng)軟件,編制解決用戶各種實際問題的程序,這些就稱為應(yīng)用軟件。39軟件分類應(yīng)用軟件系統(tǒng)軟件操作系統(tǒng)Windows、DOS、UNIX編譯程序TurboC、BASIC連接程序LINK調(diào)試程序QAPLUS、WINTEST數(shù)據(jù)庫系統(tǒng)FoxPro、Oracle表格處理軟件Excel文字處理軟件WPS、Word輔助設(shè)計軟件AutoCAD實時控制軟件圖1-13計算機軟件組成示意圖401.微處理器概述1.1CPU的基本概念1.2CPU主要技術(shù)參數(shù)IA-32:IA是IntelArchitecture的簡稱,IA-32是Intel32位處理器架構(gòu)的簡稱。411.1CPU的基本概念微處理器MPU(MicroProcessingUnit),即微型化的中央處理器。早期微處理器以MPU表示,以區(qū)別于大型主機的多芯片CPU。但現(xiàn)在已經(jīng)不加區(qū)分,都用CPU表示。

中央處理器CPU的英文全稱是CentralProcessingUnit。如果把計算機比作一個人,那么CPU就是大腦。422.CPU外頻

3.前端總線(FSB)頻率4.CPU主頻5.L1和L2Cache的容量和速率位:采用二進制,代碼只有“0”和“1”。字長:CPU在單位時間內(nèi)(同一時間)能一次處理的二進制數(shù)的位數(shù)叫字長。對于不同的CPU、字長的長度是不一樣。8位的CPU一次只能處理一個宇節(jié),而32位的CPU一次就能處理4個宇節(jié)。也稱為CPU總線頻率,是由主板為CPU提供的基準(zhǔn)時鐘頻率前端總線也就是以前所說的CPU總線,也是CPU與內(nèi)存以及L2Cache(僅指Socket7主板)之間交換數(shù)據(jù)的工作時鐘CPU主頻也叫工作頻率,是CPU內(nèi)核(整數(shù)和浮點運算器)電路的實際運行頻率。L1和L2Cache的容量和工作速率對提高電腦速度起關(guān)鍵作用,尤其是L2Cache對提高運行2D圖形處理較多的商業(yè)軟件速度有顯著作用。1.2CPU主要技術(shù)參數(shù)1.位、字節(jié)和字長

432.IA-32微處理器2.18086的編程結(jié)構(gòu)2.28086的工作模式和引腳442.18086的編程結(jié)構(gòu)

1.總線接口部件(BIU)2.執(zhí)行部件(EU)3.通用寄存器4.標(biāo)志寄存器45圖2-18086的編程結(jié)構(gòu)圖461.總線接口部件(BIU)

總線接口部件由下列各部分組成:(1)4個段地址寄存器;CS——16位的代碼段寄存器;DS——16位的數(shù)據(jù)段寄存器;ES——16位的擴展段寄存器;SS——16位的堆棧段寄存器;(2)16位的指令指針寄存器IP;(3)20位的地址加法器;(4)6字節(jié)的指令隊列緩沖器。47執(zhí)行部件的功能就是負(fù)責(zé)從指令隊列取指令并執(zhí)行。從編程結(jié)構(gòu)圖可見,執(zhí)行部件由下列幾個部分組成:(1)4個通用寄存器,即AX、BX、CX、DX;(2)4個專用寄存器;(3)標(biāo)志寄存器FR;(4)算術(shù)邏輯單元ALU。2.執(zhí)行部件(EU)

48表2-1寄存器的隱含用法3.通用寄存器49圖2-2標(biāo)志寄存器結(jié)構(gòu)圖標(biāo)志寄存器(FlagRegister)共有16位,其中7位未用。標(biāo)志寄存器內(nèi)容如圖2-2所示:(1)條件標(biāo)志(2)控制標(biāo)志4.標(biāo)志寄存器502.28086的工作模式和引腳1.保護模式:所有的指令和結(jié)構(gòu)特性都是可用的,提供最高的功能和性能。對操作系統(tǒng)和新的應(yīng)用程序采用此模式。2.實地址模式:是實現(xiàn)處理器編程環(huán)境的工作模式,可切換至保護模式或系統(tǒng)管理模式;在系統(tǒng)上電或復(fù)位后,處理器所處的模式。3.系統(tǒng)管理模式:處理器保存當(dāng)前運行狀態(tài),并切換到一個獨立的地址空間;該模式主要用于自動暫停、睡眠等節(jié)電模式。518086CPU的引腳信號8086CPU采用雙列直插式的封裝形式,具有40條引腳,見圖2-5。它采用分時復(fù)用的地址/數(shù)據(jù)總線,所以有一部分引腳具有雙重功能,即在不同時鐘周期內(nèi),引腳的作用不同。圖2-58086的引腳信號(括號中為最大模式下的名稱)523.IA-32流水線結(jié)構(gòu)總線接口部件BIU執(zhí)行部件EU圖2-68086微處理器執(zhí)行過程取指i1取指i2取指i3取指i4取指i5取數(shù)取指i6等待執(zhí)行i1執(zhí)行i2執(zhí)行i3執(zhí)行i453總線接口部件BIU和執(zhí)行部件EU并不是同步工作的,兩者的動作管理遵循如下原則:每當(dāng)8086的指令隊列中有2個空字節(jié),BIU就會自動把指令取到指令隊列中。而同時EU從指令隊列取出一條指令,并用幾個時鐘周期去分析、執(zhí)行指令。當(dāng)指令隊列已滿,而且EU對BIU又無總線訪問請求時,BIU便進入空閑狀態(tài)。在執(zhí)行轉(zhuǎn)移、調(diào)用和返回指令時,指令隊列中的原有內(nèi)容被自動清除。工作原則:54IA-32結(jié)構(gòu)提高速度的措施有哪些?參見書P54,共4點。55取指令1執(zhí)行指令1取指令2執(zhí)行指令2取指令1執(zhí)行指令1取指令2執(zhí)行指令2取指令3執(zhí)行指令3t0t1t2t3t4t非流水線操作

8085流水線操作

8086在t0~t4時間間隔中,8085執(zhí)行了2條指令。在t0~t4時間間隔中,理想情況下,8086可執(zhí)行3條指令。流水線結(jié)構(gòu)56思考題若CPU的BIU取指令的時間為1us,EU執(zhí)行指令的時間為2us。若有一段3條指令的程序,采用以上8085非流水線操所和8086流水線操作分別需要多少時間?非流水線操作:(1+2)*3=9us流水線操作:1+2*3=7us57584.IA-32存儲器組織4.18086存儲器的分段結(jié)構(gòu)4.28086存儲器的邏輯地址與物理地址4.38086存儲器20位物理地址的形成598086/8088主存地址的形成 先給大家學(xué)習(xí)以下計算機科學(xué)中的量詞:

210=1024=1K 220=1024K=1M 230=1024M=1G

我們學(xué)習(xí)的8088/8086有20根地址線,可以將主存儲器編上220個內(nèi)存單元,即1M內(nèi)存,即使有多于1M的內(nèi)存,對于8088/8086來說,也是浪費?!?086/8088CPU60 現(xiàn)在有一個問題,20根地址線需要一次提供20個信號,但是我們的計算機是16位寬度,16位的CPU寬度如何由CPU提供20位的地址信號呢?16位?20位61 其實答案很簡單,一個寄存器的寬度是16位,兩個寄存器不就是32位寬度了嗎? 我們沒有用兩位寄存器并在一起來提供32位的信號,而讓一個20位的寄存器和一個16為寄存器進行加法來得到一個20位的地址信號。624.18086存儲器的分段結(jié)構(gòu)

8086CPU中有四個段寄存器:CS,DS,SS和ES,這四個段寄存器存放了CPU當(dāng)前可以尋址的四個段的基值,也即可以從這四個段寄存器規(guī)定的邏輯段中存取指令代碼和數(shù)據(jù)。一旦這四個段寄存器的內(nèi)容被設(shè)定,就規(guī)定了CPU當(dāng)前可尋址的段,如圖2-7所示。圖2-7當(dāng)前可尋址的存儲器段(堆棧段和附加段重疊)634.28086存儲器的邏輯地址與物理地址8086CPU中的每個存儲元在存儲體中的位置都可以使用實際地址和邏輯地址來表示。CPU訪問存儲器時,要形成20位的物理地址,即先找到某段,再找到該段內(nèi)的偏移量。換句話說,CPU是以物理地址訪問存儲器的,如圖2-8所示。圖2-8邏輯地址與物理地址的關(guān)系644.38086存儲器20位物理地址的形成

在存儲段劃分時,段內(nèi)地址是連續(xù)的,段與段之間是相互獨立的。每個段的起始地址稱段的基址,段基址必須是能被16整除的那些地址,即20位的段基址的低四位應(yīng)當(dāng)是0000。由于段起始地址的低四位為0,所以可用20位地址的高16位表示段的基址,存放在段基址寄存器中。段基址寄存器共四個:CS、DS、ES、SS。6566675.8086的總線時序5.1讀周期的時序

5.2寫周期的時序685.1讀周期的時序(圖2-10)

圖2-108086讀總線周期695.2寫周期的時序(圖2-11)

圖2-118086寫總線周期706.飛速發(fā)展的CPU6.1主要的新技術(shù)6.2奔騰4的時代6.3走近64位CPU711.流水線技術(shù)

2.超流水線和超標(biāo)量技術(shù)3.亂序執(zhí)行技術(shù)

4.分支預(yù)測和推測執(zhí)行技術(shù)5.指令特殊擴展技術(shù)流水線(pipeline):在CPU中由5~6個不同功能的電路單元組成一條指令處理流水線,然后將一條X86指令分成5~6步后再由這些電路單元分別執(zhí)行,這樣就能實現(xiàn)在一個CPU時鐘周期完成一條指令,因此提高CPU的運算速度。超流水線是指某些CPU內(nèi)部的流水線超過通常的5~6步以上超標(biāo)量(superscalar)是指在CPU中有一條以上的流水線亂序執(zhí)行(out-of-orderexecution)是指CPU采用了允許將多條指令不按程序規(guī)定的順序分開發(fā)送給各相應(yīng)電路單元處理的技術(shù)目的是為了使CPU內(nèi)部電路滿負(fù)荷運轉(zhuǎn)并相應(yīng)提高了CPU的運行程序的速度分支預(yù)測(branchprediction)和推測執(zhí)行(speculatlonexecution)是CPU動態(tài)執(zhí)行技術(shù)中的主要內(nèi)容,目的是為了提高CPU的運算速度對X86指令集進行指令擴展,比如:InteI公司自己的“MMX”、PentiumIII中的“SSE”和AMD公司的“3DNow!”等。6.1主要的新技術(shù)726.2奔騰4的時代

2000年下半年,Intel推出了代號Willamette的處理器,它是英特爾IA-32CPU家族中最新的成員,也是英特爾P6系列的終結(jié)者。這就是PentiumIV(P4)。P4CPU基于新的32位微結(jié)構(gòu),在許多方面超過了奔騰Ⅱ/Ⅲ等上兩代的IA-32CPU。NetBurst微架構(gòu)是Pentinum4處理器的基石。這里解釋一下處理器的架構(gòu)與微架構(gòu):處理機的架構(gòu)指的是指令集、寄存器和程序員公用的內(nèi)存駐留的數(shù)據(jù)結(jié)構(gòu),它們在處理器的發(fā)展進程中得到繼承和增強。處理機的微架構(gòu)指的是處理機架構(gòu)在硅片上的實現(xiàn)。73NetBurst微架構(gòu)特點細(xì)節(jié):超流水線技術(shù)執(zhí)行追蹤Cache快速執(zhí)行引擎REE400MHz系統(tǒng)總線先進的動態(tài)執(zhí)行流式SIMD擴充2(SSE2)74圖2-23PentiumIV處理器及搭配的RDRAM內(nèi)存條756.3走近64位CPU64位處理器針對的主要對象是目前對32位系統(tǒng)感覺受限制的用戶。一些用來設(shè)計汽車、衛(wèi)星以及一些其他的非常復(fù)雜的產(chǎn)品的MCAD軟件(機械計算機輔助設(shè)計軟件)將通過64位系統(tǒng)得到不少的性能提升。另外,超大規(guī)模的數(shù)據(jù)庫軟件也由于64位的大內(nèi)存尋址區(qū)域而獲得不少優(yōu)勢??梢娖淦髽I(yè)級應(yīng)用是相當(dāng)廣泛的。Intel的64位結(jié)構(gòu)叫做IA-64。目前,Intel同時推出了Pentium4以及Intel第一個從IA-32到IA-64架構(gòu)轉(zhuǎn)換的產(chǎn)品Itanium。76圖2-24Intel的64位CPU-Itanium77IA-64架構(gòu)的特點

1)更改現(xiàn)有工業(yè)標(biāo)準(zhǔn)體系,建立IA-64架構(gòu)后將采用并行運算方式的體系;2)單指令簡化,即每條指令執(zhí)行的功能減少,但執(zhí)行效率變高;3)由于運行指令并行化,并且采用了程序控制指令,使分支預(yù)測更加準(zhǔn)確,提高運算的利用效率;4)增加程序運行時的并行運算預(yù)測能力,使內(nèi)存中需要的數(shù)據(jù)更容易在Cache中命中;783.18086的尋址方式1.操作數(shù)的尋址方式2.轉(zhuǎn)移地址的尋址方式791.操作數(shù)的尋址方式

(1)立即尋址(2)寄存器尋址(3)直接尋址*(4)寄存器間接尋址(5)寄存器相對尋址方式(6)基址變址尋址方式(7)相對基址變址尋址方式(8)其它80(1)立即尋址

例如:MOVAX,1234H;十六進制數(shù)1234H送入AX。如圖3-1所示。81(2)寄存器尋址

操作數(shù)存放在指令規(guī)定的寄存器中,對于16位操作數(shù),寄存器可以是AX,BX,CX,DX,SI,DL,SP或BP;而對8位操作數(shù),寄存器可以是AH,AL,BH,BL,CH,CL,DH或DL。

例如:MOVAX,BX;將寄存器BX的內(nèi)容送入AX。

如圖所示。82(3)直接尋址

在IBMPC機中,把操作數(shù)的偏移地址稱為有效地址EA(EffectiveAddress)。如果指令中沒有用前綴指明操作數(shù)存放在哪一段,則默認(rèn)為使用的段寄存器為數(shù)據(jù)段寄存器DS,因此,操作數(shù)的物理地址為16×DS+EA,即為10H×DS+EA。83例如:MOVAL,DS:[2000H];將邏輯地址為DS:2000單元內(nèi)的字節(jié)送入AL。若段基址DS=4000H,則段起始物理地址為4000H左移4位,即40000H,此指令將數(shù)據(jù)段中物理地址為42000H單元的內(nèi)容56H傳至AL寄存器。如圖所示。84段超越前綴:如果要對代碼段堆棧段或附加段寄存器所指出的存儲區(qū)進行直接尋址,應(yīng)在指令中指定段超越前綴。例如,數(shù)據(jù)若放在附加段中,則應(yīng)在有效地址前加“ES:”,“:”稱為屬性修改符,計算物理地址時要用ES作基地址,而不再是默認(rèn)值DS。MOVAX,ES:[500H]85符號地址:MOVAX,AREA1MOVAX,[AREA1]86[]的用法以下幾條指令等價:MOVAX,[COUNT+BX+SI]MOVAX,200H[BX+SI]MOVAX,200H[BX]+[SI]MOVAX,COUNT[BX+SI][]的使用規(guī)則:1)立即數(shù)可以出現(xiàn)在方括號內(nèi);2)只有BX,BP,SI,DI這四個寄存器可以出現(xiàn)在[]內(nèi),可以組合出現(xiàn);3)[]有相加的含義;4)可以使用短超越前綴。87(4)寄存器間接尋址

例如:MOVAX,[BX];BX內(nèi)容為有效地址EA(偏移量)。若DS=4000H,BX=100H,此指令將物理地址40100H單元的內(nèi)容傳至AL寄存器(段基地址同樣為40000H)。如圖所示。MOVAX,[BP]88(5)寄存器相對尋址方式

例如:MOVAL,[BX+5];若DS=6000H,BX=2000H,BX的內(nèi)容加上8位位移量05H作為操作數(shù)的有效地址。傳送數(shù)據(jù)段中的一個字節(jié)到AL中。如果使用BP,則隱含地表示操作數(shù)存放在堆棧段中。如圖3-5所示。89(6)基址變址尋址方式

例如:MOVAX,[BX+SI];BX的內(nèi)容與SI的內(nèi)容之和作為操作數(shù)的有效地址。傳送數(shù)據(jù)段中的一個字。如圖3-6所示。90(7)相對基址變址尋址方式

例如:MOVAH,[BX+DI+1234H];BX的內(nèi)容加上DI的內(nèi)容再加上位移量1234H作為操作數(shù)的有效地址。如圖3-7所示。91(8)其它隱含尋址:指令中隱含有規(guī)定的尋址方式。

DAA(AL)I/O端口尋址:由指令直接提供,8位(直接端口);

由寄存器DX提供,16位(間接端口)。

INAL,63HINAL,DX一條指令可能包含多種尋址方式。922.

轉(zhuǎn)移地址的尋址方式

(1)段內(nèi)直接尋址(2)段內(nèi)間接方式(3)段間直接尋址(4)段間間接方式93(1)段內(nèi)直接尋址

段內(nèi)直接尋址方式也稱為相對尋址方式,轉(zhuǎn)移的目標(biāo)地址是當(dāng)前IP內(nèi)容和一個8位或16位的位移量之和,這個位移量是指令代碼的一部分,所以叫相對尋址。如圖3-8所示94(2)段內(nèi)間接方式

這種方式也是在段內(nèi),其轉(zhuǎn)移的目標(biāo)地址是寄存器或存儲單元的內(nèi)容,即以寄存器或存儲器單元內(nèi)容來更新IP的內(nèi)容,所以是絕對偏移量,注意和段內(nèi)直接方式的相對偏移量的區(qū)別。若目標(biāo)地址為存儲單元內(nèi)容,則該存儲單元本身可由上述與存儲器操作數(shù)有關(guān)的任何尋址方式尋址,只是它里面的內(nèi)容為新的IP值。如圖3-9所示。95(3)段間直接尋址

這種方式用于段間轉(zhuǎn)移,目標(biāo)地址的段基值(CS)和偏移地址(IP)都是指令碼的組成部分,用來更新當(dāng)前CS和IP。如圖3-10所示。96(4)段間間接方式

這種方式同樣用于段間轉(zhuǎn)移,只不過當(dāng)前CS和IP由存儲器中連續(xù)的兩個字更新,低位地址的字更新IP,高位地址的字更新CS,存放新IP和CS的存儲單元地址由前述存儲器操作數(shù)的尋址方式?jīng)Q定。見圖2-21所示。

例如:JMPDWORDPTR[INTER+BX] ;取DS段中偏移為[INTER+BX]處的雙字作為新的CS和IP。973.28086的指令系統(tǒng)1.?dāng)?shù)據(jù)傳送類(P94);2.算術(shù)運算類;3.邏輯運算與移位指令;4.字符串處理;5.控制轉(zhuǎn)移指令;6.處理器控制指令。981.?dāng)?shù)據(jù)傳送類(1)通用數(shù)據(jù)傳送指令這種指令共5條。(2)條件傳送指令(P96)(3)交換指令(P97)(4)堆棧操作指令(P99)(5)輸入輸出指令(P102)(6)擴展指令(P102)(7)目標(biāo)地指傳送指令這組指令包括三條指令。99表3-1通用數(shù)據(jù)傳送指令格式100表3-2目標(biāo)地址傳送指令格式1012.算術(shù)運算類(1)加法指令(P103)(2)減法指令(P105)(3)乘法指令(P106)(4)除法指令(P108)(5)增量減量指令(P109)(6)取補指令(P110)(7)CMP比較指令(P110)(8)十進制算術(shù)指令(P113)1023.邏輯運算與移位指令(1)邏輯運算指令(P116)(2)移位與循環(huán)移位指令(P119)表3-3邏輯運算指令格式1034.字符串處理(P128)8086/8088指令系統(tǒng)為文本處理提供了一組強有力的指令(字符串處理指令),對一系列含有字母數(shù)字代碼的字節(jié)(也稱字符串)進行處理,例如傳送、比較、查找、插入、刪除等,字符串指令為這些處理提供了很大方便。字符串指令的尋址方式只用隱含尋址,源串固定使用SI,目的串固定使用DI。1045.控制轉(zhuǎn)移指令(P124)(1)轉(zhuǎn)移指令,分為無條件轉(zhuǎn)移指令和條件轉(zhuǎn)移指令;(2)循環(huán)指令;(3)過程調(diào)用與返回指令;(4)中斷與返回指令。1053.1尋址方式1.操作數(shù)的尋址方式2.轉(zhuǎn)移地址的尋址方式1061.操作數(shù)的尋址方式

(1)立即尋址(2)寄存器尋址(3)直接尋址(4)寄存器間接尋址(5)寄存器相對尋址方式(6)基址變址尋址方式(7)相對基址變址尋址方式107(1)立即尋址

例如:MOVAX,1234H;十六進制數(shù)1234H送入AX。如圖3-11所示。108(2)寄存器尋址

操作數(shù)存放在指令規(guī)定的寄存器中,對于16位操作數(shù),寄存器可以是AX,BX,CX,DX,SI,DI,SP或BP;而對8位操作數(shù),寄存器可以是AH,AL,BH,BL,CH,CL,DH或DL。

例如:MOVAX,BX;將寄存器BX的內(nèi)容送入AX。

如圖所示。109(3)直接尋址

例如:MOVAL,DS:[2000H];將邏輯地址為DS:2000單元內(nèi)的字節(jié)送入AL。若段基址DS=4000H,則段起始物理地址為4000H左移4位,即40000H,此指令將數(shù)據(jù)段中物理地址為42000H單元的內(nèi)容56H傳至AL寄存器。如圖所示。110(4)寄存器間接尋址

例如:MOVAX,[BX];BX內(nèi)容為有效地址EA(偏移量)。若DS=4000H,BX=100H,此指令將物理地址40100H單元的內(nèi)容傳至AL寄存器(段基地址同樣為40000H)。如圖所示。111(5)寄存器相對尋址方式

例如:MOVAL,[BX+5];若DS=6000H,BX=2000H,BX的內(nèi)容加上8位位移量05H作為操作數(shù)的有效地址。傳送數(shù)據(jù)段中的一個字節(jié)到AL中。如果使用BP,則隱含地表示操作數(shù)存放在堆棧段中。如圖3-15所示。112(6)基址變址尋址方式

例如:MOVAX,[BX+SI];BX的內(nèi)容與SI的內(nèi)容之和作為操作數(shù)的有效地址。傳送數(shù)據(jù)段中的一個字。如圖3-16所示。113(7)相對基址變址尋址方式

例如:MOVAH,[BX+DI+1234H];BX的內(nèi)容加上DI的內(nèi)容再加上位移量1234H作為操作數(shù)的有效地址。如圖3-17所示。1142.轉(zhuǎn)移地址的尋址方式

(1)段內(nèi)直接尋址(2)段內(nèi)間接方式(3)段間直接尋址(4)段間間接方式115(1)段內(nèi)直接尋址

段內(nèi)直接尋址方式也稱為相對尋址方式,轉(zhuǎn)移的目標(biāo)地址是當(dāng)前IP內(nèi)容和一個8位或16位的位移量之和,這個位移量是指令代碼的一部分,所以叫相對尋址。如圖3-18所示116(2)段內(nèi)間接方式

這種方式也是在段內(nèi),其轉(zhuǎn)移的目標(biāo)地址是寄存器或存儲單元的內(nèi)容,即以寄存器或存儲器單元內(nèi)容來更新IP的內(nèi)容,所以是絕對偏移量,注意和段內(nèi)直接方式的相對偏移量的區(qū)別。若目標(biāo)地址為存儲單元內(nèi)容,則該存儲單元本身可由上述與存儲器操作數(shù)有關(guān)的任何尋址方式尋址,只是它里面的內(nèi)容為新的IP值。如圖3-19所示。117(3)段間直接尋址

這種方式用于段間轉(zhuǎn)移,目標(biāo)地址的段基值(CS)和偏移地址(IP)都是指令碼的組成部分,用來更新當(dāng)前CS和IP。如圖3-20所示。118(4)段間間接方式

這種方式同樣用于段間轉(zhuǎn)移,只不過當(dāng)前CS和IP由存儲器中連續(xù)的兩個字更新,低位地址的字更新IP,高位地址的字更新CS,存放新IP和CS的存儲單元地址由前述存儲器操作數(shù)的尋址方式?jīng)Q定。見圖3-21所示。

例如:JMPDWORDPTR[INTER+BX] ;取DS段中偏移為[INTER+BX]處的雙字作為新的CS和IP。1193.28086的指令系統(tǒng)1.?dāng)?shù)據(jù)傳送類2.算術(shù)運算類3.邏輯運算與移位指令4.字符串處理5.控制轉(zhuǎn)移指令6.處理器控制指令1201.?dāng)?shù)據(jù)傳送類(1)通用數(shù)據(jù)傳送指令;這種指令共5條,如表3-4所示。(2)輸入/輸出指令;(3)目標(biāo)地指傳送指令;這組指令包括三條指令,如表3-5所示。(4)標(biāo)志位傳送指令。121表3-4通用數(shù)據(jù)傳送指令格式122表3-5目標(biāo)地址傳送指令格式1232.算術(shù)運算類(1)加法指令;(2)減法指令;(3)乘法指令;(4)除法指令。1243.邏輯運算與移位指令(1)邏輯運算指令;(2)移位與循環(huán)移位指令。表3-6邏輯運算指令格式1254.字符串處理8086/8088指令系統(tǒng)為文本處理提供了一組強有力的指令(字符串處理指令),對一系列含有字母數(shù)字代碼的字節(jié)(也稱字符串)進行處理,例如傳送、比較、查找、插入、刪除等。字符串指令為這些處理提供了很大方便。字符串指令的尋址方式只用隱含尋址,源串固定使用SI,目的串固定使用DI。1265.控制轉(zhuǎn)移指令(1)轉(zhuǎn)移指令,分為無條件轉(zhuǎn)移指令和條件轉(zhuǎn)移指令;(2)循環(huán)指令;(3)過程調(diào)用與返回指令;(4)中斷與返回指令。1276.處理器控制指令主要包括標(biāo)志處理指令7條和其他處理器控制指令5條。詳細(xì)內(nèi)容同樣參見指令一覽表。1283.3匯編語言程序設(shè)計1.匯編語言指令2.匯編語言基本語法3.匯編語言程序結(jié)構(gòu)4.標(biāo)準(zhǔn)匯編語言程序框架1291.匯編語言指令

8086匯編語言中,有多種偽指令,包括:數(shù)據(jù)定義偽指令;結(jié)構(gòu)定義偽指令;記錄定義偽指令;段定義偽指令;程序終結(jié)偽指令;過程定義偽指令;訪問外部標(biāo)識符偽指令;宏操作偽指令。1302.匯編語言基本語法(1)ASM-86的字符集;(2)關(guān)鍵字;(3)語句;(4)表達式;(5)指令性語句中的操作數(shù)。1313.匯編語言程序結(jié)構(gòu)

匯編語言源程序是由語句序列組成的,包括:數(shù)據(jù)(程序要處理的對象);處理數(shù)據(jù)的實體;承上啟下的記錄。8086/8088微處理器系統(tǒng)的存儲結(jié)構(gòu)是分段式訪問結(jié)構(gòu),因此,8086/8088匯編語言程序必須具備:代碼段(處理數(shù)據(jù)的對象);數(shù)據(jù)段(定義加工處理對象);堆棧段。1324.標(biāo)準(zhǔn)匯編語言程序框架通常,一個源程序都有大體相同的結(jié)構(gòu)或框架,下面給出一個源程序的框架結(jié)構(gòu),該程序是在PC-DOS環(huán)境下運行的。;定義堆棧段STACK_SEG

SEGMENTPARASTACK'STACK'

··· ;定義堆棧深度與堆棧段變量STACK_SEG

ENDS;定義數(shù)據(jù)段DATA_SEG

SEGMENTPARAPUBLIC'DATA'

··· ;定義變量DATA_SEG

ENDS133;定義代碼段CODE_SEG

SEGMENTPARAPUBLIC'CODE'MAIN

PROCFAR

ASSUMECS:CODE_SEG,DS:DATA_SEG

ASSUMESS:STACK_SEGSTART:

PUSHDS

MOVAX,0

PUSHAX

MOVAX,DATA_SEG

MOVDS,AX134

··· ;主過程內(nèi)容

RETMAIN

ENDPPROC_A

PROCNEAR

··· ;子過程A內(nèi)容,A為主過程調(diào)用PROC_A

ENDP

···

;其他過程內(nèi)容CODE_SEG

ENDS

ENDSTART135

1.總線基本概念1.1什么是總線1.2采用總線技術(shù)的優(yōu)點1.3總線分類和性能指標(biāo)136定義:總線是連接計算機有關(guān)部件的一組信號線,是計算機中用來傳送信息代碼的公共通路??偩€不僅是一組傳輸線,它還包括與信息代碼傳送有關(guān)的控制邏輯。1.1什么是總線137總線出現(xiàn)的背景計算機部件要具有通用性,以適應(yīng)不同系統(tǒng)與不同用戶的需求,設(shè)計必須模塊化。計算機部件產(chǎn)品(模塊)供應(yīng)出現(xiàn)多元化。模塊之間的聯(lián)接關(guān)系要標(biāo)準(zhǔn)化,使模塊具有通用性。模塊設(shè)計必須基于一種大多數(shù)廠商認(rèn)可的模塊聯(lián)接關(guān)系,即一種總線標(biāo)準(zhǔn)。138總線規(guī)范:機械結(jié)構(gòu)規(guī)范功能結(jié)構(gòu)規(guī)范電氣規(guī)范139

總線的基本工作方式:a.通常是由發(fā)送信息的部件分時地將信息發(fā)往總線,再由總線將這些信息同時發(fā)往各個接收信息的部件。b.究竟由哪個部件接收信息,要由CPU給出的設(shè)備地址經(jīng)譯碼產(chǎn)生的控制信號來決定。1401.2

采用總線技術(shù)的優(yōu)點減少各部件之間的連接線:

使各部件之間的關(guān)系轉(zhuǎn)化為面向總線的單一關(guān)系,即設(shè)計和使用某一部件,無須考慮該部件和其他相應(yīng)部件間的復(fù)雜關(guān)系,只要滿足它和總線之間的關(guān)系即可。方便了系統(tǒng)的構(gòu)成、維護、擴充或更新:

各部件和總線采用掛接形式,增加或去掉一個部件對整個系統(tǒng)的結(jié)構(gòu)不會造成什么影響。141總線技術(shù)使計算機的設(shè)計生產(chǎn)走向標(biāo)準(zhǔn)化:有了總線標(biāo)準(zhǔn),用戶可以選用不同廠家的部件或設(shè)備組成自己所需的系統(tǒng);可以設(shè)計出符合總線標(biāo)準(zhǔn)的專用部件或設(shè)備??偩€技術(shù)還帶來了高效率:有了總線標(biāo)準(zhǔn),各個模板遵循統(tǒng)一的標(biāo)準(zhǔn),引腳定義是相同的,不用的引腳可以空著,不必為每個模板制作不同的接口。1421.3總線分類和性能指標(biāo)1.3.1總線的分類1.3.2總線的性能指標(biāo)1431.3.1總線的分類按相對于CPU與其他芯片的位置可分為片內(nèi)總線、片總線、系統(tǒng)總線和外部總線。按總線傳送信息的類別或總線的功能,可把總線分為地址總線、數(shù)據(jù)總線和控制總線。按照總線傳送信息的方向,可把總線分為單向總線和雙向總線。144微處理器內(nèi)部總線(片內(nèi)總線):連接處理器內(nèi)部各功能單元的總線。片總線(ChipBus,C-BUS):又稱元件級總線,把部件內(nèi)各種不同器件連接在一起的信號線。內(nèi)總線(InternalBus,I-BUS):即系統(tǒng)總線,用于微機各部件之間的信息傳輸。外部總線(ExternalBus,E-BUS):又稱通信總線,用于微機之間或微機與設(shè)備(如Modem)之間的通信。例如:RS232C,IEEE488,USB。上述四類總線的地位和關(guān)系見下圖。145微型計算機各級總線示意圖146現(xiàn)代微機總線機構(gòu)示意圖1471.3.2總線的性能指標(biāo)常用的量化指標(biāo)如下:

總線帶寬(最大數(shù)據(jù)傳輸速率MB/S)

總線寬度工作頻率負(fù)載能力148總線帶寬、總線寬度、總線工作頻率三者之間的關(guān)系就像高速公路上的車流量、車道數(shù)和車速的關(guān)系。總線帶寬取決于總線寬度和工作頻率,總線寬度越寬、工作頻率越高則總線帶寬越大??偩€帶寬的計算公式如下:

總線帶寬(Q)=工作頻率(f)×總線寬度(W)/N(=8),單位:Mbps(每秒兆字節(jié)).149常見總線的帶寬和傳輸率1502.總線原理2.18086的兩種組態(tài)2.2總線的控制2.3總線時序

2.4

數(shù)據(jù)傳送2.5總線驅(qū)動1512.18086的兩種組態(tài)最小組態(tài):

當(dāng)要利用8086構(gòu)成一個較小的系統(tǒng)時,即所連的存儲器容量不大、芯片不多,所要連的I/O接口也不多,系統(tǒng)的地址總線可由CPU的AD0~AD15、A16~A19通過地址鎖存器(8282,373,244)供給;數(shù)據(jù)總線可以直接由AD0~AD15供給,也可以通過發(fā)送/接收接口芯片8286供給(增大總線的驅(qū)動能力);系統(tǒng)的控制總線直接由CPU的控制線供給。152最大組態(tài):若要構(gòu)成一個較大的系統(tǒng),要求由較強的驅(qū)動能力,此時,8086要通過一組總線控制器8288來形成各種總線周期,控制信號由8288供給。153154

局部總線和系統(tǒng)總線間的邏輯電路稱為總線控制邏輯。

在PC/XT系統(tǒng)中,總線控制邏輯由地址鎖存器、數(shù)據(jù)收發(fā)器和總線控制器組成。在8088系統(tǒng)中,由于有部分地址線和其他信號線復(fù)用,在執(zhí)行存儲器讀寫和I/O讀寫時,要求地址在總線周期中一直保持有效,因此在地址信息有效時,必須由鎖存器對地址信息鎖存。數(shù)據(jù)收發(fā)器用于對數(shù)據(jù)總線的狀態(tài)和方向進行控制。155

當(dāng)8088工作在最大方式時,8088不直接輸出存儲器讀寫命令和I/O讀寫命令,而只輸出表示當(dāng)前所執(zhí)行的總線周期類型的狀態(tài)信息。

因此總線控制邏輯中還包括總線控制器8288,8288根據(jù)8088輸出的指出操作類型的狀態(tài)信息產(chǎn)生存儲器讀寫信號、I/O讀寫信號及其他有關(guān)控制信號。1562.2總線的控制

總線的控制貫穿在從總線主部件申請使用總線到數(shù)據(jù)傳送完畢的整個過程,分為以下幾個步驟

(主控Master和從屬Slave):申請階段:總線請求、總線仲裁;尋址階段:主控模塊發(fā)出從屬模塊地址和有關(guān)命令;傳送階段:傳送數(shù)據(jù)、檢錯和出錯處理;結(jié)束階段:主控模塊讓出總線??偩€控制線路主要包括:總線仲裁邏輯、驅(qū)動器和中斷邏輯等。1572.3總線時序1.時序的基本概念8088執(zhí)行一條指令所需的時間稱之為指令周期。一個指令周期包括若干(至少一個)機器周期。機器周期中8088與存儲器或I/O接口交換一個字節(jié)數(shù)據(jù)所用的時間,也稱為總線周期。不同的指令所需機器周期數(shù)各有差異。一個總線周期由若干時鐘周期(又稱T周期)組成。時鐘周期是計算機定時的基本時間單位。

PC/XT的時鐘頻率是4.77MHz。158CPU和總線控制邏輯中所有的信號都是在時鐘信號作用下,按一定時序工作的。在一個總線周期中,在某一時鐘時,一些信號有效;在另一時鐘時,另外一些信號有效。

8088通過總線對存儲器或I/O接口進行一次訪問所需的時間稱為總線周期。

一個總線周期一般包括4個時鐘周期。1592.8086的典型時序(1)存儲器讀周期和寫周期(2)I/O讀和I/O寫周期(3)中斷響應(yīng)周期(4)空閑周期160存儲器讀周期時序161I/O讀和I/O寫周期時序162中斷響應(yīng)時序163T1T2T3TWT4T1T2T3T4T1T1T1T2T3TWTWT4用于等待存儲器或I/O接口響應(yīng)的等待狀態(tài)總線周期間的等待狀態(tài)164

2.4數(shù)據(jù)傳輸總線數(shù)據(jù)傳輸?shù)姆绞剑和椒绞剑河孟到y(tǒng)時鐘信號作為控制數(shù)據(jù)傳輸?shù)臅r間標(biāo)準(zhǔn)。異步方式:采用“應(yīng)答式”傳輸技術(shù),用“REQ”和“ACK”信號來協(xié)調(diào)傳輸過程。半同步方式:用系統(tǒng)時鐘信號來定時,但根據(jù)信號線的狀態(tài)判斷傳輸過程狀態(tài),使傳輸操作與時鐘同步。165同步方式數(shù)據(jù)傳輸時序圖1661672.5總線驅(qū)動

總線驅(qū)動除考慮信號線外,電源的驅(qū)動能力有時也是考慮的重要方面,特別是現(xiàn)在的一些外設(shè)總線(如USB總線等),設(shè)備的電源完全從總線獲得,更應(yīng)該考慮這個問題。168驅(qū)動示意圖驅(qū)動電路共陰極LEDP0(P1)VCC169…RAMRAMRAMA0LS244CPU驅(qū)動示意圖170

3.微機系統(tǒng)總線標(biāo)準(zhǔn)3.1系統(tǒng)總線標(biāo)準(zhǔn)3.2常見系統(tǒng)總線標(biāo)準(zhǔn)3.3其他總線171系統(tǒng)總線通常為50~100根信號線,這些信號線可分為五個主要類型:數(shù)據(jù)線:決定數(shù)據(jù)寬度。地址線:決定直接尋址范圍??刂凭€:包括控制、時序和中斷線,決定總線功能和適應(yīng)性的好壞。電源線和地線:決定電源及地線的種類和用法。備用線:留給廠家或用戶自己定義。

3.1

系統(tǒng)總線標(biāo)準(zhǔn)172標(biāo)準(zhǔn)總線與總線標(biāo)準(zhǔn) 為了便于部件或系統(tǒng)間的互連,或不同廠家產(chǎn)品的互換與兼容,必須采用標(biāo)準(zhǔn)總線。往往是某個公司的產(chǎn)品出了名,它的總線規(guī)范被廣泛接受,然后被ISO(InternationalStandardi-zationOrganization)或IEEE(InstituteforElec-tricalandElectronicEngineers)這樣的組織采納、修改、公布,成為國際標(biāo)準(zhǔn)。173IBM62線總線(IBM-PC/XT總線);ISA總線(IndustrialstandardArchitecture),

又稱IBM-PC/AT總線;EISA總線(ExtendedISA);PCI總線(PeripheralComponentInterconnect).比較有名的總線標(biāo)準(zhǔn)174

3.2常見系統(tǒng)總線標(biāo)準(zhǔn)3.2.1PC/XT、ISA(PC/AT)總線3.2.2EISA總線3.2.3PCI總線1753.2.1PC/XT、ISA(PC/AT)總線PC/XT總線

PC/XT總線有62個引腳,支持8位雙向數(shù)據(jù)傳輸和20位尋址空間,有8個接地和電源引腳、25個控制信號引腳、1個保留引腳。總線底板上有5個系統(tǒng)插槽,用于I/O設(shè)備與PC機連接。該總線的特點是把CPU視為總線的惟一主控設(shè)備(master),其余外圍設(shè)備均為從屬設(shè)備(slave)。176PC/XT總線技術(shù)的計算機結(jié)構(gòu)

PC和PC/XT總線的微機系統(tǒng)結(jié)構(gòu)示意圖177ISA總線IBM公司在PC/XT總線基礎(chǔ)上增加36個引腳,形成了AT總線。即從1982年以后,逐步確立的IBM公司工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu),簡稱為ISA(IndustryStandardArchitecture)總線,有時也稱為PC/AT總線。ISA總線插槽178ISA總線插槽示意圖:62芯8位基本ISA插槽36芯16位擴充ISA插槽179ISA總線IBMPC/XT總線(8位數(shù)據(jù)寬度)和IBMPC/AT總線(16位數(shù)據(jù)寬度)的總稱-ISA總線(工業(yè)標(biāo)準(zhǔn)總線)。機械規(guī)范(略)兩個插口:D18……D1C18……C1B31……..B1A31…….A1(標(biāo)在印刷電路板上)180ISA總線的信號說明前62引腳(用于插入與XT兼容的8位擴展卡),與XT兼容。后36引腳。利用前62引腳和后36引腳,可插入16位擴展卡。181ISA總線引線示意圖總線基本信號BACKOSCRESET總線訪問信號SA19~SA0

BALEAENSMEMR#SMEMW#IOR#IOW#總線控制信號總線訪問信號LA23~LA17SBHE#MEMR#MEME#DACK3#~DACK1#

T/C總線控制信號DACK7#~DACK5#DACK0#MASTER總線訪問信號SD7~SD0I/OCHRDYI/OCHCK#NOWS#IRQ7~IRQ3DRQ3~DRQ1SD15~SD8MEMCS16#IOCS16#IRQ15、IRQ14、DRQ12~DRQ9DRQ7~DRQ5DRQ0總線控制信號總線訪問信號總線控制信號182PC/ATISA總線的微機系統(tǒng)結(jié)構(gòu)80486PCAT/ISA總線系統(tǒng)結(jié)構(gòu)1833.2.2EISA總線EISA總線為了打破IBM的壟斷,1988年9月,Compaq,AST,Epson,HP,Olivetti,NEC等9家公司聯(lián)合起來,推出了一種兼容性更優(yōu)越的總線,即EISA總線。184EISA總線的微機系統(tǒng)結(jié)構(gòu)EISA總線微機系統(tǒng)結(jié)構(gòu)圖185XT、ISA、EISA總線擴展槽示意圖186PCI(PeripheralComponentInterconnect)總線,由Intel首先提出。PCI總線的系統(tǒng)結(jié)構(gòu):CPU存儲控制器存儲器PCI橋標(biāo)準(zhǔn)總線橋設(shè)備標(biāo)準(zhǔn)總線ISA,EISA設(shè)備設(shè)備設(shè)備PCI總線3.2.3PCI總線187PCI橋(“北橋”):實現(xiàn)PCI總線所需的全部控制。標(biāo)準(zhǔn)總線橋(“南橋”):將PCI總線轉(zhuǎn)換為標(biāo)準(zhǔn)總線ISA,EISA。橋芯片的作用:起到信號緩沖,電平轉(zhuǎn)換和控制協(xié)議轉(zhuǎn)換的作用。188PCI局部總線的特點

線性突發(fā)傳輸存取延誤極小總線主控及同步操作獨立于CPU的結(jié)構(gòu)低成本、高效益兼容性預(yù)留發(fā)展空間189PCI總線插槽190191192PCI總線的微機系統(tǒng)結(jié)構(gòu)典型PCI局部總線的PCI/ISA系統(tǒng)結(jié)構(gòu)圖193PCI總線連接圖1943.3其他總線3.3.1RS-2323.3.2USB3.3.3EIDE、SCSI1953.3.1RS-232RS-232串行接口雖然現(xiàn)在有一些高速串行總線標(biāo)準(zhǔn),但是RS-232依然是現(xiàn)代微機的標(biāo)準(zhǔn)串行口,一般提供兩個插座,MS-DOS規(guī)定其設(shè)備名為COM1、COM2,現(xiàn)在仍沿用這些名稱。也有主板只提供一個插座的情況。1963.3.2USBUSB總線

USB(UniversalSerialBus)稱為通用串行總線,是由Compaq、DEC、IBM、Intel、Microsoft、

NEC和NT(北方電訊)七家公司推出的新一代接口標(biāo)準(zhǔn)總線。1973.3.3EIDE、SCSI

EIDE接口作為接口,包括了硬件和軟件兩部分:接口設(shè)備是硬件,接口信號規(guī)范標(biāo)準(zhǔn)是軟件。基本的硬盤接口標(biāo)準(zhǔn)有四種,即ST506,IDE,ESDI,SCSI。SCSI接口SCSI的原文是SmallComputerSystem

Interface,即小型計算機系統(tǒng)接口。SCSI也是系統(tǒng)級接口,可與各種采用SCSI接口標(biāo)準(zhǔn)的外部設(shè)備相連,如硬盤驅(qū)動器、掃描儀、光盤、打印機和磁帶驅(qū)動器等。198EIDE接口

與IDE相比,EIDE有以下幾個方面的特點:支持大容量硬盤,最大容量可達8.4GB,通過BIOS中對INT13H中斷的處理,可支持超過100GB的容量。

EIDE標(biāo)準(zhǔn)支持除硬盤以外的其他外設(shè)??蛇B接更多的外設(shè),最多可連接四臺EIDE設(shè)備。

EIDE具有更高的數(shù)據(jù)傳輸速率。為了支持大容量硬盤,EIDE支持三種硬盤工作模式:NORMAL,LBA和LARGE模式。199EIDE現(xiàn)在最常見的PC機上的硬盤、CD-ROM接口;支持的速率越來越快;網(wǎng)絡(luò)資源:/c/2001-10-09/6270.html200SCSI接口標(biāo)準(zhǔn)的主要特性

SCSI是系統(tǒng)級接口,可與各種采用SCSI接口標(biāo)準(zhǔn)的外部設(shè)備相連,如硬盤驅(qū)動器、掃描儀、光盤、打印機、磁帶驅(qū)動器、通信設(shè)備等;SCSI是一個多任務(wù)接口,具有總線仲裁功能;SCSI可以按同步方式和異步方式傳輸數(shù)據(jù);SCSI可分為單端傳送方式和差分傳送方式;SCSI總線上的設(shè)備沒有主從之分,相互平等。201SCSISmallComputerSystemInterface;計算機與外存儲器等外設(shè)的連接接口(較多的是應(yīng)用于服務(wù)器硬盤接口);有啟動設(shè)備和目標(biāo)設(shè)備之分,通過高級命令進行通信,兼容性好,是一種智能接口;網(wǎng)絡(luò)資源:/cpjs/scsi.html/tm/010111/010111_13301(1).html/hardwarecentral/tutorials/36/1/202為什么需要I/O接口?各種外設(shè)的操作方法不同,由CPU統(tǒng)一控制不切合實際。外設(shè)的數(shù)據(jù)傳輸速率比存儲器和CPU慢,使得高速總線不能直接與外設(shè)相連。外設(shè)所使用的數(shù)據(jù)格式、時序等不一致。1.I/O接口的基本概念計算機的輸入輸出是通過I/O接口來實現(xiàn)的。203I/O模塊外部設(shè)備204I/O模塊的一般結(jié)構(gòu)I/O

邏輯數(shù)據(jù)寄存器狀態(tài)/控制寄存器外部設(shè)備界面接口外部設(shè)備界面接口…...系統(tǒng)接口外設(shè)接口數(shù)據(jù)線地址線控制線數(shù)據(jù)狀態(tài)控制數(shù)據(jù)狀態(tài)控制205接口與主機、外設(shè)間的連接系統(tǒng)接口接口設(shè)備接口主機地址信息—————→外設(shè)識別設(shè)備控制器外設(shè)數(shù)據(jù)(并)←————→數(shù)據(jù)/命令/狀態(tài)數(shù)據(jù)(并/串)←———→控制聯(lián)絡(luò)信息←————→控制電路控制聯(lián)絡(luò)←———→206I/O接口的基本功能(1)實現(xiàn)主機和外圍設(shè)備之間的數(shù)據(jù)傳送控制.其中包括同步控制,設(shè)備選擇和中斷控制等.DMA還具有直接訪問存儲器功能,并給出存儲器地址.(2)實現(xiàn)主機同外圍設(shè)備之間的數(shù)據(jù)緩沖.

在數(shù)據(jù)傳送過程中,先將數(shù)據(jù)送入數(shù)據(jù)緩沖寄存器,然后再送到目的設(shè)備(輸出)或主機(輸入).(3)接受主機的命令,提供設(shè)備接口的狀態(tài),按照主機的命令控制設(shè)備.(4)設(shè)置信號電平、信息轉(zhuǎn)換與提供地址譯碼電路.207I/O接口類型⑴按照數(shù)據(jù)傳送的寬度可分為并行接口和串行接口.并行接口中,設(shè)備和接口是將一個字節(jié)(或字)的所有位同時傳送.串行接口中,設(shè)備和接口間的數(shù)據(jù)是一位一位串行傳送的,而接口和主機之間是按字節(jié)或字并行傳送.接口要完成數(shù)據(jù)格式的串—并變換.⑵按照數(shù)據(jù)傳送的控制方式可分成程序控制輸入輸出接口、程序中斷輸入輸出接口和直接存儲器存取(DMA)接口等。208I/O設(shè)備的編址為了CPU便于對I/O設(shè)備進行尋址和選擇,必須給眾多的I/O設(shè)備進行編址,也就是給每一臺設(shè)備規(guī)定一些地址碼。2.I/O設(shè)備的編址方式209有兩種尋址方法

⑴專設(shè)I/O指令.例指令I(lǐng)N完成輸入,指令OUT完成輸出操作.其地址碼指出I/O設(shè)備的設(shè)備代碼.這是I/O空間獨立于存儲器空間的情況,即設(shè)備碼的編碼和存儲器的存儲單元的編碼是平行存在的.⑵利用訪問存儲器指令完成I/O功能.

使用這種方法時,從主存的地址空間中分出一部分地址碼作為I/O的設(shè)備代碼,當(dāng)訪問到這些地址時,表示被訪的不是主存儲器,而是I/O設(shè)備寄存器(例如,設(shè)備的數(shù)據(jù)緩沖器或設(shè)備的狀態(tài)寄存器).這時I/O空間和存儲器空間是合在一起的,即I/O設(shè)備和存儲單元是統(tǒng)一編址的.210輸入輸出設(shè)備占用地址數(shù)地址碼(16進制)硬盤控制器16320~32FH軟盤控制器83F0~3F7H單色顯示器/并行打印機163B0~3BFH彩色圖形顯示器163D0~3DFH異步通信控制器83F8~3FFH211圖6-4212存儲器對應(yīng)輸入輸出方式把一個外設(shè)端口作為存儲器的一個單元來對待,故每個外設(shè)端口占有存儲器的一個地址。其優(yōu)點是:CPU對外設(shè)的操作可使用全部的存儲器操作指令;不需要專門的輸出輸出指令及控制信號。缺點是:外設(shè)占用了內(nèi)存單元,使內(nèi)存容量減少。213端口尋址的輸入輸出方式外設(shè)端口所在空間與存儲器空間各自獨立。特點:CPU有專門的I/O指令,用地址來區(qū)分不同的外設(shè);一個外設(shè)往往有多個端口;在硬件上,必須用控制線來區(qū)分是尋址內(nèi)存還是外設(shè)。2143.8086的端口訪問

8086/8088采用IN和OUT指令訪問端口。215輸入/輸出指令I(lǐng)N輸入指令直接端口尋址方式格式:INAL(或AX),PORT 操作:(AL字節(jié)或AX字)

(PORT)例取端口61H的內(nèi)容.INAL,61H ;取數(shù)據(jù)MOVBL,AL ;放入BL中216間接端口尋址方式格式:INAL(或AX),DX 操作:(AL字節(jié)或AX字)

((DX))例取異步串行接口(COM1)的端口3F8H的內(nèi)容.MOVDX,3F8H ;取地址INAL,DX ;取數(shù)據(jù)MOVBL,AL ;放入BL中217OUT輸出指令直接端口尋址方式格式:OUTPORT,AL(或AX)

操作:(PORT)

(AL字節(jié)或AX字)例將寄存器BL的數(shù)據(jù)放入端口61H中.MOVAL,BL ;取數(shù)據(jù)MOV61H,AL ;放入61H中218間接端口尋址方式格式:OUTDX,AL(或AX)

操作:((DX))

(AL字節(jié)或AX字)例將寄存器BL的數(shù)據(jù)放入異步串行接口(COM1)的端口3F8H中.MOVDX,3F8H ;取地址MOVAL,BL ;取數(shù)據(jù)OUTDX,AL ;放入BL中219I/O指令的使用規(guī)則I/O端口與CPU之間的數(shù)據(jù)通信都是通過這兩個指令實現(xiàn)的。I/O端口使用16位二進制編址,端口地址從0000H到FFFFH。前256個端口(0000H-00FFH)可以使用直接端口尋址和

溫馨提示

  • 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

提交評論