<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          PCI總線操作規(guī)則

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


          關(guān)鍵詞: PCI 總線

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();