TWI507879B - 串列附接scsi(sas)擴充器、儲存系統、用於透過sas擴充器在sas啟動器與串列進階附接技術(sata)目標器件之間傳送資料之方法、可於包含原生sata主機之系統操作之方法、及可於sata儲存系統操作之方法 - Google Patents
串列附接scsi(sas)擴充器、儲存系統、用於透過sas擴充器在sas啟動器與串列進階附接技術(sata)目標器件之間傳送資料之方法、可於包含原生sata主機之系統操作之方法、及可於sata儲存系統操作之方法 Download PDFInfo
- Publication number
- TWI507879B TWI507879B TW100107605A TW100107605A TWI507879B TW I507879 B TWI507879 B TW I507879B TW 100107605 A TW100107605 A TW 100107605A TW 100107605 A TW100107605 A TW 100107605A TW I507879 B TWI507879 B TW I507879B
- Authority
- TW
- Taiwan
- Prior art keywords
- fis
- sata
- sas
- dma
- target device
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/387—Information transfer, e.g. on bus using universal interface adapter for adaptation of different data processing systems to different peripheral devices, e.g. protocol converters for incompatible systems, open system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0028—Serial attached SCSI [SAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0032—Serial ATA [SATA]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/38—Universal adapter
- G06F2213/3852—Converter between protocols
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Systems (AREA)
- Bus Control (AREA)
Description
本發明大體上係關於儲存系統效能,且更具體言之係關於用於改良一啟動器/主機器件與一串列進階附接技術(SATA)目標器件之間的通訊中之輸送量之方法及裝置。
在儲存系統中,一主機系統與一或多個儲存器件通訊。在SATA儲存系統中,一啟動器/主機器件(例如,一主機系統)與一SATA目標器件(例如,一SATA儲存器件,諸如一磁碟機)通訊。SATA協定經演進作為介於一啟動器與一目標之間耦合的並列進階附接技術(PATA)之一高速、低成本替代項。在PATA中,需要協調自主機至磁碟之直接記憶體存取(DMA)高速傳送之操作,使得該主機(啟動器)不會過度執行該目標(磁碟)接收資料之能力。PATA磁碟機通常具有用於在DMA控制下自該主機接收高速資料之一有限的緩衝器記憶體。為了協調此等傳送,PATA標準包含一信號交握協定,藉此該磁碟機將對該主機發信號其能夠接收多達一最大緩衝器大小之資料之一DMA傳送(自該PATA磁碟機發送一「直接記憶體存取設定(DMA SETUP)」訊息至該主機)。接著,該磁碟將發送一「DMA ACTIVATE」信號至該主機,該「直接記憶體存取啟動(DMA ACTIVATE)」信號指示該磁碟現在已準備好多達在該DMA SETUP信號中指定之該最大緩衝器大小之一DMA傳送。該主機將接著執行該DMA傳送並接著等待來自該磁碟機之指示該磁碟機已再次準備好另一DMA傳送的下一個信號(下一個DMA ACTIVATE)。此交握繼續直至完成自該主機至該磁碟之整個傳送為止。
由於引進SATA,所以SATA標準包含自SATA目標器件(例如,磁碟機)傳輸至啟動器器件(例如,主機系統)之相同的DMA SETUP訊息及DMA ACTIVATE訊息。此等訊息係以SATA協定中之訊框資訊結構(FIS)傳輸且在SATA標準之原生指令佇列(NCQ)態樣中討論此等訊息。該等SATA標準已為一般技術者所熟知且一般可在www.serialata.org
處獲得。亦可透過在一串列附接SCSI(SAS)啟動器(亦即,一SAS/STP啟動器)中使用SATA穿隧協定(STP)而在SAS域中使用SATA協定。SAS及STP規範已為一般技術者所熟知且一般可在www.t10.org
處獲得。
該SATA協定將與各DMA ACTIVATE訊息相關聯之最大DMA傳送標準化為8千位元組。此DMA相關信號交握機制調節啟動器/主機之效能,此係因為8 KB之各DMA傳送延遲等待接收下一個DMA ACTIVATE。此外,可能需要該啟動器器件多次執行一DMA傳送之管理設定及組態以回應於各DMA ACTIVATE訊息之接收而由該啟動器器件開始及停止用於下一個8 KB傳送之DMA電路。該啟動器/主機中之此額外負擔處理降低一SATA儲存系統之總體效能。
包含旋轉磁碟機之許多當前的SATA目標器件能夠依SATA通訊鏈路之全額速度(例如,3 GB/秒或近似300 MB/秒)接收遠遠多於8 KB。此外,SATA半導體儲存器件(例如,RAM碟或快閃碟機)可能能夠依該SATA通訊鏈路之額定速度連續接收資料。因此,等待接收一DMA ACTIVATE及該啟動器之DMA電路之任何相關聯的重新組態之負擔處理可能將一嚴格的效能補償強加於SATA儲存系統。
因此,改良一SATA儲存系統之效能係一持續存在的挑戰。
本發明藉由提供用於增強與一SATA目標器件之通訊中之效能之方法及裝置而解決以上及其他問題,藉此提高可用技術發展水平。本文之特徵及態樣提供改變一SATA控制器以忽視(例如,放棄)直接記憶體存取啟動訊框資訊結構(DMA ACTIVATE FIS),使得該控制器可連續傳送資料至該SATA目標。在一例示性實施例中,該控制器包括與一增強型SATA擴充器耦合之一經修改的SAS/STP啟動器,使得該擴充器放棄DMA ACTIVATE FIS,且該啟動器無需使該等DMA ACTIVATE FIS繼續透過該擴充器傳送資料至該SATA目標器件。在另一例示性實施例中,一原生SATA主機係經增強以無需接收DMA ACTIVATE FIS且該SATA目標器件係經增強以不發送DMA ACTIVATE FIS。在此等例示性實施例中,該啟動器無需等待接收一DMA ACTIVATE以繼續資料傳送,而是依賴其他標準SATA協定流控制方法以確保該SATA目標器件之接收緩衝器不溢位。
在本文之一態樣中,提供一種用於透過一SAS擴充器在一SAS啟動器與一SATA目標器件之間傳送資料之方法。該方法包括:在該SAS啟動器中自該SATA目標器件接收一DMA SETUP FIS,及回應於接收該DMA SETUP FIS而自該SAS啟動器傳輸資料至該SATA目標器件。在傳輸步驟期間或之後,該傳輸步驟不等待在該SAS啟動器中自該SATA目標器件接收一DMA ACTIVATE FIS。
本文之另一態樣提供一種可在包括與一SATA目標器件耦合之一原生SATA主機之一系統中操作之方法。該方法係用於在該SATA主機與該SATA目標器件之間傳送資料。該方法包括:在該SATA主機中自該SATA目標器件接收一DMA SETUP訊框資訊結構(FIS),及回應於接收該DMA SETUP FIS而傳輸資料至該SATA目標器件。該SATA主機不等待接收一DMA ACTIVATE FIS以完成該傳輸步驟。該SATA目標器件不傳輸一DMA ACTIVATE FIS以完成該傳輸步驟。
本文之另一態樣提供一種可在一SATA儲存系統中操作之方法。該儲存系統包括一儲存控制器及一SATA目標器件。該方法包括自該儲存控制器傳輸包括一指令之一暫存器FIS(COMMAND FIS)至該SATA目標器件。該COMMAND FIS係與待傳輸至該SATA目標器件之資料相關聯。該方法亦包括:回應於傳輸該COMMAND FIS而在該儲存控制器中自該SATA目標器件接收一DMA SETUP FIS,及判定該DMA SETUP FIS是否包含請求自動啟動(AUTO-ACTIVATE)之一指示項。回應於該DMA SETUP FIS不包含一AUTO-ACTIVATE指示項之一判定,該方法亦包括等待自該SATA目標器件接收一第一DMA ACTIVATE FIS。回應於接收該第一DMA ACTIVATE FIS及/或回應於該DMA SETUP FIS包含一AUTO-ACTIVATE指示項之一判定,該方法進一步包括使用該儲存控制器之一DMA電路自該儲存控制器傳輸一DATA FIS至該SATA目標器件,其中該DATA FIS包括與該COMMAND FIS相關聯之資料的一部分。傳輸該DATA FIS之步驟進一步包括:偵測自該SATA目標器件接收一DMA ACTIVATE FIS,及回應於接收該DMA ACTIVATE FIS之偵測而放棄該DMA ACTIVATE FIS。重複傳輸一DATA FIS之步驟直至將與該COMMAND FIS相關聯之所有資料傳輸至該SATA目標器件為止。
本文之另一態樣提供SAS擴充器,該SAS擴充器包括:一第一介面,其係經調適以將該擴充器與一SAS/STP啟動器耦合;及一第二介面,其係經調適以將該擴充器與一SATA目標器件耦合。該擴充器亦包括橋接器邏輯件,該橋接器邏輯件係經調適以透過該第二介面將透過該第一介面自該SAS/STP啟動器接收之資料傳送至該SATA目標器件。該資料係與一COMMAND FIS相關聯。該橋接器邏輯件係進一步經調適以放棄透過該第二介面自該SATA目標器件接收之任何DMA ACTIVATE FIS直至完成傳送與該COMMAND FIS相關聯之資料為止。
本文之另一態樣提供一種儲存系統,該儲存系統包括一串列進階附接技術(SATA)主機及與該SATA主機耦合之一SATA儲存器件。該SATA主機係經調適以將資料傳送至該儲存器件,而在複數個DATA FIS之各者的傳輸之後無需一DMA ACTIVATE訊框資訊結構(FIS)。
圖1係一種系統100之一方塊圖,根據本文之特徵及態樣增強該系統100以改良與一SATA目標器件通訊之系統之效能。系統100包含與一儲存控制器耦合之一SATA目標器件106,該儲存控制器用於與該SATA目標器件106交換資料。SATA目標器件106可為任何適合的儲存器件,諸如SATA磁碟機(例如,一旋轉磁碟或光碟機以及半導體儲存器件,諸如RAM碟及快閃碟機)。在圖1之例示性實施例中,該儲存控制器包括作為與增強型SAS擴充器104耦合之一主機器件之一增強型SAS/STP啟動器102。SAS擴充器104可經由通訊路徑150透過埠邏輯件112.1與該啟動器102耦合。通訊路徑150可包括任何適合的SAS通訊媒體。埠邏輯件112.1包括根據SATA協定(用於實施PHY層、鏈路層及/或其他邏輯層)之用於在SATA擴充器104內實施一邏輯埠(亦即,一窄SAS埠或寬SAS埠)之標準邏輯件。同樣地,SAS擴充器104可藉由一通訊路徑152及埠邏輯件112.2與SATA目標器件106耦合。通訊路徑152可包括任何適合的SAS通訊媒體。埠邏輯件112.2可包括根據SATA協定(用於實施PHY層、鏈路層及/或其他邏輯層)之用於在SAS擴充器104內與SATA目標器件106交換之任何標準邏輯件。啟動器102可為在一SAS相容器件內用於實施SAS/STP協定之任何適合的控制邏輯件,包含(例如)一主機匯流排配接器(HBA)或整合於一儲存子系統內之一儲存控制器。
SAS擴充器104進一步包括熟知的標準組件(未展示),諸如縱橫式切換邏輯件及在一全功能標準SAS擴充器中常見的其他適合的邏輯件。此外,SAS擴充器104包括分別經由路徑154及156與埠邏輯件112.1及112.2耦合之橋接器邏輯件110。橋接器邏輯件110根據本文之特徵及態樣提供經增強的邏輯件以改良系統100之效能。特定言之,橋接器邏輯件110用於放棄自該SATA目標器件106接收之DMA ACTIVATE FIS。結合橋接器邏輯件110,啟動器102係經增強使得其無需接收如由SATA標準指定之DMA ACTIVATE FIS。藉由消除等待接收多個DMA ACTIVATE FIS之需要,啟動器102可透過以SATA目標器件106為目的地之通訊路徑150透過SAS擴充器104經由路徑152更有效地連續傳送資料。利用SAS/SATA協定之其他標準流控制機制以確保啟動器102與SATA目標器件106之間的適當流控制以防止SATA目標器件106內的接收緩衝器之溢位。
圖2係作為系統200之一替代實施例之一方塊圖,其中一經修改的原生SATA主機202係經由SATA通訊路徑250直接耦合至一經修改的SATA目標器件204。經修改的原生SATA主機202係經增強以(視情況)無需自該經修改的SATA目標器件204接收DMA ACTIVATE FIS,及經修改的SATA目標器件係經增強以(視情況)不傳輸DMA ACTIVATE FIS。因此,如相較於與當前SATA規範完全相容之標準SATA系統,系統200提供經增強的效能以在傳輸各DATA FIS之後於該SATA主機內等待自該SATA目標器件204接收DMA ACTIVATE FIS。如所提及,經增強的特徵可為選用,此係因為增強型SATA主機202可判定如耦合至其之一SATA目標是否係經增強(如為經修改的目標器件204)。同樣地,增強型目標器件204可遵從當前SATA標準而操作以傳輸DMA ACTIVATE FIS,除非及直至一增強型SATA主機202組態該增強型目標器件204用於經增強的操作為止。
一般技術者將容易認知分別在圖1之全功能系統100及圖2之全功能系統200內之眾多額外及等效元件及模組。本文為了簡單化及簡短化此討論而省略此等額外及等效元件。
圖3係描述一種根據本文之特徵及態樣之用於改良儲存系統效能之一例示性方法之一流程圖。諸如在圖1之系統100中描述之一增強型SAS擴充器中可操作圖3之該方法。回應於透過一中間(增強型)SAS擴充器自SAS/STP啟動器發送資料至一SATA目標器件之一需求而可操作圖3之該方法。
在包括指示傳輸資料至該SATA目標之一指令之一適當的SATA暫存器FIS(COMMAND FIS)的初始傳輸之後,步驟300自該SATA目標器件接收一DMA SETUP FIS。將該經接收之DMA SETUP FIS自該擴充器轉遞至該啟動器。在步驟304處,開始傳輸一第一/下一個DATA FIS。該增強型SAS擴充器將自該啟動器接收之DATA FIS轉遞至該SATA目標器件。隨著資料傳輸的進行,步驟306根據SATA標準執行常規流控制操作直至步驟308判定已完成DATA FIS傳輸為止。當將目前的DATA FIS完全轉遞至該SATA(透過該SAS擴充器自該啟動器)時,步驟310等待自該SATA目標接收一DMA ACTIVATE FIS並放棄該經接收之DMA ACTIVATE FIS。根據本文之特徵及態樣,可放棄所有DMA ACTIVATE FIS。步驟312接著判定與該初始COMMAND FIS相關聯之更多資料是否有待傳輸。若是,則處理繼續迴圈返回至步驟304以組態及開始傳輸下一個DATA FIS,從而傳輸與潛在COMMAND FIS相關聯之額外資料。若步驟312判定無需傳輸與該COMMAND FIS相關聯之進一步資料,則步驟314自該目標器件接收狀態標記並將該狀態轉遞至該啟動器,以藉此完成將該COMMAND FIS及其相關聯之資料傳輸至該SATA目標器件。
因此,圖3之該方法藉由消除在如由SATA標準指定之各8千位元組的資料傳輸之後於該啟動器內等待接收一DMA ACTIVATE FIS之需要而改良與SATA目標器件通訊之效能。利用SAS及SATA協定之其他熟知的流控制機制(如步驟306中所提及)以確保適當的流控制避免該SATA目標器件內的接收緩衝器之溢位。一般技術者將容易認知在一種用以自一啟動器傳輸資料至一SATA目標器件之全功能方法中之眾多額外及等效步驟。此等額外及等效步驟可包含(例如)錯誤復原及重試及其他特徵。本文為了簡單化及簡短化此討論而省略此等額外及等效步驟。
圖4係描述根據本文之特徵及態樣之用以改良一SAS/STP啟動器與一SATA目標器件之間的透過一增強SAS擴充器之通訊中的效能之另一例示性方法之一流程圖。例如,可在圖1之該系統100中操作圖4之該方法。更具體言之,可在圖1之該增強型SAS/STP啟動器中操作圖4之該方法。此外,可在與(諸如)圖2中描繪之一增強型SATA儲存器件耦合之一增強型原生SATA主機中操作圖4之該方法。
步驟400首先判定(例如,在該SAS/STP啟動器內)該SAS擴充器是否包含改良SATA目標器件通訊效能之本文之經增強的特徵及態樣。可藉由詢問該SAS擴充器以自廠商唯一的資訊或其他組態資訊判定該SAS擴充器是否支援經增強的操作而達成步驟400之測試。若否,則步驟499代表根據SATA規範(例如,與等待DMA ACTIVATE FIS相關聯之所有標準延遲)之該啟動器及該擴充器之常規操作。一般技術者將容易認知可在初始化該啟動器期間執行由步驟400執行之詢問或測試一次且無需相關聯於至該SATA目標器件之各次所要的傳輸而執行。此外,如下文討論,亦可在一增強型原生SATA主機內利用步驟400之處理以測試一直接耦合的SATA目標器件是否經增強以避免傳輸DMA ACTIVATE FIS。
若適當增強該SAS擴充器(或SATA目標),則該SAS/STP啟動器在步驟402處繼續發送一COMMAND FIS至該SATA目標器件(透過該增強型SAS擴充器或直接發送),該COMMAND FIS指示需要自該啟動器傳送資料至該SATA目標器件。在傳輸該COMMAND FIS之後,步驟404等待自該SATA目標器件接收一DMA SETUP FIS。根據SATA規範,該DMA SETUP FIS提供該啟動用於組態其之DMA電路以將資料傳送至該SATA目標器件之許多參數。在步驟406處,該啟動器判定DMA SETUP之該等參數是否指示待利用之一AUTO-ACTIVATE特徵。根據SATA標準,該AUTO-ACTIVATE特徵指示該啟動器無需等待接收一第一DMA ACTIVATE FIS,而是可即刻開始傳輸一第一DATA FIS。若步驟406判定該DMA SETUP FIS並非指示該AUTO-ACTIVATE特徵,則步驟408等待自該目標器件接收一第一DMA ACTIVATE FIS。當在步驟408處接收該第一DMA ACTIVATE FIS之後或回應於在步驟406處於DMA SETUP中設定該AUTO-ACTIVATE特徵之一判定,步驟410利用DMA電路或該SAS/STP啟動器之其他資料傳送能力將下一個(例如,第一)DATA FIS傳輸至該SATA目標器件。下文參考圖5提供步驟410之操作之進一步例示性細節。
步驟412接著判定是否仍然將與經傳輸COMMAND FIS相關聯之額外資料傳送至該SATA目標器件。若是,則處理繼續迴圈返回至步驟410以組態及傳輸下一個DATA FIS至該目標器件。否則,步驟414自該SATA目標器件接收及處理狀態資訊以藉此完成潛在指令及其相關聯資料之傳送。
如下文進一步詳述,步驟410無需等待任何DMA ACTIVATE FIS以開始及完成一DATA FIS之傳輸。實情係,增強型啟動器可連續發送DATA FIS並繼續操作其之DMA電路。利用SAS及SATA協定之標準流控制機制以確保適當流控制以避免該SATA目標器件內的接收緩衝器之溢位。
圖5係描繪傳輸代表與一潛在COMMAND FIS相關聯之一部分資料之一單一DATA FIS之圖4的步驟410之處理之例示性額外細節之一流程圖。步驟500組態該啟動器之一DMA電路以透過該增強型SAS擴充器將該下一個DATA FIS傳送至該SATA目標器件(或直接自該增強型SATA主機至一增強型SATA目標器件)。根據SATA標準,步驟502接著傳輸一X_RDY基元至該SATA目標器件以指示該啟動器準備好傳輸資料。步驟504接著等待自該SATA目標器件接收一R_RDY基元(其指示該SATA目標器件準備好自該啟動器接收DATA FIS傳輸)。步驟506接著開始自該啟動器至該SATA目標器件(直接或透過該增強型SAS擴充器)之該DATA FIS之一DMA傳送(或其他傳送機制)。
隨著該DMA電路將該DATA FIS傳送至該目標器件,接著可操作步驟508至516以確保根據標準SATA協定之適當流控制。特定言之,步驟508測試是否已自該SATA目標器件接收一HOLD基元。若是,則步驟510暫時中止該DMA電路以停止傳送該DATA FIS,藉此確保該SATA目標器件之接收緩衝器不會溢位。若尚未接收HOLD基元或已中止該DMA傳送,則步驟512接著偵測是否已自該SATA目標器件接收一R_IP基元(其指示該SATA目標器件準備好重新繼續接收該DATA FIS)。若是,則步驟514重新繼續該DMA電路之處理以繼續傳送目前的DATA FIS。若未接收到R_IP基元或已重新繼續該DMA傳送,則步驟516接著判定是否完成此DATA FIS之該DMA傳送。若否,則處理繼續迴圈返回至步驟508以在傳輸此DATA FIS期間繼續處理適當的流控制。在完成此DATA FIS之DMA傳送之後,步驟410之處理得以完成。
因此,圖4及圖5之方法改良一啟動器與一SAS目標器件之間的透過一增強型SAS擴充器(或直接在一增強型SATA主機與一增強型SATA目標器件之間)之通訊中的效能。一般技術者將容易認知在一種用以自一啟動器傳輸資料至一SATA目標器件之全功能方法中之眾多額外及等效步驟。此等額外及等效步驟可包含(例如)錯誤復原及重試及其他特徵。本文為了簡單化及簡短化討論而省略此等額外及等效步驟。
此外,如上文所提及,一般技術者將容易認知圖4及圖5之方法亦代表可在直接耦合至一增強型SATA目標器件之一增強型SATA主機中操作之方法。圖4之步驟400可判定是否增強一直接連接的SATA目標器件以支援本文之特徵及態樣或該直接連接的SATA目標器件是否為僅遵從當前SATA標準之一「舊型」目標器件。若增強一直接耦合的目標器件,則圖4及圖5之方法基本上相同,而不管該啟動器/主機是否直接耦合至該增強型SATA目標器件(例如,與一SATA主機耦合)或透過一增強型SAS擴充器耦合至一目標器件(例如,與一SAS/STP啟動器耦合)。換言之,無論是直接耦合至一增強型SATA目標或透過一增強型SAS擴充器耦合至一目標,該增強型啟動器/主機皆無需在各DATA FIS傳輸之後接收一DMA ACTIVATE FIS。
雖然已在圖式及前文描述中圖解說明及描述本發明,但是應認為此圖解說明及描述在性質上係例示性而非限制性。已展示及描述本發明之一實施例及其次要變體。特定言之,展示及描述為例示性軟體或韌體實施例之特徵可等效實施為客制化邏輯電路,且反之亦然。期望保護在本發明之精神內的所有變更及修改。熟習此項技術者將瞭解落於本發明之範疇內的上述實施例之變動。因此,本發明不限於上述特定實例及闡釋,但僅受隨附申請專利範圍及其等之等效物限制。
100‧‧‧系統
102‧‧‧SAS/STP啟動器
104‧‧‧SAS擴充器
106‧‧‧SATA目標器件
110‧‧‧橋接器邏輯件
112.1‧‧‧埠邏輯件
112.2‧‧‧埠邏輯件
150‧‧‧通訊路徑
152‧‧‧通訊路徑
154‧‧‧路徑
156‧‧‧路徑
200‧‧‧系統
202‧‧‧經修改的原生SATA主機
204‧‧‧經修改的SATA目標器件
250‧‧‧SATA通訊路徑
圖1係一種根據本文之特徵及態樣之提供與一SATA目標器件之通訊中之經增強效能之例示性系統之一方塊圖;圖2係根據本文之特徵及態樣之提供與一SATA目標器件通訊中之經增強效能之另一例示性系統之一方塊圖;及圖3、圖4及圖5係描述根據本文之特徵及態樣之提供與一SATA目標器件之通訊中之經增強效能之例示性方法之流程圖。
100...系統
102...SAS/STP啟動器
104...SAS擴充器
106...SATA目標器件
110...橋接器邏輯件
112.1...埠邏輯件
112.2...埠邏輯件
150...通訊路徑
152...通訊路徑
154...路徑
156...路徑
Claims (14)
- 一種用於透過一串列附接SCSI(SAS)擴充器在一SAS啟動器與一串列進階附接技術(SATA)目標器件之間傳送資料之方法,該方法包括:在該SAS啟動器中自該SATA目標器件接收一DMA SETUP訊框資訊結構(FIS);回應於接收該DMA SETUP FIS而自該SAS啟動器傳輸多個DATA FIS至該SATA目標器件,其中每次當一DATA FIS已被傳輸後,該傳輸步驟不等待在該SAS啟動器中自該SATA目標器件接收一DMA ACTIVATE FIS。
- 如請求項1之方法,該方法進一步包括:在該SAS擴充器內放棄自該SATA目標器件接收該DMA ACTIVATE FIS,使得該SAS啟動器不接收該DMA ACTIVATE FIS。
- 如請求項2之方法,該方法進一步包括:自該SAS啟動器詢問該SAS擴充器以判定增強該SAS擴充器,使得該SAS擴充器將放棄該DMA ACTIVATE FIS。
- 如請求項1之方法,該方法進一步包括:在接收該DMA SETUP FIS之後,等待在該SAS啟動器中接收透過該SAS擴充器自該SATA目標器件接收之一第一DMA ACTIVATE FIS;重複傳輸多個DATA FIS之步驟直至完成與一I/O請求相關聯之所有資料之傳輸為止;及 在接收該第一DMA ACTIVATE FIS之後,在該SAS擴充器內放棄自該SATA目標器件接收之任何隨繼的DMA ACTIVATE FIS,使得該SAS啟動器不接收該隨繼的DMA ACTIVATE FIS。
- 一種可於一包含一原生(native)串列進階附接技術(SATA)主機之系統操作之方法,該原生SATA主機與一SATA目標器件耦接,該方法用於在該SATA主機與該SATA目標器件之間傳輸資料,該方法包含:於該SATA主機中從該SATA目標器件接收一DMA SETUP訊框資訊結構(FIS);及回應於接收該DMA SETUP FIS,將多於一個之DATA FIS傳輸至該SATA目標器件,其中該SATA主機不等待接收一DMA ACTIVATE FIS以完成該傳輸步驟,且其中該SATA目標器件不傳輸一DMA ACTIVATE FIS以完成該傳輸步驟。
- 如請求項5之方法,其中該DMA SETUP FIS包括一AUTO-ACTIVATE指示項,該方法進一步包括:判定該AUTO-ACTIVATE指示項是否指示未啟用AUTO-ACTIVATE;及回應於未啟用AUTO-ACTIVATE之該判定,在該傳輸步驟之前,等待自該SATA目標器件接收一第一DMA ACTIVATE FIS。
- 一種可於一串列進階附接技術(SATA)儲存系統操作之方法,該儲存系統包含一儲存控制器及一SATA目標器件,該方法包含:從該儲存控制器將一包括一指令(COMMAND FIS)之暫存器訊框資訊結構(FIS)傳輸至該SATA目標器件,其中該COMMAND FIS與待傳輸至該SATA目標器件之資料相關聯;回應於該COMMAND FIS之傳輸,於該儲存控制器中從該SATA目標器件接收一DMA SETUP FIS;判定該DMA SETUP FIS是否包括一要求AUTO-ACTIVATE之指示項;回應於該DMA SETUP FIS並未包括一AUTO-ACTIVATE之指示項之一判定,等待從該SATA目標器件接收一第一DMA ACTIVATE FIS;回應於接收該第一DMA ACTIVATE FIS及/或回應於該DMA SETUP FIS包括一AUTO-ACTIVATE指示項之一判定,執行以下步驟:使用該儲存控制器之一直接記憶體存取(DMA)電路從該儲存控制器將一DATA FIS傳輸至該SATA目標器件,其中該DATA FIS包含與該COMMAND FIS相關聯資料之一部分且其中傳輸該DATA FIS之步驟進一步包含:偵測來自該SATA目標器件之一DMA ACTIVATE FIS之接收;及 回應於該DMA ACTIVATE FIS之接收之偵測,放棄該DMA ACTIVATE FIS;及重複傳輸一DATA FIS之步驟直到與該COMMAND FIS相關聯之所有資料被傳輸至該SATA目標器件。
- 如請求項7之方法,其中該儲存控制器係一原生SATA主機。
- 如請求項7之方法,其中該儲存控制器包含一串列附接SCSI(SAS)啟動器,其經由一SAS擴充器與該SATA目標器件耦接,其中該放棄步驟進一步包含:放棄該SAS擴充器內之DMA ACTIVATE FIS使得該SAS啟動器不接收該DMA ACTIVATE FIS。
- 如請求項7之方法,其中該儲存控制器包含一串列附接SCSI(SAS)啟動器,其經由一SAS擴充器與該SATA目標器件耦接,其中該方法進一步包含:從該SAS啟動器詢問該SAS擴充器以判定該SAS擴充器是否經增強以放棄任何隨繼的DMA ACTIVATE FIS,其中該放棄步驟進一步包含:回應於一增強該SAS擴充器之判定而在該SAS擴充器內放棄該隨繼的DMA ACTIVATE FIS,使得該SAS啟動器不接收該隨繼的DMA ACTIVATE FIS;及回應於一不增強該SAS擴充器之判定而在該SAS啟 動器內放棄該隨繼的DMA ACTIVATE FIS。
- 一種串列附接SCSI(SAS)擴充器,其包括:一第一介面,其經調適以將該擴充器與一串列附接SCSI串列進階附接技術穿隧協定(SAS/STP)啟動器耦合;一第二介面,其經調適以將該擴充器與一SATA目標器件耦合;及橋接器邏輯件,其經調適以透過該第二介面將透過該第一介面自該SAS/STP啟動器接收之資料傳送至該SATA目標器件,其中該資料係與包括一指令之一暫存器訊框資訊結構(COMMAND FIS)相關聯,其中該橋接器邏輯件係進一步經調適以放棄透過該第二介面自該SATA目標器件接收之任何DMA ACTIVATE FIS直至完成與該COMMAND FIS相關聯之資料傳送為止。
- 如請求項11之擴充器,其中該橋接器邏輯件係進一步經調適以將自該SATA目標器件接收之一DMA SETUP FIS傳送至該SAS/STP啟動器,且進一步經調適以判定該DMA SETUP FIS是否包含一AUTO-ACTIVATE指示項;其中該橋接器邏輯件係進一步經調適以將在接收該DMA SETUP FIS之後接收之一第一DMA ACTIVATE FIS轉遞至該SAS/STP啟動器。
- 一種儲存系統,其包含: 一串列進階附接技術(SATA)主機;及一與該SATA主機耦接之SATA儲存器件,其中該SATA主機經調適以傳輸資料至該SATA儲存器件,且在複數個DATA FIS之每一者傳輸之後不要求一DMA ACTIVATE訊框資訊結構(FIS)。
- 如請求項13之儲存系統,其中該SATA主機進一步經調適以詢問該SATA儲存器件以判定該SATA儲存器件是否經調適以(在接收該複數個DATA FIS之每一者後)傳輸一DMA ACTIVATE FIS,且其中該SATA主機進一步經調適以放棄從該SATA儲存器件接收之一DMA ACTIVATE FIS。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/868,220 US8275925B2 (en) | 2010-08-25 | 2010-08-25 | Methods and apparatus for improved serial advanced technology attachment performance |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201209589A TW201209589A (en) | 2012-03-01 |
TWI507879B true TWI507879B (zh) | 2015-11-11 |
Family
ID=44534027
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW100107605A TWI507879B (zh) | 2010-08-25 | 2011-03-07 | 串列附接scsi(sas)擴充器、儲存系統、用於透過sas擴充器在sas啟動器與串列進階附接技術(sata)目標器件之間傳送資料之方法、可於包含原生sata主機之系統操作之方法、及可於sata儲存系統操作之方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US8275925B2 (zh) |
EP (1) | EP2423822B1 (zh) |
JP (1) | JP5225427B2 (zh) |
KR (1) | KR101287353B1 (zh) |
CN (1) | CN102385564B (zh) |
TW (1) | TWI507879B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8924610B1 (en) * | 2013-01-29 | 2014-12-30 | Pmc-Sierra Us, Inc. | SAS/SATA store-and-forward buffering for serial-attached-SCSI (SAS) storage network |
WO2014163627A1 (en) * | 2013-04-02 | 2014-10-09 | Hewlett-Packard Development Company, L.P. | Sata initiator addressing and storage device slicing |
JP6251112B2 (ja) * | 2014-04-14 | 2017-12-20 | 株式会社東芝 | 伝送装置およびコントローラ |
WO2016014063A1 (en) * | 2014-07-24 | 2016-01-28 | Hewlett-Packard Development Company, L.P. | Expander transmission data rate determination |
CN109358991A (zh) * | 2018-11-02 | 2019-02-19 | 郑州云海信息技术有限公司 | 一种数据传输方法、系统、切换装置及可读存储介质 |
TWI719684B (zh) * | 2019-10-24 | 2021-02-21 | 瑞昱半導體股份有限公司 | 通訊系統以及運作方法 |
CN111190844A (zh) * | 2019-12-31 | 2020-05-22 | 杭州华澜微电子股份有限公司 | 一种协议转化方法及电子设备 |
CN113127389B (zh) * | 2021-04-16 | 2022-08-26 | 无锡众星微系统技术有限公司 | Sas stp业务加速方法 |
CN113220231B (zh) * | 2021-05-11 | 2022-07-22 | 无锡众星微系统技术有限公司 | 一种支持stp应用的自适应流控方法与装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200713024A (en) * | 2005-06-30 | 2007-04-01 | Intel Corp | Hardware oriented target-side native command queuing tag management |
US7523235B2 (en) * | 2003-06-11 | 2009-04-21 | Lsi Corporation | Serial Advanced Technology Attachment (SATA) switch |
US7539798B2 (en) * | 2005-12-14 | 2009-05-26 | Lsi Logic Corporation | Mitigating performance degradation caused by a sata drive attached to a sas domain |
TW200923962A (en) * | 2007-11-30 | 2009-06-01 | Promise Technology Inc | Indexing device and method for data storage system |
TW200935297A (en) * | 2008-02-01 | 2009-08-16 | Skymedi Corp | Non-volatile memory device, and method of accessing a non-volatile memory device |
CN101611383A (zh) * | 2006-12-22 | 2009-12-23 | Lsi公司 | 串行高级技术附件(sata)和串行附加的小型计算机系统接口(scsi)(sas)桥接 |
US7739432B1 (en) * | 2005-09-02 | 2010-06-15 | Pmc-Sierra, Inc. | Command switching for multiple initiator access to a SATA drive |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6948036B2 (en) * | 2002-06-21 | 2005-09-20 | Hewlett-Packard Development Company, L.P. | System and method for providing multi-initiator capability to an ATA drive |
TW200415464A (en) * | 2003-02-12 | 2004-08-16 | Acard Technology Corp | SATA flash memory device |
US7058749B2 (en) * | 2003-11-13 | 2006-06-06 | Dell Products L.P. | System and method for communications in serial attached SCSI storage network |
US7721021B2 (en) * | 2006-11-21 | 2010-05-18 | Lsi Corporation | SAS zone group permission table version identifiers |
JP5034649B2 (ja) * | 2007-04-23 | 2012-09-26 | 富士通株式会社 | 情報記憶システム |
JP2010114838A (ja) * | 2008-11-10 | 2010-05-20 | Toshiba Corp | 通信プロトコル変換装置、方法およびプログラム |
US20110320706A1 (en) * | 2009-03-12 | 2011-12-29 | Hitachi, Ltd. | Storage apparatus and method for controlling the same |
JP2010092493A (ja) * | 2009-11-24 | 2010-04-22 | Toshiba Storage Device Corp | インターフェース装置及びパケット転送方法 |
-
2010
- 2010-08-25 US US12/868,220 patent/US8275925B2/en not_active Expired - Fee Related
-
2011
- 2011-03-07 TW TW100107605A patent/TWI507879B/zh not_active IP Right Cessation
- 2011-03-28 CN CN201110075114.9A patent/CN102385564B/zh active Active
- 2011-04-27 JP JP2011099060A patent/JP5225427B2/ja not_active Expired - Fee Related
- 2011-08-24 KR KR1020110084651A patent/KR101287353B1/ko active IP Right Grant
- 2011-08-25 EP EP11178903.8A patent/EP2423822B1/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7523235B2 (en) * | 2003-06-11 | 2009-04-21 | Lsi Corporation | Serial Advanced Technology Attachment (SATA) switch |
TW200713024A (en) * | 2005-06-30 | 2007-04-01 | Intel Corp | Hardware oriented target-side native command queuing tag management |
US7739432B1 (en) * | 2005-09-02 | 2010-06-15 | Pmc-Sierra, Inc. | Command switching for multiple initiator access to a SATA drive |
US7539798B2 (en) * | 2005-12-14 | 2009-05-26 | Lsi Logic Corporation | Mitigating performance degradation caused by a sata drive attached to a sas domain |
CN101611383A (zh) * | 2006-12-22 | 2009-12-23 | Lsi公司 | 串行高级技术附件(sata)和串行附加的小型计算机系统接口(scsi)(sas)桥接 |
TW200923962A (en) * | 2007-11-30 | 2009-06-01 | Promise Technology Inc | Indexing device and method for data storage system |
TW200935297A (en) * | 2008-02-01 | 2009-08-16 | Skymedi Corp | Non-volatile memory device, and method of accessing a non-volatile memory device |
Non-Patent Citations (1)
Title |
---|
"Serial ATA II Specification Extebsions to Serial ATA 1.0a,Revision 1.2",2004年8月27日 * |
Also Published As
Publication number | Publication date |
---|---|
US20120054403A1 (en) | 2012-03-01 |
CN102385564A (zh) | 2012-03-21 |
JP5225427B2 (ja) | 2013-07-03 |
US8275925B2 (en) | 2012-09-25 |
JP2012048707A (ja) | 2012-03-08 |
KR20120019407A (ko) | 2012-03-06 |
TW201209589A (en) | 2012-03-01 |
EP2423822A3 (en) | 2012-05-30 |
EP2423822A2 (en) | 2012-02-29 |
CN102385564B (zh) | 2015-04-29 |
EP2423822B1 (en) | 2014-01-15 |
KR101287353B1 (ko) | 2013-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI507879B (zh) | 串列附接scsi(sas)擴充器、儲存系統、用於透過sas擴充器在sas啟動器與串列進階附接技術(sata)目標器件之間傳送資料之方法、可於包含原生sata主機之系統操作之方法、及可於sata儲存系統操作之方法 | |
US8832328B2 (en) | Data redirection for universal serial bus devices | |
US9696942B2 (en) | Accessing remote storage devices using a local bus protocol | |
TWI647573B (zh) | 用於支援對經由nvme控制器、通過網路訪問遠端存放設備的虛擬機器的遷移的系統和方法 | |
TWI387961B (zh) | 用以於串列進階附接技術通訊中之經改良主機/啟動器使用之方法及裝置 | |
US20150261434A1 (en) | Storage system and server | |
EP3660686B1 (en) | Method and device for transmitting data processing request | |
US10705142B2 (en) | Device, system and method for providing on-chip test/debug functionality | |
TWI591486B (zh) | 固態硬碟控制裝置與方法 | |
US9436412B2 (en) | Preemptive connection switching for serial attached small computer system interface systems | |
US9396140B1 (en) | Method and apparatus for transferring frames with different world wide name addresses and connection rates between initiators of a host device and a port | |
US7996206B2 (en) | Serial attached small computer system interface (SAS) connection emulation for direct attached serial advanced technology attachment (SATA) | |
US20130275652A1 (en) | Methods and structure for transferring additional parameters through a communication interface with limited parameter passing features | |
US20110072168A1 (en) | Data transfer system with different operating modes | |
WO2014036725A1 (zh) | 一种配置pcie端口的方法、装置和设备 | |
US20130238821A1 (en) | Methods and apparatus for packing received frames in buffers in a serial attached scsi (sas) device | |
US9723079B2 (en) | System and method for automatic link detection and link initialization in a storage system | |
JP2006330968A (ja) | シリアルデータ送受信方法及びシリアルデータ送受信機器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |