8086CPU的總線操作與時序課件_第1頁
8086CPU的總線操作與時序課件_第2頁
8086CPU的總線操作與時序課件_第3頁
8086CPU的總線操作與時序課件_第4頁
8086CPU的總線操作與時序課件_第5頁
已閱讀5頁,還剩25頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1.時鐘週期(T狀態週期ClockCycle)T1T2T3T47.1時鐘週期、匯流排週期和指令週期微處理器內部操作的最基本時鐘單元,寬度為時鐘信號相鄰兩上升沿之間的時鐘間隔。2.機器週期(匯流排週期BusCycle)微機處理器BIU與外部電路之間進行一次數據傳送操作所佔用的時間,包含若干個時鐘週期。T1T2T3T4TIT1T2T3T4匯流排週期匯流排週期地址數據地址ADCLK數據3.指令週期(InstructionCycle)執行一條指令所需要的時間,由一至若干個機器週期組成。7.2系統的複位操作8086CPU的RESET引腳是用於系統複位的,可完成系統複位和啟動操作,複位時,CPU內部的寄存器狀態為:標誌寄存器FR、指令指針IP、段寄存器DS、SS、ES清零,指令佇列清空,段寄存器CS置為FFFFH。實際上,除了CS外,所有內部寄存器都清零。啟動後,從記憶體的FFFF0H開始執行程式,FFFF0H處一般存放一條無條件轉移指令,轉向系統程式的入口地址。8086CPU複位時序圖至少四個時鐘週期CLKREST內部REST控制線ALE、

HLDA地址線7.3匯流排操作與時序Intel8086微處理器採用匯流排複用操作方式8086的16位數據匯流排和地址匯流排的低16位是共用的,典型的匯流排週期如圖T1T2T3T4TIT1T2T3T4匯流排週期匯流排週期地址數據地址ADCLK數據在沒有插入等待時鐘週期TW的情況下,匯流排週期由4個時鐘週期組成,即圖中T1、T2、T3、T4在T1期間CPU把記憶體或外設的地址放到匯流排上,這些地址資訊由ALE控制鎖存到地址鎖存器中,以便使匯流排上可以傳送數據資訊。T2期間分時複用的地址/數據匯流排處於高阻態,以便為讀入或寫出數據作準備。在T3和T4期間,讀或寫的數據出現在匯流排上,以使完成讀或寫的操作。等待週期TW:T1T2T3TW一個匯流排週期數據輸入地址輸出T4READY地址匯流排READY信號的定時波形如果在T3週期結束之前,記憶體或外設未準備好數據傳送,就要啟動輸入CPU的READY線使之變低電平,從而在T3和T4之間插入一個或多個TW等待週期,直到READY變高,轉入T4週期,完成讀寫操作。空閒狀態週期TI:8086執行部件EU和匯流排介面部件BIU在一定程度上獨立並行工作,只有當BIU為了填滿指令佇列或EU執行指令需要與外部交換數據時,申請一個匯流排週期,此時BIU才執行一個匯流排週期。因此在兩個匯流排週期之間,可能會存在一些BIU空閒時鐘週期。一、8086讀匯流排週期T1T2T3T4一個匯流排週期CLKA19~A16S6~S3A19/S6~A16/S3BHE/S7DATAINAD15~AD0ALE低=I/O,高=MM/IORDDT/RDENA15~A0舉例二、8086具有等待狀態的讀匯流排週期T1T2T3TW一個匯流排週期CLKA19~A16A19/S6~A16/S3BHE/S7DATAINAD15~AD0ALE低=I/O,

高=MM/IORDDT/RDENA15~A0T4READYWAITREADYS6~S3三、8086寫匯流排週期T1T2T3T4一個匯流排週期CLKA19~A16S6~S3A19/S6~A16/S3BHE/S7DATAOUTAD15~AD0ALE高=I/O,低=MM/IOWRDT/RDENA15~A0四、8086具有等待狀態的寫匯流排週期T1T2T3T4一個匯流排週期CLKA19~A16S6~S3A19/S6~A16/S3BHE/S7DATAOUTAD15~AD0ALE高=I/O,低=MM/IOWRDT/RDENA15~A0TWREADYWAITREADY五、8086最小模式下的匯流排保持~~~~~~~~T4ORTICLKHOLDHLDAAD15~AD0A19/S6~A16/S3六、8086中斷回應週期T1T2T3T4T1T2T3T4向量類型ALEAD0~AD15INTADENCLK第一個中斷回應週期第二個中斷回應週期eg.使AX清零MOVAX,0 三位元組4TSUBAX,AX 二位元組3TXORAX,AX 二位元組3Teg.MOVAX,[2000H] 設

DS=1000H,[12000H]=67H,[12001H]=45HT1T2T3T4一個匯流排週期CLKA19~A16S6~S3A19/S6~A16/S3BHE/S7DATAINAD15~AD0ALEM/IORDA15~A0001000000000000000014567HBHE為低M/IO為高AX=4567H在T1的前半周時,CPU把記憶體或外設端口地址放入AD0~AD15和A16/S3~A19/

S6。M/IO信號有效,如果是記憶體讀,則M/IO線為高電平;如果是外設讀操作,則M/IO為低電平。該信號從T1開始維持到T4結束,BHE/S7信號也在T1時刻選通,以指明高8位數據匯流排上的資訊是可用的。地址和BHE/S7輸出同時,ALE變為高電平,大約經過半個週期,在T1後半周變為低電平,其下降沿使地址資訊鎖存到鎖存器中。DT/R輸出為低電平,表明此時進行了是匯流排讀操作。RD信號變為低電平,指示本週期進行讀操作。DEN信號變為低電平,該信號通常用於控制雙向數據匯流排緩衝器的數據傳輸操作。上述RD和DEN信號維持到T4開始。在T2的前半周時,結束地址資訊的輸出,AD0~AD15變為高阻態,A16/S3~A19/

S6和BHE/S7輸出週期狀態資訊,並維持到T4。在基本匯流排週期T3狀態,記憶體單元或I/O端口將數據送到數據匯流排上。CPU通過AD15~AD0接收數據。在T4狀態和前一個狀態交界的下降沿處,CPU對數據匯流排進行採樣,從而獲得數據。

CPU在T3狀態前沿對READY信號進行採樣,如果READY為低,即說明記憶體和外設尚未準備好,CPU就會在T3和T4之間自動插入一個或幾個等待狀態TW,CPU在某每個TW前沿處對READY信號進行採樣,直至CPU接收到高電平的READY信號後,再把TW的狀態執行完,脫離TW,進入T4。在T1的前半周時,CPU把記憶體或外設端口地址放入AD0~AD15和A16/S3~A19/

S6。M/IO信號有效,如果是記憶體寫,則M/IO線為高電平;如果是外設寫操作,則M/IO為低電平。該信號從T1開始維持到T4結束,BHE/S7信號也在T1時刻選通,以指明高8位數據匯流排上的資訊是可用的。地址和BHE/S7輸出同時,ALE變為高電平,大約經過半個週期,在T1後半周變為低電平,其下降沿使地址資訊鎖存到鎖存器中。DT/R輸出為高電平,表明此時進行了是匯流排寫操作。WR信號變為低電平,指示本週期進行寫操作。DEN信號變為低電平,該信號通常用於控制雙向數據匯流排緩衝器的數據傳輸操作。上述RD和DEN信號維持到T4開始。地址信號發出之後,CPU立即從AD0~AD15發出要寫到存儲單元或I/O端口的數據,A16/S3~A19/

S6和BHE/S7輸出週期狀態資訊,並維持到T4

狀態。在T3狀態,CPU繼續提供狀態資訊和數據,並且繼續維持WR、M/IO及DEN信號為有效電平。在T4狀態,CPU認為記憶體或外設端口已經完成數據的寫入,因而,數據從數據匯流排上被撤除,各控制信號線和狀態信號線也進入無效狀態。此時DEN信號總是進入高電平,從而使匯流排收發器不工作。如果系統中設置READY電路,並且CPU在T3狀態的一開始未收到“準備好”信號,那麼,會在狀態T3和T4之間插入一個或幾個等待週期。直到在某個TW的前沿處,CPU採樣到“準備好”信號後,便將TW狀態作為最後一個等待狀態。執行完TW狀態後進入T4狀態。在TW狀態,匯流排上所有控制信號的情況和T3時一樣,數據匯流排上也仍然保持要寫入的數據。在每個時鐘脈衝的上升沿,CPU會對HOLD引腳信號進行採樣。如果檢測HOLD處於高電平狀態,並且在允許讓出匯流排週期的T4狀態或者空閒狀態TI之後的下一個時鐘週期,CPU把HLDA變為有效,讓出匯流排控制權。如果發出請求設備將HOLD變為低電平,CPU收回匯流排控制權。CPU一旦讓出匯流排控制權,便使地址/數據引腳、地址/狀態引腳以及控制信號引腳RD、WR、INT

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論