TW202242666A - 資訊處理系統及記憶體系統 - Google Patents

資訊處理系統及記憶體系統 Download PDF

Info

Publication number
TW202242666A
TW202242666A TW110139607A TW110139607A TW202242666A TW 202242666 A TW202242666 A TW 202242666A TW 110139607 A TW110139607 A TW 110139607A TW 110139607 A TW110139607 A TW 110139607A TW 202242666 A TW202242666 A TW 202242666A
Authority
TW
Taiwan
Prior art keywords
host
read data
information
memory system
memory
Prior art date
Application number
TW110139607A
Other languages
English (en)
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 TW202242666A publication Critical patent/TW202242666A/zh

Links

Images

Classifications

    • 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/062Securing storage systems
    • G06F3/0622Securing storage systems in relation to access
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • 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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • 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/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/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • 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
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management

Abstract

一種實施方式提供了一種資訊處理系統和一種記憶體系統有效地處理來自主機的請求。 資訊處理系統包含主機和記憶體系統。該主機的處理器被組態為:確定讀取資料的邏輯位址和該讀取資料的大小;準備除了該讀取資料的該邏輯位址和該讀取資料的該大小之外與該讀取資料相關的第三資訊,該第三資訊是該記憶體系統將該讀取資料傳送到該主機所必需的資訊;以及將請求傳送該讀取資料的命令傳送到該記憶體系統。該記憶體系統的記憶體控制器被組態為回應於接收來自該主機的該命令,將針對該第三資訊的請求傳送到該主機。該主機的該處理器還被組態為回應於接收來自該記憶體系統的該請求,將該第三資訊傳送到該記憶體系統。該記憶體系統的記憶體控制器還被組態為藉由使用該第三資訊,從非揮發性記憶體獲取該讀取資料以及將已獲取的該讀取資料傳送到該主機,而未從該主機接收其他命令。

Description

資訊處理系統及記憶體系統
本文所描述的實施方式總體上係有關於資訊處理系統和記憶體系統。 相關申請案交互參照
本申請案是基於2021年4月20日所提交的第2021-070956號日本專利申請案並主張其優先權;其全部內容都藉由參照的方式併入此處。
連接到主機的記憶體系統處理交易來回應於來自主機的請求。
一種實施方式提供了一種資訊處理系統和一種記憶體系統有效地處理來自主機的請求。 根據本實施方式,一種資訊處理系統包含:包含處理器的主機、和連接到該主機的記憶體系統,該記憶體系統包含非揮發性記憶體和被組態為控制該非揮發性記憶體的記憶體控制器。該主機的該處理器被組態為:確定讀取資料的邏輯位址和該讀取資料的大小;準備除了該讀取資料的該邏輯位址和該讀取資料的該大小之外與該讀取資料相關的第三資訊,該第三資訊是該記憶體系統將該讀取資料傳送到該主機所必需的資訊;以及將請求傳送該讀取資料的命令傳送到該記憶體系統。記憶體系統的記憶體控制器還被組態為回應於接收來自該主機的該命令,將針對該第三資訊的請求傳送到該主機。該主機的該處理器還被組態為回應於接收來自該記憶體系統的該請求,將該第三資訊傳送到該記憶體系統。該記憶體系統的記憶體控制器還被組態為藉由使用該第三資訊,從該非揮發性記憶體獲取該讀取資料以及將已獲取的該讀取資料傳送到該主機,而未從該主機接收其他命令。
下面將參照附隨圖式詳細描述根據實施方式的資訊處理系統。注意,本發明不限於這些實施方式。
(第一實施方式) 圖1是繪示第一實施方式的資訊處理系統5的組態的示例的圖。資訊處理系統5包含記憶體系統1和主機2。記憶體系統1例如是通用快閃儲存(UFS)裝置或固態驅動器(SSD)。以下,以記憶體系統1包含NAND型快閃記憶體(以下稱為NAND記憶體)作為非揮發性記憶體的情況為例進行說明。
主機2例如是中央處理單元(CPU)、個人電腦、可攜式資訊裝置、伺服器、或其他資訊處理裝置。主機2包含例如CPU 21和隨機存取記憶體(RAM)22。CPU 21和RAM 22可以透過匯流排連接。CPU 21例如是至少一個處理器。CPU 21控制主機2的各種組件。RAM 22例如是揮發性記憶體。RAM 22可以是動態隨機存取記憶體(DRAM)或靜態隨機存取記憶體(SRAM)。CPU 21向記憶體系統1傳送存取命令。
記憶體系統1被組態為可連接到主機2。可以採用任何介面標準作為記憶體系統1和主機2之間通訊的介面標準。兩個或多個主機2可以同時連接到記憶體系統1。主機2和記憶體系統1可以透過網路連接。
記憶體系統1向主機2傳送資料和從主機2接收資料來回應於來自主機2的存取命令。
記憶體系統1包含NAND記憶體12和記憶體控制器18。記憶體控制器18例如被組態為單晶片系統(SoC)。記憶體控制器18的各個功能可以藉由專用硬體、執行程式(例如,韌體)的處理器或其組合來實現。記憶體控制器18包含主機介面電路11、NAND介面電路13、RAM 14和處理器15。
處理器15例如是一個或多個處理器。處理器15藉由執行儲存在記憶體系統1中的預定位置中的程式來控制記憶體系統1。程式的儲存位置是自由設計的。例如,程式可以儲存在NAND記憶體12中並在記憶體系統1啟動時加載到RAM 14中。處理器15執行加載在RAM 14中的程式。記憶體系統1的控制包含複數個處理。
主機介面電路11是記憶體系統1與主機2進行通訊的介面裝置。例如,主機介面電路11在處理器15的控制下在主機2和RAM 14之間傳輸使用者資料。
NAND介面電路13是存取NAND記憶體12的介面裝置。NAND介面電路13在處理器15的控制下在RAM 14和NAND記憶體12之間傳輸使用者資料或管理資訊。
NAND記憶體12是起了儲存作用的非揮發性儲存媒體。NAND記憶體12可以包含一個或多個晶片。
RAM 14是用於臨時儲存資料的儲存媒體。作為RAM 14,例如,可以採用比NAND記憶體12更快的儲存媒體的類型。作為RAM 14,例如,可以採用揮發性或非揮發性儲存媒體。RAM 14例如是DRAM、SRAM、鐵電RAM(FeRAM)、磁阻RAM(MRAM)或相變記憶體(PCM)。
通常,在記憶體系統中管理用於關聯邏輯位址和記憶體系統中的非揮發性記憶體的實體位址之邏輯到實體位址轉換表(L2P表)。然而,由於L2P表的大小通常約為記憶體系統的儲存容量的1/500到1/1000,因此將所有L2P表儲存在記憶體系統的記憶體控制器的RAM或其他區域中是不切實際的。因此,L2P表被儲存在諸如NAND記憶體的非揮發性記憶體中並根據需要讀出。這需要延遲並降低記憶體系統的性能(尤其是多個讀取操作)。但是,如果可以將待讀取資料的L2P表的映射資料與讀取命令同時從主機傳送,則可以減少讀取L2P表的延遲,從而提高性能。
主機性能增強器擴展版本1.0(HPB 1.0)標準(其為UFS標準的一部分且於2020年初標準化)定義了主機中的記憶體(例如DRAM)可以儲存L2P表的部分映射資料。符合HPB 1.0標準的主機在傳送讀取命令時,同時將針對讀取資料(即,待讀取的資料)的映射資料傳送到記憶體系統,從而減少了由記憶體系統內部引用L2P表的負擔。這可以加快多個讀取操作,尤其是多個隨機讀取操作。
UFS標準採用客戶端-伺服器協定。這意味著記憶體系統無法自行向主機傳送命令,主機與記憶體系統之間的任何通訊都應由主機發起。因此,針對記憶體系統的操作所需的所有資訊都應包含在由主機所傳送的資訊中。藉由使用例如被稱為UFS協定資訊單元(UPIU)的封包在主機和記憶體系統之間傳送資訊。資訊的一個例子是由主機所傳送的命令。以下,將傳送命令的UPIU稱為命令UPIU(COMMAND UPIU)。
HPB 1.0標準定義該映射資料被包含在命令UPIU中並且從主機被傳送到記憶體系統。然而,不幸的是,被包含在命令UPIU中的映射資料具有定義的大小。例如,在HPB 1.0標準的情況下,規定命令UPIU可以包含8個位元組的該映射資料。該映射資料的大小對應於讀取資料的一個邏輯區塊(例如,4KB)。這將可以藉由其中帶有包含映射資料的一個讀取命令來請求的讀取資料的大小限制為高達4 KB。但是,在許多情況下,來自主機的讀取命令請求讀取大於4 KB的資料。因此,較佳地允許可以藉由其中帶有包含映射資料的一個讀取命令來請求的讀取資料的大小為8 KB或更大。這裡需要注意的是,讀取資料的大小應該是邏輯區塊大小的整數倍(例如4 KB)。
在本實施方式中,記憶體系統1藉由執行基於HPB標準的命令來有效地處理來自主機2的請求。這裡的基於HPB標準的命令是指當前和未來在HPB標準中定義的命令。
圖2是繪示藉由記憶體系統1的記憶體控制器18所執行的功能組態的示例的方塊圖。如圖2所示,記憶體控制器18包含命令接收模組151、獲取模組152和輸出模組153。命令接收模組151接收從主機2傳送的命令。這裡,現在將參考圖3描述UPIU的標頭部分。
圖3是繪示基於HPB標準的UPIU的標頭部分的圖。如圖3所示,標頭包含32個位元組(即位元組0到位元組31)的資訊。
在32位元組的資訊中,位元組0定義了「交易類型(Transaction Type)」。例如,「00000001」的「交易類型」定義該UPIU是將命令從主機傳送到記憶體系統。如上所述,這種類型的UPIU被稱為命令UPIU。「00000010」的「交易類型」定義了這個UPIU是將資料從主機傳送到記憶體系統。這種類型的UPIU稱為資料送出UPIU(DATA OUT UPIU)。「00100010」的「交易類型」定義了這個UPIU是將資料從記憶體系統傳送到主機。這種類型的UPIU稱為資料送入UPIU(DATA IN UPIU)。「00110001」的「交易類型」定義了這個UPIU是從記憶體系統向主機傳送一個準備傳輸(ready-to-transfer)狀態,表示記憶體系統準備好接收來自主機的資料,並指定了記憶體系統一次可以接收的資料的大小。這種類型的UPIU稱為RTT UPIU。「00100001」的「交易類型」定義了這個UPIU是要從記憶體系統向主機傳送一個回覆,表示一個命令的執行在記憶體系統中已經完成。這種類型的UPIU稱為回覆UPIU(RESPONSE UPIU)。
在32位元組的標頭中,位元組1定義了「旗標」欄位。命令UPIU中的「旗標」欄位指示藉由此命令UPIU所傳送的命令的屬性。現在將參考圖4描述由「旗標」欄位指示的命令的屬性。圖4是說明該命令的屬性的圖。如圖4所繪示,「旗標」的8個位元中的一些位元中的每一位元都分配有一個屬性。例如,位元6被分配一個讀取屬性,而位元5被分配一個寫入屬性。
圖5然後繪示了該屬性的設置的示例。如圖5A所示,將位元6設置為「1」並將位元5設置為「0」表示該命令具有讀取屬性。如圖5B所繪示,將位元5設置為「1」並將位元6設置為「0」表示該命令具有寫入屬性。
如圖5C所繪示,將位元6和位元5都設置為「1」表示該命令同時具有讀取屬性和寫入屬性。本實施方式使用同時具有讀取屬性和寫入屬性的命令。本實施方式中使用的具有兩個屬性的命令既請求從主機2到記憶體系統1的資料傳輸(即,回應於寫入屬性),又請求從記憶體系統1到主機2的資料傳輸(即,回應於讀取屬性)。
返回圖2。命令接收模組151獲取包含針對在從主機2所傳送的接收命令中的讀取資料的映射資料。
獲取模組152基於包含在藉由命令接收模組151所獲取的針對讀取資料的映射資料中的實體位址,從NAND記憶體12的位置獲取讀取資料。輸出模組153將藉由獲取模組152所獲取的讀取資料傳送給主機2。
將參照圖6描述包含記憶體系統1和主機2的資訊處理系統5的操作。圖6是繪示第一實施方式的資訊處理系統5的該操作的時序圖。此操作使用從主機2所傳輸的映射資料,藉由一個命令實現8 KB或更大的讀取操作。
這裡,假設主機2(具體地,CPU 21)將記憶體系統1的L2P表儲存在RAM 22中。主機2首先確定讀取資料的邏輯位址和大小,並使用命令UPIU向記憶體系統1傳送命令(步驟S1)。該命令可以指定邏輯位址(例如,起始邏輯位址)和讀取資料的大小。該命令可以藉由起始邏輯位址和讀取資料的大小來指定複數個邏輯位址。該命令同時具有如上所述的讀取屬性和寫入屬性。換言之,在如圖5C所繪示的「旗標」欄位中,位元6和位元5同時都設置為「1」。在接收到該命令時,記憶體系統1的命令接收模組151向主機2傳送RTT UPIU(步驟S2)。記憶體系統1將RTT UPIU傳送至主機2以請求針對讀取資料的映射資料。如上所述,RTT UPIU指定記憶體系統1一次可以接收的資料的大小(這裡是映射資料的大小)。
回應於RTT UPIU,主機2使用資料送出UPIU將針對讀取資料的映射資料傳送到記憶體系統1(步驟S3)。映射資料可以包含複數個條目,每個條目映射NAND記憶體12的一個實體位址和在命令中所指定的複數個邏輯位址中的一個邏輯位址。如果針對讀取資料的整個映射資料超過了RTT UPIU中指定的大小,則主機2劃分整個映射資料,使得要傳送到記憶體系統1的映射資料的大小不超過指定大小並傳送劃分的映射資料。因此,藉由指定記憶體系統1一次可以接收的大小,記憶體系統1可以可靠地從主機2接收針對讀取資料的映射資料。記憶體系統1的命令接收模組151獲取針對讀取資料的映射資料。獲取模組152從藉由映射資料所指示的實體位址的位置獲取讀取資料。輸出模組153使用資料送入UPIU將獲取模組152所獲取的讀取資料傳送給主機2(步驟S4)。記憶體系統1的命令接收模組151使用回覆UPIU傳送回覆以完成處理(步驟S5)。
如上所述,藉由使用一個命令,主機2將針對讀取資料的映射資料傳送到記憶體系統1,然後記憶體系統1從藉由映射資料所指示的實體位址的位置獲取讀取資料,並將該讀取資料傳送給主機2。因此,記憶體系統1不需要存取其自身所管理的L2P表。資訊處理系統5中的一個命令可以有效地處理讀取請求。
這裡,將描述比較示例。根據比較示例的資訊處理系統5a包含記憶體系統1a和主機2a。在比較示例中,使用了用於將映射資料傳送到記憶體系統1a的命令和用於將讀取資料傳送到主機2a的另一個命令。圖7是繪示比較示例的資訊處理系統5a的操作的時序圖。
這裡,假設主機2a將記憶體系統1a的L2P表儲存在其內部RAM中。如圖7所繪示,主機2a使用命令UPIU向記憶體系統1a傳送具有寫入屬性的第一命令(步驟S11)。請注意,第一個命令具有寫入屬性,但沒有讀取屬性。在接收到該命令時,記憶體系統1a向主機2a傳送RTT UPIU(步驟S12)。如上所述,RTT UPIU指定記憶體系統1a可以一次接收的映射資料的大小。回應於RTT UPIU,主機2a使用資料送出UPIU將映射資料傳送到記憶體系統1a(步驟S13)。然後記憶體系統1a使用回覆UPIU傳送回覆以完成第一命令(步驟s14)。
然後,主機2a使用命令UPIU向記憶體系統1a重新傳送具有讀取屬性的第二命令(步驟S15)。記憶體系統1a從藉由在步驟S13中接收到的映射資料所表示的實體位址的位置獲取讀取資料。然後記憶體系統1a使用資料送入UPIU將該讀取資料傳送到主機2a(步驟S16)。記憶體系統1a最終使用回覆UPIU向主機2a傳送回覆以完成第二命令(步驟S17)。
在比較示例的方法中,由於映射資料不是作為命令UPIU的輔助資訊而是作為回應於RTT UPIU的寫入資料來傳送的,所以可以處理讀取資料的較大的大小(這導致映射資料的大小較大)。但是,存在以下問題。
首先,一個讀取請求需要兩個命令,其消耗記憶體系統1a的命令佇列的兩倍。通常,可以排隊的命令數越多,預期的讀取性能就越好。因此,將可以排隊的命令數量減半的影響是顯著的。
其次,UFS標準允許以無序方式執行相同優先級的命令。然而,為了執行如上所述的第一和第二命令,記憶體系統1a需要保證這兩個命令的執行順序。也就是說,記憶體系統1a需要先執行第一命令,再執行第二命令。這樣的要求可能會增加過程的複雜性並降低性能。
另一方面,根據第一實施方式,映射資料的傳送/接收和讀取資料的傳送/接收由一個命令執行。因此,與比較示例相比,可以減少命令佇列的消耗。此外,不需要用於保證命令之間的執行順序的處理,並且可以有效地執行該處理。
(第二實施方式) 在第一實施方式中,已經描述了使用同時具有寫入屬性和讀取屬性的命令來傳送/接收映射資料和讀取資料的情況。在第二實施方式中,這樣的命令用於傳送/接收鑑別資料和讀取資料。
現在將參照圖8描述根據第二實施方式的資訊處理系統5的操作。圖8是繪示第二實施方式的資訊處理系統5的該操作的時序圖。
主機2首先確定讀取資料的邏輯位址和大小,並使用命令UPIU向記憶體系統1傳送命令(步驟S21)。該命令同時具有讀取屬性和寫入屬性。
在接收到該命令時,記憶體系統1的命令接收模組151向主機2傳送RTT UPIU(步驟S22)。記憶體系統1將RTT UPIU傳送到主機2以請求鑑別資料。如上所述,RTT UPIU指定記憶體系統1一次可以接收的資料的大小(這裡是鑑別資料的大小)。
回應於RTT UPIU,主機2使用資料送出UPIU將鑑別資料傳送到記憶體系統1(步驟S23)。這個資料送出UPIU可以包含讀取資料的邏輯位址和大小。例如,這裡的鑑別資料是一次性密碼。記憶體系統1的命令接收模組151獲取鑑別資料。獲取模組152基於邏輯位址讀取該讀取資料,並藉由使用獲取的一次性密碼對該讀取資料進行加密來產生加密的讀取資料。輸出模組153使用資料送入UPIU將該加密的讀取資料傳送到主機2(步驟S24)。記憶體系統1的命令接收模組151使用回覆UPIU傳送回覆以完成處理(步驟S25)。
如上所述,藉由使用一個命令,主機2將鑑別資料傳送到記憶體系統1,並且記憶體系統1使用鑑別資料產生加密的讀取資料,並將該加密的讀取資料傳送到主機2。因此,可以藉由資訊處理系統5中的一個命令有效地處理讀取請求。
這裡,將描述比較示例。根據比較示例的資訊處理系統5b包含記憶體系統1b和主機2b。在比較示例中,使用了用於向記憶體系統1b傳送鑑別資料的命令和用於向主機2b傳送加密的讀取資料的命令。圖9是繪示比較示例的資訊處理系統5b的操作的時序圖。
如圖9所示,主機2b使用命令UPIU向記憶體系統1b傳送具有寫入屬性的第一命令(步驟S31)。請注意,第一個命令具有寫入屬性,但沒有讀取屬性。在接收到該命令時,記憶體系統1b向主機2b傳送RTT UPIU(步驟S32)。回應於RTT UPIU,主機2b使用資料送出UPIU將鑑別資料傳送到記憶體系統1b(步驟S33)。然後記憶體系統1b使用回覆UPIU傳送回覆以完成第一命令(步驟S34)。
然後,主機2b使用命令UPIU向記憶體系統1b重新傳送具有讀取屬性的第二命令(步驟S35)。記憶體系統1b獲取讀取資料並使用在步驟S33中所接收到的鑑別資料對該讀取資料進行加密。然後記憶體系統1b使用資料送入UPIU將該加密的讀取資料傳送到主機2b(步驟S36)。記憶體系統1b最終使用回覆UPIU向主機2b傳送回覆以完成第二命令(步驟S37)。
如圖7所示,圖9所示的過程也存在消耗大量命令佇列的問題和需要保證命令之間的順序的問題。
另一方面,根據第二實施方式,鑑別資料的傳送/接收和加密的讀取資料的傳送/接收由一個命令所執行。因此,與比較示例相比,可以減少命令佇列的消耗。此外,不需要用於保證命令之間的執行順序的處理,並且可以有效地執行該處理。
雖然已經敘述了某些實施方式,但是這些實施方式僅作為實施例呈現,並且不旨在限制本發明的範圍。實際上,這裡敘述的新穎實施方式可以以各種其他形式體現;此外,在不脫離本發明的精神的情況下,可以對這裡敘述的實施方式的形式進行各種省略、替換和改變。所附請求項及其均等物旨在覆蓋落入本發明的範圍和精神內的這些形式或修改。
1:記憶體系統 1a:記憶體系統 1b:記憶體系統 2:主機 2a:主機 2b:主機 5:資訊處理系統 11:主機介面電路 12:NAND記憶體 13:NAND介面電路 14:RAM 15:處理器 18:記憶體控制器 21:CPU 22:RAM 151:命令接收模組 152:獲取模組 153:輸出模組 S1:步驟 S2:步驟 S3:步驟 S4:步驟 S5:步驟 S11:步驟 S12:步驟 S13:步驟 S14:步驟 S15:步驟 S16:步驟 S17:步驟 S21:步驟 S22:步驟 S23:步驟 S24:步驟 S25:步驟 S31:步驟 S32:步驟 S33:步驟 S34:步驟 S35:步驟 S36:步驟 S37:步驟
[圖1]是繪示第一實施方式的資訊處理系統的組態的圖;
[圖2]是繪示藉由根據第一實施方式的記憶體系統的記憶體控制器所執行的功能組態的示例的方塊圖;
[圖3]是繪示在第一實施方式中使用的通用快閃儲存(UFS)協定資訊單元(UPIU)的標頭部分的圖;
[圖4]是用於說明在第一實施方式中所使用的該命令的屬性的圖;
[圖5A]是繪示在第一實施方式中使用的具有讀取屬性的命令的圖;
[圖5B]是繪示在第一實施方式中使用的具有寫屬性的命令的圖;
[圖5C]是繪示在第一實施方式中使用的同時具有讀取屬性和寫屬性的命令的圖;
[圖6]是繪示第一實施方式的資訊處理系統的操作的時序圖;
[圖7]是繪示第一實施方式的比較示例的資訊處理系統的操作的時序圖;
[圖8]是繪示第二實施方式的資訊處理系統的操作的時序圖;以及
[圖9]是繪示第二實施方式的比較示例的資訊處理系統的操作的時序圖。
1:記憶體系統
2:主機
S1:步驟
S2:步驟
S3:步驟
S4:步驟
S5:步驟

Claims (20)

  1. 一種資訊處理系統,包括: 包含處理器的主機;以及 連接到該主機的記憶體系統,該記憶體系統包含非揮發性記憶體和被組態為控制該非揮發性記憶體的記憶體控制器,其中, 該主機的該處理器被組態為: 確定讀取資料的邏輯位址和該讀取資料的大小; 準備除了該讀取資料的該邏輯位址和該讀取資料的該大小之外與該讀取資料相關的第三資訊,該第三資訊是該記憶體系統將該讀取資料傳送到該主機所必需的資訊;以及 將請求傳送該讀取資料的命令傳送到該記憶體系統, 該記憶體系統的該記憶體控制器進一步被組態為: 回應於接收來自該主機的該命令,將針對該第三資訊的請求傳送到該主機, 該主機的該處理器進一步被組態為: 回應於接收來自該記憶體系統的該請求,將該第三資訊傳送到該記憶體系統,以及 該記憶體系統的該記憶體控制器進一步被組態為: 藉由使用該第三資訊,從該非揮發性記憶體獲取該讀取資料以及將已獲取的該讀取資料傳送到該主機,而未從該主機接收其他命令。
  2. 如請求項1之資訊處理系統,其中, 該第三資訊包含映射資料,用於映射該讀取資料的該邏輯位址和儲存該讀取資料的該非揮發性記憶體的位置的實體位址,以及 該記憶體系統的該記憶體控制器被組態為: 從該映射資料中所指定的該非揮發性記憶體的該位置獲取該讀取資料。
  3. 如請求項2之資訊處理系統,其中, 該映射資料包含複數個條目,每個條目映射該非揮發性記憶體的一個實體位址和該命令中所指定的複數個邏輯位址之間的一個邏輯位址。
  4. 如請求項1之資訊處理系統,其中, 該第三資訊包含一次性密碼,以及 該記憶體系統的該記憶體控制器被組態為: 從該非揮發性記憶體獲取該讀取資料,以及藉由使用該一次性密碼將已獲取的該讀取資料進行加密之後傳送該讀取資料。
  5. 如請求項1之資訊處理系統,其中, 該命令是基於符合通用快閃儲存標準的主機性能提升器擴展標準。
  6. 如請求項1之資訊處理系統,其中, 該命令同時具有設定在其中的讀取屬性和寫入屬性。
  7. 如請求項6之資訊處理系統,其中, 該讀取屬性和該寫入屬性被設定在該命令的標頭中。
  8. 如請求項6之資訊處理系統,其中, 指示具有該讀取屬性的位元值和指示具有該寫入屬性的位元值同時被設定在該命令的該標頭中。
  9. 如請求項1之資訊處理系統,其中, 該記憶體系統的該記憶體控制器進一步被組態為在該請求中指定一次可接收的該第三資訊的大小。
  10. 如請求項9之資訊處理系統,其中, 該主機的該處理器進一步被組態為: 當藉由該主機的該處理器所準備的該第三資訊的大小超過該請求中所指定的該大小時,根據該請求中所指定的該大小,劃分該第三資訊以及將已劃分的該第三資訊傳送到該記憶體系統。
  11. 一種可連接到主機的記憶體系統,該記憶體系統包括: 非揮發性記憶體;以及 記憶體控制器,其被組態為: 回應於從該主機接收請求傳送讀取資料的命令,將針對第三資訊的請求傳送到該主機,該第三資訊是除了該讀取資料的邏輯位址和該讀取資料的大小之外與該讀取資料相關,該第三資訊是該記憶體控制器將該讀取資料傳送到該主機所必需的資訊;以及 藉由使用回應於該請求而已從該主機傳送的該第三資訊,從該非揮發性記憶體獲取該讀取資料以及將已獲取的該讀取資料傳送到該主機,而未從該主機接收其他命令。
  12. 如請求項11之記憶體系統,其中, 該第三資訊包含映射資料,用於映射該讀取資料的該邏輯位址和儲存該讀取資料的該非揮發性記憶體的位置的實體位址,以及 該記憶體控制器被組態為: 從該映射資料中所指定的該非揮發性記憶體的該位置獲取該讀取資料。
  13. 如請求項12之記憶體系統,其中, 該映射資料包含複數個條目,每個條目映射該非揮發性記憶體的一個實體位址和該命令中所指定的複數個邏輯位址之間的一個邏輯位址。
  14. 如請求項11之記憶體系統,其中, 該第三資訊包含一次性密碼,以及 該記憶體控制器被組態為: 從該非揮發性記憶體獲取該讀取資料,以及藉由使用該一次性密碼將已獲取的該讀取資料進行加密之後傳送該讀取資料。
  15. 如請求項11之記憶體系統,其中, 該命令是基於符合通用快閃儲存標準的主機性能提升器擴展標準。
  16. 如請求項11之記憶體系統,其中, 該命令同時具有設定在其中的讀取屬性和寫入屬性。
  17. 如請求項16之記憶體系統,其中, 該讀取屬性和該寫入屬性被設定在該命令的標頭中。
  18. 如請求項16之記憶體系統,其中, 指示具有該讀取屬性的位元值和指示具有該寫入屬性的位元值同時被設定在該命令的該標頭中。
  19. 如請求項11之記憶體系統,其中, 該記憶體控制器進一步被組態為在該請求中指定一次可接收的該第三資訊的大小。
  20. 如請求項19之記憶體系統,其中, 當在該主機中所準備的該第三資訊的大小超過在該請求中所指定的該大小時,根據該請求中所指定的該大小,藉由該主機劃分該第三資訊以及已劃分的該第三資訊被傳送到該記憶體系統。
TW110139607A 2021-04-20 2022-02-24 資訊處理系統及記憶體系統 TW202242666A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2021070956A JP2022165569A (ja) 2021-04-20 2021-04-20 メモリシステム、メモリデバイス、およびデータ送信方法
JP2021-070956 2021-04-20
US17/583,019 2022-01-24
US17/583,019 US20220334734A1 (en) 2021-04-20 2022-01-24 Information processing system and memory system

Publications (1)

Publication Number Publication Date
TW202242666A true TW202242666A (zh) 2022-11-01

Family

ID=83602363

Family Applications (1)

Application Number Title Priority Date Filing Date
TW110139607A TW202242666A (zh) 2021-04-20 2022-02-24 資訊處理系統及記憶體系統

Country Status (4)

Country Link
US (1) US20220334734A1 (zh)
JP (1) JP2022165569A (zh)
CN (1) CN115220649A (zh)
TW (1) TW202242666A (zh)

Also Published As

Publication number Publication date
JP2022165569A (ja) 2022-11-01
US20220334734A1 (en) 2022-10-20
CN115220649A (zh) 2022-10-21

Similar Documents

Publication Publication Date Title
US11775455B2 (en) Storage device for interfacing with host and method of operating the host and the storage device
US10423568B2 (en) Apparatus and method for transferring data and commands in a memory management environment
US9934173B1 (en) Pseudo cut-through architecture between non-volatile memory storage and remote hosts over a fabric
US9304896B2 (en) Remote memory ring buffers in a cluster of data processing nodes
EP3608790B1 (en) Modifying nvme physical region page list pointers and data pointers to facilitate routing of pcie memory requests
US20190171392A1 (en) Method of operating storage device capable of reducing write latency
WO2019127018A1 (zh) 存储系统访问方法及装置
US11258887B2 (en) Payload cache
CN112214240A (zh) 主机输出输入命令的执行装置及方法及计算机可读取存储介质
US20240086113A1 (en) Synchronous write method and device, storage system and electronic device
US10678717B2 (en) Chipset with near-data processing engine
US11500800B2 (en) Semiconductor devices including command priority policy management and related systems
US20230305749A1 (en) Nonvolatile storage device, host, and method of controlling nonvolatile storage device
TWI797022B (zh) 儲存控制器、計算儲存裝置以及計算儲存裝置的操作方法
TW202242666A (zh) 資訊處理系統及記憶體系統
US10289550B1 (en) Method and system for dynamic write-back cache sizing in solid state memory storage
KR20210148852A (ko) 다중 원형 큐를 이용하는 호스트 컨트롤러 인터페이스 및 이의 동작 방법
WO2016065613A1 (zh) 访问文件的方法、分布式存储系统和网络设备
JP7363344B2 (ja) メモリ制御装置、および制御方法
US20230342075A1 (en) Memory system and method of controlling transmission of packets
TW202405651A (zh) 計算系統及其操作方法
KR20210043001A (ko) 하이브리드 메모리 시스템 인터페이스