高速FPGA系統(tǒng)的信號(hào)完整性測(cè)試和分析
1. 引言
隨著FPGA的設(shè)計(jì)速度和容量的明顯增長(zhǎng),當(dāng)前流行的FPGA芯片都提供高速總線,例如DDR內(nèi)存總線,PCI-X總線、SPI總線;針對(duì)超高速的數(shù)據(jù)傳輸,F(xiàn)PGA通過集成SerDes提供高速串行IO,支持各種諸如PCI-E、GBE、XAUI等高速串行總線協(xié)議,為各種不同標(biāo)準(zhǔn)的高速傳輸提供極大的靈活性。典型的高速FPGA器件提供的每一條物理鏈路的速度從200Mbps到高達(dá)10Gbps,高速IO的測(cè)試和驗(yàn)證更成為傳統(tǒng)專注于FPGA內(nèi)部邏輯設(shè)計(jì)的設(shè)計(jì)人員面臨的巨大挑戰(zhàn)。這些挑戰(zhàn)使設(shè)計(jì)人員非常容易會(huì)把絕大部分設(shè)計(jì)周期時(shí)間放在調(diào)試和檢驗(yàn)設(shè)計(jì)上。
為了加速對(duì)于FPGA中高速并行和串行總線的調(diào)試和驗(yàn)證,它需要使用新的高速信號(hào)完整性測(cè)試工具和分析方法。本文根據(jù)當(dāng)前FPGA的高速總線測(cè)試和分析,提供了最新的方法和工具。
圖1是一個(gè)典型FPGA的提供的各種高速接口。對(duì)于這些速度從200M到高達(dá)10G的高速總線,信號(hào)完整性的測(cè)試和分析是保證設(shè)計(jì)成功的基礎(chǔ)和關(guān)鍵。
圖1 典型FPGA的提供的各種高速接口
2. 高速串行總線眼圖測(cè)試
對(duì)于采用內(nèi)嵌SERDES電路的FPGA芯片,其高速串行信號(hào)進(jìn)行測(cè)試和驗(yàn)證,最基本的工具是通過示波器進(jìn)行對(duì)其眼圖測(cè)試。因?yàn)檠蹐D能夠非常直觀的反映一條被測(cè)信號(hào)路徑上的整體信號(hào)質(zhì)量問題,包括信號(hào)的抖動(dòng)量大?。ㄑ蹖挘┮约胺鹊拇笮。ㄑ鄹撸┑戎匾畔?。圖2是一個(gè)高速數(shù)據(jù)信號(hào)的眼圖形成的過程。
圖2 眼圖的形成過程
從眼圖的形成過程可以看出,一個(gè)NRZ編碼的高速數(shù)據(jù)無論傳輸何種碼流,都可以看作一個(gè)重復(fù)信號(hào),經(jīng)過一定時(shí)間和樣本數(shù)的累計(jì),它反映整個(gè)傳輸鏈路上的總體信號(hào)質(zhì)量。
3. 選擇合適的眼圖測(cè)試工具
3.1 示波器帶寬的要求
示波器是進(jìn)行高速串行信號(hào)眼圖測(cè)試的首選工具。無論是用高速實(shí)時(shí)示波器還是采樣示波器(Sampling Scope)得到眼圖,帶寬是對(duì)示波器的基本要求。以一個(gè)NRZ編碼的高速串行總線為例,它理想的波形是一個(gè)方波信號(hào),方波信號(hào)是由它的基波(正弦波)和奇次諧波(3次,5次,7次…)組成。根據(jù)信號(hào)的傳輸速率和上升時(shí)間,選擇盡量高帶寬和最快上升時(shí)間的示波器,這樣測(cè)試結(jié)果保留更多的諧波分量,構(gòu)建高精度的眼圖測(cè)試結(jié)果。
示波器帶寬反映了對(duì)被測(cè)信號(hào)幅度上的衰減,而示波器上升時(shí)間決定了對(duì)被測(cè)信號(hào)上升時(shí)間測(cè)試的誤差。經(jīng)典的示波器帶寬和上升時(shí)間的關(guān)系為:帶寬×上升時(shí)間=0.35-0.45,0.35-0.45為常系數(shù)。每一個(gè)高性能示波器除了提供帶寬的指標(biāo)外,還會(huì)給出上升時(shí)間,表征其對(duì)階躍信號(hào)的測(cè)試能力和精度。示波器測(cè)試結(jié)果的經(jīng)驗(yàn)公式為:
高速串行數(shù)據(jù)(NRZ編碼)提供一般為數(shù)據(jù)率,其最高的基頻為比特率的一半。即假設(shè)給定一個(gè)NRZ編碼的串行信號(hào),碼型為時(shí)鐘碼型(即傳輸?shù)臄?shù)據(jù)為1-0-1-0-1),從頻域的角度觀測(cè)該信號(hào),它成為一個(gè)基波為數(shù)據(jù)率一半的方波信號(hào),這個(gè)時(shí)鐘碼型是數(shù)據(jù)變化最快的情況。以泰克TDS6154C 大于15GHz帶寬的實(shí)時(shí)示波器為例,它可以測(cè)試保留6.25Gb/s (2×XAUI)信號(hào)的五次諧波,以及10Gb/s (XFI)信號(hào)的三次諧波。下表列出了不同的高速串行總線在不同測(cè)試精度要求下對(duì)示波器帶寬的要求。
當(dāng)示波器系統(tǒng)不能提供足夠的系統(tǒng)帶寬時(shí),它會(huì)衰減對(duì)高速信號(hào)的高次諧波分量。測(cè)試結(jié)果除了引入由于示波器帶寬不足導(dǎo)致的碼間干擾(ISI),電壓幅度的異常(過沖和衰減),還會(huì)導(dǎo)致抖動(dòng)量過大,最終眼圖模板測(cè)試的錯(cuò)誤或者測(cè)試容限的減小,無法真正反映信號(hào)完整性問題。圖3 分別是泰克TDS6154C 15GHz帶寬和傳統(tǒng)DSO 13GHz帶寬實(shí)時(shí)示波器對(duì)一個(gè)FPGA器件提供的的6.25Gb/s高速數(shù)據(jù)進(jìn)行的眼圖測(cè)試結(jié)果比較。圖中上半部分顯示的眼圖有很好的對(duì)稱性,上升和下降時(shí)間更快,信號(hào)抖動(dòng)量很小,真實(shí)的反映信號(hào)的真實(shí)特性。
由于13GHZ的DSO示波器系統(tǒng)帶寬不足,無法捕獲信號(hào)的五次諧波分量,圖中下半部分的測(cè)試結(jié)果反映出眼圖上升時(shí)間過慢;同時(shí)測(cè)試的眼圖還存在明顯的過沖和震鈴,測(cè)試儀器導(dǎo)致的抖動(dòng)也掩蓋的信號(hào)的真正抖動(dòng)大小。
圖3 高速串行數(shù)據(jù)測(cè)試比較(上圖為泰克TDS6154C示波器測(cè)試結(jié)果)
3.2 示波器高速采集內(nèi)存的要求
當(dāng)使用實(shí)時(shí)示波器對(duì)于FPGA信號(hào)進(jìn)行信號(hào)完整性測(cè)試時(shí),利用一次采集的數(shù)據(jù)構(gòu)建眼圖,所以除了示波器硬件帶寬和高速采樣率外,采集的數(shù)據(jù)量的大小非常關(guān)鍵,這樣對(duì)示波器的高速采集內(nèi)存就有了更高的要求。下圖是在高采樣率下,不同高速內(nèi)存容量下一次捕獲的數(shù)據(jù)量的大小。
當(dāng)對(duì)FPGA的高速信號(hào)進(jìn)行抖動(dòng)測(cè)試時(shí),高速內(nèi)存長(zhǎng)度不僅決定了一次抖動(dòng)測(cè)試中樣本數(shù)的多少,還決定了示波器能夠測(cè)試的抖動(dòng)頻率范圍。針對(duì)信號(hào)中的各種低頻抖動(dòng)干擾源,高速采集內(nèi)存長(zhǎng)度是示波器進(jìn)行低頻抖動(dòng)測(cè)試的關(guān)鍵。下表顯示的為20GSa/s高采樣率下,不同內(nèi)存長(zhǎng)度分析抖動(dòng)頻率范圍的大小。
傳統(tǒng)高性能示波器設(shè)計(jì)構(gòu)架采用將高速采集前端(多達(dá)80顆ADC)和高速內(nèi)存在物理上用一顆SOC芯片實(shí)現(xiàn),由于有太多功能在一個(gè)芯片內(nèi)部實(shí)現(xiàn),導(dǎo)致片內(nèi)高速內(nèi)存容量的限制(在20GS/s下小于1M),無論是對(duì)于高速串行數(shù)據(jù)的眼圖測(cè)試還是對(duì)于時(shí)鐘信號(hào)的抖動(dòng)測(cè)試,都存在很大的限制,并且日后無法對(duì)內(nèi)存擴(kuò)展升級(jí)。
為了彌補(bǔ)這種設(shè)計(jì)結(jié)構(gòu)的缺陷,這類示波器會(huì)采用在芯片外部添加低速存儲(chǔ)器彌補(bǔ)片內(nèi)高速內(nèi)存的限制,但外部存儲(chǔ)器不能在高采樣率下工作,一般只能提供2GS/s,樣點(diǎn)間隔500ps,由于絕大多數(shù)信號(hào)邊沿速度都在皮秒級(jí),2GS/s無法在信號(hào)邊沿采集足夠樣點(diǎn),甚至出現(xiàn)會(huì)出現(xiàn)混疊,所以它無法提供有意義的眼圖和抖動(dòng)測(cè)試結(jié)果。
泰克TDS6154C高速實(shí)時(shí)示波器采用硅鍺(SiGe)半導(dǎo)體集成采集前端,并使用獨(dú)立的高速存儲(chǔ)器,這樣就不受內(nèi)存長(zhǎng)度的限制,并且它同時(shí)支持最大采樣率和存儲(chǔ)長(zhǎng)度。
4. 抖動(dòng)、噪聲和BER測(cè)試和分析
針對(duì)FPGA中不斷增長(zhǎng)的串行數(shù)據(jù)傳輸速率,設(shè)計(jì)人員不僅進(jìn)行眼圖測(cè)試,還需要一套先進(jìn)的測(cè)試和分析工具幫助他們更好地理解和改善他們?cè)O(shè)計(jì)方案的信號(hào)完整性。
針對(duì)FPGA提供的各種高速串行信號(hào),傳統(tǒng)的采樣示波器配合抖動(dòng)分析軟件針對(duì)FPGA中的高速串行信號(hào)能夠進(jìn)行抖動(dòng)的測(cè)試,測(cè)試結(jié)果的分離,后期的抖動(dòng)原因的定位和分析,以及水平時(shí)間分量上的BER分析。但是,對(duì)于導(dǎo)致BER的另一個(gè)主要原因,即串行信號(hào)中的噪聲分量,沒有一個(gè)徹底的測(cè)試和分析方法。圖4顯示了對(duì)于一個(gè)高速串行信號(hào)的抖動(dòng)分量和噪聲分量影響B(tài)ER的過程。
圖4 抖動(dòng)分量和噪聲分量的分解
從事FPGA器件的設(shè)計(jì)和應(yīng)用,以及背板的設(shè)計(jì)和制造的公司在開發(fā)基于超高速串行數(shù)據(jù)標(biāo)準(zhǔn)的產(chǎn)品時(shí)需要最高精度的抖動(dòng)分析,噪聲分析以及完整的BER眼圖信息。泰克CSA/TDS8200系列采樣示波器 (Sampling Oscilloscope)測(cè)試眼圖時(shí),除了傳統(tǒng)的眼圖和抖動(dòng)測(cè)試外,泰克80SJNB抖動(dòng)和噪聲分析軟件提供了對(duì)于設(shè)計(jì)人員和調(diào)試人員更有價(jià)值的抖動(dòng)、噪聲、BER分析功能。
80SJNB不僅能夠得到高精度的眼圖測(cè)試結(jié)果,還能夠通過分隔抖動(dòng)和噪聲,加快了識(shí)別水平和垂直眼圖閉合原因的速度。由于它能夠以獨(dú)特的視角查看抖動(dòng)和噪聲的構(gòu)成成分,80SJNB可以高度精確全面地推斷BER及分析眼圖輪廓。在把抖動(dòng)、噪聲和BER分析與8000系列的模塊化靈活性、完善的性能和信號(hào)保真度結(jié)合在一起時(shí),您可以獲得理想的下一代高速串行數(shù)據(jù)設(shè)計(jì)檢驗(yàn)和一致性測(cè)試解決方案。下表列出了80SJNB軟件配合泰克CSA/TDS8200系列示波器得到的抖動(dòng)和噪聲分析結(jié)果。
80SJNB軟件除了能夠得到每一個(gè)抖動(dòng)和噪聲分量的精確結(jié)果,針對(duì)設(shè)計(jì)和測(cè)試人員還提供了各種圖形顯示進(jìn)行更細(xì)致的信號(hào)完整性分析。例如,抖動(dòng)和噪聲成分概率分布, 頻譜分布, 數(shù)據(jù)相關(guān)抖動(dòng)和噪聲與位的關(guān)系, 數(shù)據(jù)碼型波形, 抖動(dòng)和噪聲浴缸曲線, BER概率圖, BER輪廓圖, 概率分布眼圖。圖5是得到的分析結(jié)果。
圖5 80SJNB軟件得到的分析結(jié)果
5. 高速并行總線的眼圖測(cè)試
對(duì)于FPGA芯片提供的高速并行總線,由于其數(shù)據(jù)傳送方式并沒有采用內(nèi)嵌時(shí)鐘的方法,時(shí)鐘可以作為觸發(fā)信號(hào),觀測(cè)多路并行總線的眼圖。由于并行總線的通道數(shù)比較多,在示波器中手工測(cè)試多通道的眼圖比較繁瑣,有些傳統(tǒng)邏輯分析儀雖然能夠直接進(jìn)行并行總線的眼圖測(cè)試,但無論是測(cè)試精度和速度都無法和示波器進(jìn)行的標(biāo)準(zhǔn)眼圖測(cè)試相提并論。
除了能夠通過FPGAView對(duì)簡(jiǎn)化FPGA的在線調(diào)試,TLA邏輯分析儀能夠配合TDS示波器對(duì)FPGA外部信號(hào)自動(dòng)進(jìn)行多通道的眼圖測(cè)試和分析,該功能稱為iVerify眼圖測(cè)試,最多可以自動(dòng)的測(cè)試408個(gè)通道的眼圖。
泰克為邏輯分析儀和示波器集成提供了一個(gè)信號(hào)完整性測(cè)試工具包,稱為iLink工具包,分為iConnect,iView,以及iVerify眼圖測(cè)試三個(gè)工具。iVerify是建立在iConnect技術(shù)和iView技術(shù)的基礎(chǔ)上,它能夠自動(dòng)對(duì)多路并行總線進(jìn)行眼圖測(cè)試來徹底驗(yàn)證被測(cè)信號(hào)。結(jié)合iConnect技術(shù),使用一套邏輯分析儀有源探頭進(jìn)行信號(hào)邏輯和模擬的同時(shí)觀測(cè),邏輯分析儀可以將被測(cè)通道分成多組,每一組3個(gè)數(shù)據(jù)通道送入到示波器中進(jìn)行眼圖測(cè)試,示波器的第4個(gè)通道作為外部時(shí)鐘;采用iView技術(shù),邏輯分析儀可以自動(dòng)的將每一次送入示波器的3個(gè)數(shù)據(jù)信號(hào)的眼圖測(cè)試數(shù)據(jù)會(huì)傳到邏輯分析儀中,這樣邏輯分析儀就可以再選擇另外一組3個(gè)通道進(jìn)行測(cè)試,對(duì)于復(fù)雜的高速總線,可以一次測(cè)試408個(gè)數(shù)據(jù)通道。最后,iVerify技術(shù)通過邏輯分析儀將最多408個(gè)數(shù)據(jù)信號(hào)的眼圖測(cè)試數(shù)據(jù)疊加顯示出來,徹底驗(yàn)證總線中出現(xiàn)的信號(hào)完整性問題。圖6是在TLA邏輯分析儀上自動(dòng)累計(jì)的多個(gè)通道眼圖數(shù)據(jù)的色溫顯示。
圖6 TLA邏輯分析儀上顯示多通道眼圖測(cè)試結(jié)果
6. 小結(jié)
對(duì)于FPGA中的高速串行和并行IO信號(hào),需要根據(jù)被測(cè)信號(hào)特點(diǎn)和速度來選擇合適的測(cè)試和分析工具。當(dāng)測(cè)試信號(hào)完整性,希望得到最精確的上升時(shí)間,下降時(shí)間,信號(hào)過沖和震鈴等參數(shù),帶寬是首要選擇。某種意義上帶寬越高,測(cè)試精度越高。對(duì)于實(shí)時(shí)示波器而言,高速采集內(nèi)存是眼圖和抖動(dòng)等信號(hào)完整性測(cè)試的關(guān)鍵。對(duì)于采樣示波器,通過CSA/TDS8200配合80SJNB抖動(dòng)和噪聲分析軟件,不僅可以精確的測(cè)量高速串行信號(hào)的抖動(dòng)和噪聲,并且能夠根據(jù)測(cè)量結(jié)果進(jìn)行精確的抖動(dòng)、噪聲中每一個(gè)分量的分離,和系統(tǒng)的BER相關(guān),最終為信號(hào)完整性驗(yàn)證人員提供有價(jià)值的信息。當(dāng)測(cè)試高速時(shí)鐘或數(shù)據(jù)抖動(dòng)時(shí),泰克兩種示波器都配備業(yè)內(nèi)推薦的抖動(dòng)測(cè)試和分析軟件,幫助設(shè)計(jì)人員得到抖動(dòng)結(jié)果,分析抖動(dòng)產(chǎn)生的原因,最終得到高可靠性的系統(tǒng)。