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

          新聞中心

          EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 從并行到串行再返回:對SerDes的理解

          從并行到串行再返回:對SerDes的理解

          作者: 時間:2024-05-17 來源:EEPW編譯 收藏

          化/去化電路,統(tǒng)稱為,為數(shù)字通信系統(tǒng)提供了重要的好處,尤其是當(dāng)需要高數(shù)據(jù)速率時。

          本文引用地址:http://www.ex-cimer.com/article/202405/458868.htm

          在我工程生涯的早期,我認(rèn)為通信通常比通信更可取。我很欣賞同時移動所有8個(或16個,或32個…)數(shù)據(jù)位的簡單性和效率,使用一兩個控制信號進(jìn)行握手,而不需要復(fù)雜的同步方案。

          然而,不久之后,主流的數(shù)字通信協(xié)議——UART、SPI、I2C等——使用串行接口就變得很明顯了,我還注意到,用于專業(yè)應(yīng)用的高級協(xié)議有利于串行傳輸。盡管微控制器和中央處理器(CPU)的內(nèi)部存儲、檢索和處理操作需要數(shù)據(jù),這意味著串行通信需要額外的串行化和反串行化硬件。

          是一種空間到時間到空間的轉(zhuǎn)換。數(shù)據(jù)同時傳輸?shù)加貌煌奈锢砘ミB,串行數(shù)據(jù)共享相同的物理空間但占用不同時刻(圖1)。

          1.png

          圖1 顯示序列化和反序列化的示例圖(圖源:德州儀器)

          考慮到所有這些,讓我們來看看并行數(shù)據(jù)傳輸?shù)木窒扌?,然后我將討論一些突出?a class="contentlabel" href="http://www.ex-cimer.com/news/listbylabel/label/SerDes">SerDes概念。

          為什么串行通信優(yōu)先于并行通信?

          并聯(lián)傳輸?shù)囊粋€更直接的缺點(diǎn)是所涉及的導(dǎo)體數(shù)量。如果您仍在8位世界中工作,那么相對于簡單、同時的數(shù)據(jù)傳輸?shù)暮锰帲褂靡唤M互連似乎是合理的;然而,隨著總線寬度擴(kuò)展到16或32位范圍,布局任務(wù)變得越來越低效和難以管理。當(dāng)您不僅必須將數(shù)據(jù)從一個組件移動到另一個組件,而且必須將數(shù)據(jù)從不一個移動到另外一個時,問題可能會變得更加嚴(yán)重。

          此外,這些并行數(shù)據(jù)線中的每一條都不僅僅是布局和布線人員所關(guān)心的問題。緊密間隔的導(dǎo)線或PCB跡線(如圖2所示)容易受到串?dāng)_的影響,尤其是在數(shù)字信號的高能邏輯轉(zhuǎn)換特性下,更大的導(dǎo)體組更難屏蔽環(huán)境電磁干擾(EMI)。

          當(dāng)跡線是原理圖中的線時,它們具有完美的電隔離,但在真正的PCB上,它們與附近的跡線和平面層電容耦合。

           2.png

          圖2 當(dāng)跡線是原理圖中的線時,它們具有完美的電隔離,但在真正的PCB上,它們與附近的跡線和平面層電容耦合

          對于串行,一些互連就足以傳輸任何位寬的數(shù)據(jù)字,并且您可以降低偽邏輯轉(zhuǎn)換的可能性,因?yàn)閭芜壿嬣D(zhuǎn)換會破壞數(shù)據(jù)或需要重新傳輸,從而降低通信質(zhì)量。

          理論上,并行確實(shí)允許更快的數(shù)據(jù)傳輸,但即使是這種優(yōu)勢也比最初看起來更具偶然性。更長的跡線或?qū)Ь€意味著信號將花費(fèi)更多的時間從發(fā)送器傳播到接收器,并且隨著數(shù)據(jù)速率的增加,通過匹配跡線長度來均衡整個總線的延遲變得更加重要。高速32位總線的跟蹤長度匹配并不是一件小事——如果我在進(jìn)行布局,這將是一個非常有力的支持序列化/反序列化的論點(diǎn)。圖3顯示了一個彎曲的例子,如果您需要均衡跡線長度,這可能會很有幫助,但當(dāng)您試圖最小化電路板面積時,這就沒有那么大幫助了。

          彎曲痕跡的一個例子

           3.png

          圖3 彎曲痕跡的一個例子

          高速并行總線的另一個問題是功耗過高。串行化可以通過將標(biāo)準(zhǔn)邏輯信號轉(zhuǎn)換為低電壓差分信號來降低功耗。

          SerDes是什么?SerDes功能和特性概述

          SerDes是一個涉及兩個獨(dú)立電路塊的過程:在其基本形式中,串行器將由多個同時的數(shù)字信號表示的數(shù)據(jù)(例如由微處理器或ASIC輸出)轉(zhuǎn)換為沿一個導(dǎo)體傳播的邏輯電平的時間序列。解串器將邏輯電平的這個時間序列轉(zhuǎn)換回沿著多個導(dǎo)體同時傳播的一組信號。

          除了這個基本功能之外,SerDes實(shí)現(xiàn)還有各種細(xì)節(jié)和附加功能。

          多個串行導(dǎo)線

          并行到串行的轉(zhuǎn)換不一定將多個導(dǎo)體壓縮為一個導(dǎo)體。更普遍地說,序列化的目標(biāo)是顯著減少導(dǎo)體的數(shù)量。

          首先,單個串行通信線路通常需要兩個物理導(dǎo)體,因?yàn)樵S多串行接口,如RS-485和USB,都使用差分信號。此外,吞吐量和接口復(fù)雜性之間的最佳平衡可能需要多個串行通道。例如,在下圖4的框圖中,從TI的SN65LVDS95 LVDS串行器的數(shù)據(jù)表中,21位并行數(shù)據(jù)被轉(zhuǎn)換為三個獨(dú)立的串行輸出流。

           4.png

          圖4 數(shù)據(jù)表中SN65LVDS95串行器的功能框圖。圖片由德州儀器公司提供

          時鐘倍增

          如果串行器以特定頻率接收并行字,則它必須增加輸出比特率,以便將輸出字率與輸入字率相匹配。由于串行傳輸比并行傳輸更適合高位頻率,串行化不需要降低吞吐量。如上圖所示,鎖相環(huán)(PLL)可用于根據(jù)并行到串行轉(zhuǎn)換中實(shí)現(xiàn)的壓縮因子來乘以輸入時鐘。

          Tx/Rx同步

          與任何數(shù)字通信接口一樣,SerDes需要一些同步機(jī)制來確保接收器知道如何采樣和解析傳入的邏輯電平。一些系統(tǒng),包括上圖中所示的系統(tǒng),將時鐘信號與數(shù)據(jù)一起發(fā)送。

          解串器也可以從輸入的串行比特流中獲得同步:PLL可以鎖定比特流并產(chǎn)生采樣時鐘。然而,如果輸入信號具有不足的轉(zhuǎn)換密度,則PLL將漂移。例如,傳感器信號可能在正電源軌處飽和,并被數(shù)字化和串行化為邏輯高位的長序列。為了防止與低轉(zhuǎn)換密度相關(guān)的問題,您可以將SerDes系統(tǒng)與標(biāo)準(zhǔn)(如8b/10b)或自制編碼方案相結(jié)合。

          傳輸介質(zhì)

          將并行數(shù)據(jù)傳輸為串行數(shù)據(jù),可以為您提供物理傳輸選項(xiàng),否則這是不可行的。即使您的所有信號都位于同一塊PCB上,并且所有信號都使用普通跡線進(jìn)行路由,串行化也可以極大地方便板布局。如果您要將數(shù)據(jù)從一個板移動到另一個板、從一個模塊移動到一個模塊或從系統(tǒng)移動到系統(tǒng),您可能更喜歡使用同軸電纜或光鏈路。如果你有串行數(shù)據(jù),你就可以從普通電線升級到同軸電纜或光纖。

          獲取SerDes的好處

          SerDes已成為數(shù)字電路不可或缺的一部分。視頻接口、電信互連和各種其他應(yīng)用程序所需的極高數(shù)據(jù)速率無法使用并行傳輸類似地實(shí)現(xiàn)。



          關(guān)鍵詞: 202408 SerDes 并行 串行 PCB

          評論


          相關(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); })();