亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于SATA接口固態(tài)硬盤的高速存儲(chǔ)系統(tǒng)設(shè)計(jì)

        2014-08-02 11:49:31孫海波王曉斌李雅梅
        遙測遙控 2014年2期
        關(guān)鍵詞:信號(hào)

        孫海波, 王曉斌, 李雅梅

        (北京強(qiáng)度環(huán)境研究所 北京 100076)

        基于SATA接口固態(tài)硬盤的高速存儲(chǔ)系統(tǒng)設(shè)計(jì)

        孫海波, 王曉斌, 李雅梅

        (北京強(qiáng)度環(huán)境研究所 北京 100076)

        介紹一種基于SATA接口固態(tài)硬盤的高速存儲(chǔ)系統(tǒng)。采用LVDS接口實(shí)現(xiàn)高速數(shù)據(jù)輸入,通過IDE-SATA轉(zhuǎn)接芯片JMH330S實(shí)現(xiàn)SATA接口固態(tài)硬盤的高速讀寫控制。采用千兆以太網(wǎng)作為控制和數(shù)據(jù)下載接口,利用Microblaze軟核運(yùn)行LwIP協(xié)議棧,實(shí)現(xiàn)TCP/IP協(xié)議。測試結(jié)果證明,系統(tǒng)可支持600Mb/s的連續(xù)LVDS數(shù)據(jù)流輸入,存儲(chǔ)的數(shù)據(jù)完整可靠。

        SATA; LVDS; 固態(tài)硬盤; 存儲(chǔ); 千兆以太網(wǎng)

        前言

        近年來,航天任務(wù)中對(duì)嵌入式數(shù)據(jù)采集存儲(chǔ)系統(tǒng)的要求越來越高,主要表現(xiàn)在采集通道數(shù)量的增加、信號(hào)采樣率的提高、信號(hào)采樣精度的提升。而目前存儲(chǔ)系統(tǒng)較低的存儲(chǔ)帶寬成為數(shù)據(jù)采集系統(tǒng)的瓶頸。采用FPGA控制FLASH陣列可以達(dá)到較高的存儲(chǔ)帶寬[1],但是對(duì)于高可靠性應(yīng)用,需要設(shè)計(jì)非常可靠的壞塊管理算法和糾錯(cuò)碼校驗(yàn)ECC(Error Correcting Code)算法,實(shí)現(xiàn)起來比較復(fù)雜。

        近年來出現(xiàn)的SATA接口固態(tài)硬盤具有存儲(chǔ)速度高、存儲(chǔ)容量大、可靠性高等優(yōu)點(diǎn),可以滿足航天領(lǐng)域?qū)?shù)據(jù)存儲(chǔ)的要求。由于SATA協(xié)議復(fù)雜,直接使用FPGA控制SATA接口固態(tài)硬盤成本高,難度大,開發(fā)周期長,由此也帶來可靠性的降低。本文使用FPGA控制IDE-SATA轉(zhuǎn)接芯片JMH330S,實(shí)現(xiàn)了基于SATA接口固態(tài)硬盤的高速存儲(chǔ)系統(tǒng),數(shù)據(jù)輸入接口為低壓差分信號(hào)LVDS(Low-Voltage Differential Signaling),數(shù)據(jù)下載接口為千兆以太網(wǎng),系統(tǒng)支持掉電保護(hù)功能,可靠性高,通用性強(qiáng),適用于多種應(yīng)用場合。

        1 系統(tǒng)組成

        基于SATA接口固態(tài)硬盤的高速存儲(chǔ)系統(tǒng)的系統(tǒng)組成如圖1所示。前端數(shù)據(jù)采集系統(tǒng)(或其它數(shù)據(jù)源)產(chǎn)生的數(shù)據(jù)通過高速LVDS接口發(fā)送至存儲(chǔ)系統(tǒng)。存儲(chǔ)系統(tǒng)的主控芯片采用Spartan6 XC6SLX45 FPGA,F(xiàn)PGA內(nèi)部的LVDS接收模塊接收LVDS數(shù)據(jù)流并將其轉(zhuǎn)換為并行數(shù)據(jù)。并行數(shù)據(jù)通過深度為32k的SAVE_FIFO進(jìn)入IDE接口模塊。在數(shù)據(jù)管理模塊控制下,IDE接口模塊讀取SAVE_FIFO的數(shù)據(jù),并通過JMH330S芯片控制固態(tài)硬盤進(jìn)行高速存儲(chǔ);讀取數(shù)據(jù)時(shí),IDE接口模塊將讀出的硬盤數(shù)據(jù)存入CPU_ FIFO中,Microblaze通過DMA方式將數(shù)據(jù)讀入其DDR3內(nèi)存,并通過千兆以太網(wǎng)發(fā)送至上位機(jī)。Microblaze是FPGA內(nèi)部的嵌入式CPU,它以DDR3為內(nèi)存,運(yùn)行TCP/IP協(xié)議棧,主要用來處理接收的以太網(wǎng)、RS422命令,將上層控制指令解析并傳遞至數(shù)據(jù)管理模塊,完成數(shù)據(jù)存儲(chǔ)、讀取、刪除等功能。

        圖1 基于SATA接口固態(tài)硬盤的高速存儲(chǔ)系統(tǒng)組成

        2 模塊設(shè)計(jì)

        2.1 LVDS接收模塊

        LVDS使用很低的電壓幅度(100mV~450mV)通過一對(duì)平行的PCB走線或平衡電纜傳輸高速數(shù)據(jù)。在兩條平行的差分信號(hào)線上,電流及電壓振幅相反,噪聲信號(hào)同時(shí)耦合到兩條線上,接收端只關(guān)心兩信號(hào)的差值,因此噪聲會(huì)被抑制掉。LVDS高速、低功耗、低噪聲等特點(diǎn)使其在板級(jí)高速數(shù)據(jù)傳輸中得到廣泛應(yīng)用。

        本系統(tǒng)采用兩對(duì)LVDS數(shù)據(jù)線,分別為伴隨時(shí)鐘線差分對(duì)和數(shù)據(jù)線差分對(duì)。LVDS伴隨時(shí)鐘的頻率為75MHz,串行解串因子(SerDes ratio)為8:1,即每個(gè)伴隨時(shí)鐘周期內(nèi)傳輸8bits數(shù)據(jù),故數(shù)據(jù)碼率為600Mb/ s。Spartan6 FPGA可支持高達(dá)1050Mb/s的LVDS數(shù)據(jù)接收和發(fā)送,利用FPGA內(nèi)部豐富的解串器(ISERDES)、鎖相環(huán)PLL(Phase Locked Loop)和延時(shí)(IODELAY)資源,可實(shí)現(xiàn)2:1~16:1的數(shù)據(jù)解串[2]。LVDS接收模塊的功能是將串行LVDS碼流解串為并行數(shù)據(jù)。本模塊的輸出接口為字節(jié)同步信號(hào)byte_ syn和8位并行輸出信號(hào)data[7:0]。LVDS接收模塊輸入輸出接口見圖2。

        圖2 LVDS接收模塊輸入輸出接口

        2.2 JMH330S介紹

        JMH330S是SATA-IDE橋接芯片,符合SATA1.0版本規(guī)范,可兼容SATA2.0和SATA3.0接口固態(tài)硬盤,最高可支持ATA Ultra DMA模式7,理論數(shù)據(jù)傳輸速度可達(dá)150MB/s。JMH330S主要實(shí)現(xiàn)IDE總線數(shù)據(jù)、地址、控制信號(hào)與SATA總線數(shù)據(jù)、地址、控制信號(hào)的轉(zhuǎn)換,故只需采用傳統(tǒng)的IDE控制接口即可實(shí)現(xiàn)高速SATA接口固態(tài)硬盤的讀寫,簡化了設(shè)計(jì),節(jié)省了成本。

        2.3 IDE接口模塊

        IDE接口的硬盤傳輸模式有PIO、DMA以及Ultra DMA三種方式。Ultra DMA方式在選通信號(hào)的上升沿和下降沿均鎖定數(shù)據(jù),提高了數(shù)據(jù)的傳輸速率,并且在數(shù)據(jù)傳輸結(jié)束時(shí)還要進(jìn)行循環(huán)冗余校驗(yàn)CRC (Cyclic Redundancy Code),具有較高的可靠性。本文在寄存器讀寫時(shí)采用PIO方式,在存儲(chǔ)數(shù)據(jù)時(shí)采用Ultra DMA模式5,最高數(shù)據(jù)傳輸速度為100MB/s。IDE接口模塊的功能主要包括設(shè)備(硬盤)初始化,Write DMA和Read DMA(二者均以Ultra DMA模式傳輸數(shù)據(jù))。

        根據(jù)ATA-6協(xié)議[3],在硬盤初始化時(shí),F(xiàn)PGA通過SetFeatures命令將IDE傳輸方式設(shè)置為Ultra DMA模式5。每次Ultra DMA寫操作時(shí),首先設(shè)置起始48位邏輯地址和將要寫入的扇區(qū)數(shù),然后通過向狀態(tài)控制寄存器寫命令0x35啟動(dòng)一次Write DMA操作。硬盤收到控制命令后,會(huì)向IDE接口模塊發(fā)送DMA請(qǐng)求(DMARQ)信號(hào),IDE接口模塊用DMACK_應(yīng)答并撤銷STOP信號(hào),在硬盤DMARDY_信號(hào)有效后,IDE接口模塊開始讀取SAVE_FIFO中數(shù)據(jù)并驅(qū)動(dòng)數(shù)據(jù)同步信號(hào)HSTROBE以及16位并行數(shù)據(jù)。Ultra DMA模式5的傳輸速度為100MB/s,數(shù)據(jù)寬度為16bits,由于在HSTROBE信號(hào)的上升沿和下降沿均傳遞數(shù)據(jù),故HSTROBE信號(hào)為25MHz。Write DMA過程采用100MHz時(shí)鐘,rden為SAVE_FIFO讀使能信號(hào)。使用FPGA片內(nèi)邏輯分析儀ChipScope截取的Write DMA時(shí)序圖見圖3。

        圖3 Ultra DMA寫操作時(shí)序圖

        在Write DMA過程中,可能會(huì)出現(xiàn)硬盤DMARDY_信號(hào)無效,該現(xiàn)象為硬盤暫停Write DMA。此時(shí)主機(jī)應(yīng)繼續(xù)產(chǎn)生3個(gè)HSTROBE信號(hào)并進(jìn)行3次數(shù)據(jù)傳輸,等待硬盤DMARDY_信號(hào)有效后,繼續(xù)進(jìn)行Write DMA操作。否則會(huì)出現(xiàn)數(shù)據(jù)錯(cuò)誤的情況。

        對(duì)于Read DMA操作,過程類似,使用ChipScope截取的Read DMA時(shí)序見圖4。由于JMH330S輸出的數(shù)據(jù)同步信號(hào)DSTROBE為異步信號(hào),因此應(yīng)首先經(jīng)過2級(jí)D觸發(fā)器同步化處理,得到DSTROBE_d2。DSTROBE_d2與DSTROBE_d3(DSTROBE_d2延遲一個(gè)時(shí)鐘周期)異或得到上升沿和下降沿信號(hào)DSTROBE_Edge。該信號(hào)相對(duì)原DSTROBE信號(hào)已延遲了3個(gè)時(shí)鐘周期,此時(shí)讀取經(jīng)過3級(jí)D觸發(fā)器同步后的總線數(shù)據(jù)得到Rd_Data信號(hào)。分別使用DSTROBE_Edge_d2信號(hào)(DSTROBE_Edge經(jīng)過2級(jí)D觸發(fā)器延遲)和Rd_Data信號(hào)作為CPU_FIFO的寫使能和寫數(shù)據(jù)信號(hào)。DSTROBE的頻率為25MHz,DSTROBE _Edge的頻率為50MHz,而采樣時(shí)鐘應(yīng)大于DSTROBE_Edge頻率的兩倍,在本文中,采樣時(shí)鐘為150MHz。

        圖4 Ultra DMA讀操作時(shí)序圖

        2.4 數(shù)據(jù)管理模塊

        數(shù)據(jù)管理模塊實(shí)現(xiàn)的功能主要是接收Microblaze軟核的命令,控制數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)讀取、數(shù)據(jù)刪除等數(shù)據(jù)存儲(chǔ)管理的功能,并在突然斷電時(shí)完成掉電保護(hù)功能。

        2.4.1 數(shù)據(jù)存儲(chǔ)管理

        數(shù)據(jù)管理模塊將固態(tài)硬盤中邏輯地址為0x100的頁作為信息記錄頁(每頁為512字節(jié)),記錄總存儲(chǔ)次數(shù)、每次存儲(chǔ)的起始地址、存儲(chǔ)頁長度等信息。系統(tǒng)上電時(shí),讀取固態(tài)硬盤的信息記錄頁并暫存入雙口RAM的指定地址處。當(dāng)數(shù)據(jù)管理模塊收到Microblaze軟核的開始存儲(chǔ)命令時(shí),根據(jù)上一次的存儲(chǔ)起始地址和存儲(chǔ)頁長度,生成本次存儲(chǔ)的起始地址。并且當(dāng)SAVE_FIFO中達(dá)到8192個(gè)字的深度時(shí)開始一次Write DMA(每次寫32頁),同時(shí)累加該次的存儲(chǔ)頁長度。在收到停止存儲(chǔ)命令時(shí),應(yīng)繼續(xù)從SAVE_FIFO中讀取32k數(shù)據(jù)進(jìn)行存儲(chǔ),以防止存儲(chǔ)數(shù)據(jù)不完整,并將新的存儲(chǔ)次數(shù)、該次存儲(chǔ)的起始地址、存儲(chǔ)頁長度寫入雙口RAM的指定地址處,存儲(chǔ)至固態(tài)硬盤的信息記錄頁。當(dāng)收到Microblaze軟核的數(shù)據(jù)讀取命令以及讀取次數(shù)索引值時(shí),數(shù)據(jù)管理模塊從雙口RAM中指定位置得到本次存儲(chǔ)的起始地址和存儲(chǔ)頁長度,開始Read DMA過程,并通過CPU_FIFO接口將讀出的數(shù)據(jù)傳遞至Microblaze軟核。

        2.4.2 掉電保護(hù)

        由于固態(tài)硬盤中存在較大的數(shù)據(jù)緩沖區(qū),當(dāng)突然斷電時(shí),緩沖區(qū)中的數(shù)據(jù)可能還未存入固態(tài)硬盤內(nèi)部的FLASH中,造成數(shù)據(jù)丟失。本存儲(chǔ)系統(tǒng)采用后備電池進(jìn)行掉電保護(hù),其機(jī)制如下:正常情況下,系統(tǒng)由9V外部電源供電,當(dāng)外部電源的電壓低于電池電壓(7.2V)時(shí),由二極管電路自動(dòng)轉(zhuǎn)至后備電池供電;當(dāng)比較器電路檢測到外部電源電壓低于7V時(shí),如果在存儲(chǔ)狀態(tài)下,數(shù)據(jù)管理模塊強(qiáng)制執(zhí)行停止存儲(chǔ)命令,存儲(chǔ)SAVE_FIFO中剩余數(shù)據(jù)和信息記錄頁;然后持續(xù)供電1秒,確保固態(tài)硬盤完成全部數(shù)據(jù)的存儲(chǔ),最后控制繼電器斷開電池供電。

        2.5 Microblaze軟核

        通過嵌入式片上可編程系統(tǒng)SOPC(System On Programmable Chip)技術(shù)在FPGA內(nèi)部建立32位Microblaze軟核,運(yùn)行嵌入式程序。Microblaze軟核的組成架構(gòu)如圖5所示。其中DDR3和axi_dma模塊通過高速AXI總線與Microblaze軟核實(shí)現(xiàn)互聯(lián),其他低速外設(shè)通過AXI_lite總線與之互聯(lián)。

        圖5 Microblaze組成架構(gòu)

        128MB的DDR3是數(shù)據(jù)和程序運(yùn)行空間。Microblaze軟核與數(shù)據(jù)管理模塊的命令接口(CMD)采用axi_gpio IP核實(shí)現(xiàn)。讀取硬盤數(shù)據(jù)時(shí),需要將邏輯中CPU_FIFO內(nèi)數(shù)據(jù)讀取至DDR3,然后通過千兆以太網(wǎng)實(shí)現(xiàn)高速數(shù)據(jù)發(fā)送。為了提高數(shù)據(jù)吞吐量,采用成熟IP核axi_dma配合自定義的axistream_fifo模塊實(shí)現(xiàn)高速數(shù)據(jù)讀取,自定義的axistream_fifo模塊符合axi4_stream協(xié)議。同時(shí),使用IP核axi_ethernet和axi_ dma實(shí)現(xiàn)千兆以太網(wǎng)功能,作為數(shù)據(jù)高速下載接口。讀取硬盤數(shù)據(jù)時(shí)流程如下:首先配置axi_dma1,開啟讀取CPU_FIFO的DMA通道,將數(shù)據(jù)放入DDR3中,然后開啟axi_dma2的DMA通道,將DDR3中的數(shù)據(jù)通過千兆以太網(wǎng)接口發(fā)送出去。

        通過千兆以太網(wǎng)或RS422,可實(shí)現(xiàn)用戶控制指令接收功能和數(shù)據(jù)下載功能。為保證千兆以太網(wǎng)發(fā)送數(shù)據(jù)的可靠性,采用LwIP協(xié)議棧實(shí)現(xiàn)TCP網(wǎng)絡(luò)協(xié)議。LwIP是瑞士計(jì)算機(jī)科學(xué)院開發(fā)的一套用于嵌入式系統(tǒng)的開放源代碼TCP/IP協(xié)議棧。LwIP的含義是Light Weight(輕型)IP協(xié)議,它可以在無操作系統(tǒng)的情況下獨(dú)立運(yùn)行。在軟件開發(fā)工具包(SDK)中包含了LwIP 1.4.0的源碼與庫,可以通過工具直接生成針對(duì)axi_ethernet的驅(qū)動(dòng),使用簡單,代碼少,運(yùn)行方便[4,5]。

        3 性能測試

        在系統(tǒng)進(jìn)行存儲(chǔ)時(shí),每16k字節(jié)啟動(dòng)一次Write DMA,使用示波器觀察DMARQ信號(hào)。DMARQ信號(hào)的平均有效時(shí)間為190μs,即最大存儲(chǔ)速度約為82MB/s。留有一定裕量,采用速度為75MB/s的LVDS數(shù)據(jù)源測試系統(tǒng)性能。數(shù)據(jù)源的時(shí)鐘頻率為75MHz,串行解串因子為8:1,即數(shù)據(jù)碼率為600Mb/s,輸出的LVDS測試數(shù)據(jù)為累加數(shù)據(jù)。固態(tài)硬盤的型號(hào)為三星840pro-128G,經(jīng)過100次采集存儲(chǔ)100s數(shù)據(jù),并下載至上位機(jī),千兆以太網(wǎng)的平均數(shù)據(jù)下載速度為24MB/s。通過數(shù)據(jù)分析得知,數(shù)據(jù)正確無誤,無誤碼和丟數(shù)現(xiàn)象。測試結(jié)果驗(yàn)證了本文介紹的基于SATA接口固態(tài)硬盤高速存儲(chǔ)系統(tǒng)的可靠性。

        4 結(jié)束語

        本文介紹了一種基于SATA接口固態(tài)硬盤的高速存儲(chǔ)系統(tǒng),它采用高可靠的SATA接口固態(tài)硬盤作為存儲(chǔ)介質(zhì),使用高速LVDS接口作為數(shù)據(jù)輸入接口,并采用千兆以太網(wǎng)作為數(shù)據(jù)導(dǎo)出接口,支持掉電保護(hù)功能,可以實(shí)現(xiàn)高速、可靠的數(shù)據(jù)存儲(chǔ)與下載。該系統(tǒng)協(xié)議簡單,方便連接,可應(yīng)用于航空、航天等高速數(shù)據(jù)記錄領(lǐng)域,具有廣闊的應(yīng)用前景。

        [1] 吳 昊.高速大容量固態(tài)存儲(chǔ)系統(tǒng)設(shè)計(jì)[D].西安電子科技大學(xué)碩士學(xué)位論文,2010.

        [2] Nick Sawyer.Source-Synchronous Serialization and Deserialization[R].Xilinx Corporation:Application Note XAPP1064 (v1.1),2010.

        [3] American National Standards Institute.American National Standard for Information Technology-AT Attachment with Packet Interface-6(ATA/ATAPI-6)[S].Revision 3b,2002.

        [4] 張文沛,彭先蓉,徐 勇.基于SOPC的千兆以太網(wǎng)數(shù)據(jù)傳輸設(shè)計(jì)[J].儀器儀表用戶,2010,(3):66~68.

        [5] Anirudha Sarangi and Stephen MacMahon.Light Weight IP(lwIP)Application Examples[R].Xilinx Corporation:Application Note XAPP1026(v3.2),2012.

        Design of High-speed Storage System Based on SATA Interface Solid State Hard Disk

        Sun Haibo, Wang Xiaobin, Li Yamei

        A design of high-speed storaged system base on SATA interface solid state hard disk(SSD)is introduced.The LVDS interface is adopted to receive the high-speed incoming data.Depending on IDE-SATA bridge chip JMH330S,the high speed read and write commands for SSD are performed.The 1000-M Ethernet is used as the control and download interface,and Microblaze runs the LwIP stack to achieve TCP/IP protocol.Test result proves that the storage system can sustain consecutive LVDS data stream as fast as 600Mb/s and the storage data is integrated and reliable.

        SATA; LVDS; Solid state hard disk; Storage; 1000-M Ethernet

        TN919

        A

        CN11-1780(2014)02-0048-05

        孫海波 1987年生,碩士,工程師,研究方向?yàn)闇y量與通信技術(shù)。

        2013-09-18 收修改稿日期:2013-09-26

        王曉斌 1965年生,研究員,研究方向?yàn)橛?jì)算機(jī)測量與控制。

        李雅梅 1976年生,助理工程師,研究方向?yàn)閿?shù)據(jù)采集與存儲(chǔ)。

        猜你喜歡
        信號(hào)
        信號(hào)
        鴨綠江(2021年35期)2021-04-19 12:24:18
        完形填空二則
        7個(gè)信號(hào),警惕寶寶要感冒
        媽媽寶寶(2019年10期)2019-10-26 02:45:34
        孩子停止長個(gè)的信號(hào)
        《鐵道通信信號(hào)》訂閱單
        基于FPGA的多功能信號(hào)發(fā)生器的設(shè)計(jì)
        電子制作(2018年11期)2018-08-04 03:25:42
        基于Arduino的聯(lián)鎖信號(hào)控制接口研究
        《鐵道通信信號(hào)》訂閱單
        基于LabVIEW的力加載信號(hào)采集與PID控制
        Kisspeptin/GPR54信號(hào)通路促使性早熟形成的作用觀察
        精品综合久久久久久8888| 亚洲精品久久| 妓院一钑片免看黄大片| 亚洲人成电影在线播放| 亚洲国产成人精品女人久久久| 国产亚洲精选美女久久久久| 国产亚洲精品在线播放| 久久久久99精品成人片| 无码少妇一区二区三区| 92精品国产自产在线观看48页| 亚洲精品一区二在线观看| 女人下边被添全过视频| 亚洲综合精品成人| 欧美1区二区三区公司| 亚洲精品中文字幕不卡| 免费看男女做羞羞的事网站| 妇女性内射冈站hdwwwooo| 亚洲日产国无码| 亚洲精品在线免费视频| 日韩中文字幕免费视频| 国产免费资源高清小视频在线观看| 久久中文字幕久久久久| 国产特黄a三级三级三中国| 日本av一级片免费看| 天天躁夜夜躁狠狠是什么心态 | 日韩av一区二区三区激情在线| 国产一区二区女内射| 澳门毛片精品一区二区三区| 中文字幕亚洲精品高清| 午夜天堂av天堂久久久| 人妻少妇乱子伦精品| 亚洲成人免费网址| 亚洲中文字幕日本日韩| 亚洲 小说区 图片区 都市| 国产精品久久久久久52avav| 亚洲人成影院在线高清| 中文字幕亚洲精品在线免费| 国产成人精品久久一区二区三区| 亚洲AV伊人久久综合密臀性色| 青青视频在线播放免费的| 偷看农村妇女牲交|