用於數據記錄與回放的裝置及系統的製作方法
2023-05-01 14:29:36 1
專利名稱:用於數據記錄與回放的裝置及系統的製作方法
技術領域:
本實用新型涉及數字通信技術領域,更為具體地,涉及一種對高速數位訊號進行記錄和回放的數據記錄與回放系統。
背景技術:
在高速數字通信系統設計過程中,為了便於調試和測試通信系統,需要產生特定的數據並且使用該特定數據對系統性能進行調試和測試。同時,為了提高實際測試和系統級聯調試時的效率,需要將測試過程中收到的信號先按照要求記錄下來,並在調試的過程中將所記錄的數據文件以電信號的形式按照需要的碼速進行回放,以便於在調試過程中發現並改正系統中存在的問題。在遙感和衛星通信系統中,數據傳輸速率可以在I兆比特每秒(Mbps)到IOOOMbps的範圍內變化。在一些主流遙感和衛星通信系統中,數據傳輸速率已經達到100Mbps,甚至是吉比特每秒(Gbps)的量級,例如美國航空航天局和日本宇宙航空研究開發機構已經有多個衛星項目實現了 Gbps量級的下行傳輸鏈路,而我國下一代空間衛星通信的傳輸速率也將達到Gbps量級。為了適配遙感和衛星通信系統中的IMbps到IOOOMbps的數據速率變化,在目前遙感和衛星通信系統所使用的高速數據記錄與回放系統中,通常需要設置手動更改系統。這些手動更改系統導致高速數據記錄與回放系統的操作複雜並且容易出現錯誤。此外,在目前的高速記錄與回放系統中,由於瞬間高速信號的輸入輸出,導致系統產生溢出等不穩定情況。
實用新型內容鑑於上述問題,本實用新型的一個目的是提供一種數據記錄與回放系統,其能夠自適應地適配數據傳輸速率中的變化。本實用新型的另一目的是提供一種用於實現高速數據記錄的裝置。本實用新型的另一目的是提供一種用於實現高速數據回放的裝置。根據本實用新型的一個方面,提供一種用於實現高速數據記錄的裝置,包括:信號輸入電路,被配置為接收從外部輸入的基帶信號,並且將所接收的基帶信號轉換為數據;第
一FPGA,與所述信號輸入電路相連並且通過總線與外部記錄裝置相連,被配置為從信號輸入電路接收數據,並且將所接收的數據持續輸出到第二 FPGA,以及在從第二 FPGA接收到數據後,將所接收的數據通過總線傳輸到外部記錄裝置中進行記錄;第二 FPGA,與所述第一FPGA相連,被配置為將從第一 FPGA接收的數據寫入到第一和第二存儲單元中的一個存儲單元中,同時從另一存儲單元讀取數據並緩存在第二 FPGA的內部緩存中,並且在內部緩存所緩存的數據的大小達到第一預定值時,將內部緩存的數據傳送到第一 FPGA ;第一和第二存儲單元,與所述第二 FPGA相連,其中所述兩個存儲單元和所述第二 FPGA協作進行桌球緩存操作,其中,所述第一和第二存儲單元的存儲容量大小相等,並且由第一 FPGA根據輸入信號的速率控制第二 FPGA來設定。在上述方面的一個或多個示例中,所述裝置還可以包括:電平及串並變換單元,用於對從外部輸入的信號進行電平及串並變換。在上述方面的一個或多個示例中,所述裝置還可以包括:總線橋接器,用於實現第一總線與第二總線間的橋接,其中,所述第一 FPGA與總線橋接器通過第一總線相連,以及所述總線橋接器與外部記錄裝置通過第二總線相連。在上述方面的一個或多個示例中,所述總線橋接器可以是PEX 8311。根據本實用新型的另一方面,提供一種用於實現高速數據回放的裝置,包括:信號輸出電路,用於將所接收的數據轉換為基帶信號;第三FPGA,與所述信號輸出電路相連並且通過總線與外部記錄裝置相連,被配置為從外部記錄裝置讀取所記錄的數據,並將所讀取的數據持續地傳輸到第四FPGA,以及在從第四FPGA接收到數據後,將所接收的數據按照指定速率傳輸到信號輸出電路並轉換為基帶信號後進行回放;第四FPGA,與所述第三FPGA相連,被配置為將從第三FPGA接收的數據寫入到第三和第四存儲單元中的一個內存單元中,同時從另一內存單元讀取數據並緩存在第四FPGA的內部緩存中,並且在內部緩存所緩存的數據的大小達到第二預定值時,將內部緩存的數據傳送到第三FPGA ;以及第三和第四存儲單元,與所述第四FPGA相連,其中所述第三和第四存儲單元和所述第四FPGA協作進行桌球緩存操作。在上述方面的一個或多個示例中,所述信號輸出電路還可以包括:電平及並串變換單元,用於對從第三FPGA輸出的數據進行並串及電平變換。在上述方面的一個或多個示例中,所述裝置還可以包括:總線橋接器,用於實現第一總線與第二總線間的橋接,其中,所述第三FPGA與總線橋接器通過第一總線相連,以及所述總線橋接器與外部記錄裝置通過第二總線相連。在上述方面的一個或多個示例中,所述指定速率是由第三FPGA根據所接收的數據回放指令中的回放速率信息設定的。在上述方面的一個或多個示例中,所述指定速率是由第三FPGA根據所接收的數據回放指令中的回放速率信息,通過頻率綜合器設定的。根據本實用新型的另一方面,提供一種數據記錄與回放系統,包括:如上所述的用於實現高速記錄的裝置;如上所述的用於實現高速回放裝置;以及記錄裝置。在上述方面的一個或多個示例中,所述第一 FPGA和第二 FPGA分別與所述第三FPGA和第四FPGA相同,以及所述第一和第二存儲單元分別與所述第三和第四存儲單元相同。利用上述數據記錄與回放系統,可以自適應地適配高速數據傳輸中的數據速率變化,而無需手動更改系統。此外,還可以消除由於瞬間高速信號的輸入輸出而導致系統產生溢出等問題。
根據下述參照附圖進行的詳細描述,本實用新型的上述和其他目的、特徵和優點將變得更加顯而易見。在附圖中:圖1示出了根據本實用新型實施例的用於高速數據記錄的裝置的結構框圖;[0022]圖2示出了圖1中的裝置的信號輸入電路的一個實現示例的示意圖;圖3示出了根據本實用新型實施例的總線控制結構;圖4示出了根據本實用新型實施例的適應多速率的數據緩存結構;圖5示出了根據本實用新型實施例的用於高速數據回放的裝置的結構框圖;圖6示出了圖5中的裝置的信號輸出電路的一個實現示例的示意圖;圖7示出了根據本實用新型的數據記錄與回放系統的結構框圖;圖8示出了根據本實用新型的數據記錄與回放系統的一個示例的示意圖;和圖9示出了根據本實用新型的數據記錄與回放系統中的誤碼統計結構。在所有附圖中相同的標號指示相似或相應的特徵或功能。
具體實施方式
下面將結合附圖說明根據本實用新型的實施例。圖1示出了根據本實用新型實施例的用於高速數據記錄的裝置100的結構框圖。如圖1所示,裝置100包括信號輸入電路110、第一 FPGA 120、第二 FPGA130、第一內存單元140以及第二內存單元150。信號輸入電路110與第一 FPGA相連。在進行高速數據記錄時,信號輸入電路110被配置為接收從外部輸入的基帶信號,比如從外部輸入的ECL電平信號,並且將所接收的基帶信號轉換為數據。隨後,將經過轉換後得到的數據傳輸到第一 FPGA 120。在根據本實用新型的實施例中,信號輸入電路110所接收的基帶信號的電平可以與第一 FPGA 120的輸入信號的電平要求不同。此外,信號輸入電路110所接收的基帶信號可以是串行信號,而不是FPGA的輸入信號所要求的並行信號。在這種情況下,信號輸入電路110還可以包括電平及串並變換單元,用於對從外部接收的基帶信號進行電平及串並變換。圖2示出了在需要對外部輸入的基帶信號進行電平及串並變換時信號輸入電路的一個實現示例的結構示圖。如圖2所示,外部輸入的基帶信號的電平是ECL電平。在圖2中示出的電路結構中,首先,通過EP 90晶片對該外部輸入的基帶信號進行電平變換,將該基帶信號的電平變換為LVPECL。接著,利用可編程邏輯延時晶片MC10EP195對EP 90晶片輸出的時鐘信號進行延遲,從而實現數據與時鐘信號的嚴格對齊。該晶片的理論傳輸速率為1.2GHz,延時精度為10ps。然後,利用MC10EP445晶片對數據進行串並轉換,將最大IGbps的數據流變為8路最大125MHz的並行數據流。接著,通過MC100LVELT23晶片將MC10EP445變換得到的並行LVPECL信號轉化為LVTTL電平信號送給FPGA,MC100LVELT23晶片為雙通道LVTTL驅動晶片,單通道傳輸速率可達180MHz以上。FPGA通過LVTTL接口進行接收。FPGA模塊(8口,第一 FPGA和第二 FPGA)採用StratixII EP2S180F1020C3晶片,最高工作頻率達到550MHz,其中LVTTL接口傳輸速率可以達到250Mbps。此外,該信號輸入電路中還包括MC100EPT22晶片,用以實現LVTTL電平到LVPECL電平的轉化,並實現對以上晶片的控制。第一 FPGA 120被配置為接收從信號輸入電路輸出的數據。此外,第一 FPGA 120與第二 FPGA 130相連,用於將所接收的數據持續輸出到第二 FPGA130。並且,第一 FPGA 120還被配置為通過總線與外部記錄裝置相連,用於在進行數據記錄時,在從接收到第二 FPGA130傳送的數據後,通過總線將所接收的數據傳輸到外部記錄裝置中進行記錄。[0038]第二 FPGA 130與第一存儲單元140和第二存儲單元150相連,並且被配置為將從第一 FPGA 120接收的數據寫入到第一存儲單元140和第二存儲單元150中的一個存儲單元中,同時從另一存儲單元讀取數據並緩存在第二 FPGA130的內部緩存中。此外,在內部緩存所緩存的數據的大小達到第一預定值時,第二 FPGA 130被配置為將內部緩存的數據傳送到第一 FPGA 120。所述第一存儲單元140和第二存儲單元150被配置為緩存數據。在本實用新型中,利用兩個存儲單元(在本示例中為DDR2內存)與第二 FPGA 130的內部FIFO配合的方式進行桌球緩存操作,實現高速串行數據流的緩存。在進行桌球緩存操作時,通過第二FPGA 130來控制第一存儲單元140和第二存儲單元150的硬體時序。例如,在圖1所示的實施例中,第一存儲單元140、第二存儲單元150與第二 FPGA130的內部緩存(即,FIFO)組成緩存結構,並且一起配合來對數據信號執行桌球緩存操作。所述桌球緩存操作指的是當對一個存儲單元執行寫入操作時,對另一存儲單元執行讀取操作。對第一存儲單元140和第二存儲單元150執行寫入和/或讀取操作的切換時序由第二FPGA 130控制。當第二 FPGA 130對一個存儲單元執行寫入操作並且寫滿該存儲單元時,第二 FPGA 130變為對該存儲單元執行讀取操作。當第二 FPGA 130對一個存儲單元執行讀取操作並且讀空該存儲單元時,第二 FPGA 130變為對該存儲單元執行寫入操作。此外,第一存儲單元140和第二存儲單元150的存儲容量通常被設置為大小相等,並且該大小由第一FPGA 120根據輸入信號的速率控制第二 FPGA 130來設定。此外,在數據記錄過程中,數據需要在裝置100和外部記錄裝置(例如,計算機)之間進行傳輸,為了達到速率的上限要求,裝置100還可以包括總線橋接器160,用於實現第一總線與第二總線間的橋接。在這種情況下,通常需要第一 FPGA 120與總線橋接器160之間通過第一總線(即,局部總線)相連,而總線橋接器160與外部記錄裝置(例如,計算機)通過第二總線(例如,PC1-E總線)相連。在本實用新型的一個示例中,所述總線橋接器160可以採用PLX公司的PEX8311。圖3示出了根據本實用新型實施例的總線控制結構的一個示例的示圖。在圖3中示出了 FPGA晶片、PEX8311晶片以及PC1-E接口總線的關係。PEX8311是PLX公司的一款PC1-E總線到局部總線的橋接晶片,支持2.5Gbps的單向傳輸速率,使數據能夠通過PC1-E總線與計算機相互傳輸,滿足速率要求。局部總線採用66M晶振產生的時鐘,數據以32bit位寬並行傳輸。圖4示出了根據本實用新型實施例的適應多速率的數據緩存結構的一個示例的示意圖,在該圖中採用總線橋接器PEX8311,在進行數據記錄時,首先利用PLX公司提供的API函數開啟PEX8311的DMA傳輸。如圖4所示,DDR2內存的工作時鐘為IOOMHz,由FPGA提供。由於DDR2內存為64bit總線寬度,所以DDR2內存的接口速率可以達到12Gbps以上,完全可以應對IGbps的串行數據流。在進行數據記錄時,第一 FPGA 120將輸入數據不斷寫入到第二 FPGA 130,第
二FPGA 130再將數據寫入到DDR2內存中進行緩存。當一片DDR2內存被寫入時,第二 FPGA130從另一片DDR2內存中讀出數據並且緩存到第二 FPGA 130的FIFO中。當FIFO內的數據大於第一預定值時,第二 FPGA 130將FIFO中緩存的數據傳到第一 FPGA 120。隨後,第一 FPGA 120將數據傳到總線橋接器PEX8311。然後,通過DMA傳輸,將數據信號從總線橋接器PEX8311傳輸到外部記錄裝置(例如,計算機)的指定位置(例如,指定文件)中。此外,當PEX8311的DMA傳輸出現短暫阻塞時,第二 FPGA 140從DDR2內存中讀取數據也將暫停,但不影響對另一塊內存的數據寫入。此外,為了使系統能夠自適應地匹配IMbps到IOOOMbps的數據速率變化,並且不會因為瞬間高速信號的輸入輸出,導致系統產生溢出,在本實用新型中,第一存儲單元140和第二存儲單元150的存儲容量大小(即緩存區大小)被設置為根據輸入數據的數據速率設定,即由第一 FPGA根據輸入信號的數據速率控制第二 FPGA來設定。例如,可以在外部記錄裝置端(例如,計算機軟體端),根據輸入數據速率將需要開闢的緩存區大小通過命令傳至第一 FPGA 120,第一 FPGA 120進而可以控制第二 FPGA 130來設定緩存區大小。在本實用新型中,緩存區大小與輸入數據速率有關。當輸入數據速率快時,緩存區被設置為較大,從而防止因數據寫入PEX8311的瞬時速率低而造成緩存溢出。此外,緩存區大小也不可以設置為過大,否則在初始階段,數據寫滿一片DDR2內存需要很長時間,將導致第一 FPGA長時間無法讀取數據,影響記錄效率。圖5示出了根據本實用新型實施例的用於高速數據回放的裝置500的結構框圖。如圖5所示,裝置500包括信號輸出電路510、第三FPGA 520、第四FPGA 530、第三存儲單元540和第五存儲單元550。信號輸出電路510用於將所接收的數據轉換為基帶信號。第三FPGA 520通過總線與外部記錄裝置相連。此外,第三FPGA 520還與所述信號輸出電路510和第四FPGA 530相連。在進行數據回放時,第三FPGA 520被配置為通過總線從外部記錄裝置(例如,計算機)讀取所記錄的數據,並將所讀取的數據持續地傳輸到第四FPGA。此外,在從第四FPGA 530接收到數據後,第三FPGA 520還被配置為將所接收的數據,按照指定速率傳輸到信號輸出電路510,並且由信號輸出電路510轉換為信號後進行回放。所述指定速率是由第三FPGA根據所接收的數據回放指令中的回放速率信息設定的。在本實用新型的一個示例中,所述指定速率是由第三FPGA根據所接收的數據回放指令中的回放速率信息,通過可調頻率綜合器設定的。第四FPGA 530與所述第三FPGA 520、第三存儲單元540和第四存儲單元550相連。第四FPGA 530的內部緩存與第三和第四存儲單元組成緩存結構,對數據信號進行桌球緩存操作。第四FPGA 530被配置為將從第三FPGA 520接收的數據寫入到第三和第四存儲單元中的一個內存單元中,同時從另一內存單元讀取數據並緩存在第四FPGA 530的內部緩存中。此外,在內部緩存所緩存的數據的大小達到第二預定值時,將內部緩存的數據傳送到第三 FPGA 520。在本實用新型的另一示例中,裝置500還可以包括總線橋接器560,用於實現第一總線和第二總線之間的橋接。在這種情況下,第三FPGA 520與總線橋接器560之間通過第一總線(例如,局部總線)連接,而總線橋接器560與外部記錄裝置(例如,計算機)之間通過第二總線(例如,PC1-E總線)連接。此外,在本實用新型的另一示例中,裝置500還可以包括頻率綜合器570,用於根據從第三FPGA接收的數據回放指令中的速率信息,設置數據回放時的回放速率,即第三FPGA傳輸到信號輸出電路的指定速率。[0053]另外,在本實用新型的另一示例中,與圖1中的信號輸入電路110類似,數據信號輸出電路510也可以包括並串及電平變換單元,用於對從第三FPGA輸出的數據進行並串及電平變換,以轉換為基帶信號。圖6示出了根據本實用新型的數據回放的工作原理和過程的示意圖。在該過程中,用戶通過外部記錄裝置端(例如,計算機軟體端)設置回放速率。當第三FPGA 520接收到數據回放指令時,將回放速率大小信息通過命令字傳給頻率綜合器570。頻率綜合器570輸出相應頻率的正弦信號,通過MAX9600晶片將正弦信號變為PECL電平的時鐘信號,MAX9600晶片輸出的PECL再經過始終驅動晶片MC100EP14送給I/Q並串轉換晶片為MC10EP446,同時它可以根據輸入時鐘信號進行1/8分頻,將得到的1/8分頻信號送給MC100LVELT23晶片變為LVTTL電平信號後傳給FPGA,實現8位並行數據輸出。此外,在圖6中所示的電路中,還採用延遲晶片MC10EP195將輸出的串行I/Q信號與時鐘信號對齊,由時鐘延遲晶片輸出的LVPECL時鐘信號以及晶片MC10EP446輸出的1、Q兩路信號經過MC100EP91晶片轉化為NECL電平信號。回放部分的末端為MC10EP16晶片,用以驅動NECL電平信號。這裡要說明的是,上述第一預定值和第二預定值通常被設置為固定值,可以相同,也可以不同。圖7示出了根據本實用新型的數據記錄與回放系統10的結構框圖。如圖7所示,數據記錄與回放系統10包括如上所述的裝置100、如上所述的裝置500和記錄裝置200。圖8示出了根據本實用新型的數據記錄與回放系統10的一個示例的示意圖。在該示例中,所述第一 FPGA和第二 FPGA分別與所述第三FPGA和第四FPGA相同,以及所述第一和第二存儲單元分別與所述第三和第四存儲單元相同。換言之,第一 FPGA與第三FPGA是同一晶片,第二 FPGA與第四FPGA是同一晶片,第一存儲單元與第三存儲單元是同一存儲單元,第二存儲單元與第四存儲單元是同一存儲單元。在本實用新型的一個示例中,數據記錄與回放系統10還可以具有誤碼統計功能。圖9示出了根據本實用新型實施例的數據記錄與回放系統中用於實現誤碼統計的結構的示圖。如圖9所示,在數據記錄與回放系統10的第一 FPGA中還可以包括:本地M序列產生模塊、同步模塊/異或運算模塊以及計數/誤碼統計模塊。本地M序列產生模塊和外部電路中的M序列產生模塊都使用移位寄存器和異或門構成。在對所輸入的外部M序列產生模塊所生成的M序列進行誤碼統計時,將所接收到的前數個(個數取決於M序列的模式)數據輸入到本地M序列產生模塊的移位寄存器中,使寄存器自身循環得到與信道同步的正確M序列。將自信道傳輸來的M序列與本地產生的M序列通過同步模塊使數據同步並進行異或運算找出錯誤比特位。然後,計數/誤碼統計模塊對誤比特數進行統計並計算出系統誤碼率。最後,通過Mailbox寄存器將比對得到的誤碼率數值傳輸給伺服器,由此完成信號誤碼率的統計。Mailbox寄存器可以採用PEX8311提供的32位mailbox寄存器,這些寄存器的值可在軟體部分調用API函數進行任意的讀寫,也可以在硬體中由FPGA通過局部總線按照一定的時序進行讀寫。在本實用新型中,在執行高速數據回放或記錄的時候,利用PEX8311提供的DMA數據傳輸模式。在DMA傳輸模式下,通過PLX公司提供的API函數啟動和設置DMA傳輸,並利用API函數得到記錄的數據或傳出回放的數據。雖然如上參照圖描述了根據本實用新型的各個實施例進行了描述,但是本領域技術人員應當理解,對上述本實用新型所提出的各個實施例,還可以在不脫離本實用新型內容的基礎上做出各種改進。因此,本實用新型的保護範圍應當由所附的權利要求書的內容確定。
權利要求1.一種用於實現高速數據記錄的裝置,其特徵在於,包括: 信號輸入電路,被配置為接收從外部輸入的基帶信號,並且將所接收的基帶信號轉換為數據; 第一 FPGA,與所述信號輸入電路相連並且通過總線與外部記錄裝置相連,被配置為從信號輸入電路接收數據,並且將所接收的數據持續輸出到第二 FPGA ; 第二FPGA,與所述第一FPGA相連,被配置為將從第一FPGA接收的數據寫入到第一和第二存儲單元中的一個存儲單元中,同時從另一存儲單元讀取數據並緩存在第二 FPGA的內部緩存中; 第一和第二存儲單元,與所述第二 FPGA相連,其中所述兩個存儲單元和所述第二 FPGA協作進行桌球緩存操作, 其中,所述第一和第二存儲單元的存儲容量大小相等。
2.如權利要求1所述的裝置,其特徵在於,所述信號輸入電路還包括: 電平及串並變換單元,用於對從外部輸入的基帶信號進行電平及串並變換。
3.如權利要求1所述的裝置,其特徵在於,還包括: 總線橋接器,用於實現第一總線與第二總線間的橋接, 其中,所述第一 FPGA與總線橋接器通過第一總線相連,以及所述總線橋接器與外部記錄裝置通過第二總線相連。
4.如權利要求1所述的裝置,其特徵在於,所述總線橋接器是PEX8311。
5.一種用於實現高速數據回放的裝置,包括: 信號輸出電路,用於將所接收的數據轉換為基帶信號; 第三FPGA,與所述信號輸出電路相連並且通過總線與外部記錄裝置相連,被配置為從外部記錄裝置讀取所記錄的數據,並將所讀取的數據持續地傳輸到第四FPGA ; 第四FPGA,與所述第三FPGA相連;以及 第三和第四存儲單元,與所述第四FPGA相連,其中所述第三和第四存儲單元和所述第四FPGA協作進行桌球緩存操作。
6.如權利要求5所述的裝置,其特徵在於,所述信號輸出電路還包括: 電平及並串變換單元,用於對從所述第三FPGA輸出的數據進行並串及電平變換。
7.如權利要求5所述的裝置,其特徵在於,還包括: 總線橋接器,用於實現第一總線與第二總線間的橋接, 其中,所述第三FPGA與總線橋接器通過第一總線相連,以及所述總線橋接器與外部記錄裝置通過第二總線相連。
8.一種數據記錄與回放系統,其特徵在於,包括: 如權利要求1到4中任何一個所述的裝置; 如權利要求5到7中任何一個所述的裝置;以及 記錄裝置。
9.如權利要求8所述的數據記錄與回放系統,其特徵在於,所述第一FPGA和第二 FPGA分別與所述第三FPGA和第四FPGA相同,以及所述第一和第二存儲單元分別與所述第三和第四存儲單元相同。
專利摘要本實用新型提供了一種數據記錄與回放系統。該系統包括信號輸入電路、信號輸出電路、兩個存儲單元、相互協作的第一和第二FPGA以及外部記錄裝置。兩個存儲單元與第二FPGA組成緩存結構,對數據進行桌球緩存處理。該兩個存儲單元的存儲容量大小由第一FPGA根據輸入數據的數據速率確定。利用該數據記錄與回放系統,可以自適應地適配高速數據傳輸中的數據速率變化,而無需手動更改系統。此外,還可以消除由於瞬間高速信號的輸入輸出而導致系統產生溢出等問題。
文檔編號H04B7/185GK203071936SQ20122045061
公開日2013年7月17日 申請日期2012年9月5日 優先權日2012年9月5日
發明者張洪群, 吳業煒, 韓家瑋, 李安, 張彧, 張國敬 申請人:中國科學院對地觀測與數字地球科學中心, 清華大學