JP6890131B2 - ソリッドステート装置のための多重アドレスレジスタ用の装置および方法 - Google Patents
ソリッドステート装置のための多重アドレスレジスタ用の装置および方法 Download PDFInfo
- Publication number
- JP6890131B2 JP6890131B2 JP2018543174A JP2018543174A JP6890131B2 JP 6890131 B2 JP6890131 B2 JP 6890131B2 JP 2018543174 A JP2018543174 A JP 2018543174A JP 2018543174 A JP2018543174 A JP 2018543174A JP 6890131 B2 JP6890131 B2 JP 6890131B2
- Authority
- JP
- Japan
- Prior art keywords
- cache
- ssd
- bar
- read operation
- memory resource
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 11
- 230000015654 memory Effects 0.000 claims description 152
- 239000000872 buffer Substances 0.000 claims description 30
- 230000009471 action Effects 0.000 claims description 9
- 238000012545 processing Methods 0.000 claims description 9
- 239000007787 solid Substances 0.000 claims description 7
- 238000012546 transfer Methods 0.000 claims description 7
- 230000006399 behavior Effects 0.000 claims description 3
- 238000003491 array Methods 0.000 description 18
- 230000002093 peripheral effect Effects 0.000 description 12
- 238000013507 mapping Methods 0.000 description 8
- 238000013459 approach Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000005192 partition Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/0284—Multiple user address space allocation, e.g. using different base addresses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0888—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using selective caching, e.g. bypass
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0661—Format or protocol conversion arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0685—Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
- G06F9/3012—Organisation of register space, e.g. banked or distributed register file
- G06F9/3013—Organisation of register space, e.g. banked or distributed register file according to data content, e.g. floating-point registers, address registers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/34—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes
- G06F9/35—Indirect addressing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
- G06F2212/1024—Latency reduction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1048—Scalability
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/21—Employing a record carrier using a specific recording technology
- G06F2212/214—Solid state disk
-
- 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)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
本開示は、ソリッドステート装置(SSD)のための多重アドレスレジスタに関する装置および方法を含む。例示的な装置は、各々が同じメモリリソース中のデータ格納用の同じアドレスを含む、複数のベースアドレスレジスタ(BAR)を含むコントローラ、および同じメモリリソースを含むSSDを含む。
Claims (15)
- 各々が同じメモリリソース中のデータ格納用の同じアドレスを含む複数のベースアドレスレジスタ(BAR)を含むコントローラと、前記同じメモリリソースとを含むソリッドステート装置(SSD)と、
前記SSDに含まれる又は前記SSDの外のSSDドライバと
を含み、
前記SSDドライバは、前記コントローラと組み合わせて、
書き込み動作の実行を有効にするために、前記書き込み動作は選択された第1のキャッシュ属性を有する第1のBARに割り当てられ、
前記書き込み動作の実行中、前記書き込み動作のデータ値は前記SSDに転送される前にプロセッサのローカルな特定のバッファに格納のために割り当てられ、前記特定のバッファは前記選択された第1のキャッシュ属性によって制御され、
読み出し動作の実行を有効にするために、前記読み出し動作は選択された第2のキャッシュ属性を有する第2のBARに割り当てられ、
前記読み出し動作の実行中、前記読み出し動作のデータ値は前記SSDからの転送の後に前記プロセッサのローカルな特定のキャッシュに格納のために割り当てられ、前記特定のキャッシュは前記選択された第2のキャッシュ属性によって制御されることを実施するように構成される、
メモリ動作を実行するための装置。 - 前記SSDドライバは、複数のタイプの動作のうちのいずれの1つが要求されたかの判定によって、前記複数のBARの1つに動作を割り当てるように構成される、
請求項1に記載の装置。 - 前記複数のBARの各々は異なるキャッシュ属性を含み、
各々のBARの前記異なるキャッシュ属性は要求された動作のタイプに対応する、
請求項1〜2のいずれか1項に記載の装置。 - 前記複数のBARを含む前記コントローラは前記SSDに配置される、
請求項1〜3のいずれか1項に記載の装置。 - 前記SSDドライバは、書き込み動作又は前記読み出し動作が実施される場合に前記コントローラに結合し、
前記SSDドライバは、前記コントローラと組み合わせて、
前記書き込み動作の実行を有効にするために前記選択された第1のキャッシュ属性を有する選択された第1のBARに、書き込み動作タイプが割り当てられ、
前記読み出し動作の実行を有効にするために選択された第2のキャッシュ属性を有する選択された第2のBARに、読み出し動作タイプが割り当てられる
ことを実施するように構成され、
前記第1のキャッシュ属性は前記第2のキャッシュ属性と異なる、
請求項1〜4のいずれか1項に記載の装置。 - 前記SSDドライバは、
動作の実行のための要求を受信し、
前記要求された動作は前記読み出し動作タイプと前記書き込み動作タイプのいずれであるかを判定し、
前記判定された動作タイプで使用に適するようなBARを前記複数のBARから選択する
ように構成される請求項1〜5のいずれか1項に記載の装置。 - 前記複数のBARは、読み出し動作又は書き込み動作の何れかの動作タイプに応じて選択的に同じメモリリソースに結合される、
請求項1〜6のいずれか1項に記載の装置。 - 2次メモリリソース上で読み出し動作又は書き込み動作が実施される場合に中央処理装置(CPU)およびホストコンピューティング装置に設置されたソリッドステート装置(SSD)ドライバに結合される1次メモリリソースを含む前記ホストコンピューティング装置と、
各々が同じ2次メモリリソース中へのデータ格納用の同じアドレスを含む複数のベースアドレスレジスタ(BAR)を含むように構成され、SSDに設置されたコントローラであって、前記書き込み動作又は前記読み出し動作が実施される場合に前記SSDドライバに選択的に結合される前記コントローラと、前記同じ2次メモリリソースとを含む前記SSDと
を含み、
前記複数のBARは、読み出し動作又は書き込み動作の何れかの動作タイプに応じて選択的に前記同じ2次メモリリソースに結合され、
前記SSDドライバは、前記コントローラと組み合わせて、
読み出し動作の実行を有効にするために、前記読み出し動作は選択された第1のキャッシュ属性を有する第1のBARに割り当てられ、
前記読み出し動作の実行中、前記CPUのローカルな特定のキャッシュは、前記CPUによる使用のために前記同じ2次メモリリソースから転送されたデータ値の格納に割り当てられ、前記特定のキャッシュは前記選択された第1のキャッシュ属性によって制御され、
書き込み動作の実行を有効にするために、前記書き込み動作は選択された第2のキャッシュ属性を有する第2のBARに割り当てられ、
前記書き込み動作の実行中、前記CPUに関連付けられた特定のバッファは、前記同じ2次メモリリソースに転送されるデータ値の格納のために前記CPUによる使用に割り当てられ、前記特定のバッファは前記選択された第2のキャッシュ属性によって制御される
ことを実施するように構成され、
前記第1のBARの前記選択された第1のキャッシュ属性、および前記第2のBARの前記選択された第2のキャッシュ属性は、異なるキャッシュ属性タイプである、
メモリ動作の実行用のシステム。 - 揮発性メモリリソースが前記1次メモリリソースであり、
不揮発性メモリリソースが前記同じ2次メモリリソースである、
請求項8に記載のシステム。 - 前記ホストコンピューティング装置中の前記特定のキャッシュは前記SSDドライバによって、前記同じ2次メモリリソースから転送されたデータ値の格納に割り当てられ、
前記特定のキャッシュは、有効にされた第1のキャッシュ属性によって制御され、
前記有効にされた第1のキャッシュ属性は前記読み出し動作のためのライトプロテクトである、
請求項8〜9の何れか1項に記載のシステム。 - 前記ホストコンピューティング装置中の前記特定のキャッシュは前記SSDドライバによって、前記読み出し動作の実行中に前記CPUによる使用のために選択され、
前記特定のキャッシュは、前記CPUの一部である内部キャッシュおよび前記CPUの外部のキャッシュから選択される、
請求項8〜10の何れか1項に記載のシステム。 - 前記ホストコンピューティング装置中の前記特定のバッファは前記SSDドライバによって、前記同じ2次メモリリソースに転送されるデータ値の格納用に割り当てられ、
前記特定のバッファは前記第2のキャッシュ属性として有効にされたライトコンバイニングによって制御される、
請求項8〜11の何れか1項に記載のシステム。 - ソリッドステート装置(SSD)に含まれる又は前記SSDの外のSSDドライバが前記SSDに含まれるコントローラと組み合わせてメモリ装置を動作させるための方法であって、
2次メモリリソース中のデータ格納用のアドレスを第1のベースアドレスレジスタ(BAR)にマッピングすることであって、当該マッピングされた前記2次メモリリソースは読み出し動作要求用に第1のキャッシュ属性が設定されることと、
前記第1のキャッシュ属性に設定された前記マッピングされたアドレスを含む前記第1のBARに、要求された読み出し動作を割り当てることにより、前記要求された前記読み出し動作の実行を有効にすることと、
前記有効にされた読み出し動作の実行中、前記SSDからの転送の後に、前記読み出し動作のデータ値を格納のためにホストプロセッサのローカルな特定のキャッシュに割り当てることであって、前記特定のキャッシュは有効にされた第1のキャッシュ属性によって制御されることと、
同じ2次メモリリソース中のデータ格納用のアドレスを第2のBARにマッピングすることであって、当該マッピングされた前記同じ2次メモリリソースは書き込み動作要求用に第2のキャッシュ属性が設定されることと、
前記第2のキャッシュ属性に設定された前記マッピングされたアドレスを含む前記第2のBARに、要求された書き込み動作を割り当てることにより、前記要求された前記書き込み動作の実行を有効にすることと、
前記有効にされた書き込み動作の実行中、前記SSDへの転送の前に、前記書き込み動作のデータ値を格納のために前記ホストプロセッサのローカルな特定のバッファに割り当てることであって、前記特定のバッファは有効にされた第2のキャッシュ属性によって制御されることと
を含み、
前記SSDは前記第1のBAR及び前記第2のBARを含み、
前記有効にされた第1または第2のキャッシュ属性は、選択されていないBARに割り当てられたキャッシュ属性とは異なる、
メモリ装置を動作させるための方法。 - 前記SSDドライバは、前記第1のキャッシュ属性としてライトプロテクトに設定された前記マッピングされたアドレスを含む前記第1のBARに、前記要求された読み出し動作を割り当て、
前記SSDドライバは、前記第2のキャッシュ属性としてライトコンバイニングに設定された前記マッピングされたアドレスを含む前記第2のBARに、前記要求された書き込み動作を割り当てる
ことをさらに含む、請求項13に記載の方法。 - SSDドライバが、前記マッピングされたアドレスを含む前記第1のBARと共に使用するために、前記要求された読み出し動作のために割り当てたライトプロテクトの第1のキャッシュ属性を有効にすることと、
SSDドライバが、前記マッピングされたアドレスを含む前記第2のBARと共に使用するために、前記要求された書き込み動作のために割り当てたライトコンバイニングの第2のキャッシュ属性を有効にすること、
をさらに含み、
前記第1のBARと共に使用するための前記第1のキャッシュ属性と、前記第2のBARと共に使用するための前記第2のキャッシュ属性は異なるキャッシュ属性タイプである、
請求項13〜14のいずれか1項に記載の方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/047,000 | 2016-02-18 | ||
US15/047,000 US10140057B2 (en) | 2016-02-18 | 2016-02-18 | Apparatuses and methods for multiple address registers for a solid state device |
PCT/US2017/017170 WO2017142785A1 (en) | 2016-02-18 | 2017-02-09 | Apparatuses and methods for multiple address registers for a solid state device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019509554A JP2019509554A (ja) | 2019-04-04 |
JP6890131B2 true JP6890131B2 (ja) | 2021-06-18 |
Family
ID=59626302
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018543174A Active JP6890131B2 (ja) | 2016-02-18 | 2017-02-09 | ソリッドステート装置のための多重アドレスレジスタ用の装置および方法 |
Country Status (7)
Country | Link |
---|---|
US (2) | US10140057B2 (ja) |
EP (1) | EP3417377B1 (ja) |
JP (1) | JP6890131B2 (ja) |
KR (1) | KR102142509B1 (ja) |
CN (1) | CN108701085B (ja) |
TW (1) | TWI631467B (ja) |
WO (1) | WO2017142785A1 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019046042A (ja) * | 2017-08-31 | 2019-03-22 | 富士通株式会社 | 伝送装置および伝送方法 |
US10705747B2 (en) | 2018-03-21 | 2020-07-07 | Micron Technology, Inc. | Latency-based storage in a hybrid memory system |
US11030144B2 (en) * | 2018-12-14 | 2021-06-08 | Texas Instruments Incorporated | Peripheral component interconnect (PCI) backplane connectivity system on chip (SoC) |
KR20220064230A (ko) | 2020-11-11 | 2022-05-18 | 삼성전자주식회사 | 다중 프로토콜에 기초하여 메모리에 액세스하기 위한 시스템, 장치 및 방법 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5535349A (en) * | 1994-06-09 | 1996-07-09 | Motorola, Inc. | Data processing system and method for providing chip selects to peripheral devices |
US6170047B1 (en) * | 1994-11-16 | 2001-01-02 | Interactive Silicon, Inc. | System and method for managing system memory and/or non-volatile memory using a memory controller with integrated compression and decompression capabilities |
KR100727919B1 (ko) * | 2003-02-03 | 2007-06-14 | 삼성전자주식회사 | 광정보 저장매체 |
US20060026371A1 (en) * | 2004-07-30 | 2006-02-02 | Chrysos George Z | Method and apparatus for implementing memory order models with order vectors |
US7492723B2 (en) * | 2005-07-07 | 2009-02-17 | International Business Machines Corporation | Mechanism to virtualize all address spaces in shared I/O fabrics |
US7752360B2 (en) | 2007-05-16 | 2010-07-06 | Nuova Systems, Inc. | Method and system to map virtual PCIe I/O devices and resources to a standard I/O bus |
US9015446B2 (en) * | 2008-12-10 | 2015-04-21 | Nvidia Corporation | Chipset support for non-uniform memory access among heterogeneous processing units |
US9003159B2 (en) * | 2009-10-05 | 2015-04-07 | Marvell World Trade Ltd. | Data caching in non-volatile memory |
US9514838B2 (en) * | 2011-05-31 | 2016-12-06 | Micron Technology, Inc. | Apparatus including memory system controllers and related methods for memory management using block tables |
US8621113B2 (en) * | 2011-05-31 | 2013-12-31 | Micron Technology, Inc. | Apparatus including host bus adapter and serial attachment programming compliant device and related methods |
US8645594B2 (en) | 2012-06-29 | 2014-02-04 | Intel Corporation | Driver-assisted base address register mapping |
JP2014063497A (ja) * | 2012-09-21 | 2014-04-10 | Plx Technology Inc | 論理装置の機能を有するpciエクスプレススイッチ |
US9256384B2 (en) * | 2013-02-04 | 2016-02-09 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Method and system for reducing write latency in a data storage system by using a command-push model |
US9311266B2 (en) | 2013-06-14 | 2016-04-12 | National Instruments Corporation | Hidden base address register programming in peripheral component interconnect express buses |
KR101842621B1 (ko) | 2013-09-26 | 2018-03-27 | 인텔 코포레이션 | 지속 메모리에 대한 블록 저장 애퍼처들 |
ES2628328T3 (es) * | 2013-10-29 | 2017-08-02 | Huawei Technologies Co., Ltd. | Sistema de procesamiento de datos y método de procesamiento de datos |
KR20150124032A (ko) * | 2014-04-25 | 2015-11-05 | 에스케이하이닉스 주식회사 | 전자 장치 |
KR102238650B1 (ko) * | 2014-04-30 | 2021-04-09 | 삼성전자주식회사 | 저장 장치, 상기 저장 장치를 포함하는 컴퓨팅 시스템 및 상기 저장 장치의 동작 방법 |
US10120832B2 (en) * | 2014-05-27 | 2018-11-06 | Mellanox Technologies, Ltd. | Direct access to local memory in a PCI-E device |
US9507722B2 (en) * | 2014-06-05 | 2016-11-29 | Sandisk Technologies Llc | Methods, systems, and computer readable media for solid state drive caching across a host bus |
-
2016
- 2016-02-18 US US15/047,000 patent/US10140057B2/en active Active
-
2017
- 2017-02-09 EP EP17753662.0A patent/EP3417377B1/en active Active
- 2017-02-09 KR KR1020187026595A patent/KR102142509B1/ko active IP Right Grant
- 2017-02-09 CN CN201780012201.5A patent/CN108701085B/zh active Active
- 2017-02-09 JP JP2018543174A patent/JP6890131B2/ja active Active
- 2017-02-09 WO PCT/US2017/017170 patent/WO2017142785A1/en active Application Filing
- 2017-02-18 TW TW106105443A patent/TWI631467B/zh active
-
2018
- 2018-10-30 US US16/174,631 patent/US10452313B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
WO2017142785A1 (en) | 2017-08-24 |
TWI631467B (zh) | 2018-08-01 |
TW201732616A (zh) | 2017-09-16 |
US20170242623A1 (en) | 2017-08-24 |
CN108701085B (zh) | 2022-06-21 |
US10452313B2 (en) | 2019-10-22 |
US10140057B2 (en) | 2018-11-27 |
JP2019509554A (ja) | 2019-04-04 |
EP3417377B1 (en) | 2024-04-03 |
CN108701085A (zh) | 2018-10-23 |
KR102142509B1 (ko) | 2020-08-10 |
KR20180105265A (ko) | 2018-09-27 |
US20190065104A1 (en) | 2019-02-28 |
EP3417377A1 (en) | 2018-12-26 |
EP3417377A4 (en) | 2020-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI578156B (zh) | 非依電性隨機存取記憶磁碟 | |
US10379782B2 (en) | Host managed solid state drivecaching using dynamic write acceleration | |
KR100797325B1 (ko) | 통합 메모리 및 컨트롤러 | |
US8977806B1 (en) | Hybrid memory module | |
JP6434168B2 (ja) | スイッチへのアドレスキャッシュ | |
JP6890131B2 (ja) | ソリッドステート装置のための多重アドレスレジスタ用の装置および方法 | |
KR102707683B1 (ko) | 메모리 채널의 소프트웨어 트레이닝을 수행하는 전자 장치 및 그것의 메모리 채널 트레이닝 방법 | |
US9396141B2 (en) | Memory system and information processing device by which data is written and read in response to commands from a host | |
KR102688570B1 (ko) | 메모리 시스템 및 이의 동작 방법 | |
US10866921B2 (en) | Apparatuses and methods for an operating system cache in a solid state device | |
KR20220041937A (ko) | 메모리 유형에 대한 페이지 테이블 후크 | |
CN108228470B (zh) | 一种处理向nvm写入数据的写命令的方法和设备 | |
US20190087125A1 (en) | Memory system and control method of memory system | |
US9317312B2 (en) | Computer and memory management method | |
KR20220060548A (ko) | 데이터가 저장된 메모리 디바이스를 식별하기 위해 저장된 메타데이터 액세싱 | |
US20180314467A1 (en) | Storage device, computing system including the storage device, and method of operating the storage device | |
US20170083444A1 (en) | Configuring fast memory as cache for slow memory | |
US10769074B2 (en) | Computer memory content movement | |
TW201941068A (zh) | 對儲存媒體的同步記憶體匯流排存取 | |
EP3317769A1 (en) | Advance cache allocator | |
US10216685B1 (en) | Memory modules with nonvolatile storage and rapid, sustained transfer rates | |
JP7242928B2 (ja) | ストレージシステム及び入出力制御方法 | |
CN114258534B (zh) | 阶层式存储器系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20181010 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20181010 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190927 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20191105 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200115 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200721 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200925 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20200925 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210330 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210416 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20210511 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210524 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6890131 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |