(57)【要約】  Ｎビットアドレス空間のアドレス指定を行うときの、前に知られていたよりも低い記録要件及び高い実行速度により特徴付けられるような、マイクロコントローラ及びアドレス指定方法（Ｎビットアドレスワードのアドレス長Ｎは、マイクロコントローラの標準命令セット又はその他の命令セットの等価物のアドレス長よりも大きい）を提供するために、マイクロコントローラ（１０）は、少なくとも１つのステータスビット（１２）を有しており、当該少なくとも１つのステータスビット（１２）を利用して、前記マイクロコントローラ（１０）の少なくとも１つの標準命令によるＮビットアドレスワードの書き込み及び／又は読み出しを強制的に行う事が可能であり、マイクロコントローラ（１０）の少なくとも１つのステータスビット（１２）が設定され、その結果として、マイクロコントローラ（１０）の少なくとも１つの標準命令を利用したＮビットアドレスワードの書き込み及び／又は読み出しが強制的に行われる。
2007528046.tif 000002
【特許請求の範囲】
【請求項１】
マイクロコントローラであって、前記マイクロコントローラは、少なくとも１つのステータスビットを有しており、当該少なくとも１つのステータスビットを利用して、前記マイクロコントローラの少なくとも１つの標準命令によるＮビットアドレスワードの書き込み及び／又は読み出しを強制的に行う事が可能であり、前記Ｎビットアドレスワードのアドレス長Ｎは、前記マイクロコントローラの標準命令セット又はその他の命令セットの等価物のアドレス長よりも大きい、マイクロコントローラ。
【請求項２】
前記Ｎビットアドレスワードの前記アドレス長Ｎは、１６よりも大きい事を特徴とする請求項１に記載のマイクロコントローラ。
【請求項３】
前記Ｎビットアドレスワードの前記アドレス長Ｎは、２０、２４、又は３２の値を持つ事を特徴とする請求項２に記載のマイクロコントローラ。
【請求項４】
前記少なくとも１つの標準命令は、ＬＣＡＬＬ、ＡＣＡＬＬ、又はＲＥＴ命令、又はこれらと等価なものである事を特徴とする請求項１乃至３のいずれか１項に記載のマイクロコントローラ。
【請求項５】
前記少なくとも１つのステータスビットは、少なくとも１つのコンピュータ可読記録媒体を利用して設定可能及び／又は削除可能である事を特徴とする請求項１乃至４のいずれか１項に記載のマイクロコントローラ。
【請求項６】
前記少なくとも１つのステータスビットは、少なくとも１つの特殊機能レジスタの一部である事を特徴とする請求項１乃至５のいずれか１項に記載のマイクロコントローラ。
【請求項７】
前記少なくとも１つのステータスビットは、前記マイクロコントローラのハードウェア内にインプリメントされている事を特徴とする請求項１乃至６のいずれか１項に記載のマイクロコントローラ。
【請求項８】
スマートカード内で使用するように設計されていることを特徴とする請求項１乃至７のいずれか１項に記載のマイクロコントローラ。
【請求項９】
アドレス指定方法であって、マイクロコントローラの少なくとも１つのステータスビットが設定され、その結果として、前記マイクロコントローラの少なくとも１つの標準命令を利用したＮビットアドレスワードの書き込み及び／又は読み出しが強制的に行われる事を特徴とする方法。
【請求項１０】
前記少なくとも１つの標準命令は、ＬＣＡＬＬ、ＡＣＡＬＬ、又はＲＥＴ命令、又はこれらと等価なものである事を特徴とする請求項９記載の方法。
【請求項１１】
前記少なくとも１つのステータスビットは、少なくとも１つのコンピュータ可読記録媒体を利用して設定可能及び／又は削除可能である事を特徴とする請求項９又は１０記載の方法。
【請求項１２】
前記少なくとも１つのステータスビットは、少なくとも１つの特殊機能レジスタの一部である事を特徴とする請求項９乃至１１のいずれか１項記載の方法。
【請求項１３】
前記少なくとも１つのステータスビットは、前記マイクロコントローラのハードウェア内にインプリメントされている事を特徴とする請求項９乃至１２のいずれか１項記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、請求項１及び６のプリアンブルに記載の特徴を有するマイクロコントローラ及びアドレス指定方法に関する。
【背景技術】
【０００２】
新世代の８ビットマイクロコントローラは、１６Ｍｂｙｔｅにまで至るますます大きなアドレス空間を使用する。そのような拡張されたアドレス空間のアドレス指定のために、ＥＣＡＬＬ及びＥＲＥＴのような追加の命令が導入されており、ＥＣＡＬＬ及びＥＲＥＴは、２４ビットアドレスを使用することによってアドレス空間全体のアドレス指定を行うと共に、２４ビットアドレスをＣＰＵスタックに書き込むことができ、それらをそこから読み取ることができる。８ビットマイクロコントローラの、８０Ｃ５１標準命令セットの命令ＬＣＡＬＬ、ＡＣＡＬＬ、及びＲＥＴ、又はその他の命令セットの等価物（ｅｑｕｉｖａｌｅｎｔｓ）は、たとえ拡張されたアドレス領域が使用されるとしても、１６ビットアドレスのみを書き込み、読み取る。それらは、従って、拡張されたアドレス空間の場合には事実上使用不可能である、又は特定の条件下でのみ使用可能である。拡張された命令ＥＣＡＬＬ及びＥＲＥＴ、又は適切な等価物が使用される必要があるが、これは、相当により多くのコードを、更にはより多くの実行時間を必要とする。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
従って、本発明の一目的は、相対的に大きいアドレス長、特に１６ビットよりも大きいアドレス長を利用してアドレス空間のアドレス指定を行うときの、前に知られていたよりも低い記録要件及び高い実行速度によって特徴付けられるような、マイクロコントローラ及びアドレス指定方法を提供することである。
【課題を解決するための手段】
【０００４】
この目的は、本発明によれば、請求項１に記載の特徴を有するマイクロコントローラと請求項６に記載の特徴を有するアドレス指定方法によって達成される。本発明によるマイクロコントローラは、前記マイクロコントローラが、少なくとも１つのステータスビットを有しており、当該少なくとも１つのステータスビットを利用して、前記マイクロコントローラの少なくとも１つの標準命令によるＮビットアドレスワードの書き込み及び／又は読み出しを強制的に行う事が可能であり、前記標準命令が好適には、ＬＣＡＬＬ、ＡＣＡＬＬ、又はＲＥＴ命令、又はこれらと等価なものであり、前記Ｎビットアドレスワードのアドレス長Ｎが、前記マイクロコントローラの標準命令セット又はその他の命令セットの等価物のアドレス長よりも大きい、ということに特徴付けられる。従って、前記標準命令セットはＮビットアドレス空間に拡張される。特に、前記Ｎビットアドレスワードの前記アドレス長Ｎは、１６よりも大きい。特に好適には、前記Ｎビットアドレスワードの前記アドレス長Ｎは、２０、２４、又は３２の値を持つ。従って、このＮビットアドレス空間は追加の専用命令だけに残されるのではなく、むしろ、完全な命令セットが拡張をサポートすることができる。これはまた、例えばＥＣＡＬＬが３バイトをスタックに書き込んだものの、サブルーチンが、スタック上に１６ビットアドレスだけが存在するという仮定の下、ＲＥＴだけで返したときに生じ得る矛盾（ｃｏｎｆｌｉｃｔｓ）を回避する。本発明による手段のおかげで、コンパイルされたコードの約５乃至１０％という相当な削減と、速度の向上とが達成される。更なる利点は、例えばＡＣＡＬＬの最適化のような、特定のプログラムの最適化がより容易に可能なことであり、ＡＣＡＬＬの最適化では、ＬＣＡＬＬ／ＥＣＡＬＬ命令を、著しくより小さいＡＣＡＬＬ命令と置き換える試みがなされる。「拡張されたコール／リターンモード」なしでは、この最適化は効果がない。
【０００５】
本発明の好ましい一改良では、前記少なくとも１つのステータスビットが、少なくとも１つのコンピュータ可読記録媒体を利用して設定可能及び／又は削除可能であることがもたらされる。これにより、マイクロコントローラのフレキシビリティの増大が有意義に達成される。
【０００６】
更に、本発明の好ましい一改良では、前記少なくとも１つのステータスビットが、少なくとも１つの特殊機能レジスタ（ＳＦＲ：Ｓｐｅｃｉａｌ  Ｆｕｎｃｔｉｏｎ  Ｒｅｇｉｓｔｅｒ）の一部であることがもたらされる。その理由は、マイクロコントローラの標準命令を利用して、ＳＦＲ全体に書き込み可能及びＳＦＲ全体から読み出し可能になるからである。
【０００７】
加えて、本発明の好ましい一改良では、前記少なくとも１つのステータスビットが、前記マイクロコントローラのハードウェア内にインプリメントされていることがもたらされる。その理由は、この手法で、効率の向上が達成されるからである。
【０００８】
本発明によるアドレス指定方法は、マイクロコントローラの少なくとも１つのステータスビットが設定され、その結果として、前記マイクロコントローラの少なくとも１つの標準命令を利用したＮビットアドレスワードの書き込み及び／又は読み出しが強制的に行われ、前記標準命令が好適には、ＬＣＡＬＬ、ＡＣＡＬＬ、又はＲＥＴ命令、又はこれらと等価なものである、ということに特徴付けられる。従って、前記標準命令セットはＮビットアドレス空間に拡張される。従って、Ｎビットアドレス空間は追加の専用命令だけに残されるのではなく、むしろ、完全な命令セットが拡張をサポートすることができる。これはまた、例えばＥＣＡＬＬが３バイトをスタックに書き込んだものの、サブルーチンが、スタック上に１６ビットアドレスだけが存在するという仮定の下、ＲＥＴだけで返したときに生じ得る矛盾を回避する。本発明による手段のおかげで、コンパイルされたコードの約５乃至１０％という相当な削減と、速度の向上とが達成される。更なる利点は、例えばＡＣＡＬＬの最適化のような、特定のプログラムの最適化がより容易に可能なことであり、ＡＣＡＬＬの最適化では、ＬＣＡＬＬ／ＥＣＡＬＬ命令を、著しくより小さいＡＣＡＬＬ命令と置き換える試みがなされる。「拡張されたコール／リターンモード」なしでは、この最適化は効果がない。
【０００９】
本発明による方法のコンテキスト内では、好適には、前記少なくとも１つのステータスビットが、少なくとも１つのコンピュータ可読記録媒体を利用して設定可能及び／又は削除可能であることがもたらされる。これにより、マイクロコントローラのフレキシビリティの増大が有意義に達成される。
【００１０】
更に、本発明による方法のコンテキスト内では、好適には、前記少なくとも１つのステータスビットが、少なくとも１つの特殊機能レジスタ（ＳＦＲ）の一部であることがもたらされる。その理由は、マイクロコントローラの標準命令を利用して、ＳＦＲ全体に書き込み可能及びＳＦＲ全体から読み出し可能になるからである。
【００１１】
最後に、本発明による方法のコンテキスト内では、好適には、前記少なくとも１つのステータスビットが、前記マイクロコントローラのハードウェア内にインプリメントされていることがもたらされる。その理由は、この手法で、効率の向上が達成されるからである。
【００１２】
本発明の更に好ましい改良は、従属請求項に記載のその他の特徴から明らかになる。
【発明を実施するための最良の形態】
【００１３】
本発明は、図面に示した実施形態の一例を参照して更に説明される事になるが、本発明は、図面に示した実施形態の一例には限定されない。
【００１４】
図１は、本発明によるマイクロコントローラ１０の概略図を示している。特殊機能レジスタ１６内には、コンピュータ可読記録媒体１４を利用して設定可能及び削除可能なステータスビット１２がインプリメントされている。ステータスビット１２の設定により、Ｎビットアドレスワード（この場合は例えばＮ＝２４のアドレス長を有する）を、標準命令ＬＣＡＬＬ、ＡＣＡＬＬ、及びＲＥＴを利用してスタックに書き込む事又はスタックから読み取る事が強制的に行われ、その結果として、２４ビットアドレス空間２０全体のアドレス指定が可能になる。ステータスビット１２が設定されていない場合には、１６ビットアドレス空間１８のみが、標準命令を利用してアドレス指定可能である。本発明による手段のおかげで、従来技術と比較した、マイクロコントローラ１０のコンパイルされたコードの記録要件の削減及び実行速度の向上が達成される。
【図面の簡単な説明】
【００１５】
【図１】マイクロコントローラを示している。
【符号の説明】
【００１６】
１０  マイクロコントローラ
１２  ステータスビット
１４  コンピュータ可読記録媒体
１６  特殊機能レジスタ
１８  １６ビットアドレス空間
２０  ２４ビットアドレス空間
Ｎ  Ｎビットアドレスワードのアドレス長
2007528046.tif 000003
【国際調査報告】
2007528046.tif 000004
2007528046.tif 000005
2007528046.tif 000006