(57)【要約】マイクロプロセッサ制御装置をブートするための方法およびシステムである。線形記憶装置から読み出すように設計されたマイクロプロセッサは、非線形記憶装置へ／非線形記憶装置からの特定のフォーマットのブート命令の書き込み、および検索を行うインタフェースもしくはエミュレータを通して非線形記憶装置からのコードを実行する。
2006502482.tif 000002
【特許請求の範囲】
【請求項１】
非線形記憶装置を備えるマイクロプロセッサ制御装置をブートする方法において、
システムリセット信号を受信するステップと、
前記非線形記憶装置内で前記非線形記憶装置がシステムブートコードを示すように前記非線形記憶装置を初期化するステップと、
前記非線形記憶装置からのシステムブートコードの第１の部分をマイクロプロセッサで実行するステップと、
を含む方法。
【請求項２】
前記システムブートコードの第１の部分を最初にＲＡＭにコピーせずに、前記システムブートコードの第１の部分がマイクロプロセッサにより実行されることを特徴とする請求項１記載の方法。
【請求項３】
前記マイクロプロセッサにより実行される非線形記憶装置内に常駐するシステムブートコード部分が、５１２バイト以下であることを特徴とする請求項１記載の方法。
【請求項４】
前記非線形記憶装置が、ＮＡＮＤフラッシュメモリを備えることを特徴とする請求項１記載の方法。
【請求項５】
前記非線形記憶装置からのシステムブートコードの第２の部分をＲＡＭにコピーするステップと、
ＲＡＭからのシステムブートコードの第２の部分をマイクロプロセッサで実行するステップと、
をさらに含むことを特徴とする請求項１記載の方法。
【請求項６】
非線形記憶装置内に常駐するシステムブートコードの第１の部分をマイクロプロセッサで実行する前記ステップが、
アドレス変更に対してマイクロプロセッサアドレスラインを監視するステップと、
アドレス変更が検出された場合、非線形メモリに読み出しラインをパルス送信するステップと、
を含むことを特徴とする請求項１記載の方法。
【請求項７】
非線形記憶装置内に常駐するシステムブートコードの第１の部分をマイクロプロセッサで実行する前記ステップが、
パルス後に非線形メモリからデータを受信するステップと、
データをマイクロプロセッサに供給するステップと、
をさらに含むことを特徴とする請求項６記載の方法。
【請求項８】
マイクロプロセッサ制御装置において、
マイクロプロセッサと、
揮発性ＲＡＭと、
非線形メモリと、
前記非線形メモリ内のコードを前記マイクロプロセッサにより実行される線形フォーマットに変換するのに動作可能な線形メモリエミュレータと、
を備える装置。
【請求項９】
前記非線形メモリが、ＮＡＮＤフラッシュメモリを含むことを特徴とする請求項８記載の装置。
【請求項１０】
前記非線形メモリ内のブートコードであって、第１の部分をＲＡＭにコピーすることなく前記マイクロプロセッサが前記非線形メモリからのブートコードの第１の部分を実行するブートコードと、
ブートコードの第２の部分をＲＡＭにコピーするようにマイクロプロセッサに指示する第１の部分であって、第２の部分がＲＡＭから読み出され、マイクロプロセッサにより実行されることを特徴とする第１の部分と、
をさらに備えることを特徴とする請求項８記載の装置。
【請求項１１】
前記線形メモリエミュレータが、
変更に対してマイクロプロセッサアドレスラインを監視し、かつ
変更が検出された場合、非線形メモリに読み出しラインをパルス送信するのに動作可能であることを特徴とする請求項８記載の装置。
【請求項１２】
前記線形メモリエミュレータが、
パルスの後に非線形メモリからデータを受信し、
データをマイクロプロセッサに供給するのに動作可能であることを特徴とする請求項１１記載の装置。
【請求項１３】
マイクロプロセッサに基づいたシステムにおいて、
線形メモリ装置を読み出すのに動作可能なマイクロプロセッサと、
非線形フラッシュメモリと、
前記マイクロプロセッサが前記非線形フラッシュメモリからのコードを実行可能ならしめるインタフェースと、
を備えるシステム。
【請求項１４】
前記マイクロプロセッサが、前記非線形フラッシュメモリから格納されたブートコードの第１の部分を実行することを特徴とする請求項１３記載のシステム。
【請求項１５】
前記ブートコードの第１の部分が、プロセッサタイプとシステム構成とに特有の命令を含むことを特徴とする請求項１４記載のシステム。
【請求項１６】
前記非線形フラッシュメモリがＮＡＮＤタイプのフラッシュメモリを含み、前記第１の部分がＮＡＮＤタイプのフラッシュメモリの第１のページを含むことを特徴とする請求項１４記載のシステム。
【請求項１７】
前記ブートコードの第１の部分が、マイクロプロセッサに対して、
マイクロプロセッサを初期化し、
１つ以上のランダムアクセスメモリを初期化し、かつ
ブートコードの第２の部分を１つ以上のランダムアクセスメモリにコピーするように指示する命令を含むことを特徴とする請求項１４記載のシステム。
【請求項１８】
前記ブートコードの第１の部分が、マイクロプロセッサに対して、１つ以上のランダムアクセスメモリからのブートコードの第２の部分を実行するように指示する命令をさらに含むことを特徴とする請求項１４記載のシステム。
【請求項１９】
前記非線形フラッシュメモリが、ＡＮＤタイプのフラッシュメモリを含むことを特徴とする請求項１３記載のシステム。
【請求項２０】
マイクロプロセッサに基づいたシステムおいて、
線形記憶装置を読み出すのに動作可能なマイクロプロセッサと、
非線形記憶装置と、
前記線形記憶装置を読み出すのに動作可能なマイクロプロセッサで前記非線形記憶装置上のコードを実行するための手段と、
を備えるシステム。
【発明の詳細な説明】
【相互参照】
【０００１】
ＣＤ−ＲＯＭ上の添付のソースコードも本願明細書の一部として構成され、以下のファイルを含む添付書類として、３７ＣＦＲ１に従い、その全体が本願明細書において参照により援用されている。
2006502482.tif 000003
【技術分野】
【０００２】
本発明は、マイクロプロセッサ制御装置のブーティングに関する。
【背景技術】
【０００３】
さまざまなマイクロプロセッサコントローラ「スマート」装置が、現在では不揮発性メモリを搭載している。不揮発性フラッシュメモリは、特に、電源なしに情報を保持し、迅速に消去し、かつ再プログラムできるという能力に起因して現在では幅広く用いられている。フラッシュメモリの興味深い使い方の１つとして、装置の起動の際に用いるブートコードあるいは情報を格納するというものがある。ブートコードは、装置上に格納されたファームウェアコードの一部である。ブートコードを含むファームウェアは、容易に修正し、更新できることから、ブートコードを格納するためにフラッシュメモリを用いることには利点がある。
【０００４】
ブーティングもしくは起動の際、マイクロプロセッサは記憶装置の特定の場所にあるコードを読み出す。典型的なマイクロプロセッサは、一般に線形記憶装置内のコードにアクセスして実行するように構成されている。線形記憶装置内のデータは、データの行列で構成される一般的な用語でいうところの線形アドレスで特定された位置を読み出すことによりアクセスされる。データの各メモリセル、バイト、あるいはビットは、行および列を特定することによりアクセスされる。プロセッサは、読み出しを行う線形アドレスを順次特定する。
【０００５】
典型的なメモリシステムでは、メモリからホストへデータを転送するプロトコルは、以下のとおりである。１）チップ選択ラインをアサートすることによりメモリ装置を選択する。２）アドレスバスのアドレスをアサートすることにより読み出したアドレスを選択する。３）読み出された信号をアサートする。メモリ装置は、データバス上でアサートされたデータに応答する。
【０００６】
典型的なプログラムは、近接あるいは隣接していないメモリのさまざまな別の領域に格納された命令データを含む。このため、プログラムの実行において、プロセッサは、まず１つの領域にあるアドレスから命令を実行し、その後第２の（さらに第３などの）離れた領域もしくは非隣接領域からのアドレスを実行する。さらに、領域が読み出されたり、あるいは実行される論理順序を指示する基準もない。各プログラムは、それ自体の特定のルーチンに従ってさまざまな領域から実行され得る。
【０００７】
しかし、フラッシュメモリ、特にＮＡＮＤタイプのフラッシュメモリや、ＡＮＤタイプのフラッシュメモリなどのタイプの記憶装置は、線形的にアドレス可能ではない。つまり、プロセッサがブートアップ時にこれらのメモリからのコードを読み出したり、あるいは実行したりすることができないことを意味する。ＮＡＮＤメモリ内の記憶容量は、ページとして参照される別個のデータグループに分割される。データを検索するために、このページを最初に特定し、その後ページの最初の部分からのオフセットとして特定されるページ上のデータ位置についても特定しなければならない。しかし、線形記憶装置と異なり、ページが、例えば５２８バイトの長さである場合、最初に前の２５４バイトを読み出さなければ、バイト番号２５５を読み出すことはできない。さらに、１バイトだけを読み出すのは比較的複雑な手順であり、線形メモリの典型的なタイミング要求事項に従っていない。このことから、これまで線形メモリからのブーティング作業は不可能であった。
【特許文献１】米国特許出願第０９／９２３８７４号
【発明の開示】
【０００８】
非線形記憶装置からのブーティングシステムおよび方法は、非線形記憶装置を用いる電子装置の起動で多く用いられてきた。これを用いて、携帯電話、携帯オーガナイザ、コンピュータ、全地球測位システム、スマート機器などの任意のマイクロプロセッサ制御装置のブートアップを行うが、これらに限定されるものではない。装置をブートアップさせる間待つのは、携帯電話、コンピュータ、携帯オーガナイザや、あるいはその他のスマート装置にかかわらずいらいらするものである。本発明により実行を開始するためのブートコードで必要とされる時間は、実行前のブートコードの陰影表示に頼る従来装置よりも顕著に短い。本発明により作製される装置の費用も、ブートコードを保存する専用のコード記憶装置を用いる装置に比べて安い。
【０００９】
本発明の第１の態様は、非線形記憶装置を含むマイクロプロセッサ制御装置をブートする方法である。この方法は、システムリセット信号を受信するステップと、非線形記憶装置内で非線形記憶装置がシステムブートコードを示すように非線形記憶装置を初期化するステップとを含む。さらに、この方法は、非線形記憶装置からのシステムブートコードの第１の部分をマイクロプロセッサで実行するステップを含む。
【００１０】
本発明の第２の態様は、マイクロプロセッサと、揮発性ＲＡＭと、非線形メモリと、非線形メモリ内のコードをマイクロプロセッサで実行される線形フォーマットに変換するのに動作可能な線形メモリエミュレータとを備えるマイクロプロセッサ制御装置である。
【００１１】
本発明の他の態様は、線形記憶装置を読み出すのに動作可能なマイクロプロセッサと、非線形記憶装置と、線形記憶装置を読み出すのに動作可能なマイクロプロセッサで非線形記憶装置上のコードを実行するための手段とを備えるマイクロプロセッサに基づいたシステムである。
【発明を実施するための最良の形態】
【００１２】
本発明の例示の実施形態の詳細な説明を以下に示す。本発明のこれら実施形態は、前述した図面を参照しながら説明されるが、当業者であれば、説明された方法および／または特定の構造のさまざまな改造もしくは適用ができることは明らかであろう。本発明の教示による改造、適用、あるいは変形、さらにこれらの教示により展開した技術は、全て本発明の範囲内とみなされる。したがって、これらの説明や図面は限定的な意味とみなされるものではなく、本発明は示された実施形態に限定されるものでは決してないと理解される。
【００１３】
非線形記憶装置からのブーティングシステムおよび方法は、非線形記憶装置を用いる電子装置の起動で多く用いられてきた。本発明のシステムおよび方法は、任意のタイプの非線形記憶装置を組み込んだ任意の装置の起動を含んでいるが、本発明を例示するのを目的として、ＮＡＮＤフラッシュメモリについて説明する。
【００１４】
非線形メモリからのブーティングには、ＲＯＭなどの専用のコード記憶装置からのブーティングよりも多くの利点がある。さらに、ＣＰＵが実行可能になる前にＲＡＭメモリにまずコピーを行う、あるいはコードのコピーの陰影をつけなければならないことに比べると利点がある。専用のコード記憶装置（「ＤＣＳＤ」）が利用される場合、本発明により、本発明のシステムまたは方法を用いる電子装置の費用が低減される。ＤＣＳＤがすでにないが、マイクロプロセッサまたはＣＰＵが命令を実行し、かつ装置を起動させるために、装置がまずブート命令をＲＡＭにコピーしなければならない場合、本発明により起動時間は顕著に短くなる。本発明は、仮想的にはどのようなプロセッサでも効果があり、ＤＣＳＤを用いるシステムよりも幅広いプロセッサと共存可能である。装置をブートアップさせる間待つのは、携帯電話、コンピュータ、携帯オーガナイザや、あるいはその他のスマート装置にかかわらずいらいらするものである。本発明により実行を開始するためのブートコードで必要とされる時間は、ほぼ非線形記憶装置のアクセス時間である。ＮＡＮＤの例では、この時間は約１５マイクロ秒であるのに対して、過去のシステムにおいては実行を開始するまででも、陰影表示で数百ミリ秒かかる。
【００１５】
ＣＤ−ＲＯＭ上のソースコードも本願明細書の一部を構成し、その全体が本願明細書において参照により援用されている。
【００１６】
図１Ａは、システム１００を示したものである。プロセッサ１３０は、システムバス１１５を介して多数の他の装置に接続される。システムバス１１５は、非線形記憶装置（ＮＬＳＤ）１４０、非線形記憶装置インタフェース（ＮＬＩ）１２０、プロセッサ１３０、揮発性ランダムアクセスメモリ（ＲＡＭ）１５０、周辺装置１６０、ヒューマンインタフェース装置１７０に接続される。制御ライン１４２は、ＮＬＳＤ１４０とＮＬＩ１２０を接続する。ＮＬＩ１２０は、プログラム可能な論理装置あるいはアプリケーション特定集積回路、またはチップ内のシステムとして説明されることの多いチップが組み込まれた論理ゲートを備える。ＮＬＩ１２０は、前述した装置で実行される論理も含む。周辺装置１６０としては、プリンタもしくは他の出力装置とともに、当該技術分野でよく知られた追加のドライブや他の周辺装置が考えうる。ヒューマンインタフェース装置は、キーボード、モニタ、マウス、マイクロフォン、スピーカなどといったものであり、同様に当該技術分野でよく知られたものである。本発明は、携帯電話といった携帯装置を用いた場合に特に有利であるため、周辺装置やヒューマンインタフェースは全て１つのパッケージに集積してもよいが、従来のように別個の構成要素としてもよい。
【００１７】
前述したように、好ましい実施形態において、ＮＬＳＤ１４０がＮＡＮＤタイプのフラッシュメモリを備える。ＮＬＳＤ１４０内にブートコード１４６が格納される。ブートローダ１４４はブートコード１４６の一部とみなされるか、もしくはその代わりに別個のものとみなされる。明瞭化のために単一ラインで簡単に図示しているが、システムバス１１５との接続のそれぞれで２方向通信が可能であり、複数のラインを含むようにしてもよい。ＮＬＳＤ１４０へデータ転送およびＮＬＳＤ１４０からのデータ転送は、システムバス１１５上で起こるものであるが、ブートローダ１４４がインタフェース１２０を通してＮＬＳＤ１４０から直接実行されるということを強調するために、データの流れの概念図を図１Ｂに示す。
【００１８】
ＮＬＳＤ１４０の記憶スペースをさらに図２に示す。ＮＬＳＤ１４０は、全ての種類のユーザファイルを記憶させるために用いられる多目的の記憶装置であるとともに、ブートアップ時にシステム１００を起動させるために用いられるブートコードである。ファイル記憶部２１０は数キロバイトから数百ギガバイトまでの容量をもつ。デジタル画像、歌、プログラム、その他のデータファイルなどのユーザファイルは、ファイル記憶部２１０内に記憶される。ブートコード１４６およびブートローダ１４４は、不注意に上書きされないように、ＮＬＳＤ１４０の専用領域上に記憶される。これに関するさらに詳しい情報については、２００１年８月６日に出願された同時継続出願中の米国特許出願第０９／９２３８７４号（特許文献１）を参照されたい。この特許出願は、その全体が本願明細書において参照により援用されている。好ましい実施形態において、ブートコード１４６とブートローダ１４４は、必要に応じて、いつでも簡単に更新させることができる。ブートローダ１４４は、ＮＡＮＤメモリ内に１ページのデータを好ましくはもつ。ページの長さは、メモリ構成が異なれば若干変わることが多い。この例では、５１２バイトである。フラッシュメモリは、チップメモリ上に集積されたＰＲＯＭ、コンパクトフラッシュカード、マルチメディアカード（ＭＭＣ）やセキュアデジタル（ＳＤ）カードといったシリアルな非線形フラッシュのような任意の形態でパックされるが、これらに限定されるものではない。
【００１９】
ＮＡＮＤフラッシュメモリには多数の利点があるために幅広い利用がなされているが、メモリ内に格納されたデータが非線形であるという性質から、線形的にアドレス可能なデータを実行するように設計されたマイクロプロセッサでは直接データを実行できない。かつては、マイクロプロセッサにより実行できるようにする前に、データをまずＲＡＭにコピーしなければならなかった。本発明により、ブートローダ１４４はプロセッサにより直接実行される、すなわち実行前にＲＡＭ内に陰影をつけられない。ＮＡＮＤメモリから直接読み出される時間は、かなり早く、１５マイクロ秒のオーダーである。こういった直接的な実行により、システム１００の起動中の貴重な時間を節約する。これは非線形インタフェースで実行され、これについては図４のフローチャートを参照しながら以下でさらに説明する。図３は、信号表、すなわち図４のフローチャートの説明で参照されるインタフェース１２０により用いられるコマンドである。
【００２０】
図４は、図１で示すシステム１００で図示される装置の全起動シーケンスのフローチャートである。システムリセット信号がプロセッサ１３０あるいはインタフェース１２０により受信された後、マイクロプロセッサはステップ２０２で初期化される。トリガ・リセットのタイプは、ハードまたはソフト・リセットのいずれかであり得る。ステップ２０２で、マイクロプロセッサは、インタフェース１２０を通してＮＬＳＤ１４０から直接図１および２で示すブートローダ１４４を実行する。
【００２１】
前述したように、ＮＡＮＤメモリを実行するシステム１００の例において、ブートローダ１００は、ＮＡＮＤメモリの第１のページ内で命令を含む。命令は順次それぞれに流れる。つまり、実行されるべき第１の命令は、読み出されるべき第１の領域内にアドレスをもち、実行されるべき第２の命令は、第１の領域に隣接する第２の領域内にアドレスをもつなど、以下同様となる。ＮＡＮＤフラッシュメモリ内において、そしてさらに他の非線形メモリにおいて、１つの領域、例えば２５５バイトは、その前に（最初の２５４バイトの前に）最初に全ての他の領域を読み出さなければ読み出されないので、これは重要である。
【００２２】
マイクロプロセッサ１３０のクリティカルレジスタは、ステップ２１０Ａ内でセットアップされる。これには、マイクロプロセッサの割り込みを無効にするステップと、目的のメモリの位置を定めるステップと、目的のメモリの初期化を行うステップとを含む。システム１００の例における目的のメモリはＲＡＭ１５０である。目的のメモリは、１つ以上の個別のＲＡＭチップ、プロセッサ１３０内、あるいはブートされているスマート装置内の別の場所にある任意のタイプのメモリであってもよい。マイクロプロセッサのレジスタは、非線形記憶装置としてＮＡＮＤフラッシュメモリを組み込んだ８ビットのシステムについて、以下のようにセットされる。
2006502482.tif 000004
【００２３】
ＮＬＳＤ１４０の動作を例示するために用いられるＮＡＮＤメモリの（読み出しもしくは書き込み）データバイトの転送は、正確にタイミングされなければならない複数の動作を含む複雑なプロセスである。一般的に、ＮＬＳＤ１４０からの読み出しは、アドレス変更に対してＮＬＩ１２０を用いてマイクロプロセッサアドレスラインを監視するステップと、ＮＬＩ１２０がアドレス変更を検出した場合に読み出しラインをＮＬＳＤ１４０にパルス化するステップとを含む。その後、データは、データバス１１５上に置かれ、ＮＬＩ１２０に進み、ここでマイクロプロセッサ１３０までデータバス１１５を通して再びインターン転送される。さらに詳細には、一例として、５２８バイト／ページの非線形メモリにおいて、特定のバイトの転送は、以下に示す４つの主なステップに一般的に従う。
【００２４】
１．インタフェース１２０は、ページ内のバイト位置（アドレス）を計算する。このアドレスは、３バイトの最小値に分割される。５１２Ｍビットの装置については、４バイトの読み出しを行わなければならない。
【００２５】
２．インタフェース１２０は、３つのコマンド（第１の２５６、第２の２５６、あるいは予備領域）のうちの１つから選択する。
【００２６】
３．インタフェース１２０は、ステップ２のコマンドを以下のとおりＮＬＳＤ１４０に書き込む。
ａ．ＮＬＳＤ１４０のチップ選択（ＣＥ）をアサートする。
ｂ．ＮＬＳＤ１４０のコマンドラッチ動作可能（ＣＬＥ）信号をアサートする。
ｃ．ＮＬＳＤ１４０のＩ／Ｏラインのコマンドデータをアサートする。
ｄ．ＮＬＳＤ１４０の書き込みラインをアサートする。
ｅ．ＮＬＳＤ１４０のチップ選択をデアサートする。
ｆ．ＮＬＳＤ１４０のコマンドラッチ動作可能信号をデアサートする。
【００２７】
４．その後、インタフェース１２０は、以下のとおりアドレスを送信する。
ａ．ＮＬＳＤ１４０のチップ選択（ＣＥ）をアサートする。
ｂ．ＮＬＳＤ１４０のアドレスラッチ動作可能信号をアサートする。
ｃ．ＮＬＳＤ１４０のＩ／Ｏラインのアドレスの第１のバイトをアサートする。
ｄ．最小の特定時間（典型的には５０ナノ秒以上）について、ＮＬＳＤ１４０の書き込み動作可能（ＷＥ）ラインをアサートする。
ｅ．ＮＬＳＤ１４０の書き込み動作可能（ＷＥ）をデアサートする。
ｆ．ＮＬＳＤ１４０のＩ／Ｏラインのアドレスの第２のバイトをアサートする。
ｇ．最小の特定時間（典型的には５０ナノ秒以上）について、ＮＬＳＤ１４０の書き込み動作可能（ＷＥ）ラインをアサートする。
ｈ．ＮＬＳＤ１４０の書き込み動作可能（ＷＥ）をデアサートする。
ｉ．ＮＬＳＤ１４０のＩ／Ｏラインのアドレスの第３のバイトをアサートする。
ｊ．最小の特定時間（典型的には５０ナノ秒以上）について、ＮＬＳＤ１４０の書き込み動作可能（ＷＥ）ラインをアサートする。
ｋ．ＮＬＳＤ１４０の書き込み動作可能（ＷＥ）をデアサートする。
ｌ．ＮＬＳＤ１４０のＩ／Ｏラインのアドレスの第４のバイトをアサートする。
ｍ．最小の特定時間（典型的には５０ナノ秒以上）について、ＮＬＳＤ１４０の書き込み動作可能（ＷＥ）ラインをアサートする。
ｎ．ＮＬＳＤ１４０の書き込み動作可能（ＷＥ）をデアサートする。
ｏ．ＡＬＥをデアサートする。
【００２８】
ＮＬＤＳ１４０が２００ナノ秒までの遅延でビジー（ＢＵＳＹ）になるようにアサートし、ＮＬＳＤ１４０がＣＥ信号を発するたびに、ＮＬＳＤ１４０がビジーのままで、ＣＥ信号がアサートされたままでなければならないということに留意するのは重要である。マイクロプロセッサ１２０は、ＮＬＳＤ１４０がレディー（ＲＥＡＤＹ）になっている場合にのみ、ＮＬＳＤ１４０から順次データを読み出すことができる。
【００２９】
再び図４を参照すると、ブートローダ１４４内の命令には、一度読み出され、かつ実行された命令が、ブートコード１４６の残りをＲＡＭ１５０にコピーするというものがある。これらの命令がＮＬＳＤ１４０から直接マイクロプロセッサにより読み出され、かつ実行されるときに、ステップ２１０Ｂで、ブートコード１４６をＲＡＭ１５０にコピーする。ステップ２１４で、ＲＡＭ１５０からのブートコード１４６のコピー部分をマイクロプロセッサが実行する。
【００３０】
本発明にはさまざまな利点がある。インタフェース１２０は、非常に安価なプログラム可能な論理装置であるＡＳＩＣを用いるか、あるいはチップ設計においてシステムのプロセッサに組み込んでもよい。このシステムは、最大の可能なアクセス速度をもつように設計されたことによって、本発明のシステムまたは方法を組み込んだ任意の装置の起動時間を最小化できる。このシステムにより、プログラマは、利用および組み込みを簡単に行うことのできるシステムにするために、単純なレジスタに基づいたアクセスモデルが得られることになる。このシステムは、異なるシステム構成やプラットフォームも支持する。例えば、８，１６，３２あるいは他のビット数のシステムが支持される。
【００３１】
本発明の実施形態を示して説明してきたが、本発明の広範な観点から逸脱することなく、これら例示の実施形態に対する変更や改造は可能である。したがって、本発明の他の実施形態があるということは明らかであり、明確に前述されていないが、こういった他の実施形態についても本発明の範囲内にあるため、本発明の範囲は提示した例示の実施形態だけに限定されるものではない。したがって、添付の特許請求の範囲が本発明の範囲を定めるということを理解すべきである。しかし、本発明の範囲を説明するにはことばだけでは不十分であるため、特許請求の範囲においてことばで説明されていなくとも同等の構成や方法についても本発明の範囲内にあるということも理解すべきである。
【図面の簡単な説明】
【００３２】
【図１Ａ】システム１００の概略図である。
【図１Ｂ】システム１００の動作概念図である。
【図２】システム１００の非線形記憶装置１４０の記憶容量を例示する図である。
【図３】システム１００で用いられ、説明で引用される信号表である。
【図４】一般的なブートアップシーケンスのフローチャートである。
【図１Ａ】
2006502482.tif 000005
【図１Ｂ】
2006502482.tif 000006
【図２】
2006502482.tif 000007
【図３】
2006502482.tif 000008
【図４】
2006502482.tif 000009
【国際調査報告】
2006502482.tif 000010
2006502482.tif 000011
2006502482.tif 000012