(57)【要約】【課題】起動時にのみ作動する専用のハードウェアを持つことなく容易に複数の起動モードを実現することができ、かつ、様々な外部デバイスからの起動モードを実現可能なマイクロコンピュータを提供すること。【解決手段】本マイクロコンピュータ１０は、複数の外部デバイスにそれぞれ格納された各起動用プログラムに分岐するために各起動用プログラムに対応して用意された前処理プログラムを格納する内蔵ＲＯＭ３０(不揮発性メモリ)と、起動モード設定端子５２(外部端子入力)に基づいて、複数の外部デバイスに格納された各起動用プログラムのいずれか一つを選択する起動用プログラム選択信号を生成するブートアドレスコントロール回路５０(起動用プログラム選択信号生成部)と、リセット時に、起動用プログラム選択信号に基づいて、起動用プログラムに対応づけられた前処理プログラムを実行し、前処理プログラムの実行により分岐した先の起動用プログラムを実行するＣＰＵ２０とを含む。【選択図】図１
2008065549.tif 000002
【特許請求の範囲】
【請求項１】
複数の外部デバイスにそれぞれ格納された各起動用プログラムに分岐するために各起動用プログラムに対応して用意された前処理プログラムを格納する不揮発性メモリと、
外部端子入力に基づいて、前記複数の外部デバイスに格納された各起動用プログラムのいずれか一つを選択する起動用プログラム選択信号を生成する起動用プログラム選択信号生成部と、
リセット時に、前記起動用プログラム選択信号に基づいて、前記起動用プログラムに対応づけられた前処理プログラムを実行し、当該前処理プログラムの実行により分岐した先の起動用プログラムを実行するＣＰＵとを含むことを特徴とするマイクロコンピュータ。
【請求項２】
請求項１において、
前記不揮発性メモリは、少なくとも１つの外部ホストデバイスと少なくとも１つの外部メモリデバイスにそれぞれ格納された各起動用プログラムに分岐するために各起動用プログラムに対応して用意された前処理プログラムを格納することを特徴とするマイクロコンピュータ。
【請求項３】
請求項１又は２において、
前記不揮発性メモリは、少なくとも１つの外部メモリデバイスに格納された起動用プログラムに分岐するために各起動用プログラムに対応して用意された前処理プログラムを格納し、
前記ＣＰＵは、リセット時に、前記起動用プログラム選択信号に基づいて、外部メモリデバイスに格納された起動用プログラムを実行する場合において、当該外部メモリデバイスに格納された情報に基づいて当該外部メモリデバイスのデータ幅を判別し、判別したデータ幅に基づいて当該外部メモリデバイスにアクセスすることを特徴とするマイクロコンピュータ。
【請求項４】
請求項１乃至３のいずれかにおいて、
前記不揮発性メモリは、外部メモリデバイスに格納され、前記ＣＰＵが直接アクセス可能なメモリアドレス空間にマッピングされた起動用プログラムに分岐するために、当該起動用プログラムに対応して用意された前処理プログラムを格納することを特徴とするマイクロコンピュータ。
【請求項５】
請求項１乃至４のいずれかにおいて、
前記マイクロコンピュータは、ランダムアクセスメモリと、前記ＣＰＵが外部メモリデバイスに対するアクセスを行うための外部メモリインターフェース部とを含み、
前記不揮発性メモリは、前記外部メモリインターフェース部を介して外部メモリデバイスに格納された起動用プログラムを前記ランダムアクセスメモリに転送し、ランダムアクセスメモリに転送した起動用プログラムに分岐するために、当該起動用プログラムに対応して用意された前処理プログラムを格納することを特徴とするマイクロコンピュータ。
【請求項６】
請求項１乃至５のいずれかにおいて、
前記マイクロコンピュータは、ランダムアクセスメモリと、前記ＣＰＵが外部ホストデバイスと通信をするための外部ホストインターフェース部とを含み、
前記不揮発性メモリは、前記外部ホストインターフェース部を介して外部ホストデバイスに格納された起動用プログラムを前記ランダムアクセスメモリに転送し、ランダムアクセスメモリに転送された起動用プログラムに分岐するために、当該起動用プログラムに対応して用意された前処理プログラムを格納することを特徴とするマイクロコンピュータ。
【請求項７】
請求項１乃至６のいずれかに記載のマイクロコンピュータと、
起動用プログラムを格納する複数のデバイスとを含むことを特徴とする情報処理システム。
【請求項８】
請求項７において、
前記複数のデバイスは、少なくとも一つのメモリデバイスと、少なくとも一つのホストデバイスとを含むことを特徴とする情報処理システム。
【請求項９】
請求項７又は８において、
前記複数のデバイスは、少なくとも一つのメモリデバイスを含み、
前記少なくとも一つのメモリデバイスは、当該メモリデバイスのデータ幅を判別する情報を含むことを特徴とする情報処理システム。
【請求項１０】
請求項７乃至９のいずれかに記載の情報処理システムと、
入力情報を受け付ける手段と、
入力情報に基づき前記情報処理システムにより処理された結果を出力するための手段とを含むことを特徴とする電子機器。
【請求項１１】
複数の外部デバイスにそれぞれ格納された各起動用プログラムのいずれか一つを実行することによるマイクロコンピュータの起動制御方法であって、
リセット時に、外部端子入力に基づいて、複数の前記起動用プログラムのいずれか一つを選択するステップと、
選択された起動用プログラムに対応づけられ、不揮発性メモリに格納された前処理プログラムを実行することにより、前記複数の外部デバイスにそれぞれ格納された各起動用プログラムのいずれか一つに分岐するステップと、
分岐先の起動用プログラムを実行するステップとを含むことを特徴とするマイクロコンピュータの起動制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マイクロコンピュータ、情報処理システム、電子機器及びマイクロコンピュータの起動制御方法に関する。
【背景技術】
【０００２】
従来のマイクロコンピュータでは、内蔵メモリに格納された固定のプログラムにより固定の起動モードを実現していた。あるいは、従来のマイクロコンピュータでは、特定のインターフェースを介して起動用プログラムを内蔵メモリに転送して特定の起動モードを実現していた。これらのマイクロコンピュータは、固定または特定の起動モードを実現するものであり、起動用プログラムを格納する外付けのメモリのタイプを自由に選択できなかったり、特定のインターフェースからの起動のみ可能である等、起動モードを選択する自由度が低かった。また、特許文献１に記載されているように、特定インターフェースからの起動用プログラムを内蔵メモリに転送する場合には、起動用プログラムの転送のために起動時にのみ作動する専用のハードウェアが必要であった。
【特許文献１】特開平１０−１１６１８７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
本発明は以上のような問題点に鑑みてなされたものであり、起動時にのみ作動する専用のハードウェアを持つことなく容易に複数の起動モードを実現することができ、かつ、様々な外部デバイスからの起動モードを実現することができるマイクロコンピュータの提供を目的とする。
【課題を解決するための手段】
【０００４】
（１）本発明のマイクロコンピュータは、
複数の外部デバイスにそれぞれ格納された各起動用プログラムに分岐するために各起動用プログラムに対応して用意された前処理プログラムを格納する不揮発性メモリと、
外部端子入力に基づいて、前記複数の外部デバイスに格納された各起動用プログラムのいずれか一つを選択する起動用プログラム選択信号を生成する起動用プログラム選択信号生成部と、
リセット時に、前記起動用プログラム選択信号に基づいて、前記起動用プログラムに対応づけられた前処理プログラムを実行し、当該前処理プログラムの実行により分岐した先の起動用プログラムを実行するＣＰＵとを含むことを特徴とする。
【０００５】
外部デバイスは、起動用プログラムを格納することができるデバイスであれば良く、例えば、ＮＡＮＤ型フラッシュメモリ、ＮＯＲ型フラッシュメモリ、シリアルＲＯＭなどのメモリデバイスやＲＳ２３２インターフェース、ＵＳＢインターフェースに対応するパーソナルコンピュータなどのホストデバイスであっても良い。また、複数の外部デバイスとは、複数の外部メモリデバイスでも良いし、複数の外部ホストデバイスでも良いし、外部メモリデバイスと外部ホストデバイスの両方を含む場合であっても良い。
【０００６】
不揮発性メモリは、電源を切っても前処理プログラムの情報が消えないような記憶媒体であれば良く、例えば、ＲＯＭ（Read Only Memory）であっても良いし、不揮発性のＲＡＭ（Random Access Memory）であっても良い。
【０００７】
起動用プログラム選択信号は、外部端子入力に基づいて、複数の外部デバイスにそれぞれ格納された各起動用プログラムのいずれか一つを選択するために十分な信号であれば良く、例えば、外部端子入力の組み合わせと起動用プログラムに対応して用意された前処理プログラムの格納アドレスの対応表に基づいて選択された前処理プログラムの格納アドレスを示す信号であっても良い。
【０００８】
本発明によれば、内蔵のメモリに格納された固定の起動モードに限定されず、外部端子入力を変更するだけで、複数の外部デバイスに格納された各起動用プログラムに応じた様々な起動モードを選択することができる。
【０００９】
（２）本発明のマイクロコンピュータは、
前記不揮発性メモリは、少なくとも１つの外部ホストデバイスと少なくとも１つの外部メモリデバイスにそれぞれ格納された各起動用プログラムに分岐するために各起動用プログラムに対応して用意された前処理プログラムを格納することを特徴とする。
【００１０】
本発明によれば、内蔵のメモリに格納された固定のプログラムによる起動モードに限定されず、外部端子入力を変更するだけで、外部メモリデバイスに格納された起動用プログラムによる起動モードを選択することも、外部ホストデバイスに格納された起動用プログラムによる起動モードを選択することもできるので、起動モードの選択の自由度が向上する。
【００１１】
さらに、本発明によれば、例えば、外部メモリデバイスに格納された起動用プログラムによる起動モードに不具合があった場合でも、外部端子入力の設定を切り替えてリセットをかけることにより外部ホストデバイスから起動用プログラムを受信することにより、他の起動モードを選択することができる。当該外部ホストデバイスから受信する起動用プログラムにおいて、当該外部メモリデバイスに格納された起動用プログラムの不具合を修正することもできるので、本発明に係るマイクロコンピュータは、当該外部ホストデバイスを切り離した後も、再度当該外部メモリデバイスに格納された修正後の起動用プログラムによる起動モードを選択して正常な起動動作を実現することができる。
【００１２】
（３）本発明のマイクロコンピュータは、
前記不揮発性メモリは、少なくとも１つの外部メモリデバイスに格納された起動用プログラムに分岐するために各起動用プログラムに対応して用意された前処理プログラムを格納し、
前記ＣＰＵは、リセット時に、前記起動用プログラム選択信号に基づいて、外部メモリデバイスに格納された起動用プログラムを実行する場合において、当該外部メモリデバイスに格納された情報に基づいて当該外部メモリデバイスのデータ幅を判別し、判別したデータ幅に基づいて当該外部メモリデバイスにアクセスすることを特徴とする。
【００１３】
本発明によれば、ＣＰＵが起動用プログラムに対応して用意された前処理プログラム  を実行して、外部メモリデバイスに格納された当該メモリデバイスのデータ幅の情報を読み出すことにより、当該メモリデバイスのデータ幅を判別することができる。その結果、データ幅の異なる複数の種類の外部メモリデバイスを接続しても、ＣＰＵは外部メモリデバイスに対するアクセスを正常に行うことができるので、起動モードの選択の自由度が向上する。
【００１４】
外部メモリデバイスのデータ幅の情報は、ＣＰＵがアクセス可能な固定の記憶領域であって、少なくともデータ幅を判別するのに十分なビット数を有する記憶領域に格納されていれば良い。例えば、外部メモリデバイスのデータ幅が少なくとも８ビットであり、メモリデバイスに格納されるデータの最下位ビット（ビット０）がＣＰＵのデータバスの最下位ビット（ビット０）に対応するように外部メモリデバイスが接続される場合であれば、ＣＰＵのデータバスの下位８ビット（ビット７〜ビット０）は常に外部メモリデバイスと接続されるので、ＣＰＵがアクセス可能な固定の記憶領域は、特定のアドレスに対応する当該外部メモリデバイスの記憶領域の下位８ビットのいずれかであれば良い。
【００１５】
また、データ幅を判別するのに十分なビット数とは、例えば、外部メモリデバイスのデータ幅が８ビット、１６ビット、３２ビットのいずれかである場合は、２ビット以上であれば良い。例えば、ＣＰＵは、前処理プログラムの最初の命令を実行して特定のアドレスに対応する当該外部メモリデバイスの記憶領域に格納されたデータを読み出し、読み出したデータの下位２ビット（ビット１、ビット０）の組み合わせによって、当該メモリデバイスのデータ幅が８ビット、１６ビット、３２ビットのいずれであるかを判別するようにしても良い。
【００１６】
（４）本発明のマイクロコンピュータは、
前記不揮発性メモリは、外部メモリデバイスに格納され、前記ＣＰＵが直接アクセス可能なメモリアドレス空間にマッピングされた起動用プログラムに分岐するために、当該起動用プログラムに対応して用意された前処理プログラムを格納することを特徴とする。
【００１７】
本発明によれば、例えば、ＮＯＲ型フラッシュメモリのようにランダムアクセスが可能なメモリデバイスについては、ＣＰＵが直接アクセス可能なメモリアドレス空間にマッピングすることにより、ＣＰＵは、当該メモリデバイスに格納された起動用プログラムを他のランダムアクセスメモリに転送することなく、そのまま実行することができる。
【００１８】
（５）本発明のマイクロコンピュータは、
前記マイクロコンピュータは、ランダムアクセスメモリと、前記ＣＰＵが外部メモリデバイスに対するアクセスを行うための外部メモリインターフェース部とを含み、
前記不揮発性メモリは、前記外部メモリインターフェース部を介して外部メモリデバイスに格納された起動用プログラムを前記ランダムアクセスメモリに転送し、ランダムアクセスメモリに転送した起動用プログラムに分岐するために、当該起動用プログラムに対応して用意された前処理プログラムを格納することを特徴とする。
【００１９】
外部デメモリデバイスには、例えば、シリアルＲＯＭやコマンドインターフェースを持つＮＡＮＤ型フラッシュメモリなどが含まれる。
【００２０】
本発明によれば、ＣＰＵは、ランダムアクセスができない外部メモリデバイスに格納された起動用プログラムについても、メモリインターフェース部を介してランダムアクセスメモリに転送された当該起動用プログラムを実行することができる。メモリインターフェース部は、起動時にのみ作動する専用のハードウェアである必要はなく、起動後の通常動作において使用されるメモリインターフェース部をそのまま利用しても良い。
【００２１】
（６）本発明のマイクロコンピュータは、
前記マイクロコンピュータは、ランダムアクセスメモリと、前記ＣＰＵが外部ホストデバイスと通信をするための外部ホストインターフェース部とを含み、
前記不揮発性メモリは、前記外部ホストインターフェース部を介して外部ホストデバイスに格納された起動用プログラムを前記ランダムアクセスメモリに転送し、ランダムアクセスメモリに転送された起動用プログラムに分岐するために、当該起動用プログラムに対応して用意された前処理プログラムを格納することを特徴とする。
【００２２】
外部ホストデバイスには、例えば、ＲＳ２３２インターフェースやＵＳＢインターフェースに対応するパーソナルコンピュータが含まれる。
【００２３】
本発明によれば、ＣＰＵは、例えば、ＲＳ２３２インターフェース回路やＵＳＢインターフェース回路などのホストインターフェース部を介して、当該ホストデバイスからランダムアクセスメモリに転送された起動用プログラムを実行することができる。ホストインターフェース部は、起動時にのみ作動する専用のハードウェアである必要はなく、起動後の通常動作において使用されるホストインターフェース部をそのまま利用しても良い。
【００２４】
（７）本発明は、
上記のいずれかに記載のマイクロコンピュータと、
起動用プログラムを格納する複数のデバイスとを含むことを特徴とする情報処理システムである。
【００２５】
（８）本発明の情報処理システムは、
前記複数のデバイスは、少なくとも一つのメモリデバイスと、少なくとも一つのホストデバイスとを含むことを特徴とする。
【００２６】
（９）本発明の情報処理システムは、
前記複数のデバイスは、少なくとも一つのメモリデバイスを含み、
前記少なくとも一つのメモリデバイスは、当該メモリデバイスのデータ幅を判別する情報を含むことを特徴とする。
【００２７】
（１０）本発明は、
上記のいずれかに記載の情報処理システムと、
入力情報を受け付ける手段と、
入力情報に基づき前記情報処理システムにより処理された結果を出力するための手段とを含むことを特徴とする電子機器である。
【００２８】
（１１）本発明は、
複数の外部デバイスにそれぞれ格納された各起動用プログラムのいずれか一つを実行することによるマイクロコンピュータの起動制御方法であって、
リセット時に、外部端子入力に基づいて、複数の前記起動用プログラムのいずれか一つを選択するステップと、
選択された起動用プログラムに対応づけられ、不揮発性メモリに格納された前処理プログラムを実行することにより、前記複数の外部デバイスにそれぞれ格納された各起動用プログラムのいずれか一つに分岐するステップと、
分岐先の起動用プログラムを実行するステップとを含むことを特徴とする。
【発明を実施するための最良の形態】
【００２９】
以下、本発明の好適な実施形態について図面を用いて詳細に説明する。なお、以下に説明する実施の形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また以下で説明される構成の全てが本発明の必須構成要件であるとは限らない。
【００３０】
１．マイクロコンピュータ、情報処理システム
図１は、本実施の形態のマイクロコンピュータ及び情報処理システムの構成について説明するための機能ブロック図である。
【００３１】
本実施の形態のマイクロコンピュータ１０は、内蔵ＲＯＭ３０を含む。
【００３２】
内蔵ＲＯＭ３０は、ＲＳ２３２ホスト６４、ＵＳＢホスト７４、シリアルＲＯＭ８４、ＮＯＲ型フラッシュメモリ９４、ＮＡＮＤ型フラッシュメモリ９６など（複数の外部デバイス）にそれぞれ格納された各起動用プログラムに分岐するために各起動用プログラムに対応して用意された前処理プログラムを格納する不揮発性メモリである。
【００３３】
内蔵ＲＯＭ３０は、少なくとも１つの外部ホストデバイス（ＲＳ２３２ホスト６４、ＵＳＢホスト７４など）と少なくとも１つの外部メモリデバイス（シリアルＲＯＭ８４、ＮＯＲ型フラッシュメモリ９４、ＮＡＮＤ型フラッシュメモリ９６など）にそれぞれ格納された各起動用プログラムに分岐するために各起動用プログラムに対応して用意された前処理プログラムを格納する不揮発性メモリであっても良い。
【００３４】
内蔵ＲＯＭ３０は、ＮＯＲ型フラッシュメモリ９４（外部メモリデバイス）に格納され、ＣＰＵ２０が直接アクセス可能なメモリアドレス空間にマッピングされた起動用プログラムに分岐するために、当該起動用プログラムに対応して用意された前処理プログラムを格納する不揮発性メモリであっても良い。
【００３５】
内蔵ＲＯＭ３０は、ＳＰＩインターフェース回路８０又はバスコントロール回路９０など（外部メモリインターフェース部）を介してシリアルＲＯＭ８４又はＮＡＮＤ型フラッシュメモリ９６など（外部メモリデバイス）に格納された起動用プログラムを内蔵ＲＡＭ４０（ランダムアクセスメモリ）に転送し、ランダムアクセスメモリに転送した起動用プログラムに分岐するために、当該起動用プログラムに対応して用意された前処理プログラムを格納する不揮発性メモリであっても良い。
【００３６】
内蔵ＲＯＭ３０は、ＲＳ２３２インターフェース回路６０又はＵＳＢインターフェース回路７０など（外部ホストインターフェース部）を介してＲＳ２３２ホスト６２又はＵＳＢホスト７２など（外部ホストデバイス）に格納された起動用プログラムを内蔵ＲＡＭ４０（ランダムアクセスメモリ）に転送し、ランダムアクセスメモリに転送された起動用プログラムに分岐するために、当該起動用プログラムに対応して用意された前処理プログラムを格納する不揮発性メモリであっても良い。
【００３７】
本実施の形態のマイクロコンピュータ１０は、ブートアドレスコントロール回路５０及び起動モード設定端子５２を含む。
【００３８】
ブートアドレスコントロール回路５０は、起動モード設定端子５２（外部端子入力）に基づいて、ＲＳ２３２ホスト６４、ＵＳＢホスト７４、シリアルＲＯＭ８４、ＮＯＲ型フラッシュメモリ９４、ＮＡＮＤ型フラッシュメモリ９６など（複数の外部デバイス）に格納された各起動用プログラムのいずれか一つを選択する起動用プログラム選択信号を生成する起動用プログラム選択信号生成部として機能する。
【００３９】
本実施の形態のマイクロコンピュータ１０は、ＣＰＵ２０を含む。
【００４０】
ＣＰＵ２０は、リセット時に、ブートアドレスコントロール回路５０が生成する起動用プログラム選択信号に基づいて、ＲＳ２３２ホスト６４、ＵＳＢホスト７４、シリアルＲＯＭ８４、ＮＯＲ型フラッシュメモリ９４、ＮＡＮＤ型フラッシュメモリ９６など（複数の外部デバイス）に格納された各起動用プログラムに対応づけられた前処理プログラムを実行し、当該前処理プログラムの実行により分岐した先の起動用プログラムを実行する。
【００４１】
ＣＰＵ２０は、リセット時に、ブートアドレスコントロール回路５０が生成する起動用プログラム選択信号に基づいて、ＮＯＲ型フラッシュメモリ９４、ＮＡＮＤ型フラッシュメモリ９６など（外部メモリデバイス）に格納された起動用プログラムを実行する場合において、当該外部メモリデバイスに格納された情報に基づいて当該外部メモリデバイスのデータ幅を判別し、判別したデータ幅に基づいて当該外部メモリデバイスにアクセスするように構成しても良い。
【００４２】
本実施の形態のマイクロコンピュータ１０は、内蔵ＲＡＭ４０と、ＲＳ２３２インターフェース回路６０及びその入出力端子６２と、ＵＳＢインターフェース回路７０及びその入出力端子７２と、外付けのシリアルＲＯＭ８４との間でデータ転送を行うＳＰＩインターフェース回路８０及びその入出力端子８２と、外付けのＮＯＲ型フラッシュメモリ９４、ＮＡＮＤ型フラッシュメモリ９６との間でデータ転送を行うバスコントロール回路９０及びその入出力端子９２と、その他の周辺回路１００と、内部データバス１１０とを含むが、これらの要素は本発明の任意の構成要素である。
【００４３】
ＣＰＵ２０、内蔵ＲＯＭ３０、内蔵ＲＡＭ４０、ブートアドレスコントロール回路５０、ＲＳ２３２インターフェース回路６０、ＵＳＢインターフェース回路７０、ＳＰＩインターフェース回路８０、バスコントロール回路９０、その他の周辺回路１００の各ブロックは、内部データバス１１０で接続される。内部データバス１１０を介して各ブロック間でリードデータ、ライトデータ、アドレス、制御信号などの情報が受け渡しされる。
【００４４】
入出力端子６２は、マイクロコンピュータ１０の内部にあるＲＳ２３２インターフェース回路６０の入出力信号線および外部にあるＲＳ２３２対応のホストデバイス６４（パーソナルコンピュータなど）の入出力信号線と接続される。
【００４５】
入出力端子７２は、マイクロコンピュータ１０の内部にあるＵＳＢインターフェース回路７０の入出力信号線および外部にあるＵＳＢ対応のホストデバイス７４（パーソナルコンピュータなど）の入出力信号と接続される。
【００４６】
入出力端子８２、マイクロコンピュータ１０の内部にあるＳＰＩインターフェース回路８０の入出力信号線および外部メモリデバイスのシリアルＲＯＭ８４の入出力信号と接続される。
【００４７】
入出力端子９２は、マイクロコンピュータ１０の内部にあるバスコントロール回路９０の入出力信号線および外部メモリデバイスのＮＯＲ型フラッシュメモリ９４の入出力信号線及びＮＡＮＤ型フラッシュメモリ９６の入出力信号線と接続される。
【００４８】
内蔵ＲＯＭ３０には、ＲＳ２３２対応の外部ホストデバイス６４、ＵＳＢ対応の外部ホストデバイス７４、外付けのシリアルＲＯＭ８４、ＮＯＲ型フラッシュメモリ９４、ＮＡＮＤ型フラッシュメモリ９６にそれぞれ格納され、リセット時に実行される各起動用プログラムに対応して前処理を行うための複数の前処理プログラムが格納されている。
【００４９】
ＣＰＵ２０がその他周辺回路１００に含まれる特定の内部レジスタ（図示せず）の設定値を変更することにより、外部のＮＯＲ型フラッシュメモリ９４又はＮＡＮＤ型フラッシュメモリ９６に対するアドレスやデータの受け渡しが適切なタイミングで行われるようにバスコントロール回路９０の設定が行われる。例えば、内部データバス１１０のビット幅が３２ビットであり、外部のＮＯＲ型フラッシュメモリ９４の入出力データのビット幅が１６ビットである場合、内部データバス１１０に出力される３２ビットのデータをＮＯＲ型フラッシュメモリ９４に書き込む時は、バスコントロール回路９０は特定の内部レジスタの設定に従い、３２ビットデータのうち下位１６ビットデータと書き込みアドレスをパラレルに入出力端子９２に出力し、次のサイクルでは上位１６ビットデータと１だけインクリメントされたアドレスをパラレルに入出力端子９２に出力する。すなわち、２サイクルかけてＮＯＲ型フラッシュメモリ９４の連続する２つのアドレスに対応する１６ビットの記憶領域に対して書き込みが行われる。ＣＰＵ２０がＮＯＲ型フラッシュメモリ９４に格納されたデータを読み出す時は、例えば、読み出しアドレスに対応する記憶領域に格納された下位１６ビットデータの読み出しと読み出しアドレスを１だけインクリメントしたアドレスに対応する記憶領域に格納された上位１６ビットデータの読み出しが２サイクルで行われる。
【００５０】
本実施の形態の情報処理システム１２０は、マイクロコンピュータ１０、ＲＳ２３２対応のホストデバイス６４（パーソナルコンピュータなど）、ＵＳＢ対応のホストデバイス７４（パーソナルコンピュータなど）、シリアルＲＯＭ８４、ＮＯＲ型フラッシュメモリ９４、ＮＡＮＤ型フラッシュメモリ９６とを含む。ＲＳ２３２対応のホストデバイス６４、ＵＳＢ対応のホストデバイス７４、シリアルＲＯＭ８４の入出力は、それぞれマイクロコンピュータ１０の複数の入出力端子６２、７２、８２と接続される。ＮＯＲ型フラッシュメモリ９４及びＮＡＮＤ型フラッシュメモリ９６は、マイクロコンピュータ１０の複数の入出力端子９２と接続される。
【００５１】
図２（Ａ）は、起動モード設定端子５２が３入力の場合の起動モード設定端子０、１、２（２１０、２１２、２１４）の入力の組み合わせと起動モード２１６の対応関係の例を示す図である。起動モード設定端子０、１、２（２１０、２１２、２１４）にはＨレベルまたはＬレベルのいずれかが入力される。
【００５２】
起動モード設定端子０、１、２（２１０、２１２、２１４）のレベルがそれぞれＬ、Ｌ、Ｌの時は、例えば、ＮＯＲ型フラッシュメモリ９４に格納された起動用プログラムによる起動モードが選択される（２２０参照）。
【００５３】
起動モード設定端子０、１、２（２１０、２１２、２１４）のレベルがそれぞれＬ、Ｌ、Ｈの時は、例えば、ＮＡＮＤ型フラッシュメモリ９６に格納された起動用プログラムによる起動モードが選択される（２２２参照）。
【００５４】
起動モード設定端子０、１、２（２１０、２１２、２１４）のレベルがそれぞれＬ、Ｈ、Ｌの時は、例えば、シリアルＲＯＭ８４に格納された起動用プログラムによる起動モードが選択される（２２４参照）。
【００５５】
起動モード設定端子０、１、２（２１０、２１２、２１４）のレベルがそれぞれＬ、Ｈ、Ｈの時は、例えば、ＲＳ２３２ホスト６４に格納された起動用プログラムによる起動モードが選択される（２２６参照）。
【００５６】
起動モード設定端子０、１、２（２１０、２１２、２１４）のレベルがそれぞれＨ、Ｌ、Ｌの時は、例えば、ＵＳＢホスト７４に格納された起動用プログラムによる起動モードが選択される（２２８参照）。
【００５７】
図２（Ｂ）は、起動モード２１６と各起動モードを実現する起動用プログラムに対応付けられて内蔵ＲＯＭ３０に格納された前処理プログラムの格納アドレス２１８の対応関係の例を示す図である。ＮＯＲ型フラッシュメモリ９４に格納された起動用プログラムの前処理を行うプログラムの格納アドレスは、例えば’0x00000’である（２３０参照）。ＮＡＮＤ型フラッシュメモリ９６に格納された起動用プログラムの前処理を行うプログラムの格納アドレスは、例えば’0x00100’である（２３２参照）。シリアルＲＯＭ８４に格納された起動用プログラムの前処理を行うプログラムの格納アドレスは、例えば’0x00200’である（２３４参照）。ＲＳ２３２ホスト６４に格納された起動用プログラムの前処理を行うプログラムの格納アドレスは、例えば’0x00300’である（２３６参照）。ＵＳＢホスト７４に格納された起動用プログラムの前処理を行うプログラムの格納アドレスは、例えば’0x00400’である（２３８参照）。
【００５８】
ブートアドレスコントロール回路５０は、図２（Ａ）及び図２（Ｂ）の対応関係に基づいて、例えば、起動モード設定端子０、１、２（２１０、２１２、２１４）のレベルがそれぞれＬ、Ｌ、Ｌの時は、ＮＯＲ型フラッシュメモリ９４に格納された起動用プログラムを選択するために、対応する前処理プログラムの格納アドレス（絶対アドレス）’0x00000’を起動用プログラム選択信号として生成しても良いし、内臓ＲＯＭ３０の先頭アドレス（例えば’0x00000’）に対する相対アドレス（例えば、’0x000’）を起動用プログラム選択信号として生成しても良い。
【００５９】
図３は、外付けのＮＯＲ型フラッシュメモリ９４に格納された起動用プログラム３１０による起動モード（ＮＯＲ型フラッシュメモリ起動モード）が選択された場合に本実施形態のマイクロコンピュータ１０が起動する手順を説明するための図である。
【００６０】
内臓ＲＯＭ３０には、例えば、図２（Ｂ）の対応関係に従って、アドレス’0x00000’、’0x00100’、’0x00200’、’0x00300’、’0x00400’を格納アドレスとして、それぞれ、ＮＯＲ型フラッシュメモリ起動モードにおける前処理プログラム３００、ＮＡＮＤ型フラッシュメモリ起動モードにおける前処理プログラム４００、シリアルＲＯＭ起動モードにおける前処理プログラム５００、ＲＳ２３２起動モードにおける前処理プログラム６００、ＵＳＢ起動モードにおける前処理プログラム７００が格納されている。
【００６１】
起動モード設定端子０、１、２（２１０、２１２、２１４）の入力レベルをそれぞれＬ、Ｌ、Ｌに設定すると、例えば、図２（Ａ）に示す対応関係に従い、ＮＯＲ型フラッシュメモリ起動モードが選択される（図２（Ａ）の２２０参照）。
【００６２】
ブートアドレスコントロール回路５０は、例えば、図２（Ｂ）に示す対応関係に従い、ＮＯＲ型フラッシュメモリ起動モードにおける前処理プログラム３００の格納アドレス’0x00000’を生成する（図２（Ｂ）の２３０参照）。
【００６３】
ＣＰＵ２０内部のプログラムカウンタ（図示せず）には、ブートアドレスコントロール回路５０が生成したアドレス’0x00000’がロードされ、ＣＰＵ２０は’0x00000’アドレスの命令（ＮＯＲ型フラッシュメモリ９４に格納された起動用プログラム３１０の格納アドレス（例えば’0x50000’）への分岐命令）を実行する。
【００６４】
この分岐命令の実行により、ＣＰＵ２０内部のプログラムカウンタには、ＮＯＲ型フラッシュメモリ９４に格納された起動用プログラム３１０の格納アドレス（例えば’0x50000’）がロードされ、ＮＯＲ型フラッシュメモリ９４に格納された起動用プログラムへの分岐Ｂ１が発生する。
【００６５】
ＮＯＲ型フラッシュメモリ９４はランダムアクセス可能なメモリデバイスであり、ＣＰＵ２０が直接アクセス可能なメモリアドレス空間上にマッピングされるので、ＣＰＵ２０はＮＯＲ型フラッシュメモリ９４に格納された起動用プログラム３１０の格納アドレスに格納された命令を次のサイクルで実行することができる。
【００６６】
以後、ＣＰＵ２０がプログラムカウンタをインクリメントしながらＮＯＲ型フラッシュメモリ９４に格納された起動用プログラム３１０を実行することにより、ＮＯＲ型フラッシュメモリ９４に格納された起動用プログラム３１０による起動モードが実現される。
【００６７】
図４は、外付けのＮＡＮＤ型フラッシュメモリ９６に格納された起動用プログラム４１０による起動モード（ＮＡＮＤ型フラッシュメモリ起動モード）が選択された場合に本実施形態のマイクロコンピュータ１０が起動する手順を説明するための図である。
【００６８】
図３と同じ構成には同じ番号を付しており説明を省略する。
【００６９】
起動モード設定端子０、１、２（２１０、２１２、２１４）の入力レベルをそれぞれＬ、Ｌ、Ｈに設定すると、例えば、図２（Ａ）に示す対応関係に従い、ＮＡＮＤ型フラッシュメモリ起動モードが選択される（図２（Ａ）の２２２参照）。
【００７０】
ブートアドレスコントロール回路５０は、例えば、図２（Ｂ）に示す対応関係に従い、ＮＡＮＤ型フラッシュメモリ起動モードにおける前処理プログラム４００の格納アドレス’0x00100’を生成する（図２（Ｂ）の２３２参照）。
【００７１】
ＣＰＵ２０内部のプログラムカウンタには、ブートアドレスコントロール回路５０が生成したアドレス’0x00100’がロードされ、ＣＰＵ２０は’0x00100’アドレスの命令を実行する。
【００７２】
ＮＡＮＤ型フラッシュメモリ９６はコマンドインターフェースを持ち、コマンドで指定したアドレスに対応する記憶領域に格納されたデータのリードライトを一括して行うメモリデバイスであり、一般的にランダムアクセスはできない。そのため、対応する前処理プログラム４００は、ＮＡＮＤ型フラッシュメモリ９６のコマンドインターフェースを制御し、バスコントローラ回路９０を介してＮＡＮＤ型フラッシュメモリ９６に格納された起動用プログラム４１０をすべて内蔵ＲＡＭ４０の特定の記憶領域（例えば、’0x10000’アドレス以降の領域）に転送（Ｔ２）した後、内蔵ＲＡＭ４０に格納された起動用プログラム４２０の格納アドレス（’0x10000’）に分岐（Ｂ２）するようなプログラムである。
【００７３】
以後、ＣＰＵ２０がプログラムカウンタをインクリメントしながら内蔵ＲＡＭ４０に転送された起動用プログラム４２０を実行することにより、ＮＡＮＤ型フラッシュメモリ９６に格納された起動用プログラム４１０による起動モードが実現される。
【００７４】
図５は、外付けのシリアルＲＯＭ８４に格納された起動用プログラム５１０による起動モード（シリアルＲＯＭ起動モード）が選択された場合に本実施形態のマイクロコンピュータ１０が起動する手順を説明するための図である。
【００７５】
図３と同じ構成には同じ番号を付しており説明を省略する。
【００７６】
起動モード設定端子０、１、２（２１０、２１２、２１４）の入力レベルをそれぞれＬ、Ｈ、Ｌに設定すると、例えば、図２（Ａ）に示す対応関係に従い、シリアルＲＯＭ起動モードが選択される（図２（Ａ）の２２４参照）。
【００７７】
ブートアドレスコントロール回路５０は、例えば、図２（Ｂ）に示す対応関係に従い、シリアルＲＯＭ起動モードにおける前処理プログラム５００の格納アドレス’0x00200’を生成する（図２（Ｂ）の２３４参照）。
【００７８】
ＣＰＵ２０内部のプログラムカウンタには、ブートアドレスコントロール回路５０が生成したアドレス’0x00200’がロードされ、ＣＰＵ２０は’0x00200’アドレスの命令を実行する。
【００７９】
シリアルＲＯＭ８４は、アドレス、データ、リードライト選択が１ビットのシリアルデータとして入力され、リードデータを1ビットのシリアルデータとして出力する。
【００８０】
ＣＰＵ２０はシリアル／パラレル変換を行うＳＰＩインターフェース回路８０を介して、数サイクルをかけてシリアルＲＯＭ８４に対するアクセスを行うので、シリアルＲＯＭ８４に格納された起動用プログラム５１０を内蔵ＲＡＭ４０に転送した後に実行するのが効率的である。
【００８１】
そのため、対応する前処理プログラム５００は、ＳＰＩインターフェース回路８０を制御し、ＳＰＩインターフェース回路８０を介してシリアルＲＯＭ８４に格納された起動用プログラム５１０をすべて内蔵ＲＡＭ４０の特定の記憶領域（例えば、’0x10000’アドレス以降の領域）に転送（Ｔ３）した後、内蔵ＲＡＭ４０に格納された起動用プログラム５２０の格納アドレス（’0x10000’）に分岐（Ｂ３）するようなプログラムである。
【００８２】
以後、ＣＰＵ２０がプログラムカウンタをインクリメントしながら内蔵ＲＡＭ４０に転送された起動用プログラム５２０を実行することにより、シリアルＲＯＭ８４に格納された起動用プログラム５１０による起動モードが実現される。
【００８３】
なお、ＳＰＩインターフェース回路８０はマイクロコンピュータ１０が起動した後の処理においてシリアルＲＯＭ８４に対するリードライトを行うために必要な回路であり、起動用プログラムを内蔵ＲＡＭ４０に転送するためだけに使用される専用の回路でなくても良い。
【００８４】
図６は、ＲＳ２３２インターフェース対応のホストデバイス６４から起動用プログラム６１０を受信することによる起動モード（ＲＳ２３２起動モード）が選択された場合に本実施形態のマイクロコンピュータ１０が起動する手順を説明するための図である。
【００８５】
図３と同じ構成には同じ番号を付しており説明を省略する。
【００８６】
起動モード設定端子０、１、２（２１０、２１２、２１４）の入力レベルをそれぞれＬ、Ｈ、Ｈに設定すると、例えば、図２（Ａ）に示す対応関係に従い、ＲＳ２３２起動モードが選択される（図２（Ａ）の２２６参照）。
【００８７】
ブートアドレスコントロール回路５０は、例えば、図２（Ｂ）に示す対応関係に従い、ＲＳ２３２起動モードにおける前処理プログラム６００の格納アドレス’0x00300’を生成する（図２（Ｂ）の２３６参照）。
【００８８】
ＣＰＵ２０内部のプログラムカウンタには、ブートアドレスコントロール回路５０が生成したアドレス’0x00300’がロードされ、ＣＰＵ２０は’0x00300’アドレスの命令を実行する。
【００８９】
対応する前処理プログラム６００は、ＲＳ２３２インターフェース回路６０を制御し、ＲＳ２３２インターフェース回路６０を介してＲＳ２３２ホストデバイス６４から起動用プログラム６１０を受信して内蔵ＲＡＭ４０の特定の記憶領域（例えば、’0x10000’アドレス以降の領域）に転送（Ｔ４）した後、内蔵ＲＡＭ４０に格納された起動用プログラム６２０の格納アドレス（’0x10000’）に分岐（Ｂ４）するようなプログラムである。
【００９０】
以後、ＣＰＵ２０がプログラムカウンタをインクリメントしながら内蔵ＲＡＭ４０に転送された起動用プログラム６２０を実行することにより、ＲＳ２３２ホストデバイス６４から受信した起動用プログラムによる起動モードが実現される。
【００９１】
なお、ＲＳ２３２インターフェース回路６０はマイクロコンピュータ１０が起動した後の処理においてＲＳ２３２ホストデバイス６４と通信を行うために必要な回路であり、起動用プログラムを内蔵ＲＡＭ４０に転送するためだけに使用される専用の回路でなくても良い。
【００９２】
図７は、ＵＳＢインターフェース対応のホストデバイス７４から起動用プログラム７１０を受信することによる起動モード（ＵＳＢ起動モード）が選択された場合に本実施形態のマイクロコンピュータ１０が起動する手順を説明するための図である。
【００９３】
図３と同じ構成には同じ番号を付しており説明を省略する。
【００９４】
起動モード設定端子０、１、２（２１０、２１２、２１４）の入力レベルをそれぞれＨ、Ｌ、Ｌに設定すると、例えば、図２（Ａ）に示す対応関係に従い、ＵＳＢ起動モードが選択される（図２（Ａ）の２２８参照）。
【００９５】
ブートアドレスコントロール回路５０は、例えば、図２（Ｂ）に示す対応関係に従い、ＵＳＢ起動モードにおける前処理プログラム７００の格納アドレス’0x00400’を生成する（図２（Ｂ）の２３８参照）。
【００９６】
ＣＰＵ２０内部のプログラムカウンタには、ブートアドレスコントロール回路５０が生成したアドレス’0x00400’がロードされ、ＣＰＵ２０は’0x00400’アドレスの命令を実行する。
【００９７】
対応する前処理プログラム７００は、ＵＳＢインターフェース回路７０を制御し、ＵＳＢインターフェース回路７０を介してＵＳＢホストデバイス７４から起動用プログラム７１０を受信して内蔵ＲＡＭ４０の特定の記憶領域（例えば、’0x10000’アドレス以降の領域）に転送（Ｔ５）した後、内蔵ＲＡＭ４０に格納された起動用プログラム７２０の格納アドレス（’0x10000’）に分岐（Ｂ５）するようなプログラムである。
【００９８】
以後、ＣＰＵ２０がプログラムカウンタをインクリメントしながら内蔵ＲＡＭ４０に転送された起動用プログラム７２０を実行することにより、ＲＳ２３２ホストデバイス７４から受信した起動用プログラムによる起動モードが実現される。
【００９９】
なお、ＵＳＢインターフェース回路７０はマイクロコンピュータ１０が起動した後の処理においてＵＳＢホストデバイス７４と通信を行うために必要な回路であり、起動用プログラムを内蔵ＲＡＭ４０に転送するためだけに使用される専用の回路でなくても良い。
【０１００】
図３〜図７において説明したように、本実施の形態のマイクロコンピュータ１０においては、設定端子０、１、２（２１０、２１２、２１４）の入力の組み合わせによって外部デバイスに格納された起動用プログラムを選択することにより、種々の起動モードを選択する自由度が向上する。
【０１０１】
また、起動後の処理において使用される回路を利用して種々の起動モードを実現すれば、起動時のみ作動する専用回路を必要としない構成とすることができる。
【０１０２】
図８（Ａ）は、外部メモリデバイスの特定の記憶領域であって、ＣＰＵ２０がアクセス可能な記憶領域に格納される当該メモリデバイスのデータビット幅を判別するための情報についての構成の例を示す図である。例えば、外部メモリデバイスのデータビット幅３２０について、８ビット、１６ビット、３２ビットのいずれかを選択することができるとすると、外部メモリデバイスのデータビット幅３２０を判別するためには２ビットの情報が必要である。データビット幅の情報３３０は、当該メモリデバイスの特定のアドレスに対応する記憶領域の任意の２ビットに格納されていれば良く、例えば下位２ビット（ビット１、ビット０）であっても良い。
【０１０３】
図８（Ｂ）は、外部メモリデバイスのデータビット幅の情報と選択されるデータビット幅の対応関係の例を示す図である。例えば、外部メモリデバイスの特定のアドレスに対応する記憶領域の下位２ビット（ビット１、ビット０）にデータビット幅の情報が格納されている場合において、下位２ビット（ビット１、ビット０）の組み合わせが（Ｌ、Ｌ）、（Ｌ、Ｈ）、（Ｈ、Ｌ）である場合、メモリデバイスのデータビット幅はそれぞれ８ビット（３４０）、１６ビット（３４２）、３２ビット（３４４）であるような対応関係にしても良い。この対応関係はハードワイヤーロジックとして回路に組み込んでも良いし、書き換え可能なテーブルを参照して対応関係を柔軟に変更できるような構成にしても良い。
【０１０４】
図９は、ＮＯＲ型フラッシュメモリ９４に格納されたデータビット幅の情報及び起動用プログラムによる起動モードが選択された場合に本実施の形態のマイクロコンピュータ１０が起動する手順を説明するための図である。
【０１０５】
図３と同じ構成には同じ番号を付しており説明を省略する。
【０１０６】
外付けのＮＯＲ型フラッシュメモリ９４に格納された起動用プログラムに対応付けられ、内蔵ＲＯＭ２０に格納された前処理プログラム３５０により、ＮＯＲ型フラッシュメモリ９４からデータビット幅の情報を読み出す命令が最初に実行される。例えば、データビット幅の情報が、図８（Ａ）に示すように、ＮＯＲ型フラッシュメモリ９４の先頭アドレス’0x50000’に対応する記憶領域の下位２ビット（ビット１、ビット０）に格納されている場合、ＮＯＲ型フラッシュメモリ９４の先頭アドレス’0x50000’のデータが読み出される。
【０１０７】
次に、ＣＰＵ２０は、例えば図８（Ｂ）の対応関係に従い、読み出されたデータの下位２ビット（ビット１、ビット０）が（Ｌ、Ｌ）であれば、ＮＯＲ型フラッシュメモリ９４のデータビット幅は８ビットであると判断し（図８（Ｂ）の３４０参照）、（Ｌ、Ｈ）であればデータビット幅は１６ビットと判断し（図８（Ｂ）の３４２参照）、（Ｈ、Ｌ）であればデータビット幅は３２ビットと判断する（図８（Ｂ）の３４４参照）。
【０１０８】
ＣＰＵ２０は、データビット幅の判断結果に基づいて、バスコントロール回路９０の設定を行うための命令を実行し、以後は、バスコントロール回路９０を介してＮＯＲ型フラッシュメモリ９４に適切にアクセスすることが可能になる。
【０１０９】
なお、ＮＯＲ型フラッシュメモリ９４のデータビット幅が８ビット、１６ビット、３２ビットのいずれの場合であっても、データビット幅の情報が特定アドレスに対応する記憶領域の下位８ビットのいずれかに格納されていれば、ＣＰＵ２０は、同一のビットを読み出すことによりデータ幅を判別することができるので、データビット幅の情報は、特定のアドレスに対応する記憶領域の下位８ビットのいずれかに格納されていることが好ましい。
【０１１０】
図８（Ａ）、図８（Ｂ）、図９を参照して説明した実施形態は、ＮＡＮＤ型フラッシュメモリ９６による起動モードについても同様に適用することができる。
【０１１１】
２．電子機器
図１０に、本実施の形態の電子機器のブロック図の一例を示す。本電子機器８００は、マイクロコンピュータ（情報処理システム）８１０、入力部８２０、メモリ８３０、電源生成部８４０、ＬＣＤ８５０、音出力部８６０を含む。
【０１１２】
ここで、入力部８２０は、種々のデータを入力するためのものである。マイクロコンピュータ８１０は、この入力部８２０により入力されたデータに基づいて種々の処理を行うことになる。メモリ８３０は、マイクロコンピュータ（情報処理システム）８１０などの作業領域となるものである。電源生成部８４０は、電子機器８００で使用される各種電源を生成するためのものである。ＬＣＤ８５０は、電子機器が表示する各種の画像（文字、アイコン、グラフィック等）を出力するためのものである。
【０１１３】
音出力部８６０は、電子機器８００が出力する各種の音（音声、ゲーム音等）を出力するためのものであり、その機能は、スピーカなどのハードウェアにより実現できる。
【０１１４】
図１１（Ａ）に、電子機器の１つである携帯電話９５０の外観図の例を示す。この携帯電話９５０は、入力部として機能するダイヤルボタン９５２や、電話番号や名前やアイコンなどを表示するＬＣＤ９５４や、音出力部として機能し音声を出力するスピーカ９５６を備える。
【０１１５】
図１１（Ｂ）に、電子機器の１つである携帯型ゲーム装置９６０の外観図の例を示す。この携帯型ゲーム装置９６０は、入力部として機能する操作ボタン９６２、十字キー９６４や、ゲーム画像を表示するＬＣＤ９６６や、音出力部として機能しゲーム音を出力するスピーカ９６８を備える。
【０１１６】
図１１（Ｃ）に、電子機器の１つであるパーソナルコンピュータ９７０の外観図の例を示す。このパーソナルコンピュータ９７０は、入力部として機能するキーボード９７２や、文字、数字、グラフィックなどを表示するＬＣＤ９７４、音出力部９７６を備える。
【０１１７】
本実施の形態のマイクロコンピュータを図１１（Ａ）〜図１１（Ｃ）の電子機器に組みむことにより、低消費電力でコストパフォーマンスの高い電子機器を提供することができる。
【０１１８】
なお、本実施形態を利用できる電子機器としては、図１１（Ａ）、（Ｂ）、（Ｃ）に示すもの以外にも、携帯型情報端末、ページャー、電子卓上計算機、タッチパネルを備えた装置、プロジェクタ、ワードプロセッサ、ビューファインダ型又はモニタ直視型のビデオテープレコーダ、カーナビゲーション装置等のＬＣＤを使用する種々の電子機器を考えることができる。
【０１１９】
なお、本発明は本実施形態に限定されず、本発明の要旨の範囲内で種々の変形実施が可能である。
【図面の簡単な説明】
【０１２０】
【図１】本実施の形態のマイクロコンピュータ及び情報処理システムの機能ブロック図。
【図２】図２（Ａ）は起動モード設定端子の入力の組み合わせと起動モードの関係を示す図であり、図２（Ｂ）は起動モードと各起動モードを実現する起動用プログラムに対応付けられて内蔵ＲＯＭに格納された前処理プログラムの格納アドレスの関係を示す図である。
【図３】外付けのＮＯＲ型フラッシュメモリによる起動モードが選択された場合の本実施の形態のマイクロコンピュータが起動する手順を説明するための図である。
【図４】外付けのＮＡＮＤ型フラッシュメモリによる起動モードが選択された場合の本実施の形態のマイクロコンピュータが起動する手順を説明するための図である。
【図５】外付けのシリアルＲＯＭによる起動モードが選択された場合の本実施の形態のマイクロコンピュータが起動する手順を説明するための図である。
【図６】外付けのＲＳ２３２ホストによる起動モードが選択された場合の本実施の形態のマイクロコンピュータが起動する手順を説明するための図である。
【図７】外付けのＵＳＢホストによる起動モードが選択された場合の本実施の形態のマイクロコンピュータが起動する手順を説明するための図である。
【図８】図８（Ａ）は外部メモリデバイスに格納される当該メモリデバイスのデータビット幅を判別するための情報についての構成の例を示す図であり、図８（Ｂ）は外部メモリデバイスのデータビット幅の情報と選択されるデータビット幅の対応関係の例を示す図である。
【図９】外付けのＮＯＲ型フラッシュメモリによる起動モードが選択された場合であって、当該フラッシュメモリにデータビット幅の情報が格納されている場合の本実施の形態のマイクロコンピュータが起動する手順を説明するための図である。
【図１０】情報処理システムを含む電子機器のブロック図の一例を示す。
【図１１】図１１（Ａ）（Ｂ）（Ｃ）は、種々の電子機器の外観図の例である。
【符号の説明】
【０１２１】
１０  マイクロコンピュータ、２０  ＣＰＵ、３０  内蔵ＲＯＭ、４０  内蔵ＲＡＭ、５０  ブートアドレスコントロール回路、５２  起動モード設定端子、６０  ＲＳ２３２インターフェース回路、６２  入出力端子、６４  ＲＳ２３２ホスト、７０  ＵＳＢインターフェース回路、７２  入出力端子、７４  ＵＳＢホスト、８０  ＳＰＩインターフェース回路、８２  入出力端子、８４  シリアルＲＯＭ、９０  バスコントロール回路、９２  入出力端子、９４  ＮＯＲ型フラッシュメモリ、９６  ＮＡＮＤ型フラッシュメモリ、１００  その他の周辺回路、１１０  内部データバス、１２０  情報処理システム
【図１】
2008065549.tif 000003
【図２】
2008065549.tif 000004
【図３】
2008065549.tif 000005
【図４】
2008065549.tif 000006
【図５】
2008065549.tif 000007
【図６】
2008065549.tif 000008
【図７】
2008065549.tif 000009
【図８】
2008065549.tif 000010
【図９】
2008065549.tif 000011
【図１０】
2008065549.tif 000012
【図１１】
2008065549.tif 000013