SATA硬盤接口
昨天SATA-IO(串行ATA國際組織)發(fā)布了一條新聞,SATA標(biāo)準(zhǔn)接口的批準(zhǔn)程序已經(jīng)開始。這就意味著,不久之后SATA傳輸規(guī)范將有新的升級,預(yù)計(jì)最早在今年下半年就可能迎來新的規(guī)范。那么SATA是怎樣的發(fā)展路線,未來的SATA設(shè)備將是什么樣,這次變革究竟會用戶帶來哪些便利?如果整理一下SATA的發(fā)展路線,也許能從中找到一些線索。
SATA:并行與串行之爭
在2001年的時(shí)候,一種名叫ATA100的規(guī)范被ANSI(American National Standards Institute:美國國家標(biāo)準(zhǔn)學(xué)會)認(rèn)證,讓對存儲有需求的用戶興奮不已。因?yàn)榇饲皵?shù)據(jù)線的傳輸速度只有66MB/s,而一部分硬盤的內(nèi)部傳輸速度已經(jīng)快接近極限,這樣一旦遇到RAID等,外部傳輸速度就成為瓶頸。在后來,ATA接口的速度更是提升到了133MB/s的理論值,以進(jìn)一步滿足用戶需要。
但是這種基于并行總線的傳輸技術(shù)發(fā)展已經(jīng)到了極限,在ATA133之后并沒有更高規(guī)格的規(guī)范推出。同時(shí)也難以滿足用戶對性能和易用性的進(jìn)一步需求。比如在一條線上安裝多個(gè)硬盤時(shí)要設(shè)置主從盤跳線、寬大的數(shù)據(jù)線不利于布線和系統(tǒng)散熱,不支持熱插拔讓系統(tǒng)不便于維護(hù)等等。從技術(shù)上來說,由于這種并行傳輸技術(shù)對于干擾缺乏良好的過濾機(jī)制,為了確保數(shù)據(jù)被正確傳輸,峰值傳輸電壓高達(dá)5V,這種方式已經(jīng)讓傳輸標(biāo)準(zhǔn)失去了進(jìn)一步提升性能的可能性。
在ATA100通過ANSI認(rèn)證的同時(shí),由Intel、IBM、希捷等廠商牽頭,在2001年發(fā)布了另一種完全不同的數(shù)據(jù)傳輸規(guī)范,被稱為SATA1.0。這種傳輸技術(shù)在2000年被提出來,是一種從光纖傳輸衍生出來的串行傳輸技術(shù),并在次年最終確立成為標(biāo)準(zhǔn)。與此前的PATA相比,數(shù)據(jù)線變得非常窄,安裝十分方便。同時(shí)每個(gè)存儲設(shè)備占用一條單獨(dú)通道,不必設(shè)置主從,并且具備了優(yōu)秀的數(shù)據(jù)校驗(yàn)和糾錯(cuò)功能。更重要的是初始傳輸速度就達(dá)到了150MB/s,即使是相對于之后的ATA133來說,數(shù)據(jù)傳輸性能也已經(jīng)大大超越了。因此SATA在傳輸標(biāo)準(zhǔn)競爭中處于絕對優(yōu)勢,為以后的主流地位奠定了基礎(chǔ)。
[page]
SATA2:開始走向成熟
現(xiàn)在回頭來看,SATA的出現(xiàn)是一個(gè)不小的進(jìn)步。與之前從ATA33到ATA133的一步步傳輸性能提升相比,PATA轉(zhuǎn)換到SATA是從并行轉(zhuǎn)向串行,并不是簡單的規(guī)范升級,而是革命。但作為全新的標(biāo)準(zhǔn),也存在一些不完善的地方,因此隨著時(shí)間的不同,會有1.0a、1.0、1.5等等逐步完善的版本。但總體上說,使用在服務(wù)器以及企業(yè)存儲設(shè)備上的時(shí)候,會出現(xiàn)對熱插拔支持不好、對多任務(wù)請求支持不好、高負(fù)荷下性能降低等問題。
其實(shí)在2002年,也就是SATA1規(guī)范制定的第二年,SATA2就發(fā)布了,并且對這些存在的問題進(jìn)行了大規(guī)模修復(fù),同時(shí)還增加了很多新的技術(shù)以進(jìn)一步提升性能。SATA2最廣為人知的穩(wěn)定版本是SATA2.5,將所有的優(yōu)秀技術(shù)搜羅進(jìn)來,并且規(guī)范了SATA2標(biāo)識如何正確使用。
SATA2里面將傳輸速度從150MB/s提升到了300MB/s,并且增加了NCQ、端口選擇器、端口倍增器等技術(shù)。其中在性能提升上最引以為傲的就是NCQ技術(shù),在某些情況下,通過優(yōu)化算法對需要讀取的內(nèi)容進(jìn)行重新排序,將按照數(shù)據(jù)順序讀取改變?yōu)榘凑沾疟P位置順序讀取,大大提升了性能。
另外對于數(shù)據(jù)線容易成為企業(yè)級存儲設(shè)備單一故障點(diǎn)的問題,端口選擇器允許一個(gè)硬盤占用2個(gè)SATA接口(通道),這樣在一條線出現(xiàn)故障的時(shí)候切換到另一條傳輸,以確保重要業(yè)務(wù)正常運(yùn)行。而端口倍增器允許一個(gè)SATA線連接兩個(gè)硬盤,提升了系統(tǒng)整體可以容納的存儲器數(shù)量。
更高速的SATA3已成主流
可以說SATA2是SATA接口走向成熟的一代,所有的規(guī)范都已經(jīng)接近最終確定,暫時(shí)還沒有特別新的內(nèi)容需要加入。目前的SATA已經(jīng)升級到了3.0時(shí)代,相對于SATA2,新規(guī)范優(yōu)化了NCQ的讀取機(jī)制,并且將速度提升到了600MB/s。
外部傳輸速度的升級,對于民用產(chǎn)品來說意義不大,因?yàn)樵趥€(gè)人用戶的機(jī)器中磁盤內(nèi)部傳輸速度才是最大的瓶頸。然而在企業(yè)級存儲領(lǐng)域,對存儲性能的渴求是令人發(fā)指的。不但各種高性能的磁盤陣列方案云集,并且很多磁盤本身的內(nèi)部傳輸速度也都相當(dāng)高,更不乏萬轉(zhuǎn)級、15000轉(zhuǎn)級的硬盤廣泛使用,一些存儲設(shè)備更是早早就提供了對SSD固態(tài)硬盤的完善支持,在這種情況下,通過磁盤產(chǎn)品的優(yōu)化組合,很容易使原本看起來充裕的外部接口瞬間變成瓶頸,因此更高速率的規(guī)范勢在必行。
[page]
SATA3:讓人疲勞的提速
SATA-IO組織最新的標(biāo)準(zhǔn)將會做怎樣的升級呢?先看一張最新的Intel服務(wù)器主板芯片組布局圖。
在這張布局圖中我們要注意的就是SATA的部分。在芯片組中,Intel為服務(wù)器提供了4個(gè)SATA2接口和2個(gè)SATA3接口,這兩種接口分別能夠提供300MB/s和600MB/s的傳輸速度。雖然目前對于單個(gè)存儲器來說,目前還很難對這種規(guī)格造成沖擊。但是各種磁盤陣列方案,尤其是SSD的引入,讓存儲設(shè)備的內(nèi)部傳輸速度能夠成倍增加,即使最新的SATA3,外部傳輸速度也能很容易成為瓶頸。這讓SATA-IO感到了壓力。SATA-IO總裁Mladen Luksic去年的采訪中,談到SATA升級問題就曾經(jīng)表示,雖然雖然企業(yè)級用戶所占的市場份額并不多(企業(yè)級有太多解決方案可用了),但SATA的目標(biāo)是要滿足所有情況的應(yīng)用。
以往無論是ATA33/66/100/133,還是SATA1/2/3(傳輸速度分別為150/300/600),其實(shí)都是在防止這種外部瓶頸出現(xiàn)而進(jìn)行的升級。但是到了后SATA3時(shí)代該如何升級?這樣純粹提速的升級之路能走多遠(yuǎn)?作為規(guī)范的制定者,SATA-IO組織權(quán)衡之后改變了這種單純提速的思路。一種看起來相似,但是又很“怪異”的接口出現(xiàn)了。
[page]
后SATA時(shí)代:升級是為了不再升級
下一代SATA升級的切入點(diǎn)指向了另一個(gè)同樣使用串行總線的近鄰:PCI Express。先做一下科普:在主板上可以看到各種不同長度的PCI Express接口,對應(yīng)了x1,x4,x8,x16四種規(guī)格。每一個(gè)x代表一條PCI Express通道,每一條PCI Express通道帶寬是固定的,硬件制造商研發(fā)產(chǎn)品時(shí),根據(jù)自己產(chǎn)品所需要的帶寬情況,把產(chǎn)品設(shè)計(jì)成需要占用幾條PCI Express通道就可以了。也就是說PCI Express的帶寬純粹是用通道數(shù)量堆積起來的。
既然PCI Express可以,為什么SATA不可以?帶著這樣的思路,早在2011年下半年,一種新的理念被提了出來,叫做SATA Express。如今經(jīng)過各方討論和完善,SATA Express正在逐步成型,現(xiàn)在正等待被SATA-IO批準(zhǔn)使用,不出意外的話,今年年底將正式成為規(guī)范。其理念很簡單,概括來說,就是把SATA硬盤全部連接到PCI Express上去。
但是PCI Express如何與存儲設(shè)備連接呢?解決的方法是摒棄芯片組內(nèi)置SATA控制器的方式,轉(zhuǎn)而將SATA控制器放到每個(gè)存儲設(shè)備上——就是讓每個(gè)SATA接口的硬盤自帶SATA控制器。這樣不論多少個(gè)設(shè)備,都會有一個(gè)自己獨(dú)占的SATA通道,外部接口速度達(dá)到600MB/s,對于單個(gè)存儲設(shè)備而言在很長一段時(shí)間內(nèi)都不可能出現(xiàn)瓶頸。
下一步,在主板上繼續(xù)提供SATA接口,但這些SATA接口只是繼續(xù)保持SATA接口的形狀,已經(jīng)不再連入主板的SATA控制器,而是直接與PCI Express通道連接。在PCI Express 2.0規(guī)格中,每個(gè)通道可以提供500MB/s帶寬,比SATA3略低。但是未來的PCI Express 3.0規(guī)格中,每個(gè)通道的帶寬將達(dá)到1GB/s,遠(yuǎn)遠(yuǎn)超過了SATA3規(guī)格。
即使PCI Express停留在2.0時(shí)代也沒關(guān)系,因?yàn)?00MB/s是PCI Express每個(gè)通道的帶寬,如果存儲器占用2條PCI Express通道,外部傳輸速度就達(dá)到1GB/s,如果占用4條,就達(dá)到2GB/s,……以此類推,即使存儲設(shè)備的數(shù)量特別多,只要逐步增加PCI Express通道的占用量,存儲設(shè)備外部的數(shù)據(jù)傳輸也不會出現(xiàn)任何瓶頸。(以Xeon E5-2600為例,每顆CPU可以提供40條PCI Express通道,雙路平臺達(dá)到80條)
SATA-IO已經(jīng)發(fā)布了全新的SATA Express接口規(guī)范,新的接口可以同時(shí)兼容現(xiàn)有的SATA存儲設(shè)備(連接到SATA控制器)以及未來的SATA Express存儲設(shè)備(連接到PCI Express總線)。
另外,根據(jù)資料顯示,一款SFF-8639的總線控制器也已經(jīng)出爐,這款控制器同時(shí)支持現(xiàn)有的SATA設(shè)備和未來的SATA Express設(shè)備,是一種在兩種設(shè)備都存在時(shí)使用的過渡方案,可以有效幫助用戶在過渡時(shí)期切換不同規(guī)格的存儲設(shè)備。
可以看出,在一次次速度提升之后,SATA-IO最終放棄了為SATA通道進(jìn)一步提速的打算,轉(zhuǎn)而憑借串行總線可以多通道連接的優(yōu)勢,對主板上的閑置資源進(jìn)行充分整合,以更直接更激進(jìn)的方式進(jìn)行提速,預(yù)計(jì)從明年開始,很長一段時(shí)間之內(nèi)都看不到SATA再做任何升級了。