(57)【要約】【課題】本発明は、ブートコードが格納されるＲＯＭを削除することを第１の目的とし、更に、ＲＯＭを削除することによるコスト削減効果を最大限に引き出すことにある。【解決手段】本発明に係るブートコードを用いた起動システム１０は、ブートコードが格納された外部メモリ１２と、外部メモリ１２に接続され、外部メモリ１２から転送されたブートコードを蓄積するバッファ１４と、外部メモリ１２からバッファ１４にブートコードの転送を指示するＤＭＡコントローラ１８と、バッファ１４に接続され、バッファ１４に蓄積されたブートコードをＣＰＵ２０にマッピングするマッピング回路２２とを含んで構成される。【選択図】  図１
2004334486.tif 000002
【特許請求の範囲】
【請求項１】
ブートコードが格納された外部メモリと、
前記外部メモリに接続され、該外部メモリから転送される前記ブートコードを蓄積するバッファと、
前記外部メモリから前記バッファに、前記ブートコードの転送を指示するＤＭＡコントローラと、
前記バッファに接続され、該バッファに蓄積された前記ブートコードを中央演算装置にマッピングするマッピング回路と、
を含む、ブートコードを用いた起動システム。
【請求項２】
ブートコードが格納された外部メモリと、
前記外部メモリに接続され、該外部メモリから転送される前記ブートコードを蓄積するバッファと、
前記外部メモリから前記バッファに、前記ブートコードの転送を指示するＤＭＡコントローラと、
前記外部メモリと前記バッファとの間に設けられ、前記ＤＭＡコントローラからの指示を受けて、該外部メモリから該バッファに前記ブートコードを転送する外部メモリ制御装置と、
前記バッファに接続され、該バッファに蓄積された前記ブートコードを中央演算装置にマッピングするマッピング回路と、
前記中央演算装置によるランダムアクセスが可能であり、前記外部メモリから前記バッファを介して、オペレーティングシステムが転送されるメインメモリと、
を含む、ブートコードを用いた起動システム。
【請求項３】
前記バッファのデータ蓄積容量が、前記ブートコードのデータ量に応じて設定されることを含む、請求項１又は請求項２に記載のブートコードを用いた起動システム。
【請求項４】
前記マッピング回路が、論理回路の組み合わせで形成される構成を含む、請求項１又は請求項２に記載のブートコードを用いた起動システム。
【請求項５】
前記バッファ、前記ＤＭＡコントローラ、前記マッピング回路が１個のチップに搭載される構成を含む、請求項４に記載のブートコードを用いた起動システム。
【請求項６】
電源が投入され、又はリセット命令が発せられて、電源電圧及びシステムクロックが安定した段階で、システムの初期化を開始するステップと、
ＤＭＡコントローラが、外部メモリからバッファにブートコードの転送を指示するステップと、
外部メモリ制御装置が、前記ＤＭＡコントローラの指示を受けて、前記外部メモリに格納されている前記ブートコードを転送し、前記バッファに蓄積するステップと、
中央演算装置が前記ブートコードを読みに来たならば、マッピング回路が前記バッファに蓄積されている前記ブートコードの有無を判断するステップと、
前記バッファに前記ブートコードが存在する場合には、該ブートコードを前記中央演算装置が実行するステップと、
前記バッファに前記ブートコードが存在しない場合には、前記外部メモリ制御装置が、前記ＤＭＡコントローラの指示を受けて、前記外部メモリから前記バッファに該ブートコードを転送し、該ブートコードを前記中央演算装置が実行するステップと、
を含む、ブートコードを用いた起動方法。
【請求項７】
電源が投入され、又はリセット命令が発せられて、電源電圧及びシステムクロックが安定した段階で、システムの初期化を開始するステップと、
ＤＭＡコントローラが、外部メモリからバッファにブートコードの転送を指示するステップと、
外部メモリ制御装置が、前記ＤＭＡコントローラの指示を受けて、前記外部メモリに格納されている前記ブートコードを転送し、前記バッファに蓄積するステップと、
中央演算装置が前記ブートコードを読みに来たならば、マッピング回路が前記バッファに蓄積されている前記ブートコードの有無を判断するステップと、
前記バッファに前記ブートコードが存在する場合には、該ブートコードを前記中央演算装置が実行するステップと、
前記バッファに前記ブートコードが存在しない場合には、前記外部メモリ制御装置が、前記ＤＭＡコントローラの指示を受けて、前記外部メモリから前記バッファに該ブートコードを転送し、該ブートコードを前記中央演算装置が実行するステップと、
オペレーティングシステムを前記外部メモリから、前記バッファを介してメインメモリに転送するステップと、
を含む、ブートコードを用いた起動方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ブートコードが格納されるべきＲＯＭを設けずに、ブート作業を行うブートコードを用いたＰＣ等のシステムの起動システム、及び起動方法に関する。
【０００２】
【従来の技術】
コンピュータやゲーム機等のシステムにおいては、電源投入時に実行されるソフトウエア（以下ブートコードという）が格納されているＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）が実装されている。このＲＯＭはバス幅が中央演算装置（以下、ＣＰＵ：Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔと略す）が本来持っているバス幅より狭く、アクセス速度も遅い。よって、多くのシステムにおいては、ブートコードを高速アクセスが可能なＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）上に転送してから実行している。
【０００３】
詳しくは、図３で示すように、電源投入直後にＣＰＵ２０は、マザーボードに実装されているフラッシュＲＯＭ２６のアドレスにジャンプしてフラッシュＲＯＭ２６の内容を実行する。そして、ブートコードをフラッシュＲＯＭ２６からメインメモリ２４に転送し、メインメモリ２４上のブートコードをＣＰＵ２０が実行する。このブートコードを実行することで、各種のコントローラ、二次記憶装置（フロッピー（登録商標）ディスクドライブ、ＨＤＤ、ＣＤ−ＲＯＭドライブ等）等の初期化作業、及びオペレーティングシステム（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）のメインメモリへの転送が行われる。このように、電源を切断しても内部データを保存する機能を有するフラッシュＲＯＭ２６は、システムを起動させるための必須の構成要素である。
【０００４】
ところで、製品のコストダウンを図るためには、部品点数を減らす手法を用いることが知られている。コンピュータやゲーム機等のシステムにおいても、この手法が用いられているが、ＲＯＭ２６は上述のとおり必須の構成要素であるため、ＲＯＭ２６を削除することは検討されていなかった。そこでこのことに着目し、ブートコードが格納されるＲＯＭ２６を削除することにより、製品の低コスト化を図ることを目的とした発明が出願されている（特許文献１、特許文献２参照）。
【０００５】
【特許文献１】特開平１１−１４３７１８号公報
【特許文献２】特開２０００−１１２７６２号公報
【０００６】
【発明が解決しようとする課題】
特許文献１の発明においては、ＢＩＯＳ（本発明におけるブートコードと同義）の格納専用フラッシュＲＯＭを使用せず、小型コンピュータの装置構成を簡単化し、コストの削減を図っている。ＢＩＯＳは、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）固定記憶装置の所定の領域に格納され、ＨＤＤコントローラが、ＨＤＤに格納されているＢＩＯＳをメモリコントローラの制御下でメモリ上にマッピングしている。
【０００７】
この特許文献１の発明においては、ＨＤＤに格納されたＢＩＯＳをメモリコントローラの制御の下でＲＡＭに転送した後に、ＲＡＭ上でＢＩＯＳを実行している。つまり、メモリコントローラにはＢＩＯＳの転送のためのプログラムが格納されたメモリと演算装置が設けられている。これはメモリコントローラに通常の処理以外の処理を行わせることになる。よって、高い処理能力のメモリコントローラが必要となることから、ＲＯＭを削除することによりコストの削減を図ったとしても、メモリコントローラのコストが増すことになる。ゆえに、ＲＯＭを削除する効果が薄れてしまう。
【０００８】
特許文献２の発明においては、磁気ディスク装置内の専用の記憶領域にシステムＢＩＯＳを格納するとともに、このシステムＢＩＯＳをシステム起動時に読み出して起動する機構を設けることにより、システムＢＩＯＳを格納するためのフラッシュＲＯＭを削除している。
【０００９】
この特許文献２の発明においては、ハードディスク装置の内部に、システム起動時にＢＩＯＳを読み出して起動する機構であるマイコンを設けている。これも上述の特許文献１の発明と同様に、ＲＯＭを削除することによりコストの削減を図ったとしても、マイコンを設けることによるコストが増すことになる。ゆえに、ＲＯＭを削除する効果が薄れてしまう。
【００１０】
本発明の目的は、ブートコードが格納されるＲＯＭを削除することを第１の目的とし、更に、ＲＯＭを削除することによるコスト削減効果を最大限に引き出すことにある。
【００１１】
【課題を解決するための手段】
本発明に係るブートコードを用いた起動システムは、ブートコードが格納された外部メモリと、前記外部メモリに接続され、該外部メモリから転送される前記ブートコードを蓄積するバッファと、前記外部メモリから前記バッファに前記ブートコードの転送を指示するＤＭＡコントローラと、前記バッファに接続され、該バッファに蓄積された前記ブートコードを中央演算装置にマッピングするマッピング回路とを備える。
【００１２】
更に、本発明に係るブートコードを用いた起動方法は、電源が投入され、又はリセット命令が発せられて、電源電圧及びシステムクロックが安定した段階で、システムの初期化を開始するステップと、ＤＭＡコントローラが、外部メモリからバッファにブートコードの転送を指示するステップと、外部メモリ制御装置が、前記ＤＭＡコントローラの指示を受けて、外部メモリに格納されている前記ブートコードを転送し、前記バッファに蓄積するステップと、中央演算装置が前記ブートコードを読みに来たならば、マッピング回路が前記バッファに蓄積されている前記ブートコードの有無を判断するステップと、前記バッファに前記ブートコードが存在する場合には、該ブートコードを前記中央演算装置が実行するステップと、前記バッファに前記ブートコードが存在しない場合には、前記外部メモリ制御装置が、前記ＤＭＡコントローラの指示を受けて、前記外部メモリから前記バッファに該ブートコードを転送し、該ブートコードを前記中央演算装置が実行するステップとを備えるものである。
【００１３】
【発明の実施の形態】
本発明の実施の形態に係るブートコードを用いた起動システム１０を図面に基づき説明する。以下で、従来例と重複する構成要素については、同符号を付してその詳細な図示又は説明を省略する。
【００１４】
本発明に係るブートコードを用いた起動システム１０は、ブートコードが格納された外部メモリ１２と、外部メモリ１２に接続され、外部メモリ１２から転送されるブートコードを蓄積するバッファ１４と、外部メモリ１２からバッファ１４にブートコードの転送を指示するＤＭＡコントローラ１８と、外部メモリ１２とバッファ１４との間に設けられ、外部メモリ１２を制御する外部メモリ制御装置１６と、バッファ１４に接続され、バッファ１４に蓄積されたブートコードをＣＰＵ２０にマッピングするマッピング回路２２と、ＣＰＵ２０によるランダムアクセスが可能であり、バッファ１４を介してオペレーティングシステムが転送されるメインメモリ２４とを含んで構成される。
【００１５】
本発明は、ブートコートが格納されるべきＲＯＭを削除するという目的を達成するために、ブートコードを外部メモリ１２に格納するという構成を採用している。更に、ＲＯＭを削除することによるコスト削減効果を最大限に引き出すという目的を達成するために、マッピング回路２２をバッファ１４に接続し、ＤＭＡコントローラ１８が外部メモリ制御装置１６に発するコマンドを追加し、外部メモリ制御装置１６がブートコードの転送を行う構成を採用している。
【００１６】
外部メモリ１２は、例えばマザーボードに設けられたＩ／Ｏポートを介して接続されたハードディスクが用いられる。この外部メモリ１２の所定領域に、システムを起動させるためのブートコードが格納されている。この外部メモリ１２は、フロッピー（登録商標）ディスク、半導体ディスク（ＮＡＮＤ型ＦＬＡＳＨに代表される不揮発性のメモリ等）を用いることも可能である。
【００１７】
バッファ１４とは、ＤＭＡ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）転送を行うデバイスを構成するメモリのことを示す。ＤＭＡ転送とは、Ｉ／Ｏポートに接続された外部メモリ１２からデータを、ＣＰＵ２０を介さずに後述するメインメモリ２４に直接転送する機能を示す。このバッファ１４は、通常ならば、ＣＰＵ２０を介さずにＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）でデータをメインメモリ２４に転送している。本発明は、このバッファ１４を、ＣＰＵ２０がランダムアクセス可能なメモリとして使用するところに特徴がある。
【００１８】
ＤＭＡコントローラ１８は、通常であるならばＤＭＡ転送を制御する機能を果たす。本発明においては、この通常の機能に加え、外部メモリ１２の所定領域に格納されているブートコードを、バッファ１４に転送するコマンドを外部メモリ制御装置１６に発する機能を有する。
【００１９】
また、ＤＭＡコントローラ１８は、ＣＰＵ２０がバッファ１４でブートコードを実行している間は、通常のＤＭＡの動作を行わないよう制御する機能を有する。これにより、ＣＰＵ２０がバッファ１４においてブートコードを実行している間は、バッファ１４はＣＰＵ２０によるランダムアクセス可能なメモリとして機能する。
【００２０】
外部メモリ制御装置１６は、ＤＭＡコントローラ１８の指示を受けて、外部メモリ１２に格納されているブートコードをバッファ１４に転送するシーケンス回路により構成されている。このシーケンス回路により、外部メモリ１２に格納されているブートコードが、決められた順番で次々とバッファ１４に蓄積される。このシーケンス回路は論理回路の組み合わせで構成されている。
【００２１】
ＣＰＵ２０はシステム全体を制御する機能を有する。本発明においては、バッファ１４に転送されたブートコードをＣＰＵ２０が実行することにより、各種のコントローラを初期化し、ハードウエアコンポーネント（例えば、メモリ、キーボード、ビデオボード、ディスクドライブ等）を認識して初期化する作業等が行われる。
【００２２】
マッピング回路２２は、バッファ１４に蓄積されたブートコードをＣＰＵ２０にマッピングする役割を果たす。バッファ１４は、本来であるならＤＭＡ転送におけるＦＩＦＯに用いられるメモリ領域である。ＦＩＦＯ時に使用されるカウンターを用いないことにより、ＦＩＦＯに用いられるメモリ領域をＣＰＵ２０がランダムアクセス可能なメモリとして使用することができる。このマッピング回路２２は論理回路の組み合わせで構成されている。このマッピング回路２２は、バッファ１４と同じチップ内に設けることもできる。このマッピング回路２２により、ＣＰＵ２０はバッファ１４に蓄積されているブートコードをランダムアクセスにより実行することができる。
【００２３】
このマッピング回路２２を設けることにより、ＣＰＵ２０がブートコードを実行している間のみ、ＣＰＵ２０がバッファ１４をランダムアクセス可能なメモリとして使用することができる。ブートコードの実行が終了した後には、ＣＰＵ２０の実行プログラムがオペレーティングシステムに移行することにより、バッファ１４は、ＤＭＡ転送用のメモリとして使用されることになる。
【００２４】
マッピング回路２２は、論理回路の組み合わせで構成されることによりキャッシュコントロール機能を呈することができる。このキャッシュコントロール機能は、ソフトウエアにより行われるものではなく、組み合わされた論理回路であるハードウエアにより実現されている。バッファ１４にＣＰＵ２０が実行すべきブートコードが存在したならば、ＣＰＵ２０がそのブートコードをバッファ１４で実行している。もし、バッファ１４にＣＰＵ２０が実行すべきブートコードが存在しない場合には、ＤＭＡコントローラ１８が外部メモリ１２にブートコードを読みに行き、外部メモリ制御装置１６が外部メモリ１２に格納されているブートコードをバッファ１４に転送し、ＣＰＵ２０がブートコードを実行している。このブートコードの有無の確認をマッピング回路２２のハードウエアにて行っている。
【００２５】
このマッピング回路２２がキャッシュコントロール機能を呈することにより、バッファ１４の記憶容量がブートコード全体のデータ量よりも少ない場合であっても、バッファ１４においてブートコードを実行することができる。以下で理由を説明する。ブートコードは複数のコードにより構成されている。例えば、各種のコントローラを初期化するコードやオペレーティングシステムを転送するためのコード等である。本発明では、バッファ１４の記憶容量は、ブートコードを構成する複数のコードにおける各々のデータ量に応じて設定されている。これは、バッファ１４の記憶容量が、すべてのコードの実行を確保できる程度の記憶容量に設定されていることを示す。
【００２６】
バッファ１４にＣＰＵ２０が読むべきブートコードが存在していれば、ＣＰＵ２０はそのブートコードを実行することができる。ＣＰＵ２０が読むべきブートコードが存在しない場合には、ＤＭＡコントローラ１８が外部メモリ制御装置１６にブートコードの転送を指示し、ＣＰＵ２０がブートコードを実行している。バッファ１４の記憶容量が、ブートコードを実行することができる適度な大きさの記憶容量であるので、ＣＰＵ２０がバッファ１４ですべてのブートコードを実行することができる。
【００２７】
また、本発明におけるブートコードを用いた起動システム１０では、マッピング回路２２をバッファ１４とＣＰＵ２０との間に設けており、マッピング回路２２をメインメモリ２４とＣＰＵ２０との間に設けていない。その理由は、取り替え、増設が可能なメインメモリ２４に、論理回路の組み合わせで形成されたマッピング回路２２を接続するためには、メインメモリ１４の設定が複雑になり、マッピング回路２２が大きくなる。マッピング回路２２が複雑で大きなものとなると、ＲＯＭを削除することによるコスト削減効果が薄れてしまうからである。
【００２８】
メインメモリ２４は、ランダムアクセスが可能なメモリで構成されている。このメインメモリ２４はバスに接続されることで、ＣＰＵ２０、バッファ１４等と接続されている。このメインメモリ２４には、外部メモリ１２に格納されているオペレーティングシステムが、バッファ１４を介して格納される。
【００２９】
本発明におけるブートコードを用いた起動システム１０では、外部メモリ制御装置１６に設けられたシーケンス回路によって、外部メモリ１２に格納されているブートコードをバッファ１４に転送している。このシーケンス回路は論理回路の組み合わせで形成されており、特別なソフトウエアにより転送を行うものではない。また、マッピング回路２２も論理回路の組み合わせで形成されており、特別なソフトウエアにより転送を行うものではない。よって、ソフトウエアを格納するメモリ等が必要ないことから、ＲＯＭを削除することによる効果を最大限に引き出すことができる。
【００３０】
本発明に係るブートコードを用いた起動方法は、電源が投入され、又はリセット命令が発せられて、電源電圧及びシステムクロックが安定した段階で、システムの初期化を開始するステップ（ステップ１）と、ＤＭＡコントローラ１８が、外部メモリ１２からバッファ１４にブートコードの転送を指示するステップ（ステップ２）と、外部メモリ制御装置１６が、外部メモリ１２に格納されているブートコードを転送し、バッファ１４に蓄積するステップ（ステップ３）と、ＣＰＵ２０がブートコードを読みに来たならば、マッピング回路２２がバッファ１４に蓄積されているブートコードの有無を判断するステップ（ステップ４）と、バッファ１４にブートコードが存在する場合には、ブートコードをＣＰＵ２０が実行するステップ（ステップ５）と、バッファ１４にブートコードが存在しない場合には、外部メモリ制御装置１６が、ＤＭＡコントローラ１８の指示を受けて、外部メモリ１２からバッファ１４にブートコードを転送し、ブートコードをＣＰＵ２０が実行するステップ（ステップ６）と、オペレーティングシステムを外部メモリ１２から、バッファ１４を介してメインメモリ２４に転送するステップ（ステップ７）とを含んで構成される。
【００３１】
ステップ１においては、コンピュータ等のシステムにおいて、電源が投入されるか、又はリセットボタンを押すことによりリセット命令が発せられたならば、マザーボードに供給される電源電圧、及びシステムクロック信号が安定した後に、システムの初期化を開始している。これにより、マザーボードに搭載された各種コントローラの初期化や、ハードウエアコンポーネントの認識、初期化等が開始される。
【００３２】
ステップ２においては、システムの初期化が開始されたならば、ＤＭＡコントローラ１８が外部メモリ１２に格納されているブートコードを、バッファ１４に転送するコマンドを外部メモリ制御装置１６に発している。例えばブートコードは、ＩＰＬ（Ｉｎｉｔｉａｌ  Ｐｒｏｇｒａｍ  Ｌｏａｄｅｒ）コードとＰＯＳＴ（Ｐｏｗｅｒ  Ｏｎ  Ｓｅｌｆ  Ｔｅｓｔ）コードにより構成されている。ＩＰＬコードは、主に転送を目的としたコードであり、オペレーティングシステムを転送するコードにより構成されている。ＰＯＳＴコードはマザーボードに接続されたハードウエアコンポーネント（例えば、メモリ、キーボード、ビデオボード、ディスクドライブ等）を検出して、認識し、各種コントローラの初期化等を実行するコードである。ＰＯＳＴコードが実行された後に、ＩＰＬコードが実行されるように、外部メモリ１２にブートコードが格納されている。ＤＭＡコントローラ１８が外部メモリ制御装置１６にコマンドを発行することにより、外部メモリ１２に格納されているブートコードが順番にバッファ１４に転送される。
【００３３】
ステップ３においては、外部メモリ１２に格納されているブートコードを、外部メモリ制御回路１６を用いてバッファ１４に蓄積している。言い換えると、外部メモリ１２に格納されているブートコードの内、ＰＯＳＴコードとＩＰＬコードがシーケンス回路を用いた転送によりバッファ１４に順番に転送され、蓄積される。ここでいう、シーケンス回路を用いた転送とは、ソフトウエアを用いず、組み合わされた論理回路によって外部メモリ１２からバッファ１４に転送することをいう。
【００３４】
ステップ４においては、ブートコードがバッファ１４に蓄積され始めたならば、ＣＰＵ２０がブートコードを実行するため、マッピング回路２２を介してバッファ１４を読みに行く。論理回路の組み合わせで構成されているマッピング回路２２は、ＣＰＵ２０が読むべきブートコードがバッファ１４に存在しているかの有無を判断する。
【００３５】
ステップ５においては、ステップ４における判断で、ＣＰＵ２０が読むべきブートコードがバッファ１４に存在したならば、ＣＰＵ２０は、そのブートコードをバッファ１４上で実行する。そのブートコードがＰＯＳＴコードであれば、何らかのデバイスの初期化等が行われる。
【００３６】
ステップ６においては、ステップ４における判断で、ＣＰＵ２０が読むべきブートコードがバッファ１４に存在しない場合には、ＤＭＡコントローラ１８は、外部メモリ１２に読むべきブートコードを読みに行く。そして、外部メモリ制御装置１６が、その読むべきブートコードを外部メモリ１２からバッファ１４に転送し、ＣＰＵ２０は読むべきブートコードをバッファ１４において実行する。読むべきブートコードがＰＯＳＴコードであれば、何らかのデバイスの初期化等が行われる。
【００３７】
ステップ７においては、ステップ５、又はステップ６においてハードウエアコンポーネントの初期化が終了後に、バッファ１４に蓄積されたＩＰＬコードが、オペレーティングシステムをメインメモリ２４に転送している。つまり、ＣＰＵ２０がバッファ１４に転送されたブートコードのＩＰＬコードを実行することにより、外部メモリ１２に格納されているオペレーティングシステムが、メインメモリ２４に転送されることになる。
【００３８】
メインメモリ２４にオペレーティングシステムが転送されると、ＣＰＵ２０は、オペレーティングシステムの実行を開始する。これにより、バッファ１４が初期の機能にセットされ、バッファ１４は、ＦＩＦＯによるＤＭＡ転送に用いられることになる。
【００３９】
ステップ１からステップ７を実行することにより、外部メモリ１２に格納されているブートコードがバッファ１４で実行され、ＣＰＵ２０がオペレーティングシステムを実行するまでのブート作業が行われる。よって、ブートコードが格納されているＲＯＭを削除したとしても、若干の回路追加を行うだけで、ブートコードを実行し、システムを起動することができる。
【００４０】
本発明においては、ブートコードをバッファ１４に転送して、ＣＰＵ２０がバッファ１４でブートコードを実行している。これは、本来、システムが起動するまで使用されないＤＭＡ転送用のバッファ１４を、システムが起動する前にＣＰＵ２０の実行領域として使用することを意味する。これにより、ＲＯＭ２６を削除したとしても、追加する回路を少なくすることができる。
【００４１】
ブートコードが格納されているＲＯＭを削除したとしても、外部メモリ１２にブートコードを格納し、ＤＭＡ転送用のバッファ１４をランダムアクセス可能なメモリとして使用することにより、ＣＰＵ２０がバッファ１４を実行領域として使用してブート作業を行うことができる。
【００４２】
尚、本発明はその趣旨を逸脱しない範囲で当業者の知識に基づき種々なる改良、修正、変形を加えた態様で実施できるものである。
【００４３】
【発明の効果】
本発明に係るブートコードを用いた起動システムによれば、システムを起動させるためのブートコードを外部メモリに格納することにより、ブートコードを格納すべきＲＯＭを削除することができる。
【００４４】
更に、ブートコードを格納すべきＲＯＭを削除することに加え、マッピング回路をバッファに接続し、ＤＭＡコントローラが発するコマンドを追加し、外部メモリ制御装置によりブートコードを転送する構成を採用することで、ＲＯＭを削除することによるコスト削減効果を最大限に引き出すことができる。
【図面の簡単な説明】
【図１】本発明におけるブートコードを用いた起動システムの構成図である。
【図２】本発明におけるブートコードを用いた起動方法のフロー図である。
【図３】従来のブートコードを用いた起動システムの構成図である。
【符号の説明】
１０：起動システム
１２：外部メモリ
１４：バッファ
１６：外部メモリ制御装置
１８：ＤＭＡコントローラ
２０：ＣＰＵ
２２：マッピング回路
２４：メインメモリ
２６：ＲＯＭ
【図１】
2004334486.tif 000003
【図２】
2004334486.tif 000004
【図３】
2004334486.tif 000005