新聞中心

PCI-X總線簡介

作者: 時間:2016-12-15 來源:網(wǎng)絡(luò) 收藏
PCI-X總線仍采用并行總線技術(shù)。PCI-X總線使用的大多數(shù)總線事務(wù)基于PCI總線,但是在實現(xiàn)細節(jié)上略有不同。PCI-X總線將工作頻率提高到533MHz,并首先引入了PME(Power Management Event)機制。除此之外,PCI-X總線還提出了許多新的特性。

1.5.1Split總線事務(wù)

Split總線事務(wù)是PCI-X總線一個重要特性。該總線事務(wù)替代了PCI總線的Delayed數(shù)據(jù)傳送方式,從而提高了Non-Posted總線事務(wù)的傳送效率。下文以存儲器讀為例,說明PCI-X設(shè)備如何使用Split總線事務(wù)。

本文引用地址:http://m.butianyuan.cn/article/201612/330452.htm

PCI-X總線在進行存儲器讀總線事務(wù)時,總線事務(wù)的發(fā)起方(Requester)使用Split總線事務(wù)與總線事務(wù)接收端(Completer)進行數(shù)據(jù)交換,其步驟如下。

(1)Requester向Completer發(fā)起存儲器讀請求總線事務(wù)。

(2)這個存儲器讀請求在到達Completer之前,可能會經(jīng)過多級PCI-X橋。這些PCI-X橋使用Split Response周期結(jié)束當前總線事務(wù),釋放上游PCI總線。之后繼續(xù)轉(zhuǎn)發(fā)這個存儲器讀請求,直到Completer認領(lǐng)這個存儲器讀請求總線事務(wù)。

(3)Completer認領(lǐng)存儲器讀請求總線事務(wù)后,將記錄將Requester的ID號,并使用Split Response周期結(jié)束存儲器讀請求總線事務(wù)。

(4)Completer準備好數(shù)據(jù)后,將重新申請總線,并使用存儲器讀完成總線事務(wù)主動地將數(shù)據(jù)傳送給Requester。在這個完成報文中包含Requester的ID號,因為完成報文使用ID路由而不是地址路由。

(5)這些完成報文根據(jù)ID路由方式,最終到達Requester。Requester從完成報文中接收數(shù)據(jù)并完成整個存儲器讀請求。

與Delayed總線事務(wù)相比,Requester獲得的數(shù)據(jù)是Completer將數(shù)據(jù)完全準備好后,由Completer主動傳遞的,而不是通過Requester通過多次重試獲得的,因此能夠提高PCI-X總線的使用效率。PCI-X總線提出的Split總線事務(wù)被PCIe總線繼承。

1.5.2總線傳送協(xié)議

PCI-X總線改變了PCI總線使用的傳送協(xié)議。目標設(shè)備可以將主設(shè)備發(fā)送的命令鎖存,然后在下一個時鐘周期進行譯碼操作。與PCI總線事務(wù)相比,PCI-X總線采用的這種方式,雖然在總線時序中多使用了一個時鐘周期,但是可以有效提高PCI-X總線的運行頻率。

因為主設(shè)備通過數(shù)據(jù)線將命令發(fā)送到目標設(shè)備需要一定的延時。如果PCI總線頻率較高,目標設(shè)備很難在一個時鐘周期內(nèi)接收完畢總線命令,并同時完成譯碼工作。而如果目標設(shè)備能夠?qū)⒅髟O(shè)備發(fā)出的命令先進行鎖存,然后在下一個時鐘周期進行譯碼則可以有效解決這個譯碼時間Margin不足的問題,從而提高PCI-X總線的頻率。PCI-X 1.0總線可以使用的最高總線頻率為133MHz,而PCI-X 2.0總線可以使用的最高總線頻率為533Mhz,遠比PCI總線使用的總線頻率高。

除了信號傳送協(xié)議外,PCI-X總線在進行DMA讀寫時,可以不進行Cache共享一致性操作,而PCI總線進行DMA讀寫時必須進行Cache一致性操作。在某些特殊情況下,DMA讀寫時進行Cache共享一致性不但不能提高總線傳送效率,反而會降低。第3.3節(jié)將詳細討論與Cache一致性相關(guān)的PCI總線事務(wù)。

此外PCI-X總線還支持亂序總線事務(wù),即Relaxed Ordering,該總線事務(wù)被PCIe總線繼承。對于某些應(yīng)用,PCI-X設(shè)備使用Relaxed ordering方式,可以有效地提高數(shù)據(jù)傳送效率。但是支持Relaxed Ordering的設(shè)備,需要較多的數(shù)據(jù)緩存和硬件邏輯處理這些亂序,這為PCI-X設(shè)備的設(shè)計帶來了不小的困難。

1.5.3基于數(shù)據(jù)塊的突發(fā)傳送

在PCI總線中,一次突發(fā)傳送的大小為2個以上的雙字,一次突發(fā)傳送所攜帶的數(shù)據(jù)越多時,突發(fā)傳送的總線利用率也越高。

而PCI總線的突發(fā)傳送仍然存在缺陷。在PCI總線中,數(shù)據(jù)發(fā)送端知道究竟需要發(fā)送多少字節(jié)的數(shù)據(jù),但是接收端并不清楚到底需要接收多少數(shù)據(jù)。這種不確定性,為接收端的緩沖管理帶來了較大的挑戰(zhàn)。

為此PCI-X總線使用基于數(shù)據(jù)塊的突發(fā)傳送方式,發(fā)送端以ADB(Allowable Disconnect Boundary)為單位,將數(shù)據(jù)發(fā)送給接收端,一次突發(fā)讀寫為一個以上的ADB。采用這種方式,接收端可以事先預(yù)知是否有足夠的接收緩沖,接收來自發(fā)送端的數(shù)據(jù),從而可以及時斷連當前總線周期,以節(jié)約PCI-X總線的帶寬。在PCI-X總線中,ADB的大小為128B。

由于ADB的引入,PCI總線與Cache相關(guān)的總線事務(wù)如Memory Read Line、Memory Read Multiline和Memory Write and Invalidate,都被PCI-X總線使用與ADB相關(guān)的總線事務(wù)替代。因為通過ADB,PCI-X橋(HOST主橋)可以準確地預(yù)知即將訪問的數(shù)據(jù)在Cache中的分布情況。

PCI-X總線還增加了一些其他特性,如在總線事務(wù)中增加傳送字節(jié)計數(shù),限制等待狀態(tài)等機制,并增強了奇偶校驗的管理方式。但是PCI-X總線還沒有普及,就被PCIe總線替代。因此在PC領(lǐng)域和嵌入式領(lǐng)域很少有基于PCI-X總線的設(shè)備,PCI-X設(shè)備僅在一些高端服務(wù)器上出現(xiàn)。因此本節(jié)不對PCI-X總線做進一步描述。事實上,PCI-X總線的許多特性都被PCIe總線繼承。

1.6小結(jié)

本章主要介紹了PCI總線的基本組成部件,PCI設(shè)備如何提交中斷請求,以及PCI-X總線對PCI總線的功能增強。本章的重點在于PCI總線的Posted和Non-Posted總線事務(wù),以及PCI總線如何使用Delayed傳送方式處理Non-Posted總線事務(wù),請讀者務(wù)必深入理解這兩種總線事務(wù)的不同。



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

評論


相關(guān)推薦

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

關(guān)閉