JP4405277B2 - ディスク制御装置 - Google Patents

ディスク制御装置 Download PDF

Info

Publication number
JP4405277B2
JP4405277B2 JP2004038459A JP2004038459A JP4405277B2 JP 4405277 B2 JP4405277 B2 JP 4405277B2 JP 2004038459 A JP2004038459 A JP 2004038459A JP 2004038459 A JP2004038459 A JP 2004038459A JP 4405277 B2 JP4405277 B2 JP 4405277B2
Authority
JP
Japan
Prior art keywords
adapter
dma
transfer
data
memory
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.)
Expired - Fee Related
Application number
JP2004038459A
Other languages
English (en)
Other versions
JP2005228245A (ja
JP2005228245A5 (ja
Inventor
睦 細谷
直企 渡辺
崇仁 中村
靖雄 井上
和久 藤本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2004038459A priority Critical patent/JP4405277B2/ja
Priority to US10/826,471 priority patent/US7231469B2/en
Priority to DE102004023810A priority patent/DE102004023810B3/de
Priority to GB0411905A priority patent/GB2411022B/en
Priority to FR0405789A priority patent/FR2866448B1/fr
Publication of JP2005228245A publication Critical patent/JP2005228245A/ja
Priority to US11/249,174 priority patent/US7467238B2/en
Publication of JP2005228245A5 publication Critical patent/JP2005228245A5/ja
Priority to US11/652,567 priority patent/US7469307B2/en
Priority to US12/269,152 priority patent/US7917668B2/en
Application granted granted Critical
Publication of JP4405277B2 publication Critical patent/JP4405277B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/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/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/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • 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
    • 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

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)
  • Bus Control (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

本発明は、複数のディスクドライブ装置を制御するためのディスク制御装置に係り、特に、コネクションレス型多重通信を用いた高信頼のディスク制御装置に関する。
半導体記憶装置を記憶媒体とするコンピュータの主記憶の入出力性能に比べて、磁気ディスクドライブを記憶媒体とするディスクサブシステム(以下「サブシステム」という)の入出力性能は3〜4桁程度小さく、従来からこの差を縮めること、すなわちサブシステムの入出力性能を向上させる努力がなされている。サブシステムの入出力性能を向上させるための1つの方法として、データを複数の磁気ディスクドライブ装置に格納するディスク制御装置が用いられている。
例えば、図16に示した、従来より知られているディスク制御装置は、ホストコンピュータ又はディスクドライブ装置との間のデータ転送を実行する複数のチャネルアダプタ2100と、ホストコンピュータとディスクドライブ装置との間で転送されるデータを一時的に格納するキャッシュメモリアダプタ2300と、ディスク制御装置の動作に関する制御情報を格納する制御メモリアダプタ2301と、キャッシュメモリアダプタとチャネルアダプタとを接続するためのスイッチアダプタ2400と、を備えている。チャネルアダプタ2100とキャッシュメモリアダプタ2300との間は、複数のスイッチアダプタ2400を通してデータ系内部ネットワークにより接続される。チャネルアダプタ2100と制御メモリアダプタ2301との間は、制御系内部ネットワークで接続される。このネットワーク接続により、キャッシュメモリアダプタ2300および制御メモリアダプタ2301は全てのチャネルアダプタ2100からアクセス可能な構成となっている。
チャネルアダプタ2100は、データ系内部ネットワークとのパケット転送を実行するためのデータリンクエンジン(DLE)2110と、データ系内部ネットワークとのDMA転送を実行するためのDMAコントローラ(DMAC)2120と、DLE2110とDMAC2120とを接続するセレクタ2115と、ホストコンピュータ又はディスクドライブ装置との通信を制御するプロトコルエンジン(PE)2130と、ホストコンピュータ又はディスクドライブ装置と接続するためのポート2140と、制御系内部ネットワークとのパケット転送を実行するためのDLE2210と、制御系内部ネットワークとのDMA転送を実行するためのDMAC2220と、ディスク制御装置の動作をコントロールするマイクロプロセッサ(MP)2230と、DMAC2120とPE2130又はMP2230を接続するセレクタ2125と、を有している。
キャッシュメモリアダプタ2300と制御メモリアダプタ2301は、データ系内部ネットワーク又は制御系内部ネットワークとのパケット転送を実行するためのDLE2310と、各内部ネットワークとのDMA転送を実行するためのDMAC2320と、メモリコントローラ(MC)2330と、メモリモジュール(MM)2340と、DLE2310とDMAC2320を接続するセレクタ2315と、DMAC2320とMC2330を接続するセレクタ2325と、を有している。
スイッチアダプタ2400は、データ系内部ネットワークとのパケット転送を実行するDLE2410と、データ系内部ネットワークでのDMA転送を実行するDMAC2420と、スイッチの複数のDMAC2420間を接続するためのセレクタ2430と、を有している。
各アダプタ間のデータ転送は、それぞれのアダプタ内のDMACが連携して動作することで実現される。次に、一例として、ホストコンピュータからディスク制御装置内のキャッシュメモリアダプタ2300にデータをDMA転送する場合の動作概要について、図18及び図19を用いて説明する。
ホストコンピュータから接続ポート2140を介してWRITEリクエストが発行された場合、MP2230は、WRITEデータを一時的に格納するためのキャッシュメモリアダプタの領域を計算し、その結果をDMAリスト2600としてチャネルアダプタ内のDMAC2120に通知する。DMAC2120は、DMA転送に必要なキャッシュメモリアダプタまでのパスを確保するためのリクエスト2605を発行する。WRITEデータは、信頼性向上のため、複数のキャッシュメモリアダプタ(DMAC2321と2322をそれぞれに有する2つのキャッシュメモリアダプタ)に格納されるので、複数のパス確保リクエストが発行される。必要なパスが確保できたなら、DMAC2120は、DMAリスト2600にしたがってWRITEデータを、中継ポイントにあるスイッチのDMAC2420に向けて転送する。この際、ホストコンピュータからのWRITEデータは、あらかじめ決められている適当な大きさに分割されて転送される。
スイッチアダプタ2400のDMAC2420は、チャネルアダプタ2100のDMAC2120から送られてきた転送リクエストから、複数のキャッシュメモリアダプタのDMAC2321、2322に対する分割DMAリクエスト2611、2612を生成する。DMAC2321、2322は、リクエスト2611、2612に対して、リクエスト終了報告である分割ステータス2621、2622を返す。チャネルアダプタのDMAC2120は、分割ステータス2621、2622を確認してから、次の分割DMAリクエストを発行する。すべての分割DMAリクエストに対する分割ステータスが返ってきたら、DMCA2120は、確保したキャッシュメモリアダプタへのパスの開放リクエスト2625を発行し、MP2230に完了ステータス2630を返すことで、DMAリスト2600の処理が完了する。なお、MP2230は、上記のDMA転送中、必要に応じて制御メモリアダプタにアクセスするが、その際、チャネルアダプタ2100のDMAC2220と制御メモリアダプタ2301のDMAC2320との間で同様のDMA転送が実行される。
図17は、上述のDMA転送において使用されるパケットの構造を示している。コマンドパケット2520は、転送先DMACを示すアドレスフィールド2521と、転送元DMACを示すアドレスフィールド2522と、転送データを格納すべきメモリアドレスフィールド2523、2524と、エラーチェックコード2525と、を有している。
パス確保リクエスト2605は、コマンドパケット2520を用いて行われる。また、データパケット2530は、転送先DMACを示すアドレスフィールド2531と、転送元DMACを示すアドレスフィールド2532と、転送データ2533と、エラーチェックコード2535と、を有している。分割DMAリクエストはデータパケット2530を用いて実行される。
図20は、パスリクエストコマンド2605と分割DMAデータリクエスト2610の転送プロトコルを示している。障害処理を簡易化するために、実行はすべて非多重通信で行われる。すなわち、分割DMAリクエスト2610に対する分割ステータス2620が返送されたのを確認した上で、次の分割DMAリクエスト2610が発行される。
ここで、図16〜図20を用いて説明した上述の背景技術と同様な技術が、特許文献1及び特許文献2に記載されている。
特開2003−84919 特開平11−312126号公報
上述したように、特許文献1と2に記載されたような従来のディスク制御装置内のDMA転送では、その実装の容易さから、コネクション型の非多重通信が使われていた。すなわち、DMACが、DMA転送を実行する前に必要なパスを確保しておき、DMA転送中においてはパスを占有していた(コネクション型通信)。さらに、直前の分割DMA転送に対する分割ステータスを確認するまでは、次の分割DMA転送を実行することができなかった(非多重通信)。
そのために、従来のディスク制御装置では、内部ネットワークパスの使用効率が低く、そのことが性能改善の阻害要因となっていた。また、限定されたパス使用効率で必要なパス帯域を確保するという条件を満たすために、データ系内部ネットワークと制御系内部ネットワークをそれぞれ設置するなどの複雑な内部ネットワーク構造が必要となり、コスト高の要因となっていた。
本発明の目的は、上記従来技術の課題を改善し、従来と同等の高信頼性を維持しながら、高い転送効率(性能)を実現し、さらに、低コスト化を実現するためのコネクションレス型多重通信を用いたディスク制御装置を提供することにある。
前記課題を解決するために、本発明は主として次のような構成を採用する。
各々ホストコンピュータ又はディスクドライブ装置と接続される接続インターフェースを有する、複数のインタフェースアダプタと、前記ホストコンピュータと前記ディスクドライブ装置の間で転送されるデータを一時的に格納するメモリアダプタと、前記インタフェースアダプタと前記メモリアダプタの動作を制御するプロセッサアダプタと、前記インタフェースアダプタ、前記メモリアダプタ、前記プロセッサアダプタの間を互いに接続して内部ネットワークを構成するスイッチアダプタと、を備え、
前記インタフェースアダプタ、前記メモリアダプタ、前記プロセッサアダプタ、及び前記スイッチアダプタは、前記内部ネットワークの通信プロトコル制御を行うDMAコントローラを有し、
各アダプタに設けられた前記DMAコントローラの間でパケット多重通信を行う構成とする。
本発明によれば、コネクションレス型多重通信を適用することによって、1つの分割DMA転送の中だけでなく(後述するが、図11に示す分割DMAと分割ステータスの転送状況)、複数のDMA転送の間でも(図11に示す分割DMA615と分割DMA616の交互の転送状況)、多重化することが可能となり、パス利用効率が飛躍的に改善されて、従来は別々に設置していた制御系内部ネットワークとデータ系内部ネットワークを別設する必然性がなくなる。そのため、キャッシュメモリアダプタと制御メモリアダプタを統合してメモリアダプタとし、さらに、パス利用効率の改善によってパス使用制限が緩和されるのでシャネルアダプタ内のプロセッサをプロセッサアダプタとしてチャネルアダプタから独立させることが可能となる。これにより、高性能で、拡張性にすぐれ、低コストなディスク制御装置を構成することが可能となる。
本発明の実施形態に係るディスク制御装置について、図1〜図15を参照しながら以下詳細に説明する。
図1は、本発明の実施形態に係るディスク制御装置の全体構成を示す図である。本実施形態に係るディスク制御装置は、ホストコンピュータ又はディスクドライブ装置との接続インターフェース140を持つチャネルアダプタ100と、ホストコンピュータとディスクドライブ装置の間で転送されるデータを一時的に格納するメモリアダプタ300と、チャネルアダプタ100及びメモリアダプタ300の動作を制御するプロセッサアダプタ200と、チャネルアダプタ100、メモリアダプタ300、プロセッサアダプタ200の間を接続して内部ネットワークを構成するためのスイッチアダプタ400と、を備えている。
また、チャネルアダプタ100、プロセッサアダプタ200、メモリアダプタ300、スイッチアダプタ400が、内部ネットワークの通信プロトコル制御を行うDMAコントローラ(DMAC)120、220、320、420をそれぞれ有している。各DMACは、データリンクエンジン(DLE)110、210、310、410を介して、DMA転送を実行する。これらのDMAコントローラ間では、図11に示すコネクションレス型パケット多重通信が行われる。
図11は本発明の実施形態にディスク制御装置に用いられる多重通信転送プロトコルを示す図である。図11において、或る分割DMAリクエストに対する分割ステータスの確認を待たずに、次の分割DMAリクエストが発行されている(多重通信、すなわち、1つの分割DMA転送の中での多重通信)。さらに、DMA1とDMA2の間のDMA転送とDMA3とDMA4との間のDMA転送が同じDLE1−DLE2間のパスを共有して行われている(コネクションレス型通信)。図11の例示で云うと、分割DMA615と分割DMA616がDLE1−DLE2間のパスを共有して交互に転送されて多重通信を行っている。そして、後述する図8の説明で明らかになるように、宛先とデータと分割DMAリクエストの順序制御を行う情報(TASK ID)を含んだパケット構造を採用することによって、上述したコネクションレス型の多重通信を行うことが可能となるのである。
図1及び図11に示す構成例によれば、コネクションレス型多重通信を適用することによって、1つの分割DMA転送の中だけでなく、複数のDMA転送の間でも多重化することが可能となり、パス利用効率が飛躍的に改善されて(パスに時間間隔を空けることなくデータ転送できるのでパス効率が向上する)、従来技術で設けられていた制御系内部ネットワークとデータ系内部ネットワークを別設する必然性がなくなる。そのため、キャッシュメモリアダプタと制御メモリアダプタを統合してメモリアダプタとし、さらに、パスの利用制限が緩和されたことによってプロセッサをプロセッサアダプタとしてチャネルアダプタから独立させることが可能となる。これにより、より拡張性、柔軟性にすぐれた低コストのディスク制御装置を構成することが可能となる。
次に、図5は本発明の実施形態に係るディスク制御装置におけるプロセッサアダプタの具体的構成例を示す図であり、図2はプロセッサアダプタに用いられるデータリンクエンジンの具体的構成例を示す図である。なお、図2のデータリンクエンジン(DLE)はプロセッサアダプタに限らず、他のアダプタにも使用される構成例である。
図5に示すプロセッサアダプタ200は、マイクロプロセッサ(MP)230と複数のDMAコントローラ220と1つ以上のデータリンクエンジン(DLE)210とを有し、MP230とDMAC220の間がセレクタ225によって接続され、複数のDMAコントローラ220がセレクタ215を通してDLE210を共有している。すなわち、DLEの数よりもDMACの数の方がはるかに多いのが通常である。
複数のDMAコントローラ220からのリクエストはセレクタ215内のDMAC調停回路2150によって調停されることで、同じDLE210を介して複数のDMACからのDMA転送を同時に実行すること(コネクションレス通信)が可能となっている。DLE210からの受信データは、DLE調停回路2155によって、目的のDMAC220に分配される。
図2において、DLEは、送信ポート1101と送信バッファ1102と受信ポート1105と受信バッファ1106と再送論理回路1110と再送バッファ1120とから構成されている。再送バッファと再送論理回路は、データリンクでのエラーフリー転送を実現するための処理を実行する。すなわち、送信バッファから送信ポートを通して送出されたパケットは、再送論理回路1110によって再送バッファ1120に格納される。受信ポートには、当該パケットが正しく届いたかどうかのステータスが返送され、エラーが報告された場合、再送論理回路により再送バッファからパケットの再送が行われる。図2に示すDLE構成により、パケット単位のデータリンクエラー制御が可能となり、多重通信を実現することができる。
図5及び図2に示す構成例によれば、コネクションレス型の多重通信が可能となり、高性能で、より柔軟かつ単純な低コストのディスク制御装置を実現することができる。
次に、図4は本発明の実施形態に係るディスク制御装置におけるチャネルアダプタの具体的構成例を示す図であり、図3はチャネルアダプタに用いられるDMAコントローラの具体的構成例を示す図である。なお、図3のDMAコントローラ(DMAC)はチャネルアダプタに限らず、他のアダプタにも使用される構成例である。
図4に示すチャネルアダプタは、プロトコルエンジン130と、DMAC120と、DLE110と、を備え、PE130とDMAC120がセレクタ125を通して接続され、DMAC120とDLE110がセレクタ115を介して接続されている。DMAコントローラ120が、複数(VC0、VC1)の受信FIFOバッファと複数(VC0、VC1)の送信FIFOバッファを持っている。
図3に示すDMAコントローラ120は、マルチプレクサ1201と、送信FIFOバッファ1202と、デマルチプレクサ1205と、受信FIFOバッファ1206と、トランザクション論理回路1210と、シーケンス管理テーブル1220と、パケット生成論理回路1230と、パケット分解論理回路1240と、から構成されている。複数の送信FIFOバッファ1202の間で送信データ間の競合が調停回路1212により調停されマルチプレクサ1201によって選択される。
同様に、受信データは、調停回路1212の制御によるデマルチプレクサ1205の選択動作によって、複数の受信FIFOバッファ1206の中の適当なFIFOに格納される。パケット生成論理回路1230とパケット分解論理回路1240は、パケットの生成と分解を行うための論理回路である。シーケンス制御論理回路1213とシーケンス管理テーブル1220は、分割DMAのDMAシーケンスを管理するための論理回路であり、その動作については後述する。
図4及び図3に示す構成例によれば、1つのDLEに対して、複数(VC0、VC1)のバッファを対応させることができ、例えば、制御系内部ネットワークとデータ系内部ネットワークを1つのDLEに混在させることができる(例として、VCOはデータ系内部ネットワーク用、VC1は制御系ネットワーク用)。さらに、調停回路1212の動作により、複数のバッファ間に優先度を設けることができ、例えば、制御系内部ネットワークをデータ系内部ネットワークより優先させることにより、両者の混在による制御系内部ネットワークのアクセス遅延時間増大を回避することができる。すなわち、本構成例により、より単純な内部ネットワーク構成のディスク制御装置を実現することが可能となり、性能改善と低コスト化の両立を実現することができる。
次に、図6は本発明の実施形態に係るディスク制御装置におけるメモリアダプタの具体的構成例を示す図である。図6に示すメモリアダプタは、メモリモジュール(MM)340と、メモリコントローラ(MC)330と、DMAC320と、DLE310と、を備え、MC330とDMAC320がセレクタ325を通して接続され、DMAC320とDLE310がセレクタ315を介して接続されている。DMAコントローラ(DMAC)320が、それぞれ受信FIFOバッファ(VC0またはVC1)と送信FIFOバッファ(VC0またはVC1)を持っている。複数の送信FIFOバッファVC0の間及び複数の送信FIFOバッファVC1の間で送信データ間の競合が調停されて、DLE310にデータが送信される。同様に、複数の受信FIFOバッファVC0の間及び複数の受信FIFOバッファVC1の間で受信データ間の経路調停がなされて、適当な受信FIFOにデータが格納される。
また、DMAC320とMC330との間は、調停回路3250と調停回路3255によって、競合条件が調停される。これにより、1つのMCを複数のDMACで共有することができ、調停回路の機能として、DMAC間での優先度制御を実現することも可能となる。これにより、例えば、制御系内部ネットワーク用のDMACとデータ系内部ネットワーク用のDMACを設けて、制御系内部ネットワーク用のDMACを優先させることにより、制御系内部ネットワークのアクセスがデータ系内部ネットワークの動作に干渉される影響を抑制することが可能となる。
図6に示す構成例によると、1つのDLEに対して、複数のDMACを対応させることができ、例えば、制御系内部ネットワークとデータ系内部ネットワークを1つのDLEに混在させることができる。また、1つのMCに対して、複数のDMACを対応させることができ、制御系メモリとデータ系メモリを混在させることが可能となる。すなわち、本構成例により、より単純な内部ネットワーク構成のディスク制御装置を実現することが可能となり、性能改善と低コスト化の両立を実現することができる。
次に、図8は本発明の実施形態に係るディスク制御装置内の複数のDMAコントローラ間で転送されるパケットの具体的構成例を示す図である。図8に示すパケット500は、転送先のDMAコントローラを指定するアドレスフィールド511と、転送元DMAコントローラを指定するアドレスフィールド521と、1つのDMA転送を複数のパケットに分割して転送する際の転送順序を管理するためのDMAシーケンスフィールド524と、を少なくとも備えている。
本発明の実施形態に係るディスク制御装置においては、コネクションレス型の多重通信によるDMA転送が行われるため、DMAの転送順序を保証し、エラーチェックや、障害処理を適切に行う必要がある。そのための手段として、パケットを確実に特定することができるようにDMAシーケンスフィールドを設け、このフィールドを、1つのDMA転送内においてユニークになる(識別できる)ように(好ましくは、シーケンシャルにインクリメント)制御する。
図8に示すパケット構成例によれば、コネクションレス型の多重通信によるDMA転送においても、適切な順序保証とそのチェックを行うことができ、また、障害発生時にも適切な障害処理を実施することが可能となる。すなわち、本構成例により、従来と同等の高信頼ディスク制御装置を実現することが可能となる。
また、図8に示したパケット500は、パケットの中継DMAコントローラを指定する第1のアドレス511と、宛先DMAコントローラを指定する第2のアドレス522及び第3のアドレス523と、宛先DMAコントローラに転送すべき転送データ531と、を備えている。チャネルアダプタ100からメモリアダプタ300へのWRITEリクエストの際は、第1のアドレスとしてスイッチアダプタのDMAC420が、第2及び第3のアドレスとしてメモリアダプタのDMAC320が指定される。複数のメモリアダプタのアドレスを指定するのは、信頼性向上を目指して、キャッシュメモリに対し2重WRITEを実施するためである。
このようなパケット構成によって、2重WRITEを含んだDMA転送機能を、コネクションレス型の多重通信に適用することが可能となり、高信頼のディスク制御装置を実現することができる。
さらに、図8に示したパケット500は、DLEに対する制御情報を含んだルーティングヘッダ510と、DMAコントローラに対する制御情報を含んだコマンドヘッダ520と、それ以外のデータを含んだデータブロック530と、から構成され、ルーティングヘッダ510は、当該ルーティングヘッダ内の転送エラーを保証するためのルーティングヘッダエラーチェックコード515を有し、コマンドヘッダ520は、当該コマンドヘッダ内の転送エラーを保証するためのコマンドヘッダエラーチェックコード525を含み、データブロック530は、当該データブロック内の転送エラーを保証するためのデータブロックエラーチェックコード535を含んでいる。
このようなパケット構成によって、ルーティング制御情報と、DMAC制御情報と、データ情報を別々のエラーチェックコードで保護することが可能となり、より細かなDMA転送制御と障害回復処理が行える。とくに、スイッチアダプタ経由の2重WRITE時などルーティング制御情報の書き換えが必要となる場合でも、エラーチェックコード再計算の範囲を最小限に限定することが可能とり、高信頼かつ高性能なディスク制御装置を実現することができる。
次に、図9は本発明の実施形態に係るディスク制御装置に用いられるパケットのフローを示す図であり、図10は本発明の実施形態に係るディスク制御装置に用いられるプロトコルを示す図である。図9及び図10の例示では、チャネルアダプタのDMAC120からスイッチアダプタのDMAC420に分割DMAリクエスト610を発行している。すなわち、分割DMAリクエスト610のパケットには、転送元アドレスフィールド521として、マスターDMAであるチャネルアダプタDMAC120が指定され、転送先アドレスフィールド511としては、スイッチアダプタDMAC420が指定されている。
DMAコントローラ420は、DMAコントローラ120に、分割DMA転送リクエスト610に対応した分割終了ステータス621、622を返送する。分割終了ステータス621、622には、分割DMA転送リクエスト610に含まれていたDMAシーケンスフィールド524の情報が含まれており、DMAコントローラ120は、そのDMAシーケンスフィールドの情報を確認することで、分割DMA転送の転送順序の確認を行う。
図12は、本発明の実施形態に係るディスク制御装置に用いられる分割DMA送信時のDMAシーケンスフィールド更新フローを示す図であり、図13は本発明の実施形態に係るディスク制御装置に用いられる分割ステータス受信時のDMAシーケンスフィールド確認フローを示す図である。各DMACは、現在のDMAシーケンスフィールドの値を変数CURR_DMA_SEQに保持している。分割DMA送信時には、CURR_DMA_SEQをインクリメントしながら、各転送パケットのDMAシーケンスフィールド524に挿入する。また、各DMACは、次に戻ってくるべき分割DMAステータスの値を変数NEXT_DMA_SEQに保持している。分割DMAステータスが戻ってきたなら、そのDMAシーケンスの値を期待値と比較し、一致したならNEXT_DMA_SEQをインクリメントする。不一致の場合は、現在しかかり中の分割DMA転送リクエスト(NEXT_DMA_SEQからCURR_DMA_SEQまで)をキャンセルした後、プロセッサに障害通知を行う。
図9及び図10、図12及び図13に示す構成例によれば、分割DMA転送においても、DMAシーケンスフィールド524を用いて確実にDMA毎の転送順序の制御を行うことが可能となる。すなわち、本構成例によって、コネクションレス型の多重通信で、高信頼のディスク制御装置を実現することができる。
また、図9及び図10には、本発明の実施形態に係るディスク制御装置に用いられる2重WRITEのパケットフロー(プロトコル)を示してある。本構成例では、チャネルアダプタDMAC120からスイッチアダプタDMAC420を介してメモリアダプタのDMAC321、322に分割DMAリクエスト611、612を発行している。すなわち、分割DMAリクエスト610のパケットには、転送元アドレスフィールド521としてチャネルアダプタDMAC120が指定され、転送先アドレスフィールド511としてスイッチアダプタDMAC420が指定され、宛先フィールドとしてメモリアダプタDMAC321,322が指定され、データブロック(フィールド)531には、転送データが格納されている。
スイッチアダプタ内のDMAコントローラ420で、DMAC321を転送先アドレスフィールドに持ち、転送データ531を含んだ分割DMAリクエストパケット611と、DMAC322を転送先アドレスフィールドに持ち、転送データ531を含んだ分割DMAリクエストパケット612が生成され、それぞれの転送先アドレスにたいして転送が行われる。メモリアダプタのDMAC321、322では、分割DMAリクエスト611、612に対して、スイッチアダプタDMAC420を介してチャネルアダプタDMAC120に対し分割ステータス621、622を返送する。
図9及び図10の上述した構成例により、スイッチアダプタのDMACによるキャッシュメモリ2重WRITEが実現できる。メモリアダプタ300に近接したスイッチアダプタ400のDMAC420で2重WRITEのためのパケットを生成するので、内部ネットワーク内の帯域を浪費することがなく、パス効率を向上させることができる。すなわち、本構成例例により、高性能かつ高信頼なディスク制御装置を実現することが可能となる。
次に、図7は、本発明の実施形態に係るディスク制御装置におけるスイッチアダプタの具体的構成例を示す図である。図7に示すスイッチアダプタは、複数のDLE410と複数のDMAC420とセレクタ430とを備えている。受信側DLE410から受信されたパケットは、受信側DMAC420の中で複数の受信FIFOバッファ(VC0,VC1)に分けて格納された後、送信FIFOバッファ間毎に存在するセレクタ論理回路4301、4302、4306、4307を通して、送信側DMAC420内の送信FIFOに送られ、送信側DLE410から送出される。
図7に示す構成例では、図8に示すルーティング制御情報、DMAC制御情報及びデータ情報を有するパケットと同様に、複数のDMAコントローラ間で転送されるパケットが、パケット制御情報を介して、宛先のDMAC情報を含んだヘッダ部と、それ以外のデータを含んだデータ部とから構成されており、ヘッダ部は、当該ヘッダ部内の転送エラーを保証するためのヘッダ部エラーチェックコードを含み、データ部は、当該データ部内の転送エラーを保証するためのデータ部エラーチェックコードを含んでいる。
スイッチアダプタ内の受信側DMAコントローラ420は、ヘッダ部エラーチェックコードを確認するまでは、パケットを送信側DMACに送らない。ヘッダ部エラーチェックコードを確認した後、パケットのヘッダ部とデータ部が、送信側DMACに対してパイプライン処理的に送られる。また、ヘッダ部エラーチェックコードでエラーが見つかった場合は、そのパケットを破棄し、しかるべきエラー処理を実行する。
図7に示す構成例により、スイッチアダプタは、受信DLEからすべてのデータ部を取り込んで、データ部エラーチェックコードを確認する前に、送信DLEからの送信処理を始める事ができるとともに、ヘッダ部にエラーが生じて宛先の不正となったパケットに対しては、パケット転送を破棄することによってエラーの伝播を抑制することが可能となる。すなわち、本構成例により、高性能かつ高信頼なディスク制御装置を実現することが可能となる。
また、図4に示すチャネルアダプタ、図5に示すプロセッサアダプタのように、本発明の実施形態に係るディスク制御装置に用いられるアダプタでは、複数のDMACが複数のDLEを共有する構成をとっている。図4のチャネルアダプタを例にすると、DLEが2個でDMACが16個設けられて、各DMACが数の少ないDLEを共有するという状況が考えられる。この冗長構成により、例えば、DMACが或るDLEを介してDMA通信していた際に当該DLEに障害が発生した場合でも、DMAC調停回路1150(図4参照)または2150(図5参照)で経路制御することにより、別のDLEと接続し直すことが可能となる。同様に、複数のDMACの処理を、DMAC調停回路1150または2150で経路制御することにより、複数のDLE間に割り振って、負荷分散を実現することも可能となる。
ただし、本構成例の調停回路1150及び2150は、同じDMACからの一連の分割DMAリクエストと分割ステータスについては、同じDLEから送受信するように制御する。より好ましくは、同じDMACからのリクエストとステータスについては、通常動作の送受信DLEを固定する。
図4と図5に示すような構成例により、一連の分割DMAリクエストと分割ステータスの内部ネットワーク経路が固定され、経路の相違による順序の入れ替え(追い越し)の可能性がなくなり、分割DMAリクエストと分割ステータスの順序制御を著しく容易にする。すなわち、本構成例によって、高信頼なディスク制御装置を容易に実現することが可能となる。
次に、図14は本発明の他の実施形態に係るディスク制御装置の全体構成を示す図である。図14に示す本発明の他の実施形態では、複数のチャネルアダプタ100と複数のプロセッサアダプタ200と複数のメモリアダプタ300とが、複数のスイッチアダプタ400によって接続されている。すべてのアダプタ間に複数のパスを設けることにより、任意の一点障害を救済できる冗長性を実現することができる。各アダプタの接続態様は図14に図示する通りであり、それぞれのアダプタは、対応している2つのアダプタに対してそれぞれのパスを設けている。
本発明の他の実施形態によって、ディスク制御装置のシステムとしての冗長性を高めることで、信頼性を向上させることが可能となる。
さらに、図15は本発明の更に他の実施形態に係るディスク制御装置の全体構成を示す図である。図15に示す本発明の更に他の実施形態では、図14に示す本発明の他の実施形態に係るディスク制御装置2つを、そのスイッチアダプタの拡張ポート同士を接続させることにより、ディスク制御装置全体として拡張した構成をとる。この接続態様により、チャネルアダプタ、プロセッサアダプタ、メモリアダプタを増設することができ、同一のアーキテクチャでシステムのスケーラビリティを向上させている。すなわち、本発明の更に他の実施形態により、ディスク制御装置のスケーラビリティを改善することが可能となる。
以上説明したように、図1〜図15に図示するような本発明の実施形態に係るディスク制御装置を採用すると、次に示すような機能や効果を奏させることが可能となる。すなわち、本実施形態によれば、1つのDLEに対して、複数のバッファを対応させることができ、例えば、制御系内部ネットワークとデータ系内部ネットワークを1つのDLEに混在させることができる。さらに、調停回路の動作により、複数のバッファ間に優先度を設けることができ、例えば、制御系内部ネットワークをデータ系内部ネットワークより優先させることにより、両者の混在による制御系内部ネットワークのアクセス遅延時間増大を回避することができる。これにより、より単純な内部ネットワーク構成のディスク制御装置を実現することが可能となり、性能改善と低コスト化の両立を実現することができる。
また、本実施形態によれば、1つのDLEに対して、複数のDMACを対応させることができ、例えば、制御系内部ネットワークとデータ系内部ネットワークを1つのDLEに混在させることができる。また、1つのMCに対して、複数のDMACを対応させることができ、制御系メモリとデータ系メモリを混在させることが可能となる。これにより、より単純な内部ネットワーク構成のディスク制御装置を実現することが可能となり、性能改善と低コスト化の両立を実現することができる。
また、本実施形態によれば、コネクションレス型の多重通信によるDMA転送においても、適切な順序保証とそのチェックを行うことができ、また、障害発生時にも適切な障害処理を実施することが可能で、従来と同等の高信頼ディスク制御装置を実現することができる。また、本実施形態によれば、ルーティング制御情報と、DMAC制御情報と、データ情報を別々のエラーチェックコードで保護することが可能となり、より細かなDMA転送制御と障害回復処理が行える。特に、スイッチアダプタ経由の2重WRITE時などルーティング制御情報の書き換えが必要となる場合でも、エラーチェックコード再計算の範囲を最小限に限定することが可能とり、高信頼かつ高性能なディスク制御装置を実現することができる。
また、本実施形態によれば、スイッチアダプタのDMACによるキャッシュメモリ2重WRITEが実現できる。キャッシュメモリアダプタに近接したスイッチアダプタのDMACで2重WRITEのためのパケットを生成するので、内部ネットワーク内の帯域を浪費することがなく、パス効率を向上させることができる。
また、本実施形態によれば、スイッチアダプタは、受信DLEからすべてのデータ部を取り込んでデータ部エラーチェックコードを確認する前に、送信DLEからの送信処理を始めることができるとともに、ヘッダ部にエラーが生じて宛先の不正となったパケットに対しては、パケット転送を破棄することによってエラーの伝播を抑制することが可能となる。また、本実施形態によれば、一連の分割DMAリクエストと分割ステータスの内部ネットワーク経路が固定され、経路の相違による順序の入れ替え(追い越し)の可能性がなくなり、分割DMAリクエストと分割ステータスの順序制御を著しく容易にする。
また、本実施形態によれば、ディスク制御装置のシステムとして冗長性を持たせることで、信頼性を向上させることが可能となる。また、本実施形態によれば、ディスク制御装置のスケーラビリティを改善することが可能となる。
本発明の実施形態に係るディスク制御装置の全体構成を示す図である。 本実施形態に係るディスク制御装置における各アダプタに用いられるデータリンクエンジンの具体的構成例を示す図である。 本実施形態に係るディスク制御装置における各アダプタに用いられるDMAコントローラの具体的構成例を示す図である。 本実施形態に係るディスク制御装置におけるチャネルアダプタの構成を示す図である。 本実施形態に係るディスク制御装置におけるプロセッサアダプタの構成を示す図である。 本実施形態に係るディスク制御装置におけるメモリアダプタの構成を示す図である。 本実施形態に係るディスク制御装置におけるスイッチアダプタの構成例を示す図である。 本実施形態に係るディスク制御装置に用いられるパケットの構成を示す図である。 本実施形態に係るディスク制御装置に用いられるパケットフローを示す図である。 本実施形態に係るディスク制御装置に用いられるプロトコルを示す図である。 本実施形態に係るディスク制御装置に用いられる多重通信転送プロトコルを示す図である。 本実施形態に係るディスク制御装置に用いられる分割DMA送信時のDMAシーケンスフィールド更新フローを示す図である。 本実施形態に係るディスク制御装置に用いられる分割ステータス受信時のDMAシーケンスフィールド確認フローを示す図である。 本発明の他の実施形態に係るディスク制御装置の全体構成を示す図である。 本発明の更に他の実施形態に係るディスク制御装置の全体構成を示す図である。 従来のディスク制御装置の全体構成を示す図である。 従来のディスク制御装置に用いられるパケットの構成を示す図である。 従来のディスク制御装置に用いられるパケットフローを示す図である。 従来のディスク制御装置に用いられるプロトコルを示す図である。 従来のディスク制御装置に用いられる非多重通信転送プロトコルを示す図である。
符号の説明
100 チャネルアダプタ
110,210,310,410 データリンクエンジン
115,125,215,225、315,325,430 セレクタ
120,220,320,321,322,420 DMAコントローラ
130 プロトコルエンジン
200 プロセッサアダプタ
230 マイクロプロセッサ
300 メモリアダプタ
330 メモリコントローラ
340 メモリモジュール
400 スイッチアダプタ
500 転送パケット
510 ルーティングヘッダ部
511 転送先アドレスフィールド
520 コマンドヘッダ部
521 転送元アドレスフィールド
522,523 DMA宛先アドレス
524 DMAシーケンスフィールド
530 データブロック部
600 DMAリスト
610,611,612,615,616 分割DMAリクエスト
621,622,625,626 分割ステータス
630 完了ステータス

Claims (15)

  1. 各々ホストコンピュータ又はディスクドライブ装置と接続される接続インターフェースを有する、複数のインタフェースアダプタと、前記ホストコンピュータと前記ディスクドライブ装置の間で転送されるデータを一時的に格納するメモリアダプタと、前記インタフェースアダプタと前記メモリアダプタの動作を制御するプロセッサアダプタと、前記インタフェースアダプタ、前記メモリアダプタ、前記プロセッサアダプタの間を互いに接続して内部ネットワークを構成するスイッチアダプタと、を備え、
    前記インタフェースアダプタ、前記メモリアダプタ、前記プロセッサアダプタ、及び前記スイッチアダプタは、前記内部ネットワークの通信プロトコル制御を行うDMAコントローラを有し、
    各アダプタに設けられた前記DMAコントローラの間でパケット多重通信を行う
    ことを特徴とするディスク制御装置。
  2. 請求項1において、
    前記インタフェースアダプタ、前記メモリアダプタ、前記プロセッサアダプタ及び前記スイッチアダプタは、それぞれ複数のDMAコントローラと1つ以上のデータリンクエンジンを有し、
    複数の前記DMAコントローラは前記データリンクエンジンを共有しており、複数の前記DMAコントローラは前記データリンクエンジンを介してDMA転送を並列に実行する
    ことを特徴とするディスク制御装置。
  3. 請求項1又は2において、
    前記DMAコントローラは、複数の受信FIFOバッファと複数の送信FIFOバッファを持ち、
    複数の前記受信FIFOバッファの間で受信データ間の競合が調停され、複数の前記送信FIFOバッファの間で送信データ間の競合が調停される
    ことを特徴とするディスク制御装置。
  4. 請求項1又は2において、
    前記DMAコントローラは、受信FIFOバッファと送信FIFOバッファを持ち、
    複数の前記DMAコントローラに属するそれぞれの前記受信FIFOバッファの間で受信データ間の競合が調停され、複数の前記DMAコントローラに属するそれぞれの前記送信FIFOバッファの間で送信データ間の競合が調停される
    ことを特徴とするディスク制御装置。
  5. 各々ホストコンピュータ又はディスクドライブ装置と接続される接続インターフェースを有する、複数のインタフェースアダプタと、前記ホストコンピュータと前記ディスクドライブ装置の間で転送されるデータを一時的に格納するメモリアダプタと、前記インタフェースアダプタと前記メモリアダプタの動作を制御するプロセッサアダプタと、前記インタフェースアダプタ、前記メモリアダプタ、前記プロセッサアダプタの間を互いに接続して内部ネットワークを構成するスイッチアダプタと、を備え、
    前記インタフェースアダプタ、前記メモリアダプタ、前記プロセッサアダプタ及び前記スイッチアダプタは、それぞれ、前記内部ネットワークの通信プロトコル制御を行う複数のDMAコントローラと、前記DMAコントローラによって共有される1つ以上のデータリンクエンジンと、を有し、
    前記DMAコントローラが複数の受信FIFOバッファと送信FIFOバッファを有することで、1つのデータリンクエンジンに対して複数のバッファを対応させ、
    複数の前記DMAコントローラに属するそれぞれの前記受信FIFOバッファの間で受信データ間の競合が調停され、複数の前記DMAコントローラに属するそれぞれの前記送信FIFOバッファの間で送信データ間の競合が調停されることで、複数のバッファ間に優先度を設け、
    1つのデータリンクエンジンに制御系の内部ネットワークとデータ系の内部ネットワークを混在させて、各アダプタに設けられた前記DMAコントローラの間でパケット多重通信を行う
    ことを特徴とするディスク制御装置。
  6. 各々ホストコンピュータ又はディスクドライブ装置と接続される接続インターフェースを有する、複数のインタフェースアダプタと、前記ホストコンピュータと前記ディスクドライブ装置の間で転送されるデータを一時的に格納するメモリアダプタと、前記インタフェースアダプタと前記メモリアダプタの動作を制御するプロセッサアダプタと、前記インタフェースアダプタ、前記メモリアダプタ、前記プロセッサアダプタの間を互いに接続して内部ネットワークを構成するスイッチアダプタと、を備え、
    前記インタフェースアダプタ、前記メモリアダプタ、前記プロセッサアダプタ、及び前記スイッチアダプタは、前記内部ネットワークの通信プロトコル制御を行うDMAコントローラを有するディスク制御装置であって、
    各アダプタの前記DMAコントローラ間で転送されるパケットは、転送先のDMAコントローラを指定するアドレスフィールドと、転送元のDMAコントローラを指定するアドレスフィールドと、1つのDMA転送を複数のパケットに分割して転送する際の転送順序を管理するDMAシーケンスフィールドと、を有し、
    前記DMAシーケンスフィールドは、1つのDMA転送内においてユニークなタスクIDを持つ
    ことを特徴とするディスク制御装置。
  7. 請求項6において、
    各アダプタのDMAコントローラ間で転送されるパケットは、前記パケットの中継DMAコントローラを指定する第1のアドレスと、宛先DMAコントローラを指定する第2及び第3のアドレスと、前記宛先DMAコントローラに転送すべき転送データと、を持つ
    ことを特徴とするディスク制御装置。
  8. 請求項6又は7において、
    前記インタフェースアダプタ、前記メモリアダプタ、前記プロセッサアダプタ及び前記スイッチアダプタは、それぞれ複数のDMAコントローラと1つ以上のデータリンクエンジンを有し、
    各アダプタのDMAコントローラ間で転送されるパケットは、前記データリンクエンジンに対する制御情報を含んだルーティング部と、前記DMAコントローラに対する制御情報を含んだコマンド部と、それ以外のデータを含んだデータ部と、から構成され、
    前記ルーティング部は当該ルーティング部内の転送エラーを保証するためのルーティング部エラーチェックコードを含み、前記コマンド部は当該コマンド部内の転送エラーを保証するためのコマンド部エラーチェックコードを含み、前記データ部は当該データ部内の転送エラーを保証するためのデータ部エラーチェックコードを含む
    ことを特徴とするディスク制御装置。
  9. 請求項6、7又は8において、
    前記転送元のアドレスフィールドで指定されたDMAコントローラから、前記転送先のアドレスフィールドで指定されたDMAコントローラに対して、分割DMA転送を行い、
    前記転送先アドレスフィールドで指定されたDMAコントローラは、前記転送元アドレスフィールドで指定されたDMAコントローラに対して、前記分割したDMA転送に対応した分割終了ステータスを返送し、
    前記分割終了ステータスは、前記分割したDMA転送に含まれていたDMAシーケンスフィールドの情報を有し、
    前記転送元アドレスフィールドで指定されたDMAコントローラは、前記分割終了ステータスに含まれている前記DMAシーケンスフィールドの情報を確認することによって前記分割したDMA転送の転送順序の確認を行う
    ことを特徴とするディスク制御装置。
  10. 請求項6ないし9のいずれか1つの請求項において、
    前記DMAコントローラ間で転送されるパケットが、前記スイッチアダプタ内のDMAコントローラを指定する第1のアドレスと、宛先DMAコントローラを指定する第2及び第3のアドレスと、前記宛先DMAコントローラに転送すべき転送データと、を有する場合、
    前記スイッチアダプタ内のDMAコントローラにおいて、前記第2のアドレスを前記転送先のアドレスフィールドに持ち且つ前記転送データを含んだパケットと、前記第3のアドレスを前記転送先のアドレスフィールドに持ち且つ前記転送データを含んだパケットと、を生成する
    ことを特徴とするディスク制御装置。
  11. 請求項6又は7において、
    各アダプタのDMAコントローラ間で転送されるパケットは、パケット制御情報を含んだヘッダ部と、それ以外のデータを含んだデータ部と、から構成され、
    前記ヘッダ部は当該ヘッダ部内の転送エラーを保証するためのヘッダ部エラーチェックコードを含み、前記データ部は当該データ部内の転送エラーを保証するためのデータ部エラーチェックコードを含み、
    前記スイッチアダプタ内のDMAコントローラは、ヘッダ部エラーチェックコードが正常なパケットのみを通過させる
    ことを特徴とするディスク制御装置。
  12. 請求項1において、
    前記インタフェースアダプタ、前記メモリアダプタ、前記プロセッサアダプタ及び前記スイッチアダプタは、複数のDMAコントローラと複数のデータリンクエンジンを有し、
    前記DMAコントローラが前記データリンクエンジンを介してDMA転送を実行する際、1つのDMA転送内では同一のデータリンクエンジンを介して転送が行われる
    ことを特徴とするディスク制御装置。
  13. 各々ホストコンピュータ又はディスクドライブ装置と接続される接続インターフェースを有する、複数のインタフェースアダプタと、前記ホストコンピュータと前記ディスクドライブ装置の間で転送されるデータを一時的に格納する一のメモリアダプタと、前記複数のインタフェースアダプタと前記一のメモリアダプタの動作を制御する一のプロセッサアダプタと、前記複数のインタフェースアダプタ、前記一のメモリアダプタ、前記一のプロセッサアダプタの間を互いに接続して内部ネットワークを構成する一のスイッチアダプタと、を備え、前記複数のインタフェースアダプタ、前記一のメモリアダプタ、前記一のプロセッサアダプタ、及び前記一のスイッチアダプタは、前記内部ネットワークの通信プロトコル制御を行うDMAコントローラを有し、各アダプタに設けられた前記DMAコントローラの間でパケット多重通信を行う一のディスク制御装置と、
    前記一のディスク制御装置に備えられた前記複数のインタフェースアダプタ、前記一のメモリアダプタ、前記一のプロセッサアダプタ、及び前記一のスイッチアダプタと同様の構成である他のディスク制御装置と、を設け、
    前記一のスイッチアダプタは、前記一の各アダプタに接続されるとともに前記他の各アダプタにも接続され、
    前記他のスイッチアダプタは、前記他の各アダプタに接続されるとともに前記一の各アダプタにも接続される
    ことを特徴とするディスク制御装置。
  14. 請求項13において、
    前記一のスイッチアダプタ及び/又は前記他のスイッチアダプタの拡張ポートに対して、更に他のスイッチアダプタの拡張ポートを接続する
    ことを特徴とするディスク制御装置。
  15. 各々ホストコンピュータ又はディスクドライブ装置と接続される接続インターフェースを有する、複数のインタフェースアダプタと、前記ホストコンピュータと前記ディスクドライブ装置の間で転送されるデータを一時的に格納するメモリアダプタと、前記インタフェースアダプタと前記メモリアダプタの動作を制御するプロセッサアダプタと、前記インタフェースアダプタ、前記メモリアダプタ、前記プロセッサアダプタの間を互いに接続して内部ネットワークを構成するスイッチアダプタと、を備え、
    前記インタフェースアダプタ、前記メモリアダプタ、前記プロセッサアダプタ、及び前記スイッチアダプタは、前記内部ネットワークの通信プロトコル制御を行うDMAコントローラと、前記内部ネットワークとの間でDMA転送を実行するデータリンクエンジンと、を有し、
    各アダプタに設けられた前記DMAコントローラの間で転送されるパケットは、転送先のDMAコントローラを指定するアドレスフィールドと、転送元のDMAコントローラを指定するアドレスフィールドと、1つのDMA転送を複数パケットに分割して転送する際の転送順序を管理するDMAシーケンスフィールドと、を備える
    ことを特徴とするディスク制御装置。
JP2004038459A 2004-02-10 2004-02-16 ディスク制御装置 Expired - Fee Related JP4405277B2 (ja)

Priority Applications (8)

Application Number Priority Date Filing Date Title
JP2004038459A JP4405277B2 (ja) 2004-02-16 2004-02-16 ディスク制御装置
US10/826,471 US7231469B2 (en) 2004-02-16 2004-04-16 Disk controller
DE102004023810A DE102004023810B3 (de) 2004-02-16 2004-05-13 Speicherplattensteuerung
GB0411905A GB2411022B (en) 2004-02-16 2004-05-27 Disk controller
FR0405789A FR2866448B1 (fr) 2004-02-16 2004-05-28 Controleur de disque
US11/249,174 US7467238B2 (en) 2004-02-10 2005-10-11 Disk controller and storage system
US11/652,567 US7469307B2 (en) 2004-02-16 2007-01-12 Storage system with DMA controller which controls multiplex communication protocol
US12/269,152 US7917668B2 (en) 2004-02-10 2008-11-12 Disk controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004038459A JP4405277B2 (ja) 2004-02-16 2004-02-16 ディスク制御装置

Publications (3)

Publication Number Publication Date
JP2005228245A JP2005228245A (ja) 2005-08-25
JP2005228245A5 JP2005228245A5 (ja) 2006-11-16
JP4405277B2 true JP4405277B2 (ja) 2010-01-27

Family

ID=32677684

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004038459A Expired - Fee Related JP4405277B2 (ja) 2004-02-10 2004-02-16 ディスク制御装置

Country Status (5)

Country Link
US (2) US7231469B2 (ja)
JP (1) JP4405277B2 (ja)
DE (1) DE102004023810B3 (ja)
FR (1) FR2866448B1 (ja)
GB (1) GB2411022B (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7958224B2 (en) 1999-02-17 2011-06-07 Catalina Marketing Corporation Incentive network for distributing incentives on a network-wide basis and for permitting user access to individual incentives from a plurality of network servers
KR100551480B1 (ko) * 2004-10-25 2006-02-13 삼성전자주식회사 프로세서와 비휘발성 메모리 사이에 위치하는 메모리장치, 이를 포함한 시스템 및 상기 시스템 내의 데이터송수신 방법
US7590885B2 (en) * 2005-04-26 2009-09-15 Hewlett-Packard Development Company, L.P. Method and system of copying memory from a source processor to a target processor by duplicating memory writes
US8427941B2 (en) * 2005-09-23 2013-04-23 Infortrend Technology, Inc. Redundant storage virtualization subsystem having data path branching functionality
JP4446968B2 (ja) * 2006-02-22 2010-04-07 シャープ株式会社 データ処理装置
JP4362502B2 (ja) 2006-09-26 2009-11-11 株式会社日立製作所 ディスク制御装置及びデータ転送制御方法
JP4933284B2 (ja) * 2007-01-25 2012-05-16 株式会社日立製作所 ストレージ装置及び負荷分散方法
JP2008204041A (ja) 2007-02-19 2008-09-04 Hitachi Ltd ストレージ装置及びデータ配置制御方法
JP4375435B2 (ja) 2007-05-23 2009-12-02 株式会社日立製作所 予知型データ移行を行う階層ストレージシステム
JP2009193282A (ja) * 2008-02-14 2009-08-27 Sharp Corp データ処理装置
JP2009251725A (ja) 2008-04-02 2009-10-29 Hitachi Ltd 記憶制御装置及び記憶制御装置を用いた重複データ検出方法。
JP5112246B2 (ja) 2008-10-09 2013-01-09 株式会社日立製作所 ストレージシステム及び通信方法
WO2010116538A1 (en) * 2009-04-06 2010-10-14 Hitachi, Ltd. Storage apparatus and data transfer method
JP5444194B2 (ja) * 2010-11-11 2014-03-19 エヌイーシーコンピュータテクノ株式会社 データ転送装置、データ転送方法、コンピュータシステム
US8583847B2 (en) * 2010-12-09 2013-11-12 Dell Products, Lp System and method for dynamically detecting storage drive type
US9015519B2 (en) * 2012-01-31 2015-04-21 Symantec Corporation Method and system for cluster wide adaptive I/O scheduling by a multipathing driver
US9135097B2 (en) * 2012-03-27 2015-09-15 Oracle International Corporation Node death detection by querying
US9658975B2 (en) 2012-07-31 2017-05-23 Silicon Laboratories Inc. Data transfer manager
US9501437B2 (en) 2012-11-15 2016-11-22 Empire Technology Development Llc Scalable storage system having multiple storage channels

Family Cites Families (98)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL8004884A (nl) 1979-10-18 1981-04-22 Storage Technology Corp Virtueel stelsel en werkwijze voor het opslaan van gegevens.
GB8626642D0 (en) 1986-11-07 1986-12-10 Nighthawk Electronics Ltd Data buffer/switch
US5249279A (en) * 1989-11-03 1993-09-28 Compaq Computer Corporation Method for controlling disk array operations by receiving logical disk requests and translating the requests to multiple physical disk specific commands
US5206943A (en) * 1989-11-03 1993-04-27 Compaq Computer Corporation Disk array controller with parity capabilities
US5680574A (en) * 1990-02-26 1997-10-21 Hitachi, Ltd. Data distribution utilizing a master disk unit for fetching and for writing to remaining disk units
US5140592A (en) * 1990-03-02 1992-08-18 Sf2 Corporation Disk array system
US5201053A (en) * 1990-08-31 1993-04-06 International Business Machines Corporation Dynamic polling of devices for nonsynchronous channel connection
US5257391A (en) * 1991-08-16 1993-10-26 Ncr Corporation Disk controller having host interface and bus switches for selecting buffer and drive busses respectively based on configuration control signals
JP2834927B2 (ja) 1992-02-28 1998-12-14 三菱電機株式会社 計算機システム
US5740465A (en) * 1992-04-08 1998-04-14 Hitachi, Ltd. Array disk controller for grouping host commands into a single virtual host command
JPH0756693A (ja) 1993-08-13 1995-03-03 Toshiba Corp ディスク・アレイ装置とディスク書込み制御装置
US5511227A (en) * 1993-09-30 1996-04-23 Dell Usa, L.P. Method for configuring a composite drive for a disk drive array controller
JP3160448B2 (ja) * 1993-11-30 2001-04-25 富士通株式会社 データ訂正装置
JPH07200187A (ja) 1993-12-30 1995-08-04 Hitachi Ltd ディスクアレイ装置
JP3080827B2 (ja) 1994-01-27 2000-08-28 日本電気株式会社 ファイル装置用多重化インタフェース及びその制御方法
US5574950A (en) * 1994-03-01 1996-11-12 International Business Machines Corporation Remote data shadowing using a multimode interface to dynamically reconfigure control link-level and communication link-level
US5548788A (en) * 1994-10-27 1996-08-20 Emc Corporation Disk controller having host processor controls the time for transferring data to disk drive by modifying contents of the memory to indicate data is stored in the memory
US5729763A (en) * 1995-08-15 1998-03-17 Emc Corporation Data storage system
US6355681B2 (en) * 1995-12-07 2002-03-12 Glytech, Inc. Glycine substitutes and precursors for treating a psychosis
JP3776496B2 (ja) 1996-01-17 2006-05-17 株式会社日立製作所 データ記憶システム
US5761534A (en) * 1996-05-20 1998-06-02 Cray Research, Inc. System for arbitrating packetized data from the network to the peripheral resources and prioritizing the dispatching of packets onto the network
JPH10105347A (ja) 1996-10-02 1998-04-24 Hitachi Ltd ディスクアレイ制御システム
US5949982A (en) * 1997-06-09 1999-09-07 International Business Machines Corporation Data processing system and method for implementing a switch protocol in a communication system
US6148349A (en) * 1998-02-06 2000-11-14 Ncr Corporation Dynamic and consistent naming of fabric attached storage by a file system on a compute node storing information mapping API system I/O calls for data objects with a globally unique identification
US5974058A (en) * 1998-03-16 1999-10-26 Storage Technology Corporation System and method for multiplexing serial links
JP3657428B2 (ja) * 1998-04-27 2005-06-08 株式会社日立製作所 記憶制御装置
US6711632B1 (en) * 1998-08-11 2004-03-23 Ncr Corporation Method and apparatus for write-back caching with minimal interrupts
JP4392877B2 (ja) 1998-09-18 2010-01-06 株式会社日立製作所 ディスクアレイ制御装置
US6542961B1 (en) 1998-12-22 2003-04-01 Hitachi, Ltd. Disk storage system including a switch
JP4400895B2 (ja) * 1999-01-07 2010-01-20 株式会社日立製作所 ディスクアレイ制御装置
JP4294142B2 (ja) * 1999-02-02 2009-07-08 株式会社日立製作所 ディスクサブシステム
US6370605B1 (en) * 1999-03-04 2002-04-09 Sun Microsystems, Inc. Switch based scalable performance storage architecture
JP2000298641A (ja) 1999-04-15 2000-10-24 Nec Corp 情報処理装置およびそのデータ転送方法ならびにデータ転送制御プログラムを格納した記憶媒体
US6401149B1 (en) * 1999-05-05 2002-06-04 Qlogic Corporation Methods for context switching within a disk controller
US6330626B1 (en) * 1999-05-05 2001-12-11 Qlogic Corporation Systems and methods for a disk controller memory architecture
US6542951B1 (en) * 1999-08-04 2003-04-01 Gateway, Inc. Information handling system having integrated internal scalable storage system
JP4061563B2 (ja) * 1999-09-16 2008-03-19 松下電器産業株式会社 磁気ディスク装置、磁気ディスク装置のディスクアクセス方法、及び磁気ディスク装置用ディスクアクセス制御プログラム記録媒体
US6772108B1 (en) * 1999-09-22 2004-08-03 Netcell Corp. Raid controller system and method with ATA emulation host interface
US6581137B1 (en) * 1999-09-29 2003-06-17 Emc Corporation Data storage system
CN1129072C (zh) 1999-10-27 2003-11-26 盖内蒂克瓦尔有限公司 具有可配置数据/地址通道结构的数据处理系统
US6604155B1 (en) * 1999-11-09 2003-08-05 Sun Microsystems, Inc. Storage architecture employing a transfer node to achieve scalable performance
US6834326B1 (en) * 2000-02-04 2004-12-21 3Com Corporation RAID method and device with network protocol between controller and storage devices
JP3696515B2 (ja) 2000-03-02 2005-09-21 株式会社ソニー・コンピュータエンタテインメント カーネル機能実現構造及びそれを備えたエンタテインメント装置、カーネルによる周辺ディバイスの制御方法
US7003601B1 (en) 2000-03-31 2006-02-21 Emc Corporation Data storage system having separate data transfer section and message network with plural directions on a common printed circuit board
US6877061B2 (en) * 2000-03-31 2005-04-05 Emc Corporation Data storage system having dummy printed circuit boards
US6651130B1 (en) * 2000-04-28 2003-11-18 Emc Corporation Data storage system having separate data transfer section and message network with bus arbitration
US6779071B1 (en) * 2000-04-28 2004-08-17 Emc Corporation Data storage system having separate data transfer section and message network with status register
US6611879B1 (en) * 2000-04-28 2003-08-26 Emc Corporation Data storage system having separate data transfer section and message network with trace buffer
US6816916B1 (en) * 2000-06-29 2004-11-09 Emc Corporation Data storage system having multi-cast/unicast
US6820171B1 (en) * 2000-06-30 2004-11-16 Lsi Logic Corporation Methods and structures for an extensible RAID storage architecture
US6952734B1 (en) * 2000-08-21 2005-10-04 Hewlett-Packard Development Company, L.P. Method for recovery of paths between storage area network nodes with probationary period and desperation repair
US6874039B2 (en) * 2000-09-08 2005-03-29 Intel Corporation Method and apparatus for distributed direct memory access for systems on chip
US6631433B1 (en) * 2000-09-27 2003-10-07 Emc Corporation Bus arbiter for a data storage system
US6684268B1 (en) * 2000-09-27 2004-01-27 Emc Corporation Data storage system having separate data transfer section and message network having CPU bus selector
US6901468B1 (en) * 2000-09-27 2005-05-31 Emc Corporation Data storage system having separate data transfer section and message network having bus arbitration
US6609164B1 (en) * 2000-10-05 2003-08-19 Emc Corporation Data storage system having separate data transfer section and message network with data pipe DMA
JP4068798B2 (ja) * 2000-10-31 2008-03-26 株式会社日立製作所 記憶サブシステム及びi/oインタフェースの制御方法ならびに情報処理システム
US6636933B1 (en) * 2000-12-21 2003-10-21 Emc Corporation Data storage system having crossbar switch with multi-staged routing
US7107337B2 (en) * 2001-06-07 2006-09-12 Emc Corporation Data storage system with integrated switching
JP2003084919A (ja) * 2001-09-06 2003-03-20 Hitachi Ltd ディスクアレイ装置の制御方法およびディスクアレイ装置
JP4721379B2 (ja) * 2001-09-26 2011-07-13 株式会社日立製作所 ストレージシステム、ディスク制御クラスタおよびディスク制御クラスタの増設方法
JP2003140837A (ja) * 2001-10-30 2003-05-16 Hitachi Ltd ディスクアレイ制御装置
AU2002361603A1 (en) * 2001-11-09 2003-05-26 Chaparral Network Storage, Inc. Transferring data using direct memory access
JP4188602B2 (ja) * 2002-01-10 2008-11-26 株式会社日立製作所 クラスタ型ディスク制御装置及びその制御方法
JP4338068B2 (ja) * 2002-03-20 2009-09-30 株式会社日立製作所 ストレージシステム
US7200715B2 (en) * 2002-03-21 2007-04-03 Network Appliance, Inc. Method for writing contiguous arrays of stripes in a RAID storage system using mapped block writes
US6868479B1 (en) * 2002-03-28 2005-03-15 Emc Corporation Data storage system having redundant service processors
US7209979B2 (en) * 2002-03-29 2007-04-24 Emc Corporation Storage processor architecture for high throughput applications providing efficient user data channel loading
US6792506B2 (en) * 2002-03-29 2004-09-14 Emc Corporation Memory architecture for a high throughput storage processor
US6877059B2 (en) * 2002-03-29 2005-04-05 Emc Corporation Communications architecture for a high throughput storage processor
US6865643B2 (en) * 2002-03-29 2005-03-08 Emc Corporation Communications architecture for a high throughput storage processor providing user data priority on shared channels
US6813689B2 (en) * 2002-03-29 2004-11-02 Emc Corporation Communications architecture for a high throughput storage processor employing extensive I/O parallelization
JP2003303055A (ja) 2002-04-09 2003-10-24 Hitachi Ltd ディスクアダプタとディスクアレイをスイッチを介して接続したディスク装置
JP2003323261A (ja) * 2002-04-26 2003-11-14 Hitachi Ltd ディスク制御システム、ディスク制御装置、ディスクシステム、及びその制御方法
JP4189171B2 (ja) * 2002-05-24 2008-12-03 株式会社日立製作所 ディスク制御装置
US6889301B1 (en) * 2002-06-18 2005-05-03 Emc Corporation Data storage system
JP2004110503A (ja) * 2002-09-19 2004-04-08 Hitachi Ltd 記憶制御装置、記憶システム、記憶制御装置の制御方法、チャネル制御部、及びプログラム
US6957303B2 (en) * 2002-11-26 2005-10-18 Hitachi, Ltd. System and managing method for cluster-type storage
JP2004192105A (ja) * 2002-12-09 2004-07-08 Hitachi Ltd 記憶装置の接続装置およびそれを含むコンピュータシステム
JP4352693B2 (ja) * 2002-12-10 2009-10-28 株式会社日立製作所 ディスクアレイ制御装置及びその制御方法
JP4107083B2 (ja) * 2002-12-27 2008-06-25 株式会社日立製作所 高可用ディスク制御装置とその障害処理方法及び高可用ディスクサブシステム
US7353321B2 (en) * 2003-01-13 2008-04-01 Sierra Logic Integrated-circuit implementation of a storage-shelf router and a path controller card for combined use in high-availability mass-storage-device shelves that may be incorporated within disk arrays
US6957288B2 (en) * 2003-02-19 2005-10-18 Dell Products L.P. Embedded control and monitoring of hard disk drives in an information handling system
JP4322031B2 (ja) * 2003-03-27 2009-08-26 株式会社日立製作所 記憶装置
JP2003263279A (ja) 2003-03-27 2003-09-19 Hitachi Ltd ディスクアレイ制御装置
US7143306B2 (en) * 2003-03-31 2006-11-28 Emc Corporation Data storage system
US20040199719A1 (en) * 2003-04-04 2004-10-07 Network Appliance, Inc. Standalone newtork storage system enclosure including head and multiple disk drives connected to a passive backplane
WO2004092942A2 (en) * 2003-04-09 2004-10-28 Netcell Corp. Method and apparatus for synchronizing data from asynchronous disk drive data transfers
WO2004095304A1 (en) * 2003-04-23 2004-11-04 Dot Hill Systems Corporation Network storage appliance with integrated redundant servers and storage controllers
JP4462852B2 (ja) * 2003-06-23 2010-05-12 株式会社日立製作所 ストレージシステム及びストレージシステムの接続方法
US7114014B2 (en) * 2003-06-27 2006-09-26 Sun Microsystems, Inc. Method and system for data movement in data storage systems employing parcel-based data mapping
US7389364B2 (en) * 2003-07-22 2008-06-17 Micron Technology, Inc. Apparatus and method for direct memory access in a hub-based memory system
US7200695B2 (en) 2003-09-15 2007-04-03 Intel Corporation Method, system, and program for processing packets utilizing descriptors
US7437425B2 (en) * 2003-09-30 2008-10-14 Emc Corporation Data storage system having shared resource
US7231492B2 (en) * 2003-09-30 2007-06-12 Emc Corporation Data transfer method wherein a sequence of messages update tag structures during a read data transfer
JP2005115603A (ja) * 2003-10-07 2005-04-28 Hitachi Ltd 記憶デバイス制御装置及びその制御方法
JP4275504B2 (ja) * 2003-10-14 2009-06-10 株式会社日立製作所 データ転送方法
JP2005149082A (ja) 2003-11-14 2005-06-09 Hitachi Ltd ストレージ制御装置、及びストレージ制御装置の制御方法

Also Published As

Publication number Publication date
GB2411022B (en) 2006-03-22
US7469307B2 (en) 2008-12-23
GB2411022A (en) 2005-08-17
DE102004023810B3 (de) 2005-08-25
JP2005228245A (ja) 2005-08-25
US7231469B2 (en) 2007-06-12
US20050182864A1 (en) 2005-08-18
US20070130385A1 (en) 2007-06-07
FR2866448B1 (fr) 2006-09-01
GB0411905D0 (en) 2004-06-30
FR2866448A1 (fr) 2005-08-19

Similar Documents

Publication Publication Date Title
JP4405277B2 (ja) ディスク制御装置
JP5322412B2 (ja) データ処理装置のための相互接続論理
US20090077272A1 (en) Disk controller
JP3709795B2 (ja) コンピュータシステムと、コンピュータシステム内のモジュール間の通信方法
JP4160642B2 (ja) ネットワークデータ転送方法
US7633856B2 (en) Multi-node system, internodal crossbar switch, node and medium embodying program
EP1708076B1 (en) Storage system and storage control method
US10601692B2 (en) Integrating a communication bridge into a data processing system
JP2005228245A5 (ja)
JPWO2009096029A1 (ja) パケット処理装置およびパケット処理プログラム
US20080263171A1 (en) Peripheral device that DMAS the same data to different locations in a computer
JP2011216942A (ja) ネットワークシステムの試験方法
US20050015529A1 (en) Duplexing system and method using serial-parallel bus matching
US20090292856A1 (en) Interserver communication mechanism and computer system
US20140010068A1 (en) Network Node Apparatus System, Apparatus, and Method
US20080313363A1 (en) Method and Device for Exchanging Data Using a Virtual Fifo Data Structure
US11444886B1 (en) Out of order packet buffer selection
JP6740683B2 (ja) 並列処理装置及び通信制御方法
US10341246B1 (en) Update packet sequence number packet ready command
KR20010095103A (ko) 데이터 블록 전송 방법 및 장치
CN112352227B (zh) 用于数据的缓冲传输的电路
JP4411138B2 (ja) データフロー制御方式、その回路、およびその方法
JPH11252184A (ja) ノード間接続装置
JP4564939B2 (ja) データ処理装置、データ転送方法、データ転送プログラム
JP2010010897A (ja) 多重化装置同期化処理装置及び多重化装置同期化処理方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061002

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061002

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090916

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: 20091020

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091104

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121113

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121113

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131113

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees