《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 業界動態 > 嵌入式SATA存儲系統的研究

嵌入式SATA存儲系統的研究

2008-11-04
作者:陳曉東1,2,蘇宛新1,王化龍1

  摘 要: 新興的SATA技術為高速、便攜、高性價比的嵌入式硬盤存儲系統的研制提供了保障。將SATA2.5協議寫到Virtex-5 FPGA內部,通過GTP收發器" title="收發器">收發器實現高速串行數據傳輸與存儲,可以突破PCI接口的瓶頸,使系統具備高速、實時、便攜和海量存儲等特點。
  關鍵詞: SATA;Virtex-5;FPGA;硬盤存儲;嵌入式系統

?

  SATA硬盤作為新型的存儲介質,具有高速、海量、價格低廉、使用方便等優點。SATA2.5協議支持3.0Gb/s的接口速度,SATA2.5硬盤的持續存儲速度可達80MB/s,最大存儲容量已經達到750GB(如希捷ST3750640AS硬盤)。SATA硬盤已經占據了大部分的PC機硬盤市場,并且正向工作站、服務器的領域邁進。而在嵌入式的應用領域,目前的硬盤存儲設備依然廣泛采用傳統的IDE(ATA)和SCSI硬盤。由于兩者存在低速或昂貴的缺點,因此如何將SATA硬盤存儲應用到嵌入式系統中就成為今后相關領域的研究重點。
1 SATA2.5協議的性能與結構
1.1 各種硬盤存儲接口的比較

  通常硬盤根據接口類型進行分類。硬盤接口主要分為:IDE(ATA)、Serial ATA(SATA)、SCSI、Serial Attached SCSI(SAS)和Fiber Channel(FC),此外還存在IEEE1394、USB等。
  IDE、SCSI采用的是并行總線接口,隨著技術要求的不斷提高,并行技術的種種問題如信號扭曲和串擾、電纜和連接器的反射、設備的尋址能力有限等都已成為提高其數據吞吐能力的障礙。FC、SAS和SATA采用串行技術,克服了并行技術存在的缺點,大大提高了速度、可靠性和可擴展性。而SATA硬盤相對于FC和SAS硬盤具有很大的價格優勢,并且與SAS接口兼容。
1.2 SATA2.5協議的基本性能[1]
  SATA2.5是國際串行ATA組織SATA-IO(Serial ATA International Organization)制訂的最新SATA標準。其主要性能特點如下:
  (1)傳輸速率快,由SATA1.0的1.5Gb/s發展到SATA2.5的3.0Gb/s,并且SATA-IO計劃今后幾年推出6.0Gb/s的接口協議,這比最新的并行IDE接口ATAPI-7的133MB/s的傳輸速率提高許多。
  (2)電纜線寬度降低而長度增加,寬度由IDE的40針/80針減少到7針,長度由18英寸增加到1米。
  (3)支持熱插拔,這使SATA硬盤可以作為移動硬盤使用。
  (4)提高了數據傳輸的精確度,ATA-3標準引入了基于CRC(循環冗余碼校驗)的數據包出錯檢測,但是,沒有任何一種并行ATA標準提供命令和狀態包的出錯檢測。SATA提高了CRC對數據、命令和狀態包錯誤的檢測能力,從而提高了數據傳輸的精確度。
  (5)支持全速命令隊列(NQC),大大提高了硬盤的內部數據傳輸速度。
??? 此外,SATA2.5協議采用點對點結構,降低了磁盤陣列的出錯風險;降低了工作電壓,減少了功耗;向下軟件兼容并行ATA,橫向兼容SAS協議。
1.3 SATA2.5協議的體系結構
  SATA2.5采用四層結構:應用層、傳輸層、鏈接層和物理層。其中,應用層負責所有ATA命令的執行,包括對控制命令模塊寄存器的訪問;傳輸層負責在主機和硬盤設備之間以幀信息結構(FIS)的形式傳輸控制命令和數據;鏈接層負責對數據進行8/10編解碼,根據需要從結構幀中提取有效數據,或者將控制字插入到結構幀當中;物理層負責在串行數據線上傳輸已編碼的數據。
2 Virtex-5 FPGA芯片簡介[2]
  Virtex-5系列FPGA芯片[2]是Xilinx公司最新推出的高端產品,它采用65納米工藝,1.0V核電壓,具有靈活的時鐘管理模塊,100Mb/s~3.2Gb/s的串行連接" title="串行連接">串行連接功能,550MHz的DSP硬核,內置36KB的塊RAM, I/O引腳多達1 200個。目前,Virtex5系列FPGA有LX、LXT和SXT三款平臺,分別面向高性能邏輯功能、高性能邏輯功能和高速串行連接,以及高速串行連接和DSP功能。
?RocketIO GTP收發器是專門為Virtex-5 FPGA實現高速低功耗串行連接而設計的,具有高速、穩定的特點,可以實現PCI Express、FC、SATA等高速接口的物理層協議,而不用外置子板,從而節省了空間和成本。
3 SATA2.5協議在FPGA上的實現[3][4]
3.1 鏈接層在FPGA內的實現

  鏈接層發送或者接收混合了控制原語" title="原語">原語的數據流,在數據傳輸過程中,CRC被加入或者提取出數據流,同時8b/10b編解碼被執行。圖1給出了鏈接層在FPGA內部的邏輯結構,左邊與傳輸層相連,右邊與物理層相連。

?

?


  在核時鐘域里,數據寬度是32位;而在PHY時鐘域里,數據寬度是10位。在發送過程中,異步接口每四個PHY時鐘發送一次雙字,每個PHY時鐘內一個8位數據塊通過8b/10b編碼器生成10位數據塊,并被連續串行發送到物理層。接收過程剛好與此相反。原語是由雙字組成的實體,用于控制和提供串行連接的狀態。在FPGA內部,原語專門由原語發生器提供,主控制器根據上層命令控制原語的產生。CRC發生器多項式為:
?  
  FPGA內需設置一個線性循環移位寄存器(LFSR),在檢驗過程中與傳輸數據進行異或,LFSR內部多項式為:
  

3.2 傳輸層在FPGA內的實現
  傳輸層在發送過程中將數據和控制信號打包為FIS,在接收過程中分解接收到的FIS。如圖2所示,FPGA內部設置了一個FIFO,數據的接收和發送過程都通過同一個FIFO通道。Wishbone總線是一種片上系統互聯規范,該規范給片內的各部分以及IP核之間的互聯定義了一種通用的接口,由此提高了設計的可靠性和可移植性。圖中的Wishbone從接口與應用層的Wishbone主接口通信,過程方便可靠。Shadow寄存器用于轉送命令到設備端,或者記錄設備端的狀態。狀態和控制寄存器包含了一系列的寄存器,用于控制接口并且檢索接口狀態信息。

?


3.3 SATA與XC5VLX30T的接口及仿真
3.3.1 GTP收發器簡介[5]

  GTP收發器是Virtex-5 LXT和SXT系列FPGA內高度可配置和高度集成的可編程邏輯資源。它支持包括SATA在內的許多高速串行接口,內部的電流模式邏輯(CML)驅動器和緩存器提供用戶可配置的終端、電壓擺幅和耦合,可編程的發送預加重和接收均衡使得信號完整性得到優化。此外它還集成了可選的8b/10b編碼、逗號校準、信道綁定以及時鐘校正模塊。
  以Virtex-5 LXT系列的XC5VLX30T為例,它具有四個獨立的GTP模塊,每個模塊又分別包含了若干GTP驅動電壓與參考電壓引腳,一對低壓差分" title="差分">差分串行時鐘引腳,以及兩對RocketIOTM低壓差分串行引腳。
3.3.2 SATA接口信號定義
  SATA接口數據線由7根信號線組成。在主機端,1至7號線依次為GND、Tx+、Tx-、GND、Rx+、Rx-和GND。其中,Tx+和Tx-組成低壓差分發送信號對,分別與XC5VLX30T的MGTTXP和MGTTXN引腳相連;Rx+和Rx-組成低壓差分接收信號對,分別與XC5VLX30T的MGTRXP和MGTRXN引腳相連。
3.3.3 SATA時鐘電路及PCB仿真[6-8]
  由于SATA的時鐘頻率和串行數據傳輸速率都很高,因此對信號的抗干擾能力的要求很高。為提高系統可靠性,需要對布線后的PCB板上SATA時鐘信號和數據信號進行反復的仿真實驗。下面以SATA時鐘信號為例,進行PCB布線后仿真實驗。
  SATA2.5最高支持3.0Gb/s的傳輸速度,因此要求所選的晶振具有300MHz以上的低壓差分時鐘輸出能力。IDT公司的ICS844071和ICS844031滿足要求,前者的輸出頻率范圍是62.5MHz~170MHz,后者的輸出頻率范圍是245MHz~340MHz。兩者在封裝上完全兼容,用戶可以根據設計的速度要求來選取。圖3是SATA時鐘接口電路圖,其中SATA_CLK和分別與XC5VLX30T 的GTP專用差分時鐘輸入引腳MGTREFCLKP和MGTREFCLKN相連。

?


  利用844071_3v3.ibs及virtex5.ibs兩個IBIS模型,在Hyperlynx7.5環境下對SATA差分時鐘進行BoardSim差分眼圖" title="眼圖">眼圖仿真。圖4是在線長1.2in、線寬10mil、差分線距12mil、串行連接0.01μF電容以及端接100Ω電阻等條件下,考慮各種過孔、PCB板的整體分析等因素后的PRBS位模式仿真眼圖。從圖中可以看出,在100MHz頻率條件下,眼圖的睜開程度較大,符合GTP收發器的時鐘眼圖要求。

?


??? 隨著FPGA邏輯單元的不斷增多、內存容量的不斷增大、主頻的不斷提高,許多以前只能在專用芯片上才能實現的功能,現在都可以集成到一片FPGA內部來完成。例如圍繞著一片Virtex-5 FXT可以搭建涵蓋圖像采集、顯示、處理、存儲、通信等功能的系統。SATA作為一項正蓬勃發展的存儲技術,與FPGA技術結合之后可以極大地提高其本身的應用范圍,特別是為一些脫離PC機的嵌入式系統實現高速、穩定、價格較低的存儲功能提供一種新的有效途徑。


參考文獻
[1] SATA-IO.Serial ATA International Organization:Serial ATA Revision 2.5[Z].USA:SATA-IO,2005.
[2] Xilinx Inc.Virtex-5 User Guide[Z].USA:Xilinx Inc,2006.

[3] 徐光輝,程東旭,黃如.基于FPGA的嵌入式開發與應用[M].北京:電子工業出版社,2006.
[4] Wayne Wolf.FPGA-Based System Design[M].USA:Prentice Hall PTR,2005.
[5] Xilinx Inc.Virtex-5 RocketIO GTP Transceiver User Guide[Z].USA:Xilinx Inc,2006.
[6] IDT Inc.FemtoclockTM Crystal-to-LVDS Clock Generator?ICS844071[Z].USA:IDT Inc,2006.
[7] Xilinx Inc.Virtex-5 PCB Designer′s Guide[Z].USA:Xilinx?Inc,2006.
[8] 張海風.Hyperlynx仿真與PCB設計[M].北京:機械工業出版社,2005.

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:[email protected]。
主站蜘蛛池模板: 欧美视频www | 国产情侣普通话刺激对白 | 中文字幕精品一区二区精品 | 九草在线 | 亚洲影院手机版777点击进入影院 | 男人操美女| 成人a毛片在线看免费全部播放 | 亚洲欧洲一级 | 又粗又爽又色男女乱淫播放男女 | 夜鲁夜鲁夜鲁在线观看福利 | 一级片免费视频 | 久久久久久91 | 中文字幕国产视频 | 美女在线看永久免费网址 | 国产成人精品999在线观看 | 国产亚洲精品九九久在线观看 | 91欧美一区二区三区综合在线 | 亚洲国产激情一区二区三区 | 欧美成人猛男性色生活 | 亚洲欧美高清视频 | 久久手机免费视频 | 男人的天堂久久精品激情 | 成人影院久久久久久影院 | 久久久久久亚洲精品影院 | 2021国产成人精品久久 | 亚洲国产毛片aaaaa无费看 | 日本天堂视频在线观看 | 国产一区二区三区不卡在线观看 | 日黄网站 | 久久全国免费久久青青小草 | 国产亚洲精品成人一区看片 | 中文一区在线观看 | 日韩欧美一区二区不卡看片 | 在线观看视频99 | 亚洲精品久 | 成人小视频在线播放 | 亚洲免费人成在线视频观看 | 亚洲免费精品视频 | 理论片我不卡在线观看 | 性色tv| 久久网站免费观看 |