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