TWI727394B - 記憶體系統及記憶體系統之控制方法 - Google Patents
記憶體系統及記憶體系統之控制方法 Download PDFInfo
- Publication number
- TWI727394B TWI727394B TW108129054A TW108129054A TWI727394B TW I727394 B TWI727394 B TW I727394B TW 108129054 A TW108129054 A TW 108129054A TW 108129054 A TW108129054 A TW 108129054A TW I727394 B TWI727394 B TW I727394B
- Authority
- TW
- Taiwan
- Prior art keywords
- communication information
- priority
- virtual channel
- command
- controller
- Prior art date
Links
Images
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
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- 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
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/18—Handling requests for interconnection or transfer for access to memory bus based on priority control
-
- 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/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI 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/0026—PCI express
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System (AREA)
Abstract
本發明之實施形態主要關於一種記憶體系統及記憶體系統之控制方法。
實施形態之記憶體系統包括非揮發性記憶體及控制器。控制器經由依據快速週邊組件互連規格之複數個虛擬通道與外部裝置進行通信,而控制非揮發性記憶體。控制器對將第1虛擬通道與第1優先度建立關聯,將第2虛擬通道與低於第1優先度之第2優先度建立關聯之優先度關係資訊進行管理,且接收與第1優先度對應之第1通信資訊或與上述第2優先度對應之第2通信資訊,於接收到上述第1通信資訊之情形時,使用上述第1虛擬通道對上述外部裝置請求與上述第1通信資訊相關之第3通信資訊,於接收到上述第2通信資訊之情形時,使用上述第2虛擬通道對上述外部裝置請求與上述第2通信資訊相關之第4通信資訊。
Description
本發明之實施形態主要關於一種記憶體系統及記憶體系統之控制方法。
SSD(Solid State Drive,固體驅動器)具備非揮發性半導體記憶體,且具有依據特定規格之介面。SSD與資訊處理裝置係依據特定規格對例如指令、使用者資料、完成通知(completion)等進行收發。例如,SSD係依據特定規格將自資訊處理裝置接收之使用者資料寫入至非揮發性半導體記憶體,並向資訊處理裝置發送自非揮發性半導體記憶體讀取之使用者資料。
實施形態提供一種可於具備記憶體系統之網路環境中提高QoS(Quality Of Service,服務品質)之記憶體系統及記憶體系統之控制方法。
實施形態之記憶體系統包括非揮發性記憶體及控制器。控制器經由依據快速週邊組件互連規格之虛擬通道與外部裝置進行通信,而控制非揮發性記憶體。控制器對將第1虛擬通道與第1優先度建立關聯,將第2虛擬通道與低於第1優先度之第2優先度建立關聯之優先度關係資訊進行管理,且接收與第1優先度對應之第1通信資訊或與上述第2優先度對應之第2通信資訊,於接收到上述第1通信資訊之情形時,使用上述第1虛擬
通道對上述外部裝置請求與上述第1通信資訊相關之第3通信資訊,於接收到上述第2通信資訊之情形時,使用上述第2虛擬通道對上述外部裝置請求與上述第2通信資訊相關之第4通信資訊。
1:資訊處理裝置
1A:資訊處理系統
2:記憶體系統
3:記憶體
3R:自記憶體系統2讀取之使用者資料
3W:向記憶體系統2寫入之使用者資料
4:處理器
4A:通信控制部
4B:晶片集
5:PRP
6:優先度關係資訊
7:控制器
7B:後端
7F:前端
8:記憶體
9:讀取/寫入控制器
9-10:讀取/寫入控制器+非揮發性記憶體
10:非揮發性記憶體
11:PCIe控制器
12:NVMe控制器
13:仲裁部
15:處理器
16:記憶體
100~104:非揮發性記憶體10之區域
110~114:緩衝記憶體
130~134:隊列電路
140~144:DMA電路
160~164:記憶體16內之區域
S301:步驟
S302:步驟
S303:步驟
S401:步驟
S402:步驟
S403:步驟
S404:步驟
S405:步驟
S406:步驟
S407:步驟
S408:步驟
S409:步驟
S410:步驟
S411:步驟
S412:步驟
S413:步驟
S501:步驟
S502:步驟
S503:步驟
S504:步驟
S505:步驟
S506:步驟
S507:步驟
S508:步驟
S509:步驟
S510:步驟
S511:步驟
S512:步驟
S513:步驟
S514:步驟
S515:步驟
S601:步驟
S602:步驟
S603:步驟
S604:步驟
S605:步驟
S606:步驟
S607:步驟
S701:步驟
S702:步驟
S703:步驟
S704:步驟
S705:步驟
SW:軟體
VC0~VC4:虛擬通道
圖1係表示本實施形態之資訊處理系統之構成之一例之方塊圖。
圖2係表示本實施形態之優先度關係資訊之一例之資料構造圖。
圖3係表示於本實施形態之資訊處理系統之啟動時所執行之初始化處理之一例之序列圖。
圖4係表示藉由本實施形態之資訊處理系統所執行之使用者資料之讀取處理之一例之序列圖。
圖5係表示藉由本實施形態之資訊處理系統所執行之使用者資料之寫入處理之一例之序列圖。
圖6係表示藉由本實施形態之記憶體系統所執行之讀取處理之一例之序列圖。
圖7係表示藉由本實施形態之記憶體系統所執行之寫入處理之一例之序列圖。
以下,參照圖式對實施形態進行說明。於以下說明中,對於實質上相同之功能及構成要素,標註相同符號,僅於需要時進行重複說明。
於本實施形態中,記憶體系統依據用以與外部之資訊處理裝置進行通信之第1規格。再者,記憶體系統亦可組入至資訊處理裝置。
又,記憶體系統依據與第1規格不同之第2規格,執行資訊處理裝置發行之指令。
於以下說明中,以第1規格為PCI Express(Peripheral Component Interconnect Express,快速週邊組件互連)(以下,記為PCIe),第2規格為NVM Express(Non-Volatile Memory Express,非揮發性記憶體高速規格)(以下,記為NVMe)之情形為例進行說明。然而,第1規格及第2規格可適宜變更。
於以下說明中,以依據PCIe規格及NVMe規格對通信資訊進行通信及處理之情形為例進行說明。此處,所謂通信資訊,例如設為指令通知、指令請求、指令、使用者資料、或完成通知等之總稱。
圖1係表示本實施形態之資訊處理系統1A之構成之一例之方塊圖。
資訊處理系統1A包括資訊處理裝置1及記憶體系統2。
資訊處理裝置1亦可記為例如主機機器。資訊處理裝置1亦可為例如個人電腦、伺服器裝置、客戶端裝置、行動電話、行動資訊終端、攝影裝置、感測器裝置等。
於本實施形態中,記憶體系統2係以SSD之情形為例進行說明,但相同之構成及功能可應用於例如HDD(Hard Disk Drive,硬碟驅動器)、記憶卡、包括HDD及SSD之混合型記憶體系統、光碟裝置等各種各樣之非揮發性儲存裝置之任一者。
首先,對資訊處理裝置1之構成進行說明。
資訊處理裝置1包括記憶體3、晶片集4B及處理器4。但是,本實施形態中所說明之資訊處理裝置1之構成及動作為一例,並不限
於此。
記憶體3儲存軟體SW、PRP(Physical Region Pointer,物理區域指針)5、向記憶體系統2寫入之使用者資料3W、自記憶體系統2讀取之使用者資料3R。再者,PRP例如被定義為NVMe規格,例如表示使用者資料之目的地或獲取源。
晶片集4B係根據處理器4之指示來進行資訊處置裝置1與記憶體系統2之間之通信。
處理器4係藉由執行記憶體3中所儲存之軟體SW,而作為通信控制部4A發揮功能。軟體SW例如可為作業系統,亦可為應用程式,亦可為驅動器等。處理器4亦可以電子電路形式形成。
通信控制部4A係對晶片集4B發出指示,使用晶片集4B而控制資訊處理裝置1與記憶體系統2之間之通信。以下,為了簡化,而省略關於晶片集4B之說明進行說明。
通信控制部4A於資訊處理裝置1與記憶體系統2開始通信時之初始化處理中,向記憶體系統2發送關於記憶體系統2之能力之資訊(以下,簡稱為能力資訊)之查詢,並自記憶體系統2接收與查詢對應之能力資訊。
通信控制部4A基於自記憶體系統2接收到之能力資訊,而決定可於資訊處理裝置1與記憶體系統2之間之通信中使用之虛擬通道(Virtual Channel)之數量。虛擬通道例如被定義為PCIe規格。所謂虛擬通道,例如為在邏輯上將1個物理線路視為複數個通信線路之線路。通信控制部4A例如基於下文所說明之記憶體系統2之PCIe控制器11所具備之Virtual Channel Capability register(虛擬通道功能寄存器)之資訊來決定
可使用之虛擬通道之數量。
於本實施形態中,可使用之虛擬通道之數量為5個,於資訊處理裝置1與記憶體系統2之間之通信中可使用虛擬通道VC0~VC4。再者,於本實施形態中,虛擬通道之數量只要為2以上即可。更具體而言,虛擬通道之數量為2以上,只要為以PCIe規格支援之最大之虛擬通道數量以下即可。
通信控制部4A將送往記憶體系統2之指令通知向記憶體系統2發送。此處之指令通知例如被定義為NVMe規格。
通信控制部4A使用複數個虛擬通道中之由記憶體系統2所決定之虛擬通道,自記憶體系統2接收與指令通知對應之指令請求。
通信控制部4A使用由記憶體系統2所決定之虛擬通道,向記憶體系統2發送與指令請求對應之指令。
通信控制部4A使用由記憶體系統2所決定之虛擬通道,自記憶體系統2接收PRP請求。
通信控制部4A自記憶體3讀取與PRP請求對應之PRP5,並使用由記憶體系統2所決定之虛擬通道向記憶體系統2發送PRP5。
通信控制部4A於向記憶體系統2發送之指令為讀取指令之情形時,使用由記憶體系統2所決定之虛擬通道自記憶體系統2接收與PRP5對應之使用者資料3R,並將使用者資料3R儲存於記憶體3中。通信控制部4A於接收到使用者資料3R後,使用由記憶體系統2所決定之虛擬通道自記憶體系統2接收完成通知。
通信控制部4A於向記憶體系統2發送之指令為寫入指令之情形時,使用由記憶體系統2所決定之虛擬通道自記憶體系統2接收與
PRP5對應之寫入請求。通信控制部4A自記憶體3讀取與寫入請求對應之使用者資料3W,並使用由記憶體系統2所決定之虛擬通道向記憶體系統2發送使用者資料3W。通信控制部4A於發送使用者資料3W後,使用由記憶體系統2所決定之虛擬通道自記憶體系統2接收完成通知。
再者,通信控制部4A亦可藉由資訊處理裝置1之其他構成要素代替處理器4來實現。亦可將處理器4與晶片集4B組合。例如,處理器4與晶片集4B亦可以1個晶片或1個封裝體形式形成。又,處理器4、晶片集4B及記憶體3亦可以1個晶片或1個封裝體形式形成。
其次,對記憶體系統2之構成進行說明。但是,本實施形態中所說明之記憶體系統2之構成及動作為一例,並不限於此。
記憶體系統2包括控制器7、記憶體8、及非揮發性記憶體10。作為記憶體8,例如亦可使用DRAM(Dynamic Random Access Memory,動態隨機存取記憶體)。
於本實施形態中,控制器7亦可如例如SoC(System-on-a-chip,單晶片系統)等般以電子電路形式形成。控制器7之各功能可藉由專用硬體實現,亦可藉由令處理器執行如韌體等之軟體而實現。再者,亦可將控制器7與記憶體8組合。例如,控制器7與記憶體8亦可以1個晶片或1個封裝體形式形成。又,控制器7、記憶體8及非揮發性記憶體10亦可以1個晶片或1個封裝體形式形成。
控制器7包括前端7F、後端7B及讀取/寫入控制器9。控制器7自資訊處理裝置1接收指令,根據指令控制非揮發性記憶體10。例如,控制器7於自資訊處理裝置1接收到讀取指令之情形時,執行對非揮發性記憶體10之讀取處理。控制器7於自資訊處理裝置1接收到寫入指令之
情形時,執行對非揮發性記憶體10之寫入處理。
前端7F包括對依據PCIe規格之動作進行控制之PCIe控制器11、及對依據NVMe規格之動作進行控制之NVMe控制器12。
PCIe控制器11於與資訊處理裝置1之間執行依據PCIe規格之通信。PCIe控制器11具備依據PCIe規格之未圖示之Virtual Channel Capability Register。
PCIe控制器11具備與資訊處理裝置1與記憶體系統2之間之複數個虛擬通道VC0~VC4分別對應之緩衝記憶體110~114。再者,亦可使用如隊列等之其他種類之暫時記憶裝置代替緩衝記憶體110~114。
緩衝記憶體110~114分別將使用所對應之虛擬通道VC0~VC4自資訊處理裝置1接收到之通信資訊暫時地儲存。又,緩衝記憶體110~114分別將使用所對應之虛擬通道VC0~VC4向資訊處理裝置1發送之通信資訊暫時地儲存。
即,PCIe控制器11將自資訊處理裝置1分別使用虛擬通道VC0~VC4接收到之通信資訊儲存於與所使用之虛擬通道VC0~VC4對應之緩衝記憶體110~114中。PCIe控制器11將緩衝記憶體110~114中所儲存之通信資訊儲存於分別對應之隊列電路130~134中。
又,PCIe控制器11使用分別對應之虛擬通道VC0~VC4向資訊處理裝置1發送緩衝記憶體110~114中所儲存之通信資訊。
PCIe控制器11於資訊處理裝置1與記憶體系統2開始通信時之初始化處理中,當自資訊處理裝置1接收能力資訊之查詢時,向資訊處理裝置1發送能力資訊。
PCIe控制器11將關於可使用之虛擬通道VC0~VC4之資訊
發送至NVMe控制器12,該NVMe控制器12將可使用之虛擬通道VC0~VC4與關於NVMe之優先度資訊建立關係,藉此產生優先度關係資訊6,並將優先度關係資訊6儲存於記憶體8中。亦可由記憶體系統2內之其他模組進行優先度關係資訊6之產生、及向記憶體8中之儲存。
PCIe控制器11自資訊處理裝置1接收指令通知。PCIe控制器11將接收到之指令通知發送至NVMe控制器12。NVMe控制器12自記憶體8讀取優先度關係資訊6,基於可藉由指令通知而識別之關於NVMe之優先度與優先度關係資訊6來決定虛擬通道VC0~VC4中之應使用之虛擬通道。PCIe控制器11將指令請求儲存於與所決定之虛擬通道對應之緩衝記憶體110中,並使用所決定之虛擬通道向資訊處理裝置1發送指令請求。
NVMe控制器12包括仲裁部13、及複數個DMA(Direct Memory Access,直接記憶體存取)電路140~144。NVMe控制器12之仲裁部13基於優先度關係資訊6執行如下排程,即,優先地選擇與優先度被設定得較高之虛擬通道對應之隊列電路130~134中所儲存之通信資訊。具體而言,仲裁部13實現以NVMe規格定義之Weighted Round Robin with Urgent Priority Class Arbitration(WRRUPCA,緊急優先級仲裁加權循環調度算法)。NVMe控制器12根據WRRUPCA之構造選擇複數個隊列電路130~134中所儲存之通信資訊,並對所選擇之通信資訊進行處理。複數個隊列電路130~134分別例如設為提交隊列(Submission Queue:SQ)。
NVMe控制器12中之NVMe指令之處理階段包括「指令提取與解釋」「PRP提取與解釋」「資料傳輸」「完成通知之發行」此4個階段。
仲裁部13具備複數個隊列電路130~134。仲裁部13係例如使用WRRUPCA,自各隊列電路130~134中所儲存之通信資訊根據優先度選擇成為處理對象之通信資訊。
於本實施形態中,為了優先執行優先度較高之處理對象,而使用上述WRRUPCA等演算法。然而,亦可使用根據優先度選擇處理對象之其他演算法來代替WRRUPCA。
隊列電路130~134與複數個虛擬通道VC0~VC4分別對應。隊列電路130~134採用先進先出方式。
NVMe控制器12基於藉由仲裁部13而選擇為處理對象之通信資訊,執行指令提取與解釋、PRP提取與解釋、使用者資料之傳輸、或完成通知之發行等。
DMA電路140~144與複數個虛擬通道VC0~VC4分別對應。
後端7B包括處理器15。處理器15包括記憶體16。記憶體16係以與虛擬通道VC0~VC4分別對應之方式劃分為區域160~164。記憶體16例如亦可採用先進先出方式。記憶體16亦可為於處理器15之外部具備,而處理器15可執行對外部之記憶體16之寫入及讀取。
處理器15與上述仲裁部13同樣地,根據優先度關係資訊6及例如WRRUPCA執行:經由讀取/寫入控制器9將各區域160~164中所儲存之使用者資料寫入至非揮發性記憶體10中之處理、及將經由讀取/寫入控制器9自非揮發性記憶體10讀取之使用者資料儲存於各區域160~164中之處理。再者,處理器15亦可使用根據優先度來選擇處理對象之區域之其他演算法來代替WRRUPCA。
非揮發性記憶體10例如亦可設為非揮發性之半導體記憶體。非揮發性記憶體10例如設為NAND(Not AND,非及)型快閃記憶體,但亦可為NOR(Not or,非或)型快閃記憶體、MRAM(Magnetoresistive Random Access Memory:磁阻隨機存取記憶體)、PRAM(Phasechange Random Access Memory:相變隨機存取記憶體)、ReRAM(Resistive Random Access Memory:可變電阻隨機存取記憶體)、FeRAM(Ferroelectric Random Access Memory,鐵電隨機存取記憶體)等其他非揮發性半導體記憶體。例如,非揮發性記憶體10亦可為磁性記憶體等。例如,非揮發性記憶體10亦可為三維構造之半導體記憶體。
非揮發性記憶體10在邏輯上被分割為複數個名稱空間,亦可將各名稱空間和與虛擬通道VC0~VC4對應之各區域100~104建立對應關係。於本實施形態中,名稱空間例如依據NVMe規格。控制器7藉由使用名稱空間ID進行針對非揮發性記憶體10之各種控制,而可僅控制非揮發性記憶體10中之特定空間。
於將隊列電路130~134中所儲存之使用者資料寫入至非揮發性記憶體10中之寫入處理中,DMA電路140~144分別根據仲裁部13之控制,自與虛擬通道VC0~VC4對應之隊列電路130~134向記憶體16內之區域160~164進行使用者資料之傳送。處理器15向讀取/寫入控制器9發送自記憶體16之區域160~164讀取之使用者資料。讀取/寫入控制器9自處理器15接收記憶體16之各區域160~164中所儲存之使用者資料。讀取/寫入控制器9對非揮發性記憶體10之區域100~104之各個進行與虛擬通道VC0~VC4對應之使用者資料之寫入。
又,於將自非揮發性記憶體10讀取之使用者資料儲存於
PCIe控制器11之緩衝記憶體110~111中之處理中,讀取/寫入控制器9自非揮發性記憶體10之區域100~104讀取與虛擬通道VC0~VC4分別對應之使用者資料,並將所讀取之使用者資料發送至處理器15。處理器15經由讀取/寫入控制器9接收自各區域100~104讀取之使用者資料,並將所接收之使用者資料分別儲存於記憶體16之各區域160~164中。DMA電路140~144分別根據優先度關係資訊6,自記憶體16內之區域160~164向PCIe控制器11之緩衝記憶體110~114進行使用者資料之傳送。
圖2係表示優先度關係資訊6之一例之資料構造圖。
優先度關係資訊6包括關於NVMe之優先度資訊61、及關於PCIe之優先度資訊62。於該圖2中,優先度關係資訊6係將關於PCIe規格之複數個虛擬通道VC0~VC4、與關於NVMe之複數個優先度建立關係。
控制器7藉由自記憶體8讀取優先度關係資訊6,可識別與用於收發通信資訊之虛擬通道對應之關於NVMe之優先度。又,控制器7於自記憶體8讀取優先度關係資訊6,並識別出關於NVMe之優先度之情形時,可識別與該關於NVMe之優先度對應之虛擬通道。
關於NVMe之優先度資訊61係WRRUPCA中所使用之優先度,例如包括低優先級、中優先級、高優先級、緊急優先級、管理員這些優先度。該等優先度之大小關係例如為低優先級<中優先級<高優先級<緊急優先級<管理員。
關於PCIe之優先度資訊62依據以PCIe規格定義之各虛擬通道VC0~VC4之優先度。於圖2中,關於PCIe之優先度資訊62例如具有VC0之優先度<VC1之優先度<VC2之優先度<VC3之優先度<VC4之優
先度這種大小關係。
優先度關係資訊6係將低優先級與VC0建立關係,將中優先級與VC1建立關係,將高優先級與VC2建立關係,將緊急優先級與VC3建立關係,將管理員與VC4建立關係。
於控制器7中,越是優先度較大之通信資訊越可較優先度較小之通信資訊而言被先進行收發及處理。藉此,可提高QoS(Quality of Service)。
再者,圖2之優先度關係資訊6為示例,可進行適宜變更。例如,亦可對關於NVMe之優先度資訊61之1個項目,將複數個虛擬通道與其建立關係。亦可對1個虛擬通道,將關於NVMe之優先度資訊61之複數個項目與其建立關係。
PCIe控制器11基於關於PCIe之優先度資訊62來執行用以對越是優先度相對較高之通信資訊越優先地進行處理(例如通信資訊之發送或接收)之排程。
NVMe控制器12基於關於NVMe之優先度資訊61來執行用以對越是優先度相對較高之通信資訊越優先地進行處理(例如指令之提取、PRP之提取、使用者資料之傳輸、完成通知之發行等)之排程。
圖3係表示於本實施形態之資訊處理系統1A之啟動時所執行之初始化處理之一例之序列圖。再者,圖3之初始化處理亦可於資訊處理裝置1與記憶體系統2之通信建立時而非啟動時執行。
當於資訊處理系統1A之啟動時執行初始化處理時,於步驟S301中,資訊處理裝置1向記憶體系統2發送記憶體系統2之能力資訊之查詢。能力資訊例如包括記憶體系統2中之虛擬通道之支援數。
於步驟S302中,記憶體系統2之PCIe控制器11向資訊處理裝置1發送能力資訊。資訊處理裝置1自記憶體系統2接收能力資訊。
於步驟S303中,資訊處理裝置1基於自記憶體系統2接收之能力資訊,而決定可於資訊處理裝置1與記憶體系統2之間使用之虛擬通道之數量(於本實施形態中為5個)。
圖4係表示藉由本實施形態之資訊處理系統1A所執行之使用者資料3R之讀取處理之一例之序列圖。
於步驟S401中,資訊處理裝置1之通信控制部4A使用虛擬通道VC0~VC4中之任一者向記憶體系統2發送送往記憶體系統2之指令通知。
於步驟S402中,記憶體系統2之PCIe控制器11自資訊處理裝置1接收指令通知。如此,記憶體系統2之PCIe控制器11根據指令通知來識別指令之關於NVMe之優先度資訊。PCIe控制器11基於所識別之關於NVMe之優先度資訊與優先度關係資訊6,而自記憶體系統2所支援之虛擬通道VC0~VC4中決定應使用之虛擬通道。
以下,以決定了虛擬通道VC0作為應使用之虛擬通道之情形為例進行說明。再者,於由記憶體系統2決定虛擬通道VC1~VC4之任一者作為應使用之虛擬通道之情形時,亦同樣如此。
於步驟S403中,記憶體系統2之PCIe控制器11使用步驟S402中所決定之虛擬通道VC0,向資訊處理裝置1發送與指令通知對應之指令請求。
於步驟S404中,資訊處理裝置1之通信控制部4A於自記憶體系統2接收指令請求時,使用步驟S402中所決定之虛擬通道VC0,向記
憶體系統2發送與指令請求對應之指令。
於步驟S405中,記憶體系統2之PCIe控制器11將自資訊處理裝置1接收之指令儲存於與虛擬通道VC0對應之緩衝記憶體110中。NVMe控制器12將緩衝記憶體110中所儲存之指令儲存於與步驟S402中所決定之虛擬通道VC0對應之隊列電路130中。上述步驟S403~S405中之處理例如相當於NVMe控制器12之指令提取。
於步驟S406中,記憶體系統2之NVMe控制器12根據仲裁部13之控制而進行隊列電路130中所儲存之指令之解釋。
於步驟S407中,記憶體系統2之PCIe控制器11使用步驟S402中所決定之虛擬通道VC0,向資訊處理裝置1發送與所解釋之指令對應之PRP請求。
於步驟S408中,資訊處理裝置1之通信控制部4A於自記憶體系統2接收PRP請求時,使用步驟S402中所決定之虛擬通道VC0,向記憶體系統2發送與PRP請求對應之PRP5。
於步驟S409中,記憶體系統2之PCIe控制器11將自資訊處理裝置1接收之PRP5儲存於與虛擬通道VC0對應之緩衝記憶體110中。NVMe控制器12將緩衝記憶體110中所儲存之PRP5儲存於與步驟S402中所決定之虛擬通道VC0對應之隊列電路130中。上述步驟S407~S409中之處理例如相當於NVMe控制器12之PRP提取。
於步驟S410中,記憶體系統2之NVMe控制器12根據仲裁部13之控制而進行隊列電路130中所儲存之PRP之解釋。
於步驟S411中,記憶體系統2之控制器7基於PRP之解釋結果,自非揮發性記憶體10讀取使用者資料3R並儲存於緩衝記憶體110中。
於步驟S412中,記憶體系統2之PCIe控制器11使用步驟S402中所決定之虛擬通道VC0,向資訊處理裝置1發送緩衝記憶體110中所儲存之使用者資料3R。
於步驟S413中,記憶體系統2之NVMe控制器12將完成通知儲存於緩衝記憶體110中。記憶體系統2之PCIe控制器11使用步驟S402中所決定之虛擬通道VC0,向資訊處理裝置1發送緩衝記憶體110中所儲存之完成通知。該步驟S413中之處理例如相當於NVMe控制器12之完成通知之發行。
圖5係表示藉由本實施形態之資訊處理系統1A所執行之使用者資料3W之寫入處理之一例之序列圖。
自步驟S501至步驟S510為止之處理由於與上述圖4之自步驟S401至步驟S410為止相同,故而省略說明。
於步驟S511中,記憶體系統2之PCIe控制器11使用步驟S502中所決定之虛擬通道VC0,向資訊處理裝置1發送寫入資料請求。
於步驟S512中,資訊處理裝置1之通信控制部4A於自記憶體系統2接收寫入資料請求時,自記憶體3讀取與寫入資料請求對應之使用者資料3W,並向記憶體系統2發送使用者資料3W。
於步驟S513中,記憶體系統2之PCIe控制器11將自資訊處理裝置1接收之使用者資料3W儲存於與虛擬通道VC0對應之緩衝記憶體110中。NVMe控制器12將緩衝記憶體110中所儲存之使用者資料3W儲存於與步驟S502中所決定之虛擬通道VC0對應之隊列電路130中。
於步驟S514中,記憶體系統2之NVMe控制器12根據仲裁部13之控制,經由後端7B、讀取/寫入控制器9將隊列電路130中所儲存之
使用者資料3W寫入至非揮發性記憶體10中。
於步驟S515中,記憶體系統2之NVMe控制器12將完成通知儲存於緩衝記憶體110中。記憶體系統2之PCIe控制器11使用步驟S502中所決定之虛擬通道VC0,向資訊處理裝置1發送緩衝記憶體110中所儲存之完成通知。
圖6係表示藉由本實施形態之記憶體系統2所執行之讀取處理之一例之序列圖。圖6與上述圖4之步驟S411對應。於圖6中,為了簡化說明,而利用1個方塊9-10將讀取/寫入控制器9及非揮發性記憶體10彙總記載。於關於圖6之以下說明中,為了簡化說明,而主要說明虛擬通道VC0及與該虛擬通道VC0相關之構成要素,省略虛擬通道VC1~VC4及與該虛擬通道VC1~VC4相關之構成要素之相關說明。
於步驟S601中,NVMe控制器12基於PRP之解釋結果,向後端7B指示讀取。
於步驟S602中,後端7B基於來自NVMe控制器12之讀取之指示,對讀取/寫入控制器9指示讀取。
於步驟S603中,讀取/寫入控制器9自與所決定之虛擬通道VC0對應之非揮發性記憶體10之區域100讀取使用者資料3R。
於步驟S604中,讀取/寫入控制器9向後端7B發送使用者資料3R。
於步驟S605中,後端7B將自讀取/寫入控制器9接收之使用者資料3R儲存於與所決定之虛擬通道VC0對應之記憶體16之區域160中。
於步驟S606中,NVMe控制器12之DMA電路140根據基於優先度關係資訊6之排程,而讀取記憶體16之區域160中所儲存之使用者
資料3R。
於步驟S607中,DMA電路140將自記憶體16之區域160讀取之使用者資料3R儲存於與所決定之虛擬通道VC0對應之PCIe控制器11之緩衝記憶體110中。
圖7係表示藉由本實施形態之記憶體系統2所執行之寫入處理之一例之序列圖。圖7與上述圖5之步驟S514對應。於圖7中,為了簡化說明,而利用1個方塊9-10將讀取/寫入控制器9及非揮發性記憶體10彙總記載。於關於圖7之以下說明中,為了簡化說明,而主要說明虛擬通道VC0及與該虛擬通道VC0相關之構成要素,省略虛擬通道VC1~VC4及與該虛擬通道VC1~VC4相關之構成要素之相關說明。
於步驟S701中,NVMe控制器12根據仲裁部13之控制,向後端7B指示寫入。DMA電路140自與所決定之虛擬通道VC0對應之隊列電路130獲取使用者資料3W,並向與所決定之虛擬通道VC0對應之記憶體16之區域160傳送使用者資料3W。
於步驟S702中,後端7B基於來自NVMe控制器12之寫入之指示,對讀取/寫入控制器9指示寫入,並向讀取/寫入控制器9發送區域160中所儲存之使用者資料3W。
於步驟S703中,讀取/寫入控制器9向與所決定之虛擬通道VC0對應之非揮發性記憶體10之區域100寫入使用者資料3W。
於步驟S704中,讀取/寫入控制器9向後端7B發送寫入結束通知。
於步驟S705中,後端7B向NVMe控制器12發送寫入結束通知。
對藉由以上所說明之本實施形態之資訊處理系統1A所獲得之效果進行說明。
於本實施形態中,記憶體系統2對將關於NVMe之優先度資訊61與關於PCIe之優先度資訊62建立關係之優先度關係資訊6進行管理。於本實施形態中,在資訊處理裝置1與記憶體系統2之間,以NVMe規格將優先度設定得較高之通信資訊係使用優先度較高之虛擬通道來進行收發,以NVMe規格將優先度設定得較低之通信資訊係使用優先度較低虛擬通道來進行收發。
如此,本實施形態之記憶體系統2之控制器7可考慮依據NVMe規格之通信資訊之優先度而執行依據PCIe規格之網路通信(例如應使用之虛擬通道之決定)。
於本實施形態中,可對每個虛擬通道VC0~VC4進行依據NVMe規格之優先度不同之通信資訊之收發。進而,於本實施形態中,自記憶體系統2自資訊處理裝置1接收指令通知起至記憶體系統2向資訊處理裝置1發送完成通知為止,與依據PCIe規格之虛擬通道VC0~VC4建立關係而執行依據NVMe規格之處理。因此,可提高記憶體系統2之QoS。
於本實施形態中,後端7B之處理器15根據優先度而區分使用記憶體16之區域160~164,藉此可對非揮發性記憶體10實現根據優先度之例如寫入或讀取之處理。
於本實施形態中,可使用例如名稱空間等來獨立地管理非揮發性記憶體10之區域100~104,可與虛擬通道VC0~VC4之優先度及名稱空間對應地執行對非揮發性記憶體10之寫入或讀取。
如上所述,於本實施形態之記憶體系統2之控制器7中,可
將使用依據PCIe規格之虛擬通道VC0~VC4之通信、與針對依據NVMe規格之通信資訊之優先順序建立關聯,可提高具備記憶體系統2之網路環境及記憶體系統2中所執行之處理之QoS。
雖對本發明之若干實施形態進行了說明,但該等實施形態係作為示例而提出者,並不意圖限定發明之範圍。該等新穎的實施形態能以其他各種形態實施,且於不脫離發明之主旨之範圍內進行各種省略、置換、變更。該等實施形態或其變化包含在發明之範圍或主旨中,並且包含在申請專利範圍中所記載之發明及其均等範圍內。
本案享受以日本專利申請2019-52380號(申請日:2019年3月20日)為基礎申請之優先權。本案藉由參照該基礎申請而包含基礎申請之全部內容。
1:資訊處理裝置
2:記憶體系統
S401:步驟
S402:步驟
S403:步驟
S404:步驟
S405:步驟
S406:步驟
S407:步驟
S408:步驟
S409:步驟
S410:步驟
S411:步驟
S412:步驟
S413:步驟
Claims (19)
- 一種記憶體系統,其具備:非揮發性記憶體;及控制器,其經由依據快速週邊組件互連規格之包含第1虛擬通道及第2虛擬通道之複數個虛擬通道與外部裝置進行通信,而控制上述非揮發性記憶體;且上述第1虛擬通道係於上述快速週邊組件互連規格中被定義為具有第1優先度,上述第2虛擬通道係於上述快速週邊組件互連規格中被定義為具有低於上述第1優先度之第2優先度;上述控制器係:管理優先度關係資訊,該優先度關係資訊係將上述第1虛擬通道與在不同於上述快速週邊組件互連規格之第2規格中被定義的第3優先度建立關聯,將上述第2虛擬通道與在上述第2規格中被定義為低於上述第3優先度之第4優先度建立關聯,接收與上述第3優先度對應之第1通信資訊或與上述第4優先度對應之第2通信資訊,且因應於接收到上述第1通信資訊,基於接收上述第1通信資訊以前所管理的上述優先度關係資訊,選擇上述第1虛擬通道作為用來對上述外部裝置請求與上述第1通信資訊相關之第3通信資訊的上述複數個虛擬通道中的1個虛擬通道,且使用上述第1虛擬通道,對上述外部裝置請求上述第3通信資訊,因應於接收到上述第2通信資訊,基於接收上述第2通信資訊以前所 管理的上述優先度關係資訊,選擇上述第2虛擬通道作為用來對上述外部裝置請求與上述第2通信資訊相關之第4通信資訊的上述複數個虛擬通道中的1個虛擬通道,且使用上述第2虛擬通道,對上述外部裝置請求上述第4通信資訊。
- 如請求項1之記憶體系統,其中上述第2規格為非揮發性記憶體高速規格。
- 如請求項1之記憶體系統,其中上述控制器根據上述第3優先度與上述第4優先度對上述第3通信資訊與上述第4通信資訊進行處理。
- 如請求項1之記憶體系統,其進而具備用以儲存上述優先度關係資訊之記憶體,且上述控制器係:基於上述記憶體中所儲存之上述優先度關係資訊,對與上述第1虛擬通道對應之上述第3優先度及與上述第2虛擬通道對應之上述第4優先度進行識別。
- 如請求項1之記憶體系統,其中上述第1通信資訊係指令通知,上述第3通信資訊係指令,上述控制器係: 自上述外部裝置接收上述指令通知,基於上述指令通知,識別上述指令與上述第3優先度及上述第4優先度中之哪個優先度建立關聯,基於所識別之上述優先度與上述優先度關係資訊,自上述複數個虛擬通道中決定要使用之虛擬通道,使用上述已決定之虛擬通道向上述外部裝置發送指令請求,使用上述已決定之虛擬通道自上述外部裝置接收與上述指令請求對應之上述指令。
- 如請求項1之記憶體系統,其中與上述第1通信資訊相關之通信資訊係使用上述第1虛擬通道而非使用上述第2虛擬通道於上述控制器與上述外部裝置之間被收發,與上述第2通信資訊相關之通信資訊係使用上述第2虛擬通道而非使用上述第1虛擬通道於上述控制器與上述外部裝置之間被收發。
- 如請求項6之記憶體系統,其中上述第1通信資訊係與第1指令相關之第1指令通知,與上述第1通信資訊相關之上述通信資訊係關於上述第1指令之第1指令請求、上述第1指令、基於上述第1指令之執行而於上述控制器與上述外部裝置之間被收發之第1使用者資料、或關於上述第1指令之第1完成通知,上述第2通信資訊係關於第2指令之第2指令通知,與上述第2通信資訊相關之上述通信資訊係關於上述第2指令之第2指 令請求、上述第2指令、基於上述第2指令之執行而於上述控制器與上述外部裝置之間被收發之第2使用者資料、或關於上述第2指令之第2完成通知。
- 如請求項1之記憶體系統,其中上述控制器係使用上述第1虛擬通道向上述外部裝置發送與上述第1通信資訊相關之第5通信資訊,且使用上述第2虛擬通道向上述外部裝置發送與上述第2通信資訊相關之第6通信資訊。
- 如請求項8之記憶體系統,其中上述第1通信資訊係關於第1指令之第1指令通知,上述第5通信資訊係關於上述第1指令之第1指令請求、基於上述第1指令之執行而自上述控制器向上述外部裝置發送之第1使用者資料、或關於上述第1指令之第1完成通知,上述第2通信資訊係關於第2指令之第2指令通知,上述第6通信資訊係關於上述第2指令之第2指令請求、基於上述第2指令之執行而自上述控制器向上述外部裝置發送之第2使用者資料、或關於上述第2指令之第2完成通知。
- 如請求項8之記憶體系統,其中上述控制器係 使用上述第1虛擬通道自上述外部裝置接收與上述第1通信資訊相關之第7通信資訊,且使用上述第2虛擬通道自上述外部裝置接收與上述第2通信資訊相關之第8通信資訊。
- 如請求項1之記憶體系統,其中上述第1通信資訊係關於第1指令之第1指令通知,上述第3通信資訊係上述第1指令,上述第2通信資訊係關於第2指令之第2指令通知,上述第4通信資訊係上述第2指令。
- 如請求項1之記憶體系統,其中上述控制器係具備與上述複數個虛擬通道分別對應之複數個隊列電路,將自上述外部裝置經由上述第1虛擬通道所接收之上述第3通信資訊儲存於上述複數個隊列電路中之與上述第1虛擬通道對應之第1隊列電路中,將自上述外部裝置經由上述第2虛擬通道所接收之上述第4通信資訊儲存於上述複數個隊列電路中之與上述第2虛擬通道對應之第2隊列電路中,且較上述第2隊列電路中所儲存之上述第4通信資訊而言優先處理上述第1隊列電路中所儲存之上述第3通信資訊。
- 如請求項12之記憶體系統,其中上述控制器係 進而具備與上述複數個虛擬通道分別對應之複數個緩衝記憶體,將自上述外部裝置經由上述第1虛擬通道所接收之上述第3通信資訊儲存於上述複數個緩衝記憶體中之與上述第1虛擬通道對應之第1緩衝記憶體中,其後將上述第1緩衝記憶體中所儲存之上述第3通信資訊儲存於上述第1隊列電路中,將自上述外部裝置經由上述第2虛擬通道所接收之上述第4通信資訊儲存於與上述複數個緩衝記憶體中之與上述第2虛擬通道對應之第2緩衝記憶體中,其後將上述第2緩衝記憶體中所儲存之上述第4通信資訊儲存於上述第2隊列電路中,且較上述第2緩衝記憶體中所儲存之上述第4通信資訊而言優先處理上述第1緩衝記憶體中所儲存之上述第3通信資訊。
- 如請求項13之記憶體系統,其中上述控制器進而具備與上述複數個虛擬通道分別對應之複數個資料傳輸電路、及包括與上述複數個虛擬通道分別對應之記憶體區域之記憶體,且上述複數個資料傳輸電路中之與上述第1虛擬通道對應之第1資料傳輸電路將與上述第1隊列電路中所儲存之上述第3通信資訊相關之第1使用者資料儲存於上述複數個記憶體區域中之與上述第1虛擬通道對應之第1記憶體區域中,上述複數個資料傳輸電路中之與上述第2虛擬通道對應之第2資料傳輸電路將與上述第2隊列電路中所儲存之上述第4通信資訊相關之第2使用者資料儲存於上述複數個記憶體區域中之與上述第2虛擬通道對應之第2記 憶體區域中,上述第1資料傳輸電路較上述第2資料傳輸電路而言優先執行處理。
- 如請求項14之記憶體系統,其中上述控制器進而具備控制器電路,該控制器電路係將上述第1記憶體區域中所儲存之上述第1使用者資料及上述第2記憶體區域中所儲存之上述第2使用者資料寫入至上述非揮發性記憶體中,且較上述第2記憶體區域中所儲存之上述第2使用者資料而言優先處理上述第1記憶體區域中所儲存之上述第1使用者資料。
- 一種記憶體系統,其具備:非揮發性記憶體;及控制器,其經由物理線路與外部裝置連接,且經由上述物理線路中之作為複數個邏輯通信線路之複數個虛擬通道與外部裝置進行通信,而控制上述非揮發性記憶體,上述複數個虛擬通道包含第1虛擬通道及第2虛擬通道;且上述第1虛擬通道係於第1規格中被定義為具有第1優先度,上述第2虛擬通道係於上述第1規格中被定義為具有低於上述第1優先度之第2優先度;上述控制器係:管理優先度關係資訊,該優先度關係資訊係將上述第1虛擬通道與在不同於上述第1規格之第2規格中被定義的第3優先度建立關聯,將上述第 2虛擬通道與在上述第2規格中被定義為低於上述第3優先度之第4優先度建立關聯,接收與上述第3優先度對應之第1通信資訊或與上述第4優先度對應之第2通信資訊,且因應於接收到上述第1通信資訊,基於接收上述第1通信資訊以前所管理的上述優先度關係資訊,選擇上述第1虛擬通道作為用來對上述外部裝置請求與上述第1通信資訊相關之第3通信資訊的上述複數個虛擬通道中的1個虛擬通道,且使用上述第1虛擬通道,對上述外部裝置請求上述第3通信資訊,因應於接收到上述第2通信資訊,基於接收上述第2通信資訊以前所管理的上述優先度關係資訊,選擇上述第2虛擬通道作為用來對上述外部裝置請求與上述第2通信資訊相關之第4通信資訊的上述複數個虛擬通道中的1個虛擬通道,且使用上述第2虛擬通道,對上處外部裝置請求上述第4通信資訊。
- 一種記憶體系統之控制方法,該記憶體系統係具備非揮發性記憶體及控制器,且上述控制器經由依據快速週邊組件互連規格之包含第1虛擬通道及第2虛擬通道之複數個虛擬通道與外部裝置進行通信,而控制上述非揮發性記憶體,且上述第1虛擬通道係於上述快速週邊組件互連規格中被定義為具有第1優先度,上述第2虛擬通道係於上述快速週邊組件互連規格中被定義為具有低於上述第1優先度之第2優先度;上述記憶體系統之控制方法具備: 藉由上述控制器而參照優先度關係資訊,該優先度關係資訊係將上述第1虛擬通道與在不同於上述快速週邊組件互連規格之第2規格中被定義的第3優先度建立關聯,將上述第2虛擬通道與在上述第2規格中被定義為低於上述第3優先度之第4優先度建立關聯,且被記憶於記憶裝置;藉由上述控制器而接收與上述第3優先度對應之第1通信資訊或與上述第2優先度對應之第4通信資訊;因應於接收到上述第1通信資訊,藉由上述控制器,基於接收上述第1通信資訊以前所管理的上述優先度關係資訊,選擇上述第1虛擬通道作為用來對上述外部裝置請求與上述第1通信資訊相關之第3通信資訊的上述複數個虛擬通道中的1個虛擬通道,且使用上述第1虛擬通道,對上述外部裝置請求上述第3通信資訊;及因應於接收到上述第2通信資訊,藉由上述控制器,基於接收上述第2通信資訊以前所管理的上述優先度關係資訊,選擇上述第2虛擬通道作為用來對上述外部裝置請求與上述第2通信資訊相關之第4通信資訊的上述複數個虛擬通道中的1個虛擬通道,且使用上述第2虛擬通道,對上述外部裝置請求上述第4通信資訊。
- 一種記憶體系統,其具備:非揮發性記憶體;及控制器,其經由依據快速週邊組件互連規格之複數個虛擬通道與外部裝置進行通信,而控制上述非揮發性記憶體;且上述控制器係:管理優先度關係資訊,該優先度關係資訊係將第1虛擬通道與第1優 先度建立關聯,將第2虛擬通道與低於上述第1優先度之第2優先度建立關聯,接收與上述第1優先度對應之第1通信資訊或與上述第2優先度對應之第2通信資訊,且於接收到上述第1通信資訊之情形時,基於上述優先度關係資訊,使用上述第1虛擬通道,對上述外部裝置請求與上述第1通信資訊相關之第3通信資訊,於接收到上述第2通信資訊之情形時,基於上述優先度關係資訊,使用上述第2虛擬通道,對上述外部裝置請求與上述第2通信資訊相關之第4通信資訊;其中上述第1通信資訊係指令通知,上述第3通信資訊係指令,上述控制器係:自上述外部裝置接收上述指令通知,基於上述指令通知,識別上述指令與上述第1優先度及上述第2優先度中之哪個優先度建立關聯,基於所識別之上述優先度與上述優先度關係資訊,自上述複數個虛擬通道中決定要使用之虛擬通道,使用上述所決定之虛擬通道向上述外部裝置發送指令請求,使用上述所決定之虛擬通道自上述外部裝置接收與上述指令請求對應之上述指令。
- 如請求項18之記憶體系統,其中 與上述第1通信資訊相關之通信資訊係使用上述第1虛擬通道而不使用上述第2虛擬通道,於上述控制器與上述外部裝置之間被收發,與上述第2通信資訊相關之通信資訊係使用上述第2虛擬通道而不使用上述第1虛擬通道,於上述控制器與上述外部裝置之間被收發。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019052380A JP2020154697A (ja) | 2019-03-20 | 2019-03-20 | メモリシステム及びメモリシステムの制御方法 |
JP2019-052380 | 2019-03-20 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202036296A TW202036296A (zh) | 2020-10-01 |
TWI727394B true TWI727394B (zh) | 2021-05-11 |
Family
ID=72515981
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW108129054A TWI727394B (zh) | 2019-03-20 | 2019-08-15 | 記憶體系統及記憶體系統之控制方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11036659B2 (zh) |
JP (1) | JP2020154697A (zh) |
CN (1) | CN111723030B (zh) |
TW (1) | TWI727394B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112269752B (zh) * | 2020-10-10 | 2023-07-14 | 山东云海国创云计算装备产业创新中心有限公司 | 一种PCIe虚拟通道的数据处理方法及相关装置 |
WO2022098356A1 (en) * | 2020-11-05 | 2022-05-12 | Google Llc | Memory-request priority up-leveling |
US11449447B2 (en) | 2020-12-31 | 2022-09-20 | Texas Instruments Incorporated | Latency and jitter for traffic over PCIe |
CN113704835B (zh) * | 2021-08-20 | 2023-11-10 | 北京计算机技术及应用研究所 | 一种支持加密卡功能的可信存储硬盘 |
CN117555250A (zh) * | 2024-01-02 | 2024-02-13 | 珠海格力电器股份有限公司 | 控制方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130138833A1 (en) * | 2008-01-30 | 2013-05-30 | International Business Machines Corporation | Method, apparatus and system to dynamically manage logical path resources |
US20150169244A1 (en) * | 2013-09-27 | 2015-06-18 | Avalanche Technology, Inc. | Storage processor managing nvme logically addressed solid state disk array |
US20150317266A1 (en) * | 2014-04-30 | 2015-11-05 | David B. Kramer | CONFIGURABLE PERIPHERAL COMPONENENT INTERCONNECT EXPRESS (PCIe) CONTROLLER |
US20150356020A1 (en) * | 2014-06-05 | 2015-12-10 | Sandisk Technologies Inc. | Methods, systems, and computer readable media for solid state drive caching across a host bus |
US20180349026A1 (en) * | 2017-03-24 | 2018-12-06 | Western Digital Technologies, Inc. | System and method for adaptive command fetch aggregation |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3117583A4 (en) | 2014-03-08 | 2017-11-01 | Diamanti, Inc. | Methods and systems for converged networking and storage |
US10635316B2 (en) * | 2014-03-08 | 2020-04-28 | Diamanti, Inc. | Methods and systems for data storage using solid state drives |
US10628353B2 (en) | 2014-03-08 | 2020-04-21 | Diamanti, Inc. | Enabling use of non-volatile media-express (NVMe) over a network |
US10191691B2 (en) | 2015-04-28 | 2019-01-29 | Liqid Inc. | Front-end quality of service differentiation in storage system operations |
US20170075572A1 (en) | 2015-09-11 | 2017-03-16 | Sandisk Technologies Inc. | Extending hardware queues with software queues |
JP2019016063A (ja) * | 2017-07-04 | 2019-01-31 | 株式会社リコー | データ転送装置及びデータ転送方法 |
-
2019
- 2019-03-20 JP JP2019052380A patent/JP2020154697A/ja active Pending
- 2019-08-12 CN CN201910738594.9A patent/CN111723030B/zh active Active
- 2019-08-15 TW TW108129054A patent/TWI727394B/zh active
- 2019-08-30 US US16/557,371 patent/US11036659B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130138833A1 (en) * | 2008-01-30 | 2013-05-30 | International Business Machines Corporation | Method, apparatus and system to dynamically manage logical path resources |
US20150169244A1 (en) * | 2013-09-27 | 2015-06-18 | Avalanche Technology, Inc. | Storage processor managing nvme logically addressed solid state disk array |
US20150317266A1 (en) * | 2014-04-30 | 2015-11-05 | David B. Kramer | CONFIGURABLE PERIPHERAL COMPONENENT INTERCONNECT EXPRESS (PCIe) CONTROLLER |
US20150356020A1 (en) * | 2014-06-05 | 2015-12-10 | Sandisk Technologies Inc. | Methods, systems, and computer readable media for solid state drive caching across a host bus |
US20180349026A1 (en) * | 2017-03-24 | 2018-12-06 | Western Digital Technologies, Inc. | System and method for adaptive command fetch aggregation |
Also Published As
Publication number | Publication date |
---|---|
US20200301859A1 (en) | 2020-09-24 |
CN111723030A (zh) | 2020-09-29 |
TW202036296A (zh) | 2020-10-01 |
CN111723030B (zh) | 2024-03-15 |
US11036659B2 (en) | 2021-06-15 |
JP2020154697A (ja) | 2020-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI727394B (zh) | 記憶體系統及記憶體系統之控制方法 | |
US10331600B1 (en) | Virtual I/O queuing | |
US9557922B2 (en) | System and method for peer-to-peer PCIe storage transfers | |
US9727503B2 (en) | Storage system and server | |
US10007443B1 (en) | Host to device I/O flow | |
US9696942B2 (en) | Accessing remote storage devices using a local bus protocol | |
TWI436217B (zh) | 用於以記憶體裝置及系統控制主機記憶體存取之方法 | |
TW201104440A (en) | Memory controllers, memory systems, solid state drives and methods for processing a number of commands | |
EP3477461A1 (en) | Devices and methods for data storage management | |
EP4220419B1 (en) | Modifying nvme physical region page list pointers and data pointers to facilitate routing of pcie memory requests | |
CN107305504B (zh) | 数据储存装置、其控制单元及其任务排序方法 | |
TW201741887A (zh) | 用於具有可重配置多端口的快捷外設互聯標準儲存系統的服務品質感測輸入輸出管理的方法、系統及設備 | |
US20200364176A1 (en) | Storage system, method, and apparatus for fast io on pcie devices | |
US20150347016A1 (en) | Input/output virtualization (iov) host controller (hc) (iov-hc) of a flash-memory-based storage device | |
JP2021515318A (ja) | NVMeベースのデータ読み取り方法、装置及びシステム | |
US10564898B2 (en) | System and method for storage device management | |
CN111258932A (zh) | 加速ufs协议处理的方法与存储控制器 | |
KR20180126656A (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
KR102526104B1 (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
US9146693B2 (en) | Storage control device, storage system, and storage control method | |
US20150177985A1 (en) | Information processing device | |
US11907120B2 (en) | Computing device for transceiving information via plurality of buses, and operating method of the computing device | |
TWI797022B (zh) | 儲存控制器、計算儲存裝置以及計算儲存裝置的操作方法 | |
US11829641B2 (en) | Storage device and operating method for managing a command queue | |
US11099762B2 (en) | Multi host controller and semiconductor device including the same |