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

基于SATA3.0的存儲(chǔ)系統(tǒng)優(yōu)化設(shè)計(jì)

2021-01-22 09:45:02李晉濤任勇峰楊志文李輝景
電子技術(shù)應(yīng)用 2021年1期
關(guān)鍵詞:信號(hào)

李晉濤,任勇峰,2,楊志文,李輝景

(1.中北大學(xué) 電子測試技術(shù)國家重點(diǎn)實(shí)驗(yàn)室,山西 太原 030051;2.中北大學(xué) 儀器科學(xué)與動(dòng)態(tài)測試教育部重點(diǎn)實(shí)驗(yàn)室,山西 太原 030051)

0 引言

SATA3.0(SerialATA Revision3.0)采用差分信號(hào)傳輸系統(tǒng),該系統(tǒng)對共模噪聲有很強(qiáng)的抵抗力,因此SATA可以采用更低的電壓去抑制噪聲。在數(shù)據(jù)傳輸這一方面,SATA3.0的傳輸速度在SATA2.0的基礎(chǔ)上翻倍,理論上可以達(dá)到6 Gb/s。另一方面,SATA總線使用了嵌入式時(shí)鐘頻率信號(hào),具備了比以往更強(qiáng)的糾錯(cuò)能力。在傳輸過程中能對相應(yīng)的指令進(jìn)行檢查,即使出現(xiàn)錯(cuò)誤的指令,也可以進(jìn)行及時(shí)的修正,因此廣泛地應(yīng)用于實(shí)際工程中。但是,基于測試系統(tǒng)產(chǎn)生的數(shù)據(jù)愈加地趨向于大體積、高速率,多數(shù)存儲(chǔ)系統(tǒng)采用存儲(chǔ)陣列的方式進(jìn)行存儲(chǔ)。然而,隨著存儲(chǔ)量的增加以及傳輸環(huán)境的復(fù)雜,SATA總線會(huì)出現(xiàn)個(gè)別通道傳輸中斷的現(xiàn)象,雖然只是偶爾現(xiàn)象,但卻能造成不可挽回的損失。

針對以上問題,該設(shè)計(jì)基于FPGA控制的SATA3.0總線,從硬件和代碼方面優(yōu)化了存儲(chǔ)系統(tǒng)并進(jìn)行驗(yàn)證。實(shí)測存儲(chǔ)速率不低于800 MB/s,并且數(shù)據(jù)傳輸穩(wěn)定,在大容量存儲(chǔ)應(yīng)用領(lǐng)域具有很好的參考和使用價(jià)值。

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

圖1 系統(tǒng)總體框圖

基于SATA3.0的存儲(chǔ)電路能夠?qū)崿F(xiàn)對大量數(shù)據(jù)的快速、穩(wěn)定的存儲(chǔ),該系統(tǒng)的總體設(shè)計(jì)方案如圖1所示。系統(tǒng)由四部分組成,即數(shù)據(jù)接收模塊、FPGA控制模塊、數(shù)據(jù)存儲(chǔ)模塊和數(shù)據(jù)分析模塊。數(shù)據(jù)接收模塊采用了4路SRIO數(shù)據(jù)接口,接收外部數(shù)據(jù),單路傳輸速率為3.125 Gb/s,總體理論傳輸速率為12.5 Gb/s。控制模塊采用FPGA,主要負(fù)責(zé)邏輯控制,即通過控制SRIO協(xié)議、SATA協(xié)議以及UDP協(xié)議來完成數(shù)據(jù)的接收、存儲(chǔ)和調(diào)用。數(shù)據(jù)存儲(chǔ)模塊采用4片500 GB的固態(tài)硬盤,以單次記錄的方式,先擦除再寫入,斷電停止記錄。數(shù)據(jù)分析模塊采用UDP協(xié)議,通過千兆以太網(wǎng)接口進(jìn)行交互[1]。對試驗(yàn)數(shù)據(jù)進(jìn)行分析時(shí),只需要將硬盤內(nèi)存儲(chǔ)的數(shù)據(jù)讀取到計(jì)算機(jī)上即可。

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

此模塊采用Xilinx的Kintex-7系列PFGA作為主控芯片,該芯片采用RocketIO技術(shù)進(jìn)行串行數(shù)據(jù)傳輸,即串行收發(fā)器GTX接口,單路最高傳輸速率可達(dá)到12.5 Gb/s[2],串行收發(fā)器配備有可配置的阻抗、擺幅以及耦合等級(jí)。SATA傳輸采用全雙工的方式,2、3引腳作為發(fā)送端將指令或者數(shù)據(jù)發(fā)送至硬盤,5、6引腳作為接收端接收硬盤返回的信息。相比于以往的并行傳輸方式,串行傳輸采用差分走線,具有很強(qiáng)的抗噪聲能力,不需要考慮多排傳輸線之間的干擾,只需要提高時(shí)鐘頻率便可以提高傳輸速率,串行傳輸一次傳輸一個(gè)比特(bit)包含有源同步時(shí)鐘。而時(shí)鐘是通過PMA PLL將一個(gè)高質(zhì)量的參考時(shí)鐘倍頻出高速串行時(shí)鐘,用來驅(qū)動(dòng)GTX收發(fā)器工作,本設(shè)計(jì)采用的時(shí)鐘芯片為CDCM61002[3],該芯片內(nèi)置板載鎖相環(huán),可以提供穩(wěn)定的差分時(shí)鐘作為參考時(shí)鐘,并且具有功耗低、高性能、低相位噪聲等優(yōu)點(diǎn)。在時(shí)鐘配置方面,該芯片可配置出專有的SATA時(shí)鐘、PCI Express以及GigE等。根據(jù)芯片手冊,此處選用25 MHz的晶振作為時(shí)鐘輸入,同時(shí)將PR0、PR1、OD2配置為低電平,OD1和OD0配置為高電平,即實(shí)現(xiàn)設(shè)計(jì)需要的SATA參考時(shí)鐘150 MHz。同時(shí),將OS1配置為低電平、OS0配置為高電平,從而控制時(shí)鐘輸出方式為LVDS。硬件電路圖如圖2所示。

圖2 SATA硬件原理圖

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

3.1 SATA3.0結(jié)構(gòu)分析

SATA3.0接口主要包括四個(gè)層次:應(yīng)用層、傳輸層、鏈路層以及物理層,總體框架如圖3所示。

圖3 SATA協(xié)議結(jié)構(gòu)圖

(1)物理層主要是由差分對TX和RX來實(shí)現(xiàn)串行全雙工傳輸,主要功能是主機(jī)端與設(shè)備端的鏈路初始化[4]。為了提高SATA接口的主機(jī)端和設(shè)備快速建立通信的能力,SATA協(xié)議在物理層引入了OOB信號(hào),通過原語交互來完成鏈路初始化和傳輸速度的協(xié)商。

(2)鏈路層主要負(fù)責(zé)的是FIS幀收發(fā),通過CRC校驗(yàn)和加擾碼解擾碼的方式來提高數(shù)據(jù)傳輸?shù)臏?zhǔn)確性[5]。當(dāng)鏈路層發(fā)送數(shù)據(jù)時(shí),SATA協(xié)議將0x52325032作為初始值[6],根據(jù) CRC32校驗(yàn)方式,將最多 2 048個(gè) DWORDS有效數(shù)據(jù)依次校驗(yàn),生成一個(gè)最終的校驗(yàn)和,然后將校驗(yàn)和加在所發(fā)送的有效數(shù)據(jù)后,并進(jìn)行加擾,最后進(jìn)行8B/10B編碼后發(fā)送到物理層,在接收到設(shè)備端的數(shù)據(jù)時(shí),先對數(shù)據(jù)進(jìn)行8B/10B解碼以及解擾,然后將幀頭原語SOF、CRC校驗(yàn)以及幀尾原語EOF去除,再次計(jì)算接收到的有效數(shù)據(jù)的CRC校驗(yàn)和[7],并與接收到的CRC校驗(yàn)和做對比,然后向傳輸層報(bào)告當(dāng)前傳輸狀態(tài)。CRC32的生成多項(xiàng)式如式(1)所示:

(3)傳輸層主要負(fù)責(zé)將相關(guān)的數(shù)據(jù)或命令構(gòu)造成相應(yīng)的FIS幀。其中,幀類型主要有數(shù)據(jù)幀、寄存器幀以及控制幀這三大類。當(dāng)傳輸層接收到來自鏈路層的幀時(shí),會(huì)將該幀解析出幀類型以及幀內(nèi)容,并將其中的數(shù)據(jù)寫入寄存器中。當(dāng)檢測到應(yīng)用層發(fā)出的數(shù)據(jù)傳輸操作請求后,傳輸層作為響應(yīng),會(huì)從寄存器中讀取數(shù)據(jù),并按照相應(yīng)的幀格式組成幀發(fā)送至鏈路層[8]。

(4)應(yīng)用層主要負(fù)責(zé)解析各個(gè)寄存器以及執(zhí)行寄存器中的命令。根據(jù)命令的要求,應(yīng)用層會(huì)接收來自主機(jī)端傳輸?shù)臄?shù)據(jù),并將數(shù)據(jù)寫入SATA硬盤中,或者將硬盤中的數(shù)據(jù)讀取出來傳送給主機(jī)端。存儲(chǔ)或者讀取的方式可以是PIO或DMA,為了提高數(shù)據(jù)交互速率,本文采用DMA方式[9]。在數(shù)據(jù)進(jìn)行緩沖時(shí),分別采用一個(gè)讀FIFO和一個(gè)寫FIFO來完成。寫FIFO負(fù)責(zé)緩存?zhèn)鬏攲咏馕龀鰜淼臄?shù)據(jù)幀,而讀FIFO負(fù)責(zé)把來自總線的數(shù)據(jù)保存下來[10]。在這一系列動(dòng)作完成之后,應(yīng)用層將構(gòu)造數(shù)據(jù)幀的指令發(fā)給傳輸層。

3.2 OOB狀態(tài)機(jī)優(yōu)化

SATA物理鏈路的建立主要是通過OOB(Out of Band,OOB)信號(hào)來實(shí)現(xiàn)的[11]。FPGA和硬盤上電以后,F(xiàn)PGA端首先發(fā)出重置信號(hào)COMREST,硬盤在檢測到FPGA發(fā)出的COMRESET后,會(huì)發(fā)出初始化信號(hào)COMINIT作為回應(yīng),并且硬盤可以在任意時(shí)間通過發(fā)送COMINIT來發(fā)起會(huì)話。收到硬盤回應(yīng)以后,F(xiàn)PGA會(huì)進(jìn)行校準(zhǔn)并發(fā)出COMWAKE信號(hào)。硬盤在RX差分對上接收到COMWAKE信號(hào)后會(huì)校準(zhǔn)發(fā)送器,并且會(huì)將COMWAKE信號(hào)連續(xù)傳輸六次,接著連續(xù)發(fā)送ALIGN原語與主機(jī)端進(jìn)行傳送速度的協(xié)商。FPGA接收到COMWAKE信號(hào),鎖存硬盤發(fā)來的原語然后在54.6 μs內(nèi)回傳 ALIGN,并且在 COMWAKE信號(hào)收到之后連續(xù)地發(fā)送D10.2原語。返回ALIGN信號(hào)給硬盤的速率應(yīng)與接收時(shí)保持一致,如在880 μs內(nèi)未檢測到硬盤返回ALlGN,則進(jìn)入復(fù)位狀態(tài)重新連接。硬盤在檢測到ALIGN原語后,會(huì)以SYNC同步信號(hào)作為回應(yīng),表示準(zhǔn)備開始正常的傳輸操作。當(dāng)FPGA接收到三個(gè)來自硬盤的非ALIGN原語后,linkup信號(hào)由低電平變?yōu)楦唠娖剑溄咏⑼瓿桑M(jìn)入正常操作。

圖4 鏈路優(yōu)化前

如圖4所示,以往的數(shù)據(jù)傳輸過程中,可能會(huì)遇到物理鏈路連接斷開的現(xiàn)象[12],此時(shí)linkup信號(hào)由高變低,數(shù)據(jù)傳輸中斷,OOB狀態(tài)機(jī)停留在當(dāng)前l(fā)inkready狀態(tài)。從硬盤回放的數(shù)據(jù)可以看出,遞增數(shù)已經(jīng)不再連續(xù),雖然這種問題出現(xiàn)的概率比較小,但卻能造成無法挽回的后果。為了提高系統(tǒng)鏈路的穩(wěn)定性以及抗干擾能力,使得系統(tǒng)建立起來以后數(shù)據(jù)更加穩(wěn)定地傳輸,避免在系統(tǒng)工作中出現(xiàn)中斷,需要對OOB狀態(tài)機(jī)增加一個(gè)通路標(biāo)志循環(huán)監(jiān)測狀態(tài)。當(dāng)出現(xiàn)鏈路斷開時(shí),在物理層立即重新建立物理鏈路,及時(shí)地恢復(fù)數(shù)據(jù)傳輸。圖5是改進(jìn)后的OOB狀態(tài)機(jī)。

圖5 優(yōu)化后的OOB狀態(tài)機(jī)

linkup狀態(tài)之前的狀態(tài)與原來相同,是物理通路的建立過程。linkup狀態(tài)下認(rèn)為發(fā)送的已經(jīng)是正常的數(shù)據(jù)幀,在此狀態(tài)下可以檢測幀頭SOF原語和EOF原語判斷是否有正常數(shù)據(jù)幀的交互。當(dāng)檢測到幀頭SOF原語后進(jìn)入下一狀態(tài)。linkcheck是鏈路檢測狀態(tài),也是物理層正常工作時(shí)需要保持的狀態(tài)。在正常工作狀態(tài)下,鏈路需要保持穩(wěn)定,這就需要實(shí)時(shí)檢測當(dāng)前鏈路的工作狀態(tài),此狀態(tài)下需要檢測的標(biāo)志位有rxelecidle、linkup等。可以看到鏈路斷開以后,linkup信號(hào)由高變低,此時(shí)OOB狀態(tài)機(jī)立即進(jìn)入 0狀態(tài),即復(fù)位狀態(tài);txcominit拉高,說明鏈路開始初始化;經(jīng)過短時(shí)間的鏈路重建linkup信號(hào)拉高,說明鏈路重新恢復(fù)連接,rxelecidle信號(hào)持續(xù)拉低,說明數(shù)據(jù)已經(jīng)開始繼續(xù)傳輸。圖6是ILA抓取的一條通路重新建立的采樣圖。

4 系統(tǒng)整體測試

首先,使用外部發(fā)圖機(jī)以800 MB/s的速率循環(huán)發(fā)送遞增數(shù),遞增數(shù)以四個(gè)字節(jié)的幀計(jì)數(shù),再加上EB 90作為幀結(jié)尾[13],每幀包含 256個(gè)字節(jié)。接收數(shù)據(jù)時(shí),F(xiàn)PGA以156.25 MHz的時(shí)鐘接收數(shù)據(jù),然后寫入64位的FIFO。由于SRIO采用8B/10B編碼,4路SRIO接口理論接收速率可達(dá)到 156.25 M×64÷10=1 000 MB/s。緊接著,例化一個(gè) 64位轉(zhuǎn) 128位的 FIFO,讀時(shí)鐘為 150 MHz,此時(shí) FIFO的讀速率為 150 M×128÷10=1 920 MB/s完全大于接收速率。之后FPGA將打包后的128位的數(shù)據(jù)拆分成四路32位的數(shù)據(jù),通過SATA控制器,將32位的數(shù)據(jù)轉(zhuǎn)為串行的差分?jǐn)?shù)據(jù),通過SATA串口同時(shí)存儲(chǔ)到四塊硬盤中。圖7為上位機(jī)讀取到的遞增數(shù),圖8為遞增數(shù)校驗(yàn)結(jié)果。

在高溫60℃和低溫-40℃條件下,以800 MB/s的寫入速率每次寫入硬盤600 GB的數(shù)據(jù)進(jìn)行測試,經(jīng)過100次測試及數(shù)據(jù)分析,發(fā)現(xiàn)數(shù)據(jù)傳輸穩(wěn)定,遞增數(shù)連續(xù)且沒有出現(xiàn)傳輸中斷的情況。

5 結(jié)論

圖6 鏈路優(yōu)化后

圖7 接收數(shù)據(jù)回放

圖8 遞增數(shù)校驗(yàn)

本文優(yōu)化了一種基于FPGA控制的存儲(chǔ)系統(tǒng),系統(tǒng)以SATA3.0作為傳輸總線,固態(tài)硬盤陣列作為存儲(chǔ)介質(zhì),對存儲(chǔ)邏輯進(jìn)行了設(shè)計(jì),并對硬件電路和OOB狀態(tài)機(jī)進(jìn)行了優(yōu)化。最終實(shí)現(xiàn)了一種高速率,高穩(wěn)定性的存儲(chǔ)系統(tǒng),解決了大容量存儲(chǔ)系統(tǒng)的傳輸穩(wěn)定性問題。經(jīng)過大量的讀寫測試,表明該系統(tǒng)可以對高速數(shù)據(jù)進(jìn)行可靠的存儲(chǔ),滿足多數(shù)遙測試驗(yàn)的需求,具有很好的應(yīng)用價(jià)值。

猜你喜歡
信號(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)通路促使性早熟形成的作用觀察
主站蜘蛛池模板: 亚洲精品福利网站| 亚洲高清中文字幕| 国产主播一区二区三区| 亚洲成人播放| 日韩欧美91| 国产99视频在线| 中文字幕波多野不卡一区 | 国产美女视频黄a视频全免费网站| 日本一区二区三区精品视频| 999精品色在线观看| 91麻豆精品视频| 欧美在线导航| 国模私拍一区二区三区| 亚洲午夜18| 自慰高潮喷白浆在线观看| 超碰aⅴ人人做人人爽欧美 | 色男人的天堂久久综合| 99er这里只有精品| 久久无码免费束人妻| 久一在线视频| 久久大香香蕉国产免费网站| 香蕉视频在线精品| 国产日本视频91| 日韩精品免费一线在线观看| 亚洲码在线中文在线观看| 亚洲国产成人无码AV在线影院L| 亚洲天堂首页| 国产真实乱了在线播放| 四虎永久在线| 国产亚洲欧美在线专区| 国产精品自在在线午夜| 亚洲国产日韩一区| …亚洲 欧洲 另类 春色| 国产精品色婷婷在线观看| 午夜久久影院| 亚洲开心婷婷中文字幕| 国产制服丝袜无码视频| 又黄又湿又爽的视频| 美女视频黄又黄又免费高清| 99福利视频导航| 色欲色欲久久综合网| 日韩中文无码av超清| 国产免费观看av大片的网站| 日韩av无码精品专区| 成人国产小视频| 久久国产精品影院| 美女国内精品自产拍在线播放| 亚洲第一色网站| 久久久久中文字幕精品视频| 日本一区二区三区精品国产| 亚洲精品第1页| 精品国产成人高清在线| 欧美色99| 91视频精品| 久久精品亚洲热综合一区二区| 天天综合网在线| 久久综合九九亚洲一区| 伊在人亚洲香蕉精品播放| 亚洲成人免费看| 亚洲V日韩V无码一区二区| 99在线观看国产| 亚洲成人精品久久| 青草91视频免费观看| 国产又大又粗又猛又爽的视频| 精品国产免费第一区二区三区日韩| 一级毛片在线免费看| 国产精品白浆无码流出在线看| 国产精品极品美女自在线看免费一区二区| 国产肉感大码AV无码| 2020精品极品国产色在线观看| 精品国产一区二区三区在线观看| 精品超清无码视频在线观看| 亚洲伊人天堂| 成人午夜福利视频| 无码高潮喷水在线观看| 波多野结衣一区二区三视频 | 国产成人精品日本亚洲| 91娇喘视频| 找国产毛片看| 日韩欧美色综合| 国产精品一区在线观看你懂的| 一级做a爰片久久毛片毛片|