(57)【要約】      （修正有）【課題】簡易な構成で、電子機器を起動するための要求変更に柔軟に対応し得る起動装置を実現する。【解決手段】電子機器を起動させるための起動処理を実行する起動装置１において、外部から供給されるプログラムを記憶するＲＡＭ３と、起動装置１自身を起動させるブートプログラムＢＰを記憶するための不揮発性メモリ４と、外部から供給される命令に応じてＲＡＭ３に記憶された書込プログラムＷＰを実行し、ＲＡＭ３に記憶されたブートプログラムＢＰを不揮発性メモリ４に転送するＣＰＵ２とを起動装置１に設けた。【選択図】図１
2007034695.tif 000002
【特許請求の範囲】
【請求項１】
電子機器を起動させるための起動処理を実行する起動装置において、
外部から供給されるプログラムを記憶する第１の記憶手段と、
上記起動装置自身を起動させる起動プログラムを記憶するための第２の記憶手段と、
外部から供給される命令に応じて上記第１の記憶手段に記憶された転送プログラムを実行し、当該第１の記憶手段に記憶された上記起動プログラムを上記第２の記憶手段に転送して書き込む制御手段と
を具えることを特徴とする起動装置。
【請求項２】
上記第２の記憶手段はＮＡＮＤ型フラッシュメモリである
ことを特徴とする請求項１に記載の起動装置。
【請求項３】
上記第２の記憶手段は、上記起動プログラムの他に上記起動装置の基本プログラムを記憶している
ことを特徴とする請求項１に記載の起動装置。
【請求項４】
電子機器を起動させるための起動処理を実行する起動装置に対し、当該起動装置自身を起動させる起動プログラムを転送するプログラム転送装置において、
上記起動装置に設けられた第１の記憶手段に対し、上記起動プログラム及び転送プログラムを転送して記憶させる第１の転送手段と、
上記第１の記憶手段に記憶された上記転送プログラムを上記起動装置に実行させて、上記起動プログラムを上記第１の記憶手段から読み出して上記起動装置に設けられた第２の記憶手段に転送して書き込ませる第２の転送手段と
を具えることを特徴とするプログラム転送装置。
【請求項５】
電子機器を起動させるための起動処理を実行する起動装置に対し、当該起動装置自身を起動させる起動プログラムを転送するプログラム転送方法において、
上記起動装置に設けられた第１の記憶手段に対し、上記起動プログラム及び転送プログラムを転送して記憶させる第１の転送ステップと、
上記第１の記憶手段に記憶された上記転送プログラムを実行させて、上記起動プログラムを上記第１の記憶手段から読み出して上記起動装置に設けられた第２の記憶手段に転送して書き込ませる第２の転送ステップと
を具えることを特徴とするプログラム転送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は起動装置、プログラム転送装置及びプログラム転送方法に関し、例えば電源投入時に電子機器を起動する起動装置に適用して好適なものである。
【背景技術】
【０００２】
従来、セットトップボックスやハードディスクレコーダ等の電子機器は、当該電子機器に搭載されている起動装置がＲＯＭ（Read Only Memory）に記憶された基本プログラムをＲＡＭ（Random Access Memory）上に読み出すことにより起動し、当該基本プログラムに従って各種動作を実行するようになされている。
【０００３】
また近年では、ＲＯＭに比べて記憶容量が大きく且つ安価な不揮発性メモリ（例えば、ＮＡＮＤ型フラッシュメモリ）に基本プログラムを記憶しておくとともに、基本プログラムに先立って実行され当該基本プログラムを不揮発性メモリからＲＡＭに読み出すブートプログラムのみをＲＯＭに記憶しておくようになされた起動装置もある（例えば、特許文献１参照）。
【０００４】
ＲＯＭの記憶内容は書き換え不能であるのに対し、不揮発性メモリはその記憶内容を随時変更できるため、電子機器に改良が施された等の理由で基本プログラムを変更する必要が生じた場合でも容易に対応することができる。
【特許文献１】特開２００４−３５５５６０公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ここで、従来ＲＯＭに記憶していたブートプログラムを、基本プログラムとともにＮＡＮＤ型フラッシュメモリ等の不揮発性メモリに記憶するようにすれば、当該ＲＯＭを廃して起動装置の構成を簡素化することができるとともに、ブートプログラムの変更にも容易に対応できると考えられる。
【０００６】
ＮＡＮＤ型フラッシュメモリには、その構造上、データを正常に読み書きできない不良ブロックを発生する可能性がある。そして上述した基本プログラムは、この不良ブロックを避けてＮＡＮＤ型フラッシュメモリに記憶（書き込み）される必要がある。
【０００７】
ところが、ＮＡＮＤ型フラッシュメモリの不良ブロックは個々のメモリ毎にその位置が異なるため、当該ＮＡＮＤ型フラッシュメモリの製造時や出荷時において、一律に基本プログラムを書き込んでおくことはできないという問題があった。
【０００８】
本発明は以上の点を考慮してなされたもので、簡易な構成で、電子機器を起動するための要求変更に柔軟に対応し得る起動装置、及びこれに対するプログラム転送装置及びプログラム転送方法を提案しようとするものである。
【課題を解決するための手段】
【０００９】
かかる課題を解決するため本発明においては、電子機器を起動させるための起動処理を実行する起動装置において、外部から供給されるプログラムを記憶する第１の記憶手段と、起動装置自身を起動させる起動プログラムを記憶するための第２の記憶手段と、外部から供給される命令に応じて第１の記憶手段に記憶された転送プログラムを実行し、当該第１の記憶手段に記憶された起動プログラムを上記第２の記憶手段に転送する制御手段と  を起動装置に設けた。
【００１０】
転送プログラム及び起動プログラムを第１の記憶手段に記憶させた後、転送プログラムを外部から起動し、当該転送プログラムを実行する制御手段によって起動プログラムを第２の記憶手段に書き込むようにしたことにより、簡易な構成で、電子機器を起動するための要求変更に柔軟に対応することができる。
【００１１】
また本発明においては、電子機器を起動させるための起動処理を実行する起動装置に対し、当該起動装置自身を起動させる起動プログラムを転送するプログラム転送装置において、起動装置に設けられた第１の記憶手段に対し、起動プログラム及び転送プログラムを転送して記憶させる第１の転送手段と、第１の記憶手段に記憶された転送プログラムを起動装置に実行させて、起動プログラムを第１の記憶手段から読み出して起動装置に設けられた第２の記憶手段に転送して書き込ませる第２の転送手段とをプログラム転送装置に設けた。
【００１２】
転送プログラム及び起動プログラムを第１の記憶手段に記憶させた後、転送プログラムをプログラム転送装置から起動し、当該転送プログラムによって起動プログラムを第２の記憶手段に書き込むようにしたことにより、簡易な構成で、電子機器を起動するための要求変更に柔軟に対応することができる。
【００１３】
また本発明においては、電子機器を起動させるための起動処理を実行する起動装置に対し、当該起動装置自身を起動させる起動プログラムを転送するプログラム転送方法において、起動装置に設けられた第１の記憶手段に対し、起動プログラム及び転送プログラムを転送して記憶させる第１の転送ステップと、第１の記憶手段に記憶された転送プログラムを起動装置に実行させて、起動プログラムを第１の記憶手段から読み出して起動装置に設けられた第２の記憶手段に転送して書き込ませる第２の転送ステップとを設けた。
【００１４】
転送プログラム及び起動プログラムを第１の記憶手段に記憶させた後、転送プログラムをプログラム転送装置から起動し、当該転送プログラムによって起動プログラムを第２の記憶手段に書き込むようにしたことにより、簡易な構成で、電子機器を起動するための要求変更に柔軟に対応することができる。
【発明の効果】
【００１５】
本発明によれば、起動装置自身を起動するための起動プログラム及び転送プログラムを第１の記憶手段に記憶させた後、当該転送プログラムを外部から起動させ、当該転送プログラムを実行する制御手段によって起動プログラムを第２の記憶手段に書き込むようにしたことにより、簡易な構成で、電子機器を起動するための要求変更に柔軟に対応し得る起動装置、及びこれに対するプログラム転送装置及びプログラム転送方法を実現することができる。
【発明を実施するための最良の形態】
【００１６】
以下、図面について、本発明の一実施の形態を詳述する。
【００１７】
（１）起動装置の構成
図１において、１は全体として本発明を適用した起動装置を示し、ＣＰＵ２に対し、ＲＡＭ３とＮＡＮＤ型フラッシュメモリでなる不揮発性メモリ４とが接続されて構成されている。
【００１８】
第２の記憶手段としての不揮発性メモリ４には、ブートプログラムＢＰ及び基本プログラムＭＰが格納されている。起動時においてＣＰＵ２は、まず不揮発性メモリ４からＲＡＭ３にブートプログラムＢＰを読み出し、当該ブートプログラムＢＰに従って起動対象の電子機器（図示せず）を起動させる。続いてＣＰＵ２は、不揮発性メモリ４からＲＡＭ３に基本プログラムＭＰを読み出し、当該基本プログラムＭＰに従って電子機器の各種処理を実行する。
【００１９】
（２）不揮発性メモリに対するプログラムの書き込み
上述したように、不揮発性メモリ４にはブートプログラムＢＰ及び基本プログラムＭＰが記憶されている。不揮発性メモリ４はＮＡＮＤ型フラッシュメモリであり、ＮＡＮＤ型フラッシュメモリには不良ブロックが生じることから、ブートプログラムＢＰ及び基本プログラムＭＰは当該不良ブロックを避けて書き込まれる必要がある。また、不揮発性メモリ４に記憶されたプログラムを読み出して実行するためには、ＣＰＵ２はこの不良ブロックの位置を認識しておく必要がある。
【００２０】
ところが、不良ブロックは不揮発性メモリ４の不特定な位置に発生するため、これらのプログラムを予め不揮発性メモリ４に書き込んでから起動装置１に組み込むようにした場合、ＣＰＵ２が不揮発性メモリ４の不良ブロック位置を認識することができないという問題がある。このため本発明の起動装置１では、その製造時において不揮発性メモリ４を当該起動装置１に組み込んだ後、外部からブートプログラムＢＰ及び基本プログラムＭＰを不揮発性メモリ４に書き込むようにした。
【００２１】
このような不揮発性メモリ４へのプログラム書き込みを行うには、起動装置１の回路基板に専用のプログラム書込冶具を接続し、当該プログラム書込冶具によって不揮発性メモリ４の不良ブロック位置を認識しながらプログラムを書き込んでいくとともに、認識した不良ブロック位置をＣＰＵ２に伝達するようにすることが考えられる。しかしながら、かかる機能を有するプログラム書込冶具は複雑かつ高価であるとともに、プログラム書込冶具を接続するための接続部を回路基板に設ける必要があり、これにより起動装置１自体も複雑化してしまうという問題がある。
【００２２】
また、起動装置１のＣＰＵ２がプログラムを不揮発性メモリ４に書き込むことができれば、上述したプログラム書込冶具は不要になるが、ブートプログラムＢＰが不揮発性メモリ４に記憶されていない状態では、当該起動装置１自身が起動することができないという問題がある。
【００２３】
このため本発明では、起動装置１の製造時において、まず、プログラムを不揮発性メモリ４に書き込む機能のみを有する書込プログラムＷＰを、ブートプログラムＢＰ及び基本プログラムＭＰとともに第１の記憶手段としてのＲＡＭ３に転送する。そして、ＲＡＭ３上の書込プログラムＷＰを外部からＣＰＵ２に強制実行させ、ブートプログラムＢＰ及び基本プログラムＭＰをＲＡＭ３から読み出して不揮発性メモリ４に書き込むようにする。
【００２４】
このようなＲＡＭ３に対するプログラム転送には、ＪＴＡＧ（Joint European Test Action Group）やＥＪＴＡＧ（Enhanced JTAG）のようなバウンダリスキャン方式を適用することができる。ＪＴＡＧは標準的なバウンダリスキャン方式であり、ＣＰＵのデバッグ機能やＲＡＭへのプログラム転送機能を持ち、必要となる回路構成が簡単であるという利点を有するものの、ＲＡＭ上のプログラムを実行させる（実行権限の移動）ことはできない。一方、ＥＪＴＡＧはＪＴＡＧの拡張版であり、ＪＴＡＧの機能に加えてＲＡＭ上プログラムに対する実行権限移動機能を有するものの、回路構成が複雑になることやノイズに弱いという欠点を有している。
【００２５】
このため本発明の起動装置１では、上述したＪＴＡＧを用いてＲＡＭ３に対する書込プログラムＷＰ、ブートプログラムＢＰ及び基本プログラムＭＰの転送を行うとともに、ＮＭＩ（Non-Maskable Interrupt)と呼ばれる割込命令を制御手段としてのＣＰＵ２に与えることにより、ＲＡＭ３上の書込プログラムＷＰをＣＰＵ２に強制実行させるようにした。ＮＭＩはマスク不可能な割込命令であり、ＣＰＵ２は、ブートプログラムＢＰが未動作の状態においても当該ＮＭＩを理解して実行することができる。
【００２６】
図１に示すようにＣＰＵ２には、ＪＴＡＧ回路が内蔵されているとともに、ＪＴＡＧに対応したＴＡＰ（Test Access Port）と呼ばれるテスト用外部端子とＮＭＩ端子とが設けられている。そして、起動装置１の製造時において、ＴＡＰ端子及びＮＭＩ端子に対してプログラム転送装置１０を接続し、当該プログラム転送装置１０から書込プログラムＷＰ、ブートプログラムＢＰ及び基本プログラムＭＰを起動装置１に転送する。
【００２７】
次に、起動装置１の製造時においてブートプログラムＢＰを転送し不揮発性メモリ４に書き込んで実行可能にする際の処理手順をフローチャートを用いて説明する。
【００２８】
起動装置１の組立が完了した後、ＣＰＵ２にプログラム転送装置１０が接続されると、図２に示すプログラム転送処理手順ＲＴ１が開始される。この開始時において、起動装置１には電源が投入されるとともに、ＲＡＭ３及び不揮発性メモリ４はいずれも空の状態にある。
【００２９】
ステップＳＰ１において、第１の転送手段としてのプログラム転送装置１０は、図３（Ａ）に示すように、ＴＡＰ端子を介して書込プログラムＷＰ及びブートプログラムＢＰをＲＡＭ３に転送し、次のステップＳＰ２に移る。ステップＳＰ２において、第２の転送手段としてのプログラム転送装置１０は、図３（Ｂ）に示すように、ＲＡＭ３上の書込プログラムＷＰを起動する旨の（すなわち書込プログラムＷＰに実行権限を移動する）ＮＭＩ信号を、ＮＭＩ端子を介してＣＰＵ２に送出する。
【００３０】
次のステップＳＰ３において、起動装置１のＣＰＵ２はＮＭＩ信号に応じて動作し、ＲＡＭ３に格納されている書込プログラムＷＰを起動し、次のステップＳＰ４に移る。
【００３１】
ステップＳＰ４において、ＣＰＵ２は書込プログラムＷＰに従い、図４に示すようにＲＡＭ３上のブートプログラムＢＰ及び基本プログラムＭＰを読み出して不揮発性メモリ４に書き込む。このときＣＰＵ２は、不揮発性メモリ４の不良ブロックを検出しその位置を不良位置情報として記憶しながら、当該不良ブロックを避けてブートプログラムＢＰ及び基本プログラムＭＰを書き込んでいく。
【００３２】
かくしてブートプログラムＢＰが起動装置１の不揮発性メモリ４に書き込まれ、これにより起動装置１はブートプログラムＢＰに従って自立起動し得る状態となる。そして、ＣＰＵ２はステップＳＰ５に移ってプログラム転送処理手順を終了する。
【００３３】
（３）動作及び効果
以上の構成において、この起動装置１は、当該起動装置１自身を起動させるためのブートプログラムＢＰ及び基本プログラムＭＰを、共に不揮発性メモリ４に記憶させるようにしたことにより、従来ブートプログラムＢＰを記憶していたＲＯＭを廃して当該起動装置１全体の構成を簡素化するとともに、ブートプログラムＢＰ及び基本プログラムＭＰを容易に変更可能にした。
【００３４】
そして、ブートプログラムＢＰ及び基本プログラムＭＰを不揮発性メモリ４に書き込む際には、ＪＴＡＧの機能を用いて、ブートプログラムＢＰ及び基本プログラムＭＰを書込プログラムＷＰと共に一旦ＲＡＭ３に格納した後、当該書込プログラムＷＰをＮＭＩ信号によって外部から強制起動させ、ＣＰＵ２が書込プログラムＷＰに従って、ブートプログラムＢＰ及び基本プログラムＭＰをＲＡＭ３から読み出して不揮発性メモリ４に書き込むようにした。
【００３５】
これにより起動装置１は、不揮発性メモリ４に不特定に発生する不良ブロックをＣＰＵ２で認識してその位置を不良位置情報として記憶しながら、当該不良ブロックを避けてブートプログラムＢＰ及び基本プログラムＭＰを書き込むことができるとともに、当該不良位置情報に基づいてブートプログラムＢＰ及び基本プログラムＭＰを正確に読み出して実行することができる。
【００３６】
以上の構成によれば、ＲＡＭ３に転送した書込プログラムＷＰを外部から起動させてブートプログラムＢＰ及び基本プログラムＭＰをＲＡＭ３から不揮発性メモリ４に書き込ませるようにしたことにより、簡易な構成で、起動装置１のブートプログラムＢＰを起動装置１の外部から不揮発性メモリ４に書き込むことができる。
【００３７】
（４）他の実施の形態
なお、上述の実施の形態においては、ブートプログラムＢＰ及び基本プログラムＭＰを共にＲＡＭ３に転送しておき、書込プログラムＷＰによってこれらを同時に不揮発性メモリ４に書き込むようにしたが、本発明はこれに限らず、起動装置１に自立起動させるに不可欠なブートプログラムＢＰのみをＲＡＭ３に転送するとともに書込プログラムＷＰによって不揮発性メモリ４に書き込むようにし、基本プログラムＭＰについては、この後に書き込むようにしてもよい。
【００３８】
また上述の実施の形態においては、ブートプログラムＢＰ及び基本プログラムＭＰを共にＲＡＭ３に転送しておき、書込プログラムＷＰによってこれらを同時に不揮発性メモリ４に書き込むようにしたが、本発明はこれに限らず、起動装置１に自立起動させるに不可欠なブートプログラムＢＰのみをＲＡＭ３に転送するとともに書込プログラムＷＰによって不揮発性メモリ４に書き込むようにし、基本プログラムＭＰについてはこの後に書き込むようにしてもよい。
【００３９】
また上述の実施の形態においては、不揮発性メモリ４としてＮＡＮＤ型フラッシュメモリを用いた場合について述べたが、本発明はこれに限らず、ＮＯＲ型フラッシュメモリ等種々の不揮発性メモリを用いてもよい。
【００４０】
さらに上述の実施の形態においては、電子機器を起動させるために必要な情報としてブートプログラムＢＰを対象とするようにした場合について述べたが、本発明はこれに限らず、電子機器を起動させるために必要な個人情報、内部情報等のその他種々の情報を対象とするようにしても良い。
【図面の簡単な説明】
【００４１】
【図１】本発明による起動装置の構成を示すブロック図である。
【図２】プログラム転送処理手順を示すフローチャートである。
【図３】プログラムの書き込み処理の説明に供する略線図である。
【図４】プログラムの書き込み処理の説明に供する略線図である。
【符号の説明】
【００４２】
１……起動装置、２……ＣＰＵ、３……ＲＡＭ、４……不揮発性メモリ、１０……プログラム転送装置。
【図１】
2007034695.tif 000003
【図２】
2007034695.tif 000004
【図３】
2007034695.tif 000005
【図４】
2007034695.tif 000006