(57)【特許請求の範囲】
【請求項１】
演算機能、信号処理機能等の各種処理機能のいずれかを有する複数の電子デバイスを備えるカードを起動する起動装置において、
前記カードを起動に必要な基本データを不揮発性にて格納する不揮発性記憶手段と、
起動処理を管理して制御する起動管理手段と、
前記複数の電子デバイスを前記カードの起動処理において必要となる基本データの送受信で利用されるバスの種別毎に少なくともグループ化し、当該グループ毎に前記起動管理手段と当該バスで接続され、前記基本データを一時データとして揮発性にて格納する揮発性記憶手段とを備え、
前記起動管理手段が、当該カードの起動時に前記不揮発性記憶手段から前記各電子デバイスに必要な基本データを送信し、前記揮発性記憶手段に同一の基本データを送信し、当該カードの再起動時に当該揮発性記憶手段に格納された一時データを用いて再起動の処理を行うことを特徴とする起動装置。
【請求項２】
請求項１に記載の起動装置において、
前記電子デバイスが正常に動作しない場合に、当該電子デバイスに対してリトライの指示を要求し、前記揮発性記憶手段に格納された一時データを前記正常に動作しない電子デバイスに送信して、当該電子デバイスのリトライを実行させるリトライ手段を備えることを特徴とする起動装置。
【請求項３】
請求項１または２に記載の起動装置において、
当該カードの起動時に前記不揮発性記憶手段から前記各電子デバイスに送信された基本データと前記揮発性記憶手段が格納する一時データとの一致を確認する整合性確認手段を備え、
前記整合性確認手段の整合性確認結果に基づいて、前記起動管理手段が当該カードの再起動時に、当該揮発性記憶手段に格納された一時データを用いて各電子デバイスの再起動処理を実行させることを特徴とする起動装置。
【請求項４】
請求項１ないし３のいずれかに記載の起動装置において、
前記バスにおけるデータの通信を遮断するバス切替デバイスと、
当該カードの起動時に前記不揮発性記憶手段から前記各電子デバイスに送信された基本データと前記揮発性記憶手段が格納する一時データのいずれかを前記バス切替デバイスを制御することにより選択し、当該選択されたデータを用いて再起動の処理を行うバス切替デバイス制御手段とを備えることを特徴とする起動装置。
【請求項５】
請求項２ないし４のいずれかに記載の起動装置において、
前記電子デバイスが正常に動作しない場合に予め設定されたリトライ回数に基づいて当該電子デバイスを動作させる処理をスキップするかどうかを判定するスキップ判定手段と、
前記スキップ判定手段が判定した結果に基づいて当該カードの縮退情報を、前記演算機能を有する電子デバイスへ通知する縮退情報通知手段とを備えることを特徴とする起動装置。
【請求項６】
請求項１ないし５のいずれかに記載の起動装置において、
当該カードの起動時に前記揮発性記憶手段が格納する一時データを用いて起動の処理を行った場合に、正常に動作しない電子デバイスが存在すると、前記起動管理手段が、前記不揮発性記憶媒体から当該電子デバイスに対して再度カードの起動に必要な基本データを送信するように信号を出力することを特徴とする起動装置。
【請求項７】
演算機能、信号処理機能等の各種処理機能のいずれかを有する複数の電子デバイスを備えるカードを起動する起動方法において、
コンピュータが、
前記カードを起動に必要な基本データを不揮発性にて格納する不揮発性記憶手段から読み出す基本データ読出ステップと、
前記基本データ読出ステップにて読み出された基本データを、前記各電子デバイスに送信すると共に、当該基本データの送受信で利用されるバスの種別毎に少なくともグループ化し、当該グループ毎に基本データを一時データとして揮発性にて格納する揮発性記憶手段に送信する送信ステップとを含む機能として動作し、
当該カードの再起動時に前記送信ステップにて揮発性記憶手段に送信された一時データを用いて当該カードの再起動処理を行うことを特徴とする起動方法。
【請求項８】
演算機能、信号処理機能等の各種処理機能のいずれかを有する複数の電子デバイスを備えるカードを起動するようにコンピュータを機能させる起動プログラムにおいて、
前記カードを起動に必要な基本データを不揮発性にて格納する不揮発性記憶手段と、
起動処理を管理して制御する起動管理手段と、
前記複数の電子デバイスを前記カードの起動処理において必要となる基本データの送受信で利用されるバスの種別毎に少なくともグループ化し、当該グループ毎に前記起動管理手段と当該バスで接続され、前記基本データを一時データとして揮発性にて格納する揮発性記憶手段としてコンピュータを機能させ、
前記起動管理手段が、当該カードの起動時に前記不揮発性記憶手段から前記各電子デバイスに必要な基本データを送信し、前記揮発性記憶手段に同一の基本データを送信し、当該カードの再起動時に当該揮発性記憶手段に格納された一時データを用いて当該カードの再起動処理を行うことを特徴とする起動プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
ＤＳＰ、ＣＰＵ、ＦＰＧＡ、及び、ＬＳＩ等のデバイスが搭載され、ブートプログラムのロード、コンフィギュレーション、初期設定を必要とするカードの起動方法に関する。
【背景技術】
【０００２】
演算機能を有するＤＳＰ（digital  signal  processor）、及び、ＣＰＵ（Central  Processing  Unit）、並びに、信号処理機能を有するＦＰＧＡ（Field  Programmable  Gate  Array）、及び、ＬＳＩ（Large  Scale  Integration）等のデバイスを搭載したカードにおいて、電源を投入する際には、ブートプログラムの転送やコンフィギュレーションデータの書込みや初期設定用のデータの転送等を行う必要がある。ブートプログラムの転送やコンフィギュレーションデータの書込みや初期設定用のデータの転送等を必要とするデバイスがカードに多数存在する場合は、記憶媒体で必要なデータを集中管理することが一般的に行われている。
【０００３】
ここで、従来一般的に行われているカードの起動方法について詳細に説明する。図１１は、カードの構成を示すブロック図である。カード１００は、ブートプログラムや起動に必要なデータを保存する記憶媒体（例えば、コンパクトフラッシュ（登録商標）（以下ＣＦとする）等）１０１と、起動に関する処理を一括で管理して制御するブート管理用デバイス１０２と、ＤＳＰ１０４と、ＣＰＵ１０５と、ＦＰＧＡ（＃１〜＃ｎ）１０６と、ＬＳＩ（＃１〜＃ｎ）１０７とを備える。ブート管理用デバイス１０２とＤＳＰ１０４及びＣＰＵ１０５は、ブート用バス１１０で接続されており、ブート管理用デバイス１０２とＦＰＧＡ１０６は、コンフィグ用バス１１１で接続されており、ブート管理用デバイス１０２とＬＳＩ１０７は、デバイス設定用バス１１２で接続されている。
【０００４】
起動の手順は、まず、記憶媒体１０１にブートプログラム、コンフィギュレーションデータ、デバイス初期設定データを格納しておく。次に、ＤＳＰ１０４やＣＰＵ１０５の場合、電源投入時やリセット発生等の再起動時に、ブート管理用デバイス１０２が記憶媒体１０１よりブートプログラムを読み出す。ブート管理用デバイス１０２は、ブート用バス１１０の配下に接続されているデバイスであるＤＳＰ１０４及びＣＰＵ１０５に対してブートプログラムの転送を実施し、転送が完了したＤＳＰ１０４及びＣＰＵ１０５は、ブート管理用デバイス１０２に完了通知１１３、１１４を送信する。ＦＰＧＡ１０６の場合、電源投入時やリセット発生等の再起動時に、ブート管理用デバイス１０２が記憶媒体１０１よりコンフィギュレーションデータを読み出す。ブート管理用デバイス１０２は、コンフィグ用バス１１１の配下に接続されているデバイスであるＦＰＧＡ１０６に対してコンフィギュレーションデータの転送を実施し、転送が完了したＦＰＧＡ１０６は、ブート管理用デバイス１０２に完了通知１１５を送信する。ＬＳＩ１０７の場合、電源投入時やリセット発生等の再起動時に、ブート管理用デバイス１０２が記憶媒体１０１よりデバイス初期設定データを読み出す。ブート管理用デバイス１０２は、デバイス設定用バス１１２の配下に接続されているデバイスであるＬＳＩ１０７に対してデバイス初期設定データの転送を実施し、転送が完了したＬＳＩ１０７は、ブート管理用デバイス１０２に完了通知１１６を送信する。全てのデバイスについて処理が終了するとカードの起動処理が完了する。
【０００５】
上記のような起動処理の場合、搭載されているデバイスへのデータ転送中または書き込み中にエラーが発生した場合や集中管理制御を行っているブート管理用デバイス１０２に完了通知が通知されない場合、起動処理が停止され、カードを起動することができなくなってしまう。このような問題を解決する技術として特許文献１及び２に示す技術が開示されている。
【０００６】
特許文献１に示す技術は、プログラムの更新の際に、当該更新による障害の発生を抑止する技術であり、プログラムメモリの更新前プログラムを外部記憶媒体にコピーし、コピーの正常性を確認できたならば、起動設定を外部記憶媒体に設定し、外部記憶媒体の更新後プログラムをプログラムメモリにコピーして、電子機器を再起動する。再起動後、起動設定が外部記憶媒体である場合には、外部記憶媒体にコピーされた更新前プログラムが起動する。この状態で、ユーザが、更新後プログラムの起動を選択したならば、プログラムメモリの更新後プログラムを起動する。一方、ユーザが、起動設定更新を選択したならば、起動設定をプログラムメモリに復する。これにより、以降は、再起動の度に、プログラムメモリの更新後プログラムが起動するプログラム更新方法である。
【０００７】
特許文献２に示す技術は、情報処理装置の起動時に、ハードウェア障害や初期化プログラムの問題により初期化プログラムが途中で停止してしまう場合であっても、機能や性能などの制約を課しても、オペレーティングシステムを起動させて、その情報処理装置においての障害解析や、また障害からの復旧を可能にする技術であり、起動時に実行されるＲＯＭの初期化プログラムが停止した場合、コントローラが、初期化プログラムが中途で停止したことを検知し、停止した初期プログラムを、障害復旧用の初期化プログラムに書き換えて、その後に、情報処理装置の電源オフおよび電源オンをおこなう。そして、再起動により、障害復旧用の書き換えられた初期化プログラムを実行する技術である。
【特許文献１】特開２００４−１１０２２０号公報
【特許文献２】特開２００７−１７２０９６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１及び２に示す技術は、起動中に障害やエラーが発生した場合であっても、バックアップ用のプログラムや障害復旧用のプログラムで起動を行うことができるが、障害やエラーが発生した場合にはバックアップ用のプログラムや障害復旧用のプログラムが格納されるＲＯＭに対してアクセスを行う必要があり、アクセスに時間が掛かってしまうという課題を有する。
【０００９】
また、リトライ機能等を備えているような場合は、バックアップ用のプログラムや障害復旧用のプログラムが格納されるＲＯＭに対して何度もアクセスが発生し、カードの起動にかなりの時間を要してしまうという課題を有する。
【００１０】
そこで、本発明は前記課題を解決するためになされたものであり、カードの起動処理中に障害やエラーの発生により再起動された場合に、起動に必要なプログラムやデータへのアクセスを高速化することで、起動処理に要する時間を短縮する起動装置、起動方法、及び、起動プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
（１．バスの種別毎にメモリを配設）
本起動装置は、演算機能、信号処理機能等の各種処理機能のいずれかを有する複数の電子デバイスを備えるカードを起動する起動装置において、前記カードを起動に必要な基本データを不揮発性にて格納する不揮発性記憶手段と、起動処理を管理して制御する起動管理手段と、前記複数の電子デバイスを前記カードの起動処理において必要となる基本データの送受信で利用されるバスの種別毎に少なくともグループ化し、当該グループ毎に前記起動管理手段と当該バスで接続され、前記基本データを一時データとして揮発性にて格納する揮発性記憶手段とを備え、前記起動管理手段が、当該カードの起動時に前記不揮発性記憶手段から前記各電子デバイスに必要な基本データを送信し、前記揮発性記憶手段に同一の基本データを送信し、当該カードの再起動時に当該揮発性記憶手段に格納された一時データを用いて再起動の処理を行うものである。
【００１２】
このように、本起動装置においては、カードの起動時に各電子デバイスに起動に必要な基本データを不揮発性の記憶手段から送信すると共に、バスの種別ごとに備えられた揮発性の記憶手段にも一時データとして併せて送信し、当該カードの再起動時には揮発性の記憶手段が格納する一時データを用いて再起動の処理を行うため、再起動時に不揮発性の記憶手段へのアクセスが不要となり、処理速度を上げて作業時間を短縮することができるという効果を奏する。
【００１３】
また、揮発性の記憶手段を備えることで、演算機能を有する電子デバイス（例えば、ＣＰＵやＤＳＰ等）のブート処理において再起動が発生した場合であっても、揮発性の記憶手段からの再起動処理を行いつつ、不揮発性の記憶手段からの他の電子デバイスへの基本データの送信（例えば、ＦＰＧＡのコンフィグデータの送信）を行うことができ、処理を並行して行うことで作業時間を短縮することができるという効果を奏する。
【００１４】
さらに、バスの種別ごとにグループ化することにより、グループ内でのデータの通信速度や通信するデータの種類を共通化することができるため、起動処理を統一的で且つ効率良く行うことができるという効果を奏する。
【００１５】
なお、電子デバイスをグループ化する場合には、少なくともカードの起動に必要なデータの送受信で利用されるバスの種別毎に行こととしているが、例えば、さらに細分化された個々の電子デバイス毎にグループ化して揮発性の記憶手段を備える構成としてもよい。
また、信号処理機能を有する電子デバイスの具体例として、例えば、ＦＰＧＡやＬＳＩといったデバイスが含まれる。
【００１６】
（２．リトライ機能）
本起動装置は、前記電子デバイスが正常に動作しない場合に、当該電子デバイスに対してリトライの指示を要求し、前記揮発性記憶手段に格納された一時データを前記正常に動作しない電子デバイスに送信して、当該電子デバイスのリトライを実行させるリトライ手段を備えるものである。
【００１７】
このように、本起動装置においては、電子デバイスが正常に動作しない場合に、揮発性記憶手段に格納された一時データを用いてリトライを実行するため、リトライにより電子デバイスが正常に動作する可能性が高くなると共に、揮発性記憶手段の一時データを電子デバイスに送信することで、処理を高速で行うことができるという効果を奏する。
【００１８】
（３．整合性の確認）
本起動装置は、当該カードの起動時に前記不揮発性記憶手段から前記各電子デバイスに送信された基本データと前記揮発性記憶手段が格納する一時データとの一致を確認する整合性確認手段を備え、前記整合性確認手段の整合性確認結果に基づいて、前記起動管理手段が当該カードの再起動時に、当該揮発性記憶手段に格納された一時データを用いて各電子デバイスの再起動処理を実行させるものである。
【００１９】
このように、本起動装置においては、不揮発性記憶手段から各電子デバイスに送信された基本データと揮発性記憶手段が格納する一時データとの整合性を確認し、整合性が取れていると判断された場合には、一時データを用いて再起動の処理を行うため、一時データの信頼性を保証しつつ、再起動時にはアクセス時間を短縮して処理効率を上げることができるという効果を奏する。
【００２０】
なお、揮発性記憶手段にＤＰＲＡＭ（Dual  Port  RAM）を用いることで、揮発性記憶手段に対してデータを書き込む処理を行いつつ、揮発性記憶手段の一時データを読み出して整合性を確認するようにしてもよい。そうすることで、処理時間を短縮することができる。
【００２１】
また、カードの起動が完了した後に定期的に基本データと一時データの照合を行うようにしてもよい。そうすることで、運用中の電子デバイスの性能を落とすことなく、揮発性記憶手段に格納している一時データの信頼性を確認することができる。
【００２２】
（４．バス切替デバイス）
本起動装置は、前記バスにおけるデータの通信を遮断するバス切替デバイスと、当該カードの起動時に前記不揮発性記憶手段から前記各電子デバイスに送信された基本データと前記揮発性記憶手段が格納する一時データのいずれかを前記バス切替デバイスを制御することにより選択し、当該選択されたデータを用いて再起動の処理を行うバス切替デバイス制御手段とを備えるものである。
【００２３】
このように、本起動装置においては、バス切替デバイスを制御して基本データと一時データのいずれのデータで再起動の処理を行うかを選択するため、データの衝突を避けて処理の精度を上げることができるという効果を奏する。
【００２４】
（５．処理のスキップ）
本起動装置は、前記電子デバイスが正常に動作しない場合に予め設定されたリトライ回数に基づいて当該電子デバイスを動作させる処理をスキップするかどうかを判定するスキップ判定手段と、前記スキップ判定手段が判定した結果に基づいて当該カードの縮退情報を、前記演算機能を有する電子デバイスへ通知する縮退情報通知手段とを備えるものである。
【００２５】
このように、本起動装置においては、数回のリトライを実行しても起動処理がうまくいかない場合に、予め設定されたリトライ上限回数に基づいて処理をスキップし、その縮退情報を演算機能を有するＣＰＵやＤＳＰ等の電子デバイスに通知するため、縮退をした状態のままカードを起動させるという判断をソフトウェアで行うことができ、装置を運用し易くなるという効果を奏する。
なお、ソフトウェアの判断により、カードを縮退した状態のまま起動した場合であってもカードの運用を行いつつリトライを実行するようにしてもよい。
【００２６】
（６．不揮発性記憶手段からのデータ送信）
本起動装置は、当該カードの起動時に前記揮発性記憶手段が格納する一時データを用いて起動の処理を行った場合に、正常に動作しない電子デバイスが存在すると、前記起動管理手段が、前記不揮発性記憶媒体から当該電子デバイスに対して再度カードの起動に必要な基本データを送信するように信号を出力するものである。
【００２７】
このように、本起動装置においては、揮発性記憶手段に格納された一時データを用いてカードを起動した場合に、正常に起動しない電子デバイスがあると、一時データの信頼性がないと判断し、不揮発性記憶手段の基本データを用いて起動処理を行うため、一時データの信頼性が低い場合であっても、基本データでカードを起動することができ、カードの起動に必要なデータの信頼性を確保できるという効果を奏する。
【００２８】
これまで、本発明を装置として示したが、所謂当業者であれば明らかであるように本発明を方法、及び、プログラムとして捉えることもできる。これら前記の発明の概要は、本発明に必須となる特徴を列挙したものではなく、これら複数の特徴のサブコンビネーションも発明となり得る。
【発明を実施するための最良の形態】
【００２９】
以下、本発明の実施の形態を説明する。本発明は多くの異なる形態で実施可能である。従って、本実施形態の記載内容のみで本発明を解釈すべきではない。また、本実施形態の全体を通して同じ要素には同じ符号を付けている。
【００３０】
以下の実施の形態では、主に装置について説明するが、所謂当業者であれば明らかな通り、本発明は方法、及び、コンピュータを動作させるためのプログラムとしても実施できる。また、本発明はハードウェア、ソフトウェア、または、ハードウェア及びソフトウェアの実施形態で実施可能である。プログラムは、ハードディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、光記憶装置、または、磁気記憶装置等の任意のコンピュータ可読媒体に記録できる。さらに、プログラムはネットワークを介した他のコンピュータに記録することができる。
また、以下の実施形態において、「再起動」は、電源が切れずに起動動作がリセットすることを意味し、電源投入は、電源が切れた状態から電源が入る状態の動作を意味する。
【００３１】
（本発明の第１の実施形態）
（１．構成と機能）
（１−１  全体構成）
図１は、本実施形態に係る起動装置全体の構成を示すブロック図である。起動装置２００は、ＣＰＵ／ＤＳＰのブートプログラムデータやＦＰＧＡのコンフィギュレーションデータやデバイス設定データを集中管理する記憶媒体２０１と、カードの起動処理を制御するブート管理用デバイス２０２と、ＤＳＰ２０６と、ＣＰＵ２０７と、ブートプログラムデータを一時的に保管するブート用メモリ２０８ａと、ＦＰＧＡ２０９、２１０と、コンフィギュレーションデータを一時的に保管するコンフィグ用メモリ２０８ｂと、ＬＳＩ２１１、２１２と、デバイス設定データを一時的に保管するデバイス設定用メモリ２０８ｃとを備える。
【００３２】
ブート管理用デバイス２０２、ＤＳＰ２０６、ＣＰＵ２０７、及び、ブート用メモリ２０８ａは、ブート用バス２１３で接続されており、双方向にデータの送信を行う構成となっている。ブート管理用デバイス２０２、ＦＰＧＡ２０９、２１０、及び、コンフィグ用メモリ２０８ｂは、コンフィグ用バス２１４で接続されており、ブート管理用デバイス２０２から各ＦＰＧＡ方向へのデータ送信を行う構成となっている。ブート管理用デバイス２０２、ＬＳＩ２１１、２１２、及び、デバイス設定用メモリ２０８ｃは、デバイス設定用バス２１５で接続されており、ブート管理用デバイス２０２から各ＬＳＩ方向へのデータ送信を行う構成となっている。各デバイスに接続するバス上には、データの衝突を避けるためのバス切替デバイス２１６ａ、２１６ｂ、２１６ｃを備える。
【００３３】
また、ブート管理用デバイス２０２は、カードの起動処理におけるリトライ動作を制御するリトライ制御部２０３と、ブート用メモリ２０８ａ、コンフィグ用メモリ２０８ｂ、及び、デバイス設定用メモリ２０８ｃの整合性を確認するメモリ制御部２０４と、バス切替デバイス２１６ａ、２１６ｂ、２１６ｃの動作を制御するバス切替デバイス制御部２０５と、カード起動の管理を行うカード起動管理部２２６とを備える。
【００３４】
さらに、リトライ制御部２０３は、タイマ監視部２０３ａとエラー監視部２０３ｂと起動フラグ保持部２０３ｃとリトライ回数フラグ保持部２０３ｄとスキップ制御部２０３ｅと縮退制御部２０３ｆとを備え、メモリ制御部２０４は、整合性確認部２０４ａを備える。
【００３５】
なお、図１においては、カードの起動に必要なデータの送受信で利用されるバスの種別毎にデバイスをグループ化してメモリ２０８ａ〜２０８ｃを備える構成としたが、グループ化の方法として、例えば、さらに細分化された個々のデバイス毎にグループ化してメモリを備える構成としてもよい。
【００３６】
また、リトライ制御部２０３と、メモリ制御部２０４と、バス切替デバイス制御部２０５と、カード起動管理部２２６は、ブート管理用デバイス２０２に備えられる構成としているが、必ずしもブート管理用デバイス２０２に備える必要はなく、ブート管理用デバイス２０２の外に備える構成としてもよい。
【００３７】
（１−２  リトライ制御部の構成と機能）
図２は、本実施形態に係るリトライ制御部２０３の構成を示すブロック図である。リトライ制御部２０３はリトライ/スキップ/縮退判定部３０１と障害監視部３０２に分かれる。リトライ/スキップ/縮退判定部３０１ではリトライ回数フラグ３０４と起動フラグ３０５を保持している。障害監視部３０２から通知されるエラー情報３１２をカウントし、リトライ実行有無を判定する。リトライを実行した場合はリトライ回数のカウントも行い、リトライを数回繰り返す場合にはリトライ回数フラグ３０４とリトライ回数との比較を行いながらリトライの有無を判定する。
【００３８】
起動フラグ３０５は、カードの起動に必要なデータを記憶媒体２０１から取得するのかまたはメモリ２０８ａ〜２０８ｃから送信するのかを判断するためのフラグである。エラーがなく正常に起動が完了したデバイスについては、以降の起動にメモリ２０８ａ〜２０８ｃからのデータを使用したほうが高速に起動することが可能となるので、判定回路部３０３が、起動フラグ３０５を記憶媒体２０１側からメモリ２０８ａ〜２０８ｃ側（データをメモリ２０８ａ〜２０８ｃから送信する）へと書き換える。リトライ実行時やエラー発生時にはメモリ２０８ａ〜２０８ｃに配置したデータの信頼性がないため起動フラグ３０５は記憶媒体２０１側（データを記憶媒体２０１から取得する）へと書き換える。
【００３９】
リトライ/スキップ/縮退判定部３０１はカード起動管理部２２６に対してリトライ指示３１０及びスキップ指示３０９を行う。スキップを行った場合は、該当デバイスを縮退して使用するかどうかの判断をＣＰＵ２０７やＤＳＰ２０６が行う必要があるためカード起動管理部２２６に対して縮退情報通知３１１を行い、カード起動管理部２２６はＣＰＵ２０７やＤＳＰ２０６に対して縮退情報を通知する。
【００４０】
また、リトライ/スキップ/縮退判定部３０１はメモリ制御部インタフェース(以下、メモリ制御部ＩＦとする)３０６を介して、メモリ制御部２０４に整合性チェック指示３１７、起動方法指示３１６を行う。起動方法指示３１６は、記憶媒体２０１からのデータ取得するか、またはメモリ２０８ａ〜２０８ｃからデータを転送するかを判定するための信号である。メモリ制御部２０４から通知される整合性チェック結果３１８は起動フラグ制御にも反映される。さらに、バス切替デバイス制御インターフェース（以下、バス切替デバイス制御ＩＦとする）３０７を介して、起動方法指示３１５をする。
【００４１】
障害監視部３０２では各デバイスの障害を監視する。カード起動管理部２２６から通知される起動状態通知信号３０８からどのデバイスに対して起動を行っているかを監視する。監視内容は規定時間内に立ち上がるかどうかのタイマ判定、各デバイスから通知される起動時のエラー判定の２種類である。タイマ判定は各デバイスからの完了通知３１３が規定時間内にブート管理用デバイス２０２に到達するかどうかで判断する。エラー判定は各デバイスからのエラー通知（例えば、ＦＰＧＡが出力するＳＴＡＴＵＳ信号）３１４を監視することで判断する。
なお、ソフトウェアの判断により、カードを縮退した状態のまま起動した場合であってもカードの運用を行いつつリトライを実行するようにしてもよい。
【００４２】
（１−３  メモリ制御部の構成と機能）
図３は、本実施形態に係るメモリ制御部２０４の構成を示すブロック図である。メモリ制御部２０４ではブート用バス１１０、コンフィグ用バス１１１、及び、デバイス設定用バス１１２のデータ信号４０７を引き込んでおり、起動状態通知信号３０８から起動に使用しているデータを抽出する。そのデータはＷｒｉｔｅデータ用バッファ４０１に格納する。
【００４３】
メモリ制御信号生成部４０６では、起動状態通知信号３０８とリトライ制御部２０３から入力される起動方法指示信号３１６を判定し、メモリ２０８ａ〜２０８ｃに対するＲｅａｄ信号／Ｗｒｉｔｅ信号２１８ａ〜２１８ｃを制御する。各デバイスの起動処理中にメモリ２０８ａ〜２０８ｃに対してもデータを格納する場合はＷｒｉｔｅ信号２１８ａ〜２１８ｃを有効にする。各メモリ２０８ａ〜２０８ｃにＷｒｉｔｅ処理を実行しつつＲｅａｄ処理もあわせて実行することで、Ｗｒｉｔｅ処理したデータの値をメモリ２０８ａ〜２０８ｃから読み出し、その読み出したデータを、起動状態通知信号３０８を用いて選択し、Ｒｅａｄデータ用バッファ４０３に格納する。
【００４４】
メモリ２０８ａ〜２０８ｃにＤＰＲＡＭを使用する場合にはＷｒｉｔｅ信号２１８ａ〜２１８ｃと同時にＲｅａｄ信号２１８ａ〜２１８ｃも有効にすることで高速にデータの読み出しＲｅａｄデータ用バッファ４０３に格納することが可能である。メモリ２０８ａ〜２０８ｃにシングルメモリを使用した場合でもメモリ２０８ａ〜２０８ｃに対するＷｒｉｔｅ処理を実行した直後にＲｅａｄ処理を行うことでメモリ２０８ａ〜２０８ｃからデータを読み出しＲｅａｄ用バッファ４０３にデータを格納する。
【００４５】
照合回路４０２では、リトライ制御部２０３から入力される整合性チェック指示信号３１７が有効な場合、Ｗｒｉｔｅ用バッファ４０１及びＲｅａｄ用バッファ４０３から、データ信号４０８、４１０を介して同時にデータを読み出して一致確認を行う。不一致の場合はリトライ制御部２０３に対して整合性不一致の情報を整合性チェック結果３１８の信号を用いて通知する。
【００４６】
（１−４  バス切替デバイス制御部の構成と機能）
図４は、本実施形態に係るバス切替デバイス制御部２０５の構成を示すブロック図である。バス切替デバイス制御部２０５は、リトライ制御部２０３から入力される起動方法指示信号３１５とカード起動管理部２２６から通知される起動状態通知信号３０８からバス切替デバイス２１６ａ〜２１６ｃに対する方向制御信号５０２及びＥｎａｂｌｅ信号５０３の生成を行う。方向制御信号５０２及びＥｎａｂｌｅ信号５０３の生成は、判定回路５０１にて行われる。
【００４７】
電源投入時は、記憶媒体２０１から起動に必要なデータを取得し、各デバイスに対して転送する場合と、リセット時などメモリ２０８ａ〜２０８ｃから起動に必要なデータを取得して各デバイスに対して転送する場合では、バス切替デバイス２１６ａ〜２１６ｃの制御が異なる。
【００４８】
ここで、バス切替デバイスの制御処理の具体例について説明する。図５は、バス切替デバイスの制御を具体的に示す図である。ここでは、ＤＳＰ２０６とＣＰＵ２０７の起動処理について説明する。図５（ａ）は電源投入時の状態を示す。電源投入時は、まず、ブート管理用デバイス２０２からＤＳＰ２０６及びメモリ２０８ａにブートプログラムデータが送信される。従って、ブート管理用デバイス２０２に接続するバス切替デバイスとＤＳＰ２０６に接続するバス切替デバイスとメモリ２０８ａに接続するバス切替デバイスはＥｎａｂｌｅ状態となり、ＣＰＵ２０７に接続されるバス切替デバイスは、データの衝突を避けるためにＤｉｓ−ｅｎａｂｌｅ状態となる。ＤＳＰ２０６へのデータの送信が終了すると、ＤＳＰ２０６に接続するバス切替デバイスがＤｉｓ−Ｅｎａｂｌｅ状態となり、ＣＰＵ２０７に接続されるバス切替デバイスがＥｎａｂｌｅ状態となる。
【００４９】
図５（ｂ）はリトライ時（メモリ２０８ａからデータを取得する場合）の状態を示す。リトライ時は、まず、メモリ２０８ａからＤＳＰ２０６にブートプログラムデータが送信される。従って、ＤＳＰ２０６に接続するバス切替デバイスとメモリ２０８ａに接続するバス切替デバイスはＥｎａｂｌｅ状態となり、ブート管理用デバイス２０２に接続するバス切替デバイスとＣＰＵ２０７に接続されるバス切替デバイスは、データの衝突を避けるためにＤｉｓ−ｅｎａｂｌｅ状態となる。ＤＳＰ２０６へのデータの送信が終了すると、ＤＳＰ２０６に接続するバス切替デバイスがＤｉｓ−Ｅｎａｂｌｅ状態となり、ＣＰＵ２０７に接続されるバス切替デバイスがＥｎａｂｌｅ状態となる。
【００５０】
図５（ｃ）は正常起動完了後の状態を示す。ここでは、起動が正常に完了した後なので全てのバス切替デバイスがＤｉｓ−ｅｎａｂｌｅ状態となる。
なお、図５においてＥｎａｂｌｅ信号５０３は、バス切替デバイスのＥｎａｂｌｅ状態を制御するための信号であり、方向制御信号５０２は、バスを流れるデータの方向を制御する信号である。つまり、図５（ｂ）の場合は、メモリ２０８ａからデータ送信される方向が、図５（ａ）の場合とは逆になるように制御される。
【００５１】
（２．動作）
（２−１  シングルメモリを用いた場合の正常起動処理）
図６は、シングルメモリを用いた場合のカードの起動処理（正常起動時）を示すシーケンス図である。ここでは複数搭載されるデバイスの内、ＤＳＰ２０６とＦＰＧＡ２０９について示す。なお、ＣＰＵ２０７や他のＦＰＧＡ２１０、ＬＳＩ２１１、２１２が搭載されている場合でも同等の動作でカードの起動を行う。
【００５２】
まず、ブート管理用デバイス２０２はＤＳＰ２０６からのデータ要求を受け、記憶媒体２０１からデータを読み込む。ＤＳＰ２０６に対し記憶媒体２０１から読み込んだデータの返送を行うと同時にシングルメモリ（ＤＳＰ２０６用）２０８ａにも同じデータを書き込む。ＤＳＰ２０６に対してデータ返送を行ったと同時に完了通知受信タイマ監視を開始する。
なお、タイマ監視はＤＳＰ２０６からデータ要求を受信した時点で開始してもよい。
【００５３】
データ返送が完了し、ＤＳＰ２０６から次のデータ要求を受けた時点でタイマをクリアする。そして、ブート管理用デバイス２０２はシングルメモリ（ＤＳＰ２０６用）２０８ａに対し整合性確認用データのリード要求を行い、読み込んだデータと書き込んだデータの整合性確認を行う。この時、タイマ監視はデータ要求毎にクリアしてもよいし、最初のデータ要求から完了通知受信までを監視するようなタイマを使用してもよい。整合性確認後、ブート管理用デバイス２０２はＤＳＰ２０６から次のデータ要求に対して記憶媒体２０１からデータを読み込み、その後、最初のデータ要求時と同様の動作を行う。
【００５４】
上記処理の繰り返しにより全てのデータ要求が終了すると、ブート管理用デバイス２０２は、ＤＳＰ２０６から完了通知を受信し、タイマ監視をクリアして、記憶媒体２０１に対して次のデバイスであるＦＰＧＡ２０９のコンフィギュレーション用のデータ要求を行う。
【００５５】
なお、データの整合性確認は、データの返送ごとではなく、完了通知受信又はタイマ監視クリアを契機に整合性確認用データのリード指示を行い、データをまとめて読み出した後に整合性を確認してもよい。
【００５６】
ＦＰＧＡ２０９に対し記憶媒体２０１から読み込んだコンフィギュレーション用データの返送を行うと同時にシングルメモリ（ＦＰＧＡ２０９用）２０８ｂにも同じデータを書き込み、ＦＰＧＡ２０９はコンフィギュレーション処理を行う。またブート管理用デバイス２０２はこれと同時に完了通知受信タイマ監視を開始する。
ブート管理用デバイス２０２は、ＦＰＧＡ２０９から完了通知を受信したらタイマ監視をクリアし起動処理を終了する。
【００５７】
（２−２  ＤＰＲＡＭを用いた場合の正常起動処理）
図７は、ＤＰＲＡＭを用いた場合のカードの起動処理（正常起動時）を示すシーケンス図である。ここでも図６の場合と同様に複数搭載されるデバイスの内、ＤＳＰ２０６とＦＰＧＡ２０９について示す。なお、ＣＰＵ２０７や他のＦＰＧＡ２１０、ＬＳＩ２１１、２１２が搭載されている場合でも同等の動作でカードの起動を行う。
【００５８】
まず、ブート管理用デバイス２０２は、ＤＳＰ２０６からのデータ要求を受け、記憶媒体２０１からデータを読み込む。ＤＳＰ２０６に対し記憶媒体２０１から読み込んだデータの返送を行うと同時にＤＰＲＡＭ（ＤＳＰ２０６用）２０８ａにも同じデータを書き込む。ＤＳＰ２０６に対してデータ返送を行ったと同時に完了通知受信タイマ監視を開始する。
なお、タイマ監視はＤＳＰ２０６からデータ要求を受信した時点で開始してもよい。
【００５９】
ブート管理用デバイス２０２は、ＤＰＲＡＭ(ＤＳＰ２０６用)２０８ａへのデータ書込み後、ＤＰＲＡＭ(ＤＳＰ２０６用)２０８ａに対し整合性確認用データのリード要求を行い、読み込んだデータと書き込んだデータ整合性確認を行う。
【００６０】
ＤＳＰ２０６から次のデータ要求を受けたらタイマをクリアし、最初のデータ要求時と同様の動作を行う。この時、タイマ監視はデータ要求毎にクリアしてもよいし、最初のデータ要求から完了通知受信までを監視するようなタイマを使用してもよい。
【００６１】
上記処理の繰り返しにより全てのデータ要求が終了すると、ブート管理用デバイス２０２は、ＤＳＰ２０６から完了通知を受信し、タイマ監視をクリアして、記憶媒体２０１に対して次のデバイスであるＦＰＧＡ２０９のコンフィギュレーション用のデータ要求を行う。
【００６２】
なお、データの整合性確認は、データの返送ごとではなく、完了通知受信又はタイマ監視クリアを契機に整合性確認用データのリード指示を行い、データをまとめて読み出した後に整合性を確認してもよい。
【００６３】
ＦＰＧＡ２０９に対し記憶媒体２０１から読み込んだコンフィギュレーション用データの返送を行うと同時にＤＰＲＡＭ(ＦＰＧＡ２０９用)２０８ｂにも同じデータを書き込み、ＦＰＧＡ２０９はコンフィギュレーション処理を行う。またブート管理用デバイス２０２はこれと同時に完了通知受信タイマ監視を開始する。
【００６４】
上記処理の繰り返しにより全てのデータ要求が終了すると、ブート管理用デバイス２０２は、ＦＰＧＡ２０９から完了通知を受信し、タイマ監視をクリアして起動処理を終了する。
【００６５】
（２−３  ＤＰＲＡＭを用いた場合のエラー発生時の起動処理）
図８は、ＤＰＲＡＭを用いた場合のカードの起動処理（エラー発生時）を示すシーケンス図である。ここでも図６及び図７の場合と同様に複数搭載されるデバイスの内、ＤＳＰ２０６とＦＰＧＡ２０９について示す。エラー発生時は、エラーが発生したデバイスの起動に必要なデータの整合性が取れていると確認されている場合、記憶媒体２０１ではなく各デバイス用メモリ２０８ａ〜２０８ｃ内に格納されたデータを用いてカードが起動される。整合性が取れていない場合は、記憶媒体２０１からデータを取得する。なお、ＣＰＵ２０７や他のＦＰＧＡ２１０、ＬＳＩ２１１、２１２が搭載されている場合でも同等の動作でカードの起動を行う。
【００６６】
まず、ブート管理用デバイス２０２は、ＤＳＰ２０６からのデータ要求を受け、記憶媒体２０１からデータを読み込む。ＤＳＰ２０６に対し記憶媒体２０１から読み込んだデータの返送を行うと同時にＤＰＲＡＭ（ＤＳＰ２０６用）２０８ａにも同じデータを書き込む。ＤＳＰ２０６に対してデータ返送を行ったと同時に完了通知受信タイマ監視を開始する。
なお、タイマ監視はＤＳＰ２０６からデータ要求を受信した時点で開始してもよい。
【００６７】
ブート管理用デバイス２０２はＤＰＲＡＭ（ＤＳＰ２０６用）２０８ａへのデータ書込み後、ＤＰＲＡＭ（ＤＳＰ２０６用）２０８ａに対し整合性確認用データのリード要求を行い、読み込んだデータと書き込んだデータの整合性確認を行う。
【００６８】
ＤＳＰ２０６から次のデータ要求を受けたらタイマをクリアし、最初のデータ要求時と同様の動作を行う。この時、タイマ監視はデータ要求毎にクリアしてもよいし、最初のデータ要求から完了通知受信までを監視するようなタイマを使用してもよい。
【００６９】
ブート管理用デバイス２０２は、ＤＳＰ２０６からの完了通知がタイムアウトなった場合、ＤＳＰ２０６に対して再ブート処理を指示する。また、これと並行してブート管理用デバイス２０２は記憶媒体２０１に対し、ＦＰＧＡ２０９のコンフィギュレーションデータの要求を行う。
【００７０】
再ブート処理を受けたＤＳＰ２０６はブート管理用デバイス２０２に対しデータ要求を行う。ＤＰＲＡＭ（ＤＳＰ２０６用）２０８ａ内のデータの整合性が取れている場合、ブート管理用デバイス２０２はＤＰＲＡＭ（ＤＳＰ２０６用）２０８ａに対し、データ返送指示を行い、ＤＰＲＡＭ（ＤＳＰ２０６用）２０８ａはＤＳＰ２０６にデータを送信する。
【００７１】
記憶媒体２０１に対し、ＦＰＧＡ２０９のコンフィギュレーションデータの要求を行ったブート管理用デバイス２０２は、記憶媒体２０１からデータを読み込み、ＦＰＧＡ２０９に対してコンフィギュレーションデータの返送を行うと同時にＤＰＲＡＭ（ＤＳＰ２０６用）２０８ａにも同じデータを書き込むという一連の動作を、再ブート処理と並行して行う。
【００７２】
上記処理の繰り返しにより全てのデータ要求が終了すると、ブート管理用デバイス２０２は、ＤＳＰ２０６及びＦＰＧＡ２０９から完了通知を受信し、タイマ監視をクリアして起動処理を終了する。
【００７３】
（２−４  ＤＰＲＡＭを用いた場合のリセット発生時の起動処理）
図９は、ＤＰＲＡＭを用いた場合のカードの起動処理（リセット発生時）を示すシーケンス図である。ここでも図６、図７及び図８の場合と同様に複数搭載されるデバイスの内、ＤＳＰ２０６とＦＰＧＡ２０９について示す。リセット発生時、各デバイスの起動に必要なデータの整合性が確認されている場合、記憶媒体２０１ではなく各デバイス用メモリ２０８ａ〜２０８ｃ内に格納されたデータを用いてカードが起動される。整合性が取れていない場合は、記憶媒体２０１からデータを取得する。なお、ＣＰＵ２０７や他のＦＰＧＡ２１０、ＬＳＩ２１１、２１２が搭載されている場合でも同等の動作でカードの起動を行う。
【００７４】
まず、リセットが発生した場合、ＤＳＰ２０６はブート管理用デバイス２０２に対しデータ要求を行う。ＤＰＲＡＭ（ＤＳＰ２０６用）２０８ａ内のデータの整合性が取れている場合、ブート管理用デバイス２０２はＤＰＲＡＭ（ＤＳＰ２０６用）２０８ａに対し、データ返送指示を行い、ＤＰＲＡＭ（ＤＳＰ２０６用）２０８ａは、整合性確認によって保証されたデータをＤＳＰ２０６に送信し、完了通知受信タイマ監視を行う。この時、タイマ監視はデータ要求毎に行ってもよいし、最初のデータ要求から完了通知受信までを監視するようなタイマを使用してもよい。
【００７５】
ＤＳＰ２０６からの完了通知受信後、ブート管理用デバイス２０２はタイマのクリア、タイマ監視終了を行い、次デバイスであるＦＰＧＡ２０９のデータ書き込み指示をＤＰＲＡＭ（ＤＳＰ２０６用）２０８ｂに対して行う。またブート管理用デバイス２０２はＦＰＧＡ２０９に対する完了通知受信タイマの監視を開始する。
【００７６】
上記処理の繰り返しにより全てのデータ要求が終了すると、ブート管理用デバイス２０２は、ＦＰＧＡ２０９から完了通知を受信し、タイマ監視をクリアして起動処理を終了する。
【００７７】
なお、各デバイス用メモリ２０８ａ〜２０８ｃはシングルメモリを用いても、ＤＰＲＡＭを用いてもよい。ＤＰＲＡＭを用いることで、メモリ２０８ａ〜２０８ｃに対してデータを書き込む処理を行いつつ、メモリの値を読み出して整合性を確認して処理時間を短縮することができる。
【００７８】
また、カードの起動が完了した後に定期的に記憶媒体２０１からのデータと各デバイス用メモリ２０８ａ〜２０８ｃのデータの照合を行うようにしてもよい。そうすることで、運用中のデバイスの性能を落とすことなく、各デバイス用メモリ２０８ａ〜２０８ｃに格納しているデータの信頼性を確認することができる。
【００７９】
このように、本実施形態に係る起動装置２００によれば、カードが備える複数のデバイスをカードの起動処理において必要となるデータの送受信で利用されるバスの種別毎に少なくともグループ化し、当該グループ毎に、起動管理手段としてのブート管理用デバイス２０２と当該バスで接続される揮発性のメモリ２０８ａ〜２０８ｃとを備え、カードの起動時に記憶媒体２０１から前記各デバイスに必要なデータを送信する場合に、揮発性メモリ２０８ａ〜２０８ｃにも同一のデータを送信し、当該カードの再起動時に当該揮発性メモリ２０８ａ〜２０８ｃに送信されたデータを用いて再起動の処理を行うため、再起動時に記憶媒体２０１へのアクセスが不要となり、処理速度を上げて作業時間を短縮することができる。
【００８０】
また、揮発性メモリ２０８ａ〜２０８ｃを備えることで、ＣＰＵ２０７やＤＳＰ２０６等のブート処理において再起動が発生した場合であっても、揮発性メモリ２０８ａ〜２０８ｃからの再起動処理を行いつつ、記憶媒体２０１からの他のデバイスへのデータの送信（例えば、ＦＰＧＡ２０９のコンフィギュレーションデータの送信）を行うことができ、処理を並行して行うことで作業時間を短縮することができる。
【００８１】
さらに、デバイスが正常に動作しない場合に当該デバイスに対してリトライの指示を要求するリトライ制御部２０３を備え、当該リトライ制御部２０３が、前記揮発性メモリ２０８ａ〜２０８ｃに格納されたデータを正常に動作しないデバイスに送信してリトライを実行するため、リトライが実行されることで前記デバイスが正常に動作する可能性があり、処理を効率的に行うことができる。
【００８２】
さらにまた、カードの起動時に記憶媒体２０１から各デバイスに送信したデータと揮発性メモリ２０８ａ〜２０８ｃに送信されたデータとの整合性を確認し、その結果、整合性が取れていると判断された場合には、カードの再起動時に揮発性メモリに送信されたデータを用いて再起動の処理を行うため、揮発性メモリに送信されたデータの信頼性を保証しつつ、再起動時にはアクセス時間を短縮して処理効率を上げることができる。
【００８３】
さらにまた、バスにおけるデータの通信を遮断するバス切替デバイス２１６ａ〜２１６ｃを備え、カードの起動時に記憶媒体２０１から各デバイスに送信したデータと揮発性メモリ２０８ａ〜２０８ｃに送信されたデータのいずれのデータを用いて再起動の処理を行うかを制御する起動制御フラグを参照して、前記バス切替デバイス２１６ａ〜２１６ｃを制御するバス切替デバイス制御部２０５を備えるため、データの衝突を避けて処理の精度を上げることができる。
【００８４】
さらにまた、デバイスが正常に動作しない場合に予め設定されたリトライ回数に基づいて処理をスキップするかどうかを判定するスキップ制御部２０３ｅと、スキップ制御部２０３ｅが判定した結果に基づいてカードの縮退情報をＣＰＵ２０７またはＤＳＰ２０６へ通知する縮退制御部２０３ｆとを備えるため、縮退をした状態のままカードを起動させるという判断をソフトウェアで行うことができ、装置を運用し易くなる。
【００８５】
さらにまた、カードの起動時に揮発性メモリ２０８ａ〜２０８ｃに送信されたデータを用いて起動の処理を行った場合に、正常に動作しないデバイスが存在すると、ブート管理用デバイス２０２が記憶媒体２０１から当該デバイスに対して再度カードの起動に必要なデータを送信するため、揮発性メモリ２０８ａ〜２０８ｃに送信されたデータの信頼性が低い場合であっても、元の記憶媒体２０１から送信されるデータで装置を起動することができるため、起動データの信頼性を確保できる。
【００８６】
（その他の実施形態）
図１０は、本実施形態に係る起動装置全体の構成を示すブロック図である。第１の実施形態と異なる点は、ブート管理用デバイス２０２にＰＣ２２７と接続可能なインターフェースを具備させた点である。このように、ブート管理用デバイス２０２とＰＣ２２７が接続可能となることで、記憶媒体２０１の内容を簡単に書き換えたり、バグがあった場合等に迅速にデバッグして修復することができるため、常に最新のデータを用いて安全にカードを起動することができる。
【図面の簡単な説明】
【００８７】
【図１】第１の実施形態に係る起動装置全体の構成を示すブロック図である。
【図２】第１の実施形態に係るリトライ制御部の構成を示すブロック図である。
【図３】第１の実施形態に係るメモリ制御部の構成を示すブロック図である。
【図４】第１の実施形態に係るバス切替デバイス制御部の構成を示すブロック図である。
【図５】バス切替デバイスの制御を具体的に示す図である。
【図６】シングルメモリを用いた場合のカードの起動処理（正常起動時）を示すシーケンス図である。
【図７】ＤＰＲＡＭを用いた場合のカードの起動処理（正常起動時）を示すシーケンス図である。
【図８】ＤＰＲＡＭを用いた場合のカードの起動処理（エラー発生時）を示すシーケンス図である。
【図９】ＤＰＲＡＭを用いた場合のカードの起動処理（リセット発生時）を示すシーケンス図である。
【図１０】第２の実施形態に係る起動装置全体の構成を示すブロック図である。
【図１１】従来技術におけるカードの構成を示すブロック図である。
【符号の説明】
【００８８】
１００  起動装置
１０１  記憶媒体
１０２  ブート管理用デバイス
１０４  ＤＳＰ
１０５  ＣＰＵ
１０６  ＦＰＧＡ
１０７  ＬＳＩ
１１０  ブート用バス
１１１  コンフィグ用バス
１１２  デバイス設定用バス
２００  起動装置
２０１  記憶媒体
２０２  ブート管理用デバイス
２０３  リトライ制御部
２０３ａ  タイマ監視部
２０３ｂ  エラー監視部
２０３ｃ  起動フラグ保持部
２０３ｄ  リトライ回数フラグ保持部
２０３ｅ  スキップ制御部
２０３ｆ  縮退制御部
２０４  メモリ制御部
２０４ａ  整合性確認部
２０５  バス切替デバイス制御部
２０６  ＤＳＰ
２０７  ＣＰＵ
２０８ａ、２０８ｂ、２０８ｃ  メモリ
２０９、２１０  ＦＰＧＡ
２１１、２１２  ＬＳＩ
２１３  ブート用バス
２１４  コンフィグ用バス
２１５  デバイス設定用バス
２１６ａ、２１６ｂ、２１６ｃ  バス切替デバイス
２２６  カード起動管理部
２２７  ＰＣ
３０１  リトライ／スキップ／縮退判定部
３０２  障害監視部
３０３  判定回路
３０４  リトライ回数フラグ
３０５  起動フラグ
３０６  メモリ制御部Ｉ／Ｆ
３０７  バスデバイス制御部Ｉ／Ｆ
４０１  Ｗｒｉｔｅデータ用バッファ
４０２  照合回路
４０３  Ｒｅａｄデータ用バッファ
４０６  メモリ制御信号生成部
５０１  判定回路
【図１】
0005034979.tif 000002
【図２】
0005034979.tif 000003
【図３】
0005034979.tif 000004
【図４】
0005034979.tif 000005
【図５】
0005034979.tif 000006
【図６】
0005034979.tif 000007
【図７】
0005034979.tif 000008
【図８】
0005034979.tif 000009
【図９】
0005034979.tif 000010
【図１０】
0005034979.tif 000011
【図１１】
0005034979.tif 000012