本發(fā)明涉及信號處理技術領域,具體涉及一種信號發(fā)生與讀出裝置及控制方法。
背景技術:
近年來,隨著技術的不斷進步以及各領域研究的不斷推進,高性能的信號發(fā)生與讀出裝置在物理、化學、生物、醫(yī)學、工程等領域得到了廣泛的應用。所需求的信號的種類已經(jīng)由最初的正弦波、周期方波、三角波、鋸齒波等有規(guī)律的特殊波形向著任意波形以及超高精度高復雜度脈沖序列等方向發(fā)展,進而衍生出任意波形發(fā)生器(awg,arbitrarywaveformgenerator)、任意序列發(fā)生器(asg,arbitrarywaveformgenerator)等專用的信號發(fā)生裝置。而對信號的采集也從單純的電荷記錄、時間記錄、事件計數(shù)等向著波形數(shù)字化、超高精度時間測量等方向發(fā)展,進而衍生出數(shù)據(jù)采集卡(daqboard,dataacquisitionboard)、時間數(shù)字變換器(tdc,timetodigitalconverter)等專用的波形記錄儀器以及時間測量裝置。
目前,可利用多個分立的專門儀器進行集總設計得到一套信號發(fā)生與讀出裝置,比如,由任意波形發(fā)生器、脈沖發(fā)生器、示波器等組成信號產(chǎn)生與測試平臺,實現(xiàn)控制信號的產(chǎn)生以及試驗信號的讀回和分析。但是,由于各個分立的專門儀器均擁有各自的控制軟件以及通訊方法,所以需要各個分立的專門儀器之間進行協(xié)調(diào)工作時控制極其復雜,硬件連線也十分繁瑣。另外,由于各個分立的專門儀器之間的協(xié)調(diào)大多數(shù)由主控計算機通過軟件實現(xiàn),并且各個分立的專門儀器各自工作在不同的時鐘下,所以難以實現(xiàn)高精度時間同步,因而各個分立的專門儀器難以發(fā)揮最佳性能。另外,由于各個分立的專門儀器集成度較低,所以利用多個分立的專門儀器進行集總設計得到的信號發(fā)生與讀出裝置體積較大。另外,由于各個分立的專門儀器價格昂貴,所以由多個分立的專門儀器組成信號發(fā)生與讀出裝置成本也很高。總之,由于上述各種限制情況,利用多個分立的專門儀器進行集總設計得到的信號發(fā)生與讀出裝置性能指標并不高。
目前,還可利用ni公司提供的pxie總線機箱,結(jié)合各個單獨功能的板卡,如數(shù)據(jù)采集卡、脈沖發(fā)生器板卡、tdc等,實現(xiàn)信號發(fā)生與讀出的功能。對于采用全ni板卡的pxie機箱系統(tǒng),雖然在控制軟件標準化集成化方面較之于分立儀器有較大提升,但是仍需要一定的編程支持。并且,由于各個板卡之間沒有直接的數(shù)據(jù)交互通路,所以系統(tǒng)各部分進行實時調(diào)整的能力差,協(xié)調(diào)性低。而且,對于pxie總線機箱,其時鐘是統(tǒng)一的,但是時鐘的同步性不高。
因此,如何設計一種高集成度、高性能、低成本的信號發(fā)生與讀出裝置成為本領域技術人員亟待解決的問題。
技術實現(xiàn)要素:
有鑒于此,本發(fā)明實施例提供一種信號發(fā)生與讀出裝置及控制方法,具有高集成度、高性能、低成本的特性。
為實現(xiàn)上述目的,本發(fā)明實施例提供如下技術方案:
一種信號發(fā)生與讀出裝置,包括:
由fpga核心控制模塊,以及,與所述fpga核心控制模塊相連的時鐘管理模塊、通訊總線模塊、多通道存儲模塊、信號讀出模塊和信號發(fā)生模塊組成的印刷電路板;
所述fpga核心控制模塊用于控制和協(xié)調(diào)所述印刷電路板上與所述fpga核心控制模塊相連的各個模塊;
所述時鐘管理模塊用于接收外部參考時鐘或者以所述印刷電路板上高精度時鐘源作為參考,生成所述印刷電路板上各個模塊的工作時鐘;
所述通訊總線模塊用于與上位機之間進行通訊;
所述多通道存儲模塊用于快速存取數(shù)據(jù),為脈沖序列和任意波輸出提供原始數(shù)據(jù)并存儲信號讀出模塊取得的數(shù)據(jù);
所述信號讀出模塊用于采集待測信號;
所述信號發(fā)生模塊用于向?qū)嶒炘O備輸出信號。
優(yōu)選的,所述fpga核心控制模塊包括:
命令與數(shù)據(jù)分配模塊,時鐘分配模塊、以及,與所述命令與數(shù)據(jù)分配模塊相連的總線通信管理模塊、存儲器管理模塊、脈沖序列數(shù)據(jù)解析模塊、任意波形數(shù)據(jù)解析模塊、計數(shù)器模塊、時間數(shù)字轉(zhuǎn)換模塊和波形數(shù)據(jù)處理模塊;
所述命令與數(shù)據(jù)分配模塊用于控制與所述命令與數(shù)據(jù)分配模塊相連的各個模塊并向與所述命令與數(shù)據(jù)分配模塊相連的各個模塊分配所需數(shù)據(jù);
所述時鐘分配模塊用于接收所述時鐘管理模塊的時鐘作為參考,向所述命令與數(shù)據(jù)分配模塊以及與所述命令與數(shù)據(jù)分配模塊相連的各個模塊分配時鐘;
所述總線通信管理模塊用于與所述通訊總線模塊之間進行數(shù)據(jù)交互;
所述存儲器管理模塊用于執(zhí)行來自所述命令與數(shù)據(jù)分配模塊的數(shù)據(jù)存取命令,并將讀出的數(shù)據(jù)傳送給所述命令與數(shù)據(jù)分配模塊或者將需要存儲的數(shù)據(jù)傳送給所述多通道存儲模塊;
所述脈沖序列數(shù)據(jù)解析模塊用于接收來自所述命令與數(shù)據(jù)分配模塊的脈沖序列原始數(shù)據(jù),并將所述脈沖序列原始數(shù)據(jù)中所包含的脈沖序列參數(shù)解析為輸出端口高低電平變化信號,并將所述輸出端口高低電平變化信號傳送到所述信號發(fā)生模塊中;
所述任意波數(shù)據(jù)解析模塊用于接收來自所述命令與數(shù)據(jù)分配模塊的任意波原始數(shù)據(jù),并將所述任意波原始數(shù)據(jù)編碼還原為每個采樣點的電平編碼,并將所述每個采樣點的電平編碼發(fā)送到所述信號發(fā)生模塊中;
所述計數(shù)器模塊用于接收來自所述信號讀出模塊的脈沖信號并對事件進行計數(shù),或者,用于接收來自所述時間數(shù)字轉(zhuǎn)換模塊的脈沖信號并對事件進行計數(shù);
所述時間數(shù)字轉(zhuǎn)換模塊用于接收來自所述信號讀出模塊的脈沖信號并測量不同通道脈沖信號到來的時間間隔;
所述波形數(shù)據(jù)處理模塊用于處理來自所述信號讀出模塊的模擬波形原始數(shù)據(jù)。
優(yōu)選的,所述通訊總線模塊包括高速總線接口以及相應的控制芯片。
優(yōu)選的,所述多通道存儲模塊由大容量的存儲器組成,包括至少兩個獨立數(shù)據(jù)存取通道。
優(yōu)選的,所述時鐘管理模塊包括高精度時鐘源以及高性能時鐘分配芯片。
優(yōu)選的,所述信號讀出模塊包括模數(shù)變換模塊以及輸入甄別模塊;
所述模數(shù)變換模塊用于采集待測信號的原始波形數(shù)據(jù),并將所述待測信號的原始波形數(shù)據(jù)傳送到所述fpga核心控制模塊中的所述波形數(shù)據(jù)處理模塊中;
所述輸入甄別模塊用于在事件信號到來時產(chǎn)生一個脈沖信號,并將所述脈沖信號傳送到所述fpga核心控制模塊進行計數(shù)和時間測量。
優(yōu)選的,所述模數(shù)變換模塊包括adc芯片、放大器以及低通濾波器;
所述adc芯片用于將模擬波形數(shù)字化;
所述放大器用于調(diào)整輸入信號的幅度,使調(diào)整后的輸入信號與所述adc芯片動態(tài)范圍相匹配;
所述低通濾波器用于將奈奎斯特頻率以上頻率成分濾除,以防止被采集的數(shù)字域波形發(fā)生頻譜混疊。
優(yōu)選的,所述輸入甄別模塊包括arc成形電路以及過零比較器,以抵抗上升時間游動效應和幅度游動效應對定時精度的影響。
優(yōu)選的,所述信號發(fā)生模塊包括數(shù)模變換模塊以及脈沖驅(qū)動模塊;
所述數(shù)模變換模塊用于從所述任意波數(shù)據(jù)解析模塊得到任意波形數(shù)據(jù),并由所述任意波形數(shù)據(jù)產(chǎn)生高采樣率的任意波形信號;
所述脈沖驅(qū)動模塊用于從所述脈沖序列數(shù)據(jù)解析模塊得到原始的脈沖序列,并將所述原始的脈沖序列電平轉(zhuǎn)換為具有預設電平標準的脈沖序列,最后由所述具有預設電平標準的脈沖序列產(chǎn)生具有快速上升沿和下降沿并且具有50歐姆負載驅(qū)動能力的高時間精度脈沖序列。
優(yōu)選的,所述數(shù)模變換模塊包括dac芯片,放大器以及低通濾波器;
所述dac芯片采取零階保持采樣方法,將從所述任意波形數(shù)據(jù)解析模塊傳送來的波形數(shù)據(jù)轉(zhuǎn)換成第一模擬波形;
所述放大器用于調(diào)節(jié)所述第一模擬波形的輸出幅度生成第二模擬波形;
所述低通濾波器用于接收所述第二模擬波形,生成最終任意波形并輸出。
一種信號發(fā)生與讀出裝置的控制方法,包括:
在空閑狀態(tài)下,上位機通過通訊總線模塊向信號發(fā)生與讀出裝置發(fā)送指令,使信號發(fā)生與讀出裝置進入配置狀態(tài);
進入配置狀態(tài)后,依次對信號發(fā)生與讀出裝置的脈沖發(fā)生、任意波形發(fā)生、tdc及計數(shù)器和波形采集功能進行運行配置,并為脈沖發(fā)生功能以及任意波形發(fā)生功能存儲所需數(shù)據(jù);
配置結(jié)束后,向信號發(fā)生與讀出裝置發(fā)送指令進行數(shù)據(jù)檢驗,將所配置命令以及所存儲播放數(shù)據(jù)讀回校對;
數(shù)據(jù)檢驗結(jié)束后,對信號發(fā)生與讀出裝置的開始和停止條件進行配置;
完成開始和停止條件配置后信號發(fā)生與讀出裝置進入工作狀態(tài),等待開始條件并開始運行信號發(fā)生與讀出裝置;
信號發(fā)生與讀出裝置運行中若檢測到停止條件已經(jīng)滿足,則返回初始空閑狀態(tài),否則繼續(xù)運行。
基于上述技術方案,本發(fā)明實施例中公開了一種信號發(fā)生與讀出裝置,以高性能、邏輯單元豐富、實時性好以及可重復配置的fpga核心控制模塊為控制核心,并與時鐘管理模塊、通訊總線模塊、多通道存儲模塊、信號讀出模塊和信號發(fā)生模塊進行板載集成,實現(xiàn)了高采樣率任意波形發(fā)生、高精度脈沖序列發(fā)生、計數(shù)器、高精度時間數(shù)字變換以及高采樣率波形采集功能之間的靈活協(xié)同,因此,具有高集成度、高性能、低成本的特性。相應的,本發(fā)明實施例還公開了一種信號發(fā)生與讀出裝置的控制方法。
附圖說明
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。
圖1為本發(fā)明實施例提供的一種信號發(fā)生與讀出裝置的結(jié)構(gòu)示意圖;
圖2為本發(fā)明實施例提供的一種fpga核心控制模塊的結(jié)構(gòu)示意圖;
圖3為本發(fā)明實施例提供的一種時鐘管理模塊的結(jié)構(gòu)示意圖;
圖4為本發(fā)明實施例提供的一種信號讀出模塊的結(jié)構(gòu)示意圖;
圖5為本發(fā)明實施例提供的一種信號發(fā)生模塊的結(jié)構(gòu)示意圖;
圖6為本發(fā)明實施例公開的一種信號發(fā)生與讀出裝置的控制方法流程示意圖。
具體實施方式
下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
fpga(field-programmable-gate-arrays,現(xiàn)場可編程門陣列)是一種現(xiàn)場可編程邏輯器件,用戶可以利用其提供的內(nèi)部資源進行高自由度和高復雜度的邏輯電路設計。fpga的可編程門電路特性決定了其在保持硬件電路高速實時處理能力的同時,還具有極高靈活性,進而在通信、數(shù)據(jù)處理等場合獲得了廣泛應用。fpga中的邏輯單元可可執(zhí)行并行的邏輯運算,同時實現(xiàn)多種邏輯功能。近年來,基于fpga的信號發(fā)生和讀出技術已經(jīng)得到了長足發(fā)展。fpga的出現(xiàn),為實現(xiàn)一種高靈活性、高集成度,高性能、低成本的信號發(fā)生與信號讀出裝置提供了可能性。
本發(fā)明即基于fpga,利用其內(nèi)部高速數(shù)字電路資源以及可編程特性,實現(xiàn)一種信號發(fā)生與讀出裝置。該裝置支持高采樣率任意波形發(fā)生、高精度脈沖序列發(fā)生、計數(shù)器、高精度tdc以及高采樣率波形發(fā)生功能可獨立同時進行,且可實現(xiàn)多通道的信號發(fā)生和讀出,具有高靈活性、高集成度,高性能、低成本的特點,以及多樣的功能和靈活的統(tǒng)籌協(xié)調(diào)能力,在諸如高精度飛行時間測量、磁共振探測、單分子探測、固態(tài)量子體系的操控與讀出、超導量子體系的操控與讀出以及量子雷達的操控等諸多領域有廣闊的應用前景。
請參閱附圖1,圖1為本發(fā)明實施例提供的一種信號發(fā)生與讀出裝置的結(jié)構(gòu)示意圖,如圖1所示,本發(fā)明實施例提供的信號發(fā)生與讀出裝置具體包括由fpga核心控制模塊100,以及,與所述fpga核心控制模塊100相連的時鐘管理模塊110、通訊總線模塊120、多通道存儲模塊130、信號讀出模塊140和信號發(fā)生模塊150組成的印刷電路板(pcb,printedcircuitboard)。
所述fpga核心控制模塊100用于控制和協(xié)調(diào)所述印刷電路板上與所述fpga核心控制模塊相連的各個模塊,是實現(xiàn)高采樣率任意波形發(fā)生、高精度脈沖序列發(fā)生、計數(shù)器、高精度時間數(shù)字變換以及高采樣率波形采集功能之間能夠靈活協(xié)同的控制中樞。
所述時鐘管理模塊用于接收外部參考時鐘或者以所述印刷電路板上高精度時鐘源作為參考,生成所述印刷電路板上各個模塊的工作時鐘,保證所述印刷電路板上各個模塊時鐘的同步性。
所述通訊總線模塊用于與上位機之間進行通訊,具體的,可用于下載波形序列數(shù)據(jù)或者上傳讀出的信號數(shù)據(jù),傳送上位機控制命令字,以及將校驗數(shù)據(jù)發(fā)回上位機。
需要說明的是,通訊總線模塊為可以支持高速數(shù)據(jù)傳輸?shù)牟⑿谢虼锌偩€,以保證播放脈沖序列數(shù)據(jù)以及任意波數(shù)據(jù)的高速下載和采集到的波形數(shù)據(jù)的實時回傳。在本實施例中,通訊總線模塊包括高速總線接口以及相應的控制芯片或控制芯片組,以實現(xiàn)與上位機之間的通訊。在本實例中,高速總線接口可選用pcie高速總線接口,作為與上位機的通訊接口,利用xilinx公司所提供的fpga的pcie控制ip核,實現(xiàn)fpga核心控制模塊與上位機之間通過pcie高速總線接口的直接通訊。但是,高速總線接口不只限于pcie高速總線接口,pxie(pciextensionsforinstrumentationexpress,面向儀器系統(tǒng)的pci擴展)、usb3.0等也可以滿足讀出信號數(shù)據(jù)實時傳輸要求的高速總線接口均可作為備選方案。
所述多通道存儲模塊用于快速存取大量數(shù)據(jù),為脈沖序列和任意波輸出提供原始數(shù)據(jù)并存儲信號讀出模塊取得的大量數(shù)據(jù)。
需要說明的是,所述多通道存儲模塊由大容量的存儲器組成,包括至少兩個獨立數(shù)據(jù)存取通道。當所述多通道存儲模塊包括三個或三個以上獨立數(shù)據(jù)存取通道時,所述多通道存儲模塊支持脈沖序列生成、任意波形生成以及波形數(shù)據(jù)采集這三種功能中的三種功能同時使用。多通道存儲模塊的存儲容量大小直接與任意波形播放長度、脈沖序列播放長度、波形數(shù)據(jù)采集長度直接相關。在本實例中,多通道存儲模塊可以包括兩塊ddr3大容量存儲器,
但是,所述多通道存儲模塊不僅限于采用ddr3大容量存儲器作為存儲單元,任何能夠滿足快速存取大量數(shù)據(jù)要求的存儲器都可作為多通道存儲模塊的存儲單元。在布線過程中使數(shù)據(jù)線、地址線、控制線對齊,能夠保證采取并行數(shù)據(jù)傳輸?shù)膁dr3存儲單元的高速數(shù)據(jù)傳輸性能。
進一步需要說明的是,一般情況下,獨立數(shù)據(jù)存取通道數(shù)與能夠同時使用的功能數(shù)是一致的,但是通過改變存儲格式,優(yōu)化邏輯等方法,通過兩個獨立數(shù)據(jù)存取通道也能夠?qū)崿F(xiàn)所有功能的同時使用。
所述信號讀出模塊用于采集待測信號。
所述信號發(fā)生模塊用于向?qū)嶒炘O備輸出信號。
本發(fā)明實施例提供的一種信號發(fā)生與讀出裝置,以高性能、邏輯單元豐富、實時性好以及可重復配置的fpga核心控制模塊為控制核心,并與時鐘管理模塊、通訊總線模塊、多通道存儲模塊、信號讀出模塊和信號發(fā)生模塊進行板載集成,實現(xiàn)了高采樣率任意波形發(fā)生、高精度脈沖序列發(fā)生、計數(shù)器、高精度時間數(shù)字變換以及高采樣率波形采集功能之間的靈活協(xié)同,因此,具有高集成度、高性能、低成本的特性。
請參閱附圖2,圖2為本發(fā)明實施例提供的一種fpga核心控制模塊的結(jié)構(gòu)示意圖,如圖2所示,本發(fā)明實施例提供的fpga核心控制模塊具體包括命令與數(shù)據(jù)分配模塊1001,時鐘分配模塊1002、以及,與所述命令與數(shù)據(jù)分配模塊1001相連的總線通信管理模塊1003、存儲器管理模塊1004、脈沖序列數(shù)據(jù)解析模塊1005、任意波形數(shù)據(jù)解析模塊1006、計數(shù)器模塊1007、時間數(shù)字轉(zhuǎn)換模塊1008和波形數(shù)據(jù)處理模塊1009。
所述命令與數(shù)據(jù)分配模塊1001用于控制與所述命令與數(shù)據(jù)分配模塊相連的各個模塊并向與所述命令與數(shù)據(jù)分配模塊相連的各個模塊分配所需數(shù)據(jù)。
需要說明的是,命令與數(shù)據(jù)分配模塊1001通過總線通信管理模塊1003接收來自通訊總線模塊的消息,其中包括任意波原始數(shù)據(jù)、脈沖序列原始數(shù)據(jù)以及各種命令消息。同時,命令與數(shù)據(jù)分配模塊也通過總線通信管理模塊向通訊總線模塊發(fā)送由其他功能模塊(存儲器管理模塊1004、脈沖序列數(shù)據(jù)解析模塊1005、任意波形數(shù)據(jù)解析模塊1006、計數(shù)器模塊1007、時間數(shù)字轉(zhuǎn)換模塊1008和波形數(shù)據(jù)處理模塊1009)傳入的數(shù)據(jù)和狀態(tài)信息,進而將這些信息傳送至上位機。另外,功能未喚醒前,除時鐘分配模塊與總線通信管理模塊之外的其他功能模塊一般處于空閑且不工作狀態(tài),命令與數(shù)據(jù)分配模塊1001會根據(jù)接收到的命令喚醒相應功能模塊,并對其進行配置,使其在正確的狀態(tài)下工作,并向其發(fā)送數(shù)據(jù)或接收其回傳的數(shù)據(jù)。命令與數(shù)據(jù)分配模塊1001還控制整個信號發(fā)生與讀出裝置的啟動與停止,啟動及停止條件由上位機發(fā)送的外部命令決定,通過對整個信號發(fā)生與讀出裝置中各個功能模塊進行不同的配置以及設置不同的啟動停止條件,可以實現(xiàn)各功能模塊的密切協(xié)同配合。
所述時鐘分配模塊1002用于接收所述時鐘管理模塊的時鐘作為參考,向所述命令與數(shù)據(jù)分配模塊以及與所述命令與數(shù)據(jù)分配模塊相連的各個模塊分配時鐘,使整個fpga核心控制模塊工作在同一個時鐘源下。為了保證內(nèi)部時鐘分配過程中的時鐘品質(zhì),由時鐘管理模塊到來的參考時鐘被接入fpga的專用時鐘管腳。
所述總線通信管理模塊1003用于與所述通訊總線模塊之間進行數(shù)據(jù)交互,是整個信號發(fā)生與讀出裝置與上位機之間進行高速數(shù)據(jù)交換的保障。其與外部的通訊總線模塊使用pcie高速總線接口、pxie、usb3.0等高速數(shù)據(jù)傳輸接口中的任意一種,可以保證快速下載大量數(shù)據(jù)以及實時上傳讀出的信號數(shù)據(jù)。
所述存儲器管理模塊1004用于執(zhí)行來自所述命令與數(shù)據(jù)分配模塊的數(shù)據(jù)存取命令,并將讀出的數(shù)據(jù)傳送給所述命令與數(shù)據(jù)分配模塊或者將需要存儲的數(shù)據(jù)傳送給所述多通道存儲模塊。當多通道存儲模塊的獨立通道數(shù)大于等于3時,可以同時獨立執(zhí)行多路數(shù)據(jù)的存取,支持多通道任意波形發(fā)生、多通道脈沖序列發(fā)生和多通道數(shù)據(jù)采集三種功能同時工作。
所述脈沖序列數(shù)據(jù)解析模塊1005用于接收來自所述命令與數(shù)據(jù)分配模塊的脈沖序列原始數(shù)據(jù),并將所述脈沖序列原始數(shù)據(jù)中所包含的脈沖序列參數(shù)解析為輸出端口高低電平變化信號,并將所述輸出端口高低電平變化信號傳送到所述信號發(fā)生模塊中,脈沖序列原始數(shù)據(jù)不僅可以定義簡單的周期脈沖序列,同時還可以定義復雜的脈沖序列組合,實現(xiàn)任意脈沖序列發(fā)生。并且,該模塊提供的輸出端口高低電平變化信號可以達到很高的時間精度。
所述任意波數(shù)據(jù)解析模塊1006用于接收來自所述命令與數(shù)據(jù)分配模塊的任意波原始數(shù)據(jù),并將所述任意波原始數(shù)據(jù)編碼還原為每個采樣點的電平編碼,并將所述每個采樣點的電平編碼發(fā)送到所述信號發(fā)生模塊中。任意波數(shù)據(jù)解析模塊可以配置任意波形播放模式,并由輸出隊列,并串轉(zhuǎn)換單元實現(xiàn)數(shù)據(jù)位寬與速率變換,進而實現(xiàn)高采樣率輸出。該模塊可以選擇多種播放模式,如序列播放模式、連續(xù)播放模式以及觸發(fā)播放模式等。
所述計數(shù)器模塊1007用于接收來自所述信號讀出模塊的脈沖信號并對事件進行計數(shù),或者,用于接收來自所述時間數(shù)字轉(zhuǎn)換模塊的脈沖信號并對事件進行計數(shù)。該模塊可以采用連續(xù)計數(shù)的計數(shù)方式,即來一次事件,就在計數(shù)器值上加1,只要計數(shù)器不被停止,該過程將一直繼續(xù)。也可以采用間隔計數(shù)的計數(shù)方式,即來n次事件,才在計數(shù)器值上加1,n可進行設置,只要計數(shù)器不被停止,該過程將一直繼續(xù)。還可以采用定值計數(shù)的計數(shù)方式,即預訂一個計數(shù)值n,當連續(xù)計數(shù)或間隔計數(shù)達到n時,計數(shù)器會向命令與數(shù)據(jù)分配模塊發(fā)送一個計數(shù)滿的信號。該信號可以被用來作為控制系統(tǒng)停止的信號之一,發(fā)送計數(shù)滿信號后計數(shù)器清零繼續(xù)采用定值計數(shù)的方式計數(shù),直到計數(shù)器被停止。
所述時間數(shù)字轉(zhuǎn)換模塊1008用于接收來自所述信號讀出模塊的脈沖信號并測量不同通道脈沖信號到來的時間間隔,并且,該模塊可以達到極高的時間分辨精度。
所述波形數(shù)據(jù)處理模塊1009用于處理來自所述信號讀出模塊的模擬波形原始數(shù)據(jù)。根據(jù)預先配置的不同,該模塊有多種處理方式,如直接存儲、實時回傳、累加平均或分段累加平均等,同時也可以在這一模塊中對積分非線性進行修正以及數(shù)字濾波。
需要說明的是,圖2所示的所有模塊集成在一塊高性能virtex-7fpga內(nèi)。由于邏輯復雜,運行數(shù)據(jù)傳輸速率高,上述模塊的邏輯單元布局布線都需要通過對fpga底層約束進行調(diào)整來實現(xiàn),以保證控制核心邏輯的正確性。
請參閱附圖3,圖3為本發(fā)明實施例提供的一種時鐘管理模塊的結(jié)構(gòu)示意圖,如圖3所示,本發(fā)明實施例提供的時鐘管理模塊具體包括高精度時鐘源1101以及高性能時鐘分配芯片1102。在本實施例中,所述高精度時鐘源具體為恒溫晶體振蕩器,所述高性能時鐘分配芯片具體為ad9516。通過pcb走線過程中縮短時鐘信號走線,減少走線彎折,并且保證其下方地平面完整性的方式,實現(xiàn)了高品質(zhì)時鐘信號的分配。同時通過調(diào)整到各模塊的時鐘線長度,并且,通過時鐘分配芯片內(nèi)部的輸出延時功能的細致調(diào)整,減少各個模塊接收到的時鐘相位偏差。
請參閱附圖4,圖4為本發(fā)明實施例提供的一種信號讀出模塊的結(jié)構(gòu)示意圖,如圖4所示,本發(fā)明實施例提供的信號讀出模塊具體包括模數(shù)變換模塊1401以及輸入甄別模塊1402。所述模數(shù)變換模塊用于采集待測信號的原始波形數(shù)據(jù),并將所述待測信號的原始波形數(shù)據(jù)傳送到所述fpga核心控制模塊中的所述波形數(shù)據(jù)處理模塊中;所述輸入甄別模塊用于在事件信號到來時產(chǎn)生一個脈沖信號,并將所述脈沖信號傳送到所述fpga核心控制模塊進行計數(shù)和時間測量。為保證回傳脈沖信號前沿質(zhì)量,在pcb設計中采取了減小走線長度、減少彎折以及保證走線下方地平面完整的方法。
波形采集功能由模數(shù)變換模塊和波形數(shù)據(jù)處理模塊共同實現(xiàn)。模數(shù)變換模塊由高性能adc(analogtodigitalconverter,模擬數(shù)字轉(zhuǎn)換器)芯片、放大器以及低通濾波器組成。本實施例中,采用的adc芯片為adc12d1000,功能是將模擬波形數(shù)字化,采樣率為1gsps,擁有兩個通道,并且可以通過插值采樣的方法實現(xiàn)2gsps的采樣率。放大器用于調(diào)整輸入信號幅度,使其能夠與adc芯片動態(tài)范圍相匹配。本實施例中,采用低通濾波器帶寬范圍為250mhz,該濾波器作用是將奈奎斯特頻率以上頻率成分濾除,防止被采集的數(shù)字域波形發(fā)生頻譜混疊。由模數(shù)變換模塊所提供的數(shù)字化波形信息進入波形數(shù)據(jù)處理模塊,由輸入緩存將低位寬高速度數(shù)據(jù)變?yōu)楦呶粚挼退俣葦?shù)據(jù),再由數(shù)據(jù)后處理單元根據(jù)配置命令所配置的工作模式對數(shù)據(jù)進行后處理,進而實現(xiàn)高采樣率的波形采集功能。數(shù)據(jù)處理模式包括數(shù)字濾波、累加平均、分段累加平均、直接存儲以及積分非線性矯正等。采用板上集成的低通濾波器可以減小系統(tǒng)占用體積,提高系統(tǒng)集成度,且配合波形數(shù)據(jù)處理模塊中的數(shù)字濾波處理,可以更加有效的抑制輸入信號中的噪聲。為了保證模數(shù)變換過程可以達到盡可能高的有效位,在pcb設計時采取了對模數(shù)變換模塊進行獨立供電、模擬部分與數(shù)字部分地平面隔離的方法,盡可能減小數(shù)字部分電路噪聲對模擬變換過程中模擬部分有效位的影響。該模數(shù)變換模塊在本實例中擁有2個輸入通道,但可以拓展到更多通道。
時間數(shù)字變換功能與計數(shù)器功能由輸入甄別模塊、時間數(shù)字變換模塊以及計數(shù)器模塊共同實現(xiàn)。輸入甄別模塊采取arc成形電路與過零比較器組合,實現(xiàn)幅度與上升時間補償?shù)亩〞r脈沖輸出,減小了上升時間游動效應以及幅度游動效應對于定時精度的影響。定時脈沖將向后進入時間數(shù)字變換模塊進行時間測量。時間數(shù)字變換模塊采用進位鏈作為延時單元,并包含以一個時鐘周期為最小時間分辨精度的粗時間,以及以一個進位鏈單元延時為時間精度的細時間。并且最后由粗時間和細時間共同得到事件到來的具體時刻。具體的,時間數(shù)字變換模塊中的粗計數(shù)單元用于提供以一個時鐘周期為時間分辨率的粗時間,而進位鏈將用于提供以一個進位鏈單元的延時為單位的細時間。每個定時脈沖信號通過進位鏈向下傳輸時,其在進位鏈上的具體位置將在時鐘上升沿到來時由譯碼單元中的d觸發(fā)器陣列鎖存,并由譯碼器形成細時間結(jié)果。粗時間與細時間結(jié)果共同定義了一個事件到來的時刻。每一組兩個信號之間可以測量時間間隔。多組信號之間也可以相互確定時間間隔,因為每個通道都是記錄的本通道信號到來時間,各個通道事件之間的時間間隔可以通過簡單相減得到。采用此種方法,tdc的時間分辨能夠達到23ps的極高精度。若采取多次測量同一事件的方法,時間分辨精度能夠進一步提升。
從時間數(shù)字變換模塊得到的事件到達及相應時間信息被傳入計數(shù)器模塊中,計數(shù)器模塊將對事件到來的個數(shù)以及事件之間的時間間隔分布進行記錄,并將tdc的每次測量結(jié)果傳送到命令與數(shù)據(jù)分配模塊。需要說明的是,用于計數(shù)的脈沖與時間信息是并行傳入計數(shù)器模塊的。當計數(shù)器模塊直接從信號讀出模塊得到信號的時候是沒有時間信息的,這個時候事件之間的時間間隔分布信息是沒有的。該模塊在本實例中擁有4個輸入通道,但可以拓展到更多通道。
請參閱附圖5,圖5為本發(fā)明實施例提供的一種信號發(fā)生模塊的結(jié)構(gòu)示意圖,如圖5所示,本發(fā)明實施例提供的信號發(fā)生模塊具體包括數(shù)模變換模塊1501以及脈沖驅(qū)動模塊1502。所述數(shù)模變換模塊用于從所述任意波數(shù)據(jù)解析模塊得到任意波形數(shù)據(jù),并由所述任意波形數(shù)據(jù)產(chǎn)生高采樣率的任意波形信號;所述脈沖驅(qū)動模塊用于從所述脈沖序列數(shù)據(jù)解析模塊得到原始的脈沖序列,并由所述原始的脈沖序列產(chǎn)生具有快速上升沿和下降沿并且具有50歐姆負載驅(qū)動能力的高時間精度脈沖序列。
任意波形發(fā)生功能由任意波形數(shù)據(jù)解析模塊以及數(shù)模變換模塊共同實現(xiàn)。數(shù)模變換模塊由高速高分辨率dac(digitaltoanalogconverter,數(shù)字模擬轉(zhuǎn)換器)芯片,本實例中為ad9139芯片,采樣率為1gsps,放大器以及低通濾波器組成。高速高分辨率dac芯片采取零階保持采樣方法,將從任意波形數(shù)據(jù)解析模塊傳送來的波形數(shù)據(jù)轉(zhuǎn)換成第一模擬波形。第一模擬波形經(jīng)過放大器后輸出幅度被調(diào)節(jié)到合適范圍,并且提升了帶負載能力,成為第二模擬波形。第二模擬波形經(jīng)過低通濾波器后,形成最終任意波形并輸出。為了提升系統(tǒng)的集成度,改善輸出波形質(zhì)量,這里采用了板上集成的放大器與低通濾波器。低通濾波器作用是濾除由于dac芯片采樣帶來的高頻成分。任意波形數(shù)據(jù)解析模塊包含數(shù)據(jù)處理單元、輸出隊列以及并串轉(zhuǎn)換單元。數(shù)據(jù)處理單元可以按照配置命令要求實現(xiàn)序列播放、觸發(fā)播放和連續(xù)播放等播放模式,并按照播放模式要求向輸出隊列提供波形數(shù)據(jù)。輸出隊列與并串轉(zhuǎn)換單元共同組成了輸出數(shù)據(jù)緩存,將數(shù)據(jù)處理單元提供的高位寬低速度數(shù)據(jù)變位低位寬高速度數(shù)據(jù)輸出到模數(shù)變換模塊,實現(xiàn)高采樣率輸出。為了保證數(shù)模變換有盡可能高的有效位,在pcb設計中采取了模擬電源與地平面和數(shù)字電源與地平面的隔離。數(shù)模變換模塊在本實例中擁有2個波形輸出通道,但可拓展到更多通道。
高精度脈沖序列發(fā)生功能由脈沖序列數(shù)據(jù)解析模塊以及脈沖驅(qū)動模塊共同實現(xiàn)。脈沖序列數(shù)據(jù)解析模塊采用時間內(nèi)插方法實現(xiàn)高時間精度的脈沖輸出,其工作于粗脈沖時鐘以及數(shù)據(jù)更新時鐘兩個時鐘下,并通過時間內(nèi)插法實現(xiàn)了時間精度達到50ps的脈沖序列發(fā)生。具體的,整個脈沖序列數(shù)據(jù)解析模塊工作在兩個時鐘下,一個是粗脈沖時鐘,用于產(chǎn)生粗脈沖。另一個是數(shù)據(jù)更新時鐘,用于輸出脈沖數(shù)據(jù)更新,包括粗脈沖數(shù)據(jù)以及延時數(shù)據(jù)。工作時,粗脈沖模塊先根據(jù)粗脈沖數(shù)據(jù)在粗脈沖時鐘下產(chǎn)生以粗脈沖時鐘周期為最小時間分辨單位的粗脈沖,并傳入延時鏈中。然后由延時控制單元控制最終脈沖經(jīng)過的延時單元個數(shù),并產(chǎn)生最小時間分辨單位為一個延時單元延時的第一脈沖序列。第一脈沖序列進入脈沖驅(qū)動模塊后先由電平轉(zhuǎn)換芯片將脈沖電平轉(zhuǎn)換為所需求的電平標準,產(chǎn)生第二脈沖序列。最后,第二脈沖序列經(jīng)過輸出級驅(qū)動,產(chǎn)生擁有快速上升沿與下降沿的擁有50歐姆負載驅(qū)動能力的最終脈沖序列。這里的電平轉(zhuǎn)換可以是定值電平轉(zhuǎn)換,也可以是可配置的電平轉(zhuǎn)換,采用可配置的電平轉(zhuǎn)換時,系統(tǒng)使用的靈活性將更高。本實例中,一個延時單元延時為50ps,所以本實例中實現(xiàn)的脈沖序列發(fā)生功能的最小時間分辨為50ps。另外,本實例實現(xiàn)了12通道的脈沖序列輸出,但可拓展到更多通道。
基于以上實施例公開的信號發(fā)生與讀出裝置,本發(fā)明實施例還公開了上述信號發(fā)生與讀出裝置的工作流程,具體請參閱附圖6,圖6為本發(fā)明實施例公開的一種信號發(fā)生與讀出裝置的控制方法流程示意圖,該信號發(fā)生與讀出裝置的控制方法包括如下步驟:
步驟s100、在空閑狀態(tài)下,上位機通過通訊總線模塊向信號發(fā)生與讀出裝置發(fā)送指令,使信號發(fā)生與讀出裝置進入配置狀態(tài);
步驟s110、進入配置狀態(tài)后,依次對信號發(fā)生與讀出裝置的脈沖發(fā)生、任意波形發(fā)生、tdc(timetodigitalconverter,時間數(shù)字變換器)及計數(shù)器和波形采集功能進行運行配置,并為脈沖發(fā)生功能以及任意波形發(fā)生功能存儲所需數(shù)據(jù);
步驟s120、配置結(jié)束后,向信號發(fā)生與讀出裝置發(fā)送指令進行數(shù)據(jù)檢驗,將所配置命令以及所存儲播放數(shù)據(jù)讀回校對;
步驟s130、數(shù)據(jù)檢驗結(jié)束后,對信號發(fā)生與讀出裝置的開始和停止條件進行配置;
步驟s140、完成開始和停止條件配置后信號發(fā)生與讀出裝置進入工作狀態(tài),等待開始條件并開始運行信號發(fā)生與讀出裝置;
步驟s150、信號發(fā)生與讀出裝置運行中若檢測到停止條件已經(jīng)滿足,則返回初始空閑狀態(tài),否則繼續(xù)運行。
綜上所述:
本發(fā)明實施例中公開了一種信號發(fā)生與讀出裝置,以高性能、邏輯單元豐富、實時性好以及可重復配置的fpga核心控制模塊為控制核心,并與時鐘管理模塊、通訊總線模塊、多通道存儲模塊、信號讀出模塊和信號發(fā)生模塊進行板載集成,實現(xiàn)了高采樣率任意波形發(fā)生、高精度脈沖序列發(fā)生、計數(shù)器、高精度時間數(shù)字變換以及高采樣率波形采集功能之間的靈活協(xié)同,因此,具有高集成度、高性能、、低成本的特性。相應的,本發(fā)明實施例還公開了一種信號發(fā)生與讀出裝置的控制方法。
本說明書中各個實施例采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似部分互相參見即可。對于實施例公開的裝置而言,由于其與實施例公開的方法相對應,所以描述的比較簡單,相關之處參見方法部分說明即可。
專業(yè)人員還可以進一步意識到,結(jié)合本文中所公開的實施例描述的各示例的單元及算法步驟,能夠以電子硬件、計算機軟件或者二者的結(jié)合來實現(xiàn),為了清楚地說明硬件和軟件的可互換性,在上述說明中已經(jīng)按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術方案的特定應用和設計約束條件。專業(yè)技術人員可以對每個特定的應用來使用不同方法來實現(xiàn)所描述的功能,但是這種實現(xiàn)不應認為超出本發(fā)明的范圍。
結(jié)合本文中所公開的實施例描述的方法或算法的步驟可以直接用硬件、處理器執(zhí)行的軟件模塊,或者二者的結(jié)合來實施。軟件模塊可以置于隨機存儲器(ram)、內(nèi)存、只讀存儲器(rom)、電可編程rom、電可擦除可編程rom、寄存器、硬盤、可移動磁盤、cd-rom、或技術領域內(nèi)所公知的任意其它形式的存儲介質(zhì)中。
對所公開的實施例的上述說明,使本領域?qū)I(yè)技術人員能夠?qū)崿F(xiàn)或使用本發(fā)明。對這些實施例的多種修改對本領域的專業(yè)技術人員來說將是顯而易見的,本文中所定義的一般原理可以在不脫離本發(fā)明的精神或范圍的情況下,在其它實施例中實現(xiàn)。因此,本發(fā)明將不會被限制于本文所示的這些實施例,而是要符合與本文所公開的原理和新穎特點相一致的最寬的范圍。