JP3583918B2 - マイクロプロセッサ - Google Patents

マイクロプロセッサ Download PDF

Info

Publication number
JP3583918B2
JP3583918B2 JP02997198A JP2997198A JP3583918B2 JP 3583918 B2 JP3583918 B2 JP 3583918B2 JP 02997198 A JP02997198 A JP 02997198A JP 2997198 A JP2997198 A JP 2997198A JP 3583918 B2 JP3583918 B2 JP 3583918B2
Authority
JP
Japan
Prior art keywords
instruction
address
stored
register
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP02997198A
Other languages
English (en)
Other versions
JPH11232098A (ja
Inventor
真一 井上
裕 藤巻
泰生 山田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kawasaki Microelectronics Inc
Original Assignee
Kawasaki Microelectronics Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kawasaki Microelectronics Inc filed Critical Kawasaki Microelectronics Inc
Priority to JP02997198A priority Critical patent/JP3583918B2/ja
Publication of JPH11232098A publication Critical patent/JPH11232098A/ja
Application granted granted Critical
Publication of JP3583918B2 publication Critical patent/JP3583918B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Executing Machine-Instructions (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、命令が格納されているメモリから命令を読み出して実行するマイクロプロセッサに関する。
【0002】
【従来の技術】
近年のLSI技術の発達によって、メモリの大容量化が進んでおり、それに伴って、広いアドレス空間を取り扱うことができる新型のマイクロプロセッサが開発されている。この開発の際には、狭いアドレス空間を取り扱うことしかできない旧型のマイクロプロセッサをベースに用い、広いアドレス空間を表すアドレスデータの上位桁用のレジスタを新たに設けて、狭いアドレス空間を拡張することが一般的である。
【0003】
図1は、旧型のマイクロプロセッサに備えられているレジスタセット(A)、および新型マイクロプロセッサに備えられているレジスタセット(B)の一例を示す図である。
旧型のマイクロプロセッサには、プログラムカウンタ11、汎用DEレジスタ12、汎用HLレジスタ13およびスタックポインタ14といったレジスタが備えられている。これらのレジスタそれぞれは16ビットのビット幅を有しており、この旧型のマイクロプロセッサが取り扱うことができるアドレスは16進数表示で0000h番地からFFFFh番地までのアドレスである。以下、最後に「h」が付された数字は16進数表示であるものとする。
【0004】
新型のマイクロプロセッサにも、それぞれ16ビットのビット幅を有するプログラムカウンタ15、汎用DEレジスタ16、汎用HLレジスタ17およびスタックポインタ18が備えられており、更に、それぞれ8ビットのビット幅を有するPPCレジスタ19およびZPレジスタ20が備えられている。PPCレジスタ19およびプログラムカウンタ15が、両者が組み合わされた1つのレジスタとして用いられ、ZPレジスタ20が、汎用DEレジスタ16、汎用HLレジスタ17およびスタックポインタ18それぞれと組み合わされて用いられることによって、新型のマイクロプロセッサが取り扱うことができるアドレスは、000000h番地からFFFFFFh番地までのアドレスとなり、旧型のマイクロプロセッサが取り扱うことができるアドレス空間を1ページと考えると、新型のマイクロプロセッサが取り扱うことができるアドレス空間は、256ページ分のアドレス空間となっている。以下では、アドレス空間およびメモリがそのようなページを有するものとして説明する。ZPレジスタ20等は、アドレス空間およびメモリが有するページを示すデータが格納されるページレジスタとして用いられる。
【0005】
【発明が解決しようとする課題】
ところで、旧型のマイクロプロセッサ用に作成されたソフトウェアの蓄積は大きく、このため、これらのソフトウェアが、アドレス空間が拡張された新型のマイクロプロセッサにおいてそのまま利用できるいわゆる互換性を有することが望ましい。新型のマイクロプロセッサがこのような互換性を有するためには、アセンブラ言語の文字列や機械語の命令コードといった、旧型のマイクロプロセッサ上で使用されている命令表記が、新型のマイクロプロセッサ上でそのまま使用されるとともに、新型のマイクロプロセッサ上でそれらの命令表記に応じて実行される命令内容が、旧型のマイクロプロセッサ上でそれらの命令表記に応じて実行されている命令内容と矛盾しないことが必要である。
【0006】
従来より、このような互換性を有する新型のマイクロプロセッサとして、旧型のマイクロプロセッサ上で使用されている命令表記をそのまま使用し、それらの命令表記に応じた命令内容が実行される際には、ページレジスタが、汎用HLレジスタ等に常に従属されて用いられる第1のマイクロプロセッサが知られている。このマイクロプロセッサでは、例えば、旧型のマイクロプロセッサにおいて用いられている、アセンブラ言語の「LD A,(HL)」という文字列、および機械語の、この文字列に対応する命令コードがそのまま用いられ、その命令表記が「メモリの、ZPレジスタおよび汎用HLレジスタに格納されている24ビットのデータが示すアドレスに格納されているデータを読み込んでアキュムレータに格納する」という命令内容を表すものとして実行される。
【0007】
ただし、旧型のマイクロプロセッサ上で使用されている命令表記は、16ビットのアドレス空間を前提としている命令表記であるため、ZPレジスタに格納される、ページを示すデータを直接的に指定する命令を表すのに適当な命令表記が存在しない。そこで、この第1のマイクロプロセッサでは、ZPレジスタには、メモリ上の、実行される命令が格納されているアドレスのページを示すデータがハードウェアによって自動的に格納される。
【0008】
しかし、この第1のマイクロプロセッサでは、アドレス空間のページをソフトウェアで直接指定することができないので、アドレス空間全域を、ページを越えて使用することが困難となり、このため、アドレス空間が拡張されたことによるメリットが著しく損なわれるという問題がある。
この問題点に対応するために、この第1のマイクロプロセッサが改良されて、ZPレジスタに格納されるデータを直接的に指定するための新たな命令表記が用意された第2のマイクロプロセッサが知られている。この第2のマイクロプロセッサでは、例えば、「LD ZP,00h」という新たな命令表記によって、「ZPレジスタに00hを格納する」という命令内容が表され、ソフトウェアでページを直接指定することができる。
【0009】
しかし、この第2のマイクロプロセッサ上で、旧型のマイクロプロセッサ用に作られたソフトウェアをサブルーチンとして使用し、ZPレジスタに格納されているデータが、このサブルーチンが格納されているページとは異なるページを示していると、このサブルーチンの作成時には、当然ながら、ページを越えてアドレス空間を利用することは考慮されていないにもかかわらず、ページを越えたデータ参照等が行われて動作異常となるという問題がある。
【0010】
また、互換性を有する新型のマイクロプロセッサとして、旧型のマイクロプロセッサ上で使用されている命令表記および命令内容をそのまま使用するとともに、ZPレジスタと汎用HLレジスタが組み合わされたレジスタ等を使用するための命令表記および命令内容が新たに用意された第3のマイクロプロセッサも知られている。このマイクロプロセッサでは、新たな命令表記として、例えば、「LD A,(ZHL)」という文字列およびその文字列に対応する命令コードが用意され、その命令表記が、上述した命令内容を表すものとして実行される。
【0011】
しかし、このような新たな命令表記として用意される機械語の命令コードは、短いバイトを有する命令コードが、旧型のマイクロプロセッサ用の命令表記としてほとんど使用済みであるために、長いバイト長を有する命令コードとなる。その結果、機械語のプログラムの大きさが大きくなりがちで、実効速度が低下しがちであるという問題がある。また、用意されるべき新たな命令コードの数が多く、命令コードをデコードするための回路が大きくなるという問題もある。
【0012】
上述した問題は、狭いアドレス空間を取り扱うことしかできない旧型のマイクロプロセッサをベースに用い、広いアドレス空間を表すアドレスデータの上位桁用のレジスタを新たに設けて、狭いアドレス空間を拡張した新型のマイクロプロセッサを開発する場合に一般的に生じる問題である。
本発明は、上記事情に鑑み、旧型のマイクロプロセッサのアドレス空間が拡張された広いアドレス空間を有し、その広いアドレス空間を自由に利用でき、旧型のマイクロプロセッサ用のソフトウェアがそのまま利用できるマイクロプロセッサを提供することを目的とする。
【0013】
【課題を解決するための手段】
上記目的を達成する本発明のマイクロプロセッサは、複数の命令が格納されるメモリから命令を読み出して実行するマイクロプロセッサにおいて、
上記メモリの、実行しようとする命令が格納されているアドレスが所定の領域内のアドレスであるか否かを判定する判定回路と、
判定回路の判定結果に応じて、命令の種類によっては、表記上同一の命令を相互に異なる命令として実行する命令実行部とを備えたことを特徴とする。
【0014】
本発明のマイクロプロセッサは、上記命令実行部が、上記メモリのアクセスを指示する所定の命令に関し、上記判定回路により、その命令が格納されているアドレスが上記所定領域内のアドレスであると判定されたか否かに応じて、それぞれ、任意に選択されたアドレスをその所定領域内のアドレスに変換してその変換後のアドレスへのアクセスを行い、あるいは、任意に選択されたアドレスへのアクセスを行うものであっても良く、
演算結果が格納されるレジスタを備え、
上記命令実行部が、演算を実行して演算結果を上記レジスタに格納する所定の命令に関し、上記判定回路により、その命令が格納されているアドレスが上記所定領域内のアドレスであると判定されたか否かに応じて、それぞれ、上記レジスタの所定の上位部分についてはそれまでに格納されていたデータを保有するとともに、そのレジスタの上位部分を除く下位部分にのみ演算結果の下位部分を格納し、あるいは、上記レジスタ全域に演算結果全体を格納するものであっても良く、
上記メモリのページをあらわすデータが格納される、それぞれが各所定の命令に対応して備えられた複数のページレジスタを有し、そのメモリの、アクセス可能なページを指定するページ指定部を備え、
上記命令実行部が、ページレジスタに対応付けられた所定の命令に関し、上記判定回路により、その命令が格納されているアドレスが上記所定領域内のアドレスであると判定されたか否かに応じて、それぞれ、その命令を、その命令の実行の前後で内部状態を保存する形態の無意味命令として実行し、あるいは、ページ指定部を、その命令に対応したページレジスタに格納されたデータにより上記メモリのアクセス可能なページが指定されるように切り換えるものであっても良い。
【0015】
【発明の実施の形態】
以下、本発明の実施形態について説明する。
図2は、本発明のマイクロプロセッサの概要を示す図である。
このマイクロプロセッサ100は、命令が格納されるメモリ110に、外部バス112を介して接続されており、このメモリ110は、旧型のマイクロプロセッサ用に作成されたプログラムが格納される、000000h番地から00FFFFh番地までの2の16乗ビットの互換領域111を含む、2の24乗ビットのアドレス空間を有する。
【0016】
このマイクロプロセッサ100には、それぞれ16ビットのビット幅を有するプログラムカウンタ121、汎用DEレジスタ122、汎用HLレジスタ123およびスタックポインタ124が備えられており、これらのレジスタのデータがバス130を介して格納され取出される。また、このマイクロプロセッサ100には、それぞれ8ビットのビット幅を有するアキュムレータ125、PPCレジスタ126、ZPレジスタ127およびXPレジスタ128が備えられており、これらのレジスタのデータも、バス130を介して格納され取出される。PPCレジスタ126は、プログラムカウンタ121とともに用いられるレジスタであり、メモリ110の、実行しようとする命令が格納されているページを示すデータが格納される。ZPレジスタ127は汎用DEレジスタ122、汎用HLレジスタ123およびスタックポインタ124それぞれとともに用いられるページレジスタであり、メモリ110のページを示すデータが格納される。XPレジスタ128は、ZPレジスタ127と同様のページレジスタであり、XPレジスタ128およびZPレジスタ127のいずれか一方のページレジスタが、図示が省略されている切換回路によって切換自在に用いられる。
【0017】
また、このマイクロプロセッサ100には、命令フェッチ・解読回路140と、判定回路150と、命令実行回路160とアクセス回路180が備えられており、命令フェッチ・解読回路140によって、メモリ110の、PPCレジスタ126およびプログラムカウンタ121に格納されているデータが示すアドレスに格納されている命令が、アクセス回路180を介してフェッチされ解読されて命令実行回路160に送られる。この命令フェッチ・解読回路140において解読することができる命令表記は、上述した従来技術の第2のマイクロプロセッサと同様である。判定回路150によって、後述するように、命令フェッチ・解読回路140によってフェッチされた命令が格納されていたアドレスが互換領域111内のアドレスであるか否かが、PPCレジスタ126に格納されているデータに基づいて判定され、その判定結果が命令実行回路160に送られる。また、命令実行回路160によって、判定回路150による判定結果に応じて、命令フェッチ・解読回路140から送られてきた命令が実行されて、アクセス回路180を介したメモリ110のアクセスや、バス130を介した各種データの格納・取出・演算が行われる。
【0018】
図3は、第1の実施形態の特徴部分を示す図である。
本実施形態では、図2に示す判定回路150は比較器151で構成されており、この比較器151では、図2に示すPPCレジスタ126に格納されている8ビットデータの値と、値「00h」が比較され、これによって、実行しようとする命令が格納されているアドレスが、図2に示す互換領域111内のアドレスであるか否かが判定される。これらの値が互いに一致していると、比較器151から値「00h」が出力され、これらの値が一致していないと値「FFh」が出力される。
【0019】
また、本実施形態では、図2に示す命令実行回路160には、図2に示すメモリ110のアクセスを指示する命令に対応するために8ビットの論理回路161が設けられており、この論理回路161によって、比較器151から出力された値と、図2に示すZPレジスタ127に格納されている8ビットデータの値との論理積が行われる。この論理積の結果は、実行しようとする命令が格納されているアドレスが、図2に示す互換領域111内のアドレスであると値「00h」となり、互換領域111外のアドレスであると、ZPレジスタ127に格納されている8ビットデータの値そのままになる。この論理積の結果が、図2に示すメモリ110のアドレス線の上位8ビット分に出力される。
【0020】
図4は、第1の実施形態において命令が実行される様子を示す図である。
図4には、図2に示すメモリ110が有するアドレス空間が示されており、上述したように、000000h番地から00FFFFh番地までが互換領域111である。この互換領域111内には、旧型のマイクロプロセッサ用に作成されたサブルーチンプログラム「_SUB」が格納されており、互換領域111を除くアドレス空間には、新たに作成され、サブルーチンプログラム「_SUB」を利用するプログラムが格納されている。
【0021】
「LD ZP,A0h」なる表記で表される命令201から実行が開始されてZPレジスタに値「A0h」が格納され、「LD HL,8000h」なる表記で表される命令202が実行されて汎用HLレジスタに値「8000h」が格納される。次に、「LD A,(HL)」なる表記で表される命令203が実行され、汎用HLレジスタが示すアドレスに格納されているデータがアキュムレータに読み込まれるが、命令203が互換領域111外に格納されているので、図2に示すメモリ110のアドレス線の上位8ビット分には、ZPレジスタに格納されている値「A0h」が出力されており、結局A08000h番地に格納されている、文字列「Q」を示すデータ204が読み込まれる。
【0022】
その後、「CALL _SUB」なる表記で表される命令205が実行されて、プログラムの流れが、互換領域111内に格納されているサブルーチンプログラム「_SUB」に移り、「LD HL,8000h」なる表記で表される命令206が実行されて汎用HLレジスタに値「8000h」が格納される。次に、命令203の命令表記と同一の「LD A,(HL)」なる表記で表される命令207が実行されるが、この場合には、命令207は互換領域111内に格納されているので、図2に示すメモリ110のアドレス線には値「00h」が出力されている。すると、ZPレジスタに格納されている値「A0h」は、いわば無視されて、実質上、互換領域111内のアドレスへの変換が行われる。その結果、互換領域111内の008000h番地に格納されている、文字列「P」を示すデータ208が読み込まれる。
【0023】
このように、本実施形態では、互換領域111内に格納された命令が実行される際には、互換領域内に限定されたアドレス空間が指定されることとなるので、互換領域111内に格納された旧型のマイクロプロセッサ用のプログラムをそのまま利用することができる。一方、互換領域111を除くアドレス空間上に格納されている命令が実行される際には、ZPレジスタに格納される値が管理されることによってアドレス空間全域を自由に利用することができる。従って、新たにプログラムを作成した場合には、そのプログラムを、互換領域111を除くアドレス空間上に格納することによってアドレス空間全域を自由に利用することができる。
【0024】
以下、本発明の第2の実施形態について説明するが、第2の実施形態の概要は、図2に示す第1の実施形態の概要と同様であるので重複説明は省略する。
図5は、本発明の第2の実施形態の特徴部分を示す図である。
本実施形態では、図2に示す判定回路150は比較器152で構成されており、図3に示す比較器151同様に、図5に示す比較器152では、図2に示すPPCレジスタ126に格納されている8ビットデータの値と、値「00h」が比較され、これによって、実行しようとする命令が格納されているアドレスが、図2に示す互換領域111内のアドレスであるか否かが判定される。これらの値が互いに一致していると、比較器152から値「0」が出力され、これらの値が一致していないと値「1」が出力される。
【0025】
また、本実施形態では、図2に示す命令実行回路160には、演算を実行して、その演算結果をページレジスタおよび汎用レジスタに格納する命令に対応するために論理素子162が設けられている。この論理素子162には、比較器152から出力された値と、図2に示すZPレジスタ127へのデータ格納の可不可を制御する1ビットの制御信号が入力され、これらの論理積が行われる。この論理積の結果は、実行しようとする命令が格納されているアドレスが、図2に示す互換領域111内のアドレスであると、ZPレジスタへのデータ格納を禁止する値「0」となり、互換領域111外のアドレスであると、1ビットの制御信号そのままになる。この論理積の結果が、図2に示すZPレジスタ127へのデータ格納の可不可を制御するためのイネーブル端子へ出力される。
【0026】
図6は、第2の実施形態において命令が実行される様子を示す図である。
図4同様に図6には、図2に示すメモリ110が有するアドレス空間が示されており、上述したように、000000h番地から00FFFFh番地までが互換領域111である。この互換領域111内には、旧型のマイクロプロセッサ用に作成されたサブルーチンプログラム「_SUB」が格納されており、互換領域111を除くアドレス空間には、新たに作成され、サブルーチンプログラム「_SUB」を利用するプログラムが格納されている。
【0027】
「LD ZP,01h」なる表記で表される命令301から実行が開始されてZPレジスタに値「01h」が格納され、「CALL _SUB」なる表記で表される命令302が実行されて、プログラムの流れが、互換領域111内に格納されているサブルーチンプログラム「_SUB」に移る。次に、「LD HL,8000h」なる表記で表される命令303が実行されて汎用HLレジスタに値「8000h」が格納され、「LD DE,F000h」なる表記で表される命令304が実行されて汎用DEレジスタに値「F000h」が格納される。次に、「ADD HL,DE」なる表記で表される命令305が実行される。本実施形態では、この命令表記は、「ZPレジスタおよび汎用HLレジスタに格納されている24ビットの値に、汎用DEレジスタに格納されている16ビットの値を足して、ZPレジスタおよび汎用HLレジスタに格納する」という命令として解釈されるが、命令305は、互換領域111内に格納されているので、ZPレジスタへの計算結果の格納は禁止され、ZPレジスタに格納されている値が保持される。従って命令305が実行された後、汎用HLレジスタに格納されている値は「7000h」であり、ZPレジスタに格納されている値は「01h」のままであって、足し算による桁上がりがいわば無視されたこととなる。
【0028】
その後、「RET」なる表記で表される命令306が実行されてプログラムの流れがリターンし、「LD HL,8000h」なる表記で表される命令307が実行されて汎用HLレジスタに値「8000h」が格納され、「LD DE,F000h」なる表記で表される命令308が実行されて汎用DEレジスタに値「F000h」が格納される。次に、命令305の命令表記と同一の「ADD HL,DE」なる表記で表される命令309が実行されて、ZPレジスタおよび汎用HLレジスタに格納されている24ビットの値に、汎用DEレジスタに格納されている16ビットの値が足されて、ZPレジスタおよび汎用HLレジスタに格納される。命令309は互換領域111外に格納されているので、値「8000h」と値「F000h」との足し算によって生じた桁上がりがZPレジスタに反映される。命令309が実行される前のZPレジスタには、命令301で格納された値「01h」が、サブルーチンの実行を経た後も保持されているので、桁上がりが反映されるとZPレジスタには値「02h」が格納される。この結果、「JP(HL)」なる表記で表される命令310が実行されると、027000h番地へとジャンプする。この実行結果は、命令302を取り除いたプログラムを想定した場合でも全く同様である。
【0029】
このように、本実施形態では、旧型のマイクロプロセッサ用のプログラムをサブルーチンとして用いても、ZPレジスタに格納されている値がサブルーチン内で変更されないので、旧型のマイクロプロセッサ用のプログラムをそのまま有効に利用することができる。
以下、本発明の第3の実施形態について説明するが、第3の実施形態の概要も、図2に示す第1の実施形態の概要と同様であるので重複説明は省略する。
【0030】
図7は、本発明の第3の実施形態の特徴部分を示す図である。
本実施形態では、図2に示す判定回路150は比較器153で構成されており、図3に示す比較器151同様に、図5に示す比較器153では、図2に示すPPCレジスタ126に格納されている8ビットデータの値と、値「00h」が比較され、これによって、実行しようとする命令が格納されているアドレスが、図2に示す互換領域111内のアドレスであるか否かが判定される。これらの値が互いに一致していない場合にのみ比較器153からパルス信号が出力される。
【0031】
また、本実施形態では、図2において図示が省略されている切換回路170が、本発明にいうページ指定部として用いられ、ZPレジスタ127は、「LD D,D」なる表記で表される命令に対応付けられ、XPレジスタ128は、「LD A,A」なる表記で表される命令に対応付けられている。「LD A,A」および「LD D,D」なる表記で表される命令が実行されると、図2に示す命令実行回路160は、これらの命令に対応付けられたページレジスタへの切換えを指定する切換制御信号を生成する。
【0032】
さらに、命令実行回路160には、フリップフロップ163が設けられており、このフリップフロップ163には切換制御信号が入力され、このフリップフロップ163のゲートには、比較器153からの出力が入力される。この結果、実行しようとする命令が格納されているアドレスが、図2に示す互換領域111内のアドレスであると、フリップフロップ163の出力が保持されて切換回路170の状態も保持される。このとき、「LD A,A」および「LD D,D」なる表記で表される命令は、これらの命令の実行の前後で内部状態が保存される無意味命令として実行される。実行しようとする命令が格納されているアドレスが互換領域111外のアドレスであると、フリップフロップ163に切換制御信号が取り込まれ、上述した、命令とページレジスタとの対応関係に応じて、切換回路170によるページレジスタの切換えが行われる。
【0033】
図8は、第3の実施形態において命令が実行される様子を示す図である。
図4同様に図8には、図2に示すメモリ110が有するアドレス空間が示されており、上述したように、000000h番地から00FFFFh番地までが互換領域111である。この互換領域111内には、旧型のマイクロプロセッサ用に作成されたサブルーチンプログラム「_SUB」が格納されており、互換領域111を除くアドレス空間には、新たに作成され、サブルーチンプログラム「_SUB」を利用するプログラムが格納されている。
【0034】
「LD ZP,01h」なる表記で表される命令401から実行が開始されてZPレジスタに値「01h」が格納され、「LD XP,02h」なる表記で表される命令402が実行されてXPレジスタに値「02h」が格納され、「LDHL,8000h」なる表記で表される命令403が実行されて汎用HLレジスタに値「8000h」が格納される。その後、「CALL _SUB」なる表記で表される命令404が実行されて、プログラムの流れが、互換領域111内に格納されているサブルーチンプログラム「_SUB」に移り、「LD A,A」なる表記で表される命令405が実行される。この命令405は、互換領域111内に格納されているので、無意味命令として実行され内部状態は保存される。その後「RET」表記で表される命令406が実行されてプログラムの流れがリターンし、「JP(HL)」なる表記で表される命令407が実行される。ここで、サブルーチン内ではレジスタの切換えが行われていないので、プログラムの流れは、ZPレジスタおよび汎用HLレジスタに格納されている24ビットの値が示す018000h番地にジャンプする。その後、命令405の命令表記と同一の「LD A,A」なる表記で表される命令408が実行される。この命令408は、互換領域111外に格納されているので、ZPレジスタからこの命令に対応付けられているXPレジスタへの切換えが行われる。そこで、次に、「JP(HL)」なる表記で表される命令409が実行されると、プログラムの流れが、XPレジスタおよび汎用HLレジスタに格納されている24ビットの値が示す028000h番地にジャンプする。
【0035】
このように、本実施形態では、旧型のマイクロプロセッサ用のプログラムをサブルーチンとして用いても、ページレジスタがサブルーチン内で切換えられないので、旧型のマイクロプロセッサ用のプログラムをそのまま有効に利用することができる。
【0036】
【発明の効果】
以上説明したように、本発明のマイクロプロセッサによれば、旧型のマイクロプロセッサのアドレス空間が拡張された広いアドレス空間を有し、その広いアドレス空間を自由に利用でき、旧型のマイクロプロセッサ用のソフトウェアがそのまま利用できる。
【図面の簡単な説明】
【図1】旧型のマイクロプロセッサに備えられているレジスタセット(A)、および新型マイクロプロセッサに備えられているレジスタセット(B)の一例を示す図である。
【図2】本発明のマイクロプロセッサの概要を示す図である。
【図3】第1の実施形態の特徴部分を示す図である。
【図4】第1の実施形態において命令が実行される様子を示す図である。
【図5】本発明の第2の実施形態の特徴部分を示す図である。
【図6】第2の実施形態において命令が実行される様子を示す図である。
【図7】本発明の第3の実施形態の特徴部分を示す図である。
【図8】第3の実施形態において命令が実行される様子を示す図である。
【符号の説明】
100 マイクロプロセッサ
110 メモリ
111 互換領域
121 プログラムカウンタ
122 汎用DEレジスタ
123 汎用HLレジスタ
124 スタックポインタ
125 アキュムレータ
126 PPCレジスタ
127 ZPレジスタ
128 XPレジスタ
130 バス
140 命令フェッチ・解読回路
150 判定回路
151,152,153 比較器
160 命令実行回路
161 論理回路
162 論理素子
163 フリップフロップ
170 切換回路

Claims (3)

  1. 複数の命令が格納されるメモリから命令を読み出して実行するマイクロプロセッサにおいて、
    前記メモリの、実行しようとする命令が格納されているアドレスが所定の領域内のアドレスであるか否かを判定する判定回路と、
    前記判定回路の判定結果に応じて、命令の種類によっては、表記上同一の命令を相互に異なる命令として実行する命令実行部とを備え
    前記命令実行部が、前記メモリのアクセスを指示する所定の命令に関し、前記判定回路により、該命令が格納されているアドレスが前記所定領域内のアドレスであると判定されたか否かに応じて、それぞれ、任意に選択されたアドレスを前記所定領域内のアドレスに変換して該変換後のアドレスへのアクセスを行い、あるいは、任意に選択されたアドレスへのアクセスを行うものであることを特徴とするマイクロプロセッサ。
  2. 複数の命令が格納されるメモリから命令を読み出して実行するマイクロプロセッサにおいて、
    前記メモリの、実行しようとする命令が格納されているアドレスが所定の領域内のアドレスであるか否かを判定する判定回路と、
    前記判定回路の判定結果に応じて、命令の種類によっては、表記上同一の命令を相互に異なる命令として実行する命令実行部と、
    演算結果が格納されるレジスタとを備え、
    前記命令実行部が、演算を実行して演算結果を前記レジスタに格納する所定の命令に関し、前記判定回路により、該命令が格納されていたアドレスが前記所定領域内のアドレスであると判定されたか否かに応じて、それぞれ、前記レジスタの所定の上位部分についてはそれまでに格納されているデータを保有するとともに、該レジスタの該上位部分を除く下位部分にのみ前記演算結果の下位部分を格納し、あるいは、前記レジスタ全域に前記演算結果全体を格納するものであることを特徴とするマイクロプロセッサ。
  3. 複数の命令が格納されるメモリから命令を読み出して実行するマイクロプロセッサにおいて、
    前記メモリの、実行しようとする命令が格納されているアドレスが所定の領域内のアドレスであるか否かを判定する判定回路と、
    前記判定回路の判定結果に応じて、命令の種類によっては、表記上同一の命令を相互に異なる命令として実行する命令実行部と、
    前記メモリのページをあらわすデータが格納される、それぞれが各所定の命令に対応して備えられた複数のページレジスタを有し、該メモリの、アクセス可能なページを指定するページ指定部とを備え、
    前記命令実行部が、前記ページレジスタに対応付けられた所定の命令に関し、前記判定回路により、該命令が格納されているアドレスが前記所定領域内のアドレスであると判定されたか否かに応じて、それぞれ、該命令を、該命令の実行の前後で内部状態を保存する形態の無意味命令として実行し、あるいは、前記ページ指定部を、該命令に対応したページレジスタに格納されたデータにより前記メモリのアクセス可能なページが指定されるように切り換えるものであることを特徴とするマイクロプロセッサ。
JP02997198A 1998-02-12 1998-02-12 マイクロプロセッサ Expired - Fee Related JP3583918B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP02997198A JP3583918B2 (ja) 1998-02-12 1998-02-12 マイクロプロセッサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP02997198A JP3583918B2 (ja) 1998-02-12 1998-02-12 マイクロプロセッサ

Publications (2)

Publication Number Publication Date
JPH11232098A JPH11232098A (ja) 1999-08-27
JP3583918B2 true JP3583918B2 (ja) 2004-11-04

Family

ID=12290859

Family Applications (1)

Application Number Title Priority Date Filing Date
JP02997198A Expired - Fee Related JP3583918B2 (ja) 1998-02-12 1998-02-12 マイクロプロセッサ

Country Status (1)

Country Link
JP (1) JP3583918B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4958201B2 (ja) * 2001-03-30 2012-06-20 ルネサスエレクトロニクス株式会社 マイクロコンピュータ
JP2010170579A (ja) * 2010-04-19 2010-08-05 Renesas Technology Corp データ処理装置

Also Published As

Publication number Publication date
JPH11232098A (ja) 1999-08-27

Similar Documents

Publication Publication Date Title
JP2019141675A (ja) プロセッサ
US4937738A (en) Data processing system which selectively bypasses a cache memory in fetching information based upon bit information of an instruction
US5146581A (en) Subprogram executing data processing system having bank switching control storing in the same address area in each of memory banks
US4446517A (en) Microprogram memory with page addressing and address decode in memory
JPH0877075A (ja) 情報処理装置
KR920006615B1 (ko) 다이렉트 맵핑 방식과 뱅크 맵핑 방식으로 동작이 가능한 정보처리장치 및 맵핑 전환방법
JP3583918B2 (ja) マイクロプロセッサ
KR19990037404A (ko) 사후 증가/감소 동작을 하는 프리-디코드되는 스택 포인터
KR100321745B1 (ko) 외부메모리액세스를위한마이크로컨트롤러유닛
JP3344316B2 (ja) ディジタル信号処理装置及び信号処理システム
KR100960095B1 (ko) 마이크로컨트롤러 명령어 셋트
JP2009093344A (ja) マイクロコンピュータ、その使用方法、及び電子制御装置
JP2004030224A (ja) プロセッサ、レジスタ退避方法およびレジスタ指定方法
JP3462245B2 (ja) 中央演算処理装置
JP3517579B2 (ja) マイクロプロセッサ
JPH09505428A (ja) ページアドレスモードを有するマイクロコントローラ
KR100897857B1 (ko) 마이크로컨트롤러 명령어 셋트
JP3678330B2 (ja) マイクロプロセッサ
JPS6255733A (ja) 制御記憶装置
JP3097602B2 (ja) データ処理装置
US5479632A (en) Microcomputer having two-level memory to facilitate calculation of effective addresses
JP2689894B2 (ja) マイクロプログラム制御型情報処理装置
JPS62236034A (ja) マイクロコンピユ−タ
JPH08185360A (ja) 内蔵rom読み出し禁止装置
JPH11134202A (ja) タスク切替え装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040120

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040322

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040511

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040625

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040727

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040730

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080806

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090806

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090806

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100806

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees