本申請要求2015年12月1日提交的、發(fā)明人為Junqing Sun和Haoli Qian、名稱為“Communications Link Performance Analyzer that Accommodates Forward Error Correctoin(適用前向糾錯的通信鏈路性能分析器)”的美國臨時申請No.62/261,648的優(yōu)先權(quán),此申請在此通過引用整體并入本文。
背景技術(shù):
隨著數(shù)字數(shù)據(jù)處理技術(shù)繼續(xù)改善,對更高數(shù)據(jù)傳輸率的需求也繼續(xù)增加。例如,IEEE 25千兆比特以太網(wǎng)標準IEEE 802.3by提供高于25千兆比特/秒的單-通道比特率。由于物理介質(zhì)和硅基收發(fā)機電路的性能限制,實現(xiàn)此類高數(shù)據(jù)率是非常具有挑戰(zhàn)性的。這一挑戰(zhàn)導致了專用目的、高速串行器和解串行器(“SerDes”)集成電路(“IC”)模塊的發(fā)展,所述專用目的、高速串行器和解串行器集成電路模塊將并行的、片上比特流轉(zhuǎn)換為多個千兆比特/秒的串行比特流以用于片外通信,并且再次返回到接收端。此類SerDes模塊可用于合并到聯(lián)網(wǎng)和接口設備制造商的IC設計中。
由于干擾,高速率串行比特流信號相比典型的目標值(例如,10-12)可能遭受相對高的比特誤差率(例如,10-5)。前向糾錯(FEC)提供了能夠?qū)崿F(xiàn)目標誤差率的許多代碼以及編碼技術(shù),但是SerDes模塊的制造者典型地不能夠為此類模塊的用戶指定編碼要求。此外,他們可能在他們指定物理通信鏈路的最小性能特性的能力方面受限。這一情況以及用于鏈路和FEC代碼的大量配置參數(shù)一起可能使得SerDes模塊的潛在用戶難以判斷它們的合適性。
技術(shù)實現(xiàn)要素:
上述問題至少部分地通過所公開的適用FEC的通信鏈路性能分析器方法和模塊得以解決。在至少一些實施例中,用于表征通信鏈路性能的方法包括:
(A)跨物理通信鏈路傳輸預定的比特流以產(chǎn)生接收信號;(B)利用接收機從所述接收信號中導出所接收的比特流,所述接收機包括嵌入的調(diào)試模塊,所述調(diào)試模塊具有:(1)比特計數(shù)器,將所接收的比特流分割為碼元和幀;(2)誤差計數(shù)器,確定每一個幀的碼元誤差計數(shù);以及(3)聚合器,從所述碼元誤差計數(shù)中獲取至少一個與性能相關(guān)的統(tǒng)計;以及(C)基于所述至少一個與性能相關(guān)的統(tǒng)計來生成性能測量。
一種說明性接收機實施例可能包括:(A)接收鏈,從接收信號導出所接收的比特流;(B)調(diào)試模塊,所述調(diào)試模塊具有:(1)比較器,將所接收的比特流與預定的比特流比較以提供誤差比特流;(2)門,將來自所述誤差比特流的所選擇的比特傳到碼元誤差檢測器;(3)碼元誤差計數(shù)器,耦合到所述碼元誤差檢測器以確定每一個幀的碼元誤差計數(shù);(4)聚合器,耦合到所述碼元誤差計數(shù)器以從所述碼元誤差計數(shù)中獲得至少一個與性能相關(guān)的統(tǒng)計;以及(5)比特計數(shù)器,利用比特選擇信號、碼元時鐘信號和幀時鐘信號中的一個或多個來驅(qū)動所述門、所述碼元誤差檢測器、所述碼元誤差計數(shù)器和所述聚合器;以及(C)接口,將所述至少一個與性能相關(guān)的統(tǒng)計提供給系統(tǒng),以便基于所述至少一個與性能相關(guān)的統(tǒng)計來顯示性能測量。
碼元可各自都包括來自所接收的比特流的交織的比特。物理通信鏈路可包括多個通信通道,并且性能測量基于對所有通道的與性能相關(guān)的統(tǒng)計。在前述實施例中,所述至少一個與性能相關(guān)的統(tǒng)計可以是幀計數(shù)相對于碼元誤差計數(shù)的柱狀圖的一部分。所述性能測量可以是例如,碼元誤差計數(shù)超過前向糾錯(FEC)代碼的校正能力的比率(也稱為分組丟失率或幀丟失率)。其他合適的性能測量可以是每幀的碼元誤差的概率分布、(在FEC之前或之后的)碼元誤差率、多個碼元誤差或者丟失的幀之間的平均時間、或者可用作比較不同的通信鏈路或通信鏈路的元件的基礎的任何其他值。
附圖說明
在附圖中:
圖1示出了跨通信鏈路的通信的說明性模塊化方式;
圖2示出在發(fā)送設備與接收設備之間的示意性物理鏈路的使用;
圖3示出說明性鏈路性能分析器模塊;
圖4示出說明性柱狀圖;以及
圖5示出說明性性能分析方法。
然而,應當理解,附圖中給出的特定實施例以及對這些特定實施例的詳細描述并不限制本公開。相反地,它們?yōu)楸绢I(lǐng)域技術(shù)人員提供認識替代形式、等效方案和修改的基礎,所述替代形式、等效方案和修改與給出實施例中的一個或多個實施例一起被涵蓋在所附權(quán)利要求書的范圍中。
具體實施方式
各種通信標準采用指定通信鏈路協(xié)議的模塊化方式。圖1是一種此類通信鏈路協(xié)議的示意圖。從第一設備104中的數(shù)據(jù)源102到第二設備108中的數(shù)據(jù)接收機(sink)106的前向路徑100采用物理通信鏈路110,如同從第二設備108中的數(shù)據(jù)源112到在第一設備中的數(shù)據(jù)接收機116的返回路徑111一樣。該標準提供協(xié)議的層次結(jié)構(gòu),該協(xié)議的層次結(jié)構(gòu)可由每一個設備使用來合適地采用物理通信鏈路110,同時提供標準特征,所述標準特征例如,分配的設備地址、通信信道、消息路由、遞送保證、目的地強加的速率限制、可靠性等級、期望的數(shù)據(jù)傳輸率、以及對事務等待時間(latency)的限制。
緊接著物理通信鏈路110的是由SerDes模塊實現(xiàn)的協(xié)議層,即,“信令協(xié)議”。發(fā)送設備中的SerDes模塊每次一個字符地接受數(shù)據(jù)流。所述字符可以是字節(jié)、字或者二進制數(shù)據(jù)的某個其他任意的固定長度片段。數(shù)據(jù)流包括用于糾錯的成幀(framing)和冗余,并且可能進一步包括用于將定時信息嵌入到數(shù)據(jù)流中的信道編碼。SerDes模塊將數(shù)據(jù)流轉(zhuǎn)換為傳輸比特流,所述傳輸比特流作為經(jīng)調(diào)制的信號跨物理鏈路被傳送。
接收設備中的SerDes模塊接收經(jīng)調(diào)制信號的潛在受損的版本,下文中稱之為接收信號。SerDes模塊從該接收信號導出接收比特流并且將接收比特流轉(zhuǎn)換為對應的數(shù)據(jù)流,供由接收設備的實現(xiàn)更高協(xié)議層的其他部件處理。
如在背景技術(shù)中所提及,此分層式方式可能在評估SerDes模塊的性能時產(chǎn)生困難,進而當問題在通信鏈路中產(chǎn)生時可能使故障查找過程復雜化。
附圖2示出經(jīng)由物理通信鏈路110耦合的說明性第一設備201和說明性第二設備202的多個部分。在第一設備201中,多路復用器204將比特流供應至驅(qū)動器206,所述驅(qū)動器206將比特流轉(zhuǎn)換為經(jīng)調(diào)制的光、電或電磁信號以便跨物理通信鏈路110傳輸?;谡{(diào)試信號的狀態(tài),多路復用器204在以下兩者之間進行選擇:根據(jù)通信協(xié)議層次結(jié)構(gòu)中的較高層而準備的傳輸流(“普通”模式);以及預先確定的比特流(“調(diào)試”模式)。在示出的實施例中,由偽隨機二進制序列(PRBS)生成器208供應該預先確定的比特流。此類PRBS生成器在文獻中是已知的,并且被高效地實現(xiàn)為配置成用于產(chǎn)生最大長度序列(即,對于m-比特移位寄存器,長度2m-1的序列)的線性-反饋移位寄存器。
由于物理通信鏈路110將經(jīng)調(diào)制的信號傳輸?shù)降诙O備202,因此它除了引入依賴于頻率的衰減和相位延遲之外,還引入噪聲。檢測器和/或低噪聲放大器210被耦合到物理通信鏈路110,從而提供模擬電氣形式的接收信號。反混疊(anti-aliasing)濾波器212以及模-數(shù)轉(zhuǎn)換器214將模擬接收信號轉(zhuǎn)換為數(shù)字形式。(在模擬接收機的實施例中,部件212被省略,并且比特流可在模擬域中被恢復。)在數(shù)字域中,接收信號可由數(shù)字濾波器216均衡化,并且由解調(diào)器218解調(diào)為接收比特流。解調(diào)器218可采取例如以下形式:比較器、決定反饋均衡器或最大似然序列估計器。定時恢復模塊220可基于數(shù)字濾波器216和解調(diào)器218的輸出來生成用于模-數(shù)轉(zhuǎn)換器214的樣本時鐘。自適應增益控制濾波器22可提供反饋信號,以便于基于模-數(shù)轉(zhuǎn)換器214的輸出來控制低噪聲放大器210的增益。
注意,比特流典型地在SerDes模塊中被并行化,使得示出的接收比特流可以在并行總線上攜帶。
對于雙向通信,第一和第二設備中的每一個設備將具有用于發(fā)送經(jīng)調(diào)制的信號的部件以及用于解調(diào)所接收信號的部件。在物理鏈路110包括多個通信通道的情況下,示出的部件可能被復制用于每一個通道。注意,部件210-222僅示出一個接收鏈(receive chain)實施例。實際的實現(xiàn)方式可能包括附加的復雜性,諸如,近似、并行化、信道訓練以及系數(shù)自適應。由此,期望給第一和第二設備裝配調(diào)試模塊以用于故障查找目的。
調(diào)試模塊優(yōu)選地被設計為用于利用或不利用FEC來促進對通信鏈路的性能分析。圖3示出調(diào)試接口302,此調(diào)試接口302耦合至說明性調(diào)試模塊部件306-330,所述說明性調(diào)試模塊部件306-330被嵌入在多個通信通道304中的每一個的接收機電路中。經(jīng)由調(diào)試接口302,外部測試器能夠設置調(diào)試模塊中的寄存器,從而控制電路的操作并檢索信號狀態(tài)以及例如當滿足某些觸發(fā)條件時可捕獲的其他測量。
可利用本地PRBS生成器306來生成預定比特流的本地副本。調(diào)試模塊可使用各種技術(shù)將本地生成器306同步至遠程生成器208。例如,在PRBS生成器采用具有線性反饋的m-比特移位寄存器的情況下,可通過向移位寄存器加載來自接收比特流的m個連續(xù)的比特來實現(xiàn)同步。只要這些比特是正確的,本地生成器306就將產(chǎn)生預定比特流的本地副本。如果針對后續(xù)幀測量的誤差率超過閾值(例如,10-1),則同步嘗試可被視為失敗,并且重復同步過程直到測量誤差率落入到低于閾值為止。
接收比特流和預定比特流的本地副本以及任何其他期望的診斷信號(例如,在定時恢復模塊中的相位誤差)通過對應的延時緩沖器308,從而為生成觸發(fā)信號提供充足的機會。如果觸發(fā)信號發(fā)生,則調(diào)試存儲器310捕獲接收比特流,預定比特流的本地副本以及其他診斷信號。通過調(diào)試接口302設置多路復用器330,以便將(來自檢測器320的)碼元誤差信號或來自另一源的誤差條件信號選為將用作數(shù)據(jù)捕獲信號的觸發(fā)信號。如同觸發(fā)信號那樣,每一個觸發(fā)事件捕獲的數(shù)據(jù)的量可也可以是可配置參數(shù),此可配置參數(shù)經(jīng)由調(diào)試接口302被設置為寄存器值。調(diào)試接口302進一步警告測試器,使得被捕獲的數(shù)據(jù)能夠由測試器檢索,以便進行基于軟件的分析。
比較器312將接收比特流與預定比特流的本地副本比較,從而每當在比特流之間存在失配時就斷言誤差信號。在比特流被攜帶在并行總線上的情況下,比較器312表示一組比較器,每一個比較器都可操作用于將來自接收比特流總線的比特線與來自預定比特流總線的相應的比特線進行比較。
當斷言了調(diào)試信號時,比特計數(shù)器314對接收比特流中的比特進行計數(shù),從而生成門控信號316以便任選地將交織考慮在內(nèi)。對于碼元中的每一個比特斷言門控信號316,并且對于碼元跨度內(nèi)可能發(fā)生的其他比特解除斷言門控信號316。比特計數(shù)器進一步生成碼元邊界信號322以及幀邊界信號326。交織程度(即,多個碼元比特之間的其他比特的數(shù)量),碼元長度(即,每個碼元的比特數(shù)量)以及幀長度(即,每一個幀的碼元數(shù)量)各自都是優(yōu)選地經(jīng)由調(diào)試接口302可配置的。
上文參考的交織可以采取各種形式,包括來自跨多個通信通道的多個FEC編碼器的FEC編碼的數(shù)據(jù)流的交織。用于每一個通道的門控信號316可經(jīng)設置以僅選擇那個通道中源自所選擇的FEC編碼器的碼元。當當為每一個通道聚集的誤差統(tǒng)計被合并在一起時,盡管所選擇的FEC編碼器使其經(jīng)編碼的碼元跨多個通信通道分布,但是可評估所選擇的FEC編碼器的性能。
“AND”(“與”)邏輯門318將門控信號316與來自比較器312的誤差信號組合以形成經(jīng)門控的誤差信號,所述經(jīng)門控的誤差信號在誤差存在于所選擇的碼元的比特中時被斷言。誤差檢測器320接收經(jīng)門控的誤差信號,從此經(jīng)門控的誤差信號中導出碼元誤差信號,每當在碼元的比特中的任何比特中檢測到誤差,碼元誤差信號就被斷言。對于串行比特流,誤差檢測器320可實現(xiàn)為S-R觸發(fā)器(S-R flip flop),當經(jīng)門控的誤差信號被斷言時,所述S-R觸發(fā)器被置位,并且在新的碼元開始之前,所述S-R觸發(fā)器由碼元邊界信號322重置。對于并行化的比特流,可采用一組OR(“或”)門來合成來自并行的經(jīng)門控的誤差信號的碼元誤差信號。在一些實施例中,碼元邊界可以是固定的,例如,并行的接收比特流的每一個循環(huán)被假定為表示一個碼元。
碼元誤差計數(shù)器324對每一幀中檢測到的碼元誤差的數(shù)量進行計數(shù)。當碼元邊界信號322被斷言時,如果碼元誤差信號被斷言或以其他方式保持相同,則碼元誤差計數(shù)器324遞增。在新的幀開始之前,幀邊界信號326重置計數(shù)器324。來自計數(shù)器324的碼元誤差計數(shù)用于:當幀邊界信號326被斷言時,遞增誤差柱狀圖模塊328中的寄存器。在一些實施例中,誤差柱狀圖模塊328包括十五個寄存器,每一個寄存器對應于幀中的0、1、2、3、…、13或者14個碼元誤差中的一個。每當誤差計數(shù)超過幀中14個碼元誤差時,可遞增第十六個寄存器。以這種方式,柱狀圖模塊對具有對應數(shù)量的碼元誤差的幀的數(shù)量進行計數(shù)。優(yōu)選地遞增寄存器而無需反轉(zhuǎn)(rollover)。寄存器內(nèi)容優(yōu)選地是可檢索的以便經(jīng)由調(diào)試接口302進行軟件分析。
圖4示出說明性碼元誤差柱狀圖,所述碼元誤差柱狀圖具有沿水平軸的16個箱體(bin),并且第一個箱體對應于零個碼元誤差,而第十六個箱體對應于15個或更多個碼元誤差。豎直軸示出在經(jīng)修改的對數(shù)刻度(計數(shù)加一的對數(shù))上的每一個箱體中的所計數(shù)的幀的數(shù)量。因此,以箱體2至16的加權(quán)和除以箱體1中的計數(shù)來確定FEC前碼元誤差率(pre-FEC symbol error rate)是可能的。
圖4還示出可校正性閾值T,其通過FEC代碼的選擇來設置。在圖4中,可校正性閾值T是可由FEC在幀中校正的碼元誤差的最大數(shù)量。如果更多的碼元誤差發(fā)生,則幀不能被校正,并且碼元誤差保持未校正,從而潛在地導致數(shù)據(jù)丟失。因此,以高于T+1的箱體的加權(quán)和除以箱體1至T中所計數(shù)的幀的總數(shù)來確定FEC后碼元誤差率(post-FEC symbol error rate)是可能的。
如果設計者認為柱狀圖寄存器將需要過多的芯片區(qū)域,則可校正性閾值T可以供應至調(diào)試模塊,使得其能夠?qū)⒚恳粋€幀的碼元誤差計數(shù)與T比較,并且直接對FEC后碼元誤差和幀丟失計數(shù)進行計數(shù)。也可直接對FEC前碼元誤差率和總幀計數(shù)進行計數(shù)。當調(diào)試模塊具有對可校正性閾值T的訪問權(quán)時,其能夠進一步生成偽-FEC解碼的比特流,所述偽-FEC解碼的比特流具有PRBS數(shù)據(jù)的幀(其中,碼元誤差計數(shù)小于或等于T),并且具有(受損的)接收比特流的幀(其中,碼元誤差計數(shù)超過可校正性閾值)。在此類實施例中,經(jīng)偽解碼的比特流任選地可由調(diào)試存儲器捕獲。
然而,柱狀圖模塊的優(yōu)點在于,它能夠?qū)崿F(xiàn)一系列FEC代碼的性能比較。此外,柱狀圖能夠?qū)崿F(xiàn)待公式化的誤差統(tǒng)計的較好的模型。例如,柱狀圖可揭示誤差傳播傾向或者在接收鏈中的其他不足。
鑒于前述原理和技術(shù),圖5示出用于表征通信鏈路性能的說明性方法。物理通信鏈路將第一設備與第二設備連接(或者,在一些測試情況下,第一設備的發(fā)射機被耦合至“環(huán)回(loopback)”電路中的第一設備的接收機)。在框502中,測試系統(tǒng)將發(fā)射機置于調(diào)試模式,使得此發(fā)射機開始發(fā)送預定的比特流。預定的比特流并入成幀信息,編碼,或者來自通信協(xié)議層次結(jié)構(gòu)的較高層級的任何信息不是必要的。
在框504中,測試系統(tǒng)重置接收機的調(diào)試模塊中的各種計數(shù)器和柱狀圖寄存器。在框506中,測試系統(tǒng)設置針對比特交織的各種參數(shù),柱狀圖箱體寬度,碼元長度,幀長度、用于數(shù)據(jù)捕獲的觸發(fā)器條件以及任何其他合適的參數(shù)。測試系統(tǒng)進一步將本地PRBS生成器與接收比特流同步。
在框508中,測試系統(tǒng)啟用調(diào)試模塊,使得所述調(diào)試模塊開始檢測碼元誤差并對碼元誤差計數(shù),并且累積誤差柱狀圖。為每一個通信通道執(zhí)行框504-508。在框510中,在經(jīng)歷可執(zhí)行有意義的性能分析的足夠的時間之后(例如,在已傳輸至少1013個碼元之后,其中,期望的碼元誤差率為10-12或更小),測試系統(tǒng)為每一個通道收集柱狀圖。在框512中,測試系統(tǒng)從單個通道柱狀圖中導出多通道性能數(shù)據(jù)。在一些實施例中,此類性能數(shù)據(jù)僅是通過對來自單通道的柱狀圖對應箱體求和而獲得的柱狀圖。
在框514中,計算并存儲FEC前和FEC后碼元誤差率。也可導出其他基于統(tǒng)計的性能測量,包括例如,分組丟失率(packet loss rate)以及導致失敗分組的平均時間。在框516中,可改變一個或多個測試參數(shù),并且可按需重復框502-514,以便映射出碼元誤差率相對于測試參數(shù)的依賴關(guān)系。此類測試參數(shù)可包括鏈路的物理長度、交織程度、碼元長度、幀長度、可校正性閾值、濾波器訓練策略,等等。
在框518中,測試系統(tǒng)生成性能測量結(jié)果的可視表示,并且將此可視表示顯示給用戶以進行分析。此類性能測試可使用戶能夠判定是否具有接收鏈中具有硬件錯誤、故障的接收信道或應當支持通信協(xié)議層次結(jié)構(gòu)的較高層的操作的有效的物理鏈路。用戶可基于所測量的依賴關(guān)系來選擇合適的通信參數(shù)值,或者可動態(tài)地優(yōu)化該參數(shù)值或調(diào)整參數(shù)值以滿足要求。
一旦完全理解上述公開內(nèi)容,各種修改、等效方案和替代方案對于本領(lǐng)域技術(shù)人員來說將變得顯而易見。所附權(quán)利要求書旨在被解讀為在適用的情況下涵蓋所有此類修改、等效方案和替代方案。