(57)【要約】【課題】  複数のプロセッサと共有メモリとの間をスター状に接続したディスクアレイ制御装置において、ブロードキャストを可能にする装置を提供することにある。【解決手段】  ブロードキャスト専用バスを別途設け、各プロセッサをブロードキャスト専用バスと接続する。【効果】  マルチプロセッサと共有メモリとの間をスター状に接続したディスクアレイ制御装置において、ブロードキャストを可能にする装置を提供することができる。【選択図】  図４
2006134341.tif 000002
【特許請求の範囲】
【請求項１】
ディスクアレイ制御装置であって、
ホストコンピュータまたはディスク装置と接続される、複数のインタフェース部と、
前記ホストコンピュータまたは前記ディスク装置との間のデータ転送に用いられる制御情報を格納するメモリ部と、
前記複数のインタフェース部と前記メモリ部との間に１対１に接続され、前記制御情報を転送するアクセスパスと、
前記複数のインタフェース部に接続され、前記制御情報とは異なるブロードキャスト転送に用いられるブロードキャストデータを転送するブロードキャスト専用バスとを有し、
前記複数のインタフェース部は、それぞれ、
複数のプロセッサと、
前記ブロードキャストデータを送受信するコントローラ部とを有し、
前記複数のインタフェース部のうちの一のインタフェース部内の前記コントローラ部は、前記ブロードキャスト専用バスの使用権を獲得して前記ブロードキャストデータを送信し、
前記複数のインタフェース部のうちの他のインタフェース部内の前記コントローラ部は、前記ブロードキャスト専用バスから、前記ブロードキャストデータを受信することを特徴とするディスクアレイ制御装置。
【請求項２】
請求項１に記載のディスクアレイ制御装置であって、
前記複数のインタフェース部のうちの一のインタフェース部内の前記コントローラ部は、当該インタフェース部内の前記複数のプロセッサのうちの何れかのプロセッサから、前記ブロードキャストデータを受信した場合、前記ブロードキャスト専用バスに対して前記ブロードキャストデータを送信することを特徴とするディスクアレイ制御装置。
【請求項３】
請求項１に記載のディスクアレイ制御装置であって、
前記複数のインタフェース部のうちの他のインタフェース部内の前記コントローラ部は、前記ブロードキャスト専用バスから前記ブロードキャストデータを受信した場合、自インタフェース部内の前記複数のプロセッサに対して、前記ブロードキャストデータを送信することを特徴とするディスクアレイ制御装置。
【請求項４】
請求項１に記載のディスクアレイ制御装置であって、
前記ブロードキャスト専用バスに接続されるアービタを有し、
前記複数のインタフェース部のうちの２以上のインタフェース部内の前記コントローラ部が、前記ブロードキャスト専用バスの使用権を要求した場合、
前記アービタは、前記２以上のインタフェース部内の前記コントローラ部からの要求のうち、何れか一つを許可することを特徴とするディスクアレイ制御装置。
【請求項５】
ディスクアレイ制御装置であって、
ホストコンピュータまたはディスク装置と接続される、複数のインタフェース部と、
前記複数のインタフェース部とアクセスパスにより１対１に接続されるメモリ部とを有し、
前記複数のインタフェース部は、それぞれ、
複数のプロセッサと、
前記アクセスパスを介したブロードキャスト転送に用いられるブロードキャストデータを格納するブロードキャスト受信用メモリと、
前記ブロードキャストデータを受信するブロードキャスト受信手段と、
前記ブロードキャスト受信用メモリおよび前記ブロードキャスト受信手段とを含むインタフェースコントローラとを有し、
前記メモリ部は、
前記複数のプロセッサから、前記アクセスパスを介して送信される制御情報を格納する共有メモリと、
前記ブロードキャストデータの送信に用いられるブロードキャスト送信用メモリと、
前記ブロードキャストデータを送信するブロードキャスト送信手段と、
前記ブロードキャスト送信用メモリおよび前記ブロードキャスト送信手段とを含むメモリコントローラとを有し、
前記複数のインタフェース部のうちの一のインタフェース部内の前記インタフェースコントローラは、前記アクセスパスを介して、前記メモリコントローラに対して、前記ブロードキャストデータを送信し、
前記ブロードキャストデータを受信した前記メモリコントローラは、当該受信した前記ブロードキャストデータを前記ブロードキャスト送信用メモリに格納し、
前記ブロードキャスト送信手段は、前記アクセスパスを介して、前記複数のインタフェース部のうちの他のインタフェース部内の前記インタフェースコントローラに対して、前記ブロードキャスト送信用メモリに格納された前記ブロードキャストデータを書き込むよう、書き込み要求を送信し、
前記ブロードキャスト受信手段は、前記書き込み要求に基づき、前記アクセスパスを介して前記ブロードキャスト送信用メモリから前記ブロードキャストデータを読み出し、前記ブロードキャスト受信用メモリに格納することを特徴とするディスクアレイ制御装置。
【請求項６】
ディスクアレイ制御装置であって、
ホストコンピュータまたはディスク装置と接続される、複数のインタフェース部と、
前記複数のインタフェース部とアクセスパスにより１対１に接続されるメモリ部とを有し、
前記複数のインタフェース部は、それぞれ、
複数のプロセッサと、
前記アクセスパスを介したブロードキャスト転送に用いられるブロードキャストデータを格納するブロードキャスト受信用メモリを有するインタフェースコントローラとを有し、
前記メモリ部は、
前記複数のプロセッサから、前記アクセスパスを介して送信される制御情報を格納する共有メモリと、
前記複数のアクセスパスを相互に接続する相互接続手段とを有し、
前記複数のインタフェース部のうちの一のインタフェース部内の前記インタフェースコントローラは、前記アクセスパスに対して、前記ブロードキャストデータを送信し、
前記相互接続手段は、前記アクセスパスから前記ブロードキャストデータを検出して、前記ブロードキャストデータの送信元である前記インタフェース部が接続されるアクセスパスと、前記複数のインタフェース部のうちの他のインタフェース部が接続されるアクセスパスとを接続して、前記ブロードキャストデータを転送し、
前記ブロードキャストデータを受信した前記他のインタフェース部内の前記インタフェースコントローラは、当該ブロードキャストデータを、前記ブロードキャスト受信用メモリに書き込むことを特徴とするディスクアレイ制御装置。
【請求項７】
請求項６に記載のディスクアレイ制御装置であって、
前記複数のインタフェース部のうちの一のインタフェース部内の前記インタフェースコントローラは、当該インタフェース部内の前記複数のプロセッサのうちの何れかのプロセッサから、前記ブロードキャストデータを受信した場合、前記アクセスパスに対して前記ブロードキャストデータを送信することを特徴とするディスクアレイ制御装置。
【請求項８】
請求項５、６に記載のディスクアレイ制御装置であって、
前記他のインタフェース部内の前記複数のプロセッサは、前記ブロードキャストデータが自インタフェース部内の前記ブロードキャスト受信用メモリに格納された場合、前記ブロードキャスト受信用メモリから前記ブロードキャストデータを読み出すことを特徴とするディスクアレイ制御装置。
【請求項９】
請求項８に記載のディスクアレイ制御装置であって、
前記複数のインタフェース部は、それぞれ、割り込み手段を有し、
前記ブロードキャスト受信用メモリに前記ブロードキャストデータが格納された場合、前記割込み手段は、自インタフェース部内の前記複数のプロセッサに割り込み信号を送信し、
前記割り込み信号を受信した前記複数のプロセッサは、前記ブロードキャストデータを前記ブロードキャスト受信用メモリから読み出した後、前記割込み信号を停止することを特徴とするディスクアレイ制御装置。
【請求項１０】
ディスクアレイ制御装置であって、
ホストコンピュータまたはディスク装置と接続される、複数のインタフェース部と、
前記複数のインタフェース部とアクセスパスにより１対１に接続されるメモリ部とを有し、
前記複数のインタフェース部は、それぞれ、
複数のプロセッサと、
前記アクセスパスを介したブロードキャスト転送に用いられるブロードキャストデータを格納するブロードキャスト受信用メモリとを有し、
前記メモリ部は、
前記複数のプロセッサから、前記アクセスパスを介して送信される制御情報を格納する共有メモリと、
前記複数のインタフェース部に対応する、複数のブロードキャスト送信用メモリを有するメモリコントローラとを有し、
前記複数のインタフェース部のうちの一のインタフェース部内の一の前記プロセッサは、前記アクセスパスを介して、前記メモリコントローラに対して、前記ブロードキャストデータを送信し、
前記ブロードキャストデータを受信した前記メモリコントローラは、当該受信した前記ブロードキャストデータを前記複数のブロードキャスト送信用メモリに格納し、
前記複数のインタフェース部のうちの他のインタフェース部内の前記プロセッサは、前記アクセスパスを介して、前記複数のブロードキャスト送信用メモリのうちで自インタフェース部に対応するブロードキャスト送信用メモリをポーリングすることを特徴とするディスクアレイ制御装置。
【請求項１１】
請求項１０に記載のディスクアレイ制御装置であって、
前記他のインタフェース部内の一のプロセッサは、前記アクセスパスを介して、前記自インタフェース部に対応するブロードキャスト送信用メモリをポーリングし、該ブロードキャスト送信用メモリに格納された前記ブロードキャストデータを読み出して、自インタフェース部内の前記ブロードキャスト受信用メモリに書き込み、
前記他のインタフェース部内の他のプロセッサは、前記ブロードキャスト受信用メモリをポーリングして、前記ブロードキャストデータを読み出すことを特徴とするディスクアレイ制御装置。
【請求項１２】
ディスクアレイ制御装置であって、
ホストコンピュータまたはディスク装置と接続される、複数のインタフェース部と、
前記複数のインタフェース部とアクセスパスにより１対１に接続される相互接続手段とを有し、
前記複数のインタフェース部は、それぞれ、複数のプロセッサを有し、
前記複数のインタフェース部のうちの一のインタフェース部内の一の前記プロセッサは、前記相互接続手段を介して、前記複数のインタフェース部のうちの他のインタフェース部に対して、ブロードキャスト転送に用いられるブロードキャストデータを送信することを特徴とするディスクアレイ制御装置。
【請求項１３】
請求項１２に記載のディスクアレイ制御装置であって、
前記複数のインタフェース部は、それぞれ、前記アクセスパスを介したブロードキャスト転送に用いられるブロードキャストデータを格納するブロードキャスト受信用メモリを有するインタフェースコントローラを有し、
前記相互接続手段は、前記アクセスパスから前記ブロードキャストデータを検出して、前記ブロードキャストデータの送信元である前記インタフェース部が接続されるアクセスパスと、前記複数のインタフェース部のうちの他のインタフェース部が接続されるアクセスパスとを接続して、前記ブロードキャストデータを転送し、
前記ブロードキャストデータを受信した前記他のインタフェース部内の前記インタフェースコントローラは、当該ブロードキャストデータを、前記ブロードキャスト受信用メモリに書き込むことを特徴とするディスクアレイ制御装置。
【請求項１４】
請求項１３に記載のディスクアレイ制御装置であって、
前記複数のインタフェース部のうちの一のインタフェース部内の前記インタフェースコントローラは、当該インタフェース部内の前記複数のプロセッサのうちの何れかのプロセッサから、前記ブロードキャストデータを受信した場合、前記アクセスパスに対して前記ブロードキャストデータを送信することを特徴とするディスクアレイ制御装置。
【請求項１５】
請求項１３に記載のディスクアレイ制御装置であって、
前記他のインタフェース部内の前記複数のプロセッサは、前記ブロードキャストデータが自インタフェース部内の前記ブロードキャスト受信用メモリに格納された場合、前記ブロードキャスト受信用メモリから前記ブロードキャストデータを読み出すことを特徴とするディスクアレイ制御装置。
【請求項１６】
請求項１５に記載のディスクアレイ制御装置であって、
前記複数のインタフェース部は、それぞれ、割り込み手段を有し、
前記ブロードキャスト受信用メモリに前記ブロードキャストデータが格納された場合、前記割込み手段は、自インタフェース部内の前記複数のプロセッサに割り込み信号を送信し、
前記割り込み信号を受信した前記複数のプロセッサは、前記ブロードキャストデータを前記ブロードキャスト受信用メモリから読み出した後、前記割込み信号を停止することを特徴とするディスクアレイ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、共有メモリ型マルチプロセッサシステムを用いるディスクアレイ制御装置に関し、特に、各プロセッサ間で共有する情報をブロードキャストする技術に関する。
【背景技術】
【０００２】
共有メモリ型マルチプロセッサシステムを用いるディスクアレイ制御装置として、図３に示す構成のものが知られている。図３に示す制御装置では、複数のＣＰＵ−ＰＫ（パッケージ）３０１と、制御情報を格納する共有メモリを搭載する共有メモリパッケージ（ＳＭ−ＰＫ）＃Ａ  ３０３、及び共有メモリパッケージ（ＳＭ−ＰＫ）＃Ｂ  ３０４とが、共有メモリバス３０２を介して接続されている。各ＣＰＵ−ＰＫは、ホストコンピュータ又はディスク装置の何れかに接続される。各ＣＰＵ−ＰＫは、複数のＣＰＵを有しており、各ＣＰＵは、共有メモリに格納されている制御情報を用いて、ホストコンピュータ又はディスク装置からのデータ転送、又はホストコンピュータ又はディスク装置へのデータ転送を制御等を行う。このように、各ＣＰＵを共通バスで接続した場合には、各ＣＰＵからの情報が共通バス上を流れるため、あるＣＰＵから他の全てのＣＰＵに対してある情報を送信する、いわゆる、ブロードキャストを容易に実現することができる。
【０００３】
なお、ディスクアレイ制御装置に関するものではないが、特開昭６１−４５６４７号に、共有バス接続されたマルチプロセッサシステムにおけるブロードキャストに関する記載がある。
【０００４】
【特許文献１】特開昭６１−４５６４７号
【発明の開示】
【発明が解決しようとする課題】
【０００５】
図３に示した共通バス方式のディスクアレイ制御装置では、ＣＰＵ−ＰＫ内のＣＰＵからのアクセス要求が１本の共有メモリバスに集中するため、共有メモリバスに接続するＣＰＵ−ＰＫを増やした場合、共有バスの転送能力がボトルネックになり、共有メモリへのアクセス性能を高めることが困難となる。
【０００６】
また、ＣＰＵ−ＰＫ内のＣＰＵを高性能なものにした場合、こららのプロセッサの性能に比べて、共有バスの転送能力がボトルネックになり、プロセッサの高速化に追従することが困難となる。
【０００７】
一方、各ＣＰＵ−ＰＫ内のＣＰＵと共有メモリとの間を、アクセスパスにより１対１接続にし、アクセスパスの構造をスター状にしたディスクアレイ制御装置では、共通バス方式の問題点を解消することができる。
【０００８】
しかし、スター接続形式では、各ＣＰＵからの情報が流れる共通バスに相当するものがないので、上述の共通バス方式のように、容易にブロードキャストを行うことができない。
【０００９】
そこで、本発明の目的は、複数のプロセッサと共有メモリとの間をスター状に接続したディスクアレイ制御装置において、ブロードキャストを可能にする装置を提供することにある。
【課題を解決するための手段】
【００１０】
上記目的を達成するため、本発明のディスクアレイ制御装置は、ホストコンピュータ又はディスク装置とのインタフェースを制御する複数のプロセッサと、制御情報を格納する共有メモリとをスター状に接続するとともに、次の（１）乃至（５）の何れかの方式を採用する。
（１）ブロードキャスト専用のプロセッサ間共通バスを有する構造を持つ方式  
（２）共有メモリコントローラにブロードキャストデータを格納するレジスタを有し、該レジスタのデータを、共有メモリコントローラが出力するブロードキャスト割込信号により各プロセッサが該レジスタをリードする方式              
（３）共有メモリコントローラにブロードキャストデータを格納するレジスタを有し、共有メモリコントローラより、各プロセッサの共有メモリアクセスＩ／Ｆコントローラ内に用意するブロードキャスト用レジスタに該データをライトする方式                                                                    
（４）共有メモリコントローラ内もしくは共有メモリパッケージ（以下、ＰＫと記述）内に各プロセッサからのアクセスＩ／Ｆを相互に接続するスイッチ機構を有し、該スイッチ機構により１対他の接続状態を用意し、各プロセッサの共有メモリアクセスＩ／Ｆコントローラ内に用意するブロードキャスト用レジスタに該データをライトする方式                                                  
（５）共有メモリコントローラ内にブロードキャストデータを格納するレジスタを有し、該レジスタにあるプロセッサがライトしたデータを他のプロセッサがレジスタポーリングでリードする方式、の５方式が有る。
【発明の効果】
【００１１】
複数のプロセッサと共有メモリとの間をスター状に接続したディスクアレイ制御装置において、ブロードキャストを可能にする装置を提供することができる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施例を説明する。
【００１３】
まず、最初に、本発明のディスクアレイ制御装置の全体構成例を示す。本実施例の制御装置２は、上位装置（ホストコンピュータ）１と接続されるＣＰＵ−ＰＫ＃１〜ＣＰＵ−ＰＫ＃ｎ（１０１）と、複数の磁気ディスクと接続されるＣＰＵ−ＰＫ＃１〜ＣＰＵ−ＰＫ＃ｎ（１０１）とを含んで構成される。ホストコンピュータと接続されるＣＰＵ−ＰＫ＃１〜ＣＰＵ−ＰＫ＃ｎ、及び複数の磁気ディスクと接続されるＣＰＵ−ＰＫ＃１〜ＣＰＵ−ＰＫ＃ｎは、複数のキャッシュメモリキャッシュ１１３、ＳＭ−ＰＫ＃Ａ１０８、ＳＭ−ＰＫ＃Ｂ１０９と複数のアクセスパスで接続されているが、キャッシュ１１３との間は、アービタ１１４を介して接続される。ここで、キャッシュ１１３は、メモリパッケージ又は１つのＬＳＩチップ等で構成される。各ＣＰＵ−ＰＫは、上位装置１に対する接続Ｉ／Ｆ、又は磁気ディスク２２０に対する接続Ｉ／Ｆを制御する複数のＣＰＵ１０２と、ＳＭ−ＰＫ＃Ａ１０８および＃Ｂ１０９へのアクセスパスを制御する共有メモリパスＩ／Ｆコントローラ（ＭＰＡ）１１１と、キャッシュメモリパッケージ１１３へのアクセスパスを制御するキャッシュメモリパスＩ／Ｆコントローラ（ＤＴＡ）１１２とを有している。キャッシュ１１３には、上位装置からのデータが格納され、ＳＭ−ＰＫ＃Ａ及び＃Ｂ内の共有メモリには制御情報が格納されている。なお、Ｉ／Ｆは、インタフェースの意を表す。
【００１４】
ＤＴＡ１１２とキャッシュ１１３との間では、大量のデータを高速に転送する必要があるので、ＤＴＡ１１２とキャッシュ１１３との間のアクセスパス数を増やす必要がある。そのためには、ＤＴＡ１１２とキャッシュ１１３との間を１対１接続するのが適している。しかし、キャッシュ１１３を構成するパッケージに実装できるコネクタ数、又は、キャッシュ１１３を構成するＬＳＩに実装できるピン数の数には物理的に限りがあるので、ＤＴＡ１１２とキャッシュ１１３との間のアクセスパス数を増やすことには限界がある。そこで、ＤＴＡ１１２とキャッシュ１１３との間にセレクタ１１４を設け、ＤＴＡ１１２とセレクタ１１４との間を１対１接続することにより、ＤＴＡ１１２とセレクタ１１４との間のアクセスパス数を増やす。一方、セレクタ１１４により、複数のＤＴＡ１１２からのアクセス要求を所定数に絞るを設けることにより、キャッシュ１１３とセレクタ部１１４との間のアクセスパス数を、ＤＴＡ１１２とキャッシュ１１３との間のアクセスパス数よりも減らし、上述のコネクタ数、又はピン数の問題を解決している。
【００１５】
一方、共有メモリではキャッシュ１１３ほど大量のデータの転送は必要としないが、トランザクション数を増加させ、一回の転送の応答時間の短縮が必要である。そこで、ＳＭＡ−ＰＫとＣＰＵ−ＰＫとの間は、セレクタ部での遅延を避けるため、セレクタを介さずに接続している。ただし、ＭＰＡとＳＭ−ＰＫとの間も、セレクタを設ける構成しても良い。ＭＰＡとＳＭ−ＰＫとの間にセレクタを設けても、後述するブロードキャストの方式を適用することができることは、以下の説明から明らかであろう。
【００１６】
図２は、図１より、ＣＰＵ―ＰＫ１０１とＳＭ−ＰＫ＃Ａ１０８及び＃Ｂ１０９とを抜き出すとともに、ＣＰＵ―ＰＫ１０１の構成をより詳細に示したものである。なお、ＣＰＵ―ＰＫ１０１は上位装置１と接続されるＣＰＵ―ＰＫでも、磁気ディスク３と接続されるＣＰＵ―ＰＫでも、どちらであってもよい。
【００１７】
各ＣＰＵ―ＰＫ１０１は、それぞれ、複数のＣＰＵ１０２と、各ＣＰＵ１０２に対応するローカルメモリ１０３とがローカルバスＩ／Ｆ１０４に接続され、該ローカルバスＩ／Ｆ１０４はＭＰＡ１１５に接続されている。なお、ＤＴＡ１１２は省略されている。
【００１８】
各ＣＰＵ−ＰＫ１０１は、ＳＭＡ−ＰＫ＃Ａ１０８とＳＭＡ−ＰＫ＃Ｂ１０９と複数の共有メモリパス１０５、１０６（本実施例では計４本）で接続されている。ＳＭＡ−ＰＫ＃Ａ１０８、＃Ｂ１０９は同様の構成となっており、それぞれ、共有メモリコントローラＡ（ＳＭＡ−Ａ）及びＢ（ＳＭＡ−Ｂ）１１０と、共有メモリ１０７とを含んで構成される。
【００１９】
次に、図１及び図２で説明したアーキテクチャのディスクアレイ制御装置において、どのようにしてブロードキャストするかを説明する。
＜第１の方式＞
図４を用いて、第１の方式を説明する。
【００２０】
本方式の大きな特徴は、ブロードキャスト専用バスを設ける点にある。各ＣＰＵ−ＰＫ１０１には、ＭＰＡ１１１内にブロードキャスト専用バスコントロール部４０１を設け、このブロードキャスト専用バスコントロール部４０１と、ブロードキャスト専用バス０（４０２）、及びブロードキャスト専用バス１（４０３）との間が接続される。各ＣＰＵ１０２は、他のＣＰＵ１０２に対し、ブロードキャストする場合には、ブロードキャスト専用バスコントロール部４０１にブロードキャスト要求信号を送出する。そのブロードキャスト要求信号を受信したブロードキャスト専用バスコントローラ部４０１は、ブロードキャスト専用バスの使用権を獲得するために、アービタ４０４又は４０５にブロードキャスト専用バスの使用権の要求を送出する。アービタ４０４又は４０５は、他のＣＰＵ―ＰＫのブロードキャスト専用バスコントローラ部４０１からの要求と競合する場合には、調停処理を行う。アービタ４０４又は４０５から使用権を付与されたブロードキャスト専用バスコントローラ部４０１は、ブロードキャスト専用バスに、ＣＰＵ１０２から送信されたブロードキャストデータを送出する。ブロードキャストデータを送出したＣＰＵ−ＰＫ以外のＣＰＵ−ＰＫ内のブロードキャスト専用バスコントローラ部４０１は、常時、ブロードキャスト専用バスを監視しており、ブロードキャスト専用バスにブロードキャストデータが送出されたことを検知すると、該ブロードキャストデータを受信し、同じＣＰＵ−ＰＫ内の各ＣＰＵ１０２に送信する。ＣＰＵ１０２にブロードキャストデータを送信する場合のやり方としては、各ＣＰＵ１０２に対し、割り込み信号を送出する方法や、該ブロードキャストデータをレジスタに格納しておき、各ＣＰＵ１０２が順次そのレジスタを見にいく方法（ポーリング）がある。
【００２１】
なお、ブロードキャスト専用バスには、図３で説明した従来の共通のバスのように大きなデータを転送する為のものではないので、従来の共通バスのような大きなスループットを持つ必要は無い。必要最小限の信号線数で実現可能である。
【００２２】
また、本実施例では、ＭＰＡ１１１内にブロードキャスト専用バスコントロール部４０１を設けているが、必ずしも、ＭＰＡ１１１内に設ける必要はない。ただし、ブロードキャスト専用バスコントロール部４０１をＭＰＡ１１１の外に設ける場合には、ローカルバスＩ／Ｆ１０４をブロードキャスト専用バスコントロール部４０１にも接続する必要がある。
【００２３】
以下で説明する第２の方式乃至第５の方式は、制御装置内の各プロセッサの共通部位である共有メモリコントローラまたは共有メモリＰＫに、ブロードキャストデータを一旦送信して、そこを介して、各プロセッサにブロードキャストする点で共通する。また、どの方式においても、プロセッサと共有メモリアクセスＩ／Ｆコントローラとの間のブロードキャストデータのやり取りは、割り込み信号を用いる方法またはレジスタポーリングを行う方法で実現する。
＜第２の方式＞
図５を用いて、第２の方式を説明する。
【００２４】
本方式の特徴は、ブロードキャスト割込信号線５０２を設けた点にある。また、共有メモリコントローラ（ＳＭＡ）１１０内に、各ＭＰＡ１１１対応のブロードキャストレジスタ群５０３を設ける。ブロードキャストデータ送信元ＣＰＵ１０２は、ブロードキャストデータを共有メモリパス１０５、１０６を介して、ブロードキャストデータレジスタ５０４にライトする。ブロードキャストデータレジスタ５０４にデータがライトされると、そのブロードキャストデータが、各ＭＰＡ用レジスタ群５０３にもライトされる。それと共に、各ＭＰＡ用のブロードキャスト割込信号出力回路５０５は、ブロードキャスト割込信号線５０３に信号を出力し、各ＭＰＡ１１１を介して、全ＣＰＵ１０２に割込信号が送出される。各ＣＰＵ−ＰＫ内の一のＣＰＵ１０２は、ブロードキャストデータがライトされている、対応するＭＰＡ用ブロードキャストレジスタ５０３をリードする。リードされたデータは対応するＭＰＡ１１１内のブロードキャストレジスタ群５０１に格納される。そのＣＰＵ−ＰＫに含まれる他の全てのＣＰＵ１０２は、ＳＭＡに格納されているブロードキャストデータを見に行くのではなく、自ＣＰＵ―ＰＫ１０１内のブロードキャスト用レジスタ群５０１に格納されているブロードキャストデータを見に行く。本方式によれば、ＣＰＵ−ＰＫ内の一のＣＰＵ１０２だけが、ＭＰＡ用ブロードキャスト用レジスタ群５０３を読みにいけばよいので、共有メモリパスの占有時間を減らすことができる。なお、この時、受信したデータは各ＣＰＵ用のレジスタに格納されるが、その時の格納の方法は追記型にすることで、複数のブロードキャスト受信データのＯＲをとることができる。
【００２５】
図６は、本方式のブロードキャスト方式における、ブロードキャスト送信元ＣＰＵ及びＭＰＡと、ブロードキャスト受信先ＣＰＵ、ＭＰＡ、及びＳＭＡとの間におけるデータ授受のフローを示した図である。ブロードキャスト割込信号受信に対して、あるＣＰＵ−ＰＫ１０１内の一のＣＰＵ１０２が代表してＳＭＡ内の対応するＭＰＡ用ブロードキャスト用レジスタ群５０３をリードすると、そのＣＰＵ−ＰＫ１０１内の残りのＣＰＵ１０２はＭＰＡ内のブロードキャスト用レジスタ群５０１のリードアクセスをすることで、ブロードキャストが完了する。割込信号が出力される期間は、ブロードキャストデータレジスタへのデータライトからあるＣＰＵのリードアクセスまでの間である。
【００２６】
図７は、ＣＰＵ−ＰＫの一構成例を示したものである。ＭＰＡ１１１内には自パッケージ内の各ＣＰＵ１０２対応にブロードキャスト用回路７０１を設ける。ＭＰＡ内に到着したブロードキャストデータはブロードキャストデータレジスタ７０２に格納される。７０２へのデータの格納に対応して、ブロードキャスト割込出力回路７０３は、自パッケージ内の各ＣＰＵに対し割り込み信号を送出する。この割り込み信号の送出により、各ＣＰＵがブロードキャストデータのリードを完了すると、ＣＰＵはブロードキャストデータリセットレジスタ７０４にライトすることにより、ブロードキャストデータがリセットされ、割込信号の出力が停止する。
＜第３の方式＞
図８を用いて、第３の方式を説明する。
【００２７】
本方式では、各ＭＰＡ１１１内にブロードキャスト用レジスタ群８０１と、ブロードキャスト用転送スレーブ回路８０２とを設ける。また、ＳＭＡ１１０内に、ブロードキャスト用転送マスタ回路８０３と、ブロードキャスト用レジスタ群８０４とを設ける。
【００２８】
ブロードキャストデータがブロードキャスト用レジスタ群８０４にライトされると、ブロードキャスト転送用マスタ回路８０３は、共有メモリパス８０５、８０６を介して、各ＭＰＡ１１１に対し、ブロードキャストデータのライト要求を送出する。各ＭＰＡ１１１のブロードキャスト用転送スレーブ回路８０２は、ＳＭＡ１１０からのライト要求を受けて、受信したブロードキャストデータをブロードキャスト用レジスタ群８０１にライトする。ＭＰＡ１１１から各ＣＰＵ１０２への転送は、第２の方式で説明したのと同様の方法を用いれば良い。
【００２９】
図９は、本方式のブロードキャスト方式における、ブロードキャスト送信元ＣＰＵ及びＭＰＡと、ブロードキャスト受信先ＣＰＵ、ＭＰＡ、及びＳＭＡとの間におけるデータ授受のフローを示した図である。ＳＭＡがブロードキャスト用転送マスタ回路８０３を持ち、各ＭＰＡのブロードキャスト用レジスタ群にブロードキャストデータをライトすることで、各ＣＰＵは、自ＣＰＵ−ＰＫ内のＭＰＡ１１１までのアクセスによりブロードキャストデータを受信できる。したがって、第２の方式と同様、共有メモリパス８０５、８０６の占有率を低減することができる。
＜第４の方式＞
図１０を用いて第４の方式を説明する。
【００３０】
本方式では、ＳＭＡ１１０内にパススイッチ機構１５４を設け、該パススイッチ機構により１対多の接続状態を作り出す。パススイッチ機構１５４は、ＭＰＡ１１１からのブロードキャストデータ転送要求を検出し、転送要求元の共有メモリパス１５２、又は１５３と他の共有メモリパス１５２、１５３とを接続し、１対多の転送パスの状態をつくり出す。パススイッチ機構１５４としては、例えば、クロスバスイッチを用いればよい。また、これに類するものを用いてもよい。ＭＰＡ１１１にはブロードキャスト用転送スレーブ回路１５５を設けて、受信した他ＭＰＡからのブロードキャストデータをブロードキャスト用レジスタ群１５１にライトする。ＭＰＡから自ＣＰＵ−ＰＫ内のＣＰＵ１０２への転送は図７で説明したのと同様の方法を用いれば良い。
【００３１】
図１１は、本方式のブロードキャスト方式における、ブロードキャスト送信元ＣＰＵ及びＭＰＡと、ブロードキャスト受信先ＣＰＵ、ＭＰＡ、及びＳＭＡとの間におけるデータ授受のフローを示した図である。パススイッチ機構により共通バスと同様に一対多の物理的接続を実現することで、ＣＰＵがＳＭＡからのブロードキャストデータの受信に関与したりＳＭＡ内に送信のマスタ回路を設けずにブロードキャストが可能である。
＜方式５＞
図１２を用いて、第５の方式を説明する。
【００３２】
ＭＰＡ内にブロードキャスト用レジスタ群１８１を設け、ＳＭＡ内に各ＭＰＡ用のブロードキャスト用レジスタ群１８３を設ける。ブロードキャスト送信元のＣＰＵはＳＭＡ内のブロードキャストデータレジスタ１８４にブロードキャストデータにをライトする。ブロードキャスト送信元のＣＰＵがＳＭＡ内のブロードキャストデータレジスタ１８４にブロードキャストデータをライトすると、そのＳＭＡ内の各ＭＰＡ用ブロードキャストデータレジスタ群１８３すべてに、そのブロードキャストデータがライトされる。ブロードキャスト送信元以外の各ＣＰＵは各ＭＰＡ用のブロードキャストデータレジスタ群１８３をポーリングしており、各ＣＰＵが接続されるＭＰＡ用ブロードキャストレジスタ群１８１に該リードデータをライトする。以上によりブロードキャストを行う。
【００３３】
図１３は、本方式のブロードキャスト方式における、ブロードキャスト送信元ＣＰＵ及びＭＰＡと、ブロードキャスト受信先ＣＰＵ、ＭＰＡ、及びＳＭＡとの間におけるデータ授受のフローを示した図である。なお、ＣＰＵ−ＰＫ内の一のＣＰＵ１０２のみがポーリングを行い、ブロードキャストデータをそのＣＰＵ−ＰＫ内のブロードキャスト用レジスタ群１８１にライトし、そのＣＰＵ−ＰＫ内の他のＣＰＵ１０２は、そのＣＰＵ−ＰＫ内のブロードキャスト用レジスタ群１８１に対しポーリングを行うようにして、共有メモリアクセスパスの占有時間を低減させるようにしてもよい。
【図面の簡単な説明】
【００３４】
【図１】本発明のディスク制御装置の一構成例を示す図である。
【図２】本発明のディスク制御装置の一構成例を示す図である。
【図３】従来の共通バス方式のディスク制御措置を示す図である。
【図４】本発明の第１のブロードキャスト方式を示す図である。
【図５】本発明の第２のブロードキャスト方式を示す図である。
【図６】第２のブロードキャスト方式におけるデータフローを示す図である。
【図７】ＣＰＵ−ＰＫの構成の一例を示す図である。
【図８】本発明の第３のブロードキャスト方式を示す図である。
【図９】第３のブロードキャスト方式におけるデータフローを示す図である。
【図１０】本発明の第４のブロードキャスト方式を示す図である。
【図１１】第４のブロードキャスト方式におけるデータフローを示す図である。
【図１２】本発明の第５のブロードキャスト方式を示す図である。
【図１３】第５のブロードキャスト方式におけるデータフローを示す図である。
【符号の説明】
【００３５】
１０１・・・ＣＰＵ−ＰＫ（パッケージ）
１０２・・・ＣＰＵ（プロセッサ）
１１１・・・共有メモリパスＩ／Ｆコントローラ（ＭＰＡ）
１１０・・・共有メモリコントローラ（ＳＭＡ）
１０７・・・共有メモリ
１０８、１０９・・・共有メモリパッケージ（ＳＭ−ＰＫ）＃Ａ，＃Ｂ
１０５、１０６、１５２、１５３、８０５、８０６・・・共有メモリパス。
【図１】
2006134341.tif 000003
【図２】
2006134341.tif 000004
【図３】
2006134341.tif 000005
【図４】
2006134341.tif 000006
【図５】
2006134341.tif 000007
【図６】
2006134341.tif 000008
【図７】
2006134341.tif 000009
【図８】
2006134341.tif 000010
【図９】
2006134341.tif 000011
【図１０】
2006134341.tif 000012
【図１１】
2006134341.tif 000013
【図１２】
2006134341.tif 000014
【図１３】
2006134341.tif 000015
【手続補正書】
【提出日】平成18年3月22日(2006.3.22)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ディスクアレイ制御装置であって、
ホストコンピュータまたはディスク装置と接続される、複数のインタフェース部と、
前記ホストコンピュータまたは前記ディスク装置との間のデータ転送に用いられる制御情報を格納するメモリ部と、
前記複数のインタフェース部と前記メモリ部との間に１対１に接続され、前記制御情報を転送するアクセスパスと、
前記複数のインタフェース部に接続され、前記制御情報とは異なるブロードキャスト転送に用いられるブロードキャストデータを転送するブロードキャスト専用バスとを有し、
前記複数のインタフェース部は、それぞれ、
複数のプロセッサと、
前記ブロードキャストデータを送受信するコントローラ部とを有し、
前記複数のインタフェース部のうちの一のインタフェース部内の前記コントローラ部は、前記ブロードキャスト専用バスの使用権を獲得して前記ブロードキャストデータを送信し、
前記複数のインタフェース部のうちの他のインタフェース部内の前記コントローラ部は、前記ブロードキャスト専用バスから、前記ブロードキャストデータを受信することを特徴とするディスクアレイ制御装置。
【請求項２】
請求項１に記載のディスクアレイ制御装置であって、
前記複数のインタフェース部のうちの一のインタフェース部内の前記コントローラ部は、当該インタフェース部内の前記複数のプロセッサのうちの何れかのプロセッサから、前記ブロードキャストデータを受信した場合、前記ブロードキャスト専用バスに対して前記ブロードキャストデータを送信することを特徴とするディスクアレイ制御装置。
【請求項３】
請求項１に記載のディスクアレイ制御装置であって、
前記複数のインタフェース部のうちの他のインタフェース部内の前記コントローラ部は、前記ブロードキャスト専用バスから前記ブロードキャストデータを受信した場合、自インタフェース部内の前記複数のプロセッサに対して、前記ブロードキャストデータを送信することを特徴とするディスクアレイ制御装置。
【請求項４】
請求項１に記載のディスクアレイ制御装置であって、
前記ブロードキャスト専用バスに接続されるアービタを有し、
前記複数のインタフェース部のうちの２以上のインタフェース部内の前記コントローラ部が、前記ブロードキャスト専用バスの使用権を要求した場合、
前記アービタは、前記２以上のインタフェース部内の前記コントローラ部からの要求のうち、何れか一つを許可することを特徴とする、ディスクアレイ制御装置。
【請求項５】
ディスクアレイ制御装置であって、
ホストコンピュータまたはディスク装置と接続される、複数のインタフェース部と、
前記複数のインタフェース部とアクセスパスにより１対１に接続されるメモリ部とを有し、
前記複数のインタフェース部は、それぞれ、
複数のプロセッサと、
前記アクセスパスを介したブロードキャスト転送に用いられるブロードキャストデータを格納するブロードキャスト受信用メモリと、
前記ブロードキャストデータを受信するブロードキャスト受信手段と、
前記ブロードキャスト受信用メモリおよび前記ブロードキャスト受信手段とを含むインタフェースコントローラとを有し、
前記メモリ部は、
前記複数のプロセッサから、前記アクセスパスを介して送信される制御情報を格納する共有メモリと、
前記ブロードキャストデータの送信に用いられるブロードキャスト送信用メモリと、
前記ブロードキャストデータを送信するブロードキャスト送信手段と、
前記ブロードキャスト送信用メモリおよび前記ブロードキャスト送信手段とを含むメモリコントローラとを有し、
前記複数のインタフェース部のうちの一のインタフェース部内の前記インタフェースコントローラは、前記アクセスパスを介して、前記メモリコントローラに対して、前記ブロードキャストデータを送信し、
前記ブロードキャストデータを受信した前記メモリコントローラは、当該受信した前記ブロードキャストデータを前記ブロードキャスト送信用メモリに格納し、
前記ブロードキャスト送信手段は、前記アクセスパスを介して、前記複数のインタフェース部のうちの他のインタフェース部内の前記インタフェースコントローラに対して、前記ブロードキャスト送信用メモリに格納された前記ブロードキャストデータを書き込むよう、書き込み要求を送信し、
前記ブロードキャスト受信手段は、前記書き込み要求に基づき、前記アクセスパスを介して前記ブロードキャスト送信用メモリから前記ブロードキャストデータを読み出し、前記ブロードキャスト受信用メモリに格納することを特徴とするディスクアレイ制御装置。
【請求項６】
ディスクアレイ制御装置であって、
ホストコンピュータまたはディスク装置と接続される、複数のインタフェース部と、
前記複数のインタフェース部とアクセスパスにより１対１に接続されるメモリ部とを有し、
前記複数のインタフェース部は、それぞれ、
複数のプロセッサと、
前記アクセスパスを介したブロードキャスト転送に用いられるブロードキャストデータを格納するブロードキャスト受信用メモリを有するインタフェースコントローラとを有し、
前記メモリ部は、
前記複数のプロセッサから、前記アクセスパスを介して送信される制御情報を格納する共有メモリと、
前記複数のアクセスパスを相互に接続する相互接続手段とを有し、
前記複数のインタフェース部のうちの一のインタフェース部内の前記インタフェースコントローラは、前記アクセスパスに対して、前記ブロードキャストデータを送信し、
前記相互接続手段は、前記アクセスパスから前記ブロードキャストデータを検出して、前記ブロードキャストデータの送信元である前記インタフェース部が接続されるアクセスパスと、前記複数のインタフェース部のうちの他のインタフェース部が接続されるアクセスパスとを接続して、前記ブロードキャストデータを転送し、
前記ブロードキャストデータを受信した前記他のインタフェース部内の前記インタフェースコントローラは、当該ブロードキャストデータを、前記ブロードキャスト受信用メモリに書き込むことを特徴とするディスクアレイ制御装置。
【請求項７】
請求項６に記載のディスクアレイ制御装置であって、
前記複数のインタフェース部のうちの一のインタフェース部内の前記インタフェースコントローラは、当該インタフェース部内の前記複数のプロセッサのうちの何れかのプロセッサから、前記ブロードキャストデータを受信した場合、前記アクセスパスに対して前記ブロードキャストデータを送信することを特徴とするディスクアレイ制御装置。
【請求項８】
請求項５、６に記載のディスクアレイ制御装置であって、
前記他のインタフェース部内の前記複数のプロセッサは、前記ブロードキャストデータが自インタフェース部内の前記ブロードキャスト受信用メモリに格納された場合、前記ブロードキャスト受信用メモリから前記ブロードキャストデータを読み出すことを特徴とするディスクアレイ制御装置。
【請求項９】
請求項８に記載のディスクアレイ制御装置であって、
前記複数のインタフェース部は、それぞれ、割り込み手段を有し、
前記ブロードキャスト受信用メモリに前記ブロードキャストデータが格納された場合、前記割込み手段は、自インタフェース部内の前記複数のプロセッサに割り込み信号を送信し、
前記割り込み信号を受信した前記複数のプロセッサは、前記ブロードキャストデータを前記ブロードキャスト受信用メモリから読み出した後、前記割込み信号を停止することを特徴とするディスクアレイ制御装置。
【請求項１０】
ディスクアレイ制御装置であって、
ホストコンピュータまたはディスク装置と接続される、複数のインタフェース部と、
前記複数のインタフェース部とアクセスパスにより１対１に接続されるメモリ部とを有し、
前記複数のインタフェース部は、それぞれ、
複数のプロセッサと、
前記アクセスパスを介したブロードキャスト転送に用いられるブロードキャストデータを格納するブロードキャスト受信用メモリとを有し、
前記メモリ部は、
前記複数のプロセッサから、前記アクセスパスを介して送信される制御情報を格納する共有メモリと、
前記複数のインタフェース部に対応する、複数のブロードキャスト送信用メモリを有するメモリコントローラとを有し、
前記複数のインタフェース部のうちの一のインタフェース部内の一の前記プロセッサは、前記アクセスパスを介して、前記メモリコントローラに対して、前記ブロードキャストデータを送信し、
前記ブロードキャストデータを受信した前記メモリコントローラは、当該受信した前記ブロードキャストデータを前記複数のブロードキャスト送信用メモリに格納し、
前記複数のインタフェース部のうちの他のインタフェース部内の前記プロセッサは、前記アクセスパスを介して、前記複数のブロードキャスト送信用メモリのうちで自インタフェース部に対応するブロードキャスト送信用メモリをポーリングすることを特徴とするディスクアレイ制御装置。
【請求項１１】
請求項１０に記載のディスクアレイ制御装置であって、
前記他のインタフェース部内の一のプロセッサは、前記アクセスパスを介して、前記自インタフェース部に対応するブロードキャスト送信用メモリをポーリングし、該ブロードキャスト送信用メモリに格納された前記ブロードキャストデータを読み出して、自インタフェース部内の前記ブロードキャスト受信用メモリに書き込み、
前記他のインタフェース部内の他のプロセッサは、前記ブロードキャスト受信用メモリをポーリングして、前記ブロードキャストデータを読み出すことを特徴とするディスクアレイ制御装置。
【請求項１２】
ディスクアレイ制御装置であって、
ホストコンピュータまたはディスク装置とに接続され、複数のプロセッサを有する複数のインタフェース部と、
前記複数のインタフェース部とアクセスパスにより１対１に接続される相互接続手段とを有し、
前記複数のインタフェース部は、それぞれ、
前記アクセスパスを介したブロードキャスト転送に用いられるブロードキャストデータを格納するブロードキャスト受信用メモリを有するインタフェースコントローラを有し、
前記相互接続手段は、前記複数のインタフェース部のうちの一のインタフェース部内の
一の前記プロセッサからのブロードキャストデータを検出して、前記ブロードキャストデータの送信元である前記インタフェース部が接続されるアクセスパスと、前記複数のインタフェース部のうちの他のインタフェース部が接続されるアクセスパスとを接続して、前記ブロードキャストデータを転送し、
前記ブロードキャストデータを受信した前記他のインタフェース部内の前記インタフェースコントローラは、当該ブロードキャストデータを、前記ブロードキャスト受信用メモリに書き込むことを特徴とするディスクアレイ制御装置。
【請求項１３】
請求項１２に記載のディスクアレイ制御装置であって、
前記複数のインタフェース部のうちの一のインタフェース部内の前記インタフェースコントローラは、当該インタフェース部内の前記複数のプロセッサのうちの何れかのプロセッサから、前記ブロードキャストデータを受信した場合、前記アクセスパスに対して前記ブロードキャストデータを送信することを特徴とするディスクアレイ制御装置。
【請求項１４】
請求項１２に記載のディスクアレイ制御装置であって、
前記他のインタフェース部内の前記複数のプロセッサは、前記ブロードキャストデータが自インタフェース部内の前記ブロードキャスト受信用メモリに格納された場合、前記ブロードキャスト受信用メモリから前記ブロードキャストデータを読み出すことを特徴とするディスクアレイ制御装置。
【請求項１５】
請求項１４に記載のディスクアレイ制御装置であって、
前記複数のインタフェース部は、それぞれ、割り込み手段を有し、
前記ブロードキャスト受信用メモリに前記ブロードキャストデータが格納された場合、前記割込み手段は、自インタフェース部内の前記複数のプロセッサに割り込み信号を送信し、
前記割り込み信号を受信した前記複数のプロセッサは、前記ブロードキャストデータを前記ブロードキャスト受信用メモリから読み出した後、前記割込み信号を停止することを特徴とするディスクアレイ制御装置。