本發(fā)明涉及數(shù)字信號處理領(lǐng)域,更具體地,涉及一種時間交織模數(shù)轉(zhuǎn)換系統(tǒng)的數(shù)據(jù)緩存與重現(xiàn)系統(tǒng)。
背景技術(shù):
隨著微電子技術(shù)的飛速發(fā)展,電路系統(tǒng)的集成度、復(fù)雜度不斷提高,同時對速度也提出了嚴(yán)苛的要求,在一些高端儀器儀表、醫(yī)療器械、雷達、通信等領(lǐng)域,模擬前端的數(shù)據(jù)采集速度需要幾gsps甚至幾十gsps。單片集成高速采樣技術(shù)由于存在內(nèi)部熱噪聲、孔徑抖動和渡越時間不確定等因素,面臨精度和速度相互制約的影響,而采用多通道時間交織模數(shù)轉(zhuǎn)換技術(shù)可以彌補這一缺陷。然而在高速時間交織模數(shù)轉(zhuǎn)換數(shù)據(jù)采集系統(tǒng)硬件實現(xiàn)過程中,驅(qū)動各通道adc需要高精準(zhǔn)度的多相時鐘,這對數(shù)據(jù)的準(zhǔn)確接收與緩存起到至關(guān)重要的作用,時間相位偏移誤差(time-skewerror)直接影響到tiadc系統(tǒng)的性能,同時為了處理傳輸速度達到幾百mhz甚至幾ghz、傳輸帶寬從數(shù)gb/s到幾十gb/s的采樣結(jié)果,人們面臨信號處理數(shù)據(jù)量大、速度快、傳輸準(zhǔn)確率要求高等問題,所以如何對大容量高速數(shù)據(jù)流進行高速緩存與處理成為高速數(shù)據(jù)采集系統(tǒng)設(shè)計的關(guān)鍵。
現(xiàn)階段對tiadc高速數(shù)據(jù)緩存的方法主要是以各通道adc單元輸出的隨路時鐘作為數(shù)據(jù)緩沖單元的驅(qū)動時鐘,采用基于fpga的ddr2/ddr3sdram雙緩沖乒乓結(jié)構(gòu)設(shè)計對數(shù)據(jù)進行緩存,數(shù)據(jù)通過可編程邏輯單元校正、變換后(或者直接上傳pc機),并采用高速接口如pcie、ethernet以及usb3.0等進行數(shù)據(jù)傳輸,通過人機交互接口獲取tiadc數(shù)據(jù)采樣系統(tǒng)的性能效果。然而這種方法對硬件資源要求高,設(shè)計方法難度相對較大,開發(fā)周期長,給系統(tǒng)設(shè)計者帶來很大挑戰(zhàn)。所以設(shè)計一種低成本、低復(fù)雜度的tiadc高速數(shù)據(jù)緩存與重現(xiàn)方案是非常有意義的。
技術(shù)實現(xiàn)要素:
本發(fā)明提供一種設(shè)計復(fù)雜度、加快開發(fā)進度、降低硬件設(shè)計成本的時間交織模數(shù)轉(zhuǎn)換系統(tǒng)的數(shù)據(jù)緩存與重現(xiàn)系統(tǒng)。
為了達到上述技術(shù)效果,本發(fā)明的技術(shù)方案如下:
一種時間交織模數(shù)轉(zhuǎn)換系統(tǒng)的數(shù)據(jù)緩存與重現(xiàn)系統(tǒng),包括順次連接的多通道adc模塊、多相時鐘產(chǎn)生模塊、異步時鐘域數(shù)據(jù)處理模塊、數(shù)據(jù)重排序與聯(lián)合模塊、校正模塊和數(shù)據(jù)發(fā)送存儲器模塊;
多相時鐘產(chǎn)生模塊驅(qū)動多通道adc模塊接收數(shù)據(jù),異步時鐘域數(shù)據(jù)處理模塊對多通道adc模塊接收的數(shù)據(jù)進行數(shù)據(jù)處理,數(shù)據(jù)重排序與聯(lián)合模塊對處理后的數(shù)據(jù)進行重排序,校正模塊對重排序后的數(shù)據(jù)進行通道失配誤差校正與補償,數(shù)據(jù)發(fā)送存儲器模塊對校正與補償后的數(shù)據(jù)進行存儲與對外發(fā)送。本發(fā)明中,采用結(jié)構(gòu)簡單、穩(wěn)定性好的pll技術(shù)以及結(jié)合可編程延遲電路產(chǎn)生高精度、低抖動的多相時鐘,以驅(qū)動時間交織模數(shù)轉(zhuǎn)換系統(tǒng)各通道adc單元,同時啟用各通道adc的數(shù)據(jù)同步功能,產(chǎn)生的隨路時鐘與多相驅(qū)動時鐘同步,也成等間隔相位差,為把數(shù)據(jù)能順序地寫入存儲器提供先決要求。
進一步地,所述多相時鐘產(chǎn)生模塊驅(qū)動多通道adc模塊中的各adc單元,同時啟用各通道adc的數(shù)據(jù)同步功能,產(chǎn)生的隨路時鐘與多相驅(qū)動時鐘同步,也成等間隔相位差。本發(fā)明中,選取任意通道,如通道4的adc隨路時鐘作為數(shù)據(jù)緩存的觸發(fā)條件,發(fā)出寫請求信號,通過通道1,2,3的隨路時鐘對該寫請求信號作同步處理,由要點1,根據(jù)隨路時鐘存在的相位差,可確定adc數(shù)據(jù)寫入存儲器的順序為adc1,adc2,adc3,adc4。
進一步地,所述異步時鐘域數(shù)據(jù)處理模塊采用異步fifo緩沖方式,通過改變數(shù)據(jù)總線的寬度達到數(shù)據(jù)降頻,實現(xiàn)后級補償?shù)倪壿嫊r序要求,提供充分的建立時間與保持時間,對輸入fifo的數(shù)據(jù)進行降頻處理。本發(fā)明中,為實現(xiàn)異步時鐘域的adc采樣數(shù)據(jù)接收,系統(tǒng)采用異步fifo緩沖方式,由于fifo輸入、輸出具有相互獨立的時鐘線和數(shù)據(jù)總線的特點,通過改變數(shù)據(jù)總線的寬度達到數(shù)據(jù)降頻的目的,為順利實現(xiàn)后級補償算法的邏輯時序要求,提供充分的建立時間與保持時間,對輸入fifo的數(shù)據(jù)進行降頻處理。
進一步地,所述數(shù)據(jù)重排序與聯(lián)合模塊對輸入數(shù)據(jù)速率進行4倍降頻處理,輸入fifo的數(shù)據(jù)在62.5mhz時鐘信號下進行讀處理,根據(jù)數(shù)據(jù)寫入fifo的先后順序進行重排序。本發(fā)明中,選擇對輸入數(shù)據(jù)速率進行4倍降頻處理,但又不限于4倍。輸入fifo的數(shù)據(jù)在62.5mhz時鐘信號下進行讀處理,根據(jù)數(shù)據(jù)寫入fifo的先后順序進行重排序。
進一步地,所述校正模塊內(nèi)設(shè)置了兩級由嵌入式ram、校正通道構(gòu)成的乒乓雙緩沖流水線結(jié)構(gòu)來提高數(shù)據(jù)處理效率。本發(fā)明中,由于通道間的失配誤差如偏置誤差、增益誤差以及時間相位誤差等影響了系統(tǒng)的性能,所以需要對采樣數(shù)據(jù)進行校正與補償處理,考慮到后級誤差補償算法的處理速度,該設(shè)計還加入了兩級由嵌入式ram、校正通道構(gòu)成的乒乓雙緩沖流水線結(jié)構(gòu),提高數(shù)據(jù)處理效率。
本發(fā)明中,數(shù)據(jù)上傳上位機與系統(tǒng)性能評估。重排序的數(shù)據(jù)利用低速、經(jīng)濟的串行接口如jtag進行數(shù)據(jù)上傳pc端進行波形重現(xiàn),當(dāng)輸入數(shù)據(jù)帶寬大于輸出數(shù)據(jù)帶寬的情況下,為滿足大容量數(shù)據(jù)的傳輸,必須對重排序的數(shù)據(jù)進行再次緩存,折中考慮采用信號采樣時間與數(shù)據(jù)發(fā)送時間分離的辦法解決數(shù)據(jù)帶寬問題。同時在pc端對采樣波形數(shù)據(jù)進行頻域分析,評估采樣系統(tǒng)性能。
與現(xiàn)有技術(shù)相比,本發(fā)明技術(shù)方案的有益效果是:
本發(fā)明為提高數(shù)據(jù)的緩存準(zhǔn)確率,設(shè)計了高精度的時間交織adc多相時鐘,同時充分利用了fpga的內(nèi)部資源,降低了系統(tǒng)的集成復(fù)雜度和硬件成本,通過對采樣數(shù)據(jù)的合理存儲,并對tiadc系統(tǒng)存在的偏誤誤差、增益誤差以及時間相位誤差做了數(shù)字后端補償,最后完成數(shù)據(jù)上傳上位機,測試結(jié)果比較真實地還原了輸入信號的形態(tài),數(shù)字后端補償改善了tiadc系統(tǒng)的snr(信噪比)與enob(有效位數(shù))等性能。
附圖說明
圖1為本發(fā)明tiadc數(shù)據(jù)緩存與重現(xiàn)裝置系統(tǒng)結(jié)構(gòu)示意圖;
圖2為本發(fā)明tiadc系統(tǒng)多相時鐘產(chǎn)生原理示意圖;
圖3為本發(fā)明tiadc系統(tǒng)異步時鐘域數(shù)據(jù)緩存控制時序圖;
圖4為本發(fā)明tiadc系統(tǒng)異步時鐘域數(shù)據(jù)處理設(shè)計圖;
圖5為本發(fā)明tiadc系統(tǒng)數(shù)字后端補償結(jié)構(gòu)示意圖;
圖6為本發(fā)明tiadc系統(tǒng)采樣結(jié)果數(shù)據(jù)波形重現(xiàn)設(shè)計圖;
圖7-1為本發(fā)明tiadc系統(tǒng)通道失配誤差補償前性能對比圖;
圖7-2為本發(fā)明tiadc系統(tǒng)通道失配誤差補償后性能對比圖。
具體實施方式
附圖僅用于示例性說明,不能理解為對本專利的限制;
為了更好說明本實施例,附圖某些部件會有省略、放大或縮小,并不代表實際產(chǎn)品的尺寸;
對于本領(lǐng)域技術(shù)人員來說,附圖中某些公知結(jié)構(gòu)及其說明可能省略是可以理解的。
下面結(jié)合附圖和實施例對本發(fā)明的技術(shù)方案做進一步的說明。
實施例1
本發(fā)明提供一種時間交織模數(shù)轉(zhuǎn)換系統(tǒng)的數(shù)據(jù)緩存與重現(xiàn)系統(tǒng)如圖1所示,由多通道adc模塊,多相時鐘產(chǎn)生模塊,異步時鐘域數(shù)據(jù)處理模塊、數(shù)據(jù)重排序與校正模塊以及數(shù)據(jù)發(fā)送存儲器模塊構(gòu)成。
高精度多相時鐘產(chǎn)生原理圖如圖2所示。tiadc系統(tǒng)的數(shù)據(jù)接收需要在多相時鐘的驅(qū)動下依次進行,為得到數(shù)據(jù)緩沖單元精準(zhǔn)的多相驅(qū)動時鐘,采用pll倍頻技術(shù)獲得高穩(wěn)定度的時鐘信號,通過spi配置clockgenerate模塊內(nèi)部寄存器,實現(xiàn)時鐘延時的微調(diào)δt1,δt2,δt3,δt4,由于模塊內(nèi)部時間調(diào)節(jié)精度與pll倍頻頻率倒數(shù)的最小單位有關(guān),所以無法做到精確調(diào)節(jié),系統(tǒng)設(shè)計了由lc電路組成的可編程延遲線programbledelaylinea,b,c,d,通過spi協(xié)議控制延遲模塊電路中的dac從而改變電容c的容值,實現(xiàn)可編程延遲的目的,實驗實現(xiàn)了最小10ps單位的延時,最終得到相位差為90°的四路時鐘信號,其相位為δφ1=0°,δφ2=90°,δφ3=180°,δφ4=270°。系統(tǒng)在多相時鐘clk1,clk2,clk3,clk4的驅(qū)動下,控制四路adc順序采樣,其采樣率達到單個adc采樣率的四倍。其中,adc的數(shù)據(jù)輸出在clk_adc的上升沿觸發(fā)后,且等周期輸出,同時adc的數(shù)據(jù)與隨路時鐘同步,即隨路時鐘dco1,dco2,dco3,dco4以相同相位差輸出,為把數(shù)據(jù)順序?qū)懭氪鎯ζ魈峁┝藯l件。
如圖3所示為tiadc系統(tǒng)數(shù)據(jù)緩存控制的時序圖。為了按次序緩存時間交織模數(shù)轉(zhuǎn)換系統(tǒng)各通道adc的數(shù)據(jù),必須準(zhǔn)確控制存儲器的讀寫邏輯。操作如下:
①完成tiadc系統(tǒng)所有的外部配置(如時鐘模塊、可編程延遲線等)之后,設(shè)計選擇adc4隨路時鐘dco_4+的上升沿tri作為觸發(fā)信號,發(fā)出fifo的寫請求,記為wr_4_p;
②為提高系統(tǒng)的穩(wěn)定性,隨路時鐘dco_1+、dco_1-、dco_2+、dco_2-、dco_3+、dco_3-、dco_4-分別對異步信號wr_4_p做同步處理,同時對wr_4_p也在時鐘dco_4+下打一拍,發(fā)出對應(yīng)通道存儲器的寫信號;
③對各隨路時鐘同步后的寫信號做時序約束,確保各通道隨路時鐘同步后的寫信號等延遲到達各存儲器控制端,確保通道間寫控制信號的相位關(guān)系與dco_1+、dco_1-、dco_2+、dco_2-、dco_3+、dco_3-、dco_4+、dco_4-同步。
④記隨路時鐘dco_1+、dco_1-、dco_2+、dco_2-、dco_3+、dco_3-、dco_4+、dco_4-對應(yīng)的寫入fifo名稱為fifo_a_dco_p、fifo_a_dco_n、fifo_b_dco_p、fifo_b_dco_n、fifo_c_dco_p、fifo_c_dco_n、fifo_d_dco_p、fifo_d_dco_n,根據(jù)③可確定數(shù)據(jù)寫入八路fifo的順序依次為fifo_a_dco_p、fifo_b_dco_p、fifo_c_dco_p、fifo_d_dco_p、fifo_a_dco_n、fifo_b_dco_n、fifo_c_dco_n、fifo_d_dco_n;
⑤由于不同adc數(shù)據(jù)輸出相對adc初始轉(zhuǎn)換有一定的固定采樣周期延遲,則圖中正弦波采樣點1,2,3……的值將在m個周期(adc芯片的固有特性)之后輸出。
如圖4所示為異步時鐘域數(shù)據(jù)處理設(shè)計圖。為實現(xiàn)異步時鐘域的數(shù)據(jù)接收,設(shè)計采用異步fifo的形式。采用adc輸出的隨路時鐘dco作為fifo的寫時鐘,以時間交織四路8位、采樣率250msps的adc為例,但不限于四路8位250msps。分別采用隨路時鐘的上升沿與下降沿向存儲器寫入數(shù)據(jù),設(shè)計例化了八個fifo。由于dco輸出的相位與驅(qū)動adc的多相輸入時鐘有關(guān),輸出的等相位差、多路隨路時鐘dco_1+、dco_2+、dco_3+、dco_4+、dco_1-、dco_2-、dco_3-、dco_4-按相位要求依次向fifo_a/b/c/d_p以及fifo_a/b/c/d_n中寫入采樣數(shù)據(jù)??紤]到后級邏輯設(shè)計的時序約束要求,保留充分的建立時間與保持時間裕量,系統(tǒng)設(shè)計采用面積、速度互換的方法對250mhz的數(shù)據(jù)速率進行了4倍降頻,則每通道輸入數(shù)據(jù)為8位,輸出數(shù)據(jù)為32位,采用fpga內(nèi)部pll產(chǎn)生62.5mhz時鐘作為各通道fifo的讀時鐘,則數(shù)據(jù)重排序與聯(lián)合模塊將對速率為62.5mhz,寬度為256位的數(shù)據(jù)進行處理,根據(jù)設(shè)計要求,異步fifo的輸出數(shù)據(jù)寬度是輸入數(shù)據(jù)寬度的四倍,寫時鐘為讀時鐘的四倍,為防止fifo讀空或者寫滿,在wr_4_p發(fā)出寫請求后,等待fifo半滿的時候,發(fā)出fifo讀請求,這樣保證了fifo的容量始終保持在fifo的中間狀態(tài),提高了緩存的安全穩(wěn)定性,可以確定最終數(shù)據(jù)重排序與聯(lián)合(data_resortandcombine)模塊輸出的數(shù)據(jù)順序為:d_r[255:0]={fifo_a_dco_p[31:24],fifo_b_dco_p[31:24],fifo_c_dco_p[31:24],fifo_d_dco_p[31:24],fifo_a_dco_n[31:24],fifo_b_dco_n[31:24],fifo_c_dco_n[31:24],fifo_d_dco_n[31:24],fifo_a_dco_p[23:16],fifo_b_dco_p[23:16],fifo_c_dco_p[23:16],fifo_d_dco_p[23:16],fifo_a_dco_n[23:16],fifo_b_dco_n[23:16],fifo_c_dco_n[23:16],fifo_d_dco_n[23:16],fifo_a_dco_p[15:8],fifo_b_dco_p[15:8],fifo_c_dco_p[15:8],fifo_d_dco_p[15:8],fifo_a_dco_n[15:8],fifo_b_dco_n[15:8],fifo_c_dco_n[15:8],fifo_d_dco_n[15:8],fifo_a_dco_p[7:0],fifo_b_dco_p[7:0],fifo_c_dco_p[7:0],fifo_d_dco_p[7:0],fifo_a_dco_n[7:0],fifo_b_dco_n[7:0],fifo_c_dco_n[7:0],fifo_d_dco_n[7:0]}。
如圖5所示tiadc系統(tǒng)數(shù)字后端補償與數(shù)據(jù)緩存結(jié)構(gòu)示意圖,由于該系統(tǒng)的輸入數(shù)據(jù)帶寬大于輸出數(shù)據(jù)帶寬,設(shè)計采用采樣時間與數(shù)據(jù)傳輸時間分離的辦法。通過判斷發(fā)送模塊data_out存儲器地址的大小決定系統(tǒng)是處于數(shù)據(jù)發(fā)送狀態(tài)(sending)還是數(shù)據(jù)存儲接收狀態(tài)(receiving)。當(dāng)處于receiving狀態(tài)時,閉合開關(guān)s,為提高數(shù)據(jù)處理效率,存儲器前級緩存中重排序的數(shù)據(jù)data_in[255:0]通過數(shù)據(jù)輸入雙路選擇開關(guān)(data_inselect)分別進入由ram_a、errorcorrectiona和ram_b、errorcorrectionb組成的乒乓流水線結(jié)構(gòu),第一級流水處理低128位,第二級流水線處理高128位,誤差校正后的數(shù)據(jù)通過數(shù)據(jù)輸出選擇模塊(data_outselect)輸出到data_out緩存;當(dāng)data_out存儲器將滿時,斷開開關(guān)s,準(zhǔn)備上傳數(shù)據(jù)。
為直觀地了解采樣信號的數(shù)據(jù)結(jié)果,設(shè)計采用數(shù)據(jù)上傳pc端的方法進行波形重現(xiàn),tiadc系統(tǒng)采樣結(jié)果數(shù)據(jù)波形重現(xiàn)設(shè)計如圖6所示。采用fpga內(nèi)部剩余的邏輯資源例化一個邏輯分析儀logicanalyzer,通過jtag進行數(shù)據(jù)傳輸,同時采用quartus內(nèi)嵌的signaltapii提供的用戶接口進行波形重現(xiàn)。波形重現(xiàn)得到的二進制文件,采用matlab對接收的采樣數(shù)據(jù)進行分析,得到tiadc系統(tǒng)的性能結(jié)果,如snr,enob等。為了驗證數(shù)字后端通道失配誤差補償設(shè)計對系統(tǒng)性能的改善情況,測試對tiadc系統(tǒng)在數(shù)字補償前后進行了詳細的性能對比分析,測量結(jié)果如圖7所示,其中圖7-1為不經(jīng)過通道失配誤差補償處理得到的系統(tǒng)性能分析參數(shù),圖7-2為經(jīng)過硬件實時實現(xiàn)通道失配誤差補償處理得到的系統(tǒng)性能分析參數(shù)。結(jié)果表明,在1gsps采樣率下,對17mhz的模擬信號進行采樣,通過數(shù)字后端通道失配誤差補償設(shè)計,信噪比snr提高了10.2db,有效位enob提高了1.69位,達到7.1位,系統(tǒng)的性能得到了明顯提高。
相同或相似的標(biāo)號對應(yīng)相同或相似的部件;
附圖中描述位置關(guān)系的用于僅用于示例性說明,不能理解為對本專利的限制;
顯然,本發(fā)明的上述實施例僅僅是為清楚地說明本發(fā)明所作的舉例,而并非是對本發(fā)明的實施方式的限定。對于所屬領(lǐng)域的普通技術(shù)人員來說,在上述說明的基礎(chǔ)上還可以做出其它不同形式的變化或變動。這里無需也無法對所有的實施方式予以窮舉。凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進等,均應(yīng)包含在本發(fā)明權(quán)利要求的保護范圍之內(nèi)。