新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > SAR高速海量數(shù)據(jù)存儲(chǔ)與回放系統(tǒng)設(shè)計(jì)

SAR高速海量數(shù)據(jù)存儲(chǔ)與回放系統(tǒng)設(shè)計(jì)

作者: 時(shí)間:2017-06-05 來(lái)源:網(wǎng)絡(luò) 收藏

隨著(SAR)對(duì)分辨率的要求不斷提高,其中頻采樣后回波信號(hào)的數(shù)據(jù)量與信號(hào)處理后的二維雷達(dá)圖像的數(shù)據(jù)量大大增加。為了便于后續(xù)分析與處理,通常會(huì)將這些海量回波數(shù)據(jù)以及雷達(dá)圖像數(shù)據(jù)進(jìn)行無(wú)失真數(shù)據(jù)存儲(chǔ)。這對(duì)數(shù)據(jù)存儲(chǔ)系統(tǒng)的設(shè)計(jì)提出了兩個(gè)方面的要求:(1)接口簡(jiǎn)單且有較高的數(shù)據(jù)存儲(chǔ)速率;(2)由于所需存儲(chǔ)數(shù)據(jù)數(shù)量巨大,要求存儲(chǔ)系統(tǒng)有足夠的容量。

傳統(tǒng)的SDRAM存儲(chǔ)方案隨著存儲(chǔ)器容量的增加,其復(fù)雜性和實(shí)現(xiàn)成本也迅速提高,且在系統(tǒng)掉電后所存儲(chǔ)數(shù)據(jù)會(huì)丟失,不適合數(shù)據(jù)的回放分析及處理的應(yīng)用場(chǎng)合[1]。而采用基于Flash的存儲(chǔ)方案,存儲(chǔ)容量大(單片容量可以達(dá)到32 GB),不但數(shù)據(jù)存儲(chǔ)的效率較高(單片讀寫(xiě)速度可以達(dá)到160 Mb/s),而且其接口通用、設(shè)計(jì)簡(jiǎn)單,方便頻繁讀寫(xiě)操作,因此是大容量雷達(dá)數(shù)據(jù)實(shí)時(shí)存儲(chǔ)的優(yōu)選方案。

1 系統(tǒng)設(shè)計(jì)


1.1系統(tǒng)設(shè)計(jì)指標(biāo)

本系統(tǒng)是SAR雷達(dá)信號(hào)處理系統(tǒng)中的子系統(tǒng),主要實(shí)現(xiàn)對(duì)中頻采樣數(shù)據(jù)和匹配景象數(shù)據(jù)進(jìn)行存儲(chǔ)與回放。根據(jù)應(yīng)用需求分析,設(shè)計(jì)的系統(tǒng)應(yīng)具有數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)回傳(上傳至PC機(jī))兩項(xiàng)基本功能,其中以數(shù)據(jù)存儲(chǔ)為核心功能。在數(shù)據(jù)存儲(chǔ)過(guò)程中,最關(guān)鍵的兩個(gè)指標(biāo)分別是數(shù)據(jù)存儲(chǔ)速率和數(shù)據(jù)存儲(chǔ)量。這兩項(xiàng)指標(biāo)直接影響系統(tǒng)設(shè)計(jì)的優(yōu)劣。根據(jù)表1列出的SAR工作典型參數(shù),就上述兩個(gè)指標(biāo)進(jìn)行分析。

(1) 存儲(chǔ)速率分析

由表1可知,經(jīng)過(guò)信號(hào)處理后的一幀圖像為4 096×4 096像素。極限情況下,每秒鐘信號(hào)處理模塊會(huì)送出3.5幀匹配景象數(shù)據(jù),則圖像存儲(chǔ)的速率必須大于448 Mb/s。存儲(chǔ)中頻采樣數(shù)據(jù)時(shí),根據(jù)上述采樣率以及A/D的采樣位寬,可估算每秒采集到的正交兩路中頻雷達(dá)信號(hào)數(shù)據(jù)量為350 MB,即中頻采樣數(shù)據(jù)的存儲(chǔ)速率要求高于2.8 Gb/s。


(2) 存儲(chǔ)量分析

本文引用地址:http://butianyuan.cn/article/201706/349205.htm

  由于系統(tǒng)采用非易失存儲(chǔ)介質(zhì),存儲(chǔ)量與系統(tǒng)開(kāi)機(jī)運(yùn)行時(shí)間相關(guān)。根據(jù)分析,設(shè)定存儲(chǔ)系統(tǒng)工作在最長(zhǎng)時(shí)間5 min時(shí),可估算規(guī)定時(shí)間內(nèi)系統(tǒng)需要存儲(chǔ)102.6 GB的中頻采樣數(shù)據(jù)和16.5 GB的圖像數(shù)據(jù)。這就要求設(shè)計(jì)系統(tǒng)板載總數(shù)據(jù)存儲(chǔ)容量大于118.1 GB。

1.2 系統(tǒng)結(jié)構(gòu)

為了滿(mǎn)足設(shè)計(jì)技術(shù)指標(biāo)要求,對(duì)構(gòu)成系統(tǒng)的主要器件選擇如下: (1)存儲(chǔ)系統(tǒng)主控器選取Altera 公司型號(hào)為EP2S90F780 的芯片。(2)存儲(chǔ)芯片選取三星公司型號(hào)為K9LBG08U0M的NAND Flash。(3)選取Cypress Semiconductor公司的EZ-USB FX2作為數(shù)據(jù)回傳USB2.0的微處理控制器。(4)選用美光公司型號(hào)為ML48LC8M16的SDRAM作為數(shù)據(jù)緩存芯片。系統(tǒng)硬件結(jié)構(gòu)框圖如圖1所示。


2 硬件設(shè)計(jì)

2.1 SDRAM接口設(shè)計(jì)

SDRAM與的連接示意圖如圖2所示。左邊是SDRAM芯片ML48LC8M16的引腳,右邊是中SDRAM數(shù)據(jù)接口模塊對(duì)應(yīng)的信號(hào)。系統(tǒng)中運(yùn)用了兩片ML48LC8M16,圖2是一片SDARM的接口,另一片接口與之相同。兩片SDRAM乒乓緩存高速數(shù)據(jù),可以增加系統(tǒng)存儲(chǔ)的穩(wěn)定性和可靠性。


2.2 NAND Flash存儲(chǔ)模塊設(shè)計(jì)

系統(tǒng)數(shù)據(jù)存儲(chǔ)基本單元由型號(hào)為K9LBG08U0M的NAND Flash芯片組成,K9LBG08U0M是一款低功耗、高效率的NAND Flash存儲(chǔ)芯片。其內(nèi)部采用典型“塊-頁(yè)”組織結(jié)構(gòu)方式,片內(nèi)總共分為8 192塊,每塊包括128頁(yè),每頁(yè)可存儲(chǔ)4 KB,總存儲(chǔ)空間達(dá)到4 GB[2]。其典型編程和擦除時(shí)間分別為0.8 ms、1.5 ms,存儲(chǔ)速度較快,存儲(chǔ)容量適中,適合SAR的應(yīng)用場(chǎng)合。系統(tǒng)以FPGA為主控制器,并行控制4個(gè)NAND Flash存儲(chǔ)器工作組,其接口電路原理圖如圖3所示。每個(gè)存儲(chǔ)器組分別由8片K9LBG08U0M芯片組成。每組中又以4片為一個(gè)最小存儲(chǔ)單位。每個(gè)最小存儲(chǔ)單位中,將地址鎖存信號(hào)ALE、命令鎖存信號(hào)CLE等控制信號(hào)線(xiàn)通過(guò)并接的方式連接到一起,各片數(shù)據(jù)地址復(fù)用線(xiàn)IO0~IO7獨(dú)立連接至FPGA的通用I/O中。

這樣將數(shù)據(jù)通道可擴(kuò)展至32 bit,有效地拓寬了數(shù)據(jù)存儲(chǔ)帶寬,提高了數(shù)據(jù)吞吐量。同時(shí),因采用了32片NAND Flash芯片,板載存儲(chǔ)容量達(dá)到了128 GB。

2.3 回傳模塊設(shè)計(jì)

數(shù)據(jù)回傳通道通過(guò)EZ USB 68013與PC連接,集成了USB2.0收發(fā)器、串行接口引擎(SIE)、增強(qiáng)型8051微控制器和可編程的外圍接口。設(shè)計(jì)中采用USB 68013的GPIF接口,并運(yùn)用8 bit的傳輸方式。EZ-USB FX2可配置成Ports、GPIF Master(主)和Slave FIFO(從)三種不同的接口模式,在設(shè)計(jì)中使用Slave FIFO模式[3]。在該模式下,外部邏輯直接連接到FX2的端點(diǎn)FIFO,GPIF并沒(méi)有被激活。因?yàn)橥獠窟壿嬁梢灾苯涌刂艶IFO,所以FIFO的基本控制信號(hào)(標(biāo)志、片選、使能)由EZ-USB FX2的引腳引出,外部控制可以是同步或異步。圖4為在Slave模式下USB芯片外圍電路以及與FPGA連接的原理圖。

3 存儲(chǔ)系統(tǒng)軟件設(shè)計(jì)

3.1控制器軟件模塊

數(shù)據(jù)傳輸與存儲(chǔ)控制電路的開(kāi)發(fā)工作主要集中在FPGA上。根據(jù)上述分析與介紹,結(jié)合NAND Flash以及USB 68013芯片的操作特點(diǎn),考慮控制器的通用性與系統(tǒng)的可擴(kuò)展性,存儲(chǔ)系統(tǒng)軟件設(shè)計(jì)如圖5所示。其中包括USB操作命令解析模塊、寫(xiě)時(shí)序發(fā)生模塊、壞塊管理模塊、數(shù)據(jù)上傳控制模塊、塊擦除時(shí)序發(fā)生器模塊、讀時(shí)序發(fā)生器模塊等。

圖5中,虛線(xiàn)框標(biāo)定的軟件模塊均運(yùn)用硬件描述語(yǔ)言編寫(xiě),在Quarters II編譯環(huán)境下編譯、綜合并得到了實(shí)現(xiàn)。

3.2 系統(tǒng)工作流程

系統(tǒng)工作流程如下:上電后,由壞塊管理程序掃描所有存儲(chǔ)塊,同時(shí)記錄壞塊地址值,并存入FPGA內(nèi)建立的RAM壞塊表中;然后系統(tǒng)等待接收并解析USB控制命令;若控制命令為數(shù)據(jù)存儲(chǔ),首先進(jìn)行寫(xiě)數(shù)據(jù)目標(biāo)塊擦除操作,然后在壞塊管理程序監(jiān)管下,由寫(xiě)時(shí)序發(fā)生模塊存儲(chǔ)SDRAM接口準(zhǔn)備好的數(shù)據(jù),數(shù)據(jù)存儲(chǔ)完畢后系統(tǒng)進(jìn)入待命狀態(tài)。若控制命令為數(shù)據(jù)讀取,首先從USB控制命令中解析出目標(biāo)數(shù)據(jù)地址,之后由讀取時(shí)序發(fā)生模塊將數(shù)據(jù)讀入U(xiǎn)SB芯片的FIFO中;最后系統(tǒng)根據(jù)FIFO標(biāo)志位將數(shù)據(jù)上傳至PC機(jī)。整個(gè)存儲(chǔ)系統(tǒng)工作的流程圖如圖6所示。


3.3存儲(chǔ)速度優(yōu)化

從存儲(chǔ)芯片的存儲(chǔ)機(jī)制出發(fā),優(yōu)化控制器軟件結(jié)構(gòu)可以達(dá)到提高系統(tǒng)存儲(chǔ)速度的目的[4]。單片NAND Flash將數(shù)據(jù)寫(xiě)入的過(guò)程是:通過(guò)數(shù)據(jù)總線(xiàn)向存儲(chǔ)芯片發(fā)送寫(xiě)數(shù)據(jù)命令80 h,緊接著寫(xiě)目的頁(yè)地址,然后寫(xiě)4 096 B數(shù)據(jù)(計(jì)算數(shù)據(jù)寫(xiě)入所需要時(shí)間為T(mén)data-in),最后輸入結(jié)束命令10 h[2]。這一系列操作完成后Flash進(jìn)入忙碌狀態(tài),同時(shí)將4 KB數(shù)據(jù)從數(shù)據(jù)緩存區(qū)搬移到內(nèi)核,計(jì)算搬移所需要的時(shí)間為T(mén)prog。則4 KB數(shù)據(jù)寫(xiě)入的總時(shí)間如下:

由此可得到單片寫(xiě)入速度為96 Mb/s。系統(tǒng)硬件結(jié)構(gòu)設(shè)計(jì)時(shí)將4片存儲(chǔ)器作為最小單元級(jí)聯(lián),采用該方式數(shù)據(jù)寫(xiě)入速度可以提高到384 Mb/s。為進(jìn)一步提高速度,可將數(shù)據(jù)搬移時(shí)間Tprog充分利用起來(lái)??刂破鬈浖軐?shí)現(xiàn)對(duì)兩個(gè)不同的單元進(jìn)行乒乓操作,即在一個(gè)存儲(chǔ)單元進(jìn)入忙狀態(tài)時(shí),另一個(gè)存儲(chǔ)單元開(kāi)始寫(xiě)。這樣交替操作,寫(xiě)入速度可達(dá)到768 Mb/s??刂破魍瑫r(shí)驅(qū)動(dòng)4個(gè)存儲(chǔ)器組并行工作,則其數(shù)據(jù)存儲(chǔ)速度可進(jìn)一步提升到3 072 Mb/s(即3 Gb/s)。

3.4 NAND Flash壞塊管理

由于NAND Flash 在出廠和使用過(guò)程中都會(huì)出現(xiàn)壞塊 (無(wú)法或錯(cuò)誤地存儲(chǔ)數(shù)據(jù)),這將對(duì)所存儲(chǔ)數(shù)據(jù)的準(zhǔn)確性造成影響。為了準(zhǔn)確無(wú)失真地存儲(chǔ)數(shù)據(jù),必須對(duì)NAND Flash中隨機(jī)出現(xiàn)的壞塊進(jìn)行有效的處理。本設(shè)計(jì)采用一種自適應(yīng)(可變長(zhǎng)度)狀態(tài)機(jī)方法,簡(jiǎn)單有效地實(shí)現(xiàn)了壞塊的管理。系統(tǒng)上電運(yùn)行時(shí),將由主控制器掃描得到的所有壞塊地址值存入FPGA內(nèi)建立的RAM表中[5]。

采取這樣的方式,可使片上RAM資源消耗降低[6]。在進(jìn)行數(shù)據(jù)寫(xiě)操作時(shí)(地址線(xiàn)性增加),判斷壞塊地址與當(dāng)前寫(xiě)地址之間的距離,通過(guò)內(nèi)部計(jì)數(shù)器操作可避開(kāi)壞塊。壞塊管理狀態(tài)轉(zhuǎn)換圖如圖7所示。

壞塊管理狀態(tài)機(jī)包括3個(gè)狀態(tài):Idle(空狀態(tài))、Get_timer(取壞塊距離狀態(tài))、Addr_change(塊地址改變狀態(tài))。其操作流程如下:(1)系統(tǒng)復(fù)位時(shí)狀態(tài)機(jī)進(jìn)入Idle狀態(tài),等待不執(zhí)行任何操作。(2)當(dāng)頁(yè)地址標(biāo)志位不為0時(shí)(寫(xiě)操作開(kāi)始),狀態(tài)機(jī)進(jìn)入Get_timer狀態(tài),此狀態(tài)下取下一個(gè)壞塊到當(dāng)前塊的距離,并賦給定時(shí)器timer,若timer為“0”繼續(xù)停留在該狀態(tài),同時(shí)連續(xù)壞塊地址自加;若timer不為“0”,則狀態(tài)跳轉(zhuǎn)到Addr_change。(3)在Addr_change狀態(tài)下,等待一個(gè)Block中所有頁(yè)寫(xiě)完后,判斷timer是否為非“0”,若是塊地址自加,同時(shí)timer自減;反之輸出塊地址為原地址加上連續(xù)壞塊寄存器的值。

該方法實(shí)現(xiàn)的壞塊管理程序,能有效避開(kāi)隨機(jī)出現(xiàn)的壞塊,降低片上資源消耗,提高了工作效率,確保了雷達(dá)數(shù)據(jù)存儲(chǔ)的完整性與準(zhǔn)確性。

4 系統(tǒng)實(shí)驗(yàn)結(jié)果

通過(guò)軟硬件協(xié)同設(shè)計(jì),最終實(shí)現(xiàn)了整個(gè)存儲(chǔ)控制系統(tǒng),包括板載32片F(xiàn)lash芯片(正面16片,背面16片)、主控FPGA芯片、USB控制芯片、SDRAM芯片、配置芯片等。

將同一幀灰度圖像數(shù)據(jù)分別存儲(chǔ)在經(jīng)過(guò)壞塊管理的存儲(chǔ)器組1和未經(jīng)過(guò)壞塊管理的存儲(chǔ)器組2中,然后通過(guò)讀時(shí)序操作分別讀取數(shù)據(jù),在PC機(jī)上整合成一幀完整的圖像并做對(duì)比,其結(jié)果如圖8所示??梢?jiàn)未經(jīng)壞塊管理存儲(chǔ)的圖像數(shù)據(jù)出現(xiàn)失真,壞塊區(qū)域輸出成片“0”值,圖像出現(xiàn)帶狀白色噪聲點(diǎn),這些干擾噪聲會(huì)嚴(yán)重影響后續(xù)信號(hào)處理結(jié)果。

經(jīng)過(guò)壞塊管理后讀出的數(shù)據(jù)形成如圖8(b)的圖像可以發(fā)現(xiàn),完全不存在圖8(a)所示現(xiàn)象,圖像中只有包含有真實(shí)目標(biāo)的匹配成像信息。說(shuō)明經(jīng)過(guò)壞塊處理后數(shù)據(jù)被完整準(zhǔn)確地存儲(chǔ)起來(lái),不會(huì)對(duì)后續(xù)的信號(hào)處理造成影響。

本文介紹的系統(tǒng)作為子模塊已在SAR成像系統(tǒng)中成功應(yīng)用。實(shí)踐證明,本存儲(chǔ)回放系統(tǒng)能夠高效、穩(wěn)定、可靠地工作,而且數(shù)據(jù)存儲(chǔ)無(wú)失真。在后續(xù)工作中,可在Flash控制邏輯上采用雙線(xiàn)程操作(Two Plane)方式,能將數(shù)據(jù)寫(xiě)入速度提高約1.6倍;也可驗(yàn)證控制器的通用性,在存儲(chǔ)板上搭載單片容量更大的存儲(chǔ)芯片,簡(jiǎn)單修改配置參數(shù)就可將目前板載總?cè)萘繛?28 GB的存儲(chǔ)系統(tǒng)將其容量擴(kuò)至4 TB,使其適應(yīng)未來(lái)大容量存儲(chǔ)設(shè)備的發(fā)展趨勢(shì)。



評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉