999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Linux的嵌入式高速SAR數據存儲技術?

2011-04-02 14:00:37黃斌
電訊技術 2011年11期
關鍵詞:嵌入式設備系統

黃斌

(海裝重慶局,重慶400043)

基于Linux的嵌入式高速SAR數據存儲技術?

黃斌

(海裝重慶局,重慶400043)

為了實現對SAR原始回波數據的實時存儲,提出了在以PowerPC為硬件核心的嵌入式Linux軟件平臺上,使用SSD硬盤實現高速數據存儲的方案。采用Linux驅動程序控制SAS硬盤控制器,將SAR原始回波數據記錄在SSD硬盤陣列上。模擬實驗測試中數據存儲速度可以達到200 Mbyte/s。分析了影響數據存儲速度的因素,實驗表明該方案可以滿足SAR原始回波數據實時存儲的要求。

合成孔徑雷達;原始回波數據;高速數據存儲;嵌入式Linux;SSD硬盤;SAS控制器

1 引言

合成孔徑雷達(SAR)是一種脈沖體制的高分辨率成像雷達,具有全天時、全天候、側視成像、分辨率不隨軌道高度變化等優點,使之成為備受關注的測繪和偵察手段。隨著SAR圖像分辨率的提高、測繪帶寬的增大以及工作模式的增多,SAR原始回波數據存儲速度構成了制約圖像質量和觀測效率的重要因素。因此,SAR原始回波數據記錄速度對于SAR相關技術研究和應用有著重要意義[1]。

本文針對SAR原始回波數據高速實時存儲的需求,提出了以PowerPC為核心使用SSD硬盤的系統設計方案。該方案采用SAS控制器控制SSD硬盤,通過在嵌入式Linux軟件平臺上開發驅動模塊,將PCI總線上采集到的回波數據不經過系統內存,以零拷貝的方式直接存儲到SSD硬盤陣列中,有效提高了數據的存儲速度。最后對該存儲方案進行了測試和分析。

2 系統設計方案分析

目前,在實際應用中,高速實時存儲系統的存儲過程一般分為數據采集和數據存儲兩個部分。數據采集一般負責將數據采集到數據緩存區中,數據存儲負責將緩存區中的數據記錄在磁盤陣列中。根據數據采集和數據存儲之間軟硬件的實現方式不同以及存儲過程本身實現方式不同,數據存儲系統可以分為專用型數據存儲系統和嵌入式總線型數據存儲系統兩種結構形式。

嵌入式總線型存儲系統的結構框圖如圖1所示。圖1中的方式1(細箭頭)和方式2(粗箭頭)分別代表了存儲系統中兩種不同的數據流走向,也代表了兩種不同的總線型數據存儲方式[2]。在方式1所代表的存儲方式中,系統內存將數據采集和數據存儲兩個過程聯系起來,高速數據通過FPGA采集緩存后,由PCI總線送進系統內存,然后再通過SAS控制器將內存中的數據寫入SSD磁盤陣列中。從圖1中可看出,數據進出內存都要占用PCI總線,由于PCI總線是一種共享總線,同一時刻只能有一個設備占用總線,因此數據采集硬件將外部數據送入內存的同時,SAS控制器不能將內存中的數據寫入SSD磁盤陣列,即數據采集和數據存儲過程不能并行執行,只能順序操作,從而使總線的效率降低了一半,進而也限制了存儲系統性能的提高[3]。

在方式2所代表的存儲方式中,數據不經過內存,而是在采集和存儲之間建立了直接數據傳輸通道,這也是本文所采用的數據傳輸方法。這種方法采用映射內存以及總線主控技術,SAS控制器為PCI總線的主設備,而數據采集FPGA為從設備,SAS控制器對FPGA直接進行訪問,這樣數據采集和數據存儲避開了系統內存這一環節。這種工作方式有效地縮短了系統的數據傳輸路徑,從而在提高系統數據傳輸速度的同時減小了系統延遲和響應時間,獲得了優良的性能[4]。該系統實現方式的關鍵是如何協調FPGA和SAS控制器的工作,這需要軟件對其進行準確的管理和控制[5]。

本文所介紹的系統采用方式2存儲方式,在嵌入式Linux平臺上通過Linux驅動模塊來管理SAS控制器完成整個數據存儲過程,存儲過程中PowerPC

負責響應FPGA發出的中斷進行中斷處理,整個數據存儲過程由SAS控制器通過DMA方式完成。

3 硬件系統介紹

硬件系統主要由PowerPC處理器、FPGA、SAS硬盤控制器和SSD硬盤陣列組成。PowerPC處理器主要負責整個系統的控制和管理,包括系統內存和PCI總線等硬件資源。FPGA主要負責對數據進行采集處理,按照一定格式將數據存儲到緩存中。FPGA作為PCI總線上的從設備與系統進行交互。SAS硬盤控制器負責讀取數據,并將數據存儲到SSD硬盤陣列中。SSD硬盤陣列是數據的存儲介質。硬件系統使用了SSD硬盤,與傳統的機械硬盤相比它有許多突出的特點。SSD硬盤指使用NAND FLASH組成的固態硬盤,其特別之處在于沒有機械結構,利用傳統的NAND FLASH特性,以區塊寫入和擦除的方式作讀寫的功能,具有響應時間短、讀寫效率高、耗電低、耐震、穩定性高和耐低溫等優點。采用SSD硬盤作為數據存儲介質,使整個系統具有更好的穩定性和適用性。

4 軟件系統設計及實現

4.1 U-Boot的移植

嵌入式Linux的運行需要一個Bootloader進行引導。本系統使用U-Boot作為Linux的Bootloader。U-Boot是在Linux內核運行之前運行的一段程序,這段程序完成硬件的初始化和建立內存空間的映射圖等重要工作,為內核的啟動創建正確的環境,并最終引導啟動內核。U-Boot在很大程度上是依賴于具體硬件而實現的,特別是在嵌入式系統中。因此U-Boot除了依賴于CPU的體系結構外,還需要修改其中部分源碼以適應具體的嵌入式板級設備。

4.2 嵌入式Linux的移植

嵌入式Linux是整個系統的基礎,它為包含在硬件平臺上的所有底層可編程部件提供服務,并且為運行在系統上的應用程序提供可執行環境。本系統針對嵌入式Linux所做的主要工作是針對具體板級設備的硬件驅動進行移植和開發,使內核能夠進行編譯、下載和運行。因為實際系統中硬件的配置和嵌入式Linux的默認硬件配置有所不同,所以需要修改部分硬件驅動來滿足實際系統需要。

4.3 高速存儲驅動模塊原理及實現

4.3.1 塊設備操作的分層結構分析

要實現高速存儲Linux驅動模塊,就必須對Lin-ux內核中SCSI設備的操作機制進行詳細的分析。圖2是Linux內核中SCSI設備操作的一個分層實現圖,主要由虛擬文件系統、文件系統層、通用塊層、I/O調度程序層、塊設備驅動程序和SCSI子系統組成。虛擬文件系統層的作用是屏蔽下層具體文件系統操作的差異,為上層應用的操作提供統一的接口。文件系統層的主要作用是針對不同的文件系統提供不同的文件操作集合。通用塊層作用是接收上層發出的硬盤請求,經過處理后發出I/O請求,它是塊設備提供的通用抽象視圖。I/O調度層的功能是接收通用塊層發出的I/O請求,緩存請求并試圖按照調度算法合并相鄰請求。塊設備驅動層負責從上層取出I/O請求,根據請求信息向具體塊設備控制器發送命令[6]。

4.3.2 SCSI子系統分析

塊設備包括SCSI硬盤、SATA硬盤和閃存等許多其它設備,塊設備驅動層是這些塊設備的統一抽象層。具體到不同的塊設備,又要使用不同的子系統驅動程序。由于本文所介紹的系統使用的是基于SCSI的存儲系統,所以本節將對Linux內核中SCSI子系統進行分析。

Linux內核中SCSI子系統是一種分層的架構,共分為3層。頂部的那層叫做SCSI上層,它代表的是內核(設備級)最高級別的接口。SCSI上層接收來自內核上層的請求并將其轉換成SCSI命令,同時將狀態信息通知內核上層。接下來的是SCSI中間層,也稱為公共層或統一層。它是SCSI上層和底層的公共服務層,提供了很多可供SCSI上層和底層驅動器使用的函數,因而可以充當這兩層間的連接層。中間層抽象化了底層驅動器的實現,這意味著可以以同樣的方式使用帶不同接口的控制器。SCSI中間層還提供了底層驅動器注冊和錯誤處理以及SCSI上層和底層間的SCSI命令排隊等功能。最后是SCSI底層,在SCSI底層的是一組驅動,稱為SCSI底層驅動。它們是一些可與具體物理設備連接的特定驅動程序。底層提供了自中間層到特定硬件設備的一種抽象,每個SCSI底層驅動都提供了到特定硬件的不同接口,但所使用的到中間層的接口卻是一組標準接口。SCSI底層包含大量處理各種不同類型SCSI控制器的驅動。SCSI具體結構如圖3所示。

圖4 給出了對SCSI設備進行寫操作時Linux內核中的程序執行流程。

4.3.3 高速存儲驅動模塊的實現

高速存儲驅動模塊主要在兩個層次上實現,整個數據存儲程序流程如圖5所示。首先是在通用塊層完成初始化bio結構和通過submit-bio()函數提交操作請求。bio結構中包含了讀寫硬盤操作時需要的所有信息,所以可以根據需要初始化包括設置硬盤描述符、讀寫數據量大小和存儲硬盤扇區位置等信息。但是在bio結構中數據存儲位置只能設置為系統內存虛擬地址,無法直接將其指向FPGA虛擬地址。為了解決這個問題,在系統內存中分配一塊內存,在這塊內存中設置標志和參數,然后將這塊內存虛擬地址賦值給bio結構。然后是在SCSI子系統中根據bio內存中設置的標志和參數,判斷該請求是否是高速存儲驅動模塊請求。如果是,則根據FPGA緩存物理地址和讀寫數據量大小通過SCSI底層驅動設置控制器特定寄存器,完成數據傳輸[7]。主要流程如圖6所示。

5 應用程序的設計和實現

5.1 存儲數據管理

在數據存儲過程中,為了提高存儲速度,存儲系統采用了對硬盤陣列順序寫入的方式,也就是按照硬盤的邏輯塊地址將數據依次寫入硬盤。這樣雖然可以提高數據的存儲速度,但是硬盤陣列中就沒有文件系統,這對數據的管理提出了要求。存儲系統在使用中需要記錄多個任務,并且每個任務所記錄的數據都有不同的參數和格式,所以必須設計出一種格式對任務信息和數據進行管理,這樣才能事后方便地對所記錄的數據進行下載、恢復和處理。在存儲系統中根據具體需求用頭表和任務信息表兩個部分來管理硬盤所記錄的數據。頭表包含硬盤陣列的一些總的信息,包括硬盤個數、總容量、剩余容量等。每1個任務對應1個任務信息表,任務信息表占1個扇區共512 byte,包含有每個任務的具體信息,例如起始、結束邏輯塊地址、數據參數等。在開始記錄前和停止記錄后將得到的參數信息更新到指定的硬盤邏輯塊地址中進行保存。當需要下載數據時將數據和參數信息一起發送給主機,主機就可以根據這些參數信息將數據進行恢復和處理。

5.2 網絡遠程控制

在數據存儲系統實際應用中,需要能夠對其進行遠程的管理和控制。整個系統結構如圖7所示。

從圖7中可以看出,系統主機需要通過網絡來控制數據存儲系統。為了實現該功能,必須定義出網絡控制和管理命令協議。根據具體應用的需要定義了各種網絡命令,目前實現了任務啟動/停止、數據刪除、信息查詢、工作模式設置和數據下載等命令,如圖8所示。為了確保存儲系統收到命令,存儲系統需要對系統主機發出的每個命令進行應答。

6 存儲系統的性能測試和分析

為了測試存儲系統的性能,測試中FPGA采集模塊產生模擬數據,使用4塊SSD硬盤組成RAID0陣列,系統持續記錄20min。在測試過程中對數據存儲信號和中斷信號進行測試,如圖9所示。其中上方1通道的信號為存儲信號,有效時為高電平;下方2通道的信號為中斷信號,周期264ms。每個中斷周期存儲的數據為64 Mbyte。

從圖9可以看出,系統存儲在264ms的周期中,存儲64 Mbyte數據只用了150 ms左右,其余100 ms時間用來防止硬盤寫入速度的波動,避免數據的丟失和對系統穩定性的影響。通過對存儲數據的校驗證明存儲系統的正確性,可見整個系統可以滿足200 Mbyte/s的持續存儲速度。與其它使用FPGA實現高速數據存儲的方案比較[8,9],本系統在速度上具有一定優勢。

在整個存儲系統中數據存儲速度是最關鍵的性能指標。實際系統中當FPGA數據采集緩存存滿數據時,以中斷方式周期性的通知PowerPC,從而使PowerPC控制硬盤控制器來讀取數據。由于FPGA采集緩存容量的限制,中斷周期時間相對較短。可見記錄任務具有一定的實時性,即在中斷周期內必須將FPGA緩存中的數據全部存儲到硬盤陣列中。而由于硬盤本身的原理和結構決定了硬盤在寫入數據時速度會有一定波動,通常所說的硬盤速度是指硬盤的平均速度。顯然,由于記錄任務的實時性要求,硬盤陣列平均寫入速度肯定無法應用到實際系統中,為了保證實時性只能將硬盤陣列的最低寫入速度應用到實際存儲系統中,通常為了保證系統的可靠性,會在硬盤陣列最低速度基礎上再留出一定冗余時間。為了解決硬盤陣列寫入速度不穩定從而影響存儲速度的問題,可以使用擴大FPGA采集緩存方法,使存儲速度接近于硬盤陣列平均速度,能夠進一步有效地提高存儲速度。

SAS即串行SCSI技術的出現,擺脫傳統并行SCSI技術在連接設備個數和總線帶寬上的限制。傳統并行SCSI采用并行總線結構,總線總的帶寬為320 Mbyte/s,而SAS采用串行總線結構,每個通道傳輸的速率高達3 Gbit/s,使用多個通道時帶寬可以成倍增加[10]。隨著SSD固態硬盤技術的發展,SSD固態硬盤可以代替傳統機械硬盤應用到實際系統中。目前,Intel SSD硬盤可以達到250 Mbyte/s的持續讀取速度和170 Mbyte/s的持續寫入速度,再結合RAID技術可大大提高硬盤陣列的讀寫性能。將SAS和SSD技術應用到存儲系統中為存儲速度的進一步提高奠定了基礎。同時,在嵌入式Linux軟件平臺上能夠很好地支持SAS和SSD技術。試驗證明,在使用SAS和SSD的存儲系統上,基于嵌入式Linux的數據存儲系統的存儲速度還有很大的提升空間。

PCIExpress總線克服了PCI總線在總線帶寬和數據傳輸速率上的限制,由于在Linux內核中PCI Express的驅動軟件與PCI總線完全兼容,所以高速存儲軟件系統也可以應用于基于PCIExpress總線的存儲系統中。

7 結論

本文提出了一種基于Linux的嵌入式高速數據存儲方案,通過使用Linux驅動等軟件模塊控制和管理存儲系統,實現了高速數據的記錄。該系統既可以滿足高速數據存儲速度的要求,又具有容量大、

穩定性高、耐震、耐低溫等優點。測試表明系統可以達到200 Mbyte/s的持續存儲速度。由于該方案可以擴展到PCI-E架構上,再結合SSD硬盤的使用,系統的數據存儲速度還有很大的提升空間。

[1]洪瀑,王巖飛.基于磁盤陣列的超高速SAR原始回波數據記錄技術研究[J].電子與信息學報,2009,31(3):749-751.

HONG Pu,WANG Yan-fei.Study on ultra-high speed SAR raw data recorder based on disk array[J].Journal of Electronics&Information Technology,2009,31(3):749-751.(in Chinese)

[2]黃立勝,劉月花.遙感數據的高速實時記錄器[J].遙感學報,2003,7(1):19-25.

HUANG Li-sheng,LIU Yue-hua.High speed and real-time recorder of remote sensing data[J].Journal of Remote Sensing,2003,7(1):19-25.(in Chinese)

[3]黃進,郭立紅,李巖,等.一種高速CCD視頻實時存儲方案的速度分析[J].光學技術,2005,31(1):149-150.

HUANG Jin,GUO Li-hong,LIYan,etal.Speed analysis of areal-time storage schema of high speed CCD video[J].Optical Technique,2005,31(1):149-150.(in Chinese)

[4]張昆帆,王展,皇甫堪.高速數據采集和存儲[J].現代雷達,2004,26(4):14-16.

ZHANG Kun-fan,WANG Zhan,HUANGFU Kan.High Speed Data Acquisition and Storing[J].Modem Radar,2004,26(4):14-16.(in Chinese)

[5]熊偉,曾巒,趙忠文.用于光電經緯儀的高速圖像數據記錄技術[J].紅外與激光工程,2004,33(5):538-541.

XIONGWei,ZENG Luan,ZHAO Zhong-wen.Technology of high speed image data record applied in photoelectric theodolite[J].Infrared and Laser Engineering,2004,33(5):538-541.(in Chinese)

[6]Bovet Daniel P,Cesati Marco.深入理解Linux內核[M].陳莉君,張瓊聲,張宏偉,譯.北京:中國電力出版社,2007:557-594.

Bovet Daniel P,CesatiMarco.Understanding the Linux Kernel[M].Translated by CHEN Li-jun,ZHANG Qiong-sheng,ZHANGHong-wei.Beijing:China Electric Power Press,2007:557-594.(in Chinese)

[7]Corbet,Rubini,Kroah-hartman.Linux設備驅動程序[M].魏永明,耿岳,鐘書毅,譯.北京:中國電力出版社,2007:458-490.

Corbet,Rubini,Kroah-hartman.Linux Device Driver[M]. Translated by WEIYong-ming,GENG Yue,ZHONG Shu-yi. Beijing:China Electric Power Press,2007:458-490.(in Chinese)

[8]周國輝.CCD攝影測量相機圖像數據高速實時存儲的研究[D].北京:中國科學院研究生院,2005.

ZHOU Guo-hui.Study on high-speed and real-time storage system for CCD photogrammetric image data[D].Beijing:Chinese Academy of Sciences,2005.(in Chinese)

[9]余輝龍,何昕,魏仲慧,等.應用NAND型閃存的高速大容量圖像存儲器[J].光學精密工程,2009,17(10):2549-2553.

YU Hui-long,HE Xin,WEI Zhong-hui,et al.High speed and high capacity image recorder based on NAND flash[J]. Optics and Precision Engineering,2009,17(10):2549-2553.(in Chinese)

[10]盧光軍.一種高速采集記錄設備的實現[J].計算機應用與軟件,2009,26(9):175-176.

LU Guang-jun.Implementation of a high-speed sample-andrecord devcice[J].Computer Application and Software,2009,26(9):175-176.(in Chinese)

Embedded High-speed SAR Data Storage Technology Based on Linux

HUANGBin
(Chongqing Bureau of Naval Armament Department,Chongqing 400043,China)

In order to record SAR(Synthetic Aperture Radar)raw echo data,a method with SSD(Solid State Disk)on embedded Linux is provided in this paper.Linux drivers are used tomanage the SAS(Serial Attached SCSI)controller and the data is stored in SSD with high-speed.The speed of data storage can achieve 200 Mbyte/s in experiment.The factors influencing storage speed are analysed.The test result shows that the design can satisfy the requirements of high-speed data storage.

synthetic aperture radar(SAR);raw echo data;high-speed data storage;embedded Linux;solid state disk(SSD);serial attached SCSI(SAS)controller

TN95

A

10.3969/j.issn.1001-893x.2011.11.015

黃斌(1979—),男,四川資中人,碩士研究生,主要研究方向為通信技術。

1001-893X(2011)11-0073-06

2011-06-16;

2011-10-26

HUANG Bin was born in Zizhong,Sichuang Province,in 1979. He is now a graduate student.His research direction is communication technology.

Email:huangbin09.com@163.com

猜你喜歡
嵌入式設備系統
諧響應分析在設備減振中的應用
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于MPU6050簡單控制設備
電子制作(2018年11期)2018-08-04 03:26:08
搭建基于Qt的嵌入式開發平臺
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
嵌入式軟PLC在電鍍生產流程控制系統中的應用
電鍍與環保(2016年3期)2017-01-20 08:15:32
500kV輸變電設備運行維護探討
工業設計(2016年12期)2016-04-16 02:52:00
原來他們都是可穿戴設備
消費者報道(2014年7期)2014-07-31 11:23:57
主站蜘蛛池模板: 亚洲天堂2014| 亚洲精品无码久久久久苍井空| 亚洲国产精品日韩av专区| 三级毛片在线播放| 无码综合天天久久综合网| 欧美成人怡春院在线激情| 亚洲第一av网站| 国产丝袜无码精品| 国产激情无码一区二区APP| 欧美亚洲欧美| 亚洲天堂区| 特级毛片8级毛片免费观看| 欧美亚洲日韩不卡在线在线观看| 国产在线观看第二页| 国内精品视频| 国产亚洲精品yxsp| 日本三级欧美三级| 老汉色老汉首页a亚洲| 欧美日韩国产综合视频在线观看| 亚洲另类国产欧美一区二区| 九九这里只有精品视频| 网友自拍视频精品区| 国产美女在线观看| 成人精品在线观看| 久久精品只有这里有| 日韩av资源在线| 在线观看国产网址你懂的| 亚洲欧洲日产国码无码av喷潮| 丝袜高跟美脚国产1区| 亚洲中文字幕23页在线| 精品视频一区在线观看| 19国产精品麻豆免费观看| 一级毛片高清| 成人一级免费视频| 免费看黄片一区二区三区| 亚洲中久无码永久在线观看软件| 欧美激情视频二区| 永久免费av网站可以直接看的| 精品综合久久久久久97超人| 日韩国产精品无码一区二区三区 | 国产欧美日韩综合一区在线播放| 一区二区三区国产| 91麻豆久久久| 亚洲国语自产一区第二页| 蝴蝶伊人久久中文娱乐网| 日韩黄色在线| 国产午夜福利在线小视频| 免费不卡在线观看av| 国产人前露出系列视频| 国产爽歪歪免费视频在线观看| 亚洲天堂视频网站| 亚洲A∨无码精品午夜在线观看| 亚洲国产高清精品线久久| 精品国产免费观看一区| 波多野结衣AV无码久久一区| 亚洲成人网在线播放| 高清视频一区| 在线国产三级| 一本视频精品中文字幕| 免费人成视频在线观看网站| 激情国产精品一区| 午夜少妇精品视频小电影| 999精品色在线观看| 日韩精品成人在线| 91精品国产自产91精品资源| 亚洲国产日韩在线成人蜜芽| 中文字幕亚洲乱码熟女1区2区| 亚洲国产欧美目韩成人综合| 狠狠干欧美| 国产美女91呻吟求| 亚洲视频色图| 波多野结衣无码AV在线| 18禁影院亚洲专区| 午夜综合网| 在线播放91| 三级毛片在线播放| 国产真实乱子伦视频播放| 亚洲 日韩 激情 无码 中出| 伊人精品视频免费在线| 香蕉久人久人青草青草| 国产成人精品综合| 久久精品亚洲专区|