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

提交评论