TW201937381A - 支援多模式及/或多速度之跨架構高速非揮發性記憶體裝置的系統與方法及儲存裝置 - Google Patents

支援多模式及/或多速度之跨架構高速非揮發性記憶體裝置的系統與方法及儲存裝置 Download PDF

Info

Publication number
TW201937381A
TW201937381A TW107140284A TW107140284A TW201937381A TW 201937381 A TW201937381 A TW 201937381A TW 107140284 A TW107140284 A TW 107140284A TW 107140284 A TW107140284 A TW 107140284A TW 201937381 A TW201937381 A TW 201937381A
Authority
TW
Taiwan
Prior art keywords
mode
storage device
nvme
input
speed
Prior art date
Application number
TW107140284A
Other languages
English (en)
Other versions
TWI756488B (zh
Inventor
桑龐 保羅 歐拉利格
佛瑞德 沃里
Original Assignee
南韓商三星電子股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 南韓商三星電子股份有限公司 filed Critical 南韓商三星電子股份有限公司
Publication of TW201937381A publication Critical patent/TW201937381A/zh
Application granted granted Critical
Publication of TWI756488B publication Critical patent/TWI756488B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Information Transfer Systems (AREA)
  • Bus Control (AREA)

Abstract

根據一些示例性實施例,一種系統包括:至少一個母板;至少一個基板管理控制器(BMC);中間板;以及至少一個儲存裝置,其中所述至少一個儲存裝置被配置成基於第一輸入而以第一模式或第二模式運作,第一輸入是藉由中間板經由多個裝置埠而自所述至少一個母板或所述至少一個基板管理控制器接收到;且當以第二模式運作時,所述至少一個儲存裝置被配置成基於第二輸入而以多種運作速度中的第一速度運作,第二輸入是經由所述多個裝置埠自中間板接收到。

Description

支援多模式及/或多速度之光纖上高速非揮發性記憶體裝置的系統與方法
根據本發明實施例的一個或多個態樣是有關於網路附接裝置,更具體而言是有關於支援多模式及/或多速度跨架構高速非揮發性記憶體(Non-volatile memory express over fabrics,NVMe-oF)裝置的系統與方法。
在NVM-oF配置下,例如在使用乙太網路附接高速非揮發性記憶體(Non-volatile memory express,NVMe)固態驅動器(solid state drive,SSD)的配置下,降低乙太網路及SSD的成本且提高這二者的效能可頗具挑戰性。舉例而言,乙太網路速度已隨著50G/100G技術的到來而得以提高,而SSD效能可取決於高速周邊組件互連(Peripheral Component Interconnect Express,PCIe)介面及反及閘(NAND)技術。由於每一裝置可提供點對點連接,因此架構附接SSD可給支援抹除碼資料保護帶來額外的極大設計挑戰。
因此,需要能夠支援NVMe協定及NVMe-oF協定二者且以不同乙太網路速度運作的儲存裝置。
此背景技術章節中所揭露的以上資訊僅是為了加強對本發明的背景技術的理解,且因此其可含有不構成先前技術的資訊。
本發明實施例的態樣是有關於一種系統,所述系統包括:至少一個母板;至少一個基板管理控制器(baseboard management controller,BMC);中間板;以及至少一個儲存裝置,其中所述至少一個儲存裝置被配置成基於第一輸入而以第一模式或第二模式運作,所述第一輸入是藉由所述中間板經由多個裝置埠而自所述至少一個母板或所述至少一個BMC接收到;且當以所述第二模式運作時,所述至少一個儲存裝置被配置成基於第二輸入而以多種運作速度中的第一速度運作,所述第二輸入是經由所述多個裝置埠自所述中間板接收到。
在一個實施例中,所述至少一個儲存裝置包括經由連接件及至少一個匯流排而與至少一個現場可程式化閘陣列(field programmable gate array,FPGA)進行通訊的多個固態驅動器(SSD)。在一種配置中,連接件是SSD連接件且所述至少一個匯流排是高速周邊組件互連(PCIe)匯流排。
在另一實施例中,所述至少一個儲存裝置的所述第一模式及所述第二模式分別是高速非揮發性記憶體(NVMe)模式及跨架構高速非揮發性記憶體(NVMe-oF)模式。在一種配置中,使用所述至少一個母板的底架上的物理接腳或由來自所述至少一個BMC的頻帶內命令來控制所述第一輸入。
在一個實施例中,使用由所述至少一個BMC或由所述至少一個母板的本地中央處理單元(central processing unit,CPU)控制的兩個通用輸入/輸出(general-purpose input/output,GPIO)接腳或者使用所述至少一個儲存裝置的現場可程式化閘陣列(FPGA)內的一個或多個內部暫存器來控制所述第二輸入。在另一實施例中,所述至少一個儲存裝置的所述多種運作速度是高於10G的兩種或更多種速度(例如,介於10G與100G之間、或介於10G與高於100G的速度之間)。
在一態樣中,所述多個裝置埠經由U.2連接件連接至所述至少一個儲存裝置,且所述儲存裝置被配置成以高可用性(high-availability,HA)模式或非高可用性(non-high-availability,non-HA)模式運作。在另一態樣中,所述至少一個儲存裝置經由所述U.2連接件支援兩個串列附接小型電腦系統介面(SAS)埠及高速周邊組件互連(PCIe)X4匯流排的多達四個高速周邊組件互連(PCIe)X4通道,其中所述兩個串列附接小型電腦系統介面埠用作架構附接埠,且其中所述架構附接埠包括乙太網路埠、光纖通道埠及無限頻寬(InfiniBand)埠。
在一種配置中,當以所述第二模式運作時,所述至少一個儲存裝置經由所述U.2連接件支援將所述四個高速周邊組件互連X4通道中的兩個高速周邊組件互連X4通道用於兩個架構附接埠的控制平面且將所述四個高速周邊組件互連X4通道的其餘兩個高速周邊組件互連X4通道作為附加的架構附接埠。在另一配置中,所述至少一個儲存裝置包括第一儲存裝置及第二儲存裝置,其中在第一時間處,所述第一儲存裝置及/或所述第二儲存裝置以所述多種運作速度中的所述第一速度或第二速度以所述第一模式或所述第二模式運作。
根據本發明的實施例,提供一種方法,所述方法包括:在儲存裝置處接收第一輸入,其中所述第一輸入是在所述儲存裝置處藉由中間板經由多個裝置埠自至少一個母板或基板管理控制器(BMC)接收到;由所述儲存裝置基於在所述儲存裝置處接收到的所述第一輸入判斷是以第一運作模式還是以第二運作模式運作;當以所述第二運作模式運作時,在所述儲存裝置處經由所述多個裝置埠自所述中間板接收第二輸入;以及由所述儲存裝置基於所述第二輸入自多種運作速度選擇所述儲存裝置的運作速度。
在一個實施例中,所述儲存裝置的所述第一運作模式及所述第二運作模式是高速非揮發性記憶體(NVMe)模式或跨架構高速非揮發性記憶體(NVMe-oF)模式。在另一實施例中,使用所述至少一個母板的底架上的物理接腳或由來自所述基板管理控制器的頻帶內命令來控制所述第一輸入。
在一態樣中,使用由所述基板管理控制器或由所述至少一個母板的本地中央處理單元(CPU)控制的兩個通用輸入/輸出(GPIO)接腳或者使用所述儲存裝置的現場可程式化閘陣列(FPGA)內的一個或多個內部暫存器來控制所述第二輸入。在另一態樣中,其中所述儲存裝置的所述多種運作速度是高於10G的兩種或更多種速度。
根據本發明的另一實施例,提供一種儲存裝置,所述儲存裝置包括:多個固態驅動器(SSD),經由第一連接件及至少一個匯流排而與至少一個現場可程式化閘陣列(FPGA)進行通訊,其中所述儲存裝置被配置成基於經由第二連接件接收到的第一輸入而以第一模式或第二模式運作,其中當以所述第二模式運作時,所述儲存裝置被配置成基於經由所述第二連接件接收到的第二輸入而以多種運作速度中的第一速度運作。
在一態樣中,所述第一輸入是藉由中間板經由多個裝置埠自母板或交換機的基板管理控制器(BMC)接收到,且所述第二輸入是經由所述多個裝置埠自所述中間板接收到;其中使用所述母板的底架上的物理接腳或由來自所述基板管理控制器的頻帶內命令來控制所述第一輸入,且使用由所述基板管理控制器或由所述母板的本地中央處理單元(CPU)控制的兩個通用輸入/輸出(GPIO)接腳或者使用所述現場可程式化閘陣列(FPGA)內的一個或多個內部暫存器來控制所述第二輸入。
在另一態樣中,所述第一連接件是固態驅動器連接件,所述至少一個匯流排是高速周邊組件互連(PCIe)匯流排,所述第二連接件是U.2連接件,所述存儲裝置的所述第一模式及所述第二模式分別是高速非揮發性記憶體(NVMe)模式及跨架構高速非揮發性記憶體(NVMe-oF)模式,且所述儲存裝置的所述多種運作速度是高於10G的兩種或更多種速度。
在一種配置中,在第一時間處,所述多個固態驅動器中的第一固態驅動器及/或第二固態驅動器以所述多種運作速度中的所述第一速度或第二速度以所述第一模式或所述第二模式運作。
下文結合附圖所述的詳細說明旨在闡述根據本發明提供的支援多模式及/或多速度NVMe-oF裝置的系統與方法的一些示例性實施例,且並不旨在僅表示可構建或利用本發明的形式。所述說明結合所說明的實施例陳述本發明的特徵。然而,應理解可藉由不同的實施例來實現相同或等效的功能及結構,所述不同的實施例亦旨在囊括於本發明的範疇內。如本文中別處所示,相似的元件編號旨在指示相似的元件或特徵。
NVMe是一種標準,其定義了主機軟體藉由PCIe匯流排反及閘揮發性記憶體子系統(例如,SSD)進行通訊的暫存器級介面。NVMe替代小型電腦系統介面(Small Computer System Interface,SCSI)標準來連接主機與周邊目標儲存裝置或系統並在這二者之間傳送資料。PCIe連接型NVMe SSD允許應用與儲存裝置直接對話。
NVMe的物理連接是基於PCIe匯流排。典型的乙太網路SSD(Ethernet SSD,eSSD)具有U.2連接件,所述U.2連接件藉由PCIe匯流排經由中間板與系統介接。U.2(SFF-8639)是將SSD連接至電腦的電腦介面。一個U.2連接件可支援一個串列先進技術附接(Serial Advanced Technology Attachment,SATA)埠、兩個串列附接SCSI(Serial Attached SCSI,SAS)埠、或PCIe SSD中的並行輸入/輸出(input/output,I/O)的多達四個通道(X4)。U.2連接件針對NVMe而被標準化且支援PCIe 3.0 X4,進而提供五倍於典型SATA SSD的速度。
NVM-oF是NVMe標準的擴展,除了PCIe之外,NVM-oF亦能夠藉由各種架構(或互連件)運作。在本文中,用語「架構」表示網路節點可通過各種互連協定、埠及交換機彼此傳遞資料的網路拓撲。舉例而言,乙太網路附接SSD可直接附接至架構,且在此種情形中,架構是乙太網路。
NVMe-oF能夠使得與PCIe進行交替輸送,此交替輸送會延長NVMe主機裝置與NVMe儲存驅動器或子系統可跨越而進行連接的距離。因此,NVMe-oF是被設計成使得基於高速非揮發性記憶體訊息的命令能夠藉由網路(諸如,乙太網路、光纖通道(Fibre Channel,FC)或InfiniBand)在主機電腦與目標固態儲存裝置(例如,eSSD或NVMe-oF裝置)或系統之間傳送資料的技術規範。當被配置成支援NVMe-oF標準時,系統可支援不僅包括乙太網路而且包括光纖通道、InfiniBand及其他網路架構在內的各種架構。舉例而言,eSSD可直接附接至架構,且在此種情形中,架構是乙太網路。eSSD可指代可支援NVMe-oF協定的SSD。為便於說明起見,以下實例及實施例可示出乙太網路附接NVMe-oF裝置。然而,應注意,可在不背離本發明範疇的情況下使用任何其他類型的NVMe-oF裝置。
如上文所述,NVMe的物理連接是基於PCIe匯流排。近來,隨著PCIe 4.0的出現,頻寬不匹配度可高於PCIe 3.0。單條25G乙太網路的頻寬不足以跟上依靠SSD的X4 PCIe 4.0(高達8GB/s)的後端。50G或100G乙太網路為SSD的X4 PCIe 4.0提供較佳匹配。因此,本發明實施例可包括能夠支援NVMe協定及NVMe-oF協定二者的儲存裝置(例如,eSSD),且當處於NVMe-oF模式中時,所述儲存裝置可能夠在其硬體不發生任何改變的情況下以自10G至高達100G的不同乙太網路速度運作。
此外,本發明實施例可使得任何平台系統皆能夠支援來自不同供應商的不同類型的NVMe-oF裝置。藉由使用共用建構區塊(諸如,交換機板、中間板及乙太網路SSD),生態系統提供商可能夠將產品較現有系統更快速地投入市場,且提供各種價格/效能的產品來滿足各種消費者。一些示例性實施例更可啟用能夠支援使用標準U.2(諸如,PM1725a或PM1735)的NVMe-oF裝置且能夠支援新興裝置(諸如,M.3 SSD)的共用系統平台。在一種配置中,M.3 SSD亦可被稱為下一代小形狀因數(Next Generation Small Form Factor,NGSFF)型SSD。
本發明系統的不同實施例提供可支援NVMe裝置及NVMe-oF裝置二者的單個平台及共用建構區塊,且當處於NVMe-oF模式中時,所述系統可能夠在其硬體不發生任何改變的情況下以自10G至高達100G的不同乙太網路速度運作。可支援NVMe裝置及NVMe-oF裝置二者的共用建構區塊可包括交換機板、中間板及eSSD。可藉由附加更多類似的裝置及/或底架來線性地擴大本發明系統。本發明系統亦可提供能夠支援使用標準U.2連接件(諸如,PM1725a或PM1735)的NVMe-oF裝置且能夠支援M.3型SSD或NGSFF型SSD的共用系統平台。本發明系統的不同配置亦可與技術進步(諸如50G及100G乙太網路、及PCIe 4.0)相容。具體而言,本申請案的不同配置提供可支援NVMe協定及NVMe-oF協定二者以及各種類型的架構附接SSD(例如,eSSD)的系統。此外,本申請案的不同配置可在資料集中揭露關於以下方面的內容:如何對底架與裝置(例如,eSSD)進行協調以使所述裝置獲悉其部署位置以及依據其特定部署位置而應採取的個性(personality)。
本文中所揭露的架構附接SSD(eSSD)是可用於與NVMe標準及NVMe-oF標準相容的多個系統中的單個共用裝置。乙太網路SSD可使用U.2連接件來經由中間板與主機裝置介接。U.2連接件可支援25千兆位元/秒(Gbps)(100G-KR4)的乙太網路。本文中所揭露的eSSD可以是可用於與NVMe標準及NVMe-oF標準相容的多個系統中的裝置。如此,架構附接SSD(eSSD)亦可被稱為多模式NVMe-oF裝置。多模式NVMe-oF裝置可藉由自已知位置(例如,母板的底架型接腳E6、或中間板)偵測產品資訊來支援NVMe標準或NVMe-oF標準。舉例而言,U.2連接件上的定義訊號(例如,模式訊號)可向驅動器指示是在NVMe模式中還是在NVMe-oF模式中操作。若存在於NVMe底架中,則U.2連接件的X4通道PCIe將由PCIe引擎驅動。在此種情形中,所述裝置將停用架構附接埠(例如,乙太網路埠、光纖通道埠或InfiniBand埠)且所有的NVMe協定及功能性得到支援或啟用。若存在於NVMe-oF底架中,則架構附接埠將僅使用未使用的SAS接腳。
圖1A說明NVMe-oF裝置100的配置。圖1A的NVMe-oF裝置100包括FPGA 102、第一M.3格式SSD 114、第二M.3格式SSD 116、兩個雙倍資料速率第四代(double data rate fourth-generation,DDR4)記憶體(122及124)、以及四個電容器(126、128、130及132)。NVMe-oF裝置100亦連接至U.2連接件112,且經由U.2連接件112,U.2連接件112可支援兩個SAS埠(SAS0及SAS1)以及PCIe X4匯流排的多達四個PCIe X4通道。NVMe-oF裝置100可使用兩個SAS埠(SAS0及SAS1)作為乙太網路埠。NVMe-oF裝置100可能夠在硬體不發生任何改變的情況下以自10G至高達100G的不同乙太網路速度運作。
圖1B說明根據一個實施例的示例性M.3格式SSD 134的方塊圖。M.3格式SSD 134可以是圖1A的SSD 114或SSD 116。M.3格式SSD 134的新形狀因數1(form factor 1,NF1)可容納兩列NAND快閃記憶體封裝,且因此將模組化SSD的容量最大化。M.3格式SSD 134可經由PCIe X4匯流排136連接至FPGA。FPGA可以是圖1A的FPGA 102,且PCIe X4匯流排136可以是圖1A的PCIe X4匯流排118或PCIe X4匯流排120。M.3格式SSD 134亦可容納至少一個選用乙太網路埠138(乙太網路埠A及/或乙太網路埠B),進而使用連接至FPGA(例如,圖1A的FPGA 102)的M.2連接件的未使用接腳或預留(例如,高速)接腳。所述至少一個乙太網路埠138可使得M.3格式SSD 134能夠以NVMe-oF模式運作。
在一些實施例中,M.3格式SSD 134可符合2.5英寸的硬碟驅動器形狀因數(或小形狀因數(small form factor,SFF))標準。在其他實施例中,M.3格式SSD 134可符合標準PCIe卡形狀因數,例如全高度全長度(full-height, full length,FH-FL)卡輪廓或全高度半長度(full-height, half length,FH-HL)輪廓。M.3格式SSD 134亦可包括控制器、緩衝記憶體及快閃記憶體。控制器可執行儲存於例如緩衝記憶體或控制器中的唯讀記憶體(或者其與控制器分離)中的軟體、NVMe命令及/或韌體。在圖1B中,eSSD特殊應用積體電路(Application Specific Integrated Circuit, ASIC)(eSSD ASIC)140是增強型的SSD控制器,其包括快閃轉換層(Flash Translation Layer,FTL)及快閃控制器。
返回至圖1A,NVMe-oF裝置100可被配置成以NVMe模式或NVMe-oF模式運作。在NVMe-oF模式中,NVMe-oF裝置100可將兩個PCIe通道(PCIe 1及PCIe 2)配置為乙太網路埠106(乙太網路埠B)及乙太網路埠110(乙太網路埠D)。NVMe-oF裝置100更可將兩個SAS埠(SAS0及SAS1)配置為乙太網路埠104(乙太網路埠A)及乙太網路埠108(乙太網路埠C)。第一25G乙太網路埠104可連接於U.2連接件112的接腳S2、接腳S3、接腳S5及接腳S6處,第二25G乙太網路埠106可連接於U.2連接件112的接腳S17、接腳S18、接腳S20及接腳S21處,第三25G乙太網路埠108可連接於U.2連接件112的接腳S9、接腳S10、接腳S12及接腳S13處,且第四25G乙太網路埠110可連接於U.2連接件112的接腳S23、接腳S24、接腳S26及接腳S27處。當處於NVMe-oF模式中時,NVMe-oF裝置100可能夠以自10G至高達100G的不同乙太網路速度運作。
在圖1A中,當NVMe-oF裝置100被配置成處於NVMe-oF模式中時,FPGA 102可在四個25千兆位元/秒的乙太網路埠(104、106、108、110)與兩個M.3格式SSD(114、116)之間提供介面。四個25G乙太網路埠(104、106、108、110)可根據NVMe-oF裝置100的運作模式藉由中間板連接至母板。在一種配置中,所述母板可包括一個或多個交換元件、一個或多個記憶元件、一個或多個I/O元件等。FPGA 102經由第一PCIe X4匯流排118與第一M.3格式SSD 114介接,且FPGA 102經由第二PCIe X4匯流排120與第二M.3格式SSD 116介接。第一PCIe X4匯流排118及第二PCIe X4匯流排120可經由其各自的M.2連接件連接至第一M.3格式SSD 114及第二M.3格式SSD 116。在此種情形中,附接至SSD 114及SSD 116的M.2連接件的未使用接腳或預留(例如,高速)接腳可用於乙太網路連接。在此種模式中,FPGA 102可用作NVMe-oF目標。實施於eSSD ASIC/FPGA 102上的NVMe-oF目標提供所有的網路及儲存協定處理,此使得在目標裝置中的母板上不需要X86型中央處理單元(CPU)。對於基於NVMe-oF的系統而言,由於目標裝置自身便能夠移動資料,因此在母板上不再需要X86型CPU來在啟動程式(例如,主機軟體)與目標裝置(亦即,NVMe-oF裝置)之間移動資料。
在一種配置中,NVMe-oF裝置100可被配置成NVMe模式。在NVMe模式中,NVMe-oF裝置100可使用所有四個PCIe X4通道(在單個埠模式中)來藉由PCIe X4匯流排載送PCIe訊號。PCI X4匯流排連接至中間板,且PCIe匯流排在資料與控制訊號之間共享。在一態樣中,在給定時間處,NVMe-oF裝置100的第一M.3格式SSD 114及第二M.3格式SSD 116二者皆可以NVMe模式或NVMe-oF模式運作。在另一態樣中,在給定時間處,第一M.3格式SSD 114可以NVMe模式運作且第二M.3格式SSD 116可以NVMe-oF模式運作。在又一態樣中,在給定時間處,第一M.3格式SSD 114可以NVMe-oF模式運作且第二M.3格式SSD 116可以NVMe模式運作。
NVMe-oF裝置100的運作模式可以是自配置的,或可以是使用物理接腳(例如,母板的底架上的存在接腳(接腳E6))或由母板的基板管理控制器(baseboard management controller,BMC)的頻帶內命令進行外部設定。通過乙太網路擷取的管理性資訊被稱為「頻帶內」資訊,而通過PCIe匯流排擷取的管理性資訊被稱為「頻帶外」資訊。當被配置成NVMe-oF裝置時,多模式NVMe-oF裝置100(底架型接腳E6=低位準)可被配置成單埠NVMe-oF模式或雙埠NVMe-oF模式。在單埠NVMe-oF模式中,U.2連接件112的接腳E25可為高位準,且在雙埠NVMe-oF模式中,U.2連接件112的接腳E25可為低位準。
在一種配置中,如圖2中所示,可使用位於中間板或CPLD 204上的兩個附加的通用輸入/輸出(GPIO)(ESpeed[1:0])接腳202或使用NVMe-oF裝置100的FPGA 102內的內部暫存器來實現NVMe-oF裝置100的不同運作速度,所述通用輸入/輸出接腳202可由BMC或母板的本地CPU來控制,且所述暫存器可經由連接於U.2連接件112的接腳E23及接腳E24處的I2C匯流排來存取。在使用通用輸入/輸出接腳202來實現不同運作速度的選項中,ESpeed接腳202與CPLD 204內的U.2 I2C接腳進行多工傳輸且可在重設207被置位(高位準至低位準)之後被鎖定。在一種配置中,由CPLD 204或BMC或者母板的本地CPU將輸入驅動至多工器(multiplexer,MUX)。然而,在一些配置中,MUX的位置位於CPLD 204內。MUX的數目等於底架中受支援的NVME-oF裝置的最大數目。如此一來,可個別且獨立地重設每一裝置。此方法可支援熱插拔事件(熱附加及熱移除)。若所有裝置共享一個MUX,則當熱插入新的裝置時,所述新的裝置可因重設循環而影響到底架中的現有裝置,而此情況是不希望發生的。
若由BMC或母板的本地CPU來控制CPLD 204,則可在CPLD 204處的CPLD/BMC GPIO接腳206處接收到來自BMC或本地CPU的控制訊號。下表1說明在NVMe-oF裝置100的不同運作速度期間,ESpeed接腳的狀態。 表1 此外,在通電或重設期間使用系統管理匯流排(System Management Bus,SMBus)208來選擇乙太網路速度。在一種配置中,由供電或重設訊號207來選擇多工器,且當重設207是有效低位準時,多工器可選擇通往FPGA 102的ESpeed(0:1) 202,且當重設207是高位準時,多工器可將位於每一插槽之間的SMBus 208連接至交換機板上的BMC。
在一種配置中,多模式NVMe-oF裝置100可被配置成處於單埠NVMe模式、雙埠NVMe模式、單埠NVMe-oF模式及雙埠NVMe-oF模式中。
圖3根據多模式NVMe-oF裝置100的配置示出U.2連接件112的示例性使用。當被配置成NVMe裝置(底架型接腳E6=低位準)時,多模式NVMe-oF裝置100可被配置成處於單埠NVMe模式或雙埠NVMe模式中。在單埠NVMe模式中,U.2連接件112的雙埠EN#接腳E25可被置為高位準。在單埠NVMe模式中,U.2連接件112的PCIe通道0至PCIe通道3用於載送PCIe訊號。在雙埠NVMe模式中,U.2連接件112的雙埠EN#接腳E25可被置為低位準。在雙埠NVMe模式中,PCIe通道0至PCIe通道3被劃分成2×2通道;PCIe通道0及PCIe通道1用於第一埠(埠A),且PCIe通道2及PCIe通道3用於第二埠(埠B)。
在一種配置中,當多模式NVMe-oF裝置100處於NVMe-oF模式中時,NVMe-oF裝置100可具有用於第一乙太網路埠(埠A)及第二乙太網路埠(埠B)的控制平面的兩個X1 PCIe通道(PCIe 0及PCIe 3)。此類配置可使得兩個PCIe通道(PCIe 1及PCIe 2)可用於附加的25G乙太網路埠(乙太網路埠B及乙太網路埠D)。在一些配置中,當NVMe-oF裝置100以NVMe-oF模式以10G(單埠或雙埠)或25G(單埠或雙埠)速度運作時,SAS埠0用於乙太網路埠A(第一埠)且不使用SAS埠1。PCIe通道0及PCIe通道3用作第一(埠A)乙太網路附接NVMe-oF控制器及第二(埠B)乙太網路附接NVMe-oF控制器的控制平面,PCIe通道1用於乙太網路埠B(第二埠),且不使用PCIe通道2。在一些其他配置中,當NVMe-oF裝置100以NVMe-oF模式以50G(單埠或雙埠)或100G(僅單埠)速度運作時,SAS埠0用於乙太網路埠A(第一埠)且SAS埠1用於乙太網路埠C(第三埠)。PCIe通道0及PCIe通道3用作第一(埠A)乙太網路附接NVMe-oF控制器及第二(埠B)乙太網路附接NVMe-oF控制器的控制平面,PCIe通道1用於乙太網路埠B(第二埠),且PCIe通道2用於乙太網路埠D(第四埠)。
在一些配置中,若產品資訊儲存於底架中,則由PCIe引擎驅動U.2連接件112上的PCIe匯流排的兩個通道(在單埠模式中)或四個通道(在雙埠模式中)。在此種情形中,多模式NVMe-oF裝置100可停用乙太網路引擎,且NVMe協定及功能性受到支援或啟用。若產品資訊儲存於NVMe-oF底架中,則乙太網路附接NVMe-oF控制器根據多模式NVMe-oF裝置的設計而僅使用PCIe通道1及PCIe通道2及/或SAS接腳。
在一些情形中,儲存於底架中用於自配置的產品資訊是重要產品資料(vital product data,VPD)。在起動期間,多模式NVMe-oF裝置100可自底架擷取VPD並基於VPD來進行自配置。在一些配置中,可在不背離本發明範疇的情況下以各種方式對多模式NVMe-oF裝置100進行配置。舉例而言,可由與多模式NVMe-oF裝置100連接的母板的BMC經由PCIe匯流排發佈的控制命令來對多模式NVMe-oF裝置100進行配置。本發明系統提供可在最小硬體改變的情況下支援以非高可用性(非HA)模式(亦即,單路徑輸入/輸出(I/O))或HA模式(亦即,多路徑I/O)運作的各種類型的NVMe裝置及NVMe-oF裝置的平台。
圖4A(圖4A.1及圖4A.2)說明根據一個實施例的以非HA模式運作的示例性NVMe-oF裝置400的方塊圖。NVMe-oF裝置400可以是圖1A的NVMe-oF裝置100。在此實例中,NVMe-oF裝置400可支援單路徑I/O且可能夠在硬體不發生任何改變的情況下以自10G至高達100G的不同乙太網路速度運作。NVMe-oF裝置400可包括FPGA 402、第一M.3格式SSD 414、第二M.3格式SSD 416及兩個DDR4記憶體(422及424)。FPGA 402經由第一PCIe X4匯流排418與第一M.3格式SSD 414介接,且FPGA 402經由第二PCIe X4匯流排420與第二M.3格式SSD 416介接。NVMe-oF裝置400亦連接至U.2連接件412,且經由U.2連接件412,NVMe-oF裝置400可支援兩個SAS埠(SAS0及SAS1)以及PCIe X4匯流排的多達四個PCIe X4通道。兩個SAS埠(SAS0及SAS1)可用作乙太網路埠。NVMe-oF裝置400可將兩個PCIe通道(PCIe 1及PCIe 2)配置為乙太網路埠406(乙太網路埠B)及乙太網路埠410(乙太網路埠D)。NVMe-oF裝置400更可將兩個SAS埠(SAS0及SAS1)配置為乙太網路埠404(乙太網路埠A)及乙太網路埠408(乙太網路埠C)。第一25G乙太網路埠404可連接於U.2連接件412的接腳S2、接腳S3、接腳S5及接腳S6處,第二25G乙太網路埠406可連接於U.2連接件412的接腳S17、接腳S18、接腳S20及接腳S21處,第三25G乙太網路埠408可連接於U.2連接件412的接腳S9、接腳S10、接腳S12及接腳S13處,且第四25G乙太網路埠410可連接於U.2連接件412的接腳S23、接腳S24、接腳S26及接腳S27處。
在一種配置中,乙太網路埠404、乙太網路埠406、乙太網路埠408及乙太網路埠410可經由數個高速莫仕(Molex)連接件428藉由中間板426連接至母板401,所述高速莫仕連接件428可一齊承載所有乙太網路埠404、406、408及410且載送其他非高速控制訊號,諸如SMBus訊號、重設訊號、時脈訊號等。母板401可包括本地CPU 434、BMC 432、乙太網路交換機控制器436、PCIe交換機438及兩個DDR4記憶體(440及442)。在一些配置中,母板401可將各種訊號推送至NVMe-oF裝置400且藉由乙太網路埠404、乙太網路埠406、乙太網路埠408及乙太網路埠410藉由中間板426對NVMe-oF裝置400執行各種服務。舉例而言,母板401可藉由乙太網路埠404、乙太網路埠406、乙太網路埠408及乙太網路埠410自NVMe-oF裝置400接收裝置特定資訊,所述資訊包括但不限於NVMe-oF裝置400的健康狀態資訊、現場可更換單元(field-replaceable unit,FRU)資訊及感測器資訊。母板401亦可藉由乙太網路埠404、乙太網路埠406、乙太網路埠408及乙太網路埠410執行各種服務,所述服務包括但不限於對BMC(例如,BMC 432)或本地主機CPU(例如,CPU 434)的發現服務及用於執行韌體更新的新eSSD韌體的下載服務。
圖4B(圖4B.1及圖4B.2)說明根據一個實施例的以HA模式運作的圖4A所示示例性NVMe-oF裝置400的方塊圖。在此實例中,NVMe-oF裝置400可支援多路徑I/O且可能夠在硬體不發生任何改變的情況下以自10G至高達100G的不同乙太網路速度運作。在HA模式中,NVMe-oF裝置400可連接至兩個母板401及403,以在雙埠配置中(在HA模式中)經由中間板426支援多I/O。中間板426是可支援HA模式及非HA模式二者的共用中間板。根據系統配置,可需要對訊號完整性進行測試以確保共用中間板426可支援兩種配置。若訊號完成性不夠,則系統可具有兩個版本的中間板,所述兩個中間板版本包括用於HA模式的第一中間板及用於非HA模式的第二中間板。U.2連接件412的E25接腳可用於達成雙埠配置。NVMe-oF裝置400可使用物理接腳(例如,母板(401或403)的底架上的存在接腳(接腳E6))或來自母板的BMC(432或444)的頻帶內命令(母板401或403未示出)來自配置其運作模式。
在一種配置中,當以HA模式運作時,NVMe-oF裝置400的乙太網路埠404(乙太網路埠A)及乙太網路埠406(乙太網路埠B)可經由高速莫仕連接件428藉由中間板426連接至母板401,所述高速莫仕連接件428可一齊承載乙太網路埠404及乙太網路埠406且載送其他非高速控制訊號,諸如SMBus訊號、重設訊號、時脈訊號等。此外,在HA模式中,NVMe-oF裝置400的乙太網路埠408(乙太網路埠C)及乙太網路埠410(乙太網路埠D)可經由數個高速莫仕連接件456藉由中間板426連接至第二母板403(未示出),所述高速莫仕連接件456可一齊承載乙太網路埠408及乙太網路埠410且載送其他非高速控制訊號,諸如SMBus訊號、重設訊號、時脈訊號等。第二母板403可包括本地CPU 446、BMC 444、乙太網路交換機控制器448、PCIe交換機450及兩個DDR4記憶體(452及454)。
由於多模式NVMe-oF裝置400可以NVMe及NVMe-oF兩種模式運作,因此開發及部署裝置的成本可由於可在NVMe模式及NVMe-oF模式中使用同一裝置而得以降低。出於類似的原因,多模式NVMe-oF裝置400可更迅速地投入市場。多模式NVMe-oF裝置可用於各種產品及底架中。通過控制平面為標準特徵預留PCIe匯流排的兩個通道。在無附加成本的情況下,CPU、BMC及其他裝置可使用PCIe匯流排的兩個通道作為控制平面來與底架內的每一NVMe-oF裝置進行通訊。NVMe中間板可不做修改地使用,且由於附加的GPIO接腳(例如,圖2的ESpeed[1:0]202)位於中間板上,因此NVMe-oF裝置400上不需要新的連接件。此外,期望任何平台系統皆支援來自不同供應商的不同類型的NVMe-oF裝置。藉由使用共用建構區塊,諸如交換機板、中間板及乙太網路SSD,本申請案的不同實施例可使得現有生態系統提供商能夠更快速地進入市場且提供各種價格/效能的產品來滿足各種消費者。亦期望具有能夠支援使用標準U.2(諸如,PM1725a或PM1735)的NVMe-oF裝置且能夠支援新興裝置(諸如,M.3型SSD或NGSFF型SSD)的共用系統平台。
圖5A至圖5B是說明根據一個實施例的示例性FPGA裝置500的方塊圖。FPGA 500可以是圖1A的FPGA 102。FPGA 500可在U.2連接件502與多個快閃驅動器(例如,圖1A的兩個M.3 SSD(114、116))之間提供介面。FPGA 500亦可連接至多個DDR4記憶體(例如,圖1A的兩個DDR4記憶體(122及124))。舉例而言,FPGA 500可經由埠518與第一SSD(例如,圖1A的114)介接,埠518可連接至PCIe X4匯流排(例如,圖1A的第一PCIe X4匯流排118),且FPGA 500可經由埠522與第二SSD(例如,圖1A的116)介接,埠522可連接至另一PCIe X4匯流排(例如,圖1A的第二PCIe X4匯流排120)。FPGA 500亦可經由埠516與第一DDR4記憶體(例如,圖1A的122)連接,且經由埠520與第二DDR4記憶體(例如,圖1A的124)連接。
連接至FPGA 500的U.2連接件502可支援兩個SAS埠(SAS0及SAS1)以及PCIe X4匯流排的多達四個PCIe X4 通道。兩個SAS埠(SAS0及SAS1)可用作乙太網路埠。在NVMe-oF模式中,兩個PCIe通道(PCIe 1及PCIe 2)可被配置成乙太網路埠510(乙太網路埠1)及乙太網路埠512(乙太網路埠3)。在NVMe-oF模式中,兩個SAS埠(SAS0及SAS1)可被配置成乙太網路埠506(乙太網路埠0)及乙太網路埠508(乙太網路埠2)。乙太網路埠506(乙太網路埠0)可連接於U.2連接件502的接腳S2、接腳S3、接腳S5及接腳S6處,乙太網路埠510(乙太網路埠1)可連接於U.2連接件502的接腳S9、接腳S10、接腳S12及接腳S13處,乙太網路埠508(乙太網路埠2)可連接於U.2連接件502的接腳S23、接腳S24、接腳S26及接腳S27處,且乙太網路埠512(乙太網路埠3)可連接於U.2連接件502的接腳S17、接腳S18、接腳S20及接腳S21處。
在一種配置中,在NVMe-oF模式中,U.2連接件502的兩個X1 PCIe通道(PCIe 0及PCIe 3)504及514可被配置成第一(埠0)乙太網路NVMe-of控制器及第二(埠1)乙太網路NVMe-of控制器的控制平面。控制平面PCIe通道(PCIe 0)504可連接於U.2連接件502的接腳E10、接腳E11、接腳E13及接腳E14處,且控制平面PCIe通道514(PCIe 3)可連接於U.2連接件502的接腳E17、接腳E18、接腳E20及接腳E21。在一些配置中,如圖5A所示中,在NVMe-oF模式中,當FPGA 500以50G(單埠或雙埠)速度運作時,SAS埠0用作乙太網路埠0(乙太網路埠506)且SAS埠1用作乙太網路埠2(乙太網路埠508)。PCIe通道504(PCIe 0)及PCIe通道514(PCIe 3)用作控制平面,PCIe通道1(乙太網路埠510)用於乙太網路埠1,且PCIe通道2(乙太網路埠512)用於乙太網路埠3。
在另一配置中,如圖5B中所示,在NVMe-oF模式中,當FPGA 500以100G(單個埠)速度運作時,SAS埠0用作乙太網路埠0(乙太網路埠506)且SAS埠1用作乙太網路埠2(乙太網路埠508)。PCIe通道504(PCIe 0)用作控制平面,PCIe通道1(埠510)用於乙太網路埠1,且PCIe通道2(埠512)用於乙太網路埠3。不使用控制平面PCIe通道514(PCIe 3)。
在一些配置中,埠504至埠514可根據附接至FPGA 500的SSD的運作模式藉由中間板(例如,圖4A及圖4B的426)連接至母板(例如,圖4A及圖4B的401或403)。在一些配置中,FPGA 500可用作NVMe目標,且在目標裝置中的母板上不需要X86型CPU。對於基於NVMe-oF的系統而言,由於目標裝置自身便能夠移動資料,因此在母板上不再需要X86型CPU來在發起程式(例如,主機軟體)與目標裝置(亦即,NVMe-oF裝置)之間移動資料。此外,可使用位於中間板或CPLD(例如,圖2的204)上的兩個附加的GPIO(ESpeed[1:0])接腳(例如,圖2的接腳202)來實現連接至FPGA 500的所述多個快閃驅動器(例如,圖1A的兩個M.3格式SSD(114、116))的不同運作速度,所述不同運作速度可由FPGA 500內的一個或多個內部暫存器來控制。
在一個實施例中,當在FPGA 500處接收到乙太網路封包時,FPGA 500內的邏輯區塊可參與剖析所述乙太網路封包中的標頭的各個層。舉例而言,在所述乙太網路封包內可存在TCP或UDP封包,在所述TCP或UDP封包內可存在遠端直接記憶體存取(Remote Direct Memory Access, RDMA)封包,在所述RDMA封包內可存在NVMe-oF封包,且在所述NVMe-oF封包內可存在NVMe命令。FPGA 500內的邏輯區塊可表示對乙太網路封包進行剖析以暴露出下一協定層的各個層。經由埠518及埠522連接至FPGA 500的快閃驅動器或SSD可使用NVMe命令,如所述快閃驅動器或SSD已經由U.2連接件502在乙太網路埠506、508、510及512的另一端上連接至主機或母板一樣。
圖6是說明根據一個實施例的示例性FPGA裝置600的方塊圖。FPGA裝置600可包括FPGA 601。FPGA 601可在U.2連接件606與多個快閃驅動器(例如,603A及603B)之間提供介面。舉例而言,FPGA 601可經由可連接至PCIe X4匯流排的埠607與快閃驅動器603A介接,且FPGA 601可經由可連接至另一PCIe X4匯流排的埠608與快閃驅動器603B介接。FPGA 601亦可連接至多個DDR4記憶體,例如DDR4記憶體602A至DDR4記憶體602J。FPGA 601亦連接至時脈電路614。
U.2連接件606可通過兩個多工器610及612經由兩個PCIe X4匯流排604及605連接至FPGA 601。PCIe X4匯流排604可用於將訊號或封包藉由中間板經由U.2連接件606通過多工器610傳輸至母板,且PCIe X4匯流排605可用於藉由中間板經由U.2連接件606通過多工器612自母板接收封包。在一些配置,可使用位於中間板或CPLD(例如,圖2的204)上的兩個附加的GPIO(ESpeed[1:0])接腳(例如,圖2的接腳202)來實現連接至FPGA 601的所述多個快閃驅動器(例如,603A及603B)的不同運作速度,所述不同運作速度可由FPGA 601內的一個或多個內部暫存器來控制。表1說明在連接至FPGA 601的快閃驅動器603A及快閃驅動器603B的不同運作速度期間ESpeed接腳的狀態。
圖7是說明根據一個實施例的包括兩個母板的示例性交換機的方塊圖。交換機700包括兩個母板701A及701B以在雙埠配置中(在HA模式中)經由中間板761來支援多I/O。母板701A包括乙太網路交換機704A及PCIe交換機705A,且母板701B包括乙太網路交換機704B及PCIe交換機705B。母板701A及母板701B中的每一者可包括其他組件及模組,例如本地CPU(706A、706B)、BMC(707A、707B)等,如圖4A中所示的示例性母板401中所示。
數個eSSD可插入至交換機700的裝置埠中。舉例而言,eSSD中的每一者是使用U.2連接件連接至交換機700。每一eSSD可連接至母板701A及母板701B二者。在本發明實例中,插入至交換機700中的eSSD被配置成NVMe-oF裝置,NVMe-oF裝置需要藉由中間板761經由PCIe匯流排及乙太網路埠連接至交換機700。
圖8是根據本發明的實施例操作儲存裝置的方法的流程圖。所述儲存裝置可以是圖4A的NVMe-oF裝置400。
在801處,儲存裝置接收第一輸入。儲存裝置可藉由中間板經由多個裝置埠自母板或BMC接收第一輸入。舉例而言,NVMe-oF裝置400可經由裝置埠404至裝置埠406藉由圖4A的中間板426自母板401或BMC 432接收第一輸入。
在一種配置中,可使用母板的底架上的物理接腳或由來自BMC的頻帶內命令來控制第一輸入。舉例而言,可使用圖4A的母板401的底架上的物理接腳(E6)來控制在NVMe-oF裝置400處接收到的第一輸入。
在802處,基於第一輸入,儲存裝置判斷是以第一運作模式還是以第二運作模式運作。在一種配置中,儲存裝置的第一運作模式及第二運作模式可以是NVMe模式及NVMe-oF模式。舉例而言,基於第一輸入,NVMe-oF裝置400判斷是以NVMe模式中還是以NVMe-oF模式中運作。
在802處,基於第一輸入,若儲存裝置確定以第一運作模式運作,則在803處,儲存裝置根據第一運作模式執行儲存操作。舉例而言,若基於第一輸入,NVMe-oF裝置400確定以NVMe模式運作,則NVMe-oF裝置400根據NVMe協定執行儲存操作。
然而,若在802處,基於第一輸入,儲存裝置確定以第二運作模式運作,則在804處,儲存裝置根據第二運作模式執行儲存操作。舉例而言,若基於第一輸入,NVMe-oF裝置400確定以NVMe-oF模式運作,則NVMe-oF裝置400根據NVMe-oF協定執行儲存操作。
在805處,當以第二運作模式運作時,儲存裝置接收第二輸入。儲存裝置可經由所述多個裝置埠自中間板接收第二輸入。舉例而言,當以NVMe-oF模式運作時,NVMe-oF裝置400可經由圖4A的所述多個裝置埠404至406自中間板426接收第二輸入。
在一種配置中,使用位於中間板上且由BMC或母板的本地CPU控制的兩個GPIO接腳或使用儲存裝置的FPGA內的一個或多個內部暫存器來控制第二輸入。舉例而言,可使用位於中間板426上、由BMC 432或母板401的本地CPU 434控制的兩個GPIO接腳(例如,圖2的(ESpeed[1:0])接腳202)或使用圖4A的NVMe-oF裝置400的FPGA 402內的一個或多個內部暫存器來控制第二輸入。
在806處,基於第二輸入,儲存裝置自儲存裝置的多種運作速度選擇一種運作速度。舉例而言,基於第二輸入,NVMe-oF裝置400自儲存裝置的多種運作速度選擇一種運作速度。舉例而言,當以NVMe-oF模式運作時,基於第二輸入,NVMe-oF裝置400選擇100G的運作速度。在一種配置中,儲存裝置的所述多種運作速度可以是介於10G與100G之間的任何數目種速度。
在807處,當以第二模式運作時,儲存裝置以所選擇的運作速度運作。舉例而言,當以NVMe-oF模式運作時,NVMe-oF裝置400以100G的運作速度運作。
應理解,儘管用語「第一」、「第二」、「第三」等在本文中可用於闡述各種元件、組件、區、層及/或區段,但該些元件、組件、區、層及/或區段不應受該些用語限制。該些用語僅用於對一個元件、組件、區、層或區段與另一元件、組件、區、層或區段進行區分。因此,在不背離本發明概念的精神及範疇的情況下,本文中所論述的第一元件、組件、區、層或區段可被稱為第二元件、組件、區、層或區段。
為易於說明起見,在本文中可使用諸如「在…下」、「在…之下」、「下部」、「在…下方」、「在…上方」、「上部」等空間相對用語來闡述一個元件或特徵與另外的元件或特徵的關係,如圖中所說明。應理解,除了圖中所繪示的定向之外,該些空間相對用語亦旨在囊括裝置在使用或操作中的不同定向。舉例而言,若將圖中的裝置翻轉,則被闡述為「在其他元件或特徵之下」或「在其他元件或特徵下」或「在其他元件或特徵下方」的元件將被定向成「在其他元件或特徵上方」。因此,示例性用語「在…之下」及「在…下方」可囊括「在…上方」及「在…之下」兩種定向。可以其他方式對裝置進行定向(例如,旋轉90度或呈其他定向)且應相應地對本文中所使用的空間相對描述符做出解釋。另外,亦應理解當一個層被稱為「位於兩個層之間」時,所述層可以是兩個層之間的唯一層,或者亦可存在一個或多個中介層。
本文中所使用的用語僅是為了闡述具體實施例,並不旨在限制本發明概念。本文中所使用的用語「實質上」、「約」及類似用語用作近似用語並不用作程度用語,且旨在解釋熟習此項技術者應瞭解的所量測值或所計算值的內在偏差。
如本文中所使用,單數形式「一(a及an)」旨在亦包括複數形式,除非上下文另有明確指示。更應理解,本說明書中所使用的用語「包括(comprise及/或comprising)」規定存在所述特徵、整數、步驟、操作、元件及/或組件,但並不排除存在或附加一個或多個其他特徵、整數、步驟、操作、元件及/或組件及/或其組合。本文中所使用的用語「及/或」包括相關聯的所列舉項目中的一者或多者的任何組合及全部組合。冠於一系列元件之前的表達(諸如「…中的至少一者」)修飾全部的一系列元件,並不修飾所述一系列元件中的個別元件。此外,在闡述本發明概念的實施例時使用「可」來指代「本發明的一個或多個實施例」。此外,用語「示例性」旨在指代實例或說明。本文中所使用的用語「使用(use)」、「正使用(using)」及「被使用(used)」可被視為分別與用語「利用(utilize)」、「正利用(utilizing)」及「被利用(utilized)」同義。
應理解,當元件或層被稱為「位於…上」、「連接至」、「耦合至」或「鄰近」另一元件或層時,可直接位於其他元件或層上、直接連接至、直接耦合至或直接鄰近其他元件或層,或者可存在一個或多個中介元件或層。相比而言,當元件或層被稱為「直接位於…上」、「直接連接至」、「直接耦合至」或「緊鄰近」另一元件或層時,則不存在中介元件或層。
本文中所引用的任何數值範圍旨在包含處於所述範圍內的具相同數值精度的所有子範圍。舉例而言,範圍「1.0至10.0」旨在包含介於(且包含)所述最小值1.0與所述最大值10.0之間的所有子範圍,亦即具有等於或大於1.0的最小值以及等於或小於10.0的最大值,諸如2.4至7.6。本文中所引用的任何最大數值限制旨在包含處於所述最大數值限制內的所有數值下限,且本說明書中所述的任何最小數值限制旨在包含處於最小數值限制內的所有數值上限。
儘管本文中已具體地闡述及說明瞭支援多模式及/或多速度NVMe-oF裝置的系統與方法的示例性實施例,但熟習此項技術者將明瞭諸多潤飾及變化。因此應理解,亦可包括除了本文中所具體闡述的之外的根據本發明原理所闡釋的支援多模式及/或多速度NVMe-oF裝置的系統與方法。本發明亦界定於以下申請專利範圍及其等效形式中。
100、400‧‧‧跨架構高速非揮發性記憶體裝置/多模式跨架構高速非揮發性記憶體裝置
102、402、601‧‧‧現場可程式化閘陣列
104‧‧‧乙太網路埠/第一25G乙太網路埠/25G乙太網路埠/25千兆位元/秒的乙太網路埠
106‧‧‧乙太網路埠/第二25G乙太網路埠/25千兆位元/秒的乙太網路埠
108‧‧‧乙太網路埠/第三25G乙太網路埠/25千兆位元/秒的乙太網路埠/25G乙太網路埠
110‧‧‧乙太網路埠/第四25G乙太網路埠/25千兆位元/秒的乙太網路埠
112、412、502、606‧‧‧U.2連接件
114、414‧‧‧第一M.3格式固態驅動器/固態驅動器/M.3格式固態驅動器
116、416‧‧‧第二M.3格式固態驅動器/固態驅動器/M.3格式固態驅動器
118、418‧‧‧高速周邊組件互連X4匯流排/第一高速周邊組件互連X4匯流排
120、420‧‧‧高速周邊組件互連X4匯流排/第二高速周邊組件互連X4匯流排
122‧‧‧雙倍資料速率第四代記憶體/第一雙倍資料速率第四代記憶體
124‧‧‧雙倍資料速率第四代記憶體/第二雙倍資料速率第四代記憶體
126、128、130、132‧‧‧電容器
134‧‧‧M.3格式固態驅動器
136、604、605‧‧‧高速周邊組件互連X4匯流排
138‧‧‧選用乙太網路埠/乙太網路埠
140‧‧‧乙太網路固態驅動器特殊應用積體電路
202‧‧‧附加的通用輸入/輸出接腳 /接腳/ 通用輸入/輸出接腳
204‧‧‧複雜可程式化邏輯裝置
206‧‧‧複雜可程式化邏輯裝置/基板管理控制器通用輸入/輸出接腳
207‧‧‧重設/重設訊號
208‧‧‧系統管理匯流排
401、701A、701B‧‧‧母板
403‧‧‧母板/第二母板
404‧‧‧乙太網路埠/第一25G乙太網路埠/裝置埠
406‧‧‧乙太網路埠/第二25G乙太網路埠/裝置埠
408‧‧‧乙太網路埠/第三25G乙太網路埠
410‧‧‧乙太網路埠/第四25G乙太網路埠
422、424、440、442、452、454、602A、602B、602C、602D、602E、602F、602G、602H、602I、602J‧‧‧雙倍資料速率第四代記憶體
426‧‧‧中間板/共用中間板
428、456‧‧‧高速莫仕連接件
430‧‧‧複雜可程式化邏輯裝置
432、444、707A、707B‧‧‧基板管理控制器
434‧‧‧本地中央處理單元/本地主機中央處理單元/中央處理單元
436、448‧‧‧乙太網路交換機控制器
438、450、705A、705B‧‧‧高速周邊組件互連交換機
446、706A、706B‧‧‧本地中央處理單元
500‧‧‧現場可程式化閘陣列裝置/現場可程式化閘陣列
504、514‧‧‧X1高速周邊組件互連通道/控制平面高速周邊組件互連通道/高速周邊組件互連通道/埠
506、508‧‧‧乙太網路埠
510、512‧‧‧乙太網路埠/埠
516、518、520、522、607、608‧‧‧埠
600‧‧‧現場可程式化閘陣列裝置
603A、603B‧‧‧快閃驅動器
609‧‧‧待定義連接器
610、612‧‧‧多工器
614‧‧‧時脈電路
700‧‧‧交換機
704A、704B‧‧‧乙太網路交換機
761‧‧‧中間板
801、802、803、804、805、806、807‧‧‧操作
E10、E11、E13、E14、E17、E18、E20、E21、E23、E24‧‧‧接腳
S2、S3、S5、S6、S9、S10、S12、S13、S17、S18、S20、S21、S23、S24、S26、S27‧‧‧接腳
參考說明書、申請專利範圍及附圖將瞭解及理解本發明的一些示例性實施例的該些及其他特徵,其中: 圖1A說明根據本發明的一些示例性實施例的NVMe-oF裝置的配置。 圖1B說明根據本發明的一些示例性實施例的示例性SSD的方塊圖。 圖2說明根據本發明的一些示例性實施例的中間板或複雜可程式化邏輯裝置(complex programmable logic device,CPLD)的方塊圖。 圖3說明根據本發明的一些示例性實施例的示例性表,所述示例性表根據示例性多模式NVMe-oF裝置的配置示出U.2連接件的示例性使用。 圖4A(圖4A.1及圖4A.2)說明根據本發明的一些示例性實施例的以非高可用性(non-HA)運作的示例性NVMe-oF裝置的方塊圖。 圖4B(圖4B.1及圖4B.2)說明根據本發明的一些示例性實施例的以高可用性(HA)模式運作的示例性NVMe-oF裝置的方塊圖。 圖5A說明根據本發明的一些示例性實施例的示例性現場可程式化閘陣列(FPGA)裝置的方塊圖。 圖5B說明根據本發明的一些示例性實施例的示例性FPGA裝置的另一方塊圖。 圖6說明根據本發明的一些示例性實施例的示例性FPGA裝置的又一方塊圖。 圖7說明根據本發明的一些示例性實施例的示例性交換機的方塊圖。 圖8說明根據本發明的一些示例性實施例的操作儲存裝置的方法的流程圖。

Claims (20)

  1. 一種系統,包括: 至少一個母板; 至少一個基板管理控制器(BMC); 中間板;以及 至少一個儲存裝置,其中所述至少一個儲存裝置被配置成基於第一輸入而以第一模式或第二模式運作,所述第一輸入是藉由所述中間板經由多個裝置埠而自所述至少一個母板或所述至少一個基板管理控制器接收到;且 當以所述第二模式運作時,所述至少一個儲存裝置被配置成基於第二輸入而以多種運作速度中的第一速度運作,所述第二輸入是經由所述多個裝置埠自所述中間板接收到。
  2. 如申請專利範圍第1項所述的系統,其中所述至少一個儲存裝置包括經由連接件及至少一個匯流排而與至少一個現場可程式化閘陣列進行通訊的多個固態驅動器(SSD)。
  3. 如申請專利範圍第2項所述的系統,其中所述連接件是固態驅動器連接件且所述至少一個匯流排是高速周邊組件互連(PCIe)匯流排。
  4. 如申請專利範圍第1項所述的系統,其中所述至少一個儲存裝置的所述第一模式及所述第二模式分別是高速非揮發性記憶體(NVMe)模式及跨架構高速非揮發性記憶體(NVMe-oF)模式。
  5. 如申請專利範圍第1項所述的系統,其中使用所述至少一個母板的底架上的物理接腳或由來自所述至少一個基板管理控制器的頻帶內命令來控制所述第一輸入。
  6. 如申請專利範圍第1項所述的系統,其中使用由所述至少一個基板管理控制器或由所述至少一個母板的本地中央處理單元(CPU)控制的兩個通用輸入/輸出(GPIO)接腳或者使用所述至少一個儲存裝置的現場可程式化閘陣列(FPGA)內的一個或多個內部暫存器來控制所述第二輸入。
  7. 如申請專利範圍第1項所述的系統,其中所述至少一個儲存裝置的所述多種運作速度是高於10G的兩種或更多種速度。
  8. 如申請專利範圍第1項所述的系統,其中所述多個裝置埠經由U.2連接件連接至所述至少一個儲存裝置,且所述儲存裝置被配置成以高可用性(HA)模式或非高可用性模式運作。
  9. 如申請專利範圍第8項所述的系統,其中所述至少一個儲存裝置經由所述U.2連接件支援兩個串列附接小型電腦系統介面(SAS)埠及高速周邊組件互連(PCIe)X4匯流排的多達四個高速周邊組件互連(PCIe)X4通道,其中所述兩個串列附接小型電腦系統介面埠用作架構附接埠,且其中所述架構附接埠包括乙太網路埠、光纖通道埠及無限頻寬埠。
  10. 如申請專利範圍第9項所述的系統,其中當以所述第二模式運作時,所述至少一個儲存裝置經由所述U.2連接件支援將所述四個高速周邊組件互連X4通道中的兩個高速周邊組件互連X4通道用於兩個架構附接埠的控制平面且將所述四個高速周邊組件互連X4通道的其餘兩個高速周邊組件互連X4通道作為附加的架構附接埠。
  11. 如申請專利範圍第1項所述的系統,其中所述至少一個儲存裝置包括第一儲存裝置及第二儲存裝置,其中在第一時間處,所述第一儲存裝置及/或所述第二儲存裝置以所述多種運作速度中的所述第一速度或第二速度以所述第一模式或所述第二模式運作。
  12. 一種方法,包括: 在儲存裝置處接收第一輸入,其中所述第一輸入是在所述儲存裝置處藉由中間板經由多個裝置埠自至少一個母板或基板管理控制器(BMC)接收到; 由所述儲存裝置基於在所述儲存裝置處接收到的所述第一輸入判斷是以第一運作模式還是以第二運作模式運作; 當以所述第二運作模式運作時,在所述儲存裝置處經由所述多個裝置埠自所述中間板接收第二輸入;以及 由所述儲存裝置基於所述第二輸入自多種運作速度選擇所述儲存裝置的運作速度。
  13. 如申請專利範圍第12項所述的方法,其中所述儲存裝置的所述第一運作模式及所述第二運作模式是高速非揮發性記憶體(NVMe)模式或跨架構高速非揮發性記憶體(NVMe-oF)模式。
  14. 如申請專利範圍第12項所述的方法,其中使用所述至少一個母板的底架上的物理接腳或由來自所述基板管理控制器的頻帶內命令來控制所述第一輸入。
  15. 如申請專利範圍第12項所述的方法,其中使用由所述基板管理控制器或由所述至少一個母板的本地中央處理單元(CPU)控制的兩個通用輸入/輸出(GPIO)接腳或者使用所述儲存裝置的現場可程式化閘陣列(FPGA)內的一個或多個內部暫存器來控制所述第二輸入。
  16. 如申請專利範圍第12項所述的方法,其中所述儲存裝置的所述多種運作速度是高於10G的兩種或更多種速度。
  17. 一種儲存裝置,包括: 多個固態驅動器(SSD),經由第一連接件及至少一個匯流排而與至少一個現場可程式化閘陣列(FPGA)進行通訊,其中所述儲存裝置被配置成基於經由第二連接件接收到的第一輸入而以第一模式或第二模式運作,其中 當以所述第二模式運作時,所述儲存裝置被配置成基於經由所述第二連接件接收到的第二輸入而以多種運作速度中的第一速度運作。
  18. 如申請專利範圍第17項所述的儲存裝置,其中所述第一輸入是藉由中間板經由多個裝置埠自母板或交換機的基板管理控制器(BMC)接收到,且所述第二輸入是經由所述多個裝置埠自所述中間板接收到, 其中使用所述母板的底架上的物理接腳或由來自所述基板管理控制器的頻帶內命令來控制所述第一輸入,且使用由所述基板管理控制器或由所述母板的本地中央處理單元(CPU)控制的兩個通用輸入/輸出(GPIO)接腳或者使用所述現場可程式化閘陣列(FPGA)內的一個或多個內部暫存器來控制所述第二輸入。
  19. 如申請專利範圍第17項所述的儲存裝置,其中所述第一連接件是固態驅動器連接件,所述至少一個匯流排是高速周邊組件互連(PCIe)匯流排,第二連接件是U.2連接件,所述存儲裝置的所述第一模式及所述第二模式分別是高速非揮發性記憶體(NVMe)模式及跨架構高速非揮發性記憶體(NVMe-oF)模式,且所述儲存裝置的所述多種運作速度是高於10G的兩種或更多種速度。
  20. 如申請專利範圍第17項所述的儲存裝置,其中在第一時間處,所述多個固態驅動器中的第一固態驅動器及/或第二固態驅動器以所述多種運作速度中的所述第一速度或第二速度以所述第一模式或所述第二模式運作。
TW107140284A 2018-03-01 2018-11-13 支援多模式及/或多速度之跨架構高速非揮發性記憶體裝置的系統與方法及儲存裝置 TWI756488B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201862637340P 2018-03-01 2018-03-01
US62/637,340 2018-03-01
US16/007,949 2018-06-13
US16/007,949 US11016924B2 (en) 2018-03-01 2018-06-13 System and method for supporting multi-mode and/or multi-speed non-volatile memory (NVM) express (NVMe) over fabrics (NVMe-oF) devices

Publications (2)

Publication Number Publication Date
TW201937381A true TW201937381A (zh) 2019-09-16
TWI756488B TWI756488B (zh) 2022-03-01

Family

ID=67767691

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107140284A TWI756488B (zh) 2018-03-01 2018-11-13 支援多模式及/或多速度之跨架構高速非揮發性記憶體裝置的系統與方法及儲存裝置

Country Status (5)

Country Link
US (2) US11016924B2 (zh)
JP (1) JP7105710B2 (zh)
KR (1) KR102392204B1 (zh)
CN (1) CN110221769A (zh)
TW (1) TWI756488B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11442883B2 (en) 2020-06-10 2022-09-13 Kioxia Corporation Electronic device, determine a setting of a host device for communication in a subsequent phase
TWI807922B (zh) * 2022-02-24 2023-07-01 慧榮科技股份有限公司 使用於儲存裝置中並通過特定通訊介面耦接於儲存裝置之快閃記憶體控制器的快閃記憶體裝置及方法
US11861212B2 (en) 2022-02-24 2024-01-02 Silicon Motion, Inc. Flash memory device, controller, and method capable of performing access operation upon data unit(s) of multiple planes of flash memory device in response one simplified command sequence
US11935595B2 (en) 2022-02-24 2024-03-19 Silicon Motion, Inc. Flash memory device, controller, and method capable of performing access operation upon data unit(s) of multiple planes of flash memory device in response one simplified command sequence
US11972146B2 (en) 2022-02-24 2024-04-30 Silicon Motion, Inc. Flash memory controller and method capable of sending read command or data toggle command to ask for flash memory device return more plane data of different planes
US11977752B2 (en) 2022-02-24 2024-05-07 Silicon Motion, Inc. Flash memory controller and method capable of sending data toggle set-feature signal to enable, disable, or configure data toggle operation of flash memory device

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10521378B2 (en) * 2018-03-09 2019-12-31 Samsung Electronics Co., Ltd. Adaptive interface storage device with multiple storage protocols including NVME and NVME over fabrics storage devices
CN110647429A (zh) * 2019-09-30 2020-01-03 联想(北京)有限公司 一种电子设备、处理系统及处理方法
CN110888598B (zh) * 2019-10-09 2024-01-19 宜鼎国际股份有限公司 数据储存装置、电子设备及可远程控制电子设备的系统
TWI735050B (zh) * 2019-10-09 2021-08-01 宜鼎國際股份有限公司 資料儲存裝置、電子設備及可遠端控制電子設備的系統
CN111179979A (zh) * 2019-12-20 2020-05-19 宜鼎国际股份有限公司 迭板构造
CN111427811A (zh) * 2020-03-19 2020-07-17 上海御渡半导体科技有限公司 一种提高pcie控制ddr通信速率的装置及方法
CN112905507B (zh) * 2021-03-19 2023-05-26 杭州华澜微电子股份有限公司 一种硬盘转换控制器
US11726678B2 (en) * 2021-08-04 2023-08-15 Micron Technology, Inc. Configurable solid state drive with multiple form factors
CN113676421B (zh) * 2021-10-25 2022-01-28 之江实验室 一种基于PCIe的多端口网络报文收发方法
CN113835770B (zh) * 2021-11-30 2022-02-18 四川华鲲振宇智能科技有限责任公司 一种服务器管理模块在线更换方法及系统
CN114721478B (zh) * 2022-03-31 2023-05-23 浪潮(北京)电子信息产业有限公司 一种bmc板卡及存储控制器主板
TWI830608B (zh) * 2023-02-22 2024-01-21 神雲科技股份有限公司 通用介面系統及其控制方法

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030191883A1 (en) 2002-04-05 2003-10-09 Sycamore Networks, Inc. Interface for upgrading serial backplane application from ethernet to gigabit ethernet
US7573940B2 (en) * 2005-12-07 2009-08-11 Intel Corporation Data transmission at energy efficient rates
US7843852B2 (en) * 2008-04-23 2010-11-30 International Business Machines Corporation Portable device for fibre channel configuration and analysis
KR101612111B1 (ko) * 2009-04-27 2016-04-14 삼성전자주식회사 전류 검출기를 포함하는 데이터 저장 장치
US9377967B2 (en) * 2009-05-27 2016-06-28 Dell Products L.P. Systems and methods for scalable storage management
US9008129B2 (en) 2010-02-18 2015-04-14 Broadcom Corporation System and method for frequency division multiplexed high speed physical layer devices
JP5930025B2 (ja) * 2011-05-25 2016-06-08 ザ シラナ グループ プロプライエタリー リミテッドThe Silanna Group Pty Ltd Usb2.0高速モードを有するusbアイソレータ集積回路および自動速度検出
US9164861B2 (en) * 2011-09-22 2015-10-20 American Megatrends, Inc. Drive mapping using a plurality of connected enclosure management controllers
GB2506572A (en) * 2012-07-05 2014-04-09 Ibm Blade enclosure with control and expansion canisters
US9098402B2 (en) 2012-12-21 2015-08-04 Intel Corporation Techniques to configure a solid state drive to operate in a storage mode or a memory mode
US9577955B2 (en) * 2013-03-12 2017-02-21 Forrest Lawrence Pierson Indefinitely expandable high-capacity data switch
US9015353B2 (en) * 2013-03-14 2015-04-21 DSSD, Inc. Method and system for hybrid direct input/output (I/O) with a storage device
US10452316B2 (en) 2013-04-17 2019-10-22 Apeiron Data Systems Switched direct attached shared storage architecture
KR102108839B1 (ko) * 2013-06-12 2020-05-29 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 사용자 장치 및 그것의 데이터 쓰기 방법
US9785356B2 (en) * 2013-06-26 2017-10-10 Cnex Labs, Inc. NVM express controller for remote access of memory and I/O over ethernet-type networks
US9430412B2 (en) 2013-06-26 2016-08-30 Cnex Labs, Inc. NVM express controller for remote access of memory and I/O over Ethernet-type networks
US9565269B2 (en) 2014-11-04 2017-02-07 Pavilion Data Systems, Inc. Non-volatile memory express over ethernet
US10666698B1 (en) * 2014-12-19 2020-05-26 Amazon Technologies, Inc. Bit rate selection for streaming media
CN105813142B (zh) * 2014-12-31 2019-04-19 华为技术有限公司 一种数据帧的发送方法、装置及系统
US10025357B2 (en) * 2015-06-15 2018-07-17 Seagate Technology Llc Enclosure system for computing equipment
CN104951384B (zh) * 2015-06-16 2017-10-03 浪潮电子信息产业股份有限公司 一种基于nvme ssd硬盘的监控系统、基板管理控制器和监控方法
KR102288546B1 (ko) * 2015-08-31 2021-08-10 삼성전자주식회사 스토리지 장치 및 그 제어 방법
CN106775434B (zh) 2015-11-19 2019-11-29 华为技术有限公司 一种NVMe网络化存储的实现方法、终端、服务器及系统
US10275160B2 (en) 2015-12-21 2019-04-30 Intel Corporation Method and apparatus to enable individual non volatile memory express (NVME) input/output (IO) Queues on differing network addresses of an NVME controller
US10210121B2 (en) 2016-01-27 2019-02-19 Quanta Computer Inc. System for switching between a single node PCIe mode and a multi-node PCIe mode
US10467170B2 (en) * 2016-04-18 2019-11-05 Hewlett Packard Enterprise Development Lp Storage array including a bridge module interconnect to provide bridge connections to different protocol bridge protocol modules
US10691628B2 (en) * 2016-05-06 2020-06-23 Quanta Computer Inc. Systems and methods for flexible HDD/SSD storage support
US20170357610A1 (en) * 2016-06-14 2017-12-14 Kazan Networks Corporation Split nvme ssd implementation using nvme over fabrics protocol
US10452576B2 (en) * 2016-06-24 2019-10-22 Avago Technologies International Sales Pte. Limited NVMe drive detection from a SAS/SATA connector
US10387353B2 (en) 2016-07-26 2019-08-20 Samsung Electronics Co., Ltd. System architecture for supporting active pass-through board for multi-mode NMVE over fabrics devices
US10210123B2 (en) * 2016-07-26 2019-02-19 Samsung Electronics Co., Ltd. System and method for supporting multi-path and/or multi-mode NMVe over fabrics devices
US10200309B2 (en) 2016-08-12 2019-02-05 Samsung Electronics Co., Ltd. Two-headed switch including a drive bay for fabric-attached devices
CN106502593A (zh) 2016-11-04 2017-03-15 郑州云海信息技术有限公司 一种高速互联混合存储系统

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11442883B2 (en) 2020-06-10 2022-09-13 Kioxia Corporation Electronic device, determine a setting of a host device for communication in a subsequent phase
TWI807922B (zh) * 2022-02-24 2023-07-01 慧榮科技股份有限公司 使用於儲存裝置中並通過特定通訊介面耦接於儲存裝置之快閃記憶體控制器的快閃記憶體裝置及方法
US11861212B2 (en) 2022-02-24 2024-01-02 Silicon Motion, Inc. Flash memory device, controller, and method capable of performing access operation upon data unit(s) of multiple planes of flash memory device in response one simplified command sequence
US11935595B2 (en) 2022-02-24 2024-03-19 Silicon Motion, Inc. Flash memory device, controller, and method capable of performing access operation upon data unit(s) of multiple planes of flash memory device in response one simplified command sequence
US11972146B2 (en) 2022-02-24 2024-04-30 Silicon Motion, Inc. Flash memory controller and method capable of sending read command or data toggle command to ask for flash memory device return more plane data of different planes
US11977776B2 (en) 2022-02-24 2024-05-07 Silicon Motion, Inc. Flash memory controller and method capable of sending read command or data toggle command to ask for flash memory device return more plane data of different planes
US11977752B2 (en) 2022-02-24 2024-05-07 Silicon Motion, Inc. Flash memory controller and method capable of sending data toggle set-feature signal to enable, disable, or configure data toggle operation of flash memory device

Also Published As

Publication number Publication date
JP2019153300A (ja) 2019-09-12
US11016924B2 (en) 2021-05-25
JP7105710B2 (ja) 2022-07-25
US20210279198A1 (en) 2021-09-09
CN110221769A (zh) 2019-09-10
TWI756488B (zh) 2022-03-01
KR20190104854A (ko) 2019-09-11
US20190272249A1 (en) 2019-09-05
KR102392204B1 (ko) 2022-04-28

Similar Documents

Publication Publication Date Title
TWI756488B (zh) 支援多模式及/或多速度之跨架構高速非揮發性記憶體裝置的系統與方法及儲存裝置
US11588261B2 (en) Multi-mode and/or multi-speed non-volatile memory (NVM) express (NVMe) over fabrics (NVMe-oF) device
US20230350838A1 (en) Sff-ta-100x based multi-mode protocols solid state devices
KR102265669B1 (ko) 패브릭을 통한 멀티-모드 불휘발성 메모리 익스프레스 장치들을 위한 액티브 패스-쓰루 보드를 지원하는 시스템 아키텍처
JP7134894B2 (ja) ストレージシステム、及びプログラマブルロジックデバイス
KR20210025564A (ko) 멀티 모드에서 동작하는 장치 및 그것을 포함하는 시스템
US7461194B2 (en) Apparatus for interconnecting a plurality of process nodes by serial bus
US20170300445A1 (en) Storage array with multi-configuration infrastructure
US20150347345A1 (en) Gen3 pci-express riser
US7565474B2 (en) Computer system using serial connect bus, and method for interconnecting a plurality of CPU using serial connect bus
US8756360B1 (en) PCI-E compatible chassis having multi-host capability
US20230101283A1 (en) Method and apparatus for supporting a field programmable gate array (fpga) based add-in-card (aic) solid state drive (ssd)
US11086813B1 (en) Modular non-volatile memory express storage appliance and method therefor
US20200356515A1 (en) System architecture for supporting active pass-through board for multi-mode nmve over fabrics devices
US10210128B2 (en) Redirection of lane resources
WO2013025221A1 (en) Connecting expansion slots
US20120059966A1 (en) Storage device and method for managing size of storage device