JP5794137B2 - 制御システムおよび中継装置 - Google Patents

制御システムおよび中継装置 Download PDF

Info

Publication number
JP5794137B2
JP5794137B2 JP2011278822A JP2011278822A JP5794137B2 JP 5794137 B2 JP5794137 B2 JP 5794137B2 JP 2011278822 A JP2011278822 A JP 2011278822A JP 2011278822 A JP2011278822 A JP 2011278822A JP 5794137 B2 JP5794137 B2 JP 5794137B2
Authority
JP
Japan
Prior art keywords
signal
circuit
reset
control
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2011278822A
Other languages
English (en)
Other versions
JP2013130961A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2011278822A priority Critical patent/JP5794137B2/ja
Priority to US13/665,965 priority patent/US9111052B2/en
Priority to EP20120192374 priority patent/EP2608049B1/en
Priority to CN2012104834183A priority patent/CN103176937A/zh
Priority to KR20120134524A priority patent/KR101351194B1/ko
Publication of JP2013130961A publication Critical patent/JP2013130961A/ja
Application granted granted Critical
Publication of JP5794137B2 publication Critical patent/JP5794137B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4291Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/24Resetting means
    • 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
    • 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
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Debugging And Monitoring (AREA)
  • Hardware Redundancy (AREA)
  • Information Transfer Systems (AREA)
  • Power Sources (AREA)

Description

本発明は、制御システムおよび中継装置に関する。
複数の電子回路間においてシリアル通信を行うためのバスとして、I2C(Inter Integrated Circuit)バスがある。I2Cバスは、例えば、メモリへのアクセス、温度センサなどの各種センサからの検出値の読み取り、電子回路の動作の監視や制御などに利用されている。
2Cバスのようなシリアルバスに接続された複数の電子回路のうちの1つが異常停止した場合、他の電子回路がシリアルバスを通じた通信ができなくなる場合がある。このような状態からシリアルバスでの通信を復旧させるための技術として、シリアルバスに接続された電子回路を、シリアルバスとは別のリセット信号線を通じてリセットするものがある。また、電子回路とシリアルバスとの間にハングアップ検出回路を設け、ハングアップ検出回路が、電子回路がハングアップしたことを検知すると、その電子回路をシリアルバスから切り離すようにしたシステムもある。
さらに、シリアルバス上に複数のスイッチを配置しておき、シリアルバスでの通信が不可能になったときに、全スイッチをオフ状態にした後、スイッチを上流側から順次オンにすることで、障害発生箇所を特定できるようにしたシステムもある。
特開2002−63080号公報 特開2010−55474号公報 特表2004−528627号公報
ところで、制御装置がバスを通じて電子回路の動作を制御するシステムでは、例えば、電子回路側のバスインタフェースは、バスを通じて制御装置からの制御信号を受信し、受信した制御信号に応じた信号を電子回路に出力する。このようなシステムにおいてバスが使用不可能になった場合、電子回路側のバスインタフェースがリセットされることで、バスを復旧させることができる。
しかしながら、電子回路側のバスインタフェースがリセットされると、バスインタフェースから電子回路への出力信号が途絶えてしまう。このため、電子回路は、自分自身に異常が発生していなくても、それ以前の動作を継続できなくなるという問題がある。例えば、バスインタフェースのリセットに伴って電子回路もリセットされてしまう。
1つの側面では、本発明は、バスの復旧処理時に制御対象の電子回路が動作を継続できるようにした制御システムおよび中継装置を提供することを目的とする。
上記目的を達成するために、電子回路、バスインタフェース、信号維持回路、リセット制御回路および制御装置を有する制御システムが提供される。この制御システムにおいて、バスインタフェースは、電子回路を制御するための制御信号をバスを通じて受信し、受信した制御信号に応じた信号を電子回路に出力する。信号維持回路は、バスインタフェースから電子回路へ出力される信号の値を維持する。リセット制御回路は、信号維持回路に電子回路への出力信号の値を維持させた後、バスインタフェースをリセットする。制御装置は、バスを通じて制御信号を出力することで電子回路を制御する。
また、上記目的を達成するために、中継回路、バスインタフェース、信号維持回路およびリセット制御回路を有する中継装置が提供される。この中継装置において、中継回路は、複数の情報処理装置間で送受信される信号を中継する。バスインタフェースは、中継回路を制御するための制御信号をバスを通じて受信し、受信した制御信号に応じた信号を中継回路に出力する。信号維持回路は、バスインタフェースから中継回路へ出力される信号の値を維持する。リセット制御回路は、信号維持回路に中継回路への出力信号の値を維持させた後、バスインタフェースをリセットする。
1態様によれば、バスの復旧処理時に制御対象の電子回路が動作を継続できる。
第1の実施の形態に係る制御システムの構成例とその動作例を示す図である。 第2の実施の形態に係るストレージシステムの全体構成例を示す図である。 SVCのハードウェア構成例を示す図である。 FRTのハードウェア構成例を示す図である。 FRTの参考例を示す図である。 FRTの内部において伝送される信号の例を示す図である。 信号維持回路の内部構成例を示す図である。 リセット制御回路の内部構成例を示す図である。 CEの電源が投入されたときの処理例を示すシーケンス図である。 CEの電源が投入されたときの信号の値の遷移例を示すタイミングチャートである。 運用系のSVCが異常停止したときの処理例を示すシーケンス図である。 運用系のSVCが異常停止したときの信号の値の遷移例を示すタイミングチャートである。
以下、実施の形態について図面を参照して詳細に説明する。
〔第1の実施の形態〕
図1は、第1の実施の形態に係る制御システムの構成例とその動作例を示す図である。図1の制御システム1は、電子回路11、バスインタフェース12、信号維持回路13、リセット制御回路14および制御回路を有する。図1の制御システム1は、例として、2つの制御装置21,22を有している。
電子回路11は、制御装置21,22からの制御対象の回路である。制御装置21,22は、バス31を通じて制御信号を送信することにより、電子回路11を制御する。なお、本実施の形態では例として、制御装置21,22の一方は運用系として動作し、他方は待機系として動作する。
バス31は、例えば、I2Cバスなどのシリアルバスである。バス31は、バスインタフェース12に接続されている。バスインタフェース12は、運用系の制御装置からバス31を通じて送信された制御信号を受信し、受信した制御信号に応じた信号を電子回路11に出力する。
信号維持回路13は、バスインタフェース12から電子回路11に出力される信号の伝送路上に設けられている。信号維持回路13は、リセット制御回路14からの指示に応じて、バスインタフェース12から電子回路11に出力される信号の値を、リセット制御回路14から指示を受けた時点での値に維持する。
リセット制御回路14は、バス31が使用不可能になったとき、信号維持回路13に電子回路11への出力信号の値を維持させ、その後に、バスインタフェース12をリセットする。バスインタフェース12がリセットされることで、バス31は復旧し、使用可能な状態になる。また、リセット制御回路14による上記処理により、バスインタフェース12のリセットによってバスインタフェース12から電子回路11に出力される信号が途絶える事態が回避される。従って、バス31が復旧するまでの間、電子回路11が動作を継続できるようになる。
以下、運用系の制御装置が異常発生によって停止することによりバス31が使用不可能になる場合を想定して、制御システム1における処理を、順を追って説明する。
なお、以下の説明では例として、初期状態では、制御装置21が運用系として動作し、制御装置22が待機系として動作するものとする。待機系として動作する制御装置21は、制御装置21の動作が停止すると、運用系に遷移し、制御装置21に代わって電子回路11の制御を担う。さらに、制御装置22とリセット制御回路14とは、バスインタフェース12のリセットを指示するためのリセット信号線32によって接続されているものとする。
運用系として動作している制御装置21とバスインタフェース12とが、バス31を通じて通信している状態で、制御装置21が異常の発生などによって停止すると、バス31が解放されなくなる。この状態では、制御装置22は、バス31を通じて通信することができず、電子回路11の制御を引き継ぐことができない。
制御装置22は、制御装置21が停止したことを検知すると(ステップS1)、リセット信号線32を通じてリセット指示を出力する(ステップS2)。リセット制御回路14は、リセット指示を受け付けると、信号維持回路13に、電子回路11への出力信号の値を維持するように指示する(ステップS3)。信号維持回路13は、リセット制御回路14から指示を受けた時点でバスインタフェース12から電子回路11に出力されている信号の値を、そのまま維持する。入力される信号の値が維持されることで、電子回路11は、制御装置21が停止する直前と同じ制御状態で、動作を継続することができる。
リセット制御回路14は、信号維持回路13に出力値の維持を指示した後、バスインタフェース12をリセットする(ステップS4)。例えば、リセット制御回路14は、リセット信号線32を通じてリセット指示を受けてから所定時間後に、バスインタフェース12をリセットする。
バスインタフェース12がリセットされることで、バス31は解放される。制御装置22は、バス31を通じて制御信号を送信することで、制御装置21に代わって電子回路11を制御する。なお、制御装置22による電子回路11の制御が開始される際には、例えばリセット制御回路14からの指示によって、信号維持回路13は、出力値を維持する状態を解除する。これにより、制御装置22からの制御信号に応じた信号が、バスインタフェース12から電子回路11に伝送されるようになる。
以上の制御システム1によれば、制御装置22の停止によってバス31が使用不可能になったとき、電子回路11の動作を継続させたまま、バスインタフェース12をリセットしてバス31を復旧させることができる。また、制御装置22は、電子回路11の動作を継続させたまま、電子回路11の制御を制御装置21から引き継ぐことができる。
〔第2の実施の形態〕
図2は、第2の実施の形態に係るストレージシステムの全体構成例を示す図である。ストレージシステム100は、CE(Controller Enclosure)110とDE(Drive Enclosure)120とを含む。
CE110は、CM(Controller Module)111a,111b、FRT(Frontend Router)200、SVC(Service Controller)300a,300bおよびPSU(Power Supply Unit)400を備えている。
CM111a,111bのそれぞれは、CPU(Central Processing Unit)、メモリなどを備えるコンピュータ装置として実現される。また、CM111a,111bのそれぞれには、ホスト装置401,402が接続されている。
CM111a,111bのそれぞれは、ホスト装置401,402からのI/O(In/Out)要求に応じて、DE120内の記憶装置に対するデータの読み書きを行う。CM111a,111bは、例えば、DE120内の記憶装置によって実現される物理記憶領域をRAID(Redundant Arrays of Inexpensive Disks)によって管理し、これらの物理記憶領域に対するアクセスを制御する。また、CM111a,111bは、ホスト装置401,402からのI/O要求に応じてDE120内の記憶装置に対するアクセス制御を行う際に、DE120内の記憶装置に記憶されたデータの一部を、自装置内部のメモリにキャッシュする。
FRT200は、PCIe(Peripheral Components Interconnect express)バス112を介してCM111a,111bと接続されている。FRT200は、内部にPCIeスイッチを備え、CM111aとCM111bとの間でPCIeバス112を通じて送受信されるデータを中継する。
CM111aとCM111bとは、FRT200を介して相互に通信可能になっている。例えば、CM111aは、自装置内のメモリに格納されている、DE120の記憶装置内のデータをキャッシュしたキャッシュデータを、FRT200を通じて他方のCM111bのメモリに格納し、キャッシュデータを二重化する。この場合、CM111aが異常発生によって停止したとき、CM111bは、自装置のメモリに二重化されているCM111aのキャッシュデータを用いて、CM111aが実行していたDE120に対するアクセス制御処理を引き継ぐことができる。
FRT200は、I2Cバス113を介してSVC300a,300bに接続されている。SVC300a,300bは、FRT200内のPCIeスイッチの動作制御や、PCIeスイッチの動作の監視を行う。ここで、SVC300a,300bとFRT200とによって、FRT200内のPCIeスイッチを制御するための制御システムが実現されている。
SVC300a,300bは、I2Cバス113におけるマスタ装置として動作し、FRT200が備える、I2Cバス113に対するバスインタフェースは、I2Cバス113におけるスレーブ装置として動作する。また、SVC300a,300bはそれぞれ同じ機能を備え、SVC300a,300bのうちの一方が運用系として動作し、他方が待機系として動作する。本実施の形態では、初期状態では、SVC300aが運用系として動作し、SVC300bが待機系として動作するものとする。
待機系として動作中のSVC300bは、SVC300aが正常に動作しているかを監視する。そして、SVC300bは、SVC300aの動作が異常停止したことを検知すると、運用系としての動作を開始して、FRT200内のPCIeスイッチの動作制御および動作の監視の各動作を引き継ぐ。
PSU400は、外部から供給されるAC(Alternating Current)電源電圧をDC(Direct Current)電圧に変換し、CE110の内部の装置に対して供給する。
DE120は、CM111a,111bからのアクセス制御対象となる複数の記憶装置を備える。本実施の形態のDE120は、記憶装置としてHDD(Hard Disk Drive)またはSSD(Solid State Drive)を備えるディスクアレイ装置である。
図3は、SVCのハードウェア構成例を示す図である。なお、SVC300a,300bはともに同様のハードウェア構成を有するので、以下の説明では、代表してSVC300aについてのみ説明する。
SVC300aは、CPU301によって装置全体が制御されている。CPU301には、バス307を介して、RAM(Random Access Memory)302および複数の周辺機器が接続されている。RAM302は、SVC300aの主記憶装置として使用され、CPU301に実行させるファームウェアプログラムの少なくとも一部や、このファームウェアプログラムによる処理に必要な各種データを一時的に記憶する。
CPU301には、周辺機器の例として、不揮発性メモリ303、バスインタフェース304、リセット出力回路305および監視回路306が接続されている。
不揮発性メモリ303は、SVC300aの二次記憶装置として使用され、CPU301によって実行されるファームウェアプログラムやその実行に必要な各種のデータなどを記憶する。
バスインタフェース304は、I2Cバス113を通じてデータを送受信するインタフェース処理を実行する。なお、I2Cバス113は、データ信号線とクロック信号線とを含む。バスインタフェース304は、CPU301からの制御の下で、データ信号線を通じて制御データを送信し、また、データ信号線を通じてスレーブ装置(FRT200のバスインタフェース)から送信された応答データを受信する。また、バスインタフェース304は、制御データの送信時や応答データの受信時に、クロック信号線にクロック信号を出力する。
また、SVC300aには、FRT200のバスインタフェースのリセットを指示するためのリセット信号線114が接続されている。リセット出力回路305は、CPU301からの指示に応じて、リセット信号線114にリセット指示信号を出力する。
また、SVC300aとSVC300bとは、互いの動作を監視するための監視用信号線115を介して接続されている。監視回路306は、他方のSVC300bの監視回路との間で、監視用信号線115を通じて監視信号を送受信する。例えば、運用系として動作するSVCのCPUは、自装置の監視回路に、他方のSVCに対して監視信号を一定周期で送信させる。待機系として動作するSVCの監視回路は、他方のSVCから監視信号を受信すると、その旨を自装置のCPUに通知する。待機系として動作するSVCのCPUは、自装置の監視回路が一定時間以上監視信号を受信しない場合に、他方のSVCが異常停止したと判定する。
図4は、FRTのハードウェア構成例を示す図である。FRT200は、PCIeスイッチ210、DDC(DC/DC Converter)220、I2C−GPIO(General Purpose Input/Output)230、信号維持回路240およびリセット制御回路250を備えている。
PCIeスイッチ210は、CM111aとCM111bとの間でPCIeバス112を通じて送受信されるデータを中継する。また、PCIeスイッチ210は、I2C−GPIO230との間で信号を送受信することができる。PCIeスイッチ210は、I2C−GPIO230からの制御信号に応じた処理を実行したり、I2C−GPIO230から要求された情報を返信する。例えば、PCIeスイッチ210は、I2C−GPIO230からのリセット指示に応じて、自分自身をリセットする。また、PCIeスイッチ210は、I2C−GPIO230からの要求に応じて、温度情報や駆動電圧情報など、自分自身の状態を示す情報を返信する。
DDC220は、PSU400からのDC電圧を所定の電圧に変換し、PCIeスイッチ210に対して駆動電圧として供給する。また、DDC220のオン/オフは、I2C−GPIO230から出力される制御信号(後述するパワーオン信号)によって制御される。
2C−GPIO230は、I2Cバス113に対するバスインタフェース回路である。I2C−GPIO230は、I2Cバス113におけるスレーブ回路として動作し、SVC300a,300bのうちの一方からI2Cバス113を通じて制御信号を受信し、受信した制御信号に対する応答信号を送信する。
また、I2C−GPIO230は、SVC300a,300bのうちの一方からI2Cバス113を通じて制御信号を受信すると、受信した制御信号を、FRT200の内部で使用される制御信号に変換して、PCIeスイッチ210やDDC220に送信する。例えば、I2C−GPIO230は、I2Cバス113を通じてDDC220をオフにするための指示を受けると、DDC220に送信するパワーオン信号をハイレベルからローレベルに変化させる。
また、I2C−GPIO230は、SVC300a,300bのいずれかからの指示に応じて、信号維持回路240からPCIeスイッチ210およびDDC220に送信されている信号を取り込むことが可能になっている。
また、I2C−GPIO230は、リセット制御回路250から出力されるリセット信号がローレベルからハイレベルに変化すると、リセットされる。後述するように、I2C−GPIO230と通信しているSVCが異常停止した場合や、I2C−GPIO230が異常停止した場合には、I2Cバス113を通じた通信が不可能になる。このような状態において、I2C−GPIO230がリセットされることで、I2Cバス113が復旧し、SVC300a,300bのいずれかとI2C−GPIO230とがI2Cバス113を通じて通信できるようになる。
信号維持回路240は、I2C−GPIO230からPCIeスイッチ210およびDDC220に送信される信号の伝送路上に配置されている。信号維持回路240は、I2C−GPIO230からPCIeスイッチ210およびDDC220に送信される信号の値を、リセット制御回路250から指示を受けた時点での出力値に維持する。
リセット制御回路250は、リセット信号線114を介してSVC300a,300bと接続されている。リセット制御回路250は、リセット信号線114を通じてI2C−GPIO230をリセットするための指示を受けたとき、信号維持回路240に出力信号を維持させるとともに、I2C−GPIO230をリセットさせるタイミングを遅延させる。このような処理により、リセット制御回路250は、I2C−GPIO230のリセット動作が完了するまでの間に、PCIeスイッチ210およびDDC220がI2C−GPIO230から受信している信号が途絶え、PCIeスイッチ210の動作が停止してしまう事態を回避する。
ここで、図5は、FRTの参考例を示す図である。この図5を用いて、I2Cバス113が使用不能になった場合の問題点について説明する。なお、図5では、図4に対応する構成要素には同じ符号を付して示している。
図5に示すFRT500は、図4に示したFRT200から信号維持回路240およびリセット制御回路250を取り除いた場合の構成例である。すなわち、I2C−GPIO230aからの出力信号は、信号維持回路240を経由することなく、PCIeスイッチ210およびDDC220に送信される。また、I2C−GPIO230aは、信号維持回路240からの出力信号を取り込む機能を持たない点で、図4のI2C−GPIO230と異なる。さらに、I2C−GPIO230aは、リセット信号線114に直接接続されており、リセット信号線114を通じた指示に応じてリセットされる。
ここで、図5では、I2C−GPIO230aがPCIeスイッチ210に出力する制御信号の例として、リセットを指示するためのリセット信号RSTを示す。例えば、リセット信号RSTがハイレベルからローレベルになったとき、PCIeスイッチ210がリセットされる。
また、図5では、I2C−GPIO230aがDDC220に出力する制御信号の例として、PCIeスイッチ210への駆動電圧の供給動作を制御するためのパワーオン信号Ponを示す。例えば、DDC220は、パワーオン信号Ponがハイレベルのとき、PCIeスイッチ210に駆動電圧を供給し、パワーオン信号Ponがローレベルのとき、PCIeスイッチ210への駆動電圧の供給を停止する。
以下、上記のようなFRT500に対してSVC300a,300bが接続されている場合の動作について考える。ここでは、運用系として動作するSVC300aが異常停止した場合を想定する。待機系として動作していたSVC300bは、SVC300aが異常停止したことを検知すると、運用系に遷移して、FRT500内のPCIeスイッチ210の制御および監視の処理を引き継ごうとする。しかし、SVC300aが停止すると、I2Cバス113が解放されなくなり、SVC300bは、I2Cバス113を通じて通信できない。
例えば、I2Cバス113におけるマスタ装置であるSVC300aが停止すると、I2Cバス113のクロック信号線に対するクロック信号の送出が停止する。スレーブ装置であるI2C−GPIO230aがデータを送信しているときに、クロック信号の送出が停止してしまうと、I2C−GPIO230aによるデータ送信動作も停止して、データ信号線の電位がハイレベルまたはローレベルのいずれかに固定されてしまう。この状態では、I2Cバス113は使用不可能になり、運用系に遷移したSVC300bはI2Cバス113を通じて通信できない。
そこで、SVC300bは、リセット信号線114を通じてI2C−GPIO230aのリセットを指示する。I2C−GPIO230aがリセットされることにより、I2Cバス113は復旧する。しかしながら、I2C−GPIO230aがリセットされると、I2C−GPIO230aからPCIeスイッチ210およびDDC220への出力信号が途絶えてしまう。このため、PCIeスイッチ210は、自分自身に異常が発生していなくても、それ以前の動作を継続できなくなってしまう。
例えば、I2C−GPIO230aのリセットによりリセット信号RSTがローレベルになってしまうことで、PCIeスイッチ210もリセットされてしまう。また、I2C−GPIO230aのリセットによりパワーオン信号Ponがローレベルになってしまうことで、PCIeスイッチ210への駆動電圧の供給が停止してしまう。いずれの場合でも、PCIeスイッチ210の動作は停止する。PCIeスイッチ210が停止すると、CM111aとCM111bとが通信できなくなり、キャッシュデータを二重化できないなど、ストレージシステム100における動作に影響が生じてしまう。
このような問題に対し、図4に示した本実施の形態のFRT200では、SVC300bからリセットが指示されたとき、リセット制御回路250は、I2C−GPIO230をリセットする前に、信号維持回路240に、PCIeスイッチ210およびDDC220への出力信号の値を維持させる。これにより、I2C−GPIO230のリセットによってPCIeスイッチ210およびDDC220への出力信号が途絶える事態が回避され、PCIeスイッチ210は、I2C−GPIO230のリセット処理中においても動作を継続できるようになる。
次に、図6は、FRTの内部において伝送される信号の例を示す図である。
以下の説明では、I2C−GPIO230が出力する制御信号として、リセット信号RSTおよびパワーオン信号Ponを例示する。リセット信号RSTは、信号維持回路240を介してPCIeスイッチ210に供給され、パワーオン信号Ponは、信号維持回路240を介してDDC220に供給される。PCIeスイッチ210は、リセット信号RSTがハイレベルからローレベルになったとき、リセットされる。また、DDC220は、パワーオン信号Ponがハイレベルのとき、PCIeスイッチ210に駆動電圧を供給し、パワーオン信号Ponがローレベルのとき、PCIeスイッチ210への駆動電圧の供給を停止する。
信号維持回路240は、リセット制御回路250からのイネーブル信号EN2がハイレベルのとき、I2C−GPIO230から出力される制御信号(ここではリセット信号RSTおよびパワーオン信号Pon)を、そのまま出力する。また、信号維持回路240は、イネーブル信号EN2がローレベルのとき、ローレベルになった時点でI2C−GPIO230から出力されていた制御信号の値を、イネーブル信号EN2がハイレベルになるまで維持する。
2C−GPIO230は、リセット制御回路250からのリセット信号I2C−RST2がローレベルからハイレベルになったとき、リセットされる。また、I2C−GPIO230は、I2Cバス113を通じてSVCから指示を受けることで、リセット制御回路250に出力するイネーブル信号EN1をローレベルまたはハイレベルにする。I2C−GPIO230が通常動作状態にあるとき、イネーブル信号EN1はハイレベルになる。さらに、I2C−GPIO230は、SVCからの指示に応じて、信号維持回路240が出力している制御信号(ここではリセット信号RSTおよびパワーオン信号Pon)を取り込み、取り込んだ値を対応する制御信号として出力する。
リセット制御回路250は、リセット信号線114を通じてリセット信号I2C−RST1を受信する。リセット制御回路250は、リセット信号I2C−RST1の入力値を、所定時間だけ遅延させて、リセット信号I2C−RST2としてI2C−GPIO230に出力する。
また、リセット制御回路250は、リセット信号I2C−RST1がローレベルからハイレベルになったとき、イネーブル信号EN2をハイレベルからローレベルに変化させて、信号維持回路240に出力値を維持させる。その後、リセット制御回路250は、リセットされたI2C−GPIO230からのイネーブル信号EN1がローレベルからハイレベルに変化したとき、イネーブル信号EN2をハイレベルに変化させる。
図7は、信号維持回路の内部構成例を示す図である。信号維持回路240は、例えば、出力値を維持する制御信号の数だけのゲーテッドラッチ回路240a,240b,・・・を備える。
ゲーテッドラッチ回路240aは、例えば、4つのNAND(否定論理積)ゲート341〜244を有する。NANDゲート241の一方の入力端子INには、I2C−GPIO230からの制御信号が入力され、他方の入力端子には、リセット制御回路250からのイネーブル信号EN2が入力される。NANDゲート242の一方の入力端子には、NANDゲート241からの出力信号が入力され、他方の入力端子には、リセット制御回路250からのイネーブル信号EN2が入力される。NANDゲート243の一方の入力端子には、NANDゲート241からの出力信号が入力され、他方の入力端子には、NANDゲート244からの出力信号が入力される。NANDゲート244の一方の入力端子には、NANDゲート243からの出力信号が入力され、他方の入力端子には、NANDゲート242からの出力信号が入力される。NANDゲート243の出力信号は、出力端子OUTから出力される。
このような構成のゲーテッドラッチ回路240aでは、イネーブル信号EN2がハイレベルのとき、出力端子OUTからの出力値は入力端子INに入力される制御信号の値と同じになる。また、イネーブル信号EN2がローレベルのとき、出力端子OUTからの出力値は、イネーブル信号EN2がローレベルに変化したときの入力端子INの値に維持される。
なお、信号維持回路240内のゲーテッドラッチ回路240a,240b,・・・のそれぞれに対しては、共通のイネーブル信号EN2が入力される。また、ゲーテッドラッチ回路の回路構成としては、他の構成を採用することもできる。
図8は、リセット制御回路の内部構成例を示す図である。リセット制御回路250は、例えば、AND(論理積)ゲート251およびフリップフロップ(FF)252を備える。
ANDゲート251の一方の入力端子には、I2C−GPIO230からのイネーブル信号EN1が入力され、他方の入力端子には、リセット信号I2C−RST1の反転信号が入力される。ANDゲート251からの出力信号は、イネーブル信号EN2として信号維持回路240に出力される。
このANDゲート251により、イネーブル信号EN2は次のように変化する。イネーブル信号EN1がハイレベルで、かつ、リセット信号I2C−RST1がローレベルのとき、イネーブル信号EN2はハイレベルになる。イネーブル信号EN1がローレベルのとき、または、リセット信号I2C−RST1がハイレベルのとき、またはこれらの両方の条件が満たされるとき、イネーブル信号EN2はローレベルになる。なお、イネーブル信号EN1、リセット信号I2C−RST1およびイネーブル信号EN2の組み合わせが上記のようになるのであれば、リセット制御回路250が備える回路の構成は、図8の構成に限定されない。
フリップフロップ252のデータ入力端子には、リセット信号線114を通じてリセット信号I2C−RST1が入力され、クロック入力端子には、クロック信号CLKが入力される。なお、クロック信号CLKは、例えば、CE110の内部において生成される。フリップフロップ252は、リセット信号I2C−RST1をクロック信号CLKの周期分だけ遅延させ、リセット信号I2C−RST2としてI2C−GPIO230に出力する。
なお、リセット制御回路250は、例えば、フリップフロップを複数段直列に接続することで、リセット信号I2C−RST1を所定時間だけ遅延させてもよい。また、リセット制御回路250は、リセット信号I2C−RST1を遅延させる回路として、フリップフロップ以外の他の種類の遅延回路を備えていてもよい。
次に、SVC300a,300bおよびFRT200の動作について、シーケンス図およびタイミングチャートを用いて説明する。
まず、図9は、CEの電源が投入されたときの処理例を示すシーケンス図である。
[ステップS11]CE110に設けられた電源スイッチ(図示せず)に対する操作に応じて、CE110に電源が投入される。これにより、SVC300a,300bおよびI2C−GPIO230が起動する。また、DDC220、信号維持回路240およびリセット制御回路250に、駆動電圧が供給される。以下、SVC300aが運用系として動作するものとする。
[ステップS12]SVC300aは、I2C−GPIO230のリセットを指示するために、リセット信号I2C−RST1を例えば一定時間ハイ(H)レベルにした後、ロー(L)レベルにする。
[ステップS13]リセット制御回路250は、リセット信号I2C−RST1がハイレベルに変化してから一定時間後に、リセット信号I2C−RST2をハイレベルに変化させる。これにより、I2C−GPIO230がリセットされる。また、リセット制御回路250は、リセット信号I2C−RST1がローレベルに変化してから一定時間後に、リセット信号I2C−RST2をローレベルに変化させる。
なお、ステップS12,S13の処理の実行は、必須ではない。次のステップS14の開始時点で、I2C−GPIO230が正常に起動しており、かつ、リセット信号I2C−RST1,I2C−RST2がともにローレベルとなっていればよい。
[ステップS14]SVC300aは、I2Cバス113を通じて、イネーブル信号EN1をハイレベルにするようにI2C−GPIO230に指示する。
[ステップS15]I2C−GPIO230は、SVC300aからの指示に応じて、イネーブル信号EN1をハイレベルにする。
[ステップS16]リセット制御回路250は、イネーブル信号EN1がハイレベルに変化したことに応じて、イネーブル信号EN2をハイレベルに変化させる。
[ステップS17]信号維持回路240は、イネーブル信号EN2がハイレベルに変化したことに応じて、I2C−GPIO230からの制御信号(リセット信号RSTおよびパワーオン信号Pon)をそのまま出力する状態になる。これにより、SVC300aがPCIeスイッチ210およびDDC220の動作を制御できる状態になる。
[ステップS18]SVC300aは、I2Cバス113を通じて、PCIeスイッチ210の電源オンおよびリセットを、I2C−GPIO230に指示する。
[ステップS19]I2C−GPIO230は、SVC300aからの指示に応じて、パワーオン信号Ponをハイレベルに変化させる。これにより、DDC220は、PCIeスイッチ210への駆動電圧の供給を開始する。また、I2C−GPIO230は、リセット信号RSTを一定時間ローレベルにした後、ハイレベルにする。これにより、PCIeスイッチ210がリセットされる。
[ステップS20]SVC300aがI2Cバス113を通じて制御信号を送信することによるPCIeスイッチ210およびDDC220の制御および監視処理が開始される。例えば、SVC300aは、制御・監視対象回路であるPCIeスイッチ210およびDDC220の状態を示す状態情報を、PCIeスイッチ210から取得する。状態情報としては、例えば、温度、駆動電圧などがある。また、SVC300aは、取得した状態情報に基づき、制御・監視対象回路で異常が発生したと判定すると、異常が発生した回路をリセットする、あるいは異常が発生した回路の動作を停止させるなどの制御を行う。
図10は、CEの電源が投入されたときの信号の値の遷移例を示すタイミングチャートである。
図9のステップS12の処理により、リセット制御回路250に入力されるリセット信号I2C−RST1は、タイミングT11〜T13の期間にハイレベルになる。リセット制御回路250から出力されるリセット信号I2C−RST2は、リセット信号I2C−RST1がハイレベルに変化したタイミングT11から一定時間後のタイミングT12において、ハイレベルに変化する。また、リセット信号I2C−RST2は、リセット信号I2C−RST1がローレベルに変化したタイミングT13から一定時間後のタイミングT14において、ローレベルに変化する。
2C−GPIO230は、リセット信号I2C−RST2がハイレベルに変化したタイミングT12においてリセットされる。I2C−GPIO230は、例えば、リセット信号I2C−RST2がハイレベルになっている間、制御信号の出力値を所定の初期値とする。
2C−GPIO230がリセットされた後のタイミングT15において、I2C−GPIO230は、SVC300aからの指示に応じて、イネーブル信号EN1をハイレベルに変化させる。リセット制御回路250は、リセット信号I2C−RST1がローレベルで、かつ、イネーブル信号EN1がハイレベルになったことに応じて、イネーブル信号EN2をハイレベルに変化させる。これにより、信号維持回路240は、I2C−GPIO230からの制御信号をそのまま出力する状態になる。なお、信号維持回路240は、例えば、電源投入からタイミングT15までの期間では、制御信号の出力値を所定の初期値にする。
上記のタイミングT15での処理は、図9のステップS13〜S17に対応する。この後、SVC300aからの指示に応じて、PCIeスイッチ210の動作が開始され、SVC300aは、PCIeスイッチ210の動作を監視する。
次に、図11は、運用系のSVCが異常停止したときの処理例を示すシーケンス図である。
[ステップS31]待機系として動作しているSVC300bは、SVC300aが異常停止したことを検知し、運用系としての動作を開始する。この状態では、I2Cバス113が使用不可能になっている。
[ステップS32]SVC300bは、I2C−GPIO230のリセットを指示するために、リセット信号I2C−RST1をハイレベルに変化させる。
[ステップS33]リセット制御回路250は、リセット信号I2C−RST1がハイレベルに変化したことに応じて、イネーブル信号EN2をローレベルに変化させる。
[ステップS34]信号維持回路240は、出力する制御信号(リセット信号RSTおよびパワーオン信号Pon)の値を、イネーブル信号EN2がローレベルに変化した時点でI2C−GPIO230から入力されていた値に維持する。本実施の形態では、信号維持回路240は、リセット信号RSTおよびパワーオン信号Ponをともにハイレベルに維持する。
[ステップS35]リセット制御回路250は、ステップS32でリセット信号I2C−RST1がハイレベルに変化してから一定時間後に、リセット信号I2C−RST2をハイレベルに変化させる。これにより、I2C−GPIO230がリセットされ、I2Cバス113が復旧する。
[ステップS36]リセットされたI2C−GPIO230は、イネーブル信号EN1の値を初期値であるローレベルにする。
[ステップS37]SVC300bは、リセット信号I2C−RST1をローレベルに変化させる。
[ステップS38]リセット制御回路250は、リセット信号I2C−RST1がローレベルに変化してから一定時間後に、リセット信号I2C−RST2をローレベルに変化させる。
[ステップS39]SVC300bは、I2Cバス113を通じて、I2C−GPIO230に対して、信号維持回路240からフィードバックされている制御信号の値を取り込んで通知するように指示する。
[ステップS40]I2C−GPIO230は、SVC300bからの指示に応じて、信号維持回路240からフィードバックされている制御信号の値を取り込む。このとき取り込まれるフィードバック信号の値は、ステップS34から信号維持回路240が出力を維持している値であり、SVC300aが停止する直前の時点でI2C−GPIO230が出力していた値である。本実施の形態では、I2C−GPIO230は、リセット信号RSTの値としてハイレベルを示す「1」を、パワーオン信号Ponの値としてハイレベルを示す「1」をそれぞれ取り込む。I2C−GPIO230は、取り込んだフィードバック信号の値を、I2Cバス113を通じてSVC300bに通知する。
なお、信号維持回路240が出力している制御信号の値をI2C−GPIO230にフィードバックする構成としたことで、I2C−GPIO230は、リセットされる前に出力していた制御信号の値を簡単かつ確実に認識することができる。
[ステップS41]SVC300bは、I2Cバス113を通じて、通知されたフィードバック信号の値をI2C−GPIO230に送信し、送信した値を対応する制御信号の値として再度設定するように、I2C−GPIO230に指示する。
[ステップS42]I2C−GPIO230は、SVC300bからの指示に応じて、リセット信号RSTおよびパワーオン信号Ponの出力値をともにハイレベルに設定する。
[ステップS43]SVC300bは、I2Cバス113を通じて、イネーブル信号EN1をハイレベルにするようにI2C−GPIO230に指示する。このステップS43の処理の目的は、I2C−GPIO230から信号維持回路240を介してPCIeスイッチ210およびDDC220に伝達される制御信号の状態を、SVC300aが停止する直前の状態に戻すことである。
[ステップS44]I2C−GPIO230は、SVC300bからの指示に応じて、イネーブル信号EN1をハイレベルに変化させる。
[ステップS45]リセット制御回路250は、イネーブル信号EN1がハイレベルに変化したことに応じて、イネーブル信号EN2をハイレベルに変化させる。
[ステップS46]信号維持回路240は、イネーブル信号EN2がハイレベルに変化したことに応じて、出力信号の維持動作を終了し、I2C−GPIO230から出力されている制御信号の値をそのまま出力する。このとき、信号維持回路240から出力されるリセット信号RSTおよびパワーオン信号Ponの値は、イネーブル信号EN2がハイレベルに変化する前と同じハイレベルになる。
2C−GPIO230から出力されるイネーブル信号EN1がハイレベルになることで、信号維持回路240に出力信号の維持動作を終了させるタイミングをリセット制御回路250が認識する構成としたことで、リセット制御回路250をI2Cバス113に接続しなくてもリセット制御回路250が上記タイミングを認識できるようになる。従って、リセット制御回路250の構成を簡易化することができる。
なお、I2C−GPIO230は、例えば、ステップS42でリセット信号RSTおよびパワーオン信号Ponの出力値をともにハイレベルにした後、SVC300bからの指示を受けずに、自立的にイネーブル信号EN1をハイレベルに変化させてもよい。
以上のステップS46までの処理によれば、SVC300bが停止してからステップS46までの間、信号維持回路240から出力されるリセット信号RSTおよびパワーオン信号Ponはともにハイレベルに維持される。このため、SVC300bが停止したことや、I2Cバス113を解放するためのI2C−GPIO230のリセット動作が、PCIeスイッチ210の信号中継動作に何ら影響を与えない。従って、PCIeスイッチ210は信号中継動作を継続でき、CM111a,111bによるI/Oアクセス制御も正常に実行され続ける。
[ステップS47]SVC300bは、I2Cバス113を通じて制御信号を送信することによるPCIeスイッチ210およびDDC220の制御および監視処理を開始する。すなわち、SVC300bは、SVC300aが実行していた制御および監視処理を引き継ぐ。
なお、以上の図11の処理では、I2C−GPIO230は、SVC300bからの指示に応じて、信号維持回路240からのフィードバック信号の値を取り込んでSVC300bに通知し(ステップS39,S40)、その後、SVC300bから通知された値を制御信号の出力値として設定した(ステップS41,S42)。しかしながら、例えば、I2C−GPIO230は、フィードバック信号を取り込んだ後、SVC300bからの指示を待たずに、取り込んだ信号の値を制御信号の出力値に設定するようにしてもよい。
また、他の方法として、信号維持回路240からのフィードバック信号の値を取り込む機能をI2C−GPIO230が持たないようにすることもできる。この場合例えば、待機系として動作するSVC300bは、運用系として動作するSVC300aがI2C−GPIO230に送信する制御信号を監視し、これらの制御信号の履歴をRAMに記録する。SVC300bは、SVC300aが停止したことを検知すると、RAMに記録された履歴を解析し、I2C−GPIO230から出力されるリセット信号RSTおよびパワーオン信号Ponの最新の値を判定する。SVC300bは、リセット信号RSTおよびパワーオン信号Ponを、判定した最新の値にするような制御信号を、I2Cバス113を通じてI2C−GPIO230に送信する。これにより、ステップS46で信号維持回路240での出力信号の維持動作が解除される直前において、信号維持回路240が出力するリセット信号RSTおよびパワーオン信号Ponの各値と、I2C−GPIO230が出力するリセット信号RSTおよびパワーオン信号Ponの各値とを一致させることができる。
図12は、運用系のSVCが異常停止したときの信号の値の遷移例を示すタイミングチャートである。
図11のステップS32の処理により、リセット制御回路250に入力されるリセット信号I2C−RST1は、タイミングT21においてハイレベルになる。リセット制御回路250は、リセット信号I2C−RST1がハイレベルに変化したことに応じて、イネーブル信号EN2をローレベルに変化させる。信号維持回路240は、リセット信号RSTおよびパワーオン信号Ponの各値を、タイミングT21の時点でI2C−GPIO230から入力されていた値(ハイレベル)に維持する。
また、リセット制御回路250は、リセット信号I2C−RST1がハイレベルに変化してから所定時間後のタイミングT22において、リセット信号I2C−RST2をハイレベルに変化させる。これにより、I2C−GPIO230がリセットされ、I2Cバスが復旧する。また、リセットされたI2C−GPIO230は、イネーブル信号EN1をローレベルにするとともに、出力する制御信号の値を所定の初期値にする。
また、図11のステップS37の処理により、リセット制御回路250に入力されるリセット信号I2C−RST1は、タイミングT23においてローレベルになる。リセット制御回路250は、リセット信号I2C−RST1がローレベルに変化してから所定時間後のタイミングT24において、リセット信号I2C−RST2をローレベルに変化させる。I2C−GPIO230は、制御信号の出力値を初期値にしていた状態から、SVC300bからの指示に応じた制御信号を出力する状態に遷移する。
ここで、図11のステップS39〜S41の処理により、I2C−GPIO230は、タイミングT25において、出力するリセット信号RSTおよびパワーオン信号Ponの各値を、リセットされる前に出力していた値であるハイレベルに変化させる。その後、タイミングT26において、I2C−GPIO230は、SVC300bからの指示に応じてイネーブル信号EN1をハイレベルに変化させる。リセット信号I2C−RST1がローレベル、かつ、イネーブル信号EN1がハイレベルになることで、リセット制御回路250は、イネーブル信号EN2をハイレベルに変化させる。これにより、信号維持回路240は、出力信号の維持動作を終了し、I2C−GPIO230から出力されている制御信号の値をそのまま出力する。このとき、信号維持回路240から出力されるリセット信号RSTおよびパワーオン信号Ponの値は、イネーブル信号EN2がハイレベルに変化する前と同じハイレベルになる。
その後、タイミングT27において、SVC300bは、I2Cバス113を通じて制御信号を送信することによるPCIeスイッチ210の監視処理を開始する。I2C−GPIO230は、SVC300bからの指示に応じた制御信号を出力し、信号維持回路240は、I2C−GPIO230から出力された制御信号をそのまま出力する。
以上説明した第2の実施の形態では、SVC300aが異常停止してI2Cバス113が使用不可能になったとき、SVC300bからのリセット指示に応じて、PCIeスイッチ210およびDDC220に出力されている制御信号の値が信号維持回路240によって維持される。そして、信号維持回路240によって制御信号の出力値が維持された状態のまま、I2C−GPIO230がリセットされて、I2Cバス113が復旧する。従って、I2Cバス113を復旧させるための処理が行われている間、PCIeスイッチ210はCM111aとCM111bとの間の信号中継処理を正常に継続できる。
また、I2Cバス113が復旧した後、I2C−GPIO230は、リセットされる前と同じ値の制御信号を出力するように制御される。このため、PCIeスイッチ210の信号中継処理に何ら影響を与えずに、I2C−GPIO230および信号維持回路240の動作状態を、SVC300aが停止する前の状態に戻すことができる。そして、運用系に遷移したSVC300bは、PCIeスイッチ210の制御および監視処理を引き継ぐことができる。
以上の各実施の形態に関し、さらに以下の付記を開示する。
(付記1) 電子回路と、
前記電子回路を制御するための制御信号をバスを通じて受信し、受信した制御信号に応じた信号を前記電子回路に出力するバスインタフェースと、
前記バスインタフェースから前記電子回路へ出力される信号の値を維持する信号維持回路と、
前記信号維持回路に前記電子回路への出力信号の値を維持させた後、前記バスインタフェースをリセットするリセット制御回路と、
前記バスを通じて制御信号を出力することで前記電子回路を制御する制御装置と、
を有することを特徴とする制御システム。
(付記2) 前記制御装置は、
第1の制御装置と、
前記第1の制御装置の動作が停止したことを検知すると、リセット信号線を通じてリセット指示を出力した後、前記第1の制御装置に代わって前記電子回路を制御する第2の制御装置と、
を有し、
前記リセット制御回路は、前記リセット信号線を通じて前記リセット指示を受けると、前記信号維持回路に前記電子回路への出力信号の値を維持させた後、前記バスインタフェースをリセットする、
ことを特徴とする付記1記載の制御システム。
(付記3) 前記バスインタフェースは、前記リセット制御回路によってリセットされた後、前記バスを通じた前記第2の制御装置からの指示に応じて、前記信号維持回路から前記電子回路へ出力されている信号の値を前記信号維持回路に再度出力することを特徴とする付記2記載の制御システム。
(付記4) 前記バスインタフェースは、前記信号維持回路から前記電子回路へ出力されている信号の値を取り込んで前記信号維持回路に出力することで、前記信号維持回路から前記電子回路へ出力されている信号の値を前記信号維持回路に再度出力することを特徴とする付記3記載の制御システム。
(付記5) 前記バスインタフェースが、前記信号維持回路から前記電子回路へ出力されている信号の値を前記信号維持回路に再度出力した後、前記リセット制御回路は、前記信号維持回路に前記電子回路への出力信号の値を維持する状態を解除させることを特徴とする付記3または4記載の制御システム。
(付記6) 前記第2の制御装置は、前記信号維持回路から前記電子回路へ出力されている信号の値を前記信号維持回路に再度出力するように、前記バスを通じて前記バスインタフェースに指示した後、前記信号維持回路が出力信号の値を維持する状態を解除するように指示する解除指示を、前記バスを通じて前記バスインタフェースに送信し、
前記リセット制御回路は、前記バスインタフェースが前記解除指示を受信したことに応じて、前記信号維持回路に前記電子回路への出力信号の値を維持する状態を解除させる、
ことを特徴とする付記5記載の制御システム。
(付記7) 前記信号維持回路は、前記バスインタフェースから前記電子回路へ出力される信号として、前記電子回路にリセットを指示するための信号の値を維持することを特徴とする付記1〜6のいずれか1つに記載の制御システム。
(付記8) 前記信号維持回路は、前記バスインタフェースから前記電子回路へ出力される信号として、前記電子回路に対する電源供給のオン/オフを指示するための信号の値を維持することを特徴とする付記1〜7のいずれか1つに記載の制御システム。
(付記9) 複数の情報処理装置間で送受信される信号を中継する中継回路と、
前記中継回路を制御するための制御信号をバスを通じて受信し、受信した制御信号に応じた信号を前記中継回路に出力するバスインタフェースと、
前記バスインタフェースから前記中継回路へ出力される信号の値を維持する信号維持回路と、
前記信号維持回路に前記中継回路への出力信号の値を維持させた後、前記バスインタフェースをリセットするリセット制御回路と、
を有することを特徴とする中継装置。
(付記10) 前記リセット制御回路は、前記バスに接続された制御装置からリセット信号線を通じてリセット指示を受けると、前記信号維持回路に前記中継回路への出力信号の値を維持させた後、前記バスインタフェースをリセットすることを特徴とする付記9記載の中継装置。
(付記11) 前記バスインタフェースは、前記リセット制御回路によってリセットされた後、前記バスを通じた前記制御装置からの指示に応じて、前記信号維持回路から前記中継回路へ出力されている信号の値を前記信号維持回路に再度出力することを特徴とする付記10記載の中継装置。
(付記12) 前記バスインタフェースは、前記信号維持回路から前記中継回路へ出力されている信号の値を取り込んで前記信号維持回路に出力することで、前記信号維持回路から前記中継回路へ出力されている信号の値を前記信号維持回路に再度出力することを特徴とする付記11記載の中継装置。
(付記13) 前記バスインタフェースが、前記信号維持回路から前記中継回路へ出力されている信号の値を前記信号維持回路に再度出力した後、前記リセット制御回路は、前記信号維持回路に前記中継回路への出力信号の値を維持する状態を解除させることを特徴とする付記11または12記載の中継装置。
(付記14) 前記バスインタフェースは、前記信号維持回路から前記中継回路へ出力されている信号の値を前記信号維持回路に再度出力するように、前記制御装置から前記バスを通じて指示された後、前記信号維持回路が出力信号の値を維持する状態を解除するように指示する解除指示を、前記バスを通じて前記制御装置から受信し、
前記リセット制御回路は、前記バスインタフェースが前記解除指示を受信したことに応じて、前記信号維持回路に前記中継回路への出力信号の値を維持する状態を解除させる、
ことを特徴とする付記13記載の中継装置。
(付記15) 前記信号維持回路は、前記バスインタフェースから前記中継回路へ出力される信号として、前記中継回路にリセットを指示するための信号の値を維持することを特徴とする付記10〜14のいずれか1つに記載の中継装置。
(付記16) 前記信号維持回路は、前記バスインタフェースから前記中継回路へ出力される信号として、前記中継回路に対する電源供給のオン/オフを指示するための信号の値を維持することを特徴とする付記10〜15のいずれか1つに記載の中継装置。
1 制御システム
11 電子回路
12 バスインタフェース
13 信号維持回路
14 リセット制御回路
21,22 制御装置
31 バス
32 リセット信号線

Claims (9)

  1. 電子回路と、
    前記電子回路を制御するための制御信号をバスを通じて受信し、受信した制御信号に応じた信号を前記電子回路に出力するバスインタフェースと、
    前記バスインタフェースから前記電子回路へ出力される信号の値を維持する信号維持回路と、
    前記信号維持回路に前記電子回路への出力信号の値を維持させた後、前記バスインタフェースをリセットするリセット制御回路と、
    前記バスを通じて制御信号を出力することで前記電子回路を制御する制御装置と、
    を有することを特徴とする制御システム。
  2. 前記制御装置は、
    第1の制御装置と、
    前記第1の制御装置の動作が停止したことを検知すると、リセット信号線を通じてリセット指示を出力した後、前記第1の制御装置に代わって前記電子回路を制御する第2の制御装置と、
    を有し、
    前記リセット制御回路は、前記リセット信号線を通じて前記リセット指示を受けると、前記信号維持回路に前記電子回路への出力信号の値を維持させた後、前記バスインタフェースをリセットする、
    ことを特徴とする請求項1記載の制御システム。
  3. 前記バスインタフェースは、前記リセット制御回路によってリセットされた後、前記バスを通じた前記第2の制御装置からの指示に応じて、前記信号維持回路から前記電子回路へ出力されている信号の値を前記信号維持回路に再度出力することを特徴とする請求項2記載の制御システム。
  4. 前記バスインタフェースは、前記信号維持回路から前記電子回路へ出力されている信号の値を取り込んで前記信号維持回路に出力することで、前記信号維持回路から前記電子回路へ出力されている信号の値を前記信号維持回路に再度出力することを特徴とする請求項3記載の制御システム。
  5. 前記バスインタフェースが、前記信号維持回路から前記電子回路へ出力されている信号の値を前記信号維持回路に再度出力した後、前記リセット制御回路は、前記信号維持回路に前記電子回路への出力信号の値を維持する状態を解除させることを特徴とする請求項3または4記載の制御システム。
  6. 前記第2の制御装置は、前記信号維持回路から前記電子回路へ出力されている信号の値を前記信号維持回路に再度出力するように、前記バスを通じて前記バスインタフェースに指示した後、前記信号維持回路が出力信号の値を維持する状態を解除するように指示する解除指示を、前記バスを通じて前記バスインタフェースに送信し、
    前記リセット制御回路は、前記バスインタフェースが前記解除指示を受信したことに応じて、前記信号維持回路に前記電子回路への出力信号の値を維持する状態を解除させる、
    ことを特徴とする請求項5記載の制御システム。
  7. 前記信号維持回路は、前記バスインタフェースから前記電子回路へ出力される信号として、前記電子回路にリセットを指示するための信号の値を維持することを特徴とする請求項1〜6のいずれか1項に記載の制御システム。
  8. 前記信号維持回路は、前記バスインタフェースから前記電子回路へ出力される信号として、前記電子回路に対する電源供給のオン/オフを指示するための信号の値を維持することを特徴とする請求項1〜7のいずれか1項に記載の制御システム。
  9. 複数の情報処理装置間で送受信される信号を中継する中継回路と、
    前記中継回路を制御するための制御信号をバスを通じて受信し、受信した制御信号に応じた信号を前記中継回路に出力するバスインタフェースと、
    前記バスインタフェースから前記中継回路へ出力される信号の値を維持する信号維持回路と、
    前記信号維持回路に前記中継回路への出力信号の値を維持させた後、前記バスインタフェースをリセットするリセット制御回路と、
    を有することを特徴とする中継装置。
JP2011278822A 2011-12-20 2011-12-20 制御システムおよび中継装置 Active JP5794137B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2011278822A JP5794137B2 (ja) 2011-12-20 2011-12-20 制御システムおよび中継装置
US13/665,965 US9111052B2 (en) 2011-12-20 2012-11-01 Control system for controlling electronic circuit, and signal relaying apparatus
EP20120192374 EP2608049B1 (en) 2011-12-20 2012-11-13 Control system and relay apparatus
CN2012104834183A CN103176937A (zh) 2011-12-20 2012-11-23 控制***和中继设备
KR20120134524A KR101351194B1 (ko) 2011-12-20 2012-11-26 제어 시스템 및 중계 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011278822A JP5794137B2 (ja) 2011-12-20 2011-12-20 制御システムおよび中継装置

Publications (2)

Publication Number Publication Date
JP2013130961A JP2013130961A (ja) 2013-07-04
JP5794137B2 true JP5794137B2 (ja) 2015-10-14

Family

ID=47504596

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011278822A Active JP5794137B2 (ja) 2011-12-20 2011-12-20 制御システムおよび中継装置

Country Status (5)

Country Link
US (1) US9111052B2 (ja)
EP (1) EP2608049B1 (ja)
JP (1) JP5794137B2 (ja)
KR (1) KR101351194B1 (ja)
CN (1) CN103176937A (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5794137B2 (ja) 2011-12-20 2015-10-14 富士通株式会社 制御システムおよび中継装置
KR102002888B1 (ko) * 2013-11-05 2019-07-23 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. 전자 장치 및 전자 장치의 신호선 연결 상태 확인 방법
CN103645975B (zh) * 2013-11-28 2016-06-15 华为技术有限公司 一种异常恢复的方法及串行总线传输装置
JP2015153075A (ja) * 2014-02-13 2015-08-24 富士通株式会社 伝送装置および制御ユニット
JP6264155B2 (ja) * 2014-03-31 2018-01-24 富士通株式会社 情報処理装置、情報処理装置の制御方法及び情報処理装置の制御プログラム
CN107957885B (zh) * 2017-12-01 2021-02-26 麒麟软件有限公司 一种基于飞腾平台的pcie链路设备待机与恢复方法
CN108040214B (zh) * 2017-12-08 2023-09-22 延锋伟世通电子科技(南京)有限公司 一种通过FPD-Link III中的SPI通道实现车载娱乐***与仪表双屏互联的架构
CN111208892B (zh) * 2020-01-10 2022-04-01 江苏钜芯集成电路技术股份有限公司 一种用串行i2c信号对芯片***实现复位的方法
US11513981B2 (en) * 2020-04-29 2022-11-29 Dell Products L.P. PCIe link management without sideband signals

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100259841B1 (ko) 1997-07-31 2000-06-15 윤종용 씽글 칩을 이용한 피씨아이 버스의 핫 플러그 제어기
JP2002063080A (ja) 2000-08-15 2002-02-28 Sony Corp インターフェース装置
JP2002202947A (ja) 2000-12-28 2002-07-19 Ricoh Co Ltd 画像処理装置、その制御方法およびプログラムを記憶した記憶媒体
US6725320B1 (en) 2001-02-08 2004-04-20 International Business Machines Corporation I2C bus switching devices interspersed between I2C devices
US7089338B1 (en) * 2002-07-17 2006-08-08 Cypress Semiconductor Corp. Method and apparatus for interrupt signaling in a communication network
US7016993B2 (en) * 2002-12-17 2006-03-21 Inventec Corporation I2C MUX with anti-lock device
US7355438B2 (en) * 2003-09-26 2008-04-08 Moore Industries-International, Inc. Electronic circuit
US7478286B2 (en) * 2005-04-08 2009-01-13 Linear Technology Corporation Circuit and method of detecting and resolving stuck I2C buses
JP2007164765A (ja) * 2005-11-15 2007-06-28 Matsushita Electric Ind Co Ltd Iicバス通信システム、スレーブ装置およびiicバス通信制御方法
US20070240019A1 (en) * 2005-12-29 2007-10-11 International Business Machines Corporation Systems and methods for correcting errors in I2C bus communications
US7536492B2 (en) 2007-01-23 2009-05-19 International Business Machines Corporation Apparatus, system, and method for automatically resetting an inter-integrated circuit bus
JP2008250632A (ja) * 2007-03-30 2008-10-16 Matsushita Electric Ind Co Ltd データ処理システム
JP4988671B2 (ja) 2008-08-29 2012-08-01 インターナショナル・ビジネス・マシーンズ・コーポレーション シリアルバスシステム及びハングアップスレーブリセット方法
JP5794137B2 (ja) 2011-12-20 2015-10-14 富士通株式会社 制御システムおよび中継装置

Also Published As

Publication number Publication date
JP2013130961A (ja) 2013-07-04
KR101351194B1 (ko) 2014-01-14
EP2608049B1 (en) 2015-02-25
EP2608049A1 (en) 2013-06-26
CN103176937A (zh) 2013-06-26
US20130159585A1 (en) 2013-06-20
KR20130071357A (ko) 2013-06-28
US9111052B2 (en) 2015-08-18

Similar Documents

Publication Publication Date Title
JP5794137B2 (ja) 制御システムおよび中継装置
JP6130520B2 (ja) 多重系システムおよび多重系システム管理方法
CN104506362A (zh) 一种cc-numa多节点服务器上***状态切换和监控的方法
US7725767B2 (en) Apparatus including an operating manager and a switch for disconnecting the operating manager from a bus
US9201822B2 (en) Host controller apparatus, information processing apparatus, and event information output method
KR100827287B1 (ko) 반도체 보조 기억 장치 및 이를 이용한 데이터 저장 방법
US10852792B2 (en) System and method for recovery of sideband interfaces for controllers
JP2008203957A (ja) Nasシステム
JP2015230720A (ja) 計算機システム
CN104349001A (zh) 信息处理装置及其控制方法
JP5508354B2 (ja) モジュール、周波数制御方法、及び周波数制御プログラム
US9207741B2 (en) Storage apparatus, controller module, and storage apparatus control method
JP5909948B2 (ja) 情報処理装置および情報処理装置の試験方法
JP5332257B2 (ja) サーバシステム、サーバ管理方法、およびそのプログラム
US20200294592A1 (en) Device and method for backup signal management
US20160165085A1 (en) Information processing apparatus and image forming apparatus
JP6352627B2 (ja) コンピュータシステム及びその動作方法
JP2016170649A (ja) 情報処理装置、情報処理装置の制御方法
US8499130B2 (en) Information processing apparatus, information processing method, and recording medium that records history information control program
US10324777B2 (en) Register-based communications interface
JP5332518B2 (ja) ビルドアップ方式電子計算機、切替制御方法及びプログラム
EP3401756A1 (en) Method and associated apparatus for performing destination power management with aid of source data statistics in storage system
US20200201409A1 (en) Information processing apparatus and method of controlling information processing apparatus
US10921875B2 (en) Computer system, operational method for a microcontroller, and computer program product
JP2014002639A (ja) ストレージシステム及びストレージシステムの消費電力制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140904

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150708

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150727

R150 Certificate of patent or registration of utility model

Ref document number: 5794137

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150