高速數據采集系統中的存儲與傳輸控制邏輯設計
隨著信息科學的飛速發展,數據采集和存儲技術廣泛應用于雷達、通信、遙測遙感等領域。在高速數據采集系統中,由ADC轉換后的數據需要存儲在存儲器 中,再進行相應的處理,保證快速準確的數據傳輸處理是實現高速數據采集的一個關鍵。由于高速ADC的轉換率很高,而大容量RAM相對ADC輸出速度較慢, 保持高速數據存儲過程的可靠性、實時性是一個比較棘手的問題。對于數據采集系統中的大容量高速度數據存儲、傳輸,本文提出一種基于FPGA的多片RAM實 現高速數據的存儲和傳輸的方案,并應用于1GS/s數據采集系統中,實現了以低成本RAM完成高速實時數據存儲系統的設計。
本文引用地址:http://www.j9360.com/article/83041.htm方案選擇
高速的數據采集速度是保證數據采集精度的標準,但往往在數據處理時并不需要以同樣的速度來進行,否則對硬件的需求太高,成本也較高。這就需要有一個數據緩存單元,將數據有效地存儲,再根據系統需求進行數據處理。
通常構成高速緩存的方案有三種。第一種是FIFO(先進先出)方式。FIFO存儲器就像數據管道一樣,數據從管道的一頭流入,從另一頭流 出,先進入的數據先流出。FIFO具有兩套數據線而無地址線,可在其一端寫操作而在另一端讀操作,數據在其中順序移動,因而能夠達到很高的傳輸速度和效 率,且由于省去了地址線而有利于PCB板布線。缺點是只能順序讀寫數據,不易靈活控制,而且大容量的高速FIFO非常昂貴。
第二種是雙口RAM方式。雙口RAM具有兩套獨立的數據、地址和控制總線,因而可從兩個端口同時讀寫而互不干擾,并可將采樣數據從一個端口 寫入,而由控制器從另一個端口讀出。雙口RAM也能達到很高的傳輸速度,并且具有隨機存取的優點,缺點是大容量的高速雙口RAM的價格很昂貴。
第三種是高速SRAM切換方式。高速SRAM只有一套數據、地址和控制總線,可通過三態緩沖門分別接到A/D轉換器和控制器上。當A/D采 樣時,SRAM由三態門切換到A/D轉換器一側,以使采樣數據寫入其中。當A/D采樣結束后,SRAM再由三態門切換到控制器一側進行讀寫。這種方式的優 點是SRAM可隨機存取,同時較大容量的高速SRAM有現成的產品可供選擇。
從降低成本上考慮,采用第三種方式實現大容量數據存儲功能。結合1GS/s數據采集系統的要求,存儲深度為4MB。選擇ISSI公司的靜態RAM,由8片IS61LV25616構成4MB測試數據的存儲,系統結構如圖1所示。
圖1 數據存儲原理框圖
數據存儲設計
● 數據流控制
ADC為雙通道500MS/s的轉換率,8bit的垂直分辨率,轉換數據的輸出是每通道I、Q兩個方向上差動輸出,在差動時鐘500MHz 的驅動下,可以實現1GS/s的實時采樣率,由ADC輸出的4路轉換數據流輸出分別為250MS/s。而IS61LV256系列RAM的速度級別為 10ns或12ns,這樣數據必須經過FPGA進行緩存以后,才可以再次存入RAM。
IS61LV25616系列RAM芯片有16位數據線,18位地址寬度,同時還包括數據讀RD、寫WR及片選CS等控制信號。將8片RAM并行連接到FPGA上,組成數據采集的存儲單元。
將從ADC輸出AI[8...0]、AQ[8...0]、BI[8...0]、BQ[8...0],每路信號都為LVDS輸出,共32位為 一組轉換數據DATA[31...0],速率為250MS/s,要將這個速度在FPGA內部降至RAM可接受的范圍。選用CycloneII系列 FPGA,其內部時鐘可工作在402.5MHz,支持單端和高速差動標準I/O接口,對于250MS/s的數據流完全可以接收。利用FPGA內部的D觸發 器作為緩沖,經過4級緩沖之后分別得到DBO[127...0],這樣數據速度降為62.5MS/s。經過緩沖后的數據已經在選用的RAM接受速度級別 內,將得到128位的數據作為8片RAM的數據線,完成了數據流的控制。數據緩沖的原理如圖2所示。
圖2 數據緩沖設計
● 地址發生器設計
每次讀寫數據時,必須提供數據的存儲位置,以讀寫信號作為時鐘計數信號,順序產生地址信號,其中NWE是RAM的寫數據信號,NOE是讀數 據信號,二者都是低電平有效,選擇AB[17...0]作為RAM組的地址信號。CNTEN是地址計數器的使能信號,由讀取/寫入數據的深度決定,當未完 成讀取/寫入的數據時,CNTEN=0,此時允許讀/寫操作繼續執行;當讀/寫操作完成時,相應的地址信號將CNTEN設置為1,則停止地址計數。地址發 生器的原理如圖3所示。
圖3 地址發生器設計
評論