孫 琦,苗巖松
(太原衛(wèi)星發(fā)射中心 技術部,山西 太原 030027)
隨著我國航天技術的不斷發(fā)展,為更詳盡地掌握運載火箭和衛(wèi)星在發(fā)射飛行期間的工作狀態(tài),運載火箭遙測系統(tǒng)和衛(wèi)星測控系統(tǒng)遙測數(shù)據(jù)量越來越大,無線傳輸方式由于遙測帶寬和地面測控弧段所限,只能采用高速大容量存儲器記錄回放數(shù)據(jù)。另外,隨著電子技術和雷達成像技術的快速發(fā)展,各種對地成像衛(wèi)星和雷達偵察衛(wèi)星對圖像精度要求越來越高,致使有效載荷的分辨率越來越高,由此也帶來了高速大容量數(shù)據(jù)的存儲問題。由于發(fā)射飛行和太空工作環(huán)境極其惡劣,運載火箭和衛(wèi)星上的各類存儲系統(tǒng)又要求掉電后能保留數(shù)據(jù)并具有較高的可靠性,因此存儲電路通常采用非易失的電路芯片。快速發(fā)展的Flash芯片因具有體積小、成本低、功耗小、壽命長、抗振動和寬溫度適應范圍等特點,逐漸成為高速大容量存儲系統(tǒng)設計的主流選擇。
根據(jù)運載火箭和衛(wèi)星各類遙測系統(tǒng)對實時存儲的需求,針對遙測系統(tǒng)實時存儲數(shù)據(jù)容量大、讀寫速度快、可靠性要求高和使用環(huán)境苛刻等要求,提出了采用Flash芯片作為存儲介質,通過流水線技術和并行處理技術,從而實現(xiàn)了低速Flash芯片實時可靠存儲高速數(shù)據(jù)的目的,利用無效塊管理技術和防誤擦除技術提高了高速實時數(shù)據(jù)存儲可靠性。
為提高獲取數(shù)據(jù)的容量和可靠性,運載火箭遙測系統(tǒng)、衛(wèi)星測控系統(tǒng)和衛(wèi)星有效載荷數(shù)傳系統(tǒng)等各類遙測系統(tǒng)在無線遙測傳輸?shù)幕A上,越來越多地采用存儲器實時記錄存儲遙測數(shù)據(jù)。
運載火箭遙測系統(tǒng)主要用于發(fā)射場測試和發(fā)射飛行期間的數(shù)據(jù)獲取,為射前決策提供數(shù)據(jù)支持,為飛行試驗結果分析提供依據(jù)[1]。運載火箭遙測系統(tǒng)數(shù)據(jù)傳輸方式包括無線遙測傳輸和存儲器記錄回收2種方式,中繼方式傳輸應用較少。
無線遙測傳輸方式受遙測帶寬所限,實時傳輸數(shù)據(jù)量有限。采用存儲器實時記錄,發(fā)射后對存儲器進行回收,可獲取大量詳盡的試驗數(shù)據(jù)。存儲器記錄方式還具有不受天氣和黑障影響、可靠性高等特點。
衛(wèi)星測控系統(tǒng)用于衛(wèi)星的跟蹤、遙測、遙控,遙測部分用于實時傳輸衛(wèi)星保障系統(tǒng)(衛(wèi)星平臺)的各種工作參數(shù),檢測衛(wèi)星保障系統(tǒng)工作情況。有效載荷數(shù)傳系統(tǒng)是根據(jù)遙控指令完成對有效載荷數(shù)據(jù)的接收、處理、存取、加密和射頻放大等,通過數(shù)傳天線發(fā)送至地面數(shù)據(jù)接收站[2]。衛(wèi)星測控數(shù)據(jù)和有效載荷數(shù)傳系統(tǒng)的應用數(shù)據(jù)一般包括實時無線下傳、中繼下傳和記錄回放下傳等方式。
實時無線下傳方式受測控布站、信道容量所限,只能在測控弧段內(nèi)傳輸數(shù)據(jù)。中繼方式實時發(fā)送數(shù)據(jù)量有限,只能實時下傳關鍵參數(shù)。衛(wèi)星運行在非地面測控弧段時,采用存儲器記錄數(shù)據(jù),達到測控弧段后快速讀出數(shù)據(jù)并通過無線方式下傳數(shù)據(jù)。
綜合分析運載火箭遙測系統(tǒng)、衛(wèi)星測控系統(tǒng)和衛(wèi)星有效載荷數(shù)傳系統(tǒng)等各類遙測系統(tǒng)的數(shù)據(jù)傳輸方式,存儲器在各類遙測系統(tǒng)中的應用越來越廣泛,起著越來越無法替代的作用。各類遙測系統(tǒng)對存儲器的需求如下:
① 存儲容量大:新型運載火箭由于采用總線技術,在提高可靠性的同時,數(shù)據(jù)量也越來越大,迫切需要提高存儲器容量,為事后結果分析提供更多數(shù)據(jù);隨著電子技術和雷達成像技術的快速發(fā)展,各種對地成像衛(wèi)星和雷達偵察衛(wèi)星對圖像精度要求越來越高,致使有效載荷的分辨率越來越高,由此也帶來了高速大容量數(shù)據(jù)的存儲問題。
② 讀寫速度快:由于運載火箭飛行時間較短,衛(wèi)星測控系統(tǒng)和數(shù)傳系統(tǒng)無線傳輸又受測控弧段所限,存儲器存儲容量的提升勢必對存儲器的讀寫速度提出更高的要求。只有讀寫速度提高,才能在有限的時間內(nèi),存入或讀出大量數(shù)據(jù),滿足各類遙測系統(tǒng)數(shù)據(jù)量提高和短時間無線向下傳輸?shù)男枨蟆?/p>
③ 可靠性高:由于發(fā)射飛行和太空工作環(huán)境極其惡劣,而各類存儲器所存儲的數(shù)據(jù)又極為珍貴,一旦存儲器出現(xiàn)問題造成數(shù)據(jù)丟失,會給運載火箭和衛(wèi)星應用帶來巨大問題,因此,運載火箭和衛(wèi)星上的各類存儲系統(tǒng)又要求掉電后能保留數(shù)據(jù)并具有良好的容錯能力,這就要求存儲器具有較高的可靠性。
基于Flash存儲介質的高速存儲關鍵技術主要有提高寫入速度的流水線技術和并行技術、提高可靠性的無效塊管理技術和防誤擦除技術[3]。
各類遙測系統(tǒng)要求存儲器在瞬態(tài)存儲時,存儲器的讀寫速度往往要達到20 Mb/s以上。由于大容量、高性價比以及斷電后數(shù)據(jù)保持能力的優(yōu)點,F(xiàn)lash芯片倍受青睞。由于Flash芯片在進行寫操作之前必須先進行擦除操作,因此Flash芯片讀數(shù)據(jù)的速度能夠滿足要求,但寫數(shù)據(jù)的速度較慢,達不到上述指標。
2.1.1 Flash芯片的固有寫入速度
典型的Flash芯片讀寫周期twc為25 ns,因此,緩沖區(qū)的峰值速度為:
fwr=1/twc=1/25 ns=40 Mb/s。
(1)
由緩沖區(qū)編程固化到Flash芯片的時間為tPROG,假設寫緩沖區(qū)和編程固化交替連續(xù)進行,則寫入Flash芯片的平均速度為:
(2)
Flash芯片編程固化一頁的數(shù)據(jù)所需時間tPROG一般為200 μs,最高不超過700 μs,將其代入式(2)得到:
2.73 Mb/s (3) 因此,F(xiàn)lash芯片的最高寫入速度約為8.15 Mb/s,遠遠無法達到20 Mb/s以上的寫入速度需求[4-5]。 2.1.2 流水線技術與并行技術 為了提高Flash芯片的寫入速度,達到20 Mb/s以上的讀寫速度要求,需要采取流水線技術和并行處理技術。 流水線技術在計算機領域和工業(yè)生產(chǎn)領域都已經(jīng)得到了廣泛運用,借鑒流水線技術在進行Flash芯片寫入時可以大大節(jié)省存儲時間,提高寫入速度[6]。Flash芯片每頁數(shù)據(jù)的寫入時間和編程時間是由芯片器件本身所決定的,當寫完一頁數(shù)據(jù)后,F(xiàn)lash芯片需要等待寫入的數(shù)據(jù)完成自動編程,即將數(shù)據(jù)從臨時寄存器中寫入存儲單元,編程期間不能進行其余操作,編程結束后,F(xiàn)lash芯片才能進行下一頁數(shù)據(jù)的寫入,然后再進行編程[7]。因此如果可以對Flash芯片的編程時間加以利用,使Flash芯片在進行本頁數(shù)據(jù)編程的同時去寫入下一頁數(shù)據(jù),這樣便可節(jié)省存儲時間,提高寫入速度[8]。 通過并行處理技術可以比較直觀地提高寫入速度:將n片低速Flash芯片并聯(lián),使用相同的控制線和信號線,構成一個Flash芯片組。這樣n片F(xiàn)lash芯片并行工作,進行相同的操作,理論上寫入速度可以達到單片F(xiàn)lash芯片的n倍[9]。 采用流水線技術和并行處理技術后,F(xiàn)lash芯片在高速存儲過程中不必去考慮頁編程是否完成,從而使Flash芯片的寫入速度近似達到芯片接口寫入速度(緩沖區(qū)的峰值速度)[10]。 2.1.3 技術實現(xiàn)途徑 采用流水線技術后,單個Flash芯片的寫入過程包括接收數(shù)據(jù)、寫數(shù)據(jù)和存儲器編程(等待存儲器寫入數(shù)據(jù))3道工序,如圖1所示,接收數(shù)據(jù)是指高速接收各類數(shù)據(jù)設備需要存儲的數(shù)據(jù)并將數(shù)據(jù)暫時存放到緩沖區(qū),寫數(shù)據(jù)是將存放到緩沖區(qū)的數(shù)據(jù)高速寫入到存儲器芯片,存儲器芯片需要長時間的編程等待[11]。所以,在寫入過程的3道工序中,存儲器編程屬于瓶頸工序。 圖1 單個Flash芯片高速寫入流水線 將n片F(xiàn)lash芯片組成一組,將存儲器編程工序設置n-1道并行工序,采取流水線技術和并行處理技術的電路框圖如圖2所示[12-13]。第1片F(xiàn)lash芯片寫入第1頁數(shù)據(jù)后進入存儲器編程工序,然后第2片F(xiàn)lash芯片開始寫入第1頁數(shù)據(jù),完成數(shù)據(jù)寫入后也進入存儲器編程工序,依次對第3~n片F(xiàn)lash芯片進行相同的操作。 圖2 n片F(xiàn)lash芯片并行高速寫入流水線時空圖 每片F(xiàn)lash芯片連續(xù)寫一頁的時間Δt為: Δt=2 048tWC=2 048×25 ns=51.2 μs, (4) n-1片F(xiàn)lash芯片緩存區(qū)各寫一頁的寫入時間: (n-1)Δt=(n-1)51.2 μs。 (5) 當n取15時(將15片F(xiàn)lash芯片組成一組,存儲器編程瓶頸工序設置14道并行工序),14片F(xiàn)lash芯片緩存區(qū)的寫入時間為716.8 μs。因此,當存儲器的第2~15片芯片完成寫入數(shù)據(jù)后,時間已超過了第1片芯片的編程時間tPROG(200~700 μs),此時第1片芯片已經(jīng)完成上一頁數(shù)據(jù)的編程,可以接收和寫入下一頁數(shù)據(jù),實際的讀寫速度可以達到緩沖區(qū)的峰值速度40 Mb/s。 Flash芯片的無效塊是指一個塊內(nèi)含有一位或更多位的數(shù)據(jù)單元無法進行讀、寫、擦除和編程等操作。若不對無效塊進行處理,將會導致數(shù)據(jù)的丟失和不連續(xù)。NAND型Flash芯片在出廠時內(nèi)部會隨機分布有無效塊(初始無效塊),在芯片的長期使用過程中不可避免地還會增加新的無效塊(新增無效塊)。因此在Flash芯片的使用過程中,需要建立一個針對無效塊的管理列表,將芯片包含的所有無效塊信息寫入此管理列表中,在新出現(xiàn)無效塊時也能夠及時更新無效塊管理列表。 2.2.1 建立無效塊管理列表 每一塊Flash芯片在出廠時已經(jīng)標明了初始無效塊。讀取Flash芯片每一塊的第1、第2頁的第2 048個字節(jié)來判斷該塊是否為無效塊:如果第1頁和第2頁的第2 048個字節(jié)均為“FF”(16進制),則認為此塊是有效塊,否則便為無效塊。建立無效塊管理列表可以使用將其內(nèi)部地址空間和Flash芯片內(nèi)部塊地址一一對應的映射方法,當發(fā)現(xiàn)某一塊是無效塊時,只需將列表中對應此塊地址的單元寫入“0”即可,而其余的地址單元仍為“1”(代表該塊為有效塊)[14]。在對Flash芯片的每一塊進行操作之前,都需要首先讀取無效塊管理列表中對應此塊地址單元的信息,判斷該塊是否為無效塊,如果是無效塊就跳過此塊不進行操作,直至找出有效塊時再進行操作[15]。建立無效塊管理列表如圖3所示。 圖3 建立無效塊管理列表 2.2.2 更新無效塊管理列表 對于Flash芯片使用過程中新增加的無效塊,可以通過讀狀態(tài)寄存器來進行判斷。操作Flash芯片過程中,如果出現(xiàn)無效塊,可以先更新狀態(tài)寄存器中對應于該塊的信息,待Flash芯片操作結束后再將狀態(tài)寄存器中的信息寫入無效塊管理列表[16]。無效塊管理列表的更新過程如圖4所示。 圖4 更新無效塊管理列表 由于Flash芯片在進行寫操作之前必須先進行擦除操作。在實際使用過程中,如果出現(xiàn)意外,則有可能出現(xiàn)二次擦除,若不采取防范措施,就會出現(xiàn)數(shù)據(jù)丟失的災難性后果,因此如何防止誤擦除是非常關鍵的。采用“讀數(shù)法”可以避免這種誤擦除[17]:在擦除后,F(xiàn)lash芯片內(nèi)部單元所存儲的數(shù)據(jù)均為“FFFF”,當Flash芯片開始記錄時,首先讀取Flash芯片內(nèi)所存儲的一小段數(shù)據(jù),如果該數(shù)據(jù)均為“FFFF”,表明Flash芯片已經(jīng)擦除完成還未開始記錄,此時可以開始進行記錄;如果該數(shù)據(jù)不為“FFFF”,則說明Flash芯片已經(jīng)存儲了有效數(shù)據(jù),此時,不再進行擦除和寫入工作。 目前該技術已經(jīng)在多種型號運載火箭的實際測試飛行中應用。如某型運載火箭為了獲取再入大氣穿越“黑障”區(qū)時遙測數(shù)據(jù)的采集任務,提高試驗數(shù)據(jù)的保密性,設計了低功耗、大容量、高讀寫速率和強抗過載的新型存儲器。存儲器模塊組成如圖5所示。 該存儲器主要包括接口保護電路、中心邏輯控制電路FPGA及E2PROM、FLASH存儲器、電壓穩(wěn)壓模塊、晶體振蕩器和狀態(tài)指示電路等。其中數(shù)據(jù)接口為雙向接口,在采集狀態(tài)下為輸入接口,在讀數(shù)狀態(tài)下為輸出接口;FPGA內(nèi)部采用了2 kByte的雙口RAM構成的FIFO,對數(shù)據(jù)進行緩存,保證了Flash Memory在頁編程和擦除期間數(shù)據(jù)不丟失,且讀寫速率可達150 Mbps;FLASH存儲器選用SAMSUNG公司的芯片作為基本存儲芯片,單片容量為8 G,并且可以通過簡單的芯片升級以及少量的軟件改動實現(xiàn)總存儲容量升級。 圖5 存儲器模塊組成 通過該型運載火箭的多次飛行試驗驗證,存儲器完整獲取了有效的飛行試驗數(shù)據(jù),為分析運載火箭穿越“黑障”區(qū)時的力學環(huán)境,改進飛行器性能提供了可靠的數(shù)據(jù)支撐。 隨著基于Flash存儲介質的高速存儲技術的深入開發(fā)利用,實現(xiàn)了運載火箭地面測試和實際飛行時數(shù)據(jù)的高速可靠存儲。另外,基于Flash存儲介質的高速存儲技術在運載火箭飛行試驗數(shù)據(jù)的記錄回收、回收類航天飛行器的試驗數(shù)據(jù)記錄回收、飛機等航空產(chǎn)品的飛行數(shù)據(jù)記錄回收如黑匣子,炮彈的試驗數(shù)據(jù)記錄回收,汽車撞擊試驗等民用產(chǎn)品數(shù)據(jù)記錄方面均有廣泛的應用。 [1] 徐克俊.發(fā)射工程學概論[M].北京:國防工業(yè)出版社,2003. [2] 張育林,吳建軍.航天器[M].北京:國防工業(yè)出版社,2006. [3] 高怡禎.基于閃存的星載大容量存儲器的研究和實現(xiàn)[J].電子技術應用,2003(8):75-78. [4] 車艷霞,任勇峰,劉東海.一種小體積高速數(shù)據(jù)記錄器的設計與實現(xiàn)[J].自動化與儀表,2011(11):9-12. [5] 儲成群,焦新泉,于君.一種大容量固態(tài)飛行數(shù)據(jù)記錄器設計[J].計算機測量與控制,2011,19(1):227-229. [6] 朱知博.基于NAND Flash的高速大容量存儲系統(tǒng)設計[J].現(xiàn)代電子技術,2011,34(8):170-173. [7] 王強,文豐,任勇峰.基于FPGA的高速實時數(shù)據(jù)采集存儲系統(tǒng)[J].儀表技術與傳感器,2009(1):50-52. [8] 彭軍,黎福海,羅旗舞.一種多通道并行固態(tài)存儲系統(tǒng)的設計與實現(xiàn)[J].計算機工程,2013,39(12):40-44. [9] 李超,王虹現(xiàn),邢孟道.高速大容量Flash存儲系統(tǒng)設計[J].火控雷達技術,2007,36(1):83-88. [10] 宋琪,李姍,朱巖.針對Flash存儲特性的航天器大容量固態(tài)存儲技術[J].電子設計工程,2015,23(4):169-171. [11] 吳黎慧,蒲南江,張娟娟.基于閃存陣列的高速存儲方法[J].電子測試,2011(7):89-92. [12] 李剛.合成孔徑雷達高速固態(tài)數(shù)據(jù)存儲器研究[D].北京:中國科學院,2005. [13] 張盛兵,賈寶峰.雙通道流水線Flash存儲系統(tǒng)的設計[J].微電子學與計算機,2008,25(8):224-228. [14] 焦亞濤,李娜娜,王雪松.一種高速固態(tài)存儲系統(tǒng)的設計與實現(xiàn)[J].電測與儀表,2011,48(551):76-79. [15] 高怡禎.提高閃速存儲器寫入速度的方法[J].電子技術,2003(5):20-23. [16] 史玉健,任勇峰,李輝景,等.基于Flash的高速數(shù)據(jù)記錄器的研究與設計[J].計算機測量與控制,2011,19(12):3158-3160. [17] 楊志勇,文豐,郝曉劍.基于Flash存儲器的抗高過載電子記錄器關鍵技術研究[J].國外電子測量技術,2009,28(7):27-29.

2.2 無效塊管理技術


2.3 防誤擦除技術
2.4 應用結果及分析

3 結束語