




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、微型計算機原理及應用5.1 8086的引腳功能5.2 8086處理器時序5.3 系統總線第 5 章 處理器總線時序和系統總線 2 5.1 8086的引腳功能8086微處理器是一個雙列直插式、40個引腳的器件,它的引腳功能與系統的組態有關。1.8086 CPU的兩種組態當8086 CPU與存儲器和外設構成一個計算機的硬件系統時,根據所連的存儲器和外設的規模,8086可以有兩種不同的組態。目前常用的是最大組態。要求有較強的驅動能力。此時8086要通過一組總線控制器8288來形成各種總線周期,控制信號由8288供給,如圖5-1所示。3最小組態用8086微處理器構成一個較小系統,即所連的存儲器容量不大
2、,I/O端口也不多,此時系統的控制總線由8086直接提供.最大組態用8086構成一個較大系統時,系統的控制信號不能由CPU直接提供,而必須由總線控制器控制產生。CPU僅向總線控制器8288提供狀態信號S2 、S1、S0,而由8288產生所有總線控制信號。用8086微處理器構成系統時,有兩種不同的組態:45當8086處在最大狀態時的腳24腳31的含義為: S2、S1、S0(輸出,三態)這些狀態線的功能如表5-1所示。這些信號由8288總線控制器用以產生有關存儲器訪問,或IO訪問的總線周期和所需要的控制信號。在時鐘周期T4狀態期間, S2、Sl、S0的任何變化,指示一個總線周期的開始;而它們在T3
3、或Tw期間返回到無源狀態(111),則表示一個總線周期的結束。當CPU處在DMA響應狀態時,這些線浮空。RQ/GT0,RQGT1(輸入輸出)這些請求允許(RequestGrant)腳,是由外部的總線主設備請求總線并促使CPU在當前總線周期結束后讓出總線用的。6每一個腳是雙向的,0比l有更高的優先權。這些線的內部有一個上拉電阻,所以允許這些引腳不連接。請求和允許的順序如下: 由其它的總線主設備,輸送一個寬度為一個時鐘周期的脈沖給8086,表示總線請求,相當于HOLD信號。 CPU在當前總線周期的T4或下一個總線周期的T1狀態,輸出一個寬度為一個時鐘周期的脈沖給請求總線的設備,作為總線響應信號(相
4、當于HLDA信號),從下一個時鐘周期開始,CPU釋放總線。 當外設的DMA傳送結束時,總線請求主設備輸出一個寬度為一個時鐘周期的脈沖給CPU,表示總線請求的結束。于是CPU在下一個時鐘周期開始又控制總線。每一次總線主設備的改變,都需要這樣的三個脈沖,脈沖為低電平有效。在兩次總線請求之間,至少要有一個空時鐘周期。7LOCK(輸出,三態)低電平有效,當其有效時,別的總線主設備不能獲得對系統總線的控制。LOCK信號由前綴指令“LOCK”使其有效,且在下一個指令完成以前保持有效。當CPU處在DMA響應狀態時,此線浮空。QS1、QS0(輸出)QS1和QS0提供一種狀態(Queue Status)允許外部
5、追蹤8086內部的指令隊列,如表5-2所示。隊列狀態在CLK周期期間是有效的,在這以后,隊列的操作已完成。BHE/ST(輸出)在總線周期的T1狀態,在bhe/S7引腳輸出信號,表示高8位數據線AD15AD0上的數據有效;在T2、T3、T4、及Tw狀態,BHE/S7引腳輸出狀態信號S7。85.1.2 8086的引線940引腳雙排直插式8086指令隊列長度為6個字節,8088為4個。8086要在指令隊列中至少出現2個空閑字節時才預取后續指令。引腳上傳送的數據信號引腳完成CPU與外部硬件組件數據及信號的傳送與交換與地址總線連接,傳送地址信息與數據總線連接,傳送數據信息與控制總線連接,傳送控制和狀態信
6、號其他信號:電源、接地、時鐘等10數據與低8位地址分時復用狀態與高4位地址分時復用最小(最大)組態下的控制信號8088 CPU引線的排列 與組態無關的引線電源和定時線控制工作在什么組態8086CPU的引線信號:1.地址和數據線2.控制和狀態線3.電源和定時線118086CPU的引線信號:區分信號傳送的方式及特征通過引腳,CPU與外界進行信息交流雙向傳送與單向傳送(如地址信號是單向的)雙態信號傳送與三態信號傳送(數據引腳是三態的)一應一答信號(中斷請求與中斷響應兩個引腳)引腳采用分時復用技術,一條引腳在不同時間傳送不同信號,解決引腳不夠的問題復用傳送與單一傳送(低16位的地址引腳與16位數據引腳
7、為復用)128086CPU引線信號:區分單一引腳信號和組合信號CPU及其他組件之間傳送著大量的控制和狀態信號,他們決定著將要進行的操作的不同和類型單一引腳表示一個獨立的控制和狀態信號若干個引腳以“真值表”方式,表示若干個控制和狀態信號138086 CPU引腳8086 CPU可以在兩種模式下工作,即最大模式和最小模式。當CPU處于不同工作模式時,其部分引腳的功能是不同的。(1)兩種工作方式功能相同的引腳(2)工作于最小模式時使用的引腳(3)工作于最大模式時使用的引腳 14 AD15 AD0(39腳、2腳16腳):地址/數據總線,雙向,三態。是采用分時工作方式傳送地址或數據的復用引腳。根據不同時鐘
8、周期的要求,決定當前是傳送要訪問的存儲單元或I/O端口的低16位地址,還是傳送16位數據,或是處于高阻狀態。A19/S6A16/S3(35腳38腳):地址/狀態總線,輸出,三態。是采用分時工作方式傳送地址或狀態的復用引腳,其中A19A16為20位地址總線的高4位地址,S6S3是狀態信號。(1)兩種工作方式功能相同的引腳15S6:指示8086當前是否與總線相連,當S6=0表示8086當前與總線相連。S5:表明中斷允許標志當前的設置。S5=0,表示CPU中斷是關閉的,禁止一切可屏蔽中斷的中斷請求;S5=1表示CPU中斷是開放的,允許一切可屏蔽中斷的中斷申請。S4和S3:組合起來指出當前使用的段寄存
9、器的情況。16A19S6、A18S5、A17S4、A16S3(輸出,三態)這些引線也是多路開關的輸出。在存儲器操作的總線周期的T1狀態時,這些線上是最高四位地址(也需要外部鎖存)。在IO操作時,這些地址不用,故在T1狀態時全為低電平。在存儲器和IO操作時,這些線又可以用來作為狀態信息(在T2、T3、TW狀態時)。S6始終為低;S5是標志寄存器中中斷允許標志的狀態位,它在每一個時鐘周期開始時被修改;S4和S3用以指示是哪一個段寄存器正在被使用。在DMA方式時,這些線浮空。 17BHE/S7(34腳):高8位數據總線允許/狀態信號,輸出,三態。高8位數據總線允許信號,當低電平有效時,表明在高8位數
10、據總線D15 D8上傳送1個字節的數據;S7為設備的狀態信號。 RD( 32腳):讀信號,輸出,三態,低電平有效。當信號為低電平時,表示CPU正在進行讀存儲器或讀I/O端口的操作。在DMA方式時,浮空。READY(22腳):準備就緒信號,輸入,高電平有效。當READY=1時,表示CPU訪問的存儲器或I/O端口已準備好傳送數據。若CPU在總線周期T3狀態檢測到READY信號為低電平,表示存儲器或I/O設備尚未準備就緒,CPU自動插入一個或多個等待狀態TW,直到READY信號變為高電平有效為止。在此TW周期結束以后,進入T4周期,完成數據傳送。 18奇地址存儲體與系統高8位數據總線相連,偶地址存儲
11、體與系統低8位數據總線相連讀/寫偶地址體時,數據從低8位數據總線上傳送讀/寫奇地址體時,數據從高8位數據總線上傳送特別提示:關注BHE、A0和SEL信號8086存儲器的分體結構19讀/寫一個字節數據: 如果BHE=1,A0=0,表示要讀/寫偶地址存儲體,發送偶地址;DB8 - DB15上的數據被忽略,數據從 低8位數據總線上傳送 如果BHE=0,A0=1,表示要讀/寫奇地址存儲體;發送奇地址; DB0 - DB7上的數據被忽略,數據從 高8位數據總線上傳送讀/寫偶地址字節 讀/寫奇地址字節 8086存儲器的分體結構20INTR(18腳):可屏蔽中斷請求信號,輸入,電平觸發,高電平有效。當INT
12、R=1時,表示外設向CPU發出中斷請求,CPU在當前指令周期的最后一個T狀態去采樣該信號,若此時IF=1,則CPU響應中斷,停止執行原指令序列,轉去執行中斷服務程序。 TEST(23腳):測試信號,輸入,低電平有效。當CPU執行WAIT指令時,每隔5個時鐘周期對此引腳進行一次測試,若為高電平,CPU繼續處于等待狀態,直到檢測到為低電平。21RESET(21腳):復位信號,輸入,高電平有效。RESET信號至少要保持4個時鐘周期。CPU接到RESET信號后,停止進行操作,并將標志寄存器、IP、DS、SS、ES及指令隊列清零,將CS設置為FFFFH。當復位信號為低電平時,CPU從FFFF0H開始執行
13、程序。CS=FFFFH,CS*10H+IP=FFFF0H22NMI(17腳):非屏蔽中斷請求信號,輸入,高電平有效。當NMI引腳上有一個上升沿有效的觸發信號時,表明CPU內部或I/O設備提出了非屏蔽的中斷請求,CPU會在結束當前所執行的指令后,立即響應中斷請求。CLK(19腳):主時鐘信號,輸入。8086要求時鐘信號的占空比為33%,即1/3周期為高電平,2/3周期為低電平。8086的時鐘頻率要求為5MHz,8086-1的時鐘頻率為10MHz,8086-2的時鐘頻率為8MHz。不同型號的芯片使用的時鐘頻率不同。23VCC(40腳):電源輸入引腳。8086 CPU采用單一5V電源供電。 GND(
14、1、20腳):接地引腳。 MN/ MX (33腳):最小/最大模式輸入控制信號。引腳用來設置8086 CPU的工作模式。當為高電平(接5V)時,CPU工作在最小模式;當為低電平(接地)時,CPU工作在最大模式。24(2)工作于最小模式時使用的引腳當MN/ MX引腳接高電平時,CPU工作于最小模式。此時,引腳2431的含義及其功能如下所示。M/IO(28腳):存儲器或I/O端口訪問信號,三態輸出。M/IO=1時,表示CPU當前正在訪問存儲器;M/IO=0時,表示CPU當前正在訪問I/O端口。WR(29腳):寫信號,三態輸出,低電平有效。WR=0時,表示當前CPU正在對存儲器或I/O端口進行寫操作
15、。25INTA(24腳):CPU輸出的中斷響應信號,輸出,低電平有效。為低電平時,表示CPU已經響應外設的中斷請求,即將執行中斷服務程序。 ALE(25腳):地址鎖存允許信號,輸出,高電平有效。用來做地址鎖存器8282的片選信號,使由AD15AD0分時發出的地址信息和數據信息分開。26DT/R(27腳):數據發送/接收信號,輸出,三態。DT/R信號用來控制數據傳送的方向。DT/R=1時,CPU發送數據到存儲器或I/O端口;DT/R=0時,CPU接收來自存儲器或I/O端口的數據。 用于 控制 總線收發器8286/74LS245的傳送方向。DEN(26腳):為數據傳送允許信號,表示CPU已經準備好
16、接收或發送數據 ,輸出,三態,低電平有效。信號用作總線收發器的選通控制信號。當為低電平時,表明CPU進行數據的讀/寫操作。 常用作 數據總線 驅動器 的片選 信號。27HOLD(31腳):總線保持請求信號,輸入,高電平有效。在DMA數據傳送方式中,由總線控制器8237A發出一個高電平有效的總線請求信號,通過HOLD引腳輸入到CPU,請求CPU讓出總線控制權。 HLDA(30腳):總線保持響應信號,輸出,高電平有效。HLDA是與HOLD配合使用的聯絡信號。在HLDA有效期間,HLDA引腳輸出一個高電平有效的響應信號,同時總線將處于浮空狀態,CPU讓出對總線的控制權,將其交付給申請使用總線的823
17、7A控制器使用,總線使用完后,當CPU檢測到HOLD信號變為低電平,CPU又重新獲得對總線的控制權,使HALD變低電平。28(2)工作于最小模式時使用的引腳8086/8088 CPU工作在最小模式時,若訪問存儲器,需用到以下信號:M/IO 、ALE、 DT/ R、DEN 、READY、BHE 、WR 、RD 、AD0AD15、A19/S6A16/S3。若訪問外設,需用到以下信號:M/ 、ALE、 DT/R 、DEN 、READY、WR 、RD 、AD0AD15。當HOLD有效并得到響應時,8086/8088 CPU的所有具有三態的輸出線將處于浮空狀態,即被置成高阻,8086/8088 CPU放
18、棄對總線的控制權。這些具有三態的輸出線包括地址/數據總線和控制總線中的大部分如M/ IO、DT/ R、DEN 、WR 、RD 、INTA 等。(3)工作于最大模式時使用的引腳 S2、S1、S0(28腳26腳):總線周期狀態信號,三態,輸出,低電平有效。 它們表明當前總線周期所進行的操作類型。這3個狀態信號的編碼和含義如表所示。輸出到8288。8288譯碼后 輸出系統總線所需的各種控制信號。3061RQ/GT1、RQ/GT0(30、31腳):REQUEST/GRANT總線請求信號(輸入)/總線請求允許信號(輸出),雙向,低電平有效。這兩個信號端可供CPU以外的2個處理器用來發出使用總線的請求信號
19、和接收CPU對總線請求信號的回答信號。這兩個應答信號都是雙向的。 RQ/GT0 的優先級比RQ/GT1的高。LOCK(29腳):總線封鎖信號,三態輸出,低電平有效。有效時,表示CPU不允許其他總線主控部件占用總線。信號是由指令“LOCK”使其有效,并維持到下一條指令執行完畢為止。 31QS1, QS0(24腳、25腳):指令隊列狀態信號,輸出。QS1和QS0信號的組合可以指示總線接口部件BIU中指令隊列的狀態,以便其他處理器監視、跟蹤指令隊列的狀態。32與CPU有關的芯片8087數據協處理器協助主CPU專司數據處理8089I/O協處理器協助主CPU專司I/O處理8288總線控制器產生部分控制信
20、號8289總線仲裁器多處理器共享總線進行控制8286/8287數據收發器雙向收發數據,信號驅動放大8284A時鐘發生器產生恒定的單向脈沖信號8282/8283地址鎖存器將地址鎖存,實現引腳復用33CPU在最小模式下的典型配置圖34CPU在最大模式下的典型配置圖35615829435.2 8086處理器時序 1.時序的基本概念計算機的工作是在時鐘脈沖CLK的統一控制下,一個節拍一個節拍地實現的。在CPU 執行某一個程序之前,先要把程序(已變為可執行的目標程序)放到存儲器的某個區域。在啟動執行后,CPU就發出讀指令的命令;存儲器接到這個命令后,從指定的地址(在8086中由碼段寄存器CS和指令指針I
21、P給定)讀出指令,把它送至CPU的指令寄存器中;CPU對讀出指令經過譯碼器分析之后,發出一系列控制信號,以執行指令規定的全部操作,控制各種信息在機器(或系統)各部件之間傳送。 368086微處理器每條指令的執行有取指、譯碼、執行這樣的階段,由于微處理器內有總線接口單元BIU和執行單元EU,所以在執行一條指令的同時(這在EU中操作),BIU就可以取下一條指令,它們在時鐘上是重疊的。所以,從總體上來說,似乎不存在取指階段,這種功能就稱為“流水線”功能。目前,在高檔微處理器中往往有多條流水線,使微處理器的許多內部操作“并行”進行,從而大大提高了微處理器的工作速度。執行一條指令的一系列動作,都是在時鐘
22、脈沖CLK的統一控制下一步一步進行的,它們都需要一定的時間(當然有些操作在時間上是重疊的)。如何確定執行一條指令所需要的時間呢?37總線周期、時鐘周期的概念8284A脈沖發生器提供一個頻率固定的時鐘信號。CPU將在其控制下,有節拍的工作,一步一步地完成各種操作。時鐘周期T:兩個時鐘脈沖信號上升沿(或下降沿)之間的時間間隔。它是頻率的倒數:T=1/F。一個時鐘周期又稱為一個 T 狀態。38時鐘頻率(Hz) 一個T狀態時間 5M 200ns 50M 20ns 100M 10ns200M 5ns總線周期、時鐘周期的概念典型數據:8284A的頻率為5MHz,時鐘周期為 200ns39指令周期:CPU執
23、行一條指令所需的時間(Instruction Cycle)。不同指令的指令周期是不等長的。 因為,首先8086的指令是不等長的,最短的指令是一個字節,大部分指令是兩個字節,但由于各種不同尋址方式又可能要附加幾個字節,8086中最長的指令可能要6個字節。 指令的最短執行時間,寄寄,是兩個時鐘周期,一般的加、減、比較、邏輯操作是幾十個時鐘周期,最長的為16位數乘除法操作約需要200個時鐘周期。總線周期、時鐘周期的概念40指令周期又分為一個個總線周期。每當CPU要從存儲器或IO端口,讀寫一個字節(或字)就是一個總線周期(Bus Cycle)。所以,對于多字節指令,取指就需要若干個總線周期;在指令的執
24、行階段,不同的指令也會有不同的總線周期,有的只需要一個總線周期,而有的可能需要若干個總線周期。一個基本的總線周期的時序如圖5-3所示。 41總線周期、時鐘周期的概念總線周期CPU完成一次訪問內存(讀內存或寫內存)或I/O端口操作、中斷響應所需要的時間。分為總線讀周期和總線寫周期。每個總線周期通常包含4個T狀態。分別標記為T1、T2、T3、T4 。CPU在每個T狀態內,所完成的基本操作是不同的,而且是固定的。42總線周期、時鐘周期的概念等待周期(TW狀態):由于CPU與內存或I/O端口的速度不匹配,將造成CPU的等待時間;由一個或多個T組成。空閑周期(TI狀態):由于沒有后續的指令操作,將造成總
25、線的空閑時間;由一個或多個T組成。43基本的指令周期時序44每個總線周期通常包含4個T狀態(T state),即圖5-6中的T1、T2、T3、T4,每個T狀態是8086中處理動作的最小單位,它就是時鐘周期(Clock Cycle)。早期的8086的時鐘頻率為8MHz,故時鐘周期或者一個T狀態為125ns。雖然各條指令的指令周期有很大差別,但它們仍然是由以下一些基本的總線周期組成的: (1)存儲器讀或寫總線周期;(2)輸入輸出端口的讀或寫總線周期;(3)中斷響應周期。45時序與時序圖時序是指CPU各引腳信號在時間上的關系,或稱各操作步驟與時鐘脈沖信號的對應關系。在微機系統中,任何操作都有“時序”
26、的概念,都有自己的“時序圖”,(表示和描述各引腳信號時間關系的圖。)46分析一個操作的時序分析一個操作的時序,首先應弄清楚該操作將涉及的操作內容和操作步驟(以總線操作為例)確定操作的對象(內存或I/O端口)確定操作類型(讀或是寫)確定數據的存放地址(首先傳送地址)由于復用,地址需要存放起來確定總線騰空,應確認是否允許傳遞,確定傳送方向確認內存(或IO)準備好數據最后由CPU取走數據,完成一個總線操作478086 CPU的每條指令都有自己的固定的時序。例如從存儲器讀一個字節(或字)的操作總線周期是由4個T狀態組成,。 CPU在T1狀態把地址信息從地址線A19A16、AD15AD0上輸出,并且立即
27、發出地址鎖存信號ALE,把在A19A16上出現的高4位地址和在AD15AD0上出現的低16位地址,在外部地址鎖存器上鎖存。這樣,20位地址信息就送至存儲器。CPU也是在T1狀態發出區分是存儲器還是IO操作的IO/M信號。 在T2狀態,CPU發出讀命令信號(若使用接口芯片8286,還有相應的控制信號DT/R和DEN)。有了這些控制信號,存儲器就可以實現讀出。在這些信號發出后,CPU等待一段時間,到它的T4狀態的前沿(下降沿)采樣數據總線AD15AD0以獲取數據,從而結束此總線周期。48存儲器從接收到地址信號,要經過地址譯碼選擇,選中所需要的單元,IO端口也如此。從接收到IO/M信號和RD信號(這
28、些信號一般用作選通信號),到信息從被選中的單元讀出送至數據總線也都是需要一定時間的,它是否能在T4周期的前沿之前完成,這完全取決于存儲電路或IO端口本身。所以,在CPU的時序和存儲器或IO端口的時序之間存在配合問題。 49最小模式下的讀周期時序圖50T1狀態: IO/M 選擇操作對象,變低表示存儲器讀,變高表示I/O讀 給出地址,若為存儲器給出20位地址,若為I/O端口,給出低16位地址 ALE 變為有效,將復用線上的地址鎖存 DT/R 變低,表示CPU數據傳送的方向為“讀”最小模式下的讀周期時序分析51最小模式下的讀周期時序分析T2狀態: A19/S6A16/S3 引腳輸出狀態信號S6S3
29、AD7AD0轉為高阻 RD 變低,選通“讀” DEN 變低,表示總線已空閑,允許數據傳送52存儲器(或I/O端口)將經過地址譯碼后,找到指定的存儲單元(或I/O端口)。再經過一段時間的準備,指定存儲單元內的數據就會出現在數據總線AD7AD0上;T3將完成此事 。 CPU在T4下降沿采樣數據線,獲取數據;之后RD和DEN為轉為高電平,停止讀數據和停止傳送,完成一次“讀”操作。最小模式下的讀周期時序分析53最小模式下的讀周期時序分析54CPU中設計了一條準備就緒READY輸入線,這是由存儲器或IO端口輸送給CPU的狀態信號線;在存儲器或IO端口對數據的讀寫操作完成時,使READY線有效(即為高電平
30、)。CPU在T3狀態的前沿(下降沿)采樣READY線,若其有效,則為正常周期,在T3狀態結束后進入T4狀態,且CPU在T4狀態的前沿采樣數據總線,完成一個讀寫周期;若CPU在T3狀態的前沿采樣到READY為無效(低電平),則在T3周期結束后,進入TW周期(等待周期),而且在TW周期的前沿采樣READY線,只要其為無效,就繼續進入下一個TW周期,直至在某一個TW周期的前沿采樣到READY為有效時,則在此TW周期結束時進入T4周期,在T4狀態的前沿采樣數據線,完成一個讀寫周期,其過程如圖5-5所示。 55若內存或I/O端口不能及時準備好數據或未送達數據總線,將向CPU送出一個低電平的REDAY信號
31、 CPU會在T3的前下降沿采樣READY信號如采到低電平的READY,將在T3和T4之間產生一個或幾個Tw CPU會在每個Tw的前下降沿再次采樣READY,直到采到高電平(已準備就緒) CPU會在T4的前下降沿取走數據最小模式下的讀周期時序56插入TW狀態的存儲器讀周期57因此,在設計系統的硬件電路時,要根據CPU與所選的存儲器的讀寫速度,分析能否在時序上很好地配合,若需要插入TW周期,就要設計一個硬件電路來產生適當的READY信號。有了READY信號線,就可以使CPU與任何速度的存儲器相連接(當然存儲器的速度還是要由系統的要求來選定)。但是,這說明了當CPU與存儲器或IO端口連接時,要考慮相
32、互之間的時序配合問題。582.8086 CPU的典型時序在最大組態下,8086的基本總線周期由4個T狀態組成。在T1狀態時,8086發出20位地址信號,同時發送出狀態信號S0、S1、S2給8288總線控制器。8288對S0S2進行譯碼, 產生相應命令的輸出控制信號。首先,8288在T1期間送出地址鎖存允許信號ALE,將CPU輸出的地址信息鎖存至地址鎖存器中,再輸出到系統地址總線上。在T2狀態,8086開始執行數據傳送操作。此時,8086內部的多路開關進行切換,將地址數據線AD0AD15上的地址撤消,切換成數據總線,為讀寫數據作準備。8288發出數據總線允許信號和數據發送接收控制信號DT/R允許
33、數據收發器工作,使數據總線與8086的數據線接通,并控制數據傳送的方向。同樣,把地址狀態線A16S3A19/S6切換成與總線周期有關的狀態信息,指示若干與周期有關的情況。59在T3周期開始的時鐘下降沿上,8086采樣READY線。如果READY信號有效(高電平),則在T3狀態結束后進入T4狀態,在T4狀態開始的時鐘下降沿,把數據總線上的數據讀入CPU或寫進地址選中的單元。在T4狀態,結束總線周期。如果訪問的是慢速存儲器或外設接口,則應該在T1狀態輸出的地址經過譯碼選中某個單元或設備后,立即驅動READY信號到低電平。8086在T3狀態采樣到READY信號無效,就會插入等待周期TW,在TW狀態C
34、PU繼續采樣READY信號;直至其變為有效后再進入T4狀態,完成數據傳送,結束總線周期。在T4狀態,8086完成數據傳送,狀態信號S0S2變為無操作的過渡狀態。在此期間,8086結束總線周期,恢復各信號線的初態,準備執行下一個總線周期。 60(1) 存儲器讀周期和存儲器寫周期存儲器讀寫周期由4個時鐘周期組成,即使用T1、T2、T3和T4四個狀態。(2) IO讀和IO寫周期8086微處理器的基本IO讀寫總線周期時序與存儲器讀寫周期時序是類似的。但通常IO接口電路的工作速度較慢,往往要插入等待狀態。即基本的IO操作是由T1、T2、T3、TW、T4 組成,占用5個時鐘周期。(3) 空轉周期若CPU不
35、執行機器周期,即不進行存儲器或IO操作,則總線接口執行空轉周期(一系列的T1狀態)。在這些空轉周期,CPU在高位地址線上仍然驅動上一個機器周期的狀態信息。若上一個機器周期是寫周期,則在空轉狀態,CPU在AD15AD0上仍輸出上一個機器周期要寫的數據,直至下一個機器周期的開始。在這些空轉周期,CPU進行內部操作。61(1)存儲器讀周期由4個T狀態組成3.最大組態下的時序62S2S08288(2)存儲器寫周期由4個T狀態組成3.最大組態下的時序63(3)I/O讀和I/O寫周期由5個T狀態組成3.最大組態下的時序64(4) 中斷響應周期當外部中斷源通過INTR或NMI引線向CPU發出中斷請求信號時,
36、若是INTR引線上的信號,則只有在標志位I1(即CPU處在開中斷)的條件下,CPU才會響應。CPU在當前指令執行完以后,響應中斷。在響應中斷時,CPU執行兩個連續的中斷響應周期,如圖5-12所示。在每一個中斷響應的機器周期,CPU都輸出中斷響應信號INTA。在第一個機器周期,CPU使AD15AD0浮空。在第二個機器周期,被響應的外設(或接口芯片)應向數據總線輸送一個字節的中斷向量號,CPU讀入中斷向量號后,就可以在中斷向量表上找到該設備服務程序的入口地址,轉入中斷服務。 6566(5) 系統復位8086的RESET引線,可以用來啟動或再啟動系統。當8086在RESET引線上檢測到一個脈沖的正沿
37、,便終結所有的操作,直至RESET信號變低。這時,寄存器被初始化到復位狀態。在復位的時候,碼段寄存器和指令指針分別被初始化為0FFFFH和0。因此,8086在復位后執行的第一條指令,在內存的絕對地址0FFFF0H處。在正常情況下,從0FFFF0H單元開始,存放一條無條件轉移指令JMP指令,以轉移到系統程序的實際開始處。在復位時,由于把標志位全清除了,所以系統對INTR引線上的請求是屏蔽的。因此,系統軟件在系統初始化時,就應立即用指令來開放中斷(即用STI指令),重新設置IF標志。 (6) CPU進入和退出保持狀態的時序當系統中有別的總線主設備請求總線時,總線主設備向CPU輸送請求信號HOLD,
38、HOLD信號與時鐘異步,則在下一個時鐘的上升沿同步HOLD信號。CPU接收同步的HOLD信號后,在當前總線周期的T4,或下一個總線周期的T1的后沿輸出保持響應信號HLDA,緊接著從下一個時鐘開始CPU就讓出總線。當外設的DMA傳送結束,使HOLD信號變低,HOLD信號也是與時鐘異步,則在下一個時鐘的上升沿同步,在緊接著的下降沿使HLDA信號變為無效,其時序如圖5-14所示。675.3 系 統 總 線微型計算機系統大都采用總線結構。這種結構的特點是采用一組公共的信號線作為微型計算機各部件之間的通信線,這種公共信號線就稱為總線。因此總線的定義是:總線是微機系統之間、系統各模塊之間或模塊內部以及芯片
39、內部各部分之間用來傳送信息的公共信息通路,是計算機傳送信息的一組導線,它將各部件連接成一個整體。小系統單板計算機各芯片之間,組成微型計算機的插件板之間,微型計算機系統之間,都有各自的總線。這些總線把各部件組織起來,組成一個能彼此傳遞信息和對信息進行加工處理的整體。因此總線是各部件聯系的紐帶,在接口技術中扮演著重要的角色。隨著微型計算機硬件的發展,總線也不斷地發展與更換。 685.4.1 概述 1.總線的分類根據所處的位置不同,總線可以分為: (1) 片內總線片內總線位于微處理器芯片的內部,用于算術邏輯單元ALU與各種寄存器或者其他功能單元之間的相互連接。(2) 片總線片總線又稱元件級總線或局部
40、總線,是一臺單板計算機或一個插件板的板內總線,用于各芯片之間的連接。它是微型機系統內的重要總線,在連接接口芯片與CPU時就涉及這樣的總線。片總線一般是CPU芯片引腳的延伸,往往需要增加鎖存、驅動等電路,以提高CPU引腳的驅動能力。69(3) 內總線內總線又稱為微型計算機總線或板級總線,一般稱為系統總線,用于微型計算機系統各插件板之間的連接。是微型計算機系統的最重要的一種總線。一般談到微型計算機總線,指的就是這種總線。目前,通用的微型計算機系統有一塊標準化的主板,板上安裝了CPU、內存(數十兆字節至數百兆字節)和IO設備的接口,通過主板上的插口槽上所插的插件板與各種IO設備相連。例如,通過插件板
41、與各種顯示器相連;提供一部分串行、并行的IO口;通過網絡適配器卡連接各種網絡;。 70當然也有一種趨勢,把上述這些最基本的外設的接口或適配器集成到主板上。但是,一個系統總是有可能要擴展的,一種微機系統有可能應用在各種領域,每種領域都會有自己的特殊需求。所以,目前的微機系統的主板上,總是留有插槽,用于插件板與微機系統相連。插件板與主板的連接,就是內總線或稱為系統總線。(4) 外總線外總線又稱通信總線,用于系統之間的連接,如微機系統之間,微機系統與儀器、儀表或其他設備之間的連接。常用的外總線有RS232C、IEEE488、VXI等總線。上述各級總線的示意圖,如圖5-12所示。 7172總線必須在以
42、下幾方面做出規定: (1) 物理特性: 物理特性指的是總線物理連接的方式。包括總線的根數、總線的插頭、插座是什么形狀的、引腳是如何排列的等。例如,IBMPCXT的總線共62根線,分兩列編號。(2) 功能特性: 功能特性描寫的是這一組總線中,每一根線的功能是什么。從功能上劃分,總線分為三組(即三總線): 地址總線、數據總線和控制總線。(3) 電氣特性: 電氣特性定義每一根線上信號的傳送方向、有效電平范圍。一般規定送入CPU的信號稱作輸入信號(IN),從CPU送出的信號稱作輸出信號(OUT)。(4) 時間特性: 時間特性定義了每根線在什么時間有效,也就是每根線的時序。總線大體可以分成以下幾種主要類
43、型和結構 : 73總線的主要性能指標 總線寬度: 總線中數據總線的數量,用 Bit(位)表示。總線寬度越寬,數據傳輸量越大。 總線時鐘:總線中各種信號的定時基準。一般來說,總線時鐘頻率越高,其單位時間內數據傳輸量越大。 最大數據傳輸速率: 在總線中每秒鐘傳輸的最大字節量,用 MB/s表示,即每秒多少兆字節。一般一個總線時鐘周期完成一次數據傳輸,因此總線的最大數據傳輸速率為總線寬度除以每次傳輸的字節數,再乘以總線時鐘頻率。最大數據傳輸速率有時被說成帶寬(Bandwidth)。 信號線數:總線中信號線的總數,反映了總線的復雜程度。 負載能力:總線中信號線帶負載的能力。74(1) 地址總線地址總線是
44、微型計算機用來傳送地址的信號線。地址線的數目決定了直接尋址的范圍。8088(8086)CPU有20根地址線,可尋址1MB。80286有24根地址線,可尋址16MB。80386 CPU以上的芯片有32根地址線可尋址4GB。P6以上處理器有36根地址線,可尋址64GB。目前,正在開發64位CPU,其尋址范圍就更大了。地址總線均為單向、三態總線,即信號只有一個傳送方向,三態是指除了可輸出高電平或低電平外,還可處于斷開(高阻)狀態。(2) 數據總線數據總線是傳送數據和代碼的總線,一般為雙向信號線,既可輸入也可輸出。數據總線也采用三態邏輯。數據總線已由8條、16條、32條,擴展為64條。75總線幾種主要
45、類型(3) 控制總線控制總線是傳送控制信號的總線。用來實現命令、狀態的傳送,中斷、直接存儲器傳送的請求與控制信號的傳送,以及提供系統使用的時鐘和復位信號等。根據不同的使用條件,控制總線有的為單向、有的為雙向,有的為三態,有的為非三態。控制總線是一組很重要的信號線,它決定了總線功能的強弱和適應性的好壞。好的控制總線功能強、時序簡單且使用方便。(4) 電源線和地線電源線和地線決定了總線使用的電源種類以及地線的分布和用法。76(5) 備用線備用線留作功能擴充和用戶的特殊要求使用。系統總線一般都做成多個插槽的形式,各插槽相同的引腳都連在一起,總線就連到這些引腳上。為了工業化生產和能實現兼容,總線實行了
46、標準化。總線接口引腳的定義、傳輸速率的設定、驅動能力的限制、信號電平的規定、時序的安排以及信息格式的約定等,都有統一的標準。外總線則使用標準的接口插頭,其結構和通信約定也都是標準的。另外還可分為:設備總線:將外部總線中與設備相連的總線劃分出來,稱之為設備總線。 處理器總線:從處理器引出的總線,即直接與處理器相連的總線。 存儲器總線:存儲器控制器與存儲器相連的總線。77總線幾種主要結構單總線結構: 在單總線結構中,系統存儲器M和I/O使用唯一的一套信息通路因而微處理器對存儲器和I/O的讀寫只能分時進行。雙總線結構: I/O和M各自具有到MPU的總線通路,這種結構的MPU可以分別在兩套總線上同時與
47、M和I/O口交換信息,相當于展寬了總線帶寬,提高了總線的數據傳輸速率。雙重總線結構: 在這種結構中,主MPU通過局部總線訪問局部M和局部I/O,這時的工作方式與單總線情況是一樣的。也經常作為主設備訪問全局M和全局I/O。當其他并列微處理器需要訪問全局M和全局I/O時,必須由總線控制邏輯部件統一安排才能進行,這時該微處理器就是系統的主控設備。78 局部總線:局部總線是在處理器與傳統系統總線之間開辟的一條高速數據通道,它不與處理器直接相連,而是獨立于處理器。高速 I/O設備通過它與系統相連。 I/O擴展總線:是為了與速度相對較慢的設備連接而設置的總線,實際上就是傳統的系統總線。串行總線:數據需要逐
48、位依次傳送的總線稱為串行總線。 并行總線:數據各位能同時進行傳送的總線稱為并行總線。 792.總線的操作過程系統總線上的數據傳輸是在主控模塊的控制下進行的,主控模塊是有控制總線能力的模塊,例如CPU、DMA控制器。總線從屬模塊則沒有控制總線的能力,它可以對總線上傳來的信號進行地址譯碼,并且接受和執行總線主控模塊的命令信號。總線完成一次數據傳輸周期,一般分為以下四個階段: (1) 申請階段當系統總線上有多個主控模塊時,需要使用總線的主控模塊提出申請,由總線仲裁部件確定把下一傳輸周期的總線使用權授給哪個模塊。若系統總線上只有一個主控模塊,就無需這一階段。80(2) 尋址階段取得總線使用權的主控模塊
49、通過總線發出本次打算訪問的從屬模塊的地址及有關命令,以啟動參與本次傳輸的從屬模塊。(3) 傳數階段主控模塊和從屬模塊之間進行數據傳輸,數據由源模塊發出經數據總線流入目的模塊。(4) 結束階段主控模塊的有關信息均從系統總線上撤除,讓出總線。813.總線的數據傳輸方式主控模塊和從屬模塊之間的數據傳送有以下幾種方式:(1) 同步式傳輸此方式用“系統時鐘”作為控制數據傳送的時間標準。主設備與從設備進行一次傳送所需要的時間(稱為傳輸周期或總線周期)是固定的,其中每一個步驟的起止時刻,也都有嚴格的規定,都以系統時鐘來統一步伐。同步傳輸要求主模塊嚴格地按系統時鐘規定的時刻發出地址、命令,也要求從模塊嚴格地按
50、系統時鐘的規定讀出數據或完成寫入操作。主模塊和從模塊之間的時間配合是強制同步的。同步傳輸動作簡單,但要解決各種速率的模塊的時間匹配。當把一個慢速設備連接至同步系統上,就要求降低時鐘速率來遷就此慢速設備。 82(2) 異步式傳輸異步式傳輸采用“應答式”傳輸技術。用“請求REQ(Request)”和“應答ACK(Acknowledge)”兩條信號線來協調傳輸過程,而不依賴于公共時鐘信號。它可以根據模塊的速率自動調整響應的時間,接口任何類型的外圍設備都不需要考慮該設備的速度,從而避免同步式傳輸的上述缺點。異步式讀、寫操作的時序如圖5-14所示。8384異步式傳輸,利用REQ和ACK的呼應關系來控制傳
51、輸過程,其主要特點是: 應答關系完全互鎖,即REQ和ACK之間有確定的制約關系,主設備的請求REQ有效,由從設備的ACK來響應;ACK有效,允許主設備撤消REQ;只有REQ已撤消,才最后撤消ACK;只有ACK已撤消,才允許下一個傳輸周期的開始。這就保證了數據傳輸的可靠進行。 數據傳送的速度不是固定不變的,它取決于從模塊的存取速度。因而同一個系統中可以容納不同存取速度的模塊,每個模塊都能以其最佳可能的速度來配合數據的傳輸。異步傳輸的缺點是不管從模塊存取時間的快、慢,每次都要經過4個步驟:請求、響應、撤消請求、撤消響應。因此影響效率。85(3) 半同步式傳輸此種方式是前兩種方式的折衷。從總體上看,
52、它是一個同步系統,仍用系統時鐘來定時,利用某一時鐘脈沖的前沿或后沿判斷某一信號的狀態,或控制某一信號的產生或消失,使傳輸操作與時鐘同步。但是,它又不像同步傳輸那樣傳輸周期固定。對于慢速的從模塊,其傳輸周期可延長時鐘脈沖周期的整數倍。其方法是增加一條信號線(WAIT或READY)。READY信號線無效時,表示選中的從設備尚未準備好數據傳輸(寫時,未作好接收數據的準備;讀時,數據未放至數據總線上)。系統用一適當的狀態時鐘檢測此線,若READY為無效,系統就自動地將傳輸周期延長一個時鐘周期(通過插入等待周期來實現),強制主模塊等待。在延長的時鐘周期中繼續進行檢測,重復上述過程,直至檢測到READY信
53、號有效,才不再延長傳輸周期。 86這個檢測過程又像異步傳輸那樣視從設備的速度而異,允許不同速度的模塊協調地一起工作。但READY信號不是互鎖的,只是單方面的狀態傳輸。半同步傳輸方式,對能按預定時刻一步步完成地址、命令和數據傳輸的從模塊,完全按同步方式傳輸;而對不能按預定時刻傳輸地址、命令、速度的慢速設備,則利用READY 信號,強制主模塊延遲等待若干時鐘周期,協調主模塊與從模塊之間的數據傳輸。這是微機系統中常用的方法。通常,主模塊(CPU)工作速度快,而從模塊(存儲器或IO設備)工作速度慢,而且不同的存儲器和IO設備的工作速度也是不同的,于是就采用READY信號,在正常的CPU總線周期中插入等待周期的方法,來協調CPU與存儲器或CPU與IO設備之間的傳輸。875.3.2 PC總線IBM-PC及XT使用的總線稱為PC總線。PC總線不是CPU引腳的延伸,而是通過了8282鎖存器、8286發送接收器、8288總線控制器、8259中斷控制器、82
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 農業扶持資金合同樣本
- 買狗售后合同樣本
- 題型05 跨學科實踐 2025年會考生物學專題復習(含答案)
- 第15講 動物的主要類群 2025年會考生物學專題練習(含答案)
- 買賣牲畜合同標準文本
- 公積金貸款擔保合同標準文本
- 公司與公司借款合同樣本
- 以誠為本促進道德教育的理念計劃
- 2025建筑工程項目承包合同范本
- 公司資質升級合同標準文本
- 2024年昆明市官渡區衛生健康局招聘考試真題
- (一模)2025年廣東省高三高考模擬測試 (一) 英語試卷(含官方答案)
- 辦公室環境改善項目計劃書
- 肛瘺的術后護理
- 《鴻門宴》課本劇:楚漢風云震撼開場看英雄如何對決
- 2025年春新蘇教版數學一年級下冊課件 第五單元 兩位數加、減整十數和一位數 第1課時 兩位數加、減整10數
- 雙碳目標下餐飲產業綠色低碳轉型發展研究
- 醫療行業醫療設備租賃方案
- 標準起草編制說明范文
- 廣西能源集團有限公司招聘筆試沖刺題2025
- 食堂日管控周排查月調度記錄表
評論
0/150
提交評論