複製鏈接
請複製以下鏈接發送給好友

PCI

(定義局部總線的標準)

鎖定
PCI(Peripheral Component Interconnect)是 一種由英特爾(Intel)公司1991年推出的用於定義局部總線的標準。此標準允許在計算機內安裝多達10個遵從PCI標準的擴展卡。
外文名
PCI
主要特點
支持64位尋址
主要性能
支持10台外設
缺    點
傳輸速率偏慢

PCI基本介紹

從1992年創立規範到如今,PCI總線已成為了計算機的一種標準總線。 PCI總線取代了早先的ISA總線。當然與在PCI總線後面出現專門用於顯卡的AGP總線,與現在PCI Express總線相比,速度要慢,但是PCI能從1992用到現在,説明他有許多優點,比如即插即用(Plug and Play)、中斷共享等。
從數據寬度上看,PCI總線有32bit、64bit之分;從總線速度上分,有33MHz、66MHz兩種。目前流行的是32bit @ 33MHz,而64bit系統正在普及中。改良的PCI系統,PCI-X,最高可以達到64bit @ 133MHz,這樣就可以得到超過1GB/s的數據傳輸速率。如果沒有特殊説明,以下的討論以32bit @ 33MHz為例。
一、基本概念
不同於ISA總線,PCI總線的地址總線與數據總線是分時複用的。這樣做的好處是,一方面可以節省接插件的管腳數,另一方面便於實現突發數據傳輸。在做數據傳輸時,由一個PCI設備做發起者(主控,Initiator或Master),而另一個PCI設備做目標(從設備,Target或Slave)。總線上的所有時序的產生與控制,都由Master來發起。PCI總線在同一時刻只能供一對設備完成傳輸,這就要求有一個仲裁機構(Arbiter),來決定在誰有權力拿到總線的主控權。
32bit PCI系統的管腳按功能來分有以下幾類:
系統控制CLK,PCI時鐘,上升沿有效
RST ,Reset信號
傳輸控制: FRAME#,標誌傳輸開始與結束
IRDY#,Master可以傳輸數據的標誌
DEVSEL#,當Slave發現自己被尋址時置低應答
TRDY#,Slave可以轉輸數據的標誌
STOP#,Slave主動結束傳輸數據的信號
IDSEL,在即插即用系統啓動時用於選中板卡的信號
地址與數據總線: AD[31::0],地址/數據分時複用總線
C/BE#[3::0],命今/字節使能信號
PAR,奇偶校驗信號
仲裁號: REQ#,Master用來請求總線使用權的信號
GNT#,Arbiter允許Master得到總線使用權的信號
錯誤報告: PERR#,數據奇偶校驗錯
SERR#,系統奇偶校驗錯
PCI總線基本操作 PCI總線基本操作
當PCI總線進行操作時,發起者(Master)先置REQ#,當得到仲裁器(Arbiter)的許可時(GNT#),會將FRAME#置低,並在AD總線上放置Slave地址,同時C/BE#放置命令信號,説明接下來的傳輸類型。所有PCI總線上設備都需對此地址譯碼,被選中的設備要置DEVSEL#以聲明自己被選中。然後當IRDY#與TRDY#都置低時,可以傳輸數據。當Master數據傳輸結束前,將FRAME#置高以標明只剩最後一組數據要傳輸,並在傳完數據後放開IRDY#以釋放總線控制權
這裏我們可以看出,PCI總線的傳輸是很高效的,發出一組地址後,理想狀態下可以連續發數據,峯值速率為132MB/s。實際上,目前流行的33M@32bit北橋芯片一般可以做到100MB/s的連續傳輸。
二、即插即用的實現
所謂即插即用,是指當板卡插入系統時,系統會自動對板卡所需資源進行分配,如基地址、中斷號等,並自動尋找相應的驅動程序。而不象舊的ISA板卡,需要進行復雜的手動配置。
實際的實現遠比説起來要複雜。在PCI板卡中,有一組寄存器,叫"配置空間"(Configuration Space),用來存放基地址與內存地址,以及中斷等信息。
以內存地址為例。當上電時,板卡從ROM裏讀取固定的值放到寄存器中,對應內存的地方放置的是需要分配的內存字節數等信息。操作系統要根據這個信息分配內存,並在分配成功後把相應的寄存器中填入內存的起始地址。這樣就不必手工設置開關來分配內存或基地址了。對於中斷的分配也與此類似。
三、中斷共享的實現
ISA卡的一個重要侷限在於中斷是獨佔的,而我們知道計算機的中斷號只有16個,系統又用掉了一些,這樣當有多塊ISA卡要用中斷時就會有問題了。
中斷共享的實現 中斷共享的實現
PCI總線的中斷共享由硬件與軟件兩部分組成。
硬件上,採用電平觸發的辦法:中斷信號在系統一側用電阻接高,而要產生中斷的板卡上利用三極管集電極將信號拉低。這樣不管有幾塊板產生中斷,中斷信號都是低;而只有當所有板卡的中斷都得到處理後,中斷信號才會回覆高電平
軟件上,採用中斷鏈的方法:假設系統啓動時,發現板卡A用了中斷7,就會將中斷7對應的內存區指向A卡對應的中斷服務程序入口ISR_A;然後系統發現板卡B也用中斷7,這時就會將中斷7對應的內存區指向ISR_B,同時將ISR_B的結束指向ISR_A。以此類推,就會形成一箇中斷鏈。而當有中斷髮生時,系統跳轉到中斷7對應的內存,也就是ISR_B。ISR_B就要檢查是不是B卡的中斷,如果是,要處理,並將板卡上的拉低電路放開;如果不是,則呼叫ISR_A。這樣就完成了中斷的共享。

PCI系統特點

系統特點 系統特點
PCI總線系統要求有一個PCI控制卡,它必須安裝在一個PCI插槽內。這種插槽是目前主板帶有最多數量的插槽類型,在當前流行的台式機主板上,ATX結構的主板一般帶有5~6個PCI插槽,而小一點的MATX主板也都帶有2~3個PCI插槽。根據實現方式不同,PCI控制器可以與CPU一次交換32位或64位數據,它允許智能PCI輔助適配器利用一種總線主控技術與CPU並行地執行任務。PCI允許多路複用技術,即允許一個以上的電子信號同時存在於總線之上。

PCIDAQ卡

PCI-1710/1710HG PCI 總線 16 通道 100 KHz,12 位多功能卡(高增益) 4510.-
PCI-1720 4 通道隔離 D/A 輸出卡 4510.-
PCI-1750 PCI 總線 32 通道數字量輸入/輸出卡,具有 2500 V DC 隔離保護 1645-
PCI-1751 PCI 總線 48 位數字量輸入/輸出卡 1280-
PCI-1760 繼電器輸出和隔離數字量輸入卡 2240-
PCI-1713 100 kS/s、12 位卡、32 通道 隔離模擬量輸入 5420.-
PCI-1714 4通道同步30MS/s模擬量輸入卡
PCI-1711 100KS/s,12位16路單端輸入低成本多功能數據採集卡
PCI-1711L 100KS/s,12位16路單端輸入低成本多功能數據採集卡
PCI-1712 1MS/s,12位高速多功能數據採集卡
PCI-1712L 1MS/s,12位高速多功能數據採集卡
PCI-1716 250 KS/s, 16位, 16路高分辨率多功能數據採集卡
PCI-1716L 16位高精度多功能帶模擬量輸出數據採集卡
PCI-1747U 250K 16-bit 64-ch AI card
PCI-1721 12位,4路增強模擬量輸出卡
PCI-1723 16位,8路非隔離模擬量輸出卡
PCI-1724U 14-bit, 32-ch Isolated Analog Output Card
PCI-1730 32路隔離數字量輸入/輸出卡
PCI-1733 32路隔離數字量輸入卡
PCI-1734 32路隔離數字量輸出卡
PCI-1752 64路隔離數字量輸出卡
PCI-1753 96/192位數字量I/0卡
PCI-1753E PCI-1753擴展板
PCI-1754 64路隔離數字量輸入卡
PCI-1755 高速32通道數字量輸入輸出板卡
PCI-1756 64路隔離數字量I/O卡
PCI-1761 8路繼電器輸出和8路隔離數字量輸入卡
PCI-1762 16路隔離數字量輸入和16路繼電器輸出卡
PCI-1780 8通道計數器/定時器

PCI主要版本

PCI2.2允許66MHz的信號傳輸(需要在3.3伏特的信號,傳輸速率峯值為533MB每秒)。
PCI2.3允許使用3.3伏特和通用標識符,但在5伏特的情況不能下使用。
PCI3.0是PCI總線的最後一個官方版本,徹底取消了對使用5伏特的設備的支持。
PCI-X稍稍改變了協定並增加了資料傳輸速率到133MHz(傳輸速率峯值為1066MB/s)。
PCI-X2.0指定了266MHz(傳輸速率峯值為2133MB/s)和533MHz速率,擴充可規劃空間至4096bytes,增加了16-bit的可變總線並且允許1.5伏特的電壓訊號。
微型PCI是PCI2.2版中的新要素,主要用於筆記本電腦的內部。
Cardbus是32位33MHz的PCI,是PCMCIA的要素。
緊湊型PCI,usesEurocard-sizedmodulespluggedintoaPCIbackplane.
PC/104-Plus是一種利用PCI總線連接多個連接器的工業總線。
高級電訊計算體系(ATCA)是電訊工業下一代總線。

PCIPCI總線

PCI總線是一種高性能局部總線,是為了滿足外設間以及外設與主機間高速數據傳輸而提出來的。在數字圖形、圖像和語音處理,以及高速實時數據採集與處理等對數據傳輸率要求較高的應用中,採用PCI總線來進行數據傳輸,可以解決原有的標準總線數據傳輸率低帶來的瓶頸問題。
最早提出的PCI總線工作在33MHz頻率之下,傳輸帶寬達到133MB/s(33MHz*32bit/s),基本上滿足了當時處理器的發展需要。隨着對更高性能的要求,1993年又提出了64bit的PCI總線,後來又提出把PCI總線的頻率提升到66MHz。目前廣泛採用的是32-bit、33MHz的PCI總線,64bit的PCI插槽更多是應用於服務器產品。從結構上看,PCI是在CPU和原來的系統總線之間插入的一級總線,具體由一個橋接電路實現對這一層的管理,並實現上下之間的接口以協調數據的傳送。管理器提供信號緩衝,能在高時鐘頻率下保持高性能,社和為顯卡,聲卡,網卡,MODEM等設備提供連接接口,工作頻率為33MHz/66MHz。
PCI總線系統要求有一個PCI控制卡,它必須安裝在一個PCI插槽內。根據實現方式不同,PCI控制器可以與CPU一次交換32位或64位數據,它允許智能PCI輔助適配器利用一種總線主控技術與CPU並行地執行任務。PCI允許多路複用技術,即允許一個以上的電子信號同時存在於總線之上。
PCI總線的主要性能
(2)總線時鐘頻率33.3MHz/66MHz
(3)最大數據傳輸速率133MB/s
(4)時鐘同步方式
(5)與CPU及時鐘頻率無關
(6)總線寬度32位(5V)/64位(3.3V)
(7)能自動識別外設
PCI總線的主要特點
·具有與處理器和存儲器子系統完全並行操作的能力
·具有隱含的中央仲裁系統
·採用多路複用方式(地址線數據線)減少了引腳數
·完全的多總線主控能力
·提供地址和數據的奇偶校驗
·可以轉換5V和3.3V的信號環境

PCIPCI插槽

PCI插槽 PCI插槽
PCI插槽是基於PCI局部總線擴展插槽,其顏色一般為乳白色,位於主板上AGP插槽的下方,ISA插槽的上方。其位寬為32位或64位,工作頻率為33MHz,最大數據傳輸率為133MB/sec(32位)和266MB/sec(64位)。可插接顯卡、聲卡、網卡、內置Modem、內置ADSLModem、USB2.0卡、IEEE1394卡、IDE接口卡、RAID卡電視卡視頻採集卡以及其它種類繁多的擴展卡。PCI插槽是主板的主要擴展插槽,通過插接不同的擴展卡可以獲得目前電腦能實現的幾乎所有功能,是名副其實的“萬用”擴展插槽。
PCI插槽是目前主板帶有最多數量的插槽類型,在當前流行的台式機主板上,ATX結構的主板一般帶有5~6個PCI插槽,而小一點的MATX主板也都帶有2~3個PCI插槽。
根據實現方式不同,PCI控制器可以與CPU一次交換32位或64位數據,它允許智能PCI輔助適配器利用一種總線主控技術與CPU並行地執行任務。PCI允許多路複用技術,即允許一個以上的電子信號同時存在於總線之上。
由於PCI 總線只有133MB/s的帶寬,對聲卡、網卡、視頻卡等絕大多數輸入/輸出設備顯得綽綽有餘,但對性能日益強大的顯卡則無法滿足其需求。Intel在2001年春季的IDF上,正式公佈了旨在取代PCI總線的第三代I/O技術,該規範由Intel支持的AWG(Arapahoe Working Group)負責制定。2002年4月17日,AWG正式宣佈3GIO1.0規範草稿制定完畢,並移交PCI-SIG(PCI特別興趣小組,PCI-Special Interest Group)進行審核。開始的時候大家都以為它會被命名為Serial PCI(受到串
ATA的影響),但最後卻被正式命名為PCI Express,Express意思是高速、特別快的意思。 [1] 

PCIPCI-E標準

PCI-E或稱PCI-Express是最新的總線和接口標準,它原來的名稱為“3GIO”,是由英特爾提出的,很明顯英特爾的意思是它代表着下一代I/O接口標準。交由PCI-SIG(PCI特殊興趣組織)認證發佈後才改名為“PCI-Express”。這個新標準將全面取代現行的PCI和AGP,最終實現總線標準的統一。它的主要優勢就是數據傳輸速率高,目前最高可達到10GB/s以上,而且還有相當大的發展潛力。PCI-Express也有多種規格,從PCI-Express 1X到PCI-Express 16X,能滿足現在和將來一定時間內出現的低速設備和高速設備的需求。能支持PCI-Express的主要是英特爾的i915和i925系列芯片組
PCI-E標準 PCI-E標準
PCI-E採用了流行的點對點串行連接,比起PCI以及更早期的計算機總線的共享並行架構,每個設備都有自己的專用連接,不需要向整個總線請求帶寬,而且可以把數據傳輸率提高到一個很高的頻率,達到PCI所不能提供的高帶寬。相對於傳統PCI總線在單一時間週期內只能實現單向傳輸,PCI-E的雙單工連接能提供更高的傳輸速率和質量,它們之間的差異跟半雙工全雙工類似。
PCI-E的接口根據總線位寬不同而有所差異,包括X1、X4、X8以及X16,而X2模式將用於內部接口而非插槽模式。PCI-E規格從1條通道連接到32條通道連接,有非常強的伸縮性,以滿足不同系統設備對數據傳輸帶寬不同的需求。此外,較短的PCI-E卡可以插入較長的PCI-E插槽中使用,PCI-E接口還能夠支持熱拔插,這也是個不小的飛躍。PCI-E X1的250MB/秒傳輸速度已經可以滿足主流聲效芯片、網卡芯片存儲設備對數據傳輸帶寬的需求,但是遠遠無法滿足圖形芯片對數據傳輸帶寬的需求。 因此,用於取代AGP接口的PCI-E接口位寬為X16,能夠提供5GB/s的帶寬,即便有編碼上的損耗但仍能夠提供約為4GB/s左右的實際帶寬,遠遠超過AGP 8X的2.1GB/s的帶寬。
儘管PCI-E技術規格允許實現X1(250MB/秒),X2,X4,X8,X12,X16和X32通道規格,但是依目前形式來看,PCI-E X1和PCI-E X16已成為PCI-E主流規格,同時很多芯片組廠商在南橋芯片當中添加對PCI-E X1的支持,在北橋芯片當中添加對PCI-E X16的支持。除去提供極高數據傳輸帶寬之外,PCI-E因為採用串行數據包方式傳遞數據,所以PCI-E接口每個針腳可以獲得比傳統I/O標準更多的帶寬,這樣就可以降低PCI-E設備生產成本和體積。另外,PCI-E也支持高階電源管理,支持熱插拔,支持數據同步傳輸,為優先傳輸數據進行帶寬優化。
優點:
與PCI總線相比,PCI-Express總線主要以下優點:
1) PCI-Express是串行總線,進行點對點傳輸,每個傳輸通道獨享帶寬
2) PCI-Express總線支持雙向傳輸模式和數據分通道傳輸模式。其中數據分通道傳輸模式即PCI-Express總線的x1、x2、x4、x8、x12、x16和x32多通道連接,x1單向傳輸帶寬即可達到250MB/s,雙向傳輸帶寬更能夠達到500MB/s,這個已經不是普通PCI總線所能夠相比的了。
3) PCI-Express總線充分利用先進的點到點互連、基於交換的技術、基於包的協議來實現新的總線性能和特徵。電源管理、服務質量(QoS)、熱插拔支持、數據完整性錯誤處理機制等也是PCI-Express總線所支持的高級特徵
4) 與PCI總線良好的繼承性,可以保持軟件的繼承和可靠性。PCI-Express總線關鍵的PCI特徵,比如應用模型存儲結構軟件接口等與傳統PCI總線保持一致,但是並行的PCI總線被一種具有高度擴展性的、完全串行的總線所替代。
5) PCI-Express總線充分利用先進的點到點互連,降低了系統硬件平台設計的複雜性和難度,從而大大降低了系統的開發製造設計成本,極大地提高系統的性價比和健壯性。系統總線帶寬提高同時,減少了硬件PIN的數量,硬件的成本直接下降。
缺點:
1) 並行總線無法連接太多設備,總線擴展性比較差,線間干擾將導致系統無法正常工作;
2) 當連接多個設備時,總線有效帶寬將大幅降低;
3) 為了降低成本和儘可能減少相互間的干擾,需要減少總線帶寬,或者地址總線數據總線採用複用方式設計,這樣降低了帶寬利用率。 PCI-Express總線是為將來的計算機和通訊平台定義的一種高性能,通用I/O互連總線。

PCI發展歷史

PCI標準 PCI標準
PCI標準的開發於1990年前後開始於英特爾公司。1992年6月22日,英特爾發表PCI1.0標準,該標準僅限於組件級規範。1993年4月30日,PCI-SIG發表了PCI2.0標準,這個標準第一次建立了連接器與主板插槽間的標準。
PCI標準被立即應用於服務器中,取代了先前的MCA及EISA,成為服務器擴展總線的不二選擇。在主流個人計算機中,PCI標準則緩慢地取代着VESA局部總線(VLB);直至1994年後期第二代奔騰PC推出後,該標準方得以實現具有重要意義的市場突破。1996年,VLB徹底退出了個人計算機市場,製造廠商甚至將PCI標準應用於486計算機中。EISA標準則與PCI標準共存使用至2000年。蘋果電腦在1995年中期將PCI標準應用於專業產品PowerMacintosh電腦中(而取代了NuBus),而消費者產品MacintoshPerforma則於1996年中期完成了換代(取代了LCPDS)。
後續版本的PCI標準不斷加入了新的功能與性能提升,包括66MHz/3.3V標準,133MHzPCI-X以及適應多種主板板型等。2004年,串行總線標準PCI-Express面世後,主板製造商逐漸減少了傳統PCI插槽,而引入PCIExpress接口。雖然這兩種接口還會同時並存,但是傳統的PCI總線將會慢慢的消失。
參考資料