[go: up one dir, main page]

JP2008090375A - 割込み制御システム、およびこれを利用した記憶制御システム - Google Patents

割込み制御システム、およびこれを利用した記憶制御システム Download PDF

Info

Publication number
JP2008090375A
JP2008090375A JP2006267510A JP2006267510A JP2008090375A JP 2008090375 A JP2008090375 A JP 2008090375A JP 2006267510 A JP2006267510 A JP 2006267510A JP 2006267510 A JP2006267510 A JP 2006267510A JP 2008090375 A JP2008090375 A JP 2008090375A
Authority
JP
Japan
Prior art keywords
interrupt
controller
pci
signal
control
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.)
Pending
Application number
JP2006267510A
Other languages
English (en)
Inventor
Susumu Tsuruta
進 鶴田
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 JP2006267510A priority Critical patent/JP2008090375A/ja
Priority to US11/604,690 priority patent/US7526592B2/en
Publication of JP2008090375A publication Critical patent/JP2008090375A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Bus Control (AREA)

Abstract

【解決課題】MSI(Message Signal Interrupt)を利用した割込み制御に、信号線割込み方式を組み込むことができる割込み制御システムを提供する。
【解決手段】第1のPCIインターフェース40と、第2のPCIインターフェース43と、前記第1のPCIインターフェースを前記第2のインターフェースにブリッジするPCIブリッジ44と、割込み信号に対する制御を行う制御回路54と、を備え、前記PCIブリッジは、前記第2のPCIインターフェースから前記第2のPCIインターフェースに発行されたメッセージシグナル割込みを認識して、当該メッセージシグナル割込みを前記制御回路にバイパスし、前記制御回路は前記メッセージシグナル割込みを割込み信号に変更して信号線を介して出力する割込み変換部を備えている。
【選択図】図4

Description

本発明は割込み制御システム、及び、この割込み制御システムを利用した記憶制御システムに関するものである。詳しくは、メッセージシグナル割込み(Message Signal Interrupt、以下「MSI」と略称する。)を用いた割込み制御システム、及びこれを利用した記憶制御システムに関するものである。
従来から、記憶制御システムは、情報処理装置との間の情報通信を制御するホスト制御LSIと、記憶デバイスとの間の情報通信を制御する(記憶)ディスク制御LSIと、キャッシュメモリと、データ転送制御LSIと、MP制御部と、を備えている。データ転送制御LSIは、ホスト制御LSIとMP制御部間、もしくはディスク制御LSIとMP制御部間の制御情報(例えば、データ入出力要求)のブリッジを行い、また、ホスト制御LSIとキャッシュメモリ間、もしくはディスク制御LSIとキャッシュメモリ間のデータ転送のための制御を行う。MP制御部は、ホスト装置からの制御情報(例えば、データ入出力要求)に対して、ホスト制御LSI、ディスク制御LSI、及びデータ転送制御LSIを制御する。
ホスト制御LSIとデータ転送制御LSIとの間、ディスク制御LSIとデータ転送制御LSIとの間はPCIバスによって接続され、ホスト制御LSI、ディスク制御LSIは、それぞれ自身に発生したイベントに基づいて、割込み信号線を介して割込みをMP制御部に送信するように構成されていた。
この種の割込み制御に関する関連技術として、例えば、特開平7―84970号公報に記載されたものが存在する。この公報に記載された割込み制御方式は、割込み発生デバイスに対するデータ処理を行うCPUとは別のCPUへの割込みにもとづき、別のCPUにおけるデータ処理が中断されることをなくして、データ処理性能を向上することを目的とするものであり、複数のCPUと複数のデバイスとを具備し、CPUが予め定められたデバイスに関するデータ処理を行うデータ処理方法において、デバイスから割込み信号が出力されたとき、割込み元デバイスを認識する割込みコントローラと、割込みコントローラにデバイスとCPUとの対応関係を設定する割込みテーブルを具備することを特徴とするものである。
さらに、特開平9−97177号公報に記載された、コンピュータシステムの割込み制御方式は、拡張ユニットの使用可能なラップトップ型やノートブック型等のパーソナルコンピュータにおいて、複数の割込み信号を最小限の信号線により転送できるようにして、拡張ユニットの信号数の使用範囲の拡大やシステムの信号線の配線構成の簡単化を図ることを目的とするものであり、複数の割込み信号を入力し、各割込み信号毎に予め決定された用途の種類を認識する割込みコントローラを有するコンピュータシステムの割込み制御方式において、前記プロセッサに対して割込み要求を行なう要求元装置からの複数の割込み信号をシリアルデータに変換する割込みエンコーダ手段と、前記シリアルデータを転送するためのシリアル転送手段と、前記シリアル転送手段により転送された前記シリアルデータを元の複数の割込み信号に変換して前記割込みコントローラに与える割込みデコーダ手段とを具備したことを特徴とするものである。
さらに、特開2001−331329号公報に記載された発明は、様々な状況に動的に対応し、常に最適なシステム性能を実現できるような割込み制御方法及び制御装置を得ることを目的とするものであり、システムの状態を監視し、測定した監視結果に基づいて、プロセッサ割込みを生成する際に集約するデバイス割込みの数を動的に可変に設定し、前記設定されたデバイス割込みの数を集約してプロセッサ割込みを生成し、プロセッサに出力することを特徴とするものである。
特開平7―84970号公報 特開平9−97177号公報 特開2001−331329号公報
PCIにおける割込み制御システムは割込み信号線を必要とすることにより、基板への制御素子の実装効率が悪いという問題があった。一方、PCI Expressと称されるシリアル転送インターフェースはMSIを前提にしているために,割込み信号線を必要としない利点がある。MSI或いはMSI-Xは、PCI Express上のメッセージとして割込み要求を送出するため規格である。
MSIを受信したLSIは割込みの要求を認識して割込み処理を実行する。すなわち、PCI ExpressをサポートするLSIは信号線によって割込み信号を受信することに代えて、MSIを判定することができる。したがって、MSIを利用した通信規格は、割込み信号線を不要とするために制御基板に対するLSIや配線の実装効率を向上することができる。さらに、MSIを利用した割込みアーキテクチャは、メッセージという多様な割込み情報を利用することができる。割込み信号線を利用しただけの割込みアーキテクチャは信号のON/OFF(割込みの有り又は無し)のみ利用できるに過ぎなかった。
しかしながら、PCI Expressに対応していないOSに準拠したLSIは、MSIを利用できない。そのために、全てのLSIをPCI Express サポート可能なもの交換し、かつ、OSのアップグレードも必須であった。
そこで、本発明は、既述の課題を解決するために、MSIを利用した割込み制御に、信号線割込み方式を組み込むことができる割込み制御システムを提供することを目的とする。本発明の他の目的は、MSIと信号線割込みとを併用して、MSI方式単独よりも性能を向上させた割込み制御システムを提供することにある。本発明のさらに他の目的は、MSIを信号線割込みへ変換することを実現する割込み制御システムを提供することにある。本発明のさらに他の目的は、この割込み制御システムを利用した記憶制御システムを提供することにある。
前記目的を達成するために、本発明は、第1のコントローラから第2のコントローラに送られる情報からMSIを認識し、このMSIを信号線割込みに変換する変換部を備えた割込み制御システムを提供することを特徴とするものである。
すなわち、本発明の第1の形態は、第1のPCIインターフェースと、第2のPCIインターフェースと、前記第1のPCIインターフェースを前記第2のインターフェースにブリッジするPCIブリッジと、割込み信号に対する制御を行う制御回路とを備え、前記PCIブリッジは、前記第2のPCIインターフェースから前記第2のPCIインターフェースに発行されたメッセージシグナル割込みを認識して、当該メッセージシグナル割込みを前記制御回路にバイパスし、前記制御回路は前記メッセージシグナル割込みを割込み信号に変更して信号線を介して出力する割込み変換部を備えている、割込み制御システムであることを特徴とするものである。
本発明の第2の形態は、割込み信号に対する変換回路が実行する割込み制御方法であって、前記変換回路は、当該変換回路に入力されたメッセージシグナル割込みを割込み信号に変換し、当該変換後の割込み信号を、信号線を介して前記メッセージシグナル割込みの発行先である制御回路に送信するようにした、ことを特徴とするものである。
本発明の第3の形態は、情報処理装置と記憶装置との間の情報のやりとりを制御する制御装置を備える、記憶制御システムにおいて、前記制御装置は、当該制御装置と前記情報処理装置との間、および当該制御装置と前記記憶装置との間での情報のやりとりとを制御する第1のコントローラと、前記第1のコントローラを制御する第2のコントローラと、前記第1のコントローラと前記第2のコントローラとの間での情報の交換を制御する第3のコントローラと、を備え、前記第3のコントローラは、前記第1のコントローラから前記第2のコントローラに発行されたメッセージ割込みを割込み信号に変換し、変換後の割込み信号を前記第2のコントローラに出力する割込み変換部を備える、ことを特徴とするものである。
以上説明した本発明によれば、MSIを利用した割込み制御に、信号線割込み方式を組み込むことができる割込み制御システムを提供することができる。さらに、MSIと信号線割込みとを併用して、MSI方式単独よりも性能を向上させた割込み制御システムを提供することができる。さらに、MSIを、信号線を用いた割込み信号へ変換することを実現する割込み制御システムを提供することができる。さらに、この割込み制御システムを利用した記憶制御システムを提供することができる。
次に本発明に係わる記憶制御システムの実施形態について説明する。図1は記憶制御システム全体のハードウエアブロック図である。記憶制御システムはストレージシステムとも呼ばれ、複数の記憶デバイスを備え、情報処理装置に大規模な記憶領域を提供するものである。
ストレージシステム10は、ストレージ制御装置12と、ストレージ駆動装置13とを備える。ストレージ制御装置10は、上位装置としての情報処理装置14から受信したコマンドに従ってストレージ駆動装置12に対する制御を行う。例えば、情報処理装置14からストレージ駆動装置に対するデータ入出力要求を受信して、ストレージ駆動装置が備える記憶ボリューム28に対してデータの読み書きを行う。
情報処理装置はCPU(Central Processing Unit)やメモリを備えたコンピュータ等の情報機器である。情報処理装置が備えるCPUにより各種プログラムが実行されることにより様々な機能が実現される。
図1において、情報処理装置14A,14BはSAN(Storage Area network)16を介してストレージ制御装置12と通信可能に接続されている。SANは、ストレージ制御装置12と情報処理装置14A,14Bとの間でデータ入出力要求やデータの送受信をファイバチャネルプロトコルに従って行うネットワークである。
情報処理装置14C,14Dは、IP-SAN(Internet Protocol -SAN)18を介してストレージ制御装置に接続されている。IP-SANは、ストレージ制御装置と情報処理装置14C,14Dとの間でデータ入出力要求やデータの送受信をインターネットプロトコルに従って行うネットワークである。
ストレージ駆動装置13は、データを記憶するための多数の物理ディスクドライブを備えている。物理ディススクドライブは記憶デバイスの一例である。記憶デバイスとして、フラッシュメモリなどの半導体メモリを使用することもできる。
ストレージ駆動装置13は多数の物理ディスクドライブをアレイ状に収納しているために、情報処理装置14に対して大容量の記憶領域を提供することができる。物理ディスクドライブは、ハードディスクドライブなどのデータ記憶媒体、あるいは、RAID(Redundant Arrays of Inexpensive Disks)を構成する複数のハードディスクドライブにより構成することができる。
また、物理ディスクドライブにより提供される物理的な記憶領域である物理ボリュームには、論理的な記憶領域である論理ボリュームを設定することができる。物理ボリュームと論理ボリュームとを含む、データを記憶するための記憶領域を記憶ボリュームとも称する。図1は複数の記憶ボリューム28A,28Bを示している。
ストレージ制御装置とストレージ駆動装置とは図1のように直接に接続される形態のほか、ネットワークを介して両者が接続されるようにもできる。さらに、ストレージ駆動装置とストレージ制御装置とを同一の筐体として一体にして構成することもできる。
ストレージ制御装置12はホスト制御LSI20(20A,20B)、データ転送制御LSI24、ディスク制御LSI26(26A,26B)、キャッシュメモリ22、MP制御部30と、を備える。ストレージ制御装置は、ホスト制御LSI20よりSAN/IP-SANを介して情報処理装置1〜4との間の通信を行う。ホスト制御LSI20のホストとは情報処理装置(ホスト装置)を意味するものである。ディスク制御LSI26のディスクは記憶デバイスであるハードディスクを意味するものである。
ホスト制御LSI20は、ファイバチャネルプロトコルもしくはインターネットプロトコルを用いて情報処理装置14との間で通信を行い、情報処理装置からデータ入出力要求を受信し、情報処理装置との間でデータの送受信を行う。ディスク制御LSI26は、データを記憶する記憶ボリュームと通信可能に接続され、ストレージ駆動装置の制御を行う。
データ転送制御LSI24は、ホスト制御LSI20とMP制御部間30もしくはディスク制御LSI26とMP制御部間30の制御情報(例えば、データ入出力要求)のブリッジを行い、また、ホスト制御LSI20とキャッシュメモリ22間、もしくはディスク制御LSI26とキャッシュメモリ22間のデータ転送制御を行う。MP制御部30は、情報処理装置からの制御情報(例えば、データ入出力要求)に対して、ホスト制御LSI20、ディスク制御LSI26、データ転送制御LSI24を制御する。キャッシュメモリ22は、ホスト制御LSI20と記憶ボリューム28、ディスク制御LSI26と記憶ボリューム28の間で授受されるデータを一次記憶するメモリである。
例えば、あるホスト制御LSI20が情報処理装置14からデータ入力要求を受信した場合には、データ転送制御LSI24を介してMP制御部30に同要求を転送する。転送されたデータ入力要求を検出したMP制御部30は同要求に従ってデータ転送制御LSI24をセットアップし、ホスト制御LSI20に対してデータ転送の開始を指示し、データはホスト制御LSIよりデータ転送制御LSI24を介してキャッシュメモリ22に格納される。
データをキャッシュメモリ22に格納したホスト制御LSI20は、MP制御部30に格納が終了したことを伝える。そして、データの格納の終了を検出したMP制御部30は、データ転送制御LSI24をセットアップし、ディスク制御LSI26対して記憶ボリューム28へのデータの転送を指示し、データはキャッシュメモリ22よりデータ転送制御LSI24、ディスク制御LSI26を介して、記憶ボリューム28に格納される。
また、あるホスト制御LSI20が情報処理装置14からデータ出力要求を受信した場合には、読み出し対象となるデータが、キャッシュメモリ22に存在するかどうかを調べる。MP制御部30は、キャッシュメモリ22に読み出しデータが存在しない場合には、データ転送制御LSI24をセットアップし、ディスク制御LSI26に対してデータ転送の開始を指示し、読み出し対象となるデータを、記憶ボリューム28からキャッシュメモリ22に格納する。
一方、読み出しデータがキャッシュメモリに存在する場合、また、前記転送でキャッシュメモリ22に当該データを格納した場合に、MP制御部30は、データ転送制御LSI26をセットアップし、ホスト制御LSI20に対してデータ転送の開始を指示し、情報処理装置14にその読み出しデータを送信する。ホスト制御LSI20とディスク制御LSI26が請求項記載の第1のコントローラに相当し、MP制御部が第2のコントローラに相当し、データ転送制御LSI24が第3のコントローラに相当する。
図2は、MP制御部30(「MP」はマイクロプロセッサの略称である。)のハードウエアの詳細ブロック構成を含めたストレージ制御装置12のブロック図である。MP制御部は、 MP1、MP2、MPブリッジ46、割込みコントローラ48、ローカルメモリ40と、を備えている。MP1,MP2がローカルメモリ40に格納された各種プログラムを実行することにより、MP制御部30はデータの入出力制御やその他様々な機能を実現する。
MPブリッジ46は、MP1,MP2、ローカルメモリ40、さらに割込みコントローラ48間を結び、さらにMP制御部30の外部I/FとしてPCIを備えている。割込みコントローラ48はMP制御
部30の外部から、図2ではデータ転送LSI24を介してホスト制御LSI20などにおける割込み要因を信号として取り込み、これをMP1,MP2に伝える機能を有している。
ホスト制御LSI20とデータ転送制御LSI24の間のバス32A,32B、ディスク制御LSI26とデータ転送制御LSI24の間のバス34A,34Bにおける通信は、それぞれPCI Express規格をサポートしている。MPブリッジ46とデータ転送制御LSI24の間のバス33における通信は、PCIX、PCI Expressを含むPCIインターフェース規格をサポートしている。データ転送制御LSI24はPCI-PCIブリッジの機能をも有している。PCIの最新仕様であるPCI Expressは、従来のPCI/PCIXでの複数の信号線で制御するパラレルIFをシリアルIFに変更している。PCI Expressでは、割込みはMSIが前提となっている。
ホスト制御LSI20、ディスク制御LSI26は、それぞれ自身で発生した要因に基づき、MSI割込み31を形成し、これを、PCI Expressバス32,34を介してデータ転送LSI24に送る。データ転送制御LSI24と割込みコントローラ48との間には、“H”又は“L”であるビットで構成された割込み信号を送る為の信号線35が設けられている。信号線の数に応じたビット数、例えば信号線が4本の場合には、4ビットで構成される割込み信号を、データ転送LSI24は割込みコントローラ48に送る。割込みコントローラから割込み信号を受けたMP(MP1又はMP2)は、ローカルメモリ40に複数ある割込みハンドラから特定の割込みハンドラを選択して実行する。
PCI-PCIブリッジを実施しているデータ転送制御LSI24は、MSIをトラップし信号線割込み信号に変換する。MP制御部30は割込み信号線35を介して割込み信号を受けるので、必ずしもPCI Expressに対応するものでなくても良い。なお、MP制御部30がPCI Express に対応するものである場合には、データ転送制御LSIはMSIを信号線割込みに変換することなく,MSIを、PCI Expressバス33を介して受信するようにできる。もっとも、MP制御部がPCI,PCIXをサポートしていることに留まる場合には、既述のとおり割込み信号線35を介して割込み信号を受信する。MSIとはPCI仕様の一部であり、詳しくはPCI-SIGで規定されている、PCI Local Bus Specification, Revision 3.0, PCI Express Base Specification, Revision1.0,1.0a,1.1で説明されている。
参考のために、図2の比較例に係わるストレージ制御装置のブロック図を図3に示す。図2と異なるのは、ホスト制御LSI20から割込み信号線37が、そして、ディスク制御LSI26から割込み信号線が、割込みコントローラ48に向けて形成されている点である。図3では、ホスト制御LSIとデータ転送制御LSIとの間、ディスク制御LSIとデータ転送制御LSIとの間はPCIバスによって接続されている。
図4は、データ転送制御LSI24の構造を説明する為のハードウエアブロック図である。データ転送制御LSI24は、PCIを制御するPCI-IF40,42,43とキャッシュメモリ22を制御するメモリIF48を備えている。PCI-IF40はホスト制御LSI20との間のPCIを制御するインターフェースであり、PCI-IF42はディスク制御LSI26との間のPCIを制御するインターフェースであり、PCI-IF43はMPブリッジ46との間のPCIを制御するインターフェースである。
データ転送制御LSI24は、さらにPCI-IF間を接続するブリッジ44、46、そして、PCI-IFとメモリIF間でMP制御部30が設定したパラメータに基づきデータ転送制御を行うDMA50,52を備えている。さらに、データ転送制御LSI24は、MSIを信号線によってMP制御部30に出力される信号線割込みに変換する割込み変換部54を備えている。
PCI-IF40とPCI-IF43との間のMSIはブリッジ44に、PCI-IF42とPCI-IF43との間のMSIはブリッジ46によってそれぞれトラップされ、MSIは割込み変換部54に送られる。DMA50及びDMA52はメモリIF48を介してキャッシュメモリ22と接続されている。さらに、DMA50,52は前記パラメータ設定のためにPCI-IF43と、また、DMA50,52内部で発生した割込みを通知するために割込み換部54と接続されている。
次に、図1及び図4に基づいて割込み処理の一例を、順を追って説明する。先ず、情報処理装置から送られたデータをストレージ制御装置12がキャッシュメモリ22に転送する動作について説明する。MP制御部30はデータ転送制御LSIのDMA50,52の転送パラメータを設定する。データ転送制御LSIはホスト制御LSI20からのデータ転送の開始を待つ。MP制御部はホスト制御LSIに転送の開始を指示する。ホスト制御LSIはデータ転送制御LSIに対してライトデータの転送を開始する。
次いで、データ転送LSIはホストLSIからのデータを前記DMAの設定値に基づきキャッシュメモリ22へライト転送する。ホスト制御LSIはデータ転送LSIへのデータ転送を終了すると、MP制御部へ割込みを通知する(割込み通知#1)。MP制御部は割込み#1によってホスト制御LSIがデータ転送を終了したことを判定する(割込み処理#1)。データ転送LSIのDMA50,52がキャッシュメモリへのデータ転送終了後、DMAはMP制御部に割込みを通知する(割込み通知#2)。MP制御部30は割込み#2によって、データ転送LSIがキャッシュメモリへのデータの転送を終了したことを判定する(割込み処理#2)。
このように、通常は情報処理装置からのライトデータをキャッシュメモリに転送する過程で、MP制御部30への割込み通知、及びMP制御部30での割込み処理がそれぞれ2回発生する。
しかしながら、図4に示すように、割込み変換部54がホスト制御LSI20から割込み通知(MSI)を認識することで、具体的には、この割込みがデータの転送が終了したことを意味するものである場合、DMAの割込み通知を一定時間待ち、二つの割込みを一つにまとめることにより、MP制御部30の割込み処理を1回にすることができる。割込みをまとめる、まとめないの判定は、割込み内容、具体的にはMSIのアドレスで判定がデータ転送終了に関する内容か否かで判定する。データ転送終了割込みである場合HA,DMAの割込みが必ず存在するはずなので、二つ揃うまで、割込みを待つことができる。
一定時間待っても揃わない場合は、何か内部で異常が起こっていることが考えられるので、その旨の割込みをMP制御部に送信することができる。また、キャッシュメモリにあるデータを、DMAを介してホスト制御LSIに転送する場合は、DMAの割込み通利を検出した後、ホスト制御LSIからの割込み通知を一定時間待つことで実現できる。
図5は割込み変換処理を説明するためのブロック図である。ブリッジ44(46)のローカルメモリ60Aには、ホスト制御LSI20,ディスク制御LSI26から送られるMSI60Bに対応するアドレス表60が存在する。ブリッジはこのアドレス表に基づいて、PCI-IF40(42)からPCI-IF43に送られたMSIを認識する。PCI-IF43に対するMSIのアドレスは予め定まっているために、ブリッジはPCI-IF40(42)からPCI-IF43に向けた制御情報の中からアドレス表60に基づいてMSIを認識することができる。
ブリッジ44(46)が予め設定されたMSI対応アドレス表に同一のアドレスを持ったコマンドを認識した場合、ブリッジはこれをMSIとして認識し、MSIをPCI-IF43に送出することなく、MSIを割込み変換部54に転送する。なお、MSIアドレス表60におけるアドレス0・・・・アドレスnは、MSIのアドレスを示している。
割込み変換部54は認識したMSIをデコードして、信号線を用いる割込み信号に変換する。図6の100は、MSIを信号線割込み信号に変換するためのテーブルを示したものである。MSIと割込み信号との対応関係が決定される。図5での例示にしたがい信号線を4本とすると、割込み信号は(a,b,c,d)の4ビットから構成される。各ビットが信号線の「H」又は「L」に対応している。割込み変換部54はこのビット信号の組み合わせに基づいて信号線変換表61に各信号線(信号線0〜m)のON/OFFを登録する。
図6の102は各ビット割込み信号に対応する割込みハンドラを示している。MP制御部のMP1,MP2は割込み変換部から割込みコントローラを介して受信したビット割込み信号によって特定の割込みハンドラを決定し、次いでこれを実行する。信号線35を介した割込み処理の種類は、信号線の数の制約を受けるために、送出されるMSIの種類より少ないのが普通である。割込み変換部54は制御レジスタ62に登録された制御信号に基づいて割込み信号の出力を行う。
図7は割込み変換部が行う割込み信号の出力処理を示すタイミングチャートである。ホスト制御LSIは、自身に割込み要因が発生する(700)とMSIを送出する(702)。データ転送制御LSIはMSIを検出し(704)、PENDレジスタにMSIの要因、具体的には、PENDレジスタの各ビットは、MSIの各アドレスに対応しており、前者ビットに“1”を設定することで要因を保持する(706)。すなわち、PENDレジスタはデータ転送制御LSIがMSIを検出したときに設定されるものである。
データ転送制御LSIは、PENDレジスタと同様に、MSIの各アドレスに対応したMSKレジスタの値とPENDレジスタの値との論理積を実施して、その結果をSTSレジスタに反映させる(706)。MSKレジスタは、PENDレジスタをマスクするためのものであり、MSKレジスタに特定値を登録することによりPENDレジスタを無効化、すなわち、特定のMSI要因を無効にすることができる。
データ転送制御LSIがMSIを検出すると、PENDレジスタをセットする。この時、MSKレジスタはPENDレジスタを有効にする値が格納されていることから、両者の論理積であるSTSレジスタに基づいて信号線のオン・オフが図6にしたがって決定される、即ち割込み信号がMP制御部(プログラム)に出力される(708)。
割込み信号による割込みがMP制御部に発生する(710)。MP制御部はデータ転送制御LSI内のSTSレジスタをリードして割込みを判定する(712)。割込みを判定したMP制御部はMSKレジスタをライトして前記PENDレジスタをマスクする(714)。この時、データ転送制御LSIはPENDレジスタとMSKレジスタとの論理積を計算することにより割込み信号をOFFする(716)。
MP制御部は割込みを判定するとホスト制御LSIに対して割込み処理を行う(718)。MP制御部は割込み処理を終了したら、PENDレジスタをライトして割込みをクリアする(720)。これによりPENDレジスタの保持要因はクリアされる(721)。MP制御部はMSKレジスタをライト処理して、PENDレジスタのマスク(割込みマスク)を解除する。以上によって、ホスト制御LSIからのMSIに基づくMP制御部への割込み処理が終了する。
さらに、図8に基づいて、割込み変換部本発明における、割込み処理の動作の発展例について説明する。この発展例は、制御レジスタ郡の“INTPASS”を利用するものである。図5に示すように、ブリッジ44(46)で検出されたMSIを割込み変換部54が割込み信号に変換する。したがって、ホスト制御LSI又はディスク制御LSIからPCI-IF43に送られたコマンドはブリッジからPCI-IF43に送られるが、MSIはブリッジから割込み変換部54から信号線35を介して割込みコントローラに送られる。したがって、PCI-IF43における処理がビジーやあるいはPCIの障害により、コマンドがPCI-IF43で待たされることがあると、MP制御部は割込み変換部から割込み信号を受けても割込み処理行うことができない。“INTPASS”はこのような場合でも割込み処理を可能にするための制御情報である。
以下にINTPASSを用いた割込み処理の詳細について説明する。ここで、図8に示すようにMP制御部が第1のコマンドであるQUE(1)の割込み処理を実施中に、第2のコマンドであるQUE(2)とそのMSIがホスト制御LSIより送出された場合について説明する。
ホスト制御LSIに割込み要因が発生する(800)と、ホスト制御LSIは、PCI-IF40、ブリッジ44、PCI-IF43、及びMPブリッジ46を介してローカルメモリ40にQUE(1)をライトする(802)。ホスト制御LSIがQUE(1)に続いてMSIを送出すると(804)、データ転送制御部はMSIを割込み信号に変換する(804)。
MPプログラムは割込み信号に基づく割込み発生(806)を検出して割込み判定を行い、次いで、割込みをマスクする(808)。割込みのマスクによりデータ転送LSIは割込み信号をOFFする。これは図7の710乃至716と同様である。MPプログラムは、ローカルメモリからQUE(1)をリードし(816)、割込み処理を実行する。ローカルメモリには制御レジスタ群62の“INTPASS”が書き込まれるINTPASSエリアが存在する。MPプログラムはINTPASSエリアを初期化する(824)。
一方、ホスト制御LSIはQUE(2)をさらに発行する(820)と、QUE(2)はブリッジ44(46)を通過してPCI-IF43に送出されるが、MSIは前述のようにPCI-IF43ではなく割込み変換部54に送出される(822)。このとき、MPプログラムが割込みクリア(826)に基づいて、割込み変換部のPENDレジスタで保持していたMSI要因をクリア(828)際に、QUE(2)によるMSI要因も同時にクリアしてしまう可能性がある。
MP制御部がローカルメモリに書かれたQUE番号を再リードすれば、本来であればQUE番号がQUE(2)に更新されているはずで、MP制御部は更新されたQUE(2)によって822のMSIによる割込みの有無を検出できるはずであるが、QUE(2)が、PCI-IF43のPCIのビジー等によりローカルメモリにQUE(2)をライトできないでデータ転送制御LSI内部のPCI-IF43で待たされている場合が存在する。この場合、ローカルメモリ上のQUE番号はQUE(2)に更新されていないために、MP制御部はQUE(2)に基づく割込みを検出することが不可能となる。
ここで、QUE(1)の割込み処理でQUE(2)の割込み要因を同時にクリア(828)した場合でも、データ転送制御LSIは制御レジスタのINTPASSの値をローカルメモリのINTPASSエリアに書き込み更新する(830)。MP制御部がローカルメモリ上のINTPASSの更新を確認してからQUE番号の再リードを行ってQUE(2)を実行して割込み処理を行う(832,834)。次いで、MP制御部MSKレジスタにライト処理を行って割込みマスクの解除を行う。
このようにINTPASSを利用した機能とは、MP制御部による割込みクリア指示をデータ転送制御LSIが受信した場合、割込みのクリアを契機に、ホスト制御LSIが予め設定されたローカルメモリ内のアドレス(INTPASS領域)に固定値をライトする機能であって、MP制御部は割込み変換部に割込みクリア指示をする前に同アドレスを初期化し、割込みクリア指示後、同アドレスが更新されたか否か確認することで、データ転送制御LSI内部の割込み変換に関する処理が終了したことを判定する機能である。すなわち、更新確認後、QUEを再リードすることで、QUE(2)の要因を検出することができる。
次に、データ転送制御LSIの他の動作について説明する。PCI-IF43もしくは、MP制御部30とデータ転送制御LSI間のPCIに障害が発生した場合、そもそもMP制御部に障害情報を送ることができなかったために、MP制御部がPCIの障害内容を認識することができなかった。
データ転送制御LSIの割込み変換部54はMSIを変換するために設けた複数の割込み信号線を備えるために、同信号線を用いてデータ転送制御LSIの障害であるPCIの障害をMP制御部に伝えることができる。割込み変換部54には、PCI−IF43割込み線、具体的にはPCIで障害発生時に変化する信号線が引き込まれており、同信号が変換した場合にPCI−IF43内部の障害レジスタを自らリードする機能を有している。さらに、その小がレジスタの内容を複数の割込み信号線35を用いてMP制御部30へ送出する。
MP制御部30は、割込み信号線からの割込み信号をデコードすることで、従来知り得なかったPCIの障害内容を認識することができるようになった。そして、MP制御部が障害を判定した後MP制御部とデータ転送制御情報との間の各種制御情報の通信を割込み信号線を利用して行うことができる。すなわち、割込み信号線はPCIバスに対する冗長性を向上させることになる。
以上説明した実施形態によれば、PCI に基づくMSIを割込み信号に変換し、変換後の割込み信号をコントローラに出力することにより、コントローラがMSIをサポートしていない場合でも、ハードウエアやOSのアップグレードをすることなく、MSIに基づく割込を利用した割込み制御システムを提供することができる。以上説明した実施形態は一例であり、当業者が適宜変更可能である。
本発明に係わる記憶制御システムの一例を示すハードウエアブロック図である。 図1のストレージ制御装置の詳細な構成の一例を示すハードウエアブロック図である。 図2に対する比較例とした、ストレージ駆動装置の詳細な構成を示すハードウエアブロック図である。 データ転送制御LSIの一例の詳細な構成を示すハードウエアブロック図である。 データ転送制御LSIの割込み変換部の詳細な構成を示すブロック図である。 MSIから割込み信号への割込み変換を実現するための制御テーブルの一例である。 割込み変換処理の一例に係わるタイミングチャートである。 割込み変換処理の他の例に係わるタイミングチャートである。 割込み信号線を利用した、PCIでの障害処理の一例に係わるタイミングチャートである。
符号の説明
10 記憶制御システム、12 ストレージ制御装置、13 ストレージ駆動装置、14 情報処理装置(ホスト)、20 ホスト制御LSI、22 キャッシュメモリ、24 データ転送制御LSI、26 ディスク制御LSI、30 MP制御部、40,42,43 PCI インターフェース、44 PCI ブリッジ、54 割込み変換部

Claims (16)

  1. 第1のPCIインターフェースと、第2のPCIインターフェースと、前記第1のPCIインターフェースを前記第2のインターフェースにブリッジするPCIブリッジと、割込み信号に対する制御を行う制御回路と、を備え、
    前記PCIブリッジは、前記第1のPCIインターフェースから前記第2のPCIインターフェースに発行されたメッセージシグナル割込みを認識して、当該メッセージシグナル割込みを前記制御回路にバイパスし、
    前記制御回路は前記メッセージシグナル割込みを割込み信号に変更して信号線を介して出力する割込み変換部を備えている、割込み制御システム。
  2. 前記第1のPCIインターフェースは第1のコントローラに接続され、前記第2のPCIインターフェースは第2のコントローラに接続され、前記第2のコントローラは割込み制御部を備え、前記割込み変換部は前記割込み制御部と前記割込み変換部との間に設けられた信号線を介して、前記変換後の割込み信号を前記割込み制御部に出力する、請求項1記載の割込み制御システム。
  3. 前記第1のコントローラと前記第1のPCIインターフェースとは、PCI Expressバスによって接続されている、請求項2記載の割込み制御システム。
  4. 前記第2のコントローラと前記第2のPCIインターフェースとは、PCIバス又はPCI Expressによって接続されている、請求項2記載の割込み制御システム。
  5. 前記制御回路は前記割込み変換部を制御するためのレジスタを備えており、当該レジスタは第1の領域と第2の領域とを備え、前記制御回路は、前記PCIブリッジが前記メッセージ割込みを検出したことを示す第1の情報を前記第1の領域にセットし、前記変換後の割込み信号の出力を禁止する第2の情報をセットする第2の領域と、を備え、前記制御回路は前記第1の情報と前記第2の情報に基づいて、前記変換後の割込み信号を前記割込み変換部から出力するかしないかを決定する、請求項1記載の割込み制御システム。
  6. 前記第2のコントローラが前記第2の情報を前記第2の領域にセット可能である、請求項5割込み制御システム。
  7. 前記第2のコントローラは前記変換後の割込み信号に基づく割込みを検出すると前記第2の情報を前記第2の領域にセットし、当該割込みが終了すると当該第2の情報および前記第1の情報をクリアする、請求項5記載の割込み制御システム。
  8. 前記制御回路は前記PCIの障害を検出し、これを前記割込み信号線を介して前記第2のコントローラに通知する、請求項2記載の割込み制御システム。
  9. 前記1のコントローラはコマンドに続いて前記メッセージ割込みを前記第2のコントローラに対して発行し、前記割込み変換部は前記変換後の割込み信号を前記第2のコントローラに発行し、次いで前記割込み変換部は割り込みのクリアを契機に、そのことを示す制御信号を前記第2のコントローラのメモリに書き込み、当該第2のコントローラはこのメモリをチェックし当該制御信号を確認した後前記コマンドに基づく割込み処理を終了する、請求項2記載の割込み制御システム。
  10. 割込み信号に対する変換回路が実行する割込み制御方法であって、前記変換回路は、当該変換回路に入力されたメッセージシグナル割込みを割込み信号に変換し、当該変換後の割込み信号を、信号線を介して前記メッセージシグナル割込みの発行先である制御回路に送信するようにした、割込み制御方法。
  11. 情報処理装置と記憶装置との間の情報のやりとりを制御する制御装置を備える、記憶制御システムにおいて、
    前記制御装置は、
    当該制御装置と前記情報処理装置との間、および当該制御装置と前記記憶装置との間での情報のやりとりとを制御する第1のコントローラと、前記第1のコントローラを制御する第2のコントローラと、前記第1のコントローラと前記第2のコントローラとの間での情報の交換を制御する第3のコントローラと、を備え、
    前記第3のコントローラは、前記第1のコントローラから前記第2のコントローラに発行されたメッセージ割込みを割込み信号に変換し、変換後の割込み信号を前記第2のコントローラに出力する割込み変換部を備える、記憶制御システム。
  12. 前記第2のコントローラと前記第3のコントローラとの間に割込み信号線が設けられてなり、前記割込み変換部は前記変換後の割込み信号を、前記信号線を介して前記第2のコントローラに出力する、請求項11記載の記憶制御システム。
  13. 前記第3のコントローラは、第1のPCIインターフェースと、第2のPCIフェースと、前記第1のPCIインターフェースを前記第2のインターフェースにブリッジするPCIブリッジとを備え、
    前記PCIブリッジは、前記第1のPCIインターフェースから前記第2のPCIインターフェースに発行された前記メッセージシグナル割込みを認識して、当該メッセージシグナル割込みを前記変換部にバイパスする、請求項11記載の記憶制御システム。
  14. 前記第1のPCIインターフェースは前記第1のコントローラに接続され、前記第2のPCIインターフェースは前記第2のコントローラに接続され、前記第1のPCIインターフェースと前記第1のコントローラとはPCI Expressバスによって接続されている、請求項13記載の記憶制御システム。
  15. 前記第1のコントローラは、前記情報処理装置との間の情報の授受を制御する第1のLSIと前記記憶デバイスとの間の情報の授受を制御する第2のLSIと、を備えてなり、前記第1のPCIインターフェースは前記第1のLSIと接続する第3のPCIインターフェースと、前記第2のLSIと接続する第4のPCIインターフェースとを備えてなり、前記第1のLSIと前記第3のPCIインターフェースと、前記第2のLSIと前記第4のPCIインターフェースとが前記PCI Expressバスによって接続されてなる、請求項14記載の記憶制御システム。
  16. 前記2のコントローラは、マイクロプロセッサと、前記第2のPCIインターフェースからの情報を前記マイクロプロセッサにブリッジするブリッジ回路と、割込み制御部を備え、前記第2のPCIインターフェースと前記第ブリッジ回路はPCIバス又はPCI Expressバスで接続され、前記割込み制御部は前記変換後の割込み信号を出力する前記信号線に接続している、請求項12記載の記憶制御システム。
JP2006267510A 2006-09-29 2006-09-29 割込み制御システム、およびこれを利用した記憶制御システム Pending JP2008090375A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006267510A JP2008090375A (ja) 2006-09-29 2006-09-29 割込み制御システム、およびこれを利用した記憶制御システム
US11/604,690 US7526592B2 (en) 2006-09-29 2006-11-28 Interrupt control system and storage control system using the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006267510A JP2008090375A (ja) 2006-09-29 2006-09-29 割込み制御システム、およびこれを利用した記憶制御システム

Publications (1)

Publication Number Publication Date
JP2008090375A true JP2008090375A (ja) 2008-04-17

Family

ID=39262332

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006267510A Pending JP2008090375A (ja) 2006-09-29 2006-09-29 割込み制御システム、およびこれを利用した記憶制御システム

Country Status (2)

Country Link
US (1) US7526592B2 (ja)
JP (1) JP2008090375A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2189912A1 (en) 2008-11-13 2010-05-26 Sony Corporation Interrupt detection apparatus and information processing system
JP2011519092A (ja) * 2008-04-28 2011-06-30 ヒューレット−パッカード デベロップメント カンパニー エル.ピー. 仮想割り込みモードインターフェース及び割り込みモードを仮想化するための方法

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7949813B2 (en) * 2007-02-06 2011-05-24 Broadcom Corporation Method and system for processing status blocks in a CPU based on index values and interrupt mapping
US7805556B2 (en) * 2007-05-01 2010-09-28 Ricoh Company, Ltd. Interrupt control apparatus, bus bridge, bus switch, image processing apparatus, and interrupt control method
JP5076967B2 (ja) * 2008-02-27 2012-11-21 富士通株式会社 情報処理システム、情報処理システムの制御方法、および情報処理システムの制御プログラム
US8135884B1 (en) * 2009-05-04 2012-03-13 Cypress Semiconductor Corporation Programmable interrupt routing system
US8112551B2 (en) 2009-05-07 2012-02-07 Cypress Semiconductor Corporation Addressing scheme to allow flexible mapping of functions in a programmable logic array
US9342352B2 (en) 2010-06-23 2016-05-17 International Business Machines Corporation Guest access to address spaces of adapter
US9213661B2 (en) 2010-06-23 2015-12-15 International Business Machines Corporation Enable/disable adapters of a computing environment
US8504754B2 (en) * 2010-06-23 2013-08-06 International Business Machines Corporation Identification of types of sources of adapter interruptions
US8572635B2 (en) 2010-06-23 2013-10-29 International Business Machines Corporation Converting a message signaled interruption into an I/O adapter event notification
US8626970B2 (en) 2010-06-23 2014-01-07 International Business Machines Corporation Controlling access by a configuration to an adapter function
US8615645B2 (en) 2010-06-23 2013-12-24 International Business Machines Corporation Controlling the selectively setting of operational parameters for an adapter
US8621112B2 (en) 2010-06-23 2013-12-31 International Business Machines Corporation Discovery by operating system of information relating to adapter functions accessible to the operating system
US8478922B2 (en) 2010-06-23 2013-07-02 International Business Machines Corporation Controlling a rate at which adapter interruption requests are processed
US8468284B2 (en) 2010-06-23 2013-06-18 International Business Machines Corporation Converting a message signaled interruption into an I/O adapter event notification to a guest operating system
US8560750B2 (en) * 2011-05-25 2013-10-15 Lsi Corporation Systems and methods for advanced interrupt scheduling and priority processing in a storage system environment
US9146776B1 (en) * 2011-08-16 2015-09-29 Marvell International Ltd. Systems and methods for controlling flow of message signaled interrupts
US9128920B2 (en) 2011-11-30 2015-09-08 Marvell World Trade Ltd. Interrupt handling systems and methods for PCIE bridges with multiple buses
US8661177B2 (en) * 2011-12-19 2014-02-25 Advanced Micro Devices, Inc. Method and apparatus for controlling system interrupts
GB2497966A (en) * 2011-12-23 2013-07-03 Renesas Mobile Corp Interrupt event management
US9104472B2 (en) * 2013-02-04 2015-08-11 Freescale Semiconductor, Inc. Write transaction interpretation for interrupt assertion
JP7179489B2 (ja) * 2018-05-18 2022-11-29 キヤノン株式会社 ストレージシステム及びその制御方法、プログラム、並びに記憶制御システム
DE102021107336A1 (de) 2021-03-24 2022-09-29 Infineon Technologies Ag VORRICHTUNGEN, SYSTEME, UND VERFAHREN FÜR PCIe ENDPUNKT INTERRUPT

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0784970A (ja) 1993-09-20 1995-03-31 Fujitsu Ltd 割込み制御方法
JPH0997177A (ja) 1995-09-29 1997-04-08 Toshiba Corp コンピュータシステムの割り込み制御方式
TW501017B (en) * 2000-04-05 2002-09-01 Via Tech Inc Processing method, chip set and controller for supporting message signaled interrupt
JP2001331329A (ja) 2000-05-22 2001-11-30 Mitsubishi Electric Corp 割込み制御装置及び割込み制御方法
TWI258083B (en) * 2003-11-20 2006-07-11 Via Tech Inc Interrupt signal control system and control method
US7048877B2 (en) * 2004-03-30 2006-05-23 Intel Corporation Efficiently supporting interrupts
US7162559B1 (en) * 2005-03-08 2007-01-09 Emc Corporation System for controlling interrupts between input/output devices and central processing units

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011519092A (ja) * 2008-04-28 2011-06-30 ヒューレット−パッカード デベロップメント カンパニー エル.ピー. 仮想割り込みモードインターフェース及び割り込みモードを仮想化するための方法
US9037768B2 (en) 2008-04-28 2015-05-19 Hewlett-Packard Development Company, L.P. Virtual-interrupt-mode interface and method for virtualizing an interrupt mode
EP2189912A1 (en) 2008-11-13 2010-05-26 Sony Corporation Interrupt detection apparatus and information processing system
JP2010117872A (ja) * 2008-11-13 2010-05-27 Sony Corp 割込検出装置および情報処理システム
US8200875B2 (en) 2008-11-13 2012-06-12 Sony Corporation Processing and forwarding of message-signaled interrupts

Also Published As

Publication number Publication date
US7526592B2 (en) 2009-04-28
US20080082713A1 (en) 2008-04-03

Similar Documents

Publication Publication Date Title
JP2008090375A (ja) 割込み制御システム、およびこれを利用した記憶制御システム
US7849235B2 (en) DMA controller, node, data transfer control method and storage medium
JP5479020B2 (ja) トランザクション属性を修正するためのメモリ領域オーダリング要求に関するコンプリータ知識の使用
JP4855451B2 (ja) 記憶装置のアクセス方法及び装置
JP3807250B2 (ja) クラスタシステム、コンピュータ及びプログラム
CN103959267A (zh) 用于具有多个总线的pcie电桥的中断处理系统及方法
JP2008503808A (ja) 高速メモリモジュール
JP4218538B2 (ja) コンピュータシステム、バスコントローラ及びそれらに用いるバス障害処理方法
CN112052108A (zh) 并行处理设备
US20150253993A1 (en) Switch device, information processing device, and control method of information processing device
JP6418021B2 (ja) 情報処理装置及び情報処理装置の制御方法
JP4410270B2 (ja) バス制御装置
WO2012124431A1 (ja) 半導体装置
JP2006512674A (ja) 光学ストレージの転送性能の向上
EP2019359B1 (en) Information processing apparatus including transfer device for transferring requests
JP2009205347A (ja) 情報処理システム、情報処理システムの制御方法、および情報処理システムの制御プログラム
CN114595188A (zh) 片上系统和事务处理
JP2005301714A (ja) マルチcpuシステム、そのデータ転送方法、及びそのプログラム
JP2005208972A (ja) コンピュータ装置及びシステム
JP5227601B2 (ja) 制御システム
JPH0981502A (ja) コンピュータシステム
JP2005070993A (ja) 転送モード異常検出機能を有する装置並びにストレージ制御装置および同装置用インターフェイスモジュール
JP2006092077A (ja) バスシステム
JP2009037479A (ja) データ転送制御装置及び電子機器
TWI427481B (zh) 工業標準構造介面匯流排的橋接系統、裝置與其方法

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20090220