第三章 2 cpu 引腳功能 匯流排結構和時序

2022-09-05 08:57:02 字數 2687 閱讀 4374

8086/8088 cpu引腳功能、匯流排結構和時序

3.1.3 8086/8088控制引腳與特殊的儲存器結構方式

該復用引腳沒有明確定義,但表明高8位資料線有效。該訊號和位址線合起來決定了當前資料在資料匯流排上以何種格式出現。該引腳與8086特殊的儲存器結構密切相關。

8086的1mb儲存器由兩個儲存體組合而成。如圖3.1所示。

圖中偶數與奇數儲存總體各佔512kb,其選通訊號分別為

和,偶位址儲存體資料線只和低8位資料匯流排相連,奇位址儲存體資料線只和高8為資料匯流排相連。這種儲存器結構決定了:若=0,,則可在乙個匯流排週期內讀/寫乙個「對準字」,這屬於正常操作;若=1, =0,則只能從儲存器中讀/寫乙個位元組的資料,且只能通過一進行傳遞;反之,若, =1,則也可讀/寫乙個位元組,但該位元組的資料是由奇位址儲存體中取出的,故它必須通過高位資料線傳遞。

如果乙個字在儲存體中是「非對準」存放,則必須先用乙個匯流排週期訪問高8位(奇位址),然後再用乙個匯流排週期讀/寫低8位(偶位址),使訪問速度減慢造成時間浪費。這主要是因為及的有效時間與操作指令有關。這就再次提醒我們,在儲存器中儲存資訊時,一定要按8086儲存器結構的特殊要求存放。

在8088中,由於資料匯流排總是8位的,每個匯流排週期只能完成乙個位元組的操作,不存在上述問題,且cpu也沒有這個引腳。

3.1.4 復位訊號reset的作用

reset是外部引入cpu的訊號,高電平有效,脈衝寬度不低於4個時鐘週期。若是上電復位,脈衝寬度就應大於50。只要復位訊號維持高電平,cpu就一直處於復位狀態。

復位訊號產生如下影響:

(1)在復位狀態,cpu內部暫存器被置為初值,分別是:標誌暫存器,指令暫存器(ip),段暫存器ds,es,ss,指令佇列暫存器均被清除為0,而僅將**段暫存器cs置為ffffh。因此,復位後cs和ip形成的新位址為ffffh×16+0000h=ffff0h,cpu會從ffff0h單元讀取指令,執行操作。

通常是在該單元中放一條跳轉指令,使之轉向相應的程式段。這一點務請注意。

(2)對cpu輸出訊號的影響:在復位訊號變為高電平後,延遲乙個時鐘週期,使所有的三態輸出線被置成高阻狀態。三態線包括,,,,,,,,;另外幾條訊號線的狀態是:

,,,為邏輯「0」,,為邏輯「1」。還需提及的是,上述三態輸出線在變為浮空狀態前,有半個時鐘週期的不作用狀態。

(3)對中斷狀態的影響:由於在復位期間狀態標誌被清零,故從引入intr的可遮蔽中斷,cpu不予響應。必須通過指令來設定中斷允許狀態。

另外,在復位訊號有效期間(高電平),對非遮蔽中斷引腳上產生的保持請求訊號同樣不予響應,僅在cpu內部復位後,取第一條指令前,可以接受最小方式時的保持請求或最大方式時的請求脈衝。

3.1.5 8086/8088的最小方式和最大方式

在8086/8088中有乙個復用引腳,它的狀態決定了8086/8088的工作方式,即決定了cpu 8個引腳24∽31的引腳。

1.最小方式

當時,說明微機系統中僅有乙個cpu,系統中所有的匯流排控制訊號均由8086/8088直接產生。只需用3個8位的位址鎖存器8282(或74ls373)將20位位址線及訊號進行鎖存,輸出單向位址線;而把資料線經8286(或74ls245)進行雙向匯流排驅動;其他控制匯流排直接控制,就可組成單cpu的微機系統。此時,系統時鐘電路由8284產生。

在最小方式下,可以通過控制訊號,竊取匯流排週期實現外部裝置與儲存器間的直接資料傳遞(dma)。但因dma控制器不能執行指令而使系統的能力受到限制,這就引出了8086的最大方式。

2.最大方式

最大方式是在才能產生的。在最大方式下,允許乙個或多個協處理器協助主機處理工作(可選用8086/8088、數字資料處理器8087或i/o處理器8089)。在最大方式下,除了要解決對儲存器和i/o裝置的控制、中斷管理,進行dma傳遞時匯流排控制權外,還必須要解決①多處理器對系統匯流排的爭用問題②各處理器之間的通訊問題。

因此在最大方式下,除具有最小方式中位址鎖存器和資料匯流排驅動器外,還用乙個專用晶元intel 8288匯流排控制器對8086/8088 cpu輸出的, ,組合產生儲存器、i/o讀寫命令和匯流排控制訊號,用於控制資料傳遞。因此可以把最大方式理解為乙個多處理系統。

3.1.6 匯流排週期及時鐘週期

8086/8088的時鐘頻率為5mhz,因此時鐘週期為200ns(頻率的倒數)。匯流排週期是指cpu通過外部匯流排對儲存器或i/o介面進行一次訪問(存/取)所需時間。乙個匯流排週期至少有4個時鐘週期,

在匯流排週期執行匯流排操作、位址/資料復用訊號都應按所規定的功能在不同的時鐘週期內進入應有的狀態,保證cpu與儲存器或i/o接之間的資訊傳遞順利完成。需特別提及的是:cpu的時鐘週期一直存在,但匯流排週期卻並非一直存在。

只有當biu需要補充指令佇列流的空缺時,或當eu執行指令過程中需經外部匯流排與儲存器或i/o介面之間傳輸資訊時,cpu才執行匯流排週期。cpu在不執行匯流排週期時,匯流排介面部件biu就不和匯流排打交道,此時兩個匯流排週期之間就會出現沒有biu活動的時鐘週期,被稱為匯流排空閒週期。

在匯流排空閒週期中,狀態資訊和前乙個匯流排週期(可為讀,亦可為寫)一樣,若前乙個週期為讀週期,則在空閒週期處於高阻狀態;如果前乙個週期為寫週期,位址/資料復用線上仍會在空閒狀態種繼續驅動乙個匯流排週期的資料。

在匯流排空閒週期中,雖然不進行匯流排操作,但在cpu內部,eu仍然進行著有效的操作,如果某種運算或在暫存器間進行資料傳輸等等。實際上匯流排空閒週期是匯流排介面部件biu對執行部件的等待。

由於在最小模式下進行所有的控制訊號均由cpu產生,而最大模式時控制訊號則由匯流排控制器8288產生,因此在最大模式時的匯流排操作在邏輯上和最小模式是一致的,但進行時序分析時還有考慮cpu和匯流排控制器兩者產生的訊號。

第三章順序結構

一 c語句概述 1 c程式的結構 2 c語句的型別 1 控制語句 用於控制程式的流程,以實現程式的各種結構方式,可分成以下三類 1 條件判斷語句 if else語句 switch語句 2 迴圈執行語句 do while語句 while語句 for語句 3 轉向語句 break語句 goto語句 co...

第三章順序結構

c 的程式採用了結構化程式設計.結構化程式設計要求的順序 選擇 迴圈的控制結構,使編寫的程式結構清晰。順序結構就是按照語句的先後順序來執行的方式。第一節賦值語句 賦值語句的一般形式 變數名 表示式 變數名必須在變數說明部分已經定義過。與 兩個等號連線在一起 的區別 賦值號是將其右邊的表示式的值賦給左...

第三章順序結構

3.1 與輸入 輸出有關的控制項 乙個程式,如果沒有輸出操作則沒有什麼實用價值,而如果沒有輸入操作,則必然缺乏靈活性。因此,輸入與輸出是應用程式最基本的功能。在標準 standard 元件板中,delphi 提供了最為基本的輸入 輸出控制項 標籤 label 控制項 編輯框 edit 控制項 進行多...