書接上回-《串行總線技術(一)-串行總線結構(以PCIe為例)》《串行總線技術(二)-串行總線中的先進設計理念及SerDes/PMA介紹》,今天詳解SATA協議。
簡介SATA(Serial Advanced Technology Attachment,高級技術附加裝置)是在2002年作為并行ATA(Parallel ATA,PATA)的替代技術而引人的。由于SATA是一種串行協議,與并行ATA相比,它所需要的引腳數少、連接器尺寸也小。第一代SATA(也被稱為SATA1.0)以1.5Gbps速度運行。SATA2.0的運行速度翻倍至3.0Gbps,在SATA3.0中,運行速度進一步翻倍至6.0GbpS。
SATA架構SATA組成部分包括兩種類型:SATA宿主(SATA host)和SATA設備(SATA device)。
SATA宿主通常位于個人計算機中。SATA宿主可以有一個或者多個端口。SATA宿主的每一個端口連接一個SATA設備。即使SATA宿主具有多個端口,各個端口的運行也是彼此獨立的,同時每一個SATA設備的運行都獨立于其他SATA設備。
SATA宿主集成在芯片組內部,在芯片組內部,SATA宿主的前端連接至芯片組內部的PCle總線或AHB/AXI總線上。SATA宿主采用寄存器接口層進行數據通信,該寄存器接口層被稱為高級宿主控制器接口(Advanced Host Controller Interface,AHCI)。AHCI為DMA數據傳送提供了基于寄存器的接口。在軟件中有操作指令,軟件存儲在存儲器中。然后,軟件對宿主寄存器空間進行置位表示指令已就緒。SATA宿主從存儲器中取出指令并將它們傳送給SATA設備。
SATA設備接收到來自宿主的指令并加以執行。在SATA設備的后端,通常是硬盤控制器。SATA協議層將SATA指令傳遞給硬盤控制器,由它來執行指令(從硬盤中讀出數據或者將數據寫入硬盤)。SATA支持本地命令排序(Native Command Queuing,NCQ),即硬盤控制器通過SATA協議接收多條指令、并按照最佳順序加以執行。
SATA協議分為三層(復雜協議都具有分層管理機制):傳輸層、鏈路層和物理層。物理層最接近物理鏈路,具有8b/10b編解磯、擾碼/解擾等功能。另外,它還關注鏈路訓練和初始化。數據鏈路層是中間層次,關注鏈路對鏈路的通信。數據鏈路報文長度同定(4字節),稱為原語(primitive)。SATA采用全雙工通信協議,但與PCle類似,發送和接收線路不同時進行數據傳送。當一方將數據發送到TX通道上時,另一方發送原語。原語用于傳遞控制信息,如R-OK(接收數據無差錯)、R_ERR(接收數據有差錯)、HOLD(發給發送方的流控信,讓其暫停發送數據)。
最上面一層被稱為傳輸層,它與應用層相連。它接收來自應用層的指令和數據,并以幀信息結構(Frame Information Structure,FIS)的形式傳遞給另一方。FIS中包括頭部、凈載荷數據和循環冗余檢驗碼,其凈載荷長度可變。
SATA的其他變種eSATA
eSATA代表外部SATA(External SATA)。它采用更好的連接器和更長的屏蔽線纜,最長可達2米。它針對的是外部硬盤。
mSATA
mSATA代表小型化SATA(mini-SATA)。它針對的是移動應用和小型固態電子存儲設備。它有類似于mini-PCIe卡的外形尺寸,面向筆記本和上網本設備。
快速SATA
SATA Express代表快速SATA。它是將SATA協議和PCIe接口結合在一起的新協議。SATA Express連接器可以接插一個x2的PCIe設備或者兩個SATA設備。
帶寬最高可達16Gbps帶寬(現在最快的SATA 3.2標準帶寬為16Gbps),SATA Express標準將會如其名稱所描述的,把SATA軟件架構和PCI-Express高速界面結合在一起。SATA國際組織稱SATA Express標準將會帶來新一代更快的存儲裝置和對應的主板接口,并且還能兼容現有的SATA設備。SATA國際組織主席Mladen Luksic稱該標準將使固態與混合硬盤受益于新一代PCI-Express 3.0的高帶寬從而打破性能瓶頸,標準的具體細節將在年內制定完成。SATA國際組織同時表示除SATA Express外,還有針對集成在主板上的嵌入式單芯片SSD存儲解決方案的SATA μSSD標準,面向移動設備如平板電腦等。
責任編輯:haq
-
SATA
+關注
關注
0文章
264瀏覽量
83388 -
串行接口
+關注
關注
3文章
328瀏覽量
42613
原文標題:串行協議之SATA
文章出處:【微信號:Open_FPGA,微信公眾號:OpenFPGA】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論