0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

串行總線的優(yōu)缺點優(yōu)點

OpenFPGA ? 來源:OpenFPGA ? 作者:碎碎思 ? 2021-10-15 10:10 ? 次閱讀

串行總線技術(shù)(一)-串行總線結(jié)構(gòu)(以PCIe為例)串行總線的出現(xiàn)在早期的計算機(jī)系統(tǒng)中,多數(shù)外圍設(shè)備使用并行總線結(jié)構(gòu)。這些總線包括PCI和PATA(并行ATA)。當(dāng)通信速率較低時,并行總線結(jié)構(gòu)可以設(shè)計得非常簡單和有效,可以連接大量外圍設(shè)備。通過使用中央仲裁機(jī)制,可以方便地實現(xiàn)總線設(shè)備間的通信:然而,當(dāng)速率和帶寬不斷增加時,并行結(jié)構(gòu)的潛力不斷被發(fā)掘并不再能夠滿足系統(tǒng)設(shè)計要求。

并行總線結(jié)構(gòu)的帶寬可以通過增加總線寬度或者提高總線的工作頻率來實現(xiàn),但這種增加帶寬的方式會逐漸變得困難。并行總線會占用很多引腳,而對現(xiàn)代數(shù)字芯片來說,單一芯片中集成了大量的功能,引腳本身就是一種非常緊張的資源,這為繼續(xù)增加總線寬度帶來了困難。

另外,總線頻率已經(jīng)進(jìn)行了多次增加(如PCI--》PCIX),繼續(xù)對大量信號線提高工作頻率也變得更加困難。除此之外,并行結(jié)構(gòu)還有一些固有不足,如沒有包的概念,沒有錯誤檢驗機(jī)制等。在并行總線中,傳輸?shù)氖菙?shù)據(jù)突發(fā)片段,不是完整的數(shù)據(jù)包,也沒有與所傳輸數(shù)裾相關(guān)的CRC校驗結(jié)果以進(jìn)行差錯控制。并行總線的不足促進(jìn)串行總線結(jié)構(gòu)的發(fā)展,這不僅克服了原有的缺陷,還帶來了其他好處。如圖所示為并行總線與串行總線示例。

現(xiàn)在的數(shù)字系統(tǒng)中有很多種串行總線。PCI Express(代替了并行PCI總線)、SATA(代替PATA)以及USB等就是一些常用的高速總線。這些總線的速率也從MHz達(dá)到了GHz。

串行總線的優(yōu)缺點優(yōu)點

占用引腳數(shù)量少

串行總線使用一對信號線發(fā)送數(shù)據(jù)(TX+ TX-),使用一對信號線接收數(shù)據(jù)(RX+ RX-)。而PCI和PCIX等并行總線會占用大量引腳。

差分信號

TX和RX信號線上采用的是差分信號傳輸方式,這種傳輸方式具有很高的抗噪聲能力。

強(qiáng)錯誤檢測能力

串行協(xié)議使用基干包的數(shù)據(jù)傳輸方式,對數(shù)據(jù)包采用了CRC校驗。相比于PCI中采用的奇偶校驗,CRC校驗具有很強(qiáng)的檢錯能力。

糾錯與恢復(fù)

因為采用基于包的傳輸方式并且?guī)в蠧RC校驗,接收設(shè)備能夠檢測出接收數(shù)據(jù)包中的錯誤并通知發(fā)送端出現(xiàn)了傳輸錯誤,發(fā)送端可以重新發(fā)送出現(xiàn)錯誤的數(shù)據(jù)包。

全雙工數(shù)據(jù)和控制流

數(shù)據(jù)包可以在TX信號線上傳輸,同時可以在RX信號線上接收控制信息。SATA使用類似HOLD的流控原語來實時阻止數(shù)據(jù)發(fā)送以避免數(shù)據(jù)溢出。

分割式數(shù)據(jù)傳輸

在分割式數(shù)據(jù)傳輸中,request和completion可以不出現(xiàn)在同一個數(shù)據(jù)傳輸操作中。這不是串行總線所特有的必要特征。所有的串行總線都使用包和分割式數(shù)據(jù)傳輸協(xié)議進(jìn)行數(shù)據(jù)傳輸。多數(shù)早期的并行總線(PCI、AHB)不支持分割式數(shù)據(jù)傳輸。最新的并行總線,如AXI開始支持這一協(xié)議。

缺點

串行總線也存在一些不利之處。

只支持點到點連接

通過串行總線只能連接兩個設(shè)備,而對于并行總線,可以在單一總線上連接多個設(shè)備,并目。很容易增減總線上的設(shè)備。對于串行總線,我們需要使用交換機(jī)和多個總線設(shè)備連接。

更大的延遲

由于串行及分層結(jié)構(gòu)特點,串行結(jié)構(gòu)的總線延遲更大一些。

串行總線結(jié)構(gòu)串行總線結(jié)構(gòu)只允許點到點連接,一條串行總線只能連接兩個設(shè)備,而并行總線可以同吋連接多個設(shè)備。在串行總線結(jié)構(gòu)中,總線設(shè)備中需要包括兩個基本電路部件:MAC控制器(通常簡稱為控制器)和PHY(主要實現(xiàn)模擬收發(fā)功能)。MAC具有分層結(jié)構(gòu),通常包括三個層次。PHY包括兩個部分:PCS和PMA。PCS(Physical Coding Sublayer,物理編碼子層)主要實現(xiàn)編解碼等數(shù)字邏輯功能。PMA主要實現(xiàn)時鐘恢復(fù)、均衡和信號電平檢測等模擬功能。

下面我們將以PCIe和SATA為例,對串行總線結(jié)構(gòu)加以分析。

MAC控制器包括三個層次:PHY邏輯層 、 數(shù)據(jù)鏈路層和事務(wù)層。每一層都有自己特定的功能。

PHY邏輯層

兩個相互聯(lián)接設(shè)備的PHY邏輯層之間使用PHY層包進(jìn)行通信,稱為有序訓(xùn)練集合,如圖所示。PHY層包被用于建立鏈路和確定交互的操作速度,在訓(xùn)練階段結(jié)束時,雙方進(jìn)入連接階段,此時它們已經(jīng)做好了傳輸數(shù)據(jù)鏈路層和事務(wù)層包的準(zhǔn)備。PHY層包產(chǎn)生于PHY層,終結(jié)于另一側(cè)的PHY邏輯層,不會上交給其他層次。

數(shù)據(jù)鏈路層

數(shù)據(jù)鏈路層使用短的、固定長度(2個dword/8字節(jié))的包在兩個設(shè)備間交互鏈路信息,如圖所示。這些包也被稱為DLLP(Data Link Layer Packet,數(shù)據(jù)鏈路層包)。DLLP被用于交換信用信息、ACK、NAK和功率管理協(xié)議。DLLP在本層產(chǎn)生,終止于對端的同一層,不會進(jìn)一步向上提交。

事務(wù)層

本層在兩個設(shè)備間進(jìn)行實際的數(shù)據(jù)交互,如下圖所示。這些包被稱為TLP(Transaction Layer Packet,事務(wù)層包),TLP為變長包。TLP包括頭域、數(shù)據(jù)凈荷和CRC校驗。一個TLP由start-of-packet符號開始,以END符號結(jié)束。

串行總線時鐘在PCIe中,平臺提供100MHz參考時鐘,通過PCIe插槽提供給總線設(shè)備。PCIe端點設(shè)備從PCIe連接器處獲取該參考時鐘并將其交給PHY PMA層。PMA內(nèi)部有一個PLL,它根據(jù)輸入的100MHz時鐘和輸入的RX數(shù)據(jù)流生成250MHz的時鐘PCLK。PHY將PCLK提供給MAC發(fā)送數(shù)據(jù)(從MAC到PHY)和接收數(shù)據(jù)(從PHY到MAC)都同步于PCLK。對于PCIe,MAC的接收和發(fā)送電路工作在同一個時鐘域。對于其他串行總線結(jié)構(gòu),如SATA收發(fā)電路時鐘可能不同。在SATA中,發(fā)送和接收時鐘是不同的,屬于異步時鐘。

發(fā)送路徑的微結(jié)構(gòu)MAC和PHY PCS之間的接口是標(biāo)準(zhǔn)的,雖然這不一定必要,但標(biāo)準(zhǔn)化有利于IP核的開發(fā),可提高不同芯片廠商IP核之間的互操作性。對于PCIe來說,該接口被稱為PIPE接口。

MAC提供的發(fā)送數(shù)據(jù)的位寬為8比特或16比特。PCLK的頻率與數(shù)據(jù)總線的位寬有直接關(guān)系,數(shù)據(jù)位寬為8比特時,PCLK為250MHz數(shù)據(jù)位寬為16比特時,PCLK為125MHz,如圖所示。

這兩個頻率是PCIe Genl所使用的,在Gen2中,二者都進(jìn)行了翻倍。位寬變換電路模塊可以將16比特的數(shù)據(jù)位寬轉(zhuǎn)換成8比特的位寬,接著將其送入8b/10b編碼器。編碼器將每個8比特的數(shù)據(jù)轉(zhuǎn)換成為10比特的編碼值并將其傳遞到PHY的PMA層。PMA層使用一個高速時鐘(Genl時為2.5GHz,Gen2時為5GHz)進(jìn)一步將10比特的編碼結(jié)果轉(zhuǎn)換為單比特串行數(shù)據(jù)并通過TX信號線發(fā)出。

接收路徑的微結(jié)構(gòu)PMA接收電路實現(xiàn)比特提取和串并變換功能,將單比特的串行接收數(shù)據(jù)變換成為10比特的并行數(shù)據(jù)。

10比特的數(shù)據(jù)流從PMA接收電路進(jìn)入PCS接收電路。此時的10比特數(shù)據(jù)流并非是字符對準(zhǔn)的。在PCS內(nèi)部,10比特數(shù)據(jù)流先后進(jìn)入字符對準(zhǔn)電路、彈性緩沖區(qū)、10b/8b解碼電路并最終進(jìn)入可選的8b/16b轉(zhuǎn)換電路。

字符對準(zhǔn)

PCIe接收的數(shù)據(jù)是以10比特的字符為組成單位的。PMA接收電路將接收數(shù)據(jù)組成10比特字符時沒有按照字符邊界進(jìn)行。字符對準(zhǔn)邏輯電路查找COMMA字符并以它為基礎(chǔ)進(jìn)行字符邊界對準(zhǔn)。對準(zhǔn)后的字符流被送入彈性緩沖區(qū),如圖所示。

彈性緩沖區(qū)

PCIe鏈路兩端所使用時鐘的標(biāo)稱值均為250MHz。它們可以使用平臺提供的同一個時鐘,或者選擇它們自帶的時鐘源來生成250MHz的工作時鐘。當(dāng)使用相互獨立的時鐘時,它們之間會有微小的偏差(偏差可能非常微小,但不會為0),此時,經(jīng)過一段時間之后,會造成數(shù)據(jù)的上溢或下溢??偩€一端的時鐘頻率可能比另一端略微高一些,頻率低的一端會出現(xiàn)數(shù)據(jù)緩沖區(qū)上溢,頻率高的一端會出現(xiàn)數(shù)據(jù)緩沖區(qū)下溢。串行總線中使用彈性緩沖區(qū)來處理時鐘頻率上的微小差別。我們將對PCIe和SATA中的彈性緩沖區(qū)加以介紹。

位寬為10比特的接收符號流被寫入一個FIFO。按照PCIe協(xié)議,在發(fā)送數(shù)據(jù)時,會按照一定的間隔定期發(fā)送填充包(稱為SKIP集合)。這些填充包可以在不影響數(shù)據(jù)凈荷、編碼/解碼、擾碼/解擾碼的情況下快速插入和去除。寫入邏輯持續(xù)將10比特的字符寫入FIFO,讀岀邏輯持續(xù)將FIFO中的字符讀出。如果寫入速度比讀出速度快,F(xiàn)IFO中的數(shù)據(jù)深度將逐漸增加。

當(dāng)FIFO中的數(shù)據(jù)深度達(dá)到了預(yù)先設(shè)定的上限時,寫入邏輯會丟棄1個或多個SKIP字符。類似地,當(dāng)寫入速度低于讀出速度時,F(xiàn)IFO中的數(shù)據(jù)深度會逐漸降低,當(dāng)深度降至預(yù)先設(shè)定的下限時,讀出邏輯不再從FIFO中讀出數(shù)據(jù),它會暫停讀出數(shù)據(jù),同時向數(shù)據(jù)通路中插入一個SKIP符號。這里的FIFO就是彈性緩沖區(qū),其內(nèi)部數(shù)據(jù)深度是變化的,可以用于調(diào)整讀寫時鐘頻率的微小偏差,如圖所示。

需要說明的是,這種工作機(jī)制可以用于處理微小的讀寫頻率偏差,不適合處理較大的頻率偏差(較大的時鐘偏差需要深度較大的彈性緩沖區(qū)并且會引入較大的延遲)。規(guī)范中對頻率偏差會提出限制,例如,PCIe中的頻率偏差應(yīng)小于300PPM。當(dāng)時鐘偏差被限定在一定PPM之內(nèi)時,SKIP出現(xiàn)的間隔就可以計算得到。

SATA使用了類似的機(jī)制,它會在每256個雙字之間插入兩個ALIGH原語。ALIGN原語根據(jù)兩邊的頻率差可以快速地被丟棄或插入。

10b/8b解碼和8b/16b轉(zhuǎn)換

彈性緩沖區(qū)的輸出進(jìn)入解碼器電路,它會將10比特的字符轉(zhuǎn)換成為8比特的數(shù)據(jù)。如果PCS-MAC接口數(shù)據(jù)通道寬度為16比特,那么需要將兩個連續(xù)的8比特數(shù)據(jù)拼接起來構(gòu)成16比特的數(shù)據(jù)并送給接收MAC如果數(shù)據(jù)通路寬度為8比特,那么不需要做任何處理,直接送給接收MAC。

責(zé)任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 串行
    +關(guān)注

    關(guān)注

    0

    文章

    237

    瀏覽量

    33769
  • 總線
    +關(guān)注

    關(guān)注

    10

    文章

    2858

    瀏覽量

    87912

原文標(biāo)題:串行總線技術(shù)(一)-串行總線結(jié)構(gòu)(以PCIe為例)

文章出處:【微信號:Open_FPGA,微信公眾號:OpenFPGA】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    不同類型UPS電源的優(yōu)缺點

    不間斷電源(UPS)是為關(guān)鍵設(shè)備提供穩(wěn)定、不間斷電力供應(yīng)的重要設(shè)備。根據(jù)設(shè)計和功能的不同,UPS可以分為幾種類型,每種類型都有其獨特的優(yōu)缺點。以下是一些常見的UPS類型及其優(yōu)缺點的概述: 在線式
    的頭像 發(fā)表于 10-28 10:45 ?277次閱讀

    FPGA與ASIC的優(yōu)缺點比較

    FPGA(現(xiàn)場可編程門陣列)與ASIC(專用集成電路)是兩種不同的硬件實現(xiàn)方式,各自具有獨特的優(yōu)缺點。以下是對兩者優(yōu)缺點的比較: FPGA的優(yōu)點 可編程性強(qiáng) :FPGA具有高度的可編程性,可以靈活
    的頭像 發(fā)表于 10-25 09:24 ?188次閱讀

    運放恒流源有哪些優(yōu)缺點

    運放恒流源,即利用運算放大器(Operational Amplifier,簡稱運放)構(gòu)成的恒流源電路,具有一系列獨特的優(yōu)點缺點。以下是對其優(yōu)缺點的詳細(xì)分析。
    的頭像 發(fā)表于 08-28 10:18 ?715次閱讀

    485自動收發(fā)電路優(yōu)缺點

    以下是關(guān)于485自動收發(fā)電路優(yōu)缺點優(yōu)點: 通信距離長:485自動收發(fā)電路可以實現(xiàn)長距離通信,可達(dá)1200米以上,滿足工業(yè)現(xiàn)場的通信需求。 通信速率高:485自動收發(fā)電路的通信速率可達(dá)10Mbps
    的頭像 發(fā)表于 07-13 09:05 ?1280次閱讀

    同步整流的優(yōu)缺點有哪些

    優(yōu)缺點的分析: 一、同步整流的優(yōu)點 提高電路的穩(wěn)定性 同步整流能夠?qū)㈦娐分械乃行盘柾降揭粋€共同的時鐘信號上,從而避免了信號之間的時序問題。這有助于提高電路的穩(wěn)定性,減少因時序問題導(dǎo)致的電路故障。 簡化電路設(shè)
    的頭像 發(fā)表于 07-09 09:09 ?736次閱讀

    nbiot和lora的優(yōu)缺點是什么?

    nbiot和lora的優(yōu)缺點
    發(fā)表于 06-04 06:37

    RS-485典型配網(wǎng)結(jié)構(gòu) RS485總線優(yōu)缺點

     RS485總線是一種低成本的串行通信總線,具有高靈敏度、長距離傳輸和多節(jié)點支持等優(yōu)點。在工業(yè)自動化領(lǐng)域中,RS485總線被廣泛應(yīng)用于各種設(shè)
    的頭像 發(fā)表于 02-02 16:56 ?2726次閱讀
    RS-485典型配網(wǎng)結(jié)構(gòu) RS485<b class='flag-5'>總線</b><b class='flag-5'>優(yōu)缺點</b>

    變頻器旁路安裝的優(yōu)缺點

    并聯(lián)連接,使其在需要時可以被旁路繞過。本文將詳盡、詳實、細(xì)致地介紹變頻器旁路安裝的優(yōu)缺點,并探討其影響因素。 一、變頻器旁路安裝優(yōu)點 1. 變頻器壞死情況下不影響電機(jī)運行: - 當(dāng)變頻器出現(xiàn)故障或需要維修時,通過旁路安
    的頭像 發(fā)表于 02-01 14:48 ?1586次閱讀

    電動機(jī)調(diào)速方式的優(yōu)缺點

    的調(diào)速控制。下面將分別從機(jī)械調(diào)速和電子調(diào)速的優(yōu)缺點進(jìn)行詳細(xì)探討。 一、機(jī)械調(diào)速的優(yōu)缺點 1. 優(yōu)點: (1)機(jī)械調(diào)速結(jié)構(gòu)簡單,易于理解和操作。機(jī)械調(diào)速一般采用變速箱、齒輪傳動或皮帶傳動等簡單的機(jī)械裝置來實現(xiàn)調(diào)速,具有結(jié)構(gòu)
    的頭像 發(fā)表于 01-04 11:26 ?1120次閱讀

    單相逆變器的優(yōu)缺點

    單相逆變器是一種將直流電能轉(zhuǎn)換為交流電能的電子設(shè)備,廣泛應(yīng)用于各種領(lǐng)域,如電力電子、通信、工業(yè)自動化等。單相逆變器具有許多優(yōu)點,但也存在一些缺點。下面將詳細(xì)介紹單相逆變器的優(yōu)缺點。 一、優(yōu)點
    的頭像 發(fā)表于 12-19 14:08 ?1583次閱讀

    LoRa與NB-IoT在物聯(lián)網(wǎng)應(yīng)用的優(yōu)缺點

    許多方面都有不同的優(yōu)缺點。在本文中,我們將詳細(xì)討論LoRa與NB-IoT在物聯(lián)網(wǎng)應(yīng)用中的優(yōu)點缺點。 首先,我們來看看LoRa的優(yōu)點。LoRa是一種長程、低功耗的無線通信技術(shù),具有以下
    的頭像 發(fā)表于 12-15 10:31 ?1843次閱讀

    WLAN和蜂窩網(wǎng)絡(luò)的優(yōu)缺點

    詳細(xì)討論這兩種技術(shù)的優(yōu)缺點。 WLAN的優(yōu)點: 1. 速度:WLAN通常具有更高的傳輸速度,特別是在高速無線局域網(wǎng)標(biāo)準(zhǔn)下,速度可以達(dá)到幾百兆比特每秒。這意味著用戶可以更快地下載和上傳文件、觀看高清視頻等。 2. 低延遲:WLAN技術(shù)具有較低的延遲,這意味著數(shù)據(jù)可以在無
    的頭像 發(fā)表于 12-11 11:26 ?2110次閱讀

    鉭電容的優(yōu)點缺點

    鉭電容的優(yōu)點缺點 鉭電容是一種電子元件,它具有許多優(yōu)點缺點。在這篇文章中,我們將詳細(xì)介紹鉭電容的優(yōu)點
    的頭像 發(fā)表于 12-08 11:35 ?2565次閱讀

    并行總線串行總線的區(qū)別

    并行總線串行總線的區(qū)別? 并行總線串行總線是計算機(jī)系統(tǒng)中常見的兩種數(shù)據(jù)傳輸方式,它們有著不同
    的頭像 發(fā)表于 12-07 16:45 ?3342次閱讀

    常見開關(guān)電源優(yōu)缺點對比

    常見開關(guān)電源優(yōu)缺點對比
    的頭像 發(fā)表于 12-07 15:30 ?655次閱讀
    常見開關(guān)電源<b class='flag-5'>優(yōu)缺點</b>對比