趙云鵬 池騁 周夢 鄭艷 孫璐 王曉偉 張俊
(西安微電子技術(shù)研究所,西安 710065)
高性能固態(tài)存儲技術(shù)在現(xiàn)代航天器,包括空間站、深空探測、對地遙感衛(wèi)星,特別是高分辨率對地觀測衛(wèi)星的有效載荷系統(tǒng)中占有非常重要的地位。隨著高分辨率對地觀測載荷的廣泛應(yīng)用,載荷數(shù)據(jù)率和數(shù)據(jù)量都呈指數(shù)型增長,這就導(dǎo)致無論是中繼傳輸通道還是對地直傳通道都已無法實(shí)時(shí)傳輸載荷數(shù)據(jù)。國內(nèi)外高分辨率衛(wèi)星載荷數(shù)據(jù)率和數(shù)據(jù)量均已達(dá)到10 Gbit/s和10 Tbit的量級,相應(yīng)的存儲系統(tǒng)性能也要與之匹配,如高分七號衛(wèi)星固態(tài)存儲器的總數(shù)據(jù)吞吐率達(dá)到25.6 Gbit/s,存儲容量達(dá)到8 Tbit。
基于高性能固態(tài)存儲技術(shù)的存儲系統(tǒng)采用統(tǒng)一的系統(tǒng)架構(gòu)和硬件平臺,形成了標(biāo)準(zhǔn)化的系列產(chǎn)品;突破了高速率數(shù)據(jù)傳輸、高速率數(shù)據(jù)識別、高速率數(shù)據(jù)邊記邊放和指定數(shù)據(jù)的多維定位等多項(xiàng)關(guān)鍵技術(shù);首次實(shí)現(xiàn)CPU軟件和FPGA軟件的在軌程序上注功能,豐富了產(chǎn)品自身的健康管理方式,提高了產(chǎn)品在軌可維修性和可靠性。
本文在分析了高分辨率對地觀測衛(wèi)星需求的基礎(chǔ)上,介紹了基于高性能固態(tài)存儲技術(shù)存儲系統(tǒng)的架構(gòu)和關(guān)鍵技術(shù)的實(shí)現(xiàn)方式,并總結(jié)了采用該系統(tǒng)架構(gòu)的優(yōu)點(diǎn)。
高分辨率對地觀測衛(wèi)星配備各種類型的高分辨率遙感器,其產(chǎn)生的原始數(shù)據(jù)速率遠(yuǎn)高于一般對地觀測衛(wèi)星,這就提出了一些新的需求。
1)高速數(shù)據(jù)傳輸
為了獲取高質(zhì)量的對地觀測數(shù)據(jù),各類遙感器生成的載荷數(shù)據(jù)最高數(shù)據(jù)率已達(dá)到25 Gbit/s甚至更高。
2)海量數(shù)據(jù)存儲
高分辨率對地觀測數(shù)據(jù)在高速存儲時(shí)必然要占用海量的存儲資源,載荷數(shù)據(jù)總數(shù)據(jù)量已達(dá)10 Tbit甚至更高。
3)豐富的文件資源
存儲容量的大大提高使得存儲文件的數(shù)量相應(yīng)增加,最大的文件資源需求已超過1000個(gè)。
4)載荷數(shù)據(jù)多維索引
海量載荷數(shù)據(jù)的存儲必然要求在有限的過境時(shí)間和中繼通道資源下根據(jù)多維數(shù)據(jù)特征(如遙感器標(biāo)識、星時(shí)、文件號等)快速查找定位出用戶所關(guān)心的數(shù)據(jù),從而大幅提高數(shù)傳通道的利用率。
結(jié)合以上需求,基于高性能固態(tài)存儲技術(shù)的存儲系統(tǒng)在實(shí)現(xiàn)衛(wèi)星技術(shù)要求的前提下,以標(biāo)準(zhǔn)化、模塊化、可擴(kuò)展化為原則,可滿足多種高分辨率對地觀測衛(wèi)星對星上高速、海量數(shù)據(jù)存儲的應(yīng)用要求。
在基于高性能固態(tài)存儲技術(shù)的存儲系統(tǒng)中,數(shù)據(jù)通道以多路高速串行總線為對外接口;多任務(wù)管理與調(diào)度功能以基于SPARC V8的國產(chǎn)抗輻照片上系統(tǒng)(SOC)處理器為核心;數(shù)據(jù)特征識別與分揀功能和存儲陣列讀寫控制功能以大規(guī)模現(xiàn)場可編程門陣列(FPGA)為核心;對于數(shù)據(jù)存儲介質(zhì),采用多片非易失的與非閃存(NAND FLASH)器件來實(shí)現(xiàn)。在該固態(tài)存儲系統(tǒng)中,高速數(shù)據(jù)通道將采用超大規(guī)模并行處理和多線程流水操作來實(shí)現(xiàn),其內(nèi)部總線最寬處達(dá)到512 bit,使得即使在數(shù)據(jù)緩沖模式下工作的數(shù)據(jù)讀寫速率也可達(dá)到50 Gbit/s以上[1-2]。
基于高性能固態(tài)存儲技術(shù)的存儲系統(tǒng)的組成如圖1所示。

圖1 基于高性能固態(tài)存儲技術(shù)的存儲系統(tǒng)組成框圖Fig.1 Block diagram of storage system based on high performance solid state storage technology
圖1所示的基于高性能固態(tài)存儲技術(shù)的存儲系統(tǒng)中,數(shù)據(jù)識別和分揀單元可以在高速數(shù)據(jù)流中按照數(shù)據(jù)約定格式識別出每一幀數(shù)據(jù)來自于哪個(gè)通道,并將識別后的結(jié)果送至相應(yīng)的數(shù)據(jù)緩存;它為文件管理系統(tǒng)提供快速索引建立依據(jù),是固態(tài)存儲器多維索引回放的關(guān)鍵部分。通過該架構(gòu),固態(tài)存儲器可以實(shí)現(xiàn)按文件回放、按時(shí)間回放等多樣、靈活的多維索引模式。
基于高性能固態(tài)存儲技術(shù)的存儲系統(tǒng)具有“歸類存儲和特征檢索”的能力。用戶可以在記錄數(shù)據(jù)的同時(shí),以不同的速率回放當(dāng)前數(shù)據(jù)或歷史數(shù)據(jù);可以回放全部數(shù)據(jù),也可以指定回放某個(gè)載荷、某片CCD或某時(shí)間段的數(shù)據(jù),甚至可以指定回放某個(gè)時(shí)間段內(nèi)某個(gè)載荷或某片CCD的數(shù)據(jù)。這樣靈活的操作模式和基于載荷數(shù)據(jù)特征的數(shù)據(jù)訪問方式,可以為載荷數(shù)據(jù)高級在軌管理提供堅(jiān)實(shí)的系統(tǒng)支撐。
由圖1可知,基于高性能固態(tài)存儲技術(shù)的存儲系統(tǒng)主要由任務(wù)管理單元、高速數(shù)據(jù)輸入/輸出接口、數(shù)據(jù)識別與分揀單元和數(shù)據(jù)存儲陣列組成,下面分別對各個(gè)組成模塊的功能進(jìn)行介紹。
1)任務(wù)管理單元
任務(wù)管理單元負(fù)責(zé)接收從1553B總線(或RS485總線等)上發(fā)送的各種操作指令,除返回相應(yīng)的遙測信息外,主要負(fù)責(zé)生成和維護(hù)載荷數(shù)據(jù)特征索引信息、多任務(wù)并行工作的調(diào)度以及數(shù)據(jù)存儲陣列的地址生成和管理工作等。
2)高速數(shù)據(jù)輸入/輸出接口
這兩個(gè)接口是系統(tǒng)高速數(shù)據(jù)傳輸?shù)耐ǖ溃鋽?shù)據(jù)傳輸率最高可達(dá)25.6 Gbit/s。該接口采用多路高速串行數(shù)據(jù)傳輸方式,利用高速串行/解串器件的高性能特性,在物理層使用微同軸連接器和電纜為25.6 Gbit/s數(shù)據(jù)率的數(shù)據(jù)在設(shè)備間傳輸提供解決方案[3]。
3)數(shù)據(jù)識別和分揀單元
數(shù)據(jù)識別和分揀單元負(fù)責(zé)接收來自數(shù)據(jù)處理器的幀格式載荷數(shù)據(jù)流,同時(shí)按數(shù)據(jù)協(xié)議實(shí)時(shí)判別并提取每幀數(shù)據(jù)的特征信息(包括包頭、遙感器標(biāo)識、包長度、包尾等),將載荷數(shù)據(jù)按遙感器標(biāo)識分類緩存在數(shù)據(jù)緩存區(qū),并通知處理器提取數(shù)據(jù)特征信息。然后,將具備寫入存儲陣列條件的某個(gè)遙感器數(shù)據(jù)分配至后端數(shù)據(jù)存儲陣列模板中。同時(shí),該單元還負(fù)責(zé)將存儲陣列回放數(shù)據(jù)按照回放數(shù)據(jù)協(xié)議的要求進(jìn)行編排并轉(zhuǎn)換為符合數(shù)據(jù)處理器接收的數(shù)據(jù)格式進(jìn)行發(fā)送。
4)數(shù)據(jù)存儲陣列
數(shù)據(jù)存儲陣列包含n個(gè)獨(dú)立的數(shù)據(jù)存儲單元,各個(gè)存儲單元在任務(wù)管理單元的統(tǒng)一調(diào)度下并行工作。每個(gè)存儲單元采用總線分時(shí)復(fù)用的策略解決同時(shí)記、放時(shí)可能出現(xiàn)的總線沖突問題。每個(gè)單元均可以工作在記錄模式或回放模式,也可在記錄的同時(shí)進(jìn)行回放和擦除。每個(gè)存儲單元內(nèi)對存儲數(shù)據(jù)進(jìn)行里所(Reed-Solomon,簡稱RS)編解碼,能夠?qū)Χ鄠€(gè)錯(cuò)誤符號進(jìn)行糾正,確保數(shù)據(jù)存儲的可靠性。
為了適應(yīng)對地觀測衛(wèi)星的高載荷數(shù)據(jù)率、多載荷數(shù)據(jù)靈活索引等要求,基于高性能固態(tài)存儲技術(shù)的存儲系統(tǒng)需要解決多個(gè)技術(shù)難點(diǎn),主要包括以下內(nèi)容。
1)高速數(shù)據(jù)傳輸技術(shù)
高速數(shù)據(jù)傳輸主要指25.6 Gbit/s帶寬的高速載荷數(shù)據(jù)如何可靠的在設(shè)備間和設(shè)備內(nèi)部進(jìn)行傳輸。在該技術(shù)中需要解決:設(shè)備間或設(shè)備內(nèi)部數(shù)據(jù)通道的傳輸方式和高速緩存問題;輸入數(shù)據(jù)在多通道間的分配和同步問題。從傳輸通路上來說,高速數(shù)據(jù)傳輸主要包括3個(gè)方面:高速數(shù)據(jù)對外接口傳輸、高速數(shù)據(jù)緩存[4]和高速數(shù)據(jù)板間傳輸[5]。以記錄模式為例,其數(shù)據(jù)傳輸通路示意如圖2所示。
在圖2中,高速數(shù)據(jù)對外接口主要接收外部輸入的16路高速串行數(shù)據(jù),其總數(shù)據(jù)傳輸碼速率為25.6 Gbit/s。為了適應(yīng)輸入高數(shù)據(jù)傳輸碼速率的要求,存儲系統(tǒng)在設(shè)計(jì)時(shí)采用了高速串行傳輸方式[6-7],圖3為高速串行傳輸方式示意圖。
如圖3所示,高速串行傳輸方式是利用鎖相倍頻技術(shù)在數(shù)據(jù)發(fā)送方將16位并行低速數(shù)據(jù)總線串化后融入到1位高速串行數(shù)據(jù)流中傳給數(shù)據(jù)接收端;接收端將收到的1位高速串行數(shù)據(jù)流重新展開恢復(fù)為16位并行的低速數(shù)據(jù)總線[8]。采用這種傳輸方式,每個(gè)通道的數(shù)據(jù)傳輸率最大可達(dá)到2.5 Gbit/s;在實(shí)際使用中,每個(gè)通道工作在1.6 Gbit/s,采用16個(gè)通道傳輸即可滿足25.6 Gbit/s數(shù)據(jù)率的需求。
高速數(shù)據(jù)緩存采用8片第二代雙倍速(DDR2)存儲器并行工作實(shí)現(xiàn),其數(shù)據(jù)總位寬為256 bit,工作時(shí)鐘為250 MHz。高速數(shù)據(jù)緩存在宏觀上可以看做一個(gè)“高速雙口RAM”,其總的數(shù)據(jù)帶寬為64 Gbit/s。

圖2 記錄模式時(shí)高速數(shù)據(jù)傳輸通路示意圖Fig.2 Schematic diagram of high-speed data transmission path in recording mode

圖3 高速串行數(shù)據(jù)傳輸方式示意圖Fig.3 Schematic diagram of high-speed serial data transmission mode
高速數(shù)據(jù)板間傳輸主要解決各個(gè)功能板之間的高速數(shù)據(jù)傳輸,在設(shè)計(jì)時(shí)采用FPGA內(nèi)部的硬核資源高速收發(fā)器接口(GTX接口)來實(shí)現(xiàn)。GTX接口的工作原理與TLK2711接口器件相同,也是利用鎖相倍頻技術(shù)將16位并行低速TTL數(shù)據(jù)串化后融入到1位高速串行數(shù)據(jù)流中進(jìn)行傳輸。在實(shí)際使用中,每路GTX接口的數(shù)據(jù)傳輸率為2 Gbit/s,共通過16路GTX接口就可以滿足25.6 Gbit/s的要求。
2)高速數(shù)據(jù)識別技術(shù)
高速數(shù)據(jù)識別技術(shù)是指固態(tài)存儲器在接收多路高速載荷數(shù)據(jù)時(shí),首先按照數(shù)據(jù)控制協(xié)議提取每包數(shù)據(jù)的特征信息(包括包頭、遙感器標(biāo)識、包長度、包尾等),隨后將提取的特征信息通知處理器,最后通過高級文件管理系統(tǒng)(AFMS)建立相應(yīng)的索引信息。這樣,所有的數(shù)據(jù)存儲通道統(tǒng)一在任務(wù)管理單元的指揮下,數(shù)據(jù)集中存儲,每包記錄的數(shù)據(jù)均具有自己獨(dú)特的文件特征標(biāo)識。該項(xiàng)技術(shù)旨在實(shí)現(xiàn)固態(tài)存儲器“歸類存儲和特征檢索”的能力,為整星增加各類靈活的工作模式提供充分的技術(shù)支持。如圖1所示,對輸入高速數(shù)據(jù)的識別采用了大規(guī)模FPGA(V5系列)實(shí)現(xiàn),確保在25.6 Gbit/s的碼流中進(jìn)行剔除空幀、數(shù)據(jù)識別分類等功能。
3)高速數(shù)據(jù)總線分時(shí)復(fù)用技術(shù)
當(dāng)固態(tài)存儲系統(tǒng)工作在邊記邊放模式時(shí),記錄和回放任務(wù)并行調(diào)度,其核心是閃存(Flash)存儲陣列高速數(shù)據(jù)總線的分時(shí)復(fù)用,需要解決物理層面的總線訪問沖突問題。具體而言,對于同一個(gè)存儲芯片不能同時(shí)讀寫、對于同一塊存儲陣列不能同時(shí)讀寫、對于同一條數(shù)據(jù)總線不能同時(shí)讀寫。因此,必須合理規(guī)劃整個(gè)存儲陣列的物理組成并采用最優(yōu)的調(diào)度策略,對記錄進(jìn)程和回放進(jìn)程的硬件沖突進(jìn)行規(guī)避和仲裁。圖4為高速數(shù)據(jù)總線分時(shí)復(fù)用的功能框圖。
從圖4中可以看出,固態(tài)存儲器整個(gè)存儲陣列在物理上對外僅有一條唯一的數(shù)據(jù)總線,無論在記錄還是回放都是通過該總線進(jìn)行數(shù)據(jù)傳輸。當(dāng)固態(tài)存儲器工作在邊記邊放模式時(shí),整個(gè)存儲陣列共用該數(shù)據(jù)總線。因此,必須將時(shí)間軸分為記錄和回放兩個(gè)時(shí)間片,記錄時(shí)間片時(shí)對應(yīng)記錄數(shù)據(jù)占用數(shù)據(jù)總線,回放時(shí)間片時(shí)對應(yīng)回放數(shù)據(jù)占用數(shù)據(jù)總線。記錄數(shù)據(jù)和回放數(shù)據(jù)的帶寬均為25.6 Gbit/s,因此,對Flash陣列的讀取總帶寬需要大于51.2 Gbit/s。

圖4 高速數(shù)據(jù)總線分時(shí)復(fù)用功能框圖Fig.4 Block diagram of time-sharing multiplexing for high-speed data bus
4)載荷數(shù)據(jù)管理技術(shù)
載荷數(shù)據(jù)管理采用多維查找算法和高級文件管理系統(tǒng)(AFMS)來實(shí)現(xiàn),以滿足高分辨率對地觀測衛(wèi)星對海量載荷數(shù)據(jù)通過多種檢索手段快速定位的需求,檢索手段包括按文件號、按文件內(nèi)偏移量、按星上時(shí)、遙感器標(biāo)識等。高級文件管理系統(tǒng)(AFMS)由文件目錄表(FDT)和主文件分配表(MFT)構(gòu)成。在設(shè)計(jì)時(shí),將固態(tài)存儲器的整個(gè)存儲空間劃分為若干“塊”,塊的大小范圍可以是256 kbyte至2 Mbyte或更大(根據(jù)需求特點(diǎn)來設(shè)定塊大小)。根據(jù)設(shè)定“塊”的大小建立相應(yīng)的一個(gè)主文件分配表(MFT)。MFT的數(shù)據(jù)結(jié)構(gòu)里順序存儲著存儲系統(tǒng)中的每一“塊”的編號和對應(yīng)的物理地址,以及是否用于文件記錄等。圖5為MFT數(shù)據(jù)結(jié)構(gòu)圖。

圖5 MFT數(shù)據(jù)結(jié)構(gòu)圖Fig.5 Data structure diagram of MFT
在MFT的支持下,每個(gè)文件可以進(jìn)行順序存取,也可以隨機(jī)存取。每個(gè)文件的目錄屬性信息可以設(shè)置為定長,采用順序的鏈表設(shè)計(jì),保證文件檢索效率。圖6為FDT數(shù)據(jù)結(jié)構(gòu)圖。

圖6 FDT數(shù)據(jù)結(jié)構(gòu)圖Fig.6 Data structure diagram of FDT
基于高性能固態(tài)存儲技術(shù)的存儲系統(tǒng)具有以下優(yōu)點(diǎn)。
1)存儲空間自主動態(tài)分配
新一代大容量固態(tài)存儲器存儲容量為8 Tbit~32 Tbit,整個(gè)存儲空間可以進(jìn)行自主動態(tài)分配,即16個(gè)數(shù)據(jù)通道輸入的不同載荷的數(shù)據(jù)可以動態(tài)的分配到整個(gè)存儲空間中,而與各個(gè)通道的數(shù)據(jù)帶寬無關(guān)。這樣,可以保證固態(tài)存儲器對整個(gè)存儲空間的有效利用[9]。
2)數(shù)據(jù)帶寬自主分配
新一代大容量固態(tài)存儲器輸入數(shù)據(jù)通道共16路,每路數(shù)據(jù)帶寬1.6 Gbit/s,共25.6 Gbit/s。在實(shí)際工作中,16路輸入通道的數(shù)據(jù)可能會同時(shí)輸入,也可能會某幾路隨機(jī)輸入。針對這種情況,固態(tài)存儲器可以對總數(shù)據(jù)帶寬進(jìn)行自主分配,以適應(yīng)實(shí)際工作時(shí)的不同情況,實(shí)時(shí)處理輸入進(jìn)來的數(shù)據(jù)。
3)可擴(kuò)展性高
新一代大容量固態(tài)存儲器具有很好的可擴(kuò)展性,總帶寬和總?cè)萘烤梢酝ㄟ^調(diào)整存儲陣列板的數(shù)量、單個(gè)存儲陣列板的傳輸速度以及FLASH的存儲容量進(jìn)行靈活的配置,從而滿足不同型號對容量和帶寬的需求。
4)在軌可程序上注
新一代大容量固態(tài)存儲器首次實(shí)現(xiàn)了CPU軟件和FPGA軟件的程序上注功能,可在軌對軟件程序進(jìn)行升級和更改,從而豐富了產(chǎn)品自身的健康管理方式,提高了在軌可維修性和可靠性。
基于高性能固態(tài)存儲技術(shù)的存儲系統(tǒng)已經(jīng)成功應(yīng)用于以高分七號衛(wèi)星為代表的多顆衛(wèi)星中,工作可靠、表現(xiàn)良好。
高分七號衛(wèi)星中固態(tài)存儲器的主要工作模式包括以下幾個(gè)。
1)記錄模式
接收外部輸入的最大速率為12.8 Gbit/s的高速載荷數(shù)據(jù)并以文件形式進(jìn)行管理;整個(gè)存儲空間采用動態(tài)管理模式,可根據(jù)當(dāng)前全部存儲空間的占用情況,以一定規(guī)則動態(tài)分配新建文件的存儲空間;16路輸入通道分為主備接口、獨(dú)立工作,可靠性高。
2)回放模式
支持按序號、按時(shí)間和按順序多種回放方式,最大輸出速率為12.8 Gbit/s;具備回放暫停/恢復(fù)功能,提高了衛(wèi)星應(yīng)用靈活性;16路輸出通道分為主備接口、獨(dú)立工作,可靠性高;可指定任意1路或多路輸出通道進(jìn)行數(shù)據(jù)輸出,提高了衛(wèi)星數(shù)傳通道的利用率。
3)邊記邊放模式
記錄和回放兩種獨(dú)立模式任意組合工作。既可以先開始記錄、再進(jìn)行回放,也可先開始回放、后進(jìn)行記錄;既可以適應(yīng)記錄速率大于回放速率,也可以適應(yīng)回放速率大于記錄速率;既可以實(shí)時(shí)回放當(dāng)前正在記錄的數(shù)據(jù),也可以回放已記錄的歷史數(shù)據(jù)。
4)擦除模式
支持全部擦除、序號擦除和預(yù)擦除三種擦除方式,即:可以一次性擦除所有存儲的數(shù)據(jù)、擦除指定文件的數(shù)據(jù)和擦除指定容量的數(shù)據(jù),精確的為后續(xù)記錄任務(wù)準(zhǔn)備好可用的存儲空間。
5)自檢模式
支持功能自檢和芯片自檢,即:自動檢測存儲系統(tǒng)自身健康狀態(tài)和自動檢查存儲陣列中所有存儲芯片的健康狀態(tài)并對發(fā)現(xiàn)的失效存儲塊進(jìn)行剔除[10]。
本文介紹了高傳輸帶寬海量數(shù)據(jù)高性能固態(tài)存儲技術(shù)的實(shí)現(xiàn)方式、難點(diǎn)及優(yōu)點(diǎn),基于該技術(shù)研制的大容量固態(tài)存儲器具有高傳輸帶寬、海量存儲以及載荷數(shù)據(jù)的多維檢索等能力,其傳輸速度、存儲容量等關(guān)鍵指標(biāo)相比于上一代固態(tài)存儲器有了近10倍的提高。作為新一代大容量固態(tài)存儲器,它形成了標(biāo)準(zhǔn)化的系統(tǒng)架構(gòu)和硬件平臺,可以滿足高分辨率對地觀測衛(wèi)星多種應(yīng)用方式對載荷數(shù)據(jù)高速、海量存儲和高級在軌管理的需求,適于高分辨率光學(xué)成像衛(wèi)星、高精度立體測繪衛(wèi)星等后續(xù)衛(wèi)星載荷數(shù)據(jù)存儲與傳輸?shù)膹V泛應(yīng)用。