1、引言
在上一篇《基于PXIe的單板多通道同步機(jī)制研究》中,我們重點(diǎn)討論了在同一塊PXIe數(shù)據(jù)采集卡內(nèi)部,如何通過(guò)統(tǒng)一時(shí)間基準(zhǔn)、統(tǒng)一采樣時(shí)鐘與統(tǒng)一啟動(dòng)觸發(fā),實(shí)現(xiàn)各通道在時(shí)間軸上的嚴(yán)格對(duì)齊。然而在實(shí)際工程項(xiàng)目中,單塊采集卡所能提供的通道數(shù)量往往有限。隨著測(cè)試規(guī)模和復(fù)雜度的不斷提升,用戶越來(lái)越需要將多塊甚至十余塊 PXIe 采集卡同時(shí)投入運(yùn)行,以獲得上百乃至上千通道的同步測(cè)量能力;在一些復(fù)雜系統(tǒng)中,采集卡還可能分布在同一機(jī)箱內(nèi)、多個(gè)機(jī)箱之間甚至不同機(jī)柜中,形成大規(guī)模多點(diǎn)同步采集系統(tǒng)。在這種情況下,如果僅在每塊采集卡內(nèi)部維持通道同步,而不同采集卡之間缺乏統(tǒng)一的時(shí)間基準(zhǔn)和觸發(fā)機(jī)制,那么從系統(tǒng)視角看,整個(gè)多通道測(cè)量仍然是“碎片化”的,難以支撐嚴(yán)謹(jǐn)?shù)南到y(tǒng)級(jí)分析。
本文以PXIe平臺(tái)為基礎(chǔ),聚焦同一PXIe機(jī)箱內(nèi)多塊采集卡之間的通道同步問(wèn)題,首先介紹多板卡同步的典型應(yīng)用場(chǎng)景及面臨的挑戰(zhàn),然后分析若只保證單卡同步、板卡之間異步可能引發(fā)的系統(tǒng)級(jí)問(wèn)題,最后結(jié)合PXIe背板資源,對(duì)多板卡同步的基本原理和常見(jiàn)實(shí)現(xiàn)方案進(jìn)行論述??鐧C(jī)箱、跨機(jī)柜的分布式時(shí)間同步問(wèn)題將在后續(xù)文章中展開(kāi)。

2、多板卡同步的典型應(yīng)用與挑戰(zhàn)
在工程實(shí)踐中,多板卡同步通常出現(xiàn)于幾類典型應(yīng)用場(chǎng)景。大規(guī)模結(jié)構(gòu)振動(dòng)與模態(tài)測(cè)試就是其中之一:在大型機(jī)械結(jié)構(gòu)、整車、機(jī)車、風(fēng)機(jī)葉片或橋梁等試驗(yàn)中,往往需要布設(shè)數(shù)量眾多的加速度、應(yīng)變與位移傳感器,單塊采集卡難以滿足通道數(shù)量需求,因此必須依靠多塊振動(dòng)采集卡協(xié)同工作。類似的情況也出現(xiàn)在高通道聲學(xué)陣列與噪聲測(cè)試中,用于聲學(xué)成像、波束形成或聲場(chǎng)重建的大型麥克風(fēng)陣列,對(duì)通道數(shù)目和相位一致性有很高要求,多塊聲學(xué)采集卡之間的采樣時(shí)刻與啟動(dòng)時(shí)間必須嚴(yán)格對(duì)齊。另一方面,多物理量聯(lián)合測(cè)試系統(tǒng)也高度依賴多板卡同步,例如在同一PXIe機(jī)箱內(nèi)集成電壓、電流、溫度、振動(dòng)和聲學(xué)等多種采集卡,對(duì)電機(jī)驅(qū)動(dòng)、電力電子裝置或機(jī)頂盒整機(jī)進(jìn)行多物理場(chǎng)聯(lián)合測(cè)試時(shí),不同類型采集卡之間必須共享統(tǒng)一時(shí)間軸,才能保證關(guān)聯(lián)分析、因果分析和事件重建的可靠性。對(duì)于圍繞 A2B 等總線協(xié)議構(gòu)建的多節(jié)點(diǎn)并行分析系統(tǒng),負(fù)責(zé)總線波形、協(xié)議事件以及環(huán)境信號(hào)的采集卡更需要保持一致的時(shí)間基準(zhǔn)與觸發(fā)邊界,才能把某一幀錯(cuò)誤、某一次節(jié)點(diǎn)重連行為與供電波動(dòng)、振動(dòng)沖擊等物理因素準(zhǔn)確對(duì)應(yīng)起來(lái)。
相比單板同步,多板卡同步在工程實(shí)現(xiàn)上面臨更大挑戰(zhàn)。首先,時(shí)鐘分發(fā)路徑明顯變長(zhǎng),參考時(shí)鐘從機(jī)箱或定時(shí)模塊傳輸?shù)矫恳粔K采集卡,需要穿越背板走線甚至前面板電纜,時(shí)延和抖動(dòng)都會(huì)累積放大,對(duì)同步精度提出更高要求。其次,觸發(fā)拓?fù)涓訌?fù)雜,多塊采集卡可能分布在不同插槽位置,監(jiān)聽(tīng)不同PXI_TRIG 線或星形觸發(fā)資源,如何在總線觸發(fā)與星形觸發(fā)之間做出合適選擇、盡量減小觸發(fā)skew,是系統(tǒng)設(shè)計(jì)的重要考慮。再次,采樣時(shí)鐘來(lái)源也更加多樣,有的采集卡根據(jù)機(jī)箱10MHz參考時(shí)鐘本地合成采樣時(shí)鐘,有的采集卡直接接收外部Sample Clock,各種方式混用時(shí)需要整體規(guī)劃,避免出現(xiàn)頻率名義相同但相位關(guān)系不可控的情況。最后,在配置和管理層面,工程師需要在軟件中對(duì)多塊采集卡的時(shí)鐘源、觸發(fā)源和分頻比進(jìn)行統(tǒng)一配置,并建立一致的時(shí)間坐標(biāo)系,否則就可能出現(xiàn)“界面參數(shù)看起來(lái)一樣,但各板卡實(shí)際并未真正同步”的隱性問(wèn)題。

3、單卡同步,多卡異步帶來(lái)的問(wèn)題
如果系統(tǒng)設(shè)計(jì)中只保證了“每塊采集卡內(nèi)部通道是同步的”,而沒(méi)有對(duì)采集卡之間的時(shí)鐘和觸發(fā)進(jìn)行統(tǒng)一管理,那么從整體上看,系統(tǒng)會(huì)面臨多方面風(fēng)險(xiǎn)。其一是在系統(tǒng)級(jí)相位和傳遞函數(shù)分析中容易產(chǎn)生顯著誤差。在結(jié)構(gòu)振動(dòng)、聲學(xué)陣列、電機(jī)驅(qū)動(dòng)等測(cè)試場(chǎng)景中,經(jīng)常需要計(jì)算跨不同板卡通道之間的傳遞函數(shù)和相位響應(yīng)、互相關(guān)與相干函數(shù),甚至進(jìn)一步提取模態(tài)參數(shù)或波數(shù)向量。如果兩塊采集卡之間存在固定時(shí)間偏移 Δt,那么在頻率 f 處就會(huì)帶來(lái)附加相位誤差 Δφ≈2πf·Δt,高頻部分的誤差會(huì)被放大,表現(xiàn)為傳遞函數(shù)相位曲線整體偏移、模態(tài)分析結(jié)果偏離真實(shí)值,以及聲學(xué)陣列中波束指向性變差、主瓣展寬或指向錯(cuò)誤等問(wèn)題。
其二是在事件時(shí)序與因果關(guān)系分析中容易做出錯(cuò)誤判斷。在多物理量聯(lián)合測(cè)試系統(tǒng)里,工程師往往需要回答類似問(wèn)題:“某一路電流浪涌是否先于保護(hù)動(dòng)作發(fā)生?”、“A2B 總線的重連事件與車身振動(dòng)峰值之間的時(shí)間關(guān)系如何?”如果這些信號(hào)分布在不同采集卡上,而采集卡之間沒(méi)有統(tǒng)一時(shí)間基準(zhǔn),那么采樣數(shù)據(jù)在時(shí)間軸上的相對(duì)偏移會(huì)導(dǎo)致事件先后順序判斷錯(cuò)誤,事件間時(shí)間間隔與標(biāo)準(zhǔn)或規(guī)范中的限值不再可比,復(fù)雜故障過(guò)程或多事件關(guān)聯(lián)關(guān)系也難以被準(zhǔn)確復(fù)現(xiàn)。

其三是長(zhǎng)時(shí)間運(yùn)行條件下跨卡時(shí)間漂移問(wèn)題更加突出。如果每塊采集卡都依賴各自的板載時(shí)鐘,哪怕出廠指標(biāo)已經(jīng)很高,其頻率存在的微小差異在長(zhǎng)時(shí)間測(cè)試中仍會(huì)累積成明顯的時(shí)間漂移。起初在幾秒甚至幾十秒的時(shí)間尺度上,跨卡通道波形仍能大致對(duì)齊,但當(dāng)測(cè)試持續(xù)到幾十分鐘或數(shù)小時(shí)后,通道之間的時(shí)間軸已經(jīng)明顯錯(cuò)位。對(duì)于耐久性測(cè)試、環(huán)境可靠性試驗(yàn)等要求長(zhǎng)時(shí)間連續(xù)運(yùn)行的應(yīng)用,這意味著跨卡采集的溫度、功耗、振動(dòng)等趨勢(shì)無(wú)法在統(tǒng)一時(shí)間軸上進(jìn)行長(zhǎng)期關(guān)聯(lián),事后即便嘗試通過(guò)插值、重采樣等手段對(duì)齊,也往往只能在局部區(qū)間取得有限效果,很難覆蓋整個(gè)測(cè)試過(guò)程。
4、基于 PXIe 背板資源的多板卡同步基本原理
PXIe標(biāo)準(zhǔn)在機(jī)箱背板上為時(shí)鐘與觸發(fā)信號(hào)預(yù)留了豐富的硬件資源,使得多板卡同步可以在機(jī)箱內(nèi)部以較為自然的方式實(shí)現(xiàn)。從原理上看,可以概括為三個(gè)層面:首先是統(tǒng)一參考時(shí)鐘,其次是統(tǒng)一采樣時(shí)鐘,最后是統(tǒng)一啟動(dòng)觸發(fā)。典型PXIe機(jī)箱會(huì)在背板上提供10 MHz參考時(shí)鐘PXI_CLK10,以單端形式分發(fā)到所有插槽,用于傳統(tǒng)PXI模塊或作為鎖相環(huán)(PLL)的參考源;同時(shí)還會(huì)提供一組差分參考時(shí)鐘,例如100 MHz差分時(shí)鐘,以低抖動(dòng)差分形式作為高速模塊的時(shí)間基準(zhǔn)。多板卡同步的第一步就是讓各采集卡的時(shí)間基準(zhǔn)鎖定到同一參考時(shí)鐘。通常,每塊采集卡內(nèi)部的時(shí)鐘模塊會(huì)通過(guò)PLL鎖定到PXI_CLK10或PXIe差分時(shí)鐘,也可以由專用定時(shí)與同步模塊向背板注入高穩(wěn)定度參考時(shí)鐘,再由各采集卡進(jìn)行鎖定。一旦所有采集卡都使用同一參考時(shí)鐘作為“母鐘”,便可以在此基礎(chǔ)上合成各自的采樣時(shí)鐘,同時(shí)避免長(zhǎng)時(shí)間運(yùn)行中的相對(duì)漂移。
在統(tǒng)一參考時(shí)鐘之后,多板卡之間還需要進(jìn)一步統(tǒng)一采樣時(shí)鐘。常見(jiàn)的實(shí)現(xiàn)方式有幾種:有的系統(tǒng)選擇讓各采集卡在鎖定同一參考時(shí)鐘的前提下,通過(guò)相同的分頻或倍頻比在本地合成采樣時(shí)鐘。這種方式布線簡(jiǎn)單,只要PLL設(shè)計(jì)合理,采樣時(shí)鐘之間的頻率和相位關(guān)系就能保持高度一致。還有一些系統(tǒng)則選定一塊采集卡作為采樣時(shí)鐘的“主卡”,由主卡合成Sample Clock,并通過(guò)背板專用線路(例如PXIe_DSTARA/B)或前面板同軸電纜,將該采樣時(shí)鐘分發(fā)給其他從卡;從卡將接收到的Sample Clock作為自身采樣時(shí)鐘,從而在物理上保證采樣時(shí)刻的一致性。對(duì)于對(duì)同步精度要求更高、通道規(guī)模更大的系統(tǒng),也可以使用專用的 Timing & Synchronization模塊作為時(shí)鐘母版,由定時(shí)模塊直接向多塊采集卡提供統(tǒng)一的Sample Clock。PXIe 中的差分星形時(shí)鐘(如PXIe_DSTARA)在這一過(guò)程中發(fā)揮了重要作用,它提供了低skew、低抖動(dòng)的時(shí)鐘分發(fā)路徑,是實(shí)現(xiàn)高精度多板卡同步的重要物理基礎(chǔ)。
在統(tǒng)一采樣時(shí)鐘之后,還必須確保所有采集卡在同一“起點(diǎn)”開(kāi)始采集,否則即便采樣時(shí)鐘完全一致,時(shí)間軸上仍然會(huì)存在固定偏移。PXIe 背板因此提供了多路觸發(fā)總線與星形觸發(fā)資源,例如PXI_TRIG0~7 可以作為多點(diǎn)共享的觸發(fā)總線,由任意一塊板卡驅(qū)動(dòng),其余板卡監(jiān)聽(tīng),PXI_STAR或PXIe_DSTARB等星形觸發(fā)資源則從定時(shí)槽向各從槽提供等長(zhǎng)或等效長(zhǎng)度的觸發(fā)路徑,有利于減小觸發(fā)skew。在典型的多板卡啟動(dòng)流程中,工程師會(huì)在軟件中將各采集卡的任務(wù)配置為監(jiān)聽(tīng)同一背板觸發(fā)源,如PXI_TRIG0或PXI_STAR,然后在主卡或定時(shí)模塊上產(chǎn)生一次“開(kāi)始采集”觸發(fā),該觸發(fā)通過(guò)背板同時(shí)到達(dá)所有采集卡,各卡在接收到同一觸發(fā)事件時(shí)啟動(dòng)采樣時(shí)鐘并開(kāi)始采樣。如果對(duì)啟動(dòng)同步精度要求很高(例如希望達(dá)到納秒級(jí)別),通常會(huì)優(yōu)先選擇星形觸發(fā)資源而不是普通觸發(fā)總線,以減小不同插槽位置造成的觸發(fā)傳播差異。

5、PXIe 多板卡同步的典型實(shí)現(xiàn)方案
從系統(tǒng)工程的視角出發(fā),基于上述原理可以歸納出幾類常見(jiàn)的多板卡同步實(shí)現(xiàn)方案。較為簡(jiǎn)潔的一種做法是充分利用機(jī)箱參考時(shí)鐘和統(tǒng)一配置機(jī)制:所有采集卡都鎖定到PXI_CLK10 參考時(shí)鐘,軟件端為各卡配置相同的采樣率,由驅(qū)動(dòng)在內(nèi)部根據(jù)統(tǒng)一參考時(shí)鐘自動(dòng)合成采樣時(shí)鐘,并通過(guò)某一路PXI_TRIG 線實(shí)現(xiàn)統(tǒng)一啟動(dòng)。這種方案實(shí)現(xiàn)簡(jiǎn)單、成本較低,適用于同步要求中等、通道數(shù)量在幾十到一百左右的應(yīng)用場(chǎng)景。
當(dāng)測(cè)試規(guī)模進(jìn)一步擴(kuò)大、同步精度要求明顯提高時(shí),更常見(jiàn)的做法是在定時(shí)槽中插入專用的Timing & Synchronization模塊,由該模塊向背板注入高品質(zhì)參考時(shí)鐘和可編程Sample Clock,并通過(guò) PXIe_DSTARA/B與PXI_STAR 等差分星形時(shí)鐘和星形觸發(fā)資源,將時(shí)鐘與觸發(fā)信號(hào)分發(fā)到各采集卡。這種方案在硬件上略微復(fù)雜一些,但可以提供更好的相位一致性和更小的觸發(fā)skew,是大規(guī)模振動(dòng)陣列、聲學(xué)陣列或精密測(cè)量系統(tǒng)普遍采用的方式。
在某些機(jī)箱背板資源受限,或只需對(duì)少數(shù)板卡進(jìn)行局部同步的場(chǎng)合,也可以采用采集卡Master/Slave 配合前面板時(shí)鐘/觸發(fā)的方案。工程師通常會(huì)選定一塊采集卡作為Master,通過(guò)前面板的時(shí)鐘輸出接口將 Sample Clock送往其他采集卡的時(shí)鐘輸入,同時(shí)利用前面板觸發(fā)輸入/輸出構(gòu)建啟動(dòng)觸發(fā)鏈路。這樣,即便背板觸發(fā)資源無(wú)法滿足需求,仍然可以在前面板側(cè)搭建較為靈活的同步拓?fù)?。?shí)際項(xiàng)目中,度緯科技會(huì)根據(jù)用戶的通道規(guī)模、同步精度要求、機(jī)箱配置和成本約束,在上述方案之間進(jìn)行取舍或組合,力求在成本、復(fù)雜度與性能之間取得合理平衡。
度緯科技在長(zhǎng)期工程實(shí)踐中,圍繞PXIe多板卡同步構(gòu)建了完整的軟硬件方案。在硬件層面,我們提供適用于振動(dòng)、聲學(xué)、電機(jī)、電力電子等多場(chǎng)景的PXIe采集卡、定時(shí)模塊與控制器;在軟件層面,通過(guò)統(tǒng)一的測(cè)試平臺(tái)對(duì)時(shí)鐘源、觸發(fā)源和任務(wù)配置進(jìn)行集中管理,并提供同步性能驗(yàn)證工具;在項(xiàng)目交付層面,則根據(jù)用戶的具體工況量身定制同步拓?fù)浜蛯?shí)現(xiàn)細(xì)節(jié),確保實(shí)驗(yàn)室中的驗(yàn)證結(jié)果能夠可靠遷移到復(fù)雜現(xiàn)場(chǎng)環(huán)境中。未來(lái)的工作中,我們還將進(jìn)一步探索跨機(jī)箱、跨機(jī)柜乃至分布式節(jié)點(diǎn)之間的時(shí)間同步方案,為更大尺度的數(shù)據(jù)采集系統(tǒng)提供可擴(kuò)展的同步能力。歡迎致電交流010-64327909。