PCIBusTraining

上传人:ni****g 文档编号:588051116 上传时间:2024-09-07 格式:PPT 页数:46 大小:720KB
返回 下载 相关 举报
PCIBusTraining_第1页
第1页 / 共46页
PCIBusTraining_第2页
第2页 / 共46页
PCIBusTraining_第3页
第3页 / 共46页
PCIBusTraining_第4页
第4页 / 共46页
PCIBusTraining_第5页
第5页 / 共46页
点击查看更多>>
资源描述

《PCIBusTraining》由会员分享,可在线阅读,更多相关《PCIBusTraining(46页珍藏版)》请在金锄头文库上搜索。

1、PCI BUS系統架構CLK 時脈訊號(CLOCK) 系統訊號系統訊號對於所有位於PCI匯流排上的裝置來說,CLK訊號爲一個輸入.它並不是一個反射波訊號.它提供所有交易,包括匯流排仲裁等的時序.PCI裝置的所有輸入都是在CLK訊號的上升邊緣被取樣的.在所有其他的時間裏,所有輸入訊號的狀態都會被忽略.所有PCI時間參數都是相對於CLK訊號的上升邊緣而定的.PCI匯流排上的所有動作都PIC CLK訊號同步.CLK 訊號頻率的笵圍在0MHZ到33MHZ之間.PCI 1.0版規格敍述,所有裝置必須支援16MHZ到33MHZ的操作,並且強力推薦可以降到0MHZ操作的支援,以便於能除錯與低功率的操作.PC

2、I 2.X 版規格則指示,所有PCI裝置必須支援在0MHZ到33MHZ 笵圍內的PCI操作.CLKRUN# 訊號訊號 系統訊號系統訊號對於時脈産生邏輯(Clock Generation Logic,通常是晶片的一部分),CLKRUN#訊號是一個連續的三態輸入/輸出訊號.當時脈正常進行時,時脈産生邏輯會持續驅動CLKRUN#到低態.在時脈被停止(降速)的期間,時脈産生邏輯會監控CLKRUN#,以便認可來自Master與Target裝置要把PCI時脈訊號還原爲全速的請求 .在時脈産生邏輯反驅動CLKRUN#到高態後,時脈會持續不變的進行至少四個時脈.在反驅CLKRUN#到高態後,時脈産生邏輯必須監

3、控CLKRUN#,以注意下列兩種可能狀況的發生: 系統訊號系統訊號狀況1: 在時脈停止(或降速)後,一(或多)個Master可能需要重新啟動時脈,以便請求匯流排的便用權.在發出匯流排請求之前,Master必須請求時脈重新啟動.這需要以驅動CLKRUN#到低態的方式來完成.當時脈産生邏輯偵測到CLKRUN#被其他裝置驅動成低態時,它會啟動(或加速),並且啟動其CLKRUN#輸出驅動器來驅動CLKRUN#成低態.當Master偵測到CLKRUN#被動成低態,並持續兩個PCI CLK訊號的上升邊緣時,Master就可以將其CLKRUN#輸出驅動器轉變成高阻抗態 系統訊號系統訊號狀況2: 當時脈産生邏

4、輯反驅動CLKRUN#到高態,表示它打算停止(或降速)時,時脈必須持續不變的進行至少四個時脈.在這段時間裏,需要連續時脈操作的Target(或Master)(例如:爲了在完成交易後,進行內部管理),可以重新驅動CLKRUN#到低態兩個時脈周期,以請求持續産生CLK.當時脈産生邏輯取樣到CLKRUN#被重新驅動到低態時,它就會重新驅動CLKRUN#到低態,並繼續産生時脈(而不是停止時脈或將它降速).規格沒有定議在請求連續操作之後,時脈持續進行的時間周期.作者將它解讀爲此周期是系統設計者特定的.RST# 重置訊號重置訊號 (Reset Signal) 系統訊號系統訊號當重置訊號被驅動成低態時,它會

5、強迫所有PCI組態暫存器 Master及Target狀態機器與輸出驅動器回到初始化狀態.RST#可在不同步於PCI CLK邊緣的狀況下,被驅動或反驅動.RST#的設定也將其他的裝置特定功能初始化,但是這主題超出PCI規格的笵圍.所有PCI輸出訊號必須被驅動成最初的狀態.通常,這表示它們必須是三態的. AD0:31 AD匯流排匯流排 (AD BUS) 位元元址位元元址/資料匯流排資料匯流排 是用來傳送起始地址.在記憶體或組態的交易期間,此位元元址的解析度是一個雙字組(Double Word)(即地址可被四整除),在讀取或寫入的交易期間,它是一個位元組特定位址. PAR 同位訊號同位訊號 (Par

6、ity Signal) 位元元址位元元址/資料匯流排資料匯流排 在地址階段完成後一個時脈,或是所有寫入交易的資料階段期間,在IDRY#被驅動到僭態後一個時脈,由Initiator驅動.所有讀取交易的資料階段期間,在TRDY#被驅動到僭態後一個時脈,它也會被目前所定址的Target驅動.在地址階段完成後的一個時脈,Initiator將PAR驅動到高或低態,以保證位址匯流排AD0:31與四條指令/位元元元組致能線 C/BE#0:3是偶同位(Even Parity). C/BE#0:3 指令或位元元元組致能匯流排指令或位元元元組致能匯流排 (Command or Byte Enable Bus) 位

7、元元址位元元址/資料匯流排資料匯流排 由Initiator驅動,用來表示在目前被定址之Dword 內將要被傳輸的位元組,以及用來傳輸資料的資料路徑.下表定義在每一個資料階段期間,位元組致能訊號的解釋: 位元組致能訊號對映CBE3#資料路徑 3 ,AD31:24,及目前被定址之DWORD內的第四個位置.CBE2#資料路徑 2 ,AD23:16,及目前被定址之DWORD內的第三個位置.CBE1#資料路徑 1 ,AD15: 8,及目前被定址之DWORD內的第二個位置.CBE0#資料路徑 0 ,AD 7 : 0,及目前被定址之DWORD內的第一個位置.位元元址位元元址/資料匯流排資料匯流排 下表定義在

8、每一個資料階段期間,位元組致能訊號的解釋:位元元址位元元址/資料匯流排資料匯流排 FRAME# 周期框架周期框架 (Cycle Frame) 交易控制訊號交易控制訊號 是由目前的Initiator驅動,它表示交易的開始(當它開始被驅動到低態時)與期間(在它被驅動支低態期間)爲了碓定是否已經取得匯流排擁有權,Master必須在同一個PCI CLK訊號的上邊緣,取樣到FRAME#與IRDY#都被反驅動到高態,且GNT#被驅動到低態交易可以是由在目前的Initiator與目前所定址的Target間一到多次資料傳輸組成當Initiator準備完成最後一次資料階段時,FRAME#就會被反驅動到高態 TR

9、DY# 備妥備妥 (Target Ready) 交易控制訊號交易控制訊號 Target備妥被目前所定址的Target驅動當Target準備完成目前的資料階段(資料傳輸)時,它就會被驅動到低態如果在同一個PCI CLK訊號的上升邊緣,Target 驅動TRDY#到低態且Initiator驅動IDRY#到低態的話,則此資料階段便告完成在讀取期間,TRDY#被驅動表示Target正在驅動有效的資料到資料匯流排上在寫入期間,TRDY#被驅動表示Target準備接收來自Master的資料等待狀態會被插入到目前的資料階段裏,直到取樣到TRDY#與IRDY#都被驅動到低態爲止 IRDY# 備妥備妥 (Ini

10、tiator Ready) 交易控制訊號交易控制訊號 Initiator 備妥被目前的Bus Master(交易的Initiator)驅動.在寫入期間,IRDY#被驅動表示Initiator準備接收從目前所定址的Target傳來的資料.爲了確定Master已經取得匯流排擁有權,它必須在同一個PCI CLK訊號的上升邊緣,取樣到FRAME#與IRDY#都被反驅動到高態,且GNT#被驅動到低態.STOP# 交易控制訊號交易控制訊號 Target驅動STOP#到低態,表示希望Initiator停止目前正在進行的交易.IDSEL 初始化裝置選擇初始化裝置選擇 (Initialization Devic

11、e Select) IDSEL是PCI裝置的一個輸入端,並且在存取某個裝置的組態暫存器期間,它用來選擇晶片. LOCK# 這是在一個單元(Atomic)交易序列期間(列如,在讀取/修改/寫入操作期間), Initiator用來鎖定(Lock)目前所定址的Target的. 交易控制訊號交易控制訊號 DEVSEL# 裝置選擇裝置選擇 (Device Select) 裝置選擇是在Target將位址解碼後,由Target驅動的.它當作目前的Initiator,與在擴充匯流排橋接器上的相減解碼器(Subtractive Decoder)的輸入.假如Master起始一個傳輸,並且在6個CLK周期內,未偵測

12、到DEVSEL#被驅動到低態的話,它就必須假設沒有Target回應,或在此位址上沒有Target裝置,然後産生一個Master Abort.REQ# 要求要求 (Request) 仲裁訊號仲裁訊號 表示管理者要求使用匯流排,此爲一對一之訊號,每一管理者都有與其相對應之REQ#訊號. GNT# 保證保證 (Grant) 表示管理者對匯流排使用之要求已被同意,此爲一對一之訊號,每一管理者都有與其相對應之GNT#訊號. 仲裁演算法確切的用語如下: 仲裁訊號仲裁訊號 中央仲裁器必須實作一個公平的演算法,以避免鎖死.公平意味著每一潛在的Bus Master都可以被授予存取匯流排的許可權,這與其他Mast

13、er的請求無關.公平定義成確保一個具有高優先權的Master不會主宰匯流排,並在較低優先權的Master持續地請求匯流排時,將它們排除在外.然而,這不表示所有的Agent都必須平等地存取匯流排.由於需要公平的演筧法,所以當LOCK#在動作中(假設一資源鎖定),或可快取的記憶體是位於PCI上的時候,不需要去處理特殊狀況.即使系統實作完全的匯流排鎖定,以取代資源鎖定,使用公平演算法的系統仍被認爲是公平的話.不過,假如最早嘗試建立鎖定的交易是以重試(Retry)被終止的話,則仲裁器必須前進到新的Agent上. 有關Bus Parking的實作,有下列兩種方法: 仲裁訊號仲裁訊號 方法1 仲裁器可以監

14、控FRAME#與IRDY#以決定在Park匯流排之前,匯流排是否在忙碌中.假設有Master請求江流排,接收到GNT#,並開始一個多資料階段的Bust傳輸.假如它在這個交易完成後,並沒有另一個交易要進行的話,在它驅動FRAME#到低態之際,它會驅動其REQ#到高態.在這種情況下,仲裁器可以設計成認定匯流排是在忙碌中,並因此不反驅動目前Master的授權到高態,而使得匯流排Park在另一個的Master上. 仲裁訊號仲裁訊號 方法2 仲裁器不需要監控匯流排是否閑置.假設有Master請求匯流排,接收到GNT#,並且開始一個多資料階段的Burst傳輸.若是它在這個交易完成后,並沒有另一個交易要執行

15、的話,在它驅動FRAME#到低態之際,它還會把驅動其REQ#到高態.在這種情況下,若沒有來自其它Master的任何請求的話,仲裁器可以取走目前Master的GNT#,並將GNT#傳送給它預定要Park匯流排的Master.當目前的Master將其Master等待計時器(Latency Timer)耗盡,並認定它已經失去授權時,它會被迫讓出匯流排,等待兩個時脈周期,然后再次接受匯流排擁有權的仲裁,以便從它停止的那一刻,繼續交易. PERR# 同位元錯誤同位元錯誤 (Parity Error) 錯誤報告訊號錯誤報告訊號 由管理者觸發,以表示除了特別周期外(匯流排指令爲0001),之資料同位元錯誤.

16、在所有附加PCI卡上實作PERR#搠腳是必要的.資料同位元錯誤訊號PERR#會在下列環境下,由PCI裝置發出:1. 如果在寫入資料階段中,PCI Target偵測到資料同位元錯誤的話,則Target必須設定在其PCI組態狀態暫存器(Configuration Status Register)的偵測到同位元錯誤位元(Detected Parity Error Bit),且必須驅動PERR#到低態(假如在其組肪指令存器(Configuration Command Register)的同位元錯誤回應位元(Parity Error Response Bit)被設定爲1的話).然後,它可以繼續交易,或驅

17、動STOP#到低態,提早終止交易.在Burst寫入期間,Initiator負責監控PERR#訊號,以確保在每一個資料項被寫入Target的過程中,沒有被損壞 錯誤報告訊號錯誤報告訊號 2. 如果讀取資料階段間,PCI Initiator偵測到資料同位元錯誤的話,Initiator必須設定在其PCI組態狀態暫存器中的偵測到同位元錯誤位元,且必須驅動PERR#到低態(假如在其組態指令暫存器中同位元錯誤回應位元被設定爲1的話).平臺設計者可以加入其他廠商開發的PERR#監控邏輯,也可以向Initiator報告錯誤. 錯誤報告訊號錯誤報告訊號 爲了確保任執行同位元檢查的PCI裝置都有正確的同位元,所有

18、PCI裝置必須在位址與資料階段的AD 31:0 C/BE#3:0與PAR上産生偶同位.PERR#被實作成Target的輸出,以及在Master上的輸入與輸出.交易的Initiator負責向軟體報告偵測到的資料同位元錯誤.爲此,在寫入資料階段中,它必須監控PERR#,以確認Target是否偵測到資料同位元錯誤.在偵測到同位元錯誤時,Initiator所採取的動作視設計而定.它可以和Target進行重試(Retry),或是選擇終止交易並産生中斷,以便呼叫其裝置特定的中斷處理程式.假如Initiator將故障報告軟體的話,則它還必須設定在PCI組態狀態暫存器中的Master資料同位元錯誤位元(Mas

19、ter Data Parity Error Bit).同一時刻, PERR#只能被一個裝置驅動. SERR# 系統錯誤系統錯誤 (System Error)錯誤報告訊號錯誤報告訊號 由管理者觸發,以表示特別周期之資料同位元錯誤. 系統錯誤(System Error)訊號,SERR#可以由任意的PCI裝置發出,以報告位址同位元錯誤 在特殊周期(Special Cycle)期間內的資料同位元錯誤 及其它非同位元的重大錯誤.對於在所有執行位址同位檢查,或使用SERR#報告其他重大錯誤的附加PCI卡上,需要SERR#訊號.此訊號被認爲是用來報告重大錯誤的”最後一道防線”.非毀滅性及可更正的錯誤應該以其

20、他的方式發出訊號.在與PC相容的機器裏,SERR#通常會産生系統處理器的NMI(雖然設計者並未被強制讓它産生NMI).在Power PC與PreP相容的平臺,透過驅動TEA#或MC#到低態,可以向主處理報告器SERR#被驅動到低態,並使得機器檢查中斷.這與Intel世界裏的NMI功能是同等的.假如PCI裝置的設計者不想要NMI被起始的話,則表示應該使用非SERR#的其他訊號來産生錯誤狀況的旗標(像是設定一個在裝置狀態暫存器裏的位元,並産生中斷請求).SERR#是與PCI時脈同步的訊號,並且是開路汲極(Open-Drain)訊號.它一次可以被不止一個PCI Agent驅動.當SERR#被驅動器轉

21、變成高阻坑態. SERR#上的維持電阻(Keeper Resistor)負責反驅動它回到高態(這需要兩到三個時脈周期) PCI 裝置設計者可以選擇實作IEEE1149.1的Boundary Scan介面訊號,以允許PCI裝置在線路內 (In-Circuit)測試. JTAG/Boundary Scan訊號訊號TCK 測試時脈測試時脈 (Test Clock)在Boundary Scan過程中,用來産生進出裝置的狀態資訊與資料的時脈.TDI 測試輸入測試輸入 (Test Input)與TCK一起用來以串列位元流將資料與指令移入測試存取埠(Test Access Port ,TAP)裏 JTAG/

22、Boundary Scan訊號訊號TDO 測試輸出測試輸出 (Test Output)與TCK一起用來以串列位元流將資料與指令移出測試存取埠外.TMS 測試模式選擇測試模式選擇 (Test Mode Select)用來控制測試存取埠控制器的狀態. TRST# 測試重置測試重置 (Test Reset)用來強迫測試存取埠控制器進入到初始化狀態. 64位延伸訊號位延伸訊號PCI規格提供將其基準的32位架構延伸爲64位的詳細定義.實作此延伸的系統支援在64位元Initiator與64位元Target間的每個資料階段,最多八個位元組的傳輸. AD 63:32較高的四條資料路徑.與AD 31:0結合,將

23、資料匯流排寬度延伸爲64位元.這些接腳在傳輸的地址階段期間並不會被使用(除非使用64位定址).C/BE#7:4第四到七條資料路徑的位元組致能.用在資料傳輸階段,但在地址階段並不使用(除非使用64位定址).64位延伸訊號位延伸訊號REQ#64請求64位傳輸.由目前的Initiator産生,用來表示它想要使用較高四條資料路徑來進行傳輸.REQ64#的時序與FRAME#訊號相同.ACK#64確認(Acknowledge)64位傳輸.由目前所定址的Target(假設它支援64位摶輸)産生,用來回應Initiator所設定的REQ64#.ACK64#的時序與DEVSEL#訊號相同. PAR64給較高DW

24、ORD用的相位.這是和AD 63:32及C/BE#7:4相關的偶同位.單一資料階段讀取範例單一資料階段讀取範例單一資料階段讀取範例單一資料階段讀取範例時脈1 :在偵測到匯流排閒置的同時(FRAME#及IRDY#都被反驅動到高態時,Initiator 在時脈1的上升邊緣開始進行交易.Initiator在AD31:0上驅動位址,並在C/BE#3:0上驅動指令.Initiator驅動FRAME#到低態,表示交易已經開始,且在匯流排上有一個有效的位址與指令.時脈2 :在時脈2的上升邊緣,所有在匯流排上的Target皆取樣位址,指令與FRAME#,位址階段完成.所有的Target都開始解碼,以決定哪一個

25、才是此交易的Target.Initiator驅動IRDY#到低態,表示它準備收第一個從Target讀取的資料項.當Initiator驅動IRDY#到低態的同時,它也反驅動FRAME#到高態,藉此表示它準備完成本次交易的最后資料階段.Initiator停止驅動指令到C/BE#3:0上,並開始驅動位無組致能,以指示它想要讀取的第一個Dword的位置所在.在時脈2,沒有任何Target驅動DEVSEL#到低,態,宣告交易.單一資料階段讀取範例單一資料階段讀取範例時脈3 :在時脈3的上升邊緣,Initiator取樣到DEVSEL#被反驅動到高,態表示交易尚未被Target宣告.因此,第一個資料階段尚未

26、完成.在時脈3,它被延長一個時脈(一個等待狀態).在等待狀態期間,Initiator必須繼續驅動位元組致能,並驅動IRDY#到低態,它必須一直驅動它們,到資料階段完成為止.Target驅動DEVSEL#到低態,以便告交易.Target同時驅動TRDY#到低態,表示它正在把第一Dword驅動到AD匯流排上.單一資料階段讀取範例單一資料階段讀取範例時脈4 :在時脈4的上升邊緣,Initiator與Target都取樣到IRDY#與TRDY#被驅動到低態.Initiator同時將資料TRDY#的設定閉鎖住,表示資料是有效的.第一個(也是唯一的)資料項也成功地被讀取了.假如Target需要取樣位元組致能

27、的話,它將在此時取樣.不過,在本笵例,Target還沒參考位元組致能,就已經把資料提供給Master.假如它是一個好的記憶體Target(一個在讀取其中某個位置,不會改變此位置內容的Target).Target取樣到FRAME#被把驅動到高態,表示這是最后一個資料階段.因為交易已經完成,所以Initiator反驅動IRDY#到高態,並停止驅動位元組致能.在時脈4期間,Target反驅動TRDY#和DEVSEL#到高態,並停止驅動資料.時脈5 :在時脈5的上升邊緣,匯流排回到閒置狀態.單一資料階段寫入範例單一資料階段寫入範例單一資料階段寫入範例單一資料階段寫入範例時脈1 :在偵測到匯流排閒置時(

28、FRAME#及IRDY#都被反驅動到高態)時,Initiator在時脈1的上升邊緣開始交易.Initiator在AD31;0上驅動位址,並在C/BE#3:0上驅動指令.Initiator驅動FRAME#到低態,表示交易已經開始,且在匯流排上有一個有效的位址與指令.單一資料階段寫入範例單一資料階段寫入範例時脈2 :在時脈2 的上升邊緣,所有在匯流排上的Target皆取樣位址,指令與FRAME#,位址階段完成.所有的Target都開始解碼,以決定哪一個才是此交易的Target.Initiator驅動IRDY#到低態,表示它正在把第一個寫入的資料項驅動到AD匯流排上.只要Initiator驅動IRD

29、Y#到低態的時間是在進入資料階段后的七個時脈周期內,它都是在規格內.當Initiator驅動IRDY#到低態的同時,它也反驅動FRAME#到高態,藉此表示它準備完成本次交易的最后資料階段.Initiator停止驅指令到C/BE#3:0上,並開始驅位元組致能,指示它想寫入到第一個Dword里的哪些位置.在時脈2時,Target驅動DEVSEL#到低態,宣告交易.Target同時驅動TRDY#到低態,表示它準備接收第一個寫入的資料項.單一資料階段寫入範例單一資料階段寫入範例時脈3 :Master取樣到DEVSEL#被驅動到低態,表示Target已經宣告交易.Target取樣到IRDY#與在AD匯流

30、排上的資料.IRDY#的設定表示它已經封鎖第一個有效的寫入資料項.TRDY#的設定指示Initiator,Target準備接收它,所以現在這兩者都知道第一個資料項已被傳輸.Target同時取樣到FRAME#被反驅動到高態,表示這是最后一個資料階段.因為交易已完成,所以Initiator反驅動IRDY#到高態, 並停止驅動位元組致能.在時脈3期間,Target反驅動TRDY#和DEVSEL#到高態,並停止驅動資料.時脈4 :在時脈4的上升邊緣,匯流排回到閒置狀態.两个两个Master间仲裁的范例间仲裁的范例两个两个Master间仲裁的范例间仲裁的范例时脈1:在第一个时脈边沿之前,Bus Mast

31、er A驱动其REQ#到低态,请求存取PCI汇流排。仲裁器在时脈1的上升边沿取样到A的REQ#在动作。在此时,Bus Master B还不需要汇流排。在时脈1周期,仲裁器驱动Bus Master A的GNT#到低态,授于A汇流排拥有权。在同一个时脈周期里,Bus Master B驱动其REQ#到低态,表示它想要进行交易。两个两个Master间仲裁的范例间仲裁的范例时脈2:Bus Master A 在时脈2的上升边沿取样到其GNT#被驱动到低态。它也同时取样到IRDY#与FRAME#被反驱劫到高态,表示汇流排正在闲置状态。Bus Master A起始其两次交易中的第一次交易,做为回应。它驱动FR

32、AME#到低态且在AD31:0上驱动起始位址,并在指令/位元给致能汇流排上驱动指令。假如Master A 在这个交易后,不进行另一个交易的话,则在时脈2期间,它会反驱劫其REQ线到高态。在本范例中,它有另一个交易要进行,所以它会继续驱动其REQ#线到低态。PCI汇流排仲裁器在时脈2的上升边沿取样到被Bus Master A与B驱动的请求,并且开始仲裁程序,以决定下一个Bus Master.在时脈2期间,仲裁器移除Master A的GNT#.两个两个Master间仲裁的范例间仲裁的范例时脈3:在时脈3的上升边沿,Master A确定它已经被抢先了,但是继续进行其交易,因为其LT( Latency

33、 Timer,等待计时器)尚未期满。在时脈3期间内,仲裁驱动Master B的GNT#到低态。在时脈3周期内,Master A 开始驱动第一个资料项到AD汇流排上(这是第一次写入交易),驱动适当的指令/位元组致能,并驱动IRDY#到低态,指示Target资料目前在汇流排上。两个两个Master间仲裁的范例间仲裁的范例时脈4:在时脈4的上升边沿,Master B取样到其GNT#被驱动到低态,表示它可能是下一个汇流排拥有者。在后来的每一个时脈上升边沿,它都必须持续取样到其GNT#被驱动到低态,直到它取得汇流排为止。这是必要的,因为仲裁器可能会在汇流排进入闲置状态前,移除其授权,并且将汇流排授权给另

34、一个优先权给另一个优权较高的Master。Master B并不能开始使用汇流排,直到汇流排返回闲置状态。在时脈4的上升边沿,取样到IRDY#与TRDY#被驱动到低态,并且进行第一次资料传输。两个两个Master间仲裁的范例间仲裁的范例时脈5:在时脈5的上升边沿,取样到IRDY#与TRDY#被驱动到低态,并且进行第二次资料传输。在时脈5周期内,Master A持续驱动IRDY#到低态,并且反驱动FRAME#到高态,表示最后一个资料阶段正在进行中。两个两个Master间仲裁的范例间仲裁的范例时脈6:在时脈6的上升边沿,被取样到IRDY#与TRDY#被驱动到低态,且第三次及最后一个资料阶段完成。在时

35、脈6的周期,Bus Master A反驱动IRDY#到高态,让汇流排回到闲置状态。两个两个Master间仲裁的范例间仲裁的范例时脈7:在时脈7的上升边沿,Master B取样到FRAME#与IRDY#皆被反驱动到高态,确定现在汇流排闲置中。它同时取样到其GNT#仍被驱动到低态,表示它已经取得汇流排。在时脈7的周期,它开始其交易,并将其REQ#线関闭(因为它只需要用汇流排进行这一次交易),做为回应。当Master B在时脈7的周期驱动到FRAME#低态时,它也开始驱动位垃到AD汇流排上,并驱动指令到指令/位元组致能汇流排上。两个两个Master间仲裁的范例间仲裁的范例时脈8:在时脈8的上升边沿,

36、仲裁器取样到Master B的REQ#被反驱动到高态,且Master A 的REQ#仍被驱动到低态。在时脈8的周期,仲裁器反驱动Master B的GNT#到高态,并驱动Master A的GNT#到低态,以做为回应。Master A必须持续驱动其REQ#线到低态,因为它想要使用汇流排来进行另一次交易。在每一个时脈的一升边沿,Master A都会取样IRDY#与FRAME#,直到发现汇流排闲置为止。在此时,它可以开始下一次交易。在时脈8的周期,Master B反驱动FRAME#到高态,表示其第一次(与唯一的)资料阶段正在进行中。在时脈8的周期,它也开始驱动写入资料到AD汇流排上,并且驱动适当的设定到指令/位元组致能汇流排上。它驱动IRDY#到低态,指示Target资料目前在AD汇流排上。两个两个Master间仲裁的范例间仲裁的范例时脈9:在时脈9上升边沿,取样到IRDY#与TRDY#被 驱到低态,并进行资料传输。然后这Initiator,Master B反驱动IRDY#到高态(在时脈9的周期),让汇流排回到闲置状态 。时脈10:在时脈10的上升边沿,Master A取样到汇流排闲置且其GNT#被驱动到低态,并且在时脈10的周期中,Master A 起始它的第二次交易。当它驱动FRAME#到低态时,它也驱动其REQ#到高态,指示仲裁器在这次交易完成后,它就不再需要汇流排。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号