高速信號采集記錄儀設計
摘要:針對高速信號實(shí)時(shí)采集存儲的需求,設計了一種高速信號采集記錄儀。記錄儀通過(guò)高速A/D轉換器對信號進(jìn)行采樣,并實(shí)時(shí)存入NAND FLASH存儲陣列中。為提高數據存儲速率,綜合采用并行總線(xiàn)、交錯雙平面頁(yè)編程、多級流水線(xiàn)等技術(shù),大幅提升FLASH的寫(xiě)入速度。記錄儀可實(shí)現8bit、200MSPS的采樣速率,并可將速率為200MB/s的采樣數據實(shí)時(shí)存儲。
本文引用地址:http://dyxdggzs.com/article/201610/306117.htm0 引言
目前在各工業(yè)領(lǐng)域對數據采集存儲的需求越來(lái)越多,對采集速率和存儲速率的要求也越來(lái)越高。特別是在航空航天領(lǐng)域,經(jīng)常要對高速信號進(jìn)行采集,并將采集數據實(shí)時(shí)存儲在非易失存儲器之中,以便事后分析處理。
為滿(mǎn)足需求,本文提出一種高速信號采集記錄儀的設計方法。采用高速A/D轉換器對輸入信號進(jìn)行200MSPS的高速采樣,然后將采樣數據實(shí)時(shí)存入 FLASH存儲陣列中。綜合采用了并行總線(xiàn)、交錯雙平面頁(yè)編程、多級流水線(xiàn)等技術(shù),大幅提升FLASH的寫(xiě)入速度,從而實(shí)現200MB/s采樣數據的實(shí)時(shí)存儲記錄。
1 系統組成及工作原理
1.1 記錄儀系統組成
圖1為記錄儀系統組成框圖,記錄儀電路系統主要由FPGA電路、時(shí)鐘電路、高速采集電路、高速存儲電路、電源電路、其他外圍電路等組成。

PGA選用Xilinx公司的XC4VSX55,PLL時(shí)鐘芯片選用TI公司CDCF5801A,A/D轉換器選用TI公司ADS5547,NAND FLASH存儲芯片選用三星公司K9WAG08U1A,USB控制芯片選用CYPR ESS公司CY7C68013A。
1. 2 記錄儀工作原理
系統的工作原理為:上電后,FPGA首先讀取NOR FLASH中存儲的NAND FLASH壞塊信息,在內部RAM中建立壞塊表,之后每次需要對NAND FLASH進(jìn)行讀寫(xiě)操作之前,都要先查詢(xún)壞塊表,若準備操作的塊為壞塊,則跳到下一塊繼續查詢(xún),直到找到好塊才進(jìn)行操作。
當需要采集記錄信號時(shí),先通過(guò)外接的鍵盤(pán)和LCD顯示模塊設置采樣參數。然后記錄儀接收到啟動(dòng)信號后開(kāi)始進(jìn)行采樣記錄,需采樣信號從SMA接口輸入后經(jīng)過(guò)差分放大器轉換為差分信號,然后進(jìn)入A/D轉換器進(jìn)行200MSPS采樣,FPGA接收采樣數據,采樣4級流水線(xiàn)對NAND FLASH存儲陣列進(jìn)行寫(xiě)入操作。此外FPGA還需完成對其他外圍器件的控制。
當需要上傳數據時(shí),FPGA將數據從NAND FLASH中讀出,通過(guò)USB控制芯片將數據上傳給上位機。
2 關(guān)鍵技術(shù)
2.1 高速A/D采樣
記錄儀采用的A/D轉換器為T(mén)I公司的14bit、210MSPS的高速A/D芯片ADS5547。系統中實(shí)際采用的采樣時(shí)鐘頻率為200MHz,由50MHz晶振時(shí)鐘通過(guò)CDCF5801A倍頻產(chǎn)生。
ADS5547采用的工作模式為L(cháng)VDS DDR模式,即在A(yíng)/D輸出時(shí)鐘的下降沿傳輸采樣數據的奇位,在上升沿傳輸采樣數據的偶位,所以實(shí)際數據傳輸頻率為400MHz,對于這種高速數據傳輸,在PCB設計時(shí)需注意7對差分數據線(xiàn)和1對差分時(shí)鐘線(xiàn)保持等長(cháng),確保跡線(xiàn)傳輸延時(shí)相同。
在FPGA數據接收模塊的設計中,直接調用芯片中的IDDR原語(yǔ),如圖2所示,其在SAME EDGE工作模式下的時(shí)序正好匹配ADS5547的數據輸出時(shí)序,所以可將7路DDR數據轉換為14bit并行數據,考慮到NAND FLASH的寫(xiě)入速度,在存儲時(shí)截取采樣數據的高8位,這樣需要存儲數據的速率為200MR/s。

2.2 高速數據存儲
記錄儀采用的非易失存儲器為三星公司的NANDFLASH芯片K9WAG8U1A,單片容量為2GB。由于單片FLASH的存儲容量和寫(xiě)入速度有限,所以使用了16片FLASH成存儲陣列,總容量為32GB,并綜合采用了并行總線(xiàn)、交錯雙平面頁(yè)編程、多級流水線(xiàn)等技術(shù)提升寫(xiě)入速度。
(1)并行總線(xiàn)
為了提升數據吞吐量,將N片FLASH芯片的I/O并行操作,總線(xiàn)寬度增加為單片的N倍,并共用讀寫(xiě)控制線(xiàn),這樣可將N片FLASH當做一片大位寬 FLASH同時(shí)進(jìn)行讀寫(xiě)操作,從而可以將寫(xiě)入速度提升至N倍。在該記錄儀中,是將8片FLASH的I/O并行操作,每片FLASH的數據位寬為8bit,所以總位寬為64bit,寫(xiě)入速率可提高為單片的8倍。平均數據寫(xiě)入周期只需達到40ns即可實(shí)現200MB/s的數據速率,滿(mǎn)足FLASH的25ns最小寫(xiě)入周期要求。
(2)交錯雙平面頁(yè)編程
NAND FLASH的寫(xiě)入操作是以頁(yè)為單位進(jìn)行的,稱(chēng)為頁(yè)編程操作,分為兩階段進(jìn)行。第一階段為數據載入階段,是將數據先寫(xiě)入到頁(yè)寄存器中,第二階段為編程階段,是將數據從頁(yè)寄存器中真正編程到FLASH的存儲單元之中。數據載入頁(yè)寄存器時(shí)最高速率可達到40MB/s(單片),但數據編程階段所需時(shí)間為 200~700μs,若等待一頁(yè)編程完成之后再進(jìn)行下一頁(yè)數據的載入會(huì )嚴重降低數據寫(xiě)入速率。為充分利用編程階段的時(shí)間,并且增加數據載入時(shí)間以便于流水線(xiàn)操作,采用了交錯雙平面頁(yè)編程方法。
每片K9WAG08U1A實(shí)際上是由2片K9K8G08U0A組成,而每片K9K8G08U0A又由2片K9F4G08U0A組成,每片 K9F4G08U0A又由2個(gè)2Gb的存儲平面組成,每個(gè)存儲平面有獨立的2112字節頁(yè)寄存器,因此可實(shí)現雙平面頁(yè)編程操作,而2片 K9F4G08U0A之間可以實(shí)現交替操作。K9K8G08U0A存儲平面如圖3所示,Plane0和Plane1組成第1片 K9F4G08U0A,Plane2和Plane3組成第2片K9F4G08U0A。

當進(jìn)行FLASH編程操作時(shí),先發(fā)送雙平面編程指令,然后Plane0和Plane1進(jìn)行數據載入,載入完成后進(jìn)入編程階段。此時(shí)無(wú)需等待編程結束,直接對Plane2和Plane3繼續進(jìn)行數據載入,即可實(shí)現交錯雙平面頁(yè)編程。操作時(shí)序如圖4所示。
(3)多級流水線(xiàn)
運用交錯雙平面頁(yè)編程方式后,可以連續進(jìn)行4頁(yè)的數據載入操作,但載入完成后整片K9WAG08U1A的4個(gè)平面都將進(jìn)入編程階段,無(wú)法繼續進(jìn)行操作。為了實(shí)現數據的連續載入,采用了多級流水線(xiàn)技術(shù)。
實(shí)現流水線(xiàn)操作首先要對FLASH存儲陣列進(jìn)行分組。由于每片FLASH是由2片K9K8G08U0A組成,所以存儲陣列可以看作由32片K9K8G08U0A組成,把每8片K9K8G08U0A分為一組,在讀寫(xiě)時(shí)并行操作,這樣整個(gè)存儲陣列分為四組,如圖5所示。

流水線(xiàn)操作方法如圖6所示。FLASH進(jìn)行寫(xiě)入時(shí),首先通過(guò)片選信號選中第1組FLASH,進(jìn)行數據載入操作,載入完成后,該組FLASH進(jìn)入編程階段,此時(shí)切換片選信號,選中第2組FLASH,繼續進(jìn)行數據載入,依此類(lèi)推。由于采用了交錯雙平面頁(yè)編程方式,所以每個(gè)載入過(guò)程可以載入4頁(yè)的數據,而采用并行總線(xiàn)之后,位寬為64bit,即每個(gè)寫(xiě)周期可寫(xiě)入8Bytes的數據,按照200MB/s的數據速率計算,每個(gè)載入階段的時(shí)間為:

當第4組FLASH的載入過(guò)程完成后,距離第1組FLASH開(kāi)始編程時(shí)已過(guò)去983μs,大于最長(cháng)編程時(shí)間700μs,所以第1組可繼續開(kāi)始數據載入操作。通過(guò)流水線(xiàn)操作,實(shí)現了數據的連續載入,從而大幅提高了寫(xiě)入速度,實(shí)現了200MB/s的數據存儲速率。
3 試驗驗證
為驗證記錄儀的性能,進(jìn)行了數據采集試驗。試驗中采用信號發(fā)生器產(chǎn)生周期為100ns的正弦信號輸入記錄儀,記錄儀對其進(jìn)行實(shí)時(shí)采集存儲,采集時(shí)間為 5s,即產(chǎn)生的數據量為1GB。采集完成后,在上位機軟件中發(fā)出上傳指令讀取FLASH中的數據,并通過(guò)USB接口上傳到上位機形成二進(jìn)制數據文件。然后截取其中的一段波形進(jìn)行顯示,如圖7所示。

在圖中可以看到,正弦信號的每個(gè)周期對應20個(gè)點(diǎn),而采樣周期為5ns,所以20個(gè)點(diǎn)為100ns,與設置的信號周期相一致,說(shuō)明記錄儀實(shí)現了200MSPS的采樣速率和200MB/s的數據存儲速率。
4 結論
設計了一種高速信號采集記錄儀,該記錄儀可 實(shí)現8bit,200MSPS的采樣率,并可對采樣數據實(shí)時(shí)存儲。其電路系統可由單板實(shí)現,具有體積小,便于攜帶和應用的優(yōu)點(diǎn)。該記錄儀適用于各種需要高速信號采集的場(chǎng)合,應用前景廣泛。
評論