JPH03116230A - マイクロコンピュータの命令拡張方法 - Google Patents

マイクロコンピュータの命令拡張方法

Info

Publication number
JPH03116230A
JPH03116230A JP16128590A JP16128590A JPH03116230A JP H03116230 A JPH03116230 A JP H03116230A JP 16128590 A JP16128590 A JP 16128590A JP 16128590 A JP16128590 A JP 16128590A JP H03116230 A JPH03116230 A JP H03116230A
Authority
JP
Japan
Prior art keywords
instruction
signal
circuit
instructions
change
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.)
Pending
Application number
JP16128590A
Other languages
English (en)
Inventor
Tetsuya Tokushige
徹也 徳重
Koji Tanagawa
棚川 幸次
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.)
Oki Electric Industry Co Ltd
Oki Micro Design Miyazaki Co Ltd
Original Assignee
Oki Electric Industry Co Ltd
Oki Micro Design Miyazaki Co Ltd
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 Oki Electric Industry Co Ltd, Oki Micro Design Miyazaki Co Ltd filed Critical Oki Electric Industry Co Ltd
Publication of JPH03116230A publication Critical patent/JPH03116230A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は、マイクロコンピュータの持つ命令セット(命
令数)を拡張する方法に関するものである。
(従来の技術) 従来、このような分野の技術としては、額田忠之著「2
80フアミリ・ハンドブ・ンク」初版(昭60−1−1
0 ) CQ出版■P、58等に記載されるものがあっ
た。
一般に、1チツプ等で構成されるマイクロコンピュータ
(以下、マイコンという)の中央処理装置(以下、CP
Uという)における命令デコード方法は第2図に示すよ
うになっている。
即ち、第2図は従来の命令デコード方法を示す図である
この図に示すように、例えばプログラマブル・リード・
オンリ・メモリ(以下、FROMという)や消去可能な
FROM (以下、EPROMという)等で構成された
メモリ1には、命令が2進コードの形で格納されている
。メモリ1に格納された命令コードは、データバス2を
通って命令レジスタ3にフェッチ(取込み)され、プロ
グラマブル・ロジック・アレイ(以下、PLAという)
等で構成された命令デコーダ4により、命令コードの解
読が行われ、命令実行に必要な複数の回路制御信号Sが
出力される。
しかし、このような命令デコード方法では、命令コード
のビット長がメモリ1の容量により決まる。そのため、
例えば市販されているFROMまたはEFROMの大半
が8ビツト×nバイト構成を持つ等の理由により、命令
コードのビット長が通常、8ビツトに限定されるので、
命令コードの数が2”  (=256)命令に制限され
てしまう。
しかも、各命令は複数のアドレッシングモードを持つた
め、実際の一般的な8ビツトマイコンの持つ命令数は、
約100〜120程度である。ここで、アドレッシング
モードとは、CPUが命令を実行する時に、命令実行の
対象となるデータ(オペランド)をどこからもってくる
か、またはどこへしまうかを規定するモードである。
このように、従来の例えば8ビツトマイコンの持つ命令
数は約100〜120程度と少ないため、命令数を増加
するための種々の方法が提案されている。
例えば、前記文献には命令数を増加する方法として、Z
80の命令拡張方法が記載されている。
この命令拡張方法には、次の2通りの手法(1)、 (
2)が用いられている。
(1)第1の手法 第3図は、従来の命令構成方法を示す図である。
この命令構成例で示すように、命令を構成する第1バイ
ト(8ビツト)の特定のコードを“次に続く2バイト目
が命令コードである゛とし、第2バイト目の8ビツトに
、新規に命令コードを割り当てて新たな命令を定義する
。その具体的な命令拡張方法が第4図に示されている。
第4図は、第3図の命令コードスペースの割付は図であ
る。この図では、第1バイトの前置命令(基本命令セン
ト)十第2バイトの拡張命令(拡張命令セット)=拡張
命令、を表現している。前置命令は、拡張命令セットへ
の案内役としての機能を有している。拡張命令セラ) 
(CB)、(ED)は、基本命令セントとは無関係の命
令セットを表している。
即ち、この第4図の命令拡張方法では、命令の第1バイ
ト目に16進(H)表現の“CBH”(=110010
11)を置くことによって256個の命令を、また“E
DH” (=11101101)を置くことによって4
6個の命令を、それぞれ拡張している。
(2)第2の手法 Z80のCPUには、汎用レジスタ()fL)、Xレジ
スタやYレジスタ等が設けられている。そこで、汎用レ
ジスタ(HL)参照間接アドレッシング命令に対して、
この命令の前に特定コード、つまり前置命令コードを置
くことにより、参照するレジスタを汎用レジスタ(HL
)からXレジスタまたはYレジスタに切換える。その命
令構成例を第5図に示す。なお、Z80における間接ア
ドレッシングとは、レジスタペアによりメモリアドレス
を指定することをいう。
第5図は、従来の他の命令拡張方法を示す図である。こ
の図では、基本命令セット内での命令拡張、つまり基本
命令セット上において、前記命令十基本命令=基本命令
、が示されている。
即ち、第5図の命令拡張方法では、命令を構成する第1
バイト(8ビツト)の特定のコード(DDH,FDH)
を“次に続く2バイト目が命令コードであり、その命令
により参照するレジスタを汎用レジスタ(HL)からX
レジスタあるいはYレジスタに換える”と定義する。こ
こで、16進表現のコードDDHは“”1101110
1”、コードFDHは11111101”を表している
この第2の手法(2)と第1の手法(1)との違いは、
第1の手法(1)が前置命令により全く新しい命令を作
るのに対し、この第2の手法(2)では、前置命令が付
いても第2バイト目に置かれる命令の基本的な動作は参
照するレジスタが変化する以外は同一であり、基本命令
を加工してるに過ぎないということである。つまり、参
照レジスタが変わるだけである。具体的には、汎用レジ
スタ(HL)間接命令は、基本命令セットの中に38個
含まれるため、これをXあるいはYレジスタ間接に変更
することで、76命令が生成される。更に、第1の手法
(1)により生成される256+46命令中に、汎用レ
ジスタ(HL)間接命令が31個あり、これを変更する
ことで62命令が生成される。
(発明が解決しようとする課題) しかしながら、上記の命令拡張方法では、次のような課
題があった。
前記第1の手法(1)によって命令数を拡張した場合、
追加命令(=前置命令+拡張命令)は、全く新たな命令
となるので、基本命令との関連を持たず、その実現には
多くの回路制御信号Sを必要とするため、命令デコーダ
4の形成面積の増加を招く。従って、1チツプ等で形成
されたマイコンの小規模なシステムには適さないという
問題があった。
また前記第2の手法(2)によれば、第2バイト目の命
令コードは基本命令と同一であって回路制御信号Sを共
用でき、命令デコーダ4の形成面積に影響しないが、拡
張できる命令数が限られるという問題がある。
本発明は前記従来技術が持っていた課題として、命令デ
コーダの形成面積が増加する点と、基本命令セット数に
制約を受ける点について解決したマイコンの命令拡張方
法を提供するものである。
(課題を解決するための手段) 前記課題を解決するために、第1の発明は、マイコンの
命令拡張方法において、基本命令の動作を部分的に変更
して拡張命令を生成するための複数の前置命令の1つも
しくは2つ以上を用いて動作変更信号を生成し、前記動
作変更信号を拡張命令の実行が完了するまで保持し、そ
の保持された動作変更信号により、回路制御信号の変更
、禁止または追加を行うようにしたものである。
第2の発明では、基本命令の動作を部分的に変更して拡
張命令を生成するための複数の前置命令の1つもしくは
拡張機能を一括して選択できる第2オペランドをもつ前
置命令を用いて動作変更信号を生成し、前記動作変更信
号を拡張命令の実行完了するまで保持し、その保持され
た動作変更信号により、回路制御信号の変更、禁止また
は追加を行なうようにしたものである。
(作 用) 第1の発明によれば、以上のようにマイコンの命令拡張
方法を構成したので、所定期間保持された動作変更信号
は、基本命令に対して任意の前置命令を付加することを
可能にさせ、それによって回路制御信号の変更、禁止ま
たは追加により、基本命令の拡張を行って有効な命令を
作成させる。
(実施例) 第1図は、本発明の第1の実施例を示す1チツプマイコ
ンの要部構成図である。
このlチップマイコンは、FROMやEPROM等で構
成された命令コード格納用のメモリ11を備え、そのメ
モリ11にはデータバス12を介して命令コードフェッ
チ用の命令レジスタ13が接続されている。命令レジス
タ13の出力側には、命令コードを解読して命令の実行
に必要な複数の回路制御信号SIOを出力するためのP
LA等で構成された命令デコーダ14が接続されている
回路制御信号SIOの一部は、動作変更信号510−1
としてORゲー)15a、15bに接続され、そのOR
ゲート15a、15bから出力される動作変更信号51
5a、515bが、変更信号保持回路20に接続されて
いる。
変更信号保持回路20は、拡張命令の実行完了まで動作
変更信号515a、515bをそれぞれ保持する回路で
あり、ラッチ回路21〜24、ORゲート25,26、
NORゲート27、及びANDゲート28を備えている
2つの動作変更信号515a、515bのうちの一方5
15aは、ORゲート25を介してラッチ回路21の端
子りに接続され、そのラッチ回路21の端子QがORゲ
ート25を介して端子りにフィードバック接続されてい
る。ラッチ回路21の端子Qは、ラッチ回路22の端子
りに接続され、そのランチ回路22のラッチ変更信号5
20a出力用の端子Qが、制御信号変更回路31aに接
続されている。他方の動作変更信号515bは、ORゲ
ート26を介してラッチ回路23の端子りに接続され、
そのラッチ回路23の端子QがORゲート26を介して
端子りにフィードバック接続されている。ラッチ回路2
3の端子Qは、ラッチ回路24の端子りに接続され、そ
のラッチ回路24のラッチ変更信号20b出力用の端子
Qが、制御信号変更回路31b中のORゲート33に接
続されている。
2つの動作変更信号515aと515bは、NORゲー
ト27の入力側に接続され、そのNORゲート27の出
力側と、回路制御信号310から生成されたタイミング
信号T3とが、ANDゲート2日を介してラッチ回路2
1.23の各端子Rにそれぞれ接続されている。回路制
御信号SIOから生成されたタイミング信号MITIは
、各ラッチ回路22.24の端子Gにそれぞれ接続され
ている。
ラッチ回路21.23は、端子Rに入力される信号によ
りリセットされ、端子Gに入力されるタイミング信号T
4に同期にして端子り上の信号をラッチする機能を有し
ている。ラッチ回路22゜24も同様に、端子Gに入力
される信号により同期して、端子り上の信号をラッチす
る機能を有している。
この1チツプマイコンには、命令条件の成立をチエツク
する条件判断回路30が設けられ、その条件判断回路3
0から出力される分岐信号S30と、ラッチ変更信号5
20aとが、制御信号変更回路31aに接続されている
。制御信号変更回路31aは、分岐信号S30と、ラッ
チ変更信号520aとに基づき変更分岐信号S31を生
成する回路であり、例えば排他的論理和ゲート(以下、
FORゲートという)で構成されている。
制御信号変更回路31b中のメモリバンク切換え用のバ
ンクスイッチ32と、ラッチ変更信号520bとは、O
Rゲート33の入力側に接続されている。図示しないア
ドレスバス等から出力された8ビツトのメモリアドレス
AO−A7と、ORゲート33から出力された最上位ビ
ットのメモリアドレスA8とは、メモリユニット34に
接続されている。
メモリユニット34は、0と1の2つの領域、即ちバン
クOとバンク1を有し、ランダム・アクセン・メモリ(
以下、RAMという)等で構成されている。
次に、以上の構成の1チツプマイコンにおける命令拡張
方法を説明する。
本実施例では、分岐命令の条件を反転する拡張命令(a
)と、アクセスするメモリ領域を上位のバンク(例えば
、バンクOからバンク1)に切換える拡張命令℃)に取
り扱う。
メモリ11に格納された命令コードは、データバス12
を通って命令レジスタ13にフェッチされ、その命令コ
ードが命令デコーダ14で解読され、命令の実行に必要
な複数の回路制御信号SIOが出力される。
ここで、命令デコーダ14から出力される回路制御信号
SIOの一部を、動作変更信号3101用に割り当てて
おく。すると、前記拡張命令(a)あるいは前記拡張命
令(b)の前置命令により、命令デコーダ14は動作変
更信号5IO−1を発生する。発生された動作変更信号
5IO−1は、ORゲート15a、15bを介して、動
作変更信号515a、515bの形で変更信号保持回路
20に入力される。変更信号保持回路20は、動作変更
信号515a、515bを拡張命令の実行完了まで保持
する。
変更信号保持回路20から出力されるラッチ変更信号2
0a、20bは、それぞれ制御信号変更回路31a、3
1bに与えられ、その制御信号変更回路31a、31b
によって前記拡張命令(a)あるいは(b)の動作を実
現するための回路制御信号310の変更、禁止または追
加が行われる。
以下、前記拡張命令(a)または(b)の動作を詳細に
説明する。
1チツプマイコン内のCPUにおいて、各々の分岐命令
の実行の際に、条件判断回路30により、条件の成立の
チエツクが行われる。条件判断回路30は、条件が真で
あるとき、分岐信号S30を出力し、分岐を行わせる。
分岐命令の条件を反転する拡張命令(a)の場合、分岐
命令の直前に、例えば条件反転前置命令が実行されると
、分岐命令実行期間中は、変更信号保持回路20からラ
ッチ変更信号20aが制御信号変更回路31aへ出力さ
れる。すると、分岐信号S30は、制御信号変更回路3
1aのEORゲートによってその真理値が反転され、変
更分岐信号331となる。そのため、条件判断回路30
により、条件が真でないとき、つまり条件が成立してい
ないとき、分岐が行われるように命令動作を変更するこ
とができる。従って、条件分岐命令については、真偽両
方向を揃える必要がなくなる。
次に、アクセスするメモリ領域を上位バンクに切換える
拡張命令(b)について説明する。
基本命令のオペランド部分で示すことのできるメモリア
ドレスAO〜A7を越えてメモリを実装する場合、メモ
リユニット34には2つの領域に区分されたバンク0と
バンク1が設けられ、そのバンクOと1を例えばバンク
スイッチ32によって切換える手段が必要となる。バン
クスイッチ32は、2つの値を持ち、0のときバンク0
、lのときバンク1を選択する。このバンクスイッチ3
2の内容は、回路制御信号310の命令デコード出力に
より操作することができる。このように、パンク切換え
手段を設け、利用可能なメモリ空間を拡張した場合、そ
の弊害としてメモリユニット34のアクセスが繁雑にな
る。例えば、プログラムのサブルーチンの中でメモリユ
ニット34を操作する場合、必ずバンクスイッチ32の
内容を調べ、必要に応じてそのバンクスイッチ32をセ
ット/リセットする必要がでてくる。
そこで本実施例では、バンクスイッチ32の内容にかか
わらず、例えばバンクを選択できる前記前置命令[有]
)を設ける。そして、このメモリをアクセスする基本命
令の直前にこの前置命令(b)を置く。
すると、この前置命令(b)の実行によって動作変更信
号5io−iが命令デコーダ出力に発生し、0Rゲー1
−15bを介して動作変更信号515bの形で変更信号
保持回路20に与えられる。変更信号保持回路20は、
拡張命令(前置命令(b)十基本命令)の実行期間中、
バンク切換え用のラッチ変更信号520bを制御信号変
更回路31b中のORゲート33に与える。すると、O
Rゲート33は、最上位ビットのメモリアドレスA8を
メモリユニット34へ出力する。そのため、メモリユニ
ット34をアクセスする命令に対して、バンクスイッチ
32の内容にかかわらず、自由にバンク1を選択するこ
とができる。このように、前置命令(b)を設けること
により、拡張命令の実行期間中、過渡的にバンク1へ切
換えることができ、プログラム効率の改善と、プログラ
マ等の負担軽減が達成できる。
なお、第1図におけるバンク1を選択する前置命令い)
及びそれを実行する回路は、バンク0選択の前置命令、
バンク0と1を交換する前置命令、あるいは、更に多く
のバンクを持つ場合に、容易に適用可能である。
また、本実施例の変更信号保持回路20において、前段
のラッチ回路21.23の出力がORゲート25.26
を介してそれぞれのラッチ回路21.23の入力側にフ
ィードバックされているので、連続する前置命令により
、複数のラッチ変更信号520a、520b・・・を同
時に、その変更信号保持回路20から出力することがで
きる。従って、前置命令(a)十装置命令(b)十基本
命令、という命令構成が可能となる。更に、前置命令(
a)と(b)の拡張機能を併せ持つ前置命令(C)を設
定し、その命令を解読した命令デコーダ14の出力を、
ORアゲ−15a、15bによって動作変更信号310
−1 (S15a、515b)に加えるようにしても、
前記と同様の機能を実現できる。
次に、本実施例における前置命令の例として、(i)レ
ジスタの交換、(ii)条件付きリターン命令、(ji
)条件付きジャンプ命令について第6図から第8図を参
照しつつ、以下説明する。
(1) レジスタの交換 第6図は、前記命令によってレジスタの交換を行う場合
の説明図である。
第6図に示すように、データバス12には、ソフトウェ
アにより内容の変更可能なレジスタ類からなるリソース
40が接続されている。リソース40は、演算結果を記
憶するアキュムレータ(ACC)41、Bレジスタ(B
)42、データ取り出し位置を指示するスタックポイン
タ(SP)43、及びデータを一時記憶するテンポラリ
スレジスタ(TRZ)44を備えている。
リソース40において、次の基本命令を実行する場合を
考える。
LD  A、#  (Accに即値をロード)第 1 
バイ ト     OP  コー ド(オペレージ3ン
コーF)第2バイト  #(即値) この基本命令に、前置(プリバイト=PB)命令を付け
る。
LD  B、#=PB+LD  A、#(Bに即値をロ
ード) 第1バイト  PBのOPコード 第2バイト  (LDA、It命令の)opコード第3
バイト  #(即値) この命令を実行する場合、実際には3バイトの命令を実
行するのではなく、プリバイト命令を実行した時の、「
次の命令でレジスタの役割を取りかえる」という情報を
持っているだけにすぎない。
そのため、命令実行数が少なくなる。
(ii)  条件付きリターン命令 第7図(A)、(B)は、前置命令により、サブルーチ
ンからメインルーチンへの条件無しのリターン(RT)
命令を、条件付きのリターン(RT)命令に変更する場
合の説明図である。
第7図(A)に示すように、基本命令がリターン命令(
RT)の場合、 第1バイト  (RT命令の)OPコードであると、メ
インルーチンが実行され、ステップ100のコールA 
B C(CALL ABG)の後、すブルーチン 行し、ステップ101のRTに進んだ後、そのサブルー
チンからメインルーチンに復帰する。
前記基本命令RTをブリバイ) (PB)により、次の
ように拡張すると、第7図(B)に示すように命令が実
行される。
RTZ      (PB十RT) 第1バイト  (FBの)OPコード 第2バイト  (RTの)OPコード 第7図(B)に示すようにメインルーチンのステップ1
00の実行後、サブルーチンABCに移る。サブルーチ
ンABCが実行され、ステップ201のPB実行後、ス
テップ202のOPコードが実行される。このステップ
202において、CPU内に設けられたゼロフラグ(Z
フラグ;演算結果がゼロであることを示す)が、Zフラ
グ−1のとき、メインルーチンに復帰する。Zフラグ−
〇のときは、なにもせずに次の命令に移る。サブルーチ
ンの命令が実行され、ステップ203のジャンプ(JU
MP)が実行されると、メインルーチンに復帰する。こ
のように、基本命令(RD)をブリバイトにより拡張(
RTZ)すると、ステップ202に示すように、条件付
き命令に簡単に変更することができる。
(iii)  条件付きジャンプ命令 第8図(A)、(B)、(C)は、条件付きジャンプ命
令の動作説明図である。
第8図(A)に示すように、メモリユニット34中の指
定したビット(Bit)がセット(SEア)=1のとき
に、ジャンプ(JU,4P)シ、S,、=Oのときは次
の命令に移るという、基本命令(JBS)を実行する場
合を考える。
基本命令(JBS)   JLIMP  if  Bi
tis  SET この基本命令(JBS)は、第8図(B)に示されてい
る。この図において、基本命令(JBS)における23
Hは16進表現の23番地、5は5ビツト、addrは
番地をそれぞれ表し、その基本命令が第1〜第3バイト
で構成されている。
前記基本命令(JBS)を拡張し、メモリユニット34
中の指定したビット(Bit)がセット(sty)=t
のとき、クリア(Clear) = Oにしてジャンプ
(JLIMP)するという拡張命令に変更したとする。
JBSC(拡張命令) J、、、、  if  Bit  is SET&  
C1ear このような拡張命令(JBSC)は、第8図(C)に示
すように、第1〜第4バイトで構成される。従って、第
1〜第3バイトからなる基本命令(JBS)が、第1〜
第4バイトからなる拡張命令(JBSC)に変更された
ことになる。
なお、本発明は図示の実施例に限定されず、例えば制御
信号変更回路31aをANDゲートで構成して回路制御
信号SIOを禁止したり、あるいはその制御信号変更回
路31aをORゲートで構成して回路制御信号S10の
追加を行う等、種々の変形が可能である。
第9図は、本発明の第2の実施例を示す1チツプマイコ
ンの要部構成図である。なお、この図において、第1図
と同様のものは同じ符号を付して説明を省略する。
この1チツプマイコンは、FROMやEPROM等で構
成された命令コード格納用のメモリ11を備え、そのメ
モリ11にはデータバス12を介して命令コードフェッ
チ用の命令レジスタ13が接続されている。命令レジス
タ13の出力側は、命令コードを解読して命令の実行に
必要な複数の回路制御信号310を出力するためのPL
A等で構成された命令デコーダ14と、データバス12
を介して動作変更信号512a、512bとして変更信
号保持回路20に接続されている。
変更信号保持回路20は、拡張命令の実行完了までデー
タバス12を介して人力される動作変更信号をそれぞれ
保持する回路であり、ラッチ回路21〜24、ANDゲ
ート90を備えている。
回路制御信号310の一部は動作変更信号310−1と
して、ANDゲート25を介してラッチ回路21.23
の端子Gに入力される。
2つの動作変更信号512a、512bのうちの一方5
12aはラッチ回路21の端子りに接続されている。ラ
ッチ回路21の端子Qは、ラッチ回路22の端子りに接
続され、そのラッチ回路22のラッチ変更信号520a
出力用の端子Qが、制御信号変更回路31aに接続され
ている。他方の動作変更信号512bはラッチ回路23
の端子りに接続されている。ラッチ回路23の端子Qは
、ラッチ回路24の端子りに接続されミそのラッチ回路
24のラッチ変更信号520b出力用の端子Qが、制御
信号変更回路31b中のORゲート33に接続されてい
る。
回路制御信号SIOから生成されたタイミング信号MI
TIは、各ラッチ回路22.24の端子Gにそれぞれ接
続されている。
ラッチ回路21.23は、端子Gに入力されるANDゲ
ート27の出力信号に同期して端子り上の信号をラッチ
する機能を有している。ラッチ回路22.24も同様に
、端子Gに入力される信号に同期して、端子り上の信号
をラッチする機能を有している。
ここで、命令デコーダ14から出力される回路制御信号
SIOの一部を、動作変更信号510−1用に割り当て
てお(。すると、前記拡張命令(a)あるいは前記拡張
命令(b)の前置命令により、命令デコーダ14は動作
変更信号510−1を発生する。発生された動作変更信
号510−1は、ANDゲート25を介してラッチ回路
21.23のG端子に入力され、データバス上に出力さ
れる動作変更信号用のデータをランチ回路21.23に
保持する。
変更信号保持回路20から出力されるラッチ変更信号2
0a、20bは、それぞれ制御信号変更回路31a、3
1bに与えられ、その制御信号変更回路31a、31b
によって前記拡張命令(a)あるいは(b)の動作を実
現するための回路制御信号310の変更、禁止または追
加が行なわれる。
この第2の実施例において、拡張命令(a)または(b
)の動作については第1の実施例と同様なため、説明を
省略する。この第2の実施例では1つの基本命令に対し
て(a)と(+))の両方の拡張を同時に行ないたい場
合、第2オペランドを持つ前置命令(X)を設定し、前
置命令(X)十セットデータ十基本命令、という命令構
成を持つことにより、メモリ11から読み出した第2オ
ペランドのセントデー夕をデータバス12を介して変更
信号保持回路に与える事ができ、任意の拡張機能を一括
して選択することが可能となる。そのため、3要因以上
の拡張機能を同時に選択しても、前置命令の命令長を2
バイトに抑える事ができ、高いプログラム効率と豊富な
命令セットを両立できる。
なお、この実施例の前置命令の例は第1の実施例と同様
なため、説明を省略する。
(発明の効果) 以上詳細に説明したように、第1の発明によれば、複数
の前置命令の1つもしくは2つ以上を用いて動作変更信
号を生成し、その動作変更信号を所定期間保持し、その
保持された動作変更信号により、回路制御信号の変更、
禁止または追加を行うようにし、更にまた、その回路制
御信号の変更によって分岐命令の条件反転や、メモリア
ドレス領域の切換えを行うようにしたので、前置命令に
よって基本命令の動作を改変できる。更に、複数の拡張
機能について前置命令の自由な組合わせを可能とし、基
本命令に数種類の前置命令を組合わせることにより、よ
り多くの有効な命令を作り出すことができる。従って、
命令デコード部の回路構成を増加することなく、基本命
令セット数に制約のある命令セットを効率よく構成する
ことができる。
また、第2の発明では、更に第2オペランドを持つ前置
命令により、複数の拡張機能の自由な組み合わせを可能
とし、より多くの有効な命令を作り出すことができる。
従って、命令デコード部の回路構成を増加することな(
、基本命令セット数に制約のある命令セットを効率よく
構成することができる。
【図面の簡単な説明】
第1図は本発明の第1の実施例を示す1チツプマイコン
の要部構成図、第2図は従来の命令デコード方法を示す
図、第3図は従来の命令構成方法を示す図、第4図は第
3図の命令コードスペースの割付は図、第5図は従来の
他の命令拡張方法を示す図、第6図は本実施例のレジス
タの交換を示す図、第7図(A)、(B)は本実施例の
条件付きリターン命令を示す図、第8図(A)、(B)
。 (C)は本実施例の条件付きジャンプ命令を示す図、第
9図は本発明の第2の実施例を示す図である。 11・・・メモリ、13・・・命令レジスタ、14・・
・命令デコーダ、l 5 a、  15 b−ORゲー
ト、20・・・変更信号保持回路、30・・・条件判断
回路、31a。 31b・・・制御信号変更回路、32・・・バイクスイ
ッチ、34・・・メモリユニット、310・・・回路制
御信号、310−1,515a、515b・・・動作変
更信号、520a、520b・・・ラッチ変更信号、S
30・・・分岐信号、331・・・変更分岐信号、AO
〜A8・・・メモリアドレス。

Claims (1)

  1. 【特許請求の範囲】 1、基本命令の動作を部分的に変更して拡張命令を生成
    するための複数の前置命令の1つもしくは2つ以上を用
    いて動作変更信号を生成し、前記動作変更信号を拡張命
    令の実行が完了するまで保持し、その保持された動作変
    更信号により、回路制御信号の変更、禁止または追加を
    行うことを特徴とするマイクロコンピュータの命令拡張
    方法。 2、基本命令の動作を部分的に変更して拡張命令を生成
    するための複数の前置命令の1つもしくは拡張機能を一
    括して選択できる第2オペランドをもつ前置命令を用い
    て動作変更信号を生成し、前記動作変更信号を拡張命令
    の実行が完了するまで保持し、その保持された動作変更
    信号により、回路制御信号の変更、禁止または追加を行
    なうことを特徴とするマイクロコンピュータの命令拡張
    方法。
JP16128590A 1989-06-21 1990-06-21 マイクロコンピュータの命令拡張方法 Pending JPH03116230A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP1-159322 1989-06-21
JP15932289 1989-06-21

Publications (1)

Publication Number Publication Date
JPH03116230A true JPH03116230A (ja) 1991-05-17

Family

ID=15691274

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16128590A Pending JPH03116230A (ja) 1989-06-21 1990-06-21 マイクロコンピュータの命令拡張方法

Country Status (1)

Country Link
JP (1) JPH03116230A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006313561A (ja) * 1999-04-30 2006-11-16 Renesas Technology Corp データ処理装置
US7487338B2 (en) 2002-07-19 2009-02-03 Renesas Technology Corp. Data processor for modifying and executing operation of instruction code according to the indication of other instruction code
JP2014036899A (ja) * 2013-11-27 2014-02-27 Daito Giken:Kk 遊技台
JP2014195639A (ja) * 2014-02-17 2014-10-16 株式会社大都技研 遊技台
JP2015128695A (ja) * 2015-04-14 2015-07-16 株式会社大都技研 遊技台
JP2016147083A (ja) * 2016-03-25 2016-08-18 株式会社大都技研 遊技台

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006313561A (ja) * 1999-04-30 2006-11-16 Renesas Technology Corp データ処理装置
US7487338B2 (en) 2002-07-19 2009-02-03 Renesas Technology Corp. Data processor for modifying and executing operation of instruction code according to the indication of other instruction code
JP2014036899A (ja) * 2013-11-27 2014-02-27 Daito Giken:Kk 遊技台
JP2014195639A (ja) * 2014-02-17 2014-10-16 株式会社大都技研 遊技台
JP2015128695A (ja) * 2015-04-14 2015-07-16 株式会社大都技研 遊技台
JP2016147083A (ja) * 2016-03-25 2016-08-18 株式会社大都技研 遊技台

Similar Documents

Publication Publication Date Title
US8429379B2 (en) Reconfigurable microprocessor configured with multiple caches and configured with persistent finite state machines from pre-compiled machine code instruction sequences
US4075687A (en) Microprogram controlled digital computer
KR20010043826A (ko) 마이크로 컨트롤러 명령어 집합
JPS62197830A (ja) デ−タ処理システム
JP2635057B2 (ja) マイクロプロセッサ
EP4152146A1 (en) Data processing method and device, and storage medium
US20060265571A1 (en) Processor with different types of control units for jointly used resources
JPH03116230A (ja) マイクロコンピュータの命令拡張方法
JPS6212529B2 (ja)
US6658561B1 (en) Hardware device for executing programmable instructions based upon micro-instructions
US8200943B2 (en) Microprocessor
US20050033938A1 (en) Network processing system, core language processor and method of executing a sequence of instructions in a stored program
US5875323A (en) Processor using implicit register addressing
KR100188374B1 (ko) 연산처리장치
JPH0560629B2 (ja)
US4866608A (en) Microprocessor with improved execution of instructions
US5479632A (en) Microcomputer having two-level memory to facilitate calculation of effective addresses
JPS6346855B2 (ja)
JP3392413B2 (ja) 2レベルマイクロ制御方式及び方法
JP3027984B2 (ja) シングルチップマイクロコンピュータ
JP2626831B2 (ja) プログラム展開方式電子計算機
JPH11232098A (ja) マイクロプロセッサ
JPS603656B2 (ja) 計算機のメモリ拡張方式
JP2007234065A (ja) データ処理装置
JP2003005955A (ja) データ処理装置