JP2015041281A - ストレージ装置 - Google Patents
ストレージ装置 Download PDFInfo
- Publication number
- JP2015041281A JP2015041281A JP2013172500A JP2013172500A JP2015041281A JP 2015041281 A JP2015041281 A JP 2015041281A JP 2013172500 A JP2013172500 A JP 2013172500A JP 2013172500 A JP2013172500 A JP 2013172500A JP 2015041281 A JP2015041281 A JP 2015041281A
- Authority
- JP
- Japan
- Prior art keywords
- memory node
- command
- packet
- memory
- connection unit
- 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.)
- Granted
Links
- 230000015654 memory Effects 0.000 claims abstract description 472
- 238000012546 transfer Methods 0.000 claims abstract description 69
- 230000004044 response Effects 0.000 claims description 66
- 238000000034 method Methods 0.000 claims description 55
- 230000008569 process Effects 0.000 claims description 41
- 230000006866 deterioration Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 45
- 230000005540 biological transmission Effects 0.000 description 27
- 238000004364 calculation method Methods 0.000 description 26
- 238000012545 processing Methods 0.000 description 15
- 230000006854 communication Effects 0.000 description 14
- 238000004891 communication Methods 0.000 description 14
- 238000013500 data storage Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 11
- 229920002939 poly(N,N-dimethylacrylamides) Polymers 0.000 description 11
- 230000007423 decrease Effects 0.000 description 8
- 238000001514 detection method Methods 0.000 description 6
- 208000011580 syndromic disease Diseases 0.000 description 6
- 230000010365 information processing Effects 0.000 description 5
- 238000012360 testing method Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 230000005856 abnormality Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 3
- 230000003247 decreasing effect Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 239000000758 substrate Substances 0.000 description 2
- LHMQDVIHBXWNII-UHFFFAOYSA-N 3-amino-4-methoxy-n-phenylbenzamide Chemical compound C1=C(N)C(OC)=CC=C1C(=O)NC1=CC=CC=C1 LHMQDVIHBXWNII-UHFFFAOYSA-N 0.000 description 1
- 241001522296 Erithacus rubecula Species 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000007175 bidirectional communication Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/24569—Query processing with adaptation to specific hardware, e.g. adapted for using GPUs or SSDs
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/167—Interprocessor communication using a common memory, e.g. mailbox
-
- 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
- G06F3/0605—Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
-
- 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/0629—Configuration or reconfiguration of storage systems
- G06F3/0635—Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Bus Control (AREA)
- Memory System (AREA)
Abstract
【解決手段】ストレージ装置は、複数のメモリノードと、コネクションユニットとを備える。コネクションユニットは、複数のメモリノードのうちの一を宛先とした命令を送信する。コネクションユニットは、寿命を命令に付加して送信する。複数のメモリノードの夫々は、命令を受信したとき、命令の宛先が自メモリノードではない場合、命令に付加された寿命を減算する。そして、寿命を減算した後のコネクションユニットは、減算後の寿命が所定値よりも小さい場合には命令を破棄する。また、寿命を減算した後のコネクションユニットは、減算後の寿命が前記所定値よりも大きい場合には命令に付加された寿命を前記減算後の寿命で書き換えて、寿命を書き換えた後の命令を自メモリノードに接続されている他のメモリノードに転送する。
【選択図】図9
Description
図1は、第1の実施形態に係るストレージ装置の構成例を示す図である。ストレージ装置1は、1以上のアプリケーションサーバ2に接続されている。アプリケーションサーバ2は、クライアント端末(図示せず)とネットワークを介して接続されている。アプリケーションサーバ2は、ストレージ装置1に対する要求をネットワークを介して受信することができる。アプリケーションサーバ2は、クライアント端末から受信した要求をストレージ装置1に転送する。要求とは、例えば、データを書き込んだりデータを読み出したりする要求を含む。図1に示されたように本ストレージ装置1は、独立した複数のスイッチ15、ロードバランサ16を持つことができる。ストレージ装置の規模拡大につれてスイッチ15、およびロードバランサ16の性能向上が不要となっており、スケールアウトに適した構成となっている。
本実施例では、構成要素がスイッチ15とロードバランサ16の2つある場合を示しているが、スイッチ15にロードバランサ16の機能を内蔵させ、ロードバランサ16を設けない構成であってもかまわない。
第2の実施形態では、データを書き込む要求がストレージ装置1に入力された場合を考える。図12は、データを書き込む複数の要求がストレージ装置1に入力された場合を説明する図である。これらの要求に応じて、コネクションユニット14によって、ライトコマンドを備える複数の異なるパケットが生成される。これらの要求が同一箇所にデータを書き込む書き込み要求であった場合、生成された夫々のパケットは、同一の宛先のメモリノード11に到達する。ここで、これらのパケットは、同一のコネクションユニット14によって生成されるとは限らない。また、これらのパケットは、夫々別個にルーティングされる。したがって、これらのパケットは、ストレージ装置1に書き込み要求が入力された順番で宛先のメモリノード11に到達するとは限らない。宛先のメモリノード11の到達順序によっては、後に書き込み要求されたデータを先に書き込み要求されたデータで上書きしてしまう事態が発生する。
複数のハードディスク装置を備えるディスクアレイ装置が知られている。このようなディスクアレイ装置にデータを分散格納する技術として、RAID(Redundant Array of Independent Disks)と呼ばれる技術が知られている。RAIDによれば、複数のハードディスク装置が1つの記憶装置として扱われることによって、アクセス処理のパフォーマンスおよび信頼性の向上が実現される。
図19は、第4の実施形態のパケットの構成を説明する図である。第4の実施形態のパケットは、先頭および末尾に「Signature」を備える。先頭の「Signature」はシリアルデータの受信開始のために使用される。末尾の「Signature」は、送信側のエラー情報(バッファのパリティチェック)を伝える。パリティエラーが見つかった場合、再送処理が行われる。
このコマンドは、不揮発メモリ300から読み出しを行うためのコマンドである。引数のうちの「page」はページ番号、「開始col.」は読み出しを開始するカラム、「終了col.」は読み出しを終了するカラムを表す。メモリノード11は、データを読み出して、読み出したデータに含まれるECC符号に基づいてECC復号化を行い、ECC復号化後、データを応答のパケットのペイロードに記録してそのパケットを送信する。
このコマンドは、不揮発メモリ300に書き込みを行うためのコマンドである。「Raw_Write」は、「Raw_Read」と同様に、ページおよびカラムを指定するための引数を備える。ただし、「Raw_Write」の場合、引数は、書き込み位置を指定するためのものである。ライトデータはペイロードに記録される。ライトデータのデータ長が短いためにペイロードに余剰の部分が生じる場合には、余剰の部分に「10」の値を表すビット列が繰り返し記録される。メモリノード11は、ライトデータに含まれるECC符号の復号化を行い、復号化後、ライトデータの書き込みを実行する。そして、メモリノード11は、書き込みの成否を応答のパケットのヘッダに記録してそのパケットを送信する。
このコマンドは、不揮発メモリ300に格納された内容の消去を行うためのコマンドである。消去対象のブロックは、引数である「page」により指定される。即ち、「page」により指定されたページを含むブロックが消去対象である。メモリノード11は、消去を実行後、消去の成否を応答のパケットのヘッダに記録してそのヘッダを送信する。
このコマンドは、L2Pテーブル301の読み出しを行うためのコマンドである。引数である「LA」は、論理アドレスを表す。メモリノード11は、L2Pテーブル301を参照することによって「LA」に対応する物理アドレス(ブロックアドレス)を読み出して、読み出したブロックアドレスを応答のパケットのペイロードに記録して、そのパケットを送信する。
このコマンドは、L2Pテーブル301に対する書き込みを行うためのコマンドである。「L2P_Write」の引数に含まれる「LA」は、論理アドレスを表す。「key1」および「key2」は夫々例えば2byteのサイズを有する。メモリノード11は、L2Pテーブル301を参照することによって「LA」に対応するブロックアドレスを読み出す。そして、メモリノード11は、読み出したブロックアドレスと引数に含まれる「key1」の値とを比較し、両者が一致した場合には、「LA」に対応するブロックアドレスを引数に含まれる「key2」の値で上書きする。そして、メモリノード11は、上書き完了後、成功した旨の情報を応答のパケットのヘッダに記録してそのパケットを送信する。両者が一致しない場合には、メモリノード11は、失敗した旨の情報を応答のパケットのヘッダに記録してそのパケットを送信する。
このコマンドは、GCテーブルの読み出しを行うためのコマンドである。メモリノード11は、GCテーブルに登録された全てのブロックアドレスを、登録された順番が識別可能な形式で読み出して、読み出した全てのブロックアドレスを応答のパケットのペイロードに記録して、そのパケットを送信する。
このコマンドは、GCテーブルに新たにエントリを登録するためのコマンドである。引数である「BLK」は、ブロックの先頭の物理アドレスを表す。メモリノード11は、「BLK」の値をGCテーブルの末尾に付加する。そして、メモリノード11は、付加の成否を応答のパケットのヘッダに記録してそのヘッダを送信する。
このコマンドは、GCテーブルからブロックアドレスを取得するためのコマンドである。メモリノード11は、GCテーブルの先頭に登録されているブロックアドレスを読み出す。そして、メモリノード11は、読み出したブロックアドレスを応答のパケットのヘッダに記録して、そのパケットを送信する。その後、メモリノード11は、GCテーブルに登録されている夫々のエントリを1つずつ先頭方向にシフトせしめる。
このコマンドは、L2Pテーブル301を用いて不揮発メモリ300からの読み出しを行うためのコマンドである。引数に含まれる「LA1」および「LA2」は、論理アドレスを表す。引数に含まれる「key」は、2Bのサイズを有する。引数に含まれる「BLK内page」は、1つのブロックの範囲内でページを特定する物理アドレスを表す。メモリノード11は、L2Pテーブル301を参照することによって「LA1」に対応するブロックアドレスを読み出す。そして、メモリノード11は、読み出したブロックアドレスと引数に含まれる「key」の値とを比較し、両者が一致した場合には、次に説明する読み出し処理を実行する。両者が一致しない場合には、メモリノード11は、読み出し処理を実行せずに、エラー情報1を応答のパケットのヘッダに記録してそのパケットを送信する。
このコマンドは、L2Pテーブル301を用いて不揮発メモリ300に対する書き込みを行うためのコマンドである。メモリノード11は、L2Pテーブル301を参照することによって「LA1」に対応するブロックアドレスを読み出す。そして、メモリノード11は、読み出したブロックアドレスと引数に含まれる「key」の値とを比較し、両者が一致した場合には、次に説明する書き込み処理を実行する。両者が一致しない場合には、メモリノード11は、書き込み処理を実行せずに、エラー情報を応答のパケットのヘッダに記録してそのパケットを送信する。
このコマンドは、不揮発メモリ300に格納された内容の消去をL2Pテーブル301を用いて行うためのコマンドである。L2Pテーブル301を参照することによって「LA1」に対応するブロックアドレスを読み出す。そして、メモリノード11は、読み出したブロックアドレスと引数に含まれる「key」の値とを比較し、両者が一致した場合には、次に説明する消去処理を実行する。両者が一致しない場合には、メモリノード11は、消去処理を実行せずに、エラー情報1を応答のパケットのヘッダに記録してそのパケットを送信する。
このコマンドは、不揮発メモリ300の状態をアクセス可能な状態(正常動作状態)に遷移せしめるためのコマンドである。メモリノード11は、不揮発メモリ300の状態を正常動作状態に遷移せしめるとともに、メモリノード11に具備されるLEDに正常動作状態を表示する。なお、LEDの表示に関し、点灯状態を以って正常動作状態を表示するようにしてもよいし、消灯状態を以って正常動作状態を表示するようにしてもよい。
このコマンドは、不揮発メモリ300の状態をアクセス不能な状態に遷移せしめるためのコマンドである。アクセス不能な状態とは、不揮発メモリ300に対して、「Read」、「Write」、「Erase」、「L2P_Read」、「L2P_Write」、および「L2P_Erase」の何れのコマンドを実行する際においても書き込みおよび読み出しができない状態をいう。
このコマンドは、RAM400に保持されているL2Pテーブル301およびGCテーブルを不揮発メモリ300に書き込むためのコマンドである。メモリノード11は、RAM400からL2Pテーブル301およびGCテーブルを読み出して、読み出したデータに対してランダマイズおよびECC符号化を実行する。そして、メモリノード11は、「page」によって指定される物理アドレスを先頭とする連続するページにデータを書き込み、書き込みの成否を応答のパケットのヘッダに記録してそのヘッダを送信する。
このコマンドは、不揮発メモリ300に格納されているL2Pテーブル301およびGCテーブルをRAM400に読み出すためのコマンドである。メモリノード11は、不揮発メモリ300からL2Pテーブル301およびGCテーブルを読み出して、読み出したデータに対してECC復号化およびランダマイズ復号化を実行する。そして、メモリノード11は、ECC復号化およびランダマイズ復号化を行った後のデータをRAM400に展開する。なお、メモリノード11は、ECC復号化後、ECC符号のための冗長ビットを破棄する。展開後、メモリノード11は、展開の成否を応答のパケットのヘッダに記録してそのヘッダを送信する。
このコマンドは、L2Pテーブル301に記録されている所望のブロックアドレスに値を加算するためのコマンドである。「value」は例えば、16bitのサイズを有する。メモリノード11は、L2Pテーブル301を参照することによって「LA1」に対応するブロックアドレスを読み出す。そして、メモリノード11は、読み出したブロックアドレスと引数に含まれる「key」の値とを比較し、両者が一致した場合には、次に説明する加算処理を実行する。両者が一致しない場合には、メモリノード11は、加算処理を実行せずに、エラー情報を応答のパケットのヘッダに記録してそのパケットを送信する。
図23は、第5の実施形態のパケットの構成を説明する図である。第5の実施形態のパケットは、ペイロード(第1ペイロード)に複数のコマンドが記録される。個々のコマンドは、コマンド長、コマンド番号、コマンドオプション、およびそのコマンド自身のペイロード(第2ペイロード)がこの順番で記録されて構成される。メモリノード11は、第1ペイロードに格納された複数のコマンドを、先頭から順番に実行することができる。以降、第1ペイロードに複数のコマンドを有する構成を、連続コマンド構成と表記する。これに対し、図19に示した第4の実施の形態のパケットの構成を、単一コマンド構成と表記する。
このコマンドは、メモリノード11内においてメモリ間でデータをコピーするためのコマンドである。「MEM_ADDRESS from」はコピー元の領域を、「MEM_ADDRESS to」はコピー先の領域を、「LENGTH length」はコピー対象のデータのサイズを、夫々表す。「MEM_ADDRESS from」および「MEM_ADDRESS to」には、夫々、データ保存領域を表す識別番号(MEM_KIND)と、「MEM_KIND」が示すデータ保存領域内の位置を表すアドレス情報(ADDRESS)とが記録される。「MEM_KIND」は、ここでは4bitのサイズを備えている。「MEM_KIND」の値とデータ保存領域との対応関係の一例を以下に示す。
01:演算バッファ領域
02:演算バッファ領域
03:演算バッファ領域
04:演算バッファ領域
05:SRAM208
06:不揮発メモリ300
07:RAM400
08:受信ヘッダ領域
09:受信ペイロード領域
10:送信ヘッダ領域
11:送信ペイロード領域
このコマンドは、メモリノード11内においてメモリ間でデータを交換するためのコマンドである。メモリノード11は、「MEM_ADDRESS from」に格納された「LENGTH length」のサイズのデータと、「MEM_ADDRESS to」に格納された「LENGTH length」のサイズのデータとを交換する。「EXCHANGE」においては、「MEM_KIND」として、「00(バッファ領域)」、「05(SRAM208)」および「07(RAM400)」のような、ランダムアクセス性能が高いメモリが使用可能であることが望ましい。
このコマンドは、演算を行うためのコマンドである。「OP_TYPE type」は、演算の種類を表す。「OP_TYPE type」は、ここでは3bitのサイズを有する。「OP_TYPE type」の値と演算の種類との対応関係の一例を以下に示す。
01:<<
02:>>
03:AND
04:OR
05:NOT
06:XOR
このコマンドは、メモリノード11内においてメモリ間で比較を行うためのコマンドである。「COMP_TYPE type」は、比較の種類を表す。「COMP_TYPE type」は、ここでは3bitのサイズを有する。「COMP_TYPE type」の値と比較の種類との対応関係を以下に示す。
01:!=value
02:>=value
03:>value
04:<=value
05:<value
このコマンドは、条件分岐を行うためのコマンドである。「MEM_KIND target」は、条件分岐を判断するためのデータが格納されるデータ保存領域を表す。「UNLESS_GO」においては、「MEM_KIND target」には、「01(演算バッファ領域)」、「02(演算バッファ領域)」、「03(演算バッファ領域)」および「04(演算バッファ領域)」が使用可能である。「LENGTH jump」は、コマンド数を表す。メモリノード11は、「MEM_KIND target」が示す演算バッファ領域の最下位ビットが「1」である場合には、「UNLESS_GO」のすぐ後に記録されたコマンドを実行する。メモリノード11は、「MEM_KIND target」が示す演算バッファ領域の最下位ビットが「0」である場合には、「UNLESS_GO」のすぐ後に記録されたコマンドから「LENGTH jump」が示すコマンド数だけジャンプした位置に記録されたコマンドを実行する。例えば、第1ペイロードに「COMPARE」の後に「UNLESS_GO」を記録することによって、「COMPARE」による比較結果に応じて「UNLESS_GO」による条件分岐を実行させることが可能となる。
このコマンドは、パケットの送信をメモリノード11に実行させるためのコマンドである。「FLAG to_CU」は、コネクションユニット14を宛先とするか他のメモリノード11を宛先とするかを表す。「FLAG to_CU」は、「1」が前者を、「0」が後者を、夫々表す、1bitのサイズを有する情報である。メモリノード11は、ヘッダに含まれる「LIFE」、「CRC」、「Frame size」を計算するとともに計算結果を送信ヘッダ領域に記録する。そして、メモリノード11は、送信ヘッダ領域に格納された内容をヘッダに、送信ペイロード領域に格納された内容を第1ペイロードに、夫々記録することによって、パケットを生成する。
このコマンドは、可変長の文字列を検索するためのコマンドである。検索対象の範囲は、バッファ領域に格納されたデータのうちの、「CHAR start」に記録された文字から「CHAR end」に記録された文字に至るまでの範囲のデータである。「CHAR start」に記録された文字と「CHAR end」に記録された文字に至るまでの範囲のデータがバッファ領域に複数存在する場合には、それらの複数のデータが検索対象の範囲のデータである。「MEM_ADDR addr」は、検索文字列の先頭に位置を表し、「LENGTH length」は、検索文字列のサイズを表す。即ち、メモリノード11は、「MEM_ADDR addr」が表す位置から「LENGTH length」が表すサイズのデータを読み出して、読み出したデータを検索文字列とする。メモリノード11は、検索対象の範囲のデータが検索文字列と一部一致または完全一致した場合には、その検索対象の範囲のデータを送信ペイロード領域に格納する。送信ペイロード領域が溢れる場合には、エラーとなる。「FLAG part」は、部分一致検索を行うか、完全一致検索を行うかを表す。
このコマンドは、固定長の文字列を検索するためのコマンドである。検索対象の範囲は、バッファ領域に格納されたデータを先頭から「LENGTH size」が表すサイズ毎に分割して得られる夫々の分割データである。「MEM_ADDR addr」は、検索文字列の先頭に位置を表し、「LENGTH length」は、検索文字列のサイズを表す。メモリノード11は、検索対象の分割データと検索文字列とを逐次比較する。検索対象の分割データが検索文字列と一部一致または完全一致した場合には、メモリノード11は、一部一致または完全一致した分割データを送信ペイロード領域に格納する。送信ペイロード領域が溢れる場合には、エラーとなる。「FLAG part」は、部分一致検索を行うか、完全一致検索を行うかを表す。
ここでは、ASICを用いてコントローラ200を構成する場合について説明する。以下、コントローラ200をNode Moduleと表記する。
FPGAで構成されたシステムは、RAMとして、FPGA専用のBRAMを使用している。このため、ASICで構成されたシステムでは、ASIC用のRAMに置き換える必要がある。注意する部分としては、FPGAはWord/Byteライトイネーブルに対して、ASIC用はbit単位で制御になっている点である。また、ASICのシリーズによっては、2ポートRAMに対応していない場合がある。この場合は、1ポートRAMを2つ用意することによって、バッファリング機能を新たに追加する必要がある。ASICのシリーズ選定をする際には、2ポートRAMに対応しているか否かについても注意が必要である。
FPGAで構成されたシステムでは、FPGA専用のPLLモジュールを使用している。このため、自由に組み合わせたクロックを生成することが可能である。ASIC用のPLLモジュールは、高い周波数を生成し、それをCLK構成側で、所定の周波数ひ変換、制御する。PLLモジュールの機能テストのためのテスト回路(Mux回路)を追加することが必要である。
FPGAで構成されたシステムでは、CLK構成は、存在せず、すべてPLLモジュールで対応できる。ASICで構成されたシステムでは、各モジュールに対して周波数を提供するCLKGENモジュールが必要となる。このモジュールは、PLLの起動/停止などの制御を行い、PLLモジュールから入力される高い周波数からFlipFlop(FF)を使って1/2、1/4、1/8...など低い周波数を生成する。または、カウンタを使ってそれ以外の周波数を作成する。
FPGAで構成されたシステムでは、特殊I/Oから通常I/Oまで、I/O構成を任意に選択可能であるが、ASICで構成されたシステムではそうではない。特にNode Module間で使用しているLVDS I/Fは、例えば1.2Gbps程度で接続することを想定している。これに対応するには、専用I/Oとデータを受け取る回路(Serializer/Deserializer)が必要となる。
ASICで構成されたシステムでのRESET構成は、FPGAで構成されたシステムのそれと変えなくても良い。RESETモジュールは各周波数に同期化した回路を搭載して、各モジュールのリセットを行う。ただし、ASICで構成されたシステムでは、FPGAで構成されたシステムと違って、Node Moduleを交換する際にのみ、メインリセットを使うことが想定される。そのため、ASICで構成されたシステムでは、各ブロックおよび各ポートのソフトリセットなどが実装される必要がある。
ASICで構成されたシステムでは、TEST構成として、Node Moduleのクロック系(PLL、CLKGEN)や、搭載RAMのbitエラー、NANDフラッシュメモリの状態などの情報を外部から確認できる機能が必要となる。RAMの情報へのアクセスは、RAM BISTを使うことにより行うことができる。PLLモジュールの機能確認は、MUX制御で行うことができる。NANDフラッシュメモリの状態を判断する際は、Node Moduleからのアクセス履歴などを用いて判断する必要があるため、NANDフラッシュメモリとNode Moduleを1チップ化した場合は、システムはその情報にアクセスできる機能を備える必要がある。
CLKの源信に近い部分のON/OFFは、レジスタ制御で行われる。
高速シリアル転送として、例えば差動信号のLVDSが採用される。
パッケージとして、例えばフラットパッケージの144ピンなどが候補となるが、ASICで構成されたシステムでは、高速I/Fなどを複数実装するため、ノイズ対策や接点の接触などを避けるため、BGAなどPINが内側に隠れるパッケージが望ましい。
FPGAで構成されたシステムでは、NANDフラッシュメモリと、LVDS(Serializer/Deserializer)チップへの入力が、例えば3.3Vであり、それに合わせて全体が作成される。FPGAのコア電圧が異なる場合、DC−DCコンバーターで変圧して電力を提供する必要がある。ASICで構成されたシステムでは、コア電源として例えば1.5Vが、I/Oは例えば1.8Vの電圧が想定される。
Node Moduleカードに対してNode Moduleを1モジュール実装したと仮定する。Node Moduleカードは、Node Module ASICチップ1つに対して、NANDを少なくとも1つ、SRAMまたはDRAMを少なくとも1つの3チップ構成となる。またカード内には、DC−DC変換チップ、LED表示等が実装される。Node Moduleカードは、HotSwapに対応するため、マザーボードとの接続に、HotSwap対応のコネクタを使用する必要がある。
FPGAで構成されたシステムでは、8bitのデータに対して3bitのNode Module Port間の制御信号を付加した11bitで通信を行う。I/Fとして8bit幅のものが採用された場合、このPort間の制御信号が使えなくなる。この場合、通信の手法としてNode Module間のパケットを別途定義するか、転送するパケットの最後に制御情報を追加するかの2択となる。後者の場合、制御信号を共有するためにパケットの送受信を行う必要があり、負荷が増大してしまう。そのため、前者の方式が望ましい。
ASICで構成されたシステムは、Node Moduleの状態(OKAY/ERROR/Etc)などの情報を通知するLEDと、モード情報を設定するDIP−SWなどが実装される。DIP−SWは、外部RAM I/Fの選択(DDR/SRAM)とNAND I/Fのアクセス選択(レガシ/Toggle DDR)などを行う。
Node Moduleの外部メモリには、速度やChip電圧等を考慮すると、例えばDDR2 SDRAMが用いられる。SRAM等についても、例えば電源電圧が1.8Vのものを用いる。複数のRAMに対してそれぞれ専用PINを設計しておき、どちらの外部メモリI/Fを有効にするかを選択することで、複数のRAMを個別にアクセスすることが可能となる。SRAMのPINについては、同時に使用しないことが分かる場合は、他のGPIOと共通化しても構わない。
ブレードサーバー型のシステムは、例えば、1つ以上のNode Moduleと1つ以上コネクションユニット14を同じ基板に実装したドーターカードを、複数搭載可能なマザーボードが含まれる1つ以上のSystem Boxによって構成される。System Box間の接続は、サーバー背面にまとめておき、ブレード基板側から電源と情報コネクタで接続される。
Node Moduleの座標を、隣接するNode Moduleとの位置関係で決定する場合、各System Box内の座標設定は、隣接するSystem Box内の座標設定と整合性をとる必要がある。
図29は、ASIC化を想定したNode Moduleの内部構成例を示す図である。なお、PCUは、Packet Command Unitである。PRUは、Packet Routing Unitである。PGUは、Packet Generation Unitである。NIUは、Node Information Unitである。NPMUは、Node Power Management Unitである。PDMAは、Packet Direct Memory Accessである。PRIUは、Packet Rx Interface Unitである。PTIUは、Packet Tx Interface Unitである。また、図には示さないがNode Moduleは、PHAU(Packet Header Analysis Unit)を持つ。PA、PB、PCについては、GPIO制御が想定されている。
例えば1Gbpsのシリアル差動信号に対して、例えば4相のサンプリングを行い、パケットの先頭を使って同期をとり、移行のヘッダ情報およびペイロード部を内部に取り込む。取り込んだ際に、シリアルからパラレルに変換し、例えば8bitまたは、32bitに変換してRAMに書き込む。
[PRIU]
PRIUでは、パケットを受け取ると、ヘッダが正しいかCRCチェックを行う。問題なければ、PTIU経由でOKAYパケット(PORT間パケット)を通知する。ERRORの場合は、ERRORパケット(PORT間パケット)または、RETRYパケット(PORT間パケット)を通知する。ヘッダが正しいと判断し、送信先座標が自座標であれば、PCU(Packet Command Unit)に通知(割り込み)を行う。他座標であれば、PRU(Packet Routing Unit)に通知(割り込み)を行う。
PTIUでは、PDMAからのパケットやPRIUからのPORT間パケットをRAMに書き込む。RAMにパケットが格納された後は、High Speed Serial Interface側から送出する。
PCUは、各ポートからの通知(割り込み)により、ポートに格納されているパケットのヘッダ情報を読み出し、命令解析を行う。解析した結果を元にPDMAに対して、転送指示を行う、もしくはペイロードに埋め込まれている連続命令の解析を行い、COPY、演算、サーチなどの命令の実行を行う。
PRUは、他座標や戻りパケットに対しての使用ポートのルーティングを計算する。ポートパケットによる情報と、自パケットの状況を踏まえて、例えば4方向のポートを検討する。PRUでは、パケットリミット値制御も行う。
PGUは、PCUやPRIUからの要求により、パケットの構築を行い、指示したモジュールに対して通知(割り込み)する。
INTCは、PRIU、PTIUやPDMAなどからの通知(割り込み)を受け取る。ラウンドロビン動作により順番に処理を行う。
NIUは、Node Moduleの各ポートからの状況やデータの流れを蓄積し、PCUからの問い合わせの際に情報を提示する。また、NANDアクセスの履歴情報などの管理を行う。
NPMUは、Node Module内の電力制御を行う。このブロックは、指定間隔使用されない機能について停止制御を自動に制御する。機能復帰は、PCU、PRIU、PTIU、PDMAなどの機能ブロックから行う。
PDMAは、PRIUやPCUなどの指示(転送コマンド)により、転送元アドレスから転送先アドレスに対して指定サイズ転送を行う。転送が完了すると指示元に通知(割り込み)を行う。通知を受け取った側はステータス情報を読み出して正常終了していることを確認する。転送コマンドは、パケットサイズと共に転送元と転送先の組み合わせのコマンドをセットする。PDMAは複数Chで構成される。
Bufferは、パケットの保持などを行い、汎用の内部RAMで構成される。
TIMERは、タイミング調整用のタイマである。TIMERは、指定間隔で問い合わせを行ったりする場合に使用される。カウントダウンタイマで、0になると通知(割り込み)する。
内部バスは、BusMatrix構成になっている。内部バスは、PDMAの転送が停止しない様に複数定義される。内部バスの構成は、AHBをベースとする。
CLKGENでは、High Speed Serial Interfaceの源信周波数および、各種内部周波数やGPIOなどの低速デバイス用などのクロックを生成する。なお、GatedClock等は含まない。機能ブロック毎にGatedClock付きのクロック信号が用意してもよい。図30は、CLKGENの構成を示す図である。
RSTGENでは、図31に示すRSTGEN回路が実装される。ASICのルールに従った回路を実装する必要がある。
Claims (9)
- 2以上の異なる方向に相互に接続される複数のメモリノードと、
外部からの要求に応じて前記複数のメモリノードのうちの一を宛先とした命令を送信するコネクションユニットと、
を備え、
前記コネクションユニットは、前記命令の寿命を前記命令に付加して送信し、
前記複数のメモリノードの夫々は、前記命令を受信したとき、前記命令の宛先が自メモリノードではない場合、前記命令に付加された寿命を減算し、減算後の寿命が所定値よりも小さい場合には前記命令を破棄し、前記減算後の寿命が前記所定値よりも大きい場合には前記命令に付加された寿命を前記減算後の寿命で書き換えて、寿命を書き換えた後の前記命令を自メモリノードに接続されている他のメモリノードに転送する、
ことを特徴とするストレージ装置。 - 前記複数のメモリノードの夫々は、前記コネクションユニットへ繋がる専用経路を有し、
前記命令を破棄する際に、破棄命令を示すパケットを前記専用経路を通して前記コネクションユニットへ送信する、
ことを特徴とする請求項1に記載のストレージ装置。 - 前記複数のメモリノードの夫々は、前記命令の宛先が自メモリノードである場合、前記命令を実行するとともに前記命令に応じた応答を送信し、
前記コネクションユニットは、前記命令を送信後に前記応答を所定の時間内に受信しない場合には、タイムアウト処理を実行する、
ことを特徴とする請求項1または請求項2に記載のストレージ装置。 - 前記複数のメモリノードの夫々は、前記命令の宛先が自メモリノードである場合、前記命令を実行するとともに前記命令に応じた応答を前記コネクションユニットへ送信し、
前記コネクションユニットは、前記命令を送信する際に、自コネクションユニットが接続されているメモリノードを起点とした転送方向を指定可能であって、
前記コネクションユニットは、前記命令を送信後に前記応答を所定の時間内に受信しない場合には、前記転送方向を変更して再び前記命令を送信する、
ことを特徴とする請求項2または請求項3に記載のストレージ装置。 - 前記コネクションユニットは、前記転送方向が変更された前記命令を送信後に前記応答を前記所定の時間内に受信しない場合には、前記タイムアウト処理を実行する、
ことを特徴とする請求項4に記載のストレージ装置。 - 前記コネクションユニットを複数備え、前記夫々のコネクションユニットは夫々異なるメモリノードに接続され、
外部から入力される前記要求を前記複数のコネクションユニットのうちの一に転送する振り分け部をさらに備え、
前記タイムアウト処理は、前記振り分け部に前記要求の破棄通知を送信する処理であって、
前記振り分け部は、前記破棄通知を受信した場合、前記破棄通知を送信したコネクションユニットとは異なるコネクションユニットに前記要求を転送する、
ことを特徴とする請求項3または請求項5に記載のストレージ装置。 - 前記複数のメモリノードの夫々は、自メモリノードと前記命令の宛先として指定されているメモリノードまでの最短経路と、自メモリノードに接続されている他のメモリノードの状態と、に基づいて、自メモリノードに接続されている他のメモリノードのうちから転送先のメモリノードを一つ選択する、
ことを特徴とする請求項1乃至請求項6の何れか一項に記載のストレージ装置。 - 前記コネクションユニットは、自コネクションユニットから前記命令の宛先として指定されているメモリノードまでの最短経路に基づいて前記寿命を算出する、
ことを特徴とする請求項1乃至請求項6の何れか一項に記載のストレージ装置。 - 前記コネクションユニットは、自コネクションユニットから前記命令の宛先として指定されているメモリノードまでの最短経路に基づいて前記所定の時間を算出する、
ことを特徴とする請求項3乃至請求項6の何れか一項に記載のストレージ装置。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013172500A JP5931816B2 (ja) | 2013-08-22 | 2013-08-22 | ストレージ装置 |
TW103105911A TW201508775A (zh) | 2013-08-22 | 2014-02-21 | 儲存元件及資料處理方法 |
KR1020140022935A KR101561769B1 (ko) | 2013-08-22 | 2014-02-26 | 스토리지 디바이스 및 데이터 처리 방법 |
CN201410068942.3A CN104424113B (zh) | 2013-08-22 | 2014-02-27 | 存储设备及数据处理方法 |
US14/202,877 US9389808B2 (en) | 2013-08-22 | 2014-03-10 | Storage device and data processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013172500A JP5931816B2 (ja) | 2013-08-22 | 2013-08-22 | ストレージ装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015041281A true JP2015041281A (ja) | 2015-03-02 |
JP5931816B2 JP5931816B2 (ja) | 2016-06-08 |
Family
ID=52481381
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013172500A Expired - Fee Related JP5931816B2 (ja) | 2013-08-22 | 2013-08-22 | ストレージ装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9389808B2 (ja) |
JP (1) | JP5931816B2 (ja) |
KR (1) | KR101561769B1 (ja) |
CN (1) | CN104424113B (ja) |
TW (1) | TW201508775A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016185846A1 (ja) * | 2015-05-18 | 2016-11-24 | 長瀬産業株式会社 | 高速バスシステム |
US9823862B2 (en) | 2014-02-10 | 2017-11-21 | Toshiba Memory Corporation | Storage system |
JP2017224089A (ja) * | 2016-06-14 | 2017-12-21 | 株式会社デンソー | データ処理システム |
US10037165B2 (en) | 2015-03-02 | 2018-07-31 | Toshiba Memory Corporation | Storage system and control method thereof |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9830087B2 (en) * | 2014-11-13 | 2017-11-28 | Micron Technology, Inc. | Memory wear leveling |
US20160217177A1 (en) * | 2015-01-27 | 2016-07-28 | Kabushiki Kaisha Toshiba | Database system |
US9645760B2 (en) * | 2015-01-29 | 2017-05-09 | Kabushiki Kaisha Toshiba | Storage system and control method thereof |
US10303637B2 (en) * | 2015-08-20 | 2019-05-28 | Toshiba Memory Corporation | Storage system including a plurality of storage devices arranged in a holder |
JP2018041154A (ja) * | 2016-09-05 | 2018-03-15 | 東芝メモリ株式会社 | ストレージシステムおよび処理方法 |
JP2018041153A (ja) * | 2016-09-05 | 2018-03-15 | 東芝メモリ株式会社 | ストレージシステムおよび入出力処理方法 |
CN107888634B (zh) * | 2016-09-29 | 2021-05-28 | 北京金山云网络技术有限公司 | 一种分布式存储***的数据请求方法及装置 |
TWI625620B (zh) * | 2017-05-12 | 2018-06-01 | 威盛電子股份有限公司 | 非揮發性記憶體裝置及其讀取方法 |
KR102500618B1 (ko) * | 2017-12-12 | 2023-02-16 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작 방법 |
US10817430B2 (en) * | 2018-10-02 | 2020-10-27 | Micron Technology, Inc. | Access unit and management segment memory operations |
CN110399098B (zh) * | 2019-06-25 | 2021-09-14 | 联想(北京)有限公司 | 一种数据处理方法及电子设备 |
CN111104269B (zh) * | 2019-10-25 | 2023-07-07 | 芯创智(上海)微电子有限公司 | 一种基于uart接口的处理器调试方法及*** |
GB2605577A (en) * | 2021-03-31 | 2022-10-12 | Advanced Risc Mach Ltd | Accessing Encoded Blocks of Data |
CN117785567B (zh) * | 2024-02-28 | 2024-05-28 | 上海特高信息技术有限公司 | 一种基于连接方向的可重构容错策略及重构控制器 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003348140A (ja) * | 2002-05-24 | 2003-12-05 | Nec Corp | ネットワークシステム |
JP2006243967A (ja) * | 2005-03-01 | 2006-09-14 | Hitachi Ltd | ストレージシステム |
JP2010531104A (ja) * | 2007-06-22 | 2010-09-16 | フランス・テレコム | 車両ネットワークに属するソースノードと宛先ノードとの間の通信方法 |
JP2012103926A (ja) * | 2010-11-10 | 2012-05-31 | Toshiba Corp | 転送機能を有するメモリノードを相互に接続したストレージ装置及びデータ処理方法 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6690648B2 (en) * | 1998-02-24 | 2004-02-10 | Canon Kabushiki Kaisha | Data communication apparatus, method, and system utilizing reception capability information of a destination node |
US6424625B1 (en) | 1998-10-28 | 2002-07-23 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for discarding packets in a data network having automatic repeat request |
US6457100B1 (en) | 1999-09-15 | 2002-09-24 | International Business Machines Corporation | Scaleable shared-memory multi-processor computer system having repetitive chip structure with efficient busing and coherence controls |
JP2003345531A (ja) | 2002-05-24 | 2003-12-05 | Hitachi Ltd | ストレージシステム、管理サーバ、及びそのアプリケーションの管理方法 |
WO2004102403A2 (en) | 2003-05-13 | 2004-11-25 | Advanced Micro Devices, Inc. | A system including a host connected to a plurality of memory modules via a serial memory interconnect |
KR101271245B1 (ko) | 2005-04-21 | 2013-06-07 | 바이올린 메모리 인코포레이티드 | 상호접속 시스템 |
US8150946B2 (en) * | 2006-04-21 | 2012-04-03 | Oracle America, Inc. | Proximity-based memory allocation in a distributed memory system |
DE502007002506D1 (de) * | 2006-08-24 | 2010-02-11 | Siemens Ag | Verfahren und netzwerkknoten zum routen von datenpaketen in kommunikationsnetzen |
JP2010171557A (ja) | 2009-01-21 | 2010-08-05 | Mitsubishi Electric Corp | 同報送信装置及び受信ノード及び同報送信プログラム及び記録媒体 |
US8549092B2 (en) | 2009-02-19 | 2013-10-01 | Micron Technology, Inc. | Memory network methods, apparatus, and systems |
US20100241783A1 (en) | 2009-03-23 | 2010-09-23 | Honeywell International Inc. | Memory node for use within a data storage system having a plurality of interconnected memory nodes |
JP5996497B2 (ja) | 2013-08-22 | 2016-09-21 | 株式会社東芝 | ストレージ装置 |
JP5989614B2 (ja) | 2013-08-22 | 2016-09-07 | 株式会社東芝 | ストレージ装置 |
-
2013
- 2013-08-22 JP JP2013172500A patent/JP5931816B2/ja not_active Expired - Fee Related
-
2014
- 2014-02-21 TW TW103105911A patent/TW201508775A/zh unknown
- 2014-02-26 KR KR1020140022935A patent/KR101561769B1/ko active IP Right Grant
- 2014-02-27 CN CN201410068942.3A patent/CN104424113B/zh not_active Expired - Fee Related
- 2014-03-10 US US14/202,877 patent/US9389808B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003348140A (ja) * | 2002-05-24 | 2003-12-05 | Nec Corp | ネットワークシステム |
JP2006243967A (ja) * | 2005-03-01 | 2006-09-14 | Hitachi Ltd | ストレージシステム |
JP2010531104A (ja) * | 2007-06-22 | 2010-09-16 | フランス・テレコム | 車両ネットワークに属するソースノードと宛先ノードとの間の通信方法 |
JP2012103926A (ja) * | 2010-11-10 | 2012-05-31 | Toshiba Corp | 転送機能を有するメモリノードを相互に接続したストレージ装置及びデータ処理方法 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9823862B2 (en) | 2014-02-10 | 2017-11-21 | Toshiba Memory Corporation | Storage system |
US10037165B2 (en) | 2015-03-02 | 2018-07-31 | Toshiba Memory Corporation | Storage system and control method thereof |
US10346083B2 (en) | 2015-03-02 | 2019-07-09 | Toshiba Memory Corporation | Storage system and control method thereof |
WO2016185846A1 (ja) * | 2015-05-18 | 2016-11-24 | 長瀬産業株式会社 | 高速バスシステム |
JP2016218619A (ja) * | 2015-05-18 | 2016-12-22 | 長瀬産業株式会社 | 高速バスシステム |
JP2017224089A (ja) * | 2016-06-14 | 2017-12-21 | 株式会社デンソー | データ処理システム |
WO2017217084A1 (ja) * | 2016-06-14 | 2017-12-21 | 株式会社デンソー | データ処理システム |
Also Published As
Publication number | Publication date |
---|---|
JP5931816B2 (ja) | 2016-06-08 |
TW201508775A (zh) | 2015-03-01 |
CN104424113A (zh) | 2015-03-18 |
KR20150022630A (ko) | 2015-03-04 |
US20150058436A1 (en) | 2015-02-26 |
US9389808B2 (en) | 2016-07-12 |
KR101561769B1 (ko) | 2015-10-19 |
CN104424113B (zh) | 2017-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5931816B2 (ja) | ストレージ装置 | |
JP5996497B2 (ja) | ストレージ装置 | |
JP5960517B2 (ja) | フラッシュメディアコントローラの内部のメタデータハンドリング | |
CN108351813B (zh) | 用于在非易失性存储器快速(NVMe)控制器的不同网络地址上使能个别的NVMe输入/输出(IO)队列的方法和装置 | |
US20190121553A1 (en) | Multiprocessor system with independent direct access to bulk solid state memory resources | |
US9009391B2 (en) | Solid state drive architecture | |
CN100405352C (zh) | 通过串行总线互连多个处理节点的装置及方法 | |
KR101562781B1 (ko) | 비휘발성 스토리지에 대한 셀프-저널링 및 계층적 일치성 | |
US10025735B2 (en) | Decoupled locking DMA architecture | |
JP6228347B2 (ja) | ストレージ装置及び記憶デバイス | |
JP5918359B2 (ja) | メモリシステムコントローラを含む装置および関連する方法 | |
US20230004331A1 (en) | Nand raid controller | |
US20150019834A1 (en) | Memory hierarchy using page-based compression | |
JP5732708B2 (ja) | 不揮発性メモリからのデータ読み出し用コントローラ | |
JP2013025795A (ja) | フラッシュデバイスのためのフラッシュコントローラハードウェアアーキテクチャ | |
US11010054B1 (en) | Exabyte-scale data processing system | |
US11853162B2 (en) | Controller and storage device | |
CN106030549A (zh) | 用于对晶片外高速缓存存储器的标签集高速缓存的方法、装置和*** | |
TW200413917A (en) | Method and system of managing virtualized physical memory in a multi-processor system | |
JP6517549B2 (ja) | メモリコントローラ、記憶装置、データ転送システム、データ転送方法、及びデータ転送プログラム | |
CN109388333B (zh) | 降低读命令处理延迟的方法与装置 | |
US9891992B2 (en) | Information processing apparatus, information processing method, storage system and non-transitory computer readable storage media | |
JP5989614B2 (ja) | ストレージ装置 | |
US8270194B2 (en) | Distributed flash memory storage manager systems | |
US9146693B2 (en) | Storage control device, storage system, and storage control method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150812 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20151102 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160113 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160119 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160217 |
|
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: 20160329 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160427 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5931816 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |