PCI總線操作規(guī)則
1. 一旦復(fù)位完成,應(yīng)保證下列信號在所有時鐘的上升沿穩(wěn)定:LOCK#,IRDY#,TRDY#, REQ#,F(xiàn)RAME#,DEVEL#,STOP#,GNT#,REQ64#,ACK64#,SBO#,SDONE#,PERR#,SERR #(只在下降沿)。
2. 保證地址/數(shù)據(jù)在以下各種情況中的相應(yīng)要求:
a. 在FREAME#有效后的第一時鐘上,無論地址線AD[31::00]是否全部有用,他們都必須 是穩(wěn)定的。
b. 在REQ64#有效后的第一時鐘上,無論地址線AD[64::32] 是否全部有用,他們都必須 是穩(wěn)定的。
c. 在讀操作中,當(dāng)TRDY#有效時,數(shù)據(jù)線AD[31::00]與字節(jié)使能無關(guān),必須全部穩(wěn)定有效;而在寫操作里,當(dāng)IRDY#有效時,數(shù)據(jù)線AD[31::00]與字節(jié)使能無關(guān),必須全部穩(wěn)定有效。在其它任何時間數(shù)據(jù)線的狀態(tài)都是不確定的。在讀寫操作中,一旦相應(yīng)的TR DY#或IRDY#有效,數(shù)據(jù)線就不能發(fā)生變化直到當(dāng)前數(shù)據(jù)期完成為止。
d. 在讀/寫傳輸中,當(dāng)ACK64#和TRDY#/IRDY#有效時,數(shù)據(jù)線AD[63::32]與字節(jié)使能無關(guān)應(yīng)全部穩(wěn)定有效,而在其它任何時間都是不確定的。
e. 在特殊周期命令中,當(dāng)IRDY#有效時,數(shù)據(jù)線AD[31::00]在傳輸期穩(wěn)定有效且與字節(jié)使能無關(guān)。
f. 在讀/寫傳輸中,當(dāng)TRDY#/IRDY#有效后,不能向PCI總線上發(fā)異步數(shù)據(jù)。
3. 命令/字節(jié)使能線的狀態(tài)應(yīng)滿足下述要求:
a. 作為總線命令的C/BE[3::0]#和C/BE[7::4]#,分別在FRAME#和REQ64#初次建立時保持穩(wěn)定;有效并且含有相應(yīng)的命令碼。
b. 作為字節(jié)使能的C/BE[3::0]和C/BE[7::4]#,在地址期過后的時鐘上以及整個數(shù)據(jù)期的每個時鐘周期都是穩(wěn)定有效的,并且不受等待周期插入的影響。在突發(fā)傳輸期內(nèi),主設(shè)備可以在每個數(shù)據(jù)期完成時,所對應(yīng)的時鐘上修改字節(jié)使能,但次修改值要在下一個時鐘上才能有效。
4. PAR在AD[31::0]有效后的一個時鐘上穩(wěn)定有效;PAR64在AD[63::32]有效后的一個時鐘上穩(wěn)定有效。
5. IDSEL只在配置訪問時相應(yīng)的FRAME#建立后的第一個時鐘上穩(wěn)定有效,而在其它任何時間都是不確定的。
6. 對于RST#,IRQA#,IRQB#,IRQC#和IRQD#沒有限制或者說是異步的。
7. 當(dāng)FRAME#和IRDY#無效而GNT#有效時,一個設(shè)備可以啟動一次訪問。
8. FRAME#信號的初次建立就標志著一次傳輸?shù)拈_始。
9. 在所有的PCI傳輸中,F(xiàn)RAME#和IRDY#應(yīng)符合下列條件:
a. FRAME#和IRDY#定義了總線的忙/閑狀態(tài)。當(dāng)其中一個有效時,總線是忙的;兩個都無效時,總線處于空閑狀態(tài)。
b. 一旦FRAME#被置為無效,在同一傳輸期間不能重新設(shè)置。
c. 除非設(shè)置IRDY#無效,一般情況下不能設(shè)置FRAME#無效。
d. 一旦主設(shè)備設(shè)置IRDY#,直到當(dāng)前數(shù)據(jù)期結(jié)束為止,主設(shè)備不能改變IRDY#和FRAME#的狀態(tài)。
10.當(dāng)下列條件之一滿足時,表明最后一個數(shù)據(jù)期已經(jīng)完成:
a. FRAME#無效而TRDY#有效(正常終止方式)。
b. FRAME#無效而STOP#有效(目標終止方式)。
c. FRAME#無效并且設(shè)備選擇計時器已經(jīng)計滿(主設(shè)備廢止方式)。
d. DEVSEL#無效而STOP#有效(目標廢止方式)。
11.當(dāng)FRAME#和IRDY#無效時,表示傳輸結(jié)束。
12.下列一般規(guī)則在所有PCI傳輸中對于FRAME#、IRDY#、TRDY#、STOP#都有效:
a. 每當(dāng)STOP#發(fā)出時,F(xiàn)RAME#必須盡快地撤消,但要符合撤消FRAME#的規(guī)則,即必須發(fā)出IRDY#。FRAME#的撤消應(yīng)盡快在STOP#發(fā)出之后2-3個時鐘周期之內(nèi)實現(xiàn)。目標設(shè)備不能假設(shè)STOP#的發(fā)出和FRAME#的撤消之間有任何時間關(guān)系,而是必須保持STOP#信號一直到FRAME#撤消為止。當(dāng)主設(shè)備取樣發(fā)現(xiàn)STOP#有效時,它就必須在有IRDY#的周期后面的第一個周期內(nèi)將FRAME#撤消。IRDY#的發(fā)出和FRAME#的撤消動作可以作為主設(shè)備正常的IRD Y#行為,并根據(jù)主設(shè)備何時準備完成一次數(shù)據(jù)傳輸而延遲0個或者多個周期。然而,如果TRDY#無效,主設(shè)備便可立即發(fā)出IRDY#,因為這時不會發(fā)生數(shù)據(jù)傳輸。
b. STOP#一旦建立,就必須保持到FRAME#撤消為止,接著STOP#也必須撤消。
c. 一旦目標設(shè)備發(fā)出了TRDY#或STOP#,它就不能改變DEVSEL#、TRDY#和STOP#信號,直到當(dāng)前的數(shù)據(jù)期完成。
13. 主設(shè)備和目標設(shè)備之間的數(shù)據(jù)傳送發(fā)生于每個TRDY#和IRDY#同時有效的時鐘沿上。
14. 當(dāng)數(shù)據(jù)有效時,要求數(shù)據(jù)源無條件發(fā)出XRDY#信號(寫傳輸為IRDY#,讀傳輸為TRDY# )。接受設(shè)備也必須發(fā)出它的XRDY#信號。
15. 如果當(dāng)前傳輸被目標終止時,主設(shè)備必須撤消它的REQ#信號至少兩個PCI時鐘周期, 一個是總線進入的第一個空閑周期,另一個在此空閑周期之前或之后。
16. 一個設(shè)備通過DEVSEL#信號表明它是被訪問的目標。
17. DEVSEL#的發(fā)出必須早于或同時于目標使能輸出時所對應(yīng)的時鐘邊沿。
18. 一旦DEVSEL#建立,除非被目標廢止,否則在最后一個數(shù)據(jù)期完成之前,不允許將它撤消。
19. LOCK#信號具有獨占性并且只能由一個設(shè)備驅(qū)動,當(dāng)總線釋放時它仍可以保留。
20. 在PCI總線上,一個支持LOCK#的目標設(shè)備必須遵守下列規(guī)則:
a. 當(dāng)LOCK#在地址期中撤消時,被訪問的設(shè)備要將自身鎖定。
b. 一旦建立了鎖,目標將保持鎖定狀態(tài),直到取樣發(fā)現(xiàn)FRAME#和LOCK#一起撤消或者發(fā)出目標廢止。
c. 保證LOCK#信號所有者的獨占性,一旦鎖已建立,至少有16個字節(jié)的資源,最多可以鎖定整個資源。
21.在PCI總線上,使用LOCK#的主設(shè)備必須遵循以下規(guī)則:
a. 在鎖操作期間,一個主設(shè)備只能訪問一個單一的資源。
b. 一個鎖不能跨越設(shè)備邊界。
c. 16個對齊的字節(jié)是一個主設(shè)備在鎖操作中執(zhí)行互斥時可以計算的最大資源,對16字 節(jié)塊內(nèi)任何字節(jié)的互斥訪問,將會鎖住整個16字節(jié)的塊。
d. 鎖操作中的第一個傳輸必須是讀傳輸。
e. LOCK#必須在緊跟地址期的時鐘上被設(shè)置,并保持設(shè)置以繼續(xù)控制。
f. 在數(shù)據(jù)期結(jié)束之前,如果出現(xiàn)再試并且鎖還沒有建立時,應(yīng)該釋放LOCK#。
g. 無論何時,在一存取被主、從設(shè)備打斷時,必須釋放LOCK#。
h. 在連續(xù)的鎖操作中,LOCK#必須被置成一個最小空閑周期。
22.仲裁器可以在任何時鐘置某一設(shè)備的GNT#信號無效。
23.GNT#一旦建立,其撤消應(yīng)符合以下規(guī)則:
a. 如果總線不是處于空閑狀態(tài),有可能一個GNT#的撤消時刻碰巧是另一個GNT#的發(fā)出時刻。否則,要求一個GNT#的撤消到下一個GNT#的發(fā)出之間要有一個時鐘的延遲,以避免在AD線和PAR線上出現(xiàn)沖突。
b. 當(dāng)FRAME#無信號時,GNT#可以在任何時間撤消,以便服務(wù)于另一個主設(shè)備,或者作為對應(yīng)的REQ#撤消的響應(yīng)。如果GNT#撤消而FRAME#有效并可繼續(xù)下去。
24.當(dāng)仲裁器向一個設(shè)備發(fā)出了GNT#信號并且總線處于空閑狀態(tài)時,該設(shè)備必在8個PCI時鐘周期內(nèi)將AD[31::0]、C/BE[3::0]#和PAR驅(qū)動到有效狀態(tài)。
25.奇偶校驗的產(chǎn)生應(yīng)依據(jù)下述規(guī)則:
a. 不管類型及形式,在所有PCI事務(wù)中奇偶校驗的計算方法不變。
b. AD[31::00]、C/BE[3::0]#及PAR上"1"的個數(shù)等于偶數(shù)。
c. AD[63::32]、C/BE[7::4]#及PAR上"1"的個數(shù)等于偶數(shù)。
d. 奇偶校驗的產(chǎn)生不是可選項,它必須由所有PCI從屬設(shè)備完成。
評論