JPH011032A - マイクロコンピュ−タ回路 - Google Patents
マイクロコンピュ−タ回路Info
- Publication number
- JPH011032A JPH011032A JP62-155508A JP15550887A JPH011032A JP H011032 A JPH011032 A JP H011032A JP 15550887 A JP15550887 A JP 15550887A JP H011032 A JPH011032 A JP H011032A
- Authority
- JP
- Japan
- Prior art keywords
- subroutine
- rom
- address
- read
- cpu
- 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
Links
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
l産業上の利用分野]
本発明は、マイクロコンピュータ回路に関し、アキュー
ムレータの値等の条件に応じて読み出すサブルーチンを
変えるような場合、簡雫なプログラムで実現できるよう
にしたマイクロコンピュータの周辺回路に関する。
ムレータの値等の条件に応じて読み出すサブルーチンを
変えるような場合、簡雫なプログラムで実現できるよう
にしたマイクロコンピュータの周辺回路に関する。
[従来の技術]
例えば、8ビツトマイクロコンピユータにおいては、ア
キュムレータ値の条件に応じて読み出すサブルーチンを
代えるような命令を持っていないため、例えば、第3図
に示すフt7−チャートを実現する場合、第4図又は第
5図に示す方法が採用されていた。
キュムレータ値の条件に応じて読み出すサブルーチンを
代えるような命令を持っていないため、例えば、第3図
に示すフt7−チャートを実現する場合、第4図又は第
5図に示す方法が採用されていた。
ここで、第4図の方式は、アキュムレータ値を比較命令
で調べ、条件と一致したとき、対応するサブルーチンを
読み出す方法である。
で調べ、条件と一致したとき、対応するサブルーチンを
読み出す方法である。
一方、第5図の方式は、テーブルにジャンプ先アドレス
を書き込んでおき、アキュムレータ値に対応するジャン
プ先アドレスをプログラマブルカウンタにセットして分
岐し、処理終了後に予めメモリに退避しておいた戻り番
地に戻る方法である。
を書き込んでおき、アキュムレータ値に対応するジャン
プ先アドレスをプログラマブルカウンタにセットして分
岐し、処理終了後に予めメモリに退避しておいた戻り番
地に戻る方法である。
1、解決すべき問題点]
上述した従来の手法では、第4図に示す方法にあっては
読み出すサブルーチンの数が多くなると、サブルーチン
読み出しまでにかかる平均時間が増大するという問題が
あった。
読み出すサブルーチンの数が多くなると、サブルーチン
読み出しまでにかかる平均時間が増大するという問題が
あった。
一方、第5図に示す方法にあっては、分岐数にかかわら
ず一定の時間で分岐できるが、ソフトウェアが複雑であ
り、多数のレジスタが必要になると共に、処理時間もか
かるという問題があった。
ず一定の時間で分岐できるが、ソフトウェアが複雑であ
り、多数のレジスタが必要になると共に、処理時間もか
かるという問題があった。
そこで本発明の1′、1的とするところは、上述した従
来の問題点を解決し、例えばアキュムレータの値に応じ
て読み出すサブルーチンを変えたい場合等であっても、
簡?)1−なプログラムで迅速に処理することができる
マイクロコンピュータ回路を提供することにある。
来の問題点を解決し、例えばアキュムレータの値に応じ
て読み出すサブルーチンを変えたい場合等であっても、
簡?)1−なプログラムで迅速に処理することができる
マイクロコンピュータ回路を提供することにある。
1問題手点の解決手段]
本発明は、読み出したいサブルーチンのアドレスを上位
アドレス、下位アドレスに別けて配列したサブルーチン
上位アドレスROM、サブルーチン下位アドレスROM
と、この配列されたサブルーチンアドレスの何番目を呼
び出すかをCI) Uからのアキュムレータ値を書き込
むことによって指定するレジスタ回路と、CP UがC
all命令の命令コードを読み込んだことを検出し、こ
れに続く2つのメモリリードサイクルのうち、初めのサ
イクルでサブルーチン下位アドレスROMを、次のサイ
クルでサブルーチン上位アドレスROMを選択する信号
を出力し、この間プログラム用ROMを非アクティブと
するCall命令コントロール回路とを設けてマイクロ
コンピュータ回路を構成している。
アドレス、下位アドレスに別けて配列したサブルーチン
上位アドレスROM、サブルーチン下位アドレスROM
と、この配列されたサブルーチンアドレスの何番目を呼
び出すかをCI) Uからのアキュムレータ値を書き込
むことによって指定するレジスタ回路と、CP UがC
all命令の命令コードを読み込んだことを検出し、こ
れに続く2つのメモリリードサイクルのうち、初めのサ
イクルでサブルーチン下位アドレスROMを、次のサイ
クルでサブルーチン上位アドレスROMを選択する信号
を出力し、この間プログラム用ROMを非アクティブと
するCall命令コントロール回路とを設けてマイクロ
コンピュータ回路を構成している。
[実施例]
次に、本発明の一実施例を図面を参照して説明する。
第1図は、本発明の一実施例であるマイクロコンピュー
タ回路のブロック回路図である。
タ回路のブロック回路図である。
同図において、1はCP LJ、2はシステムクロック
を発振するり■コック回路、3はCall命令コントロ
ール回路、4はアドレスデコーダ、5はレジスタ回路、
6はサブルーチン下位アドレスROM、7はサブルーチ
ン上位アドレスROM、8はプログラム蓄積用ROM、
9はパスバッファ、10はRA Mである。
を発振するり■コック回路、3はCall命令コントロ
ール回路、4はアドレスデコーダ、5はレジスタ回路、
6はサブルーチン下位アドレスROM、7はサブルーチ
ン上位アドレスROM、8はプログラム蓄積用ROM、
9はパスバッファ、10はRA Mである。
本実施例装置において、第3図のようなアキュムレータ
値に応じてサブルーチンを読み出す場合について説明す
ると、第2図(A)、(B)に示すように、前記サブル
ーチン下位、上位アドレスROM6.7には、サブルー
チンの下位、上位アドレスが配列されている。
値に応じてサブルーチンを読み出す場合について説明す
ると、第2図(A)、(B)に示すように、前記サブル
ーチン下位、上位アドレスROM6.7には、サブルー
チンの下位、上位アドレスが配列されている。
まず、CPUIはOUT命令等でレジスタ回路5にアキ
ュムレータ値を書き込む。このとき、アキュムレータ値
がnであったとすると、レジスタ回路5の出力値はnと
なり、サブルーチン下位。
ュムレータ値を書き込む。このとき、アキュムレータ値
がnであったとすると、レジスタ回路5の出力値はnと
なり、サブルーチン下位。
上位アドレスROM6.7は、n番地が指定される。ま
た、このときCall命令コントロール回路3が起動さ
れ、CPUIが実行する命令コードの監視を開始し、一
方、CPU1はプログラム蓄積用ROM8にかかれてい
るプログラムを実行してゆく。
た、このときCall命令コントロール回路3が起動さ
れ、CPUIが実行する命令コードの監視を開始し、一
方、CPU1はプログラム蓄積用ROM8にかかれてい
るプログラムを実行してゆく。
ここで、CallX、 Yというサブルーチンを呼ぶ3
バイト命令がプログラム蓄積用ROM8にかかれている
場合を説明する。
バイト命令がプログラム蓄積用ROM8にかかれている
場合を説明する。
従来技術では、CP U 1は、
■Call命令の命令コード、
■サブルーチンの下位アドレス(ここではYアドレス)
■サブルーチンの上位アドレス(ここではXアドレス)
の順にプログラム蓄積用ROM 8を読み、CallX
。
。
Yを実行していた。
本実施例装置では、Call命令コントロール回路3が
■のサイクルでCP U 1がCall命令の命令コー
ドを読み込んだことを検出し、■のサイクルでYO出力
をアクティブとする。これにより、サブルーチン下位ア
ドレスROM6及びパスバッファ9がアクデイプとなり
、プログラム蓄積用ROM8が非アクティブとなる。
■のサイクルでCP U 1がCall命令の命令コー
ドを読み込んだことを検出し、■のサイクルでYO出力
をアクティブとする。これにより、サブルーチン下位ア
ドレスROM6及びパスバッファ9がアクデイプとなり
、プログラム蓄積用ROM8が非アクティブとなる。
サブルーチン下位アドレスROM 6からは、レジスタ
回路5によって指定されたn番地の値N2がパスバッフ
ァ9を介してデータバス上に出力され、これをC))U
lが読み込むことになる。
回路5によって指定されたn番地の値N2がパスバッフ
ァ9を介してデータバス上に出力され、これをC))U
lが読み込むことになる。
次の■のサイクルでは、Call命令コントロール回路
3はY1出力をアクティブすることになる。
3はY1出力をアクティブすることになる。
これにより、サブルーチン上位アドレスROM7及びパ
スバッファ9がアクティブ、ブt7グラム蓄積用flO
M8が非アクティブとなり、■の場合と同様に、サブル
ーチン上位アドレスROM7のn番地の値N1をC))
U 1が読み込むことになる。
スバッファ9がアクティブ、ブt7グラム蓄積用flO
M8が非アクティブとなり、■の場合と同様に、サブル
ーチン上位アドレスROM7のn番地の値N1をC))
U 1が読み込むことになる。
上記の通り、■、■のサイクルではプログラム蓄積用I
t OM 8は禁止されており、X、Yは実際にはデー
タバス上に出力されることはないなめ、データの折欠は
起こらない。これにより、CI) Ulはアキュムレー
タの値nに対応したサブルーチンNl 、N2を実行す
ることになる。
t OM 8は禁止されており、X、Yは実際にはデー
タバス上に出力されることはないなめ、データの折欠は
起こらない。これにより、CI) Ulはアキュムレー
タの値nに対応したサブルーチンNl 、N2を実行す
ることになる。
ここで、本実施例と従来技術とを比較すると、本実施例
装置では、OU ’r’命令、Call命令の2つの命
令だけ第3図のフローチャートを実現でき、CI) U
サイクルで27ステート(OUT・・・10ステート、
Call・・・17ステート)で済む。
装置では、OU ’r’命令、Call命令の2つの命
令だけ第3図のフローチャートを実現でき、CI) U
サイクルで27ステート(OUT・・・10ステート、
Call・・・17ステート)で済む。
これに対し、第4図の場合には、比軸命令、 Ca11
命令を繰り返すなめ、n回の比較をしたと仮定すると、
7・n−1−10(n−1) −1−27スデート必要
であり(比較・・・7スデート、一致しないとき次の比
較へ進む・・・10ステート、一致したときジャンプ7
ICall・・・27ステート)、nが増せばステート
数も大幅に増大してしまう。一方、第5図の場合は81
ステート必要である。
命令を繰り返すなめ、n回の比較をしたと仮定すると、
7・n−1−10(n−1) −1−27スデート必要
であり(比較・・・7スデート、一致しないとき次の比
較へ進む・・・10ステート、一致したときジャンプ7
ICall・・・27ステート)、nが増せばステート
数も大幅に増大してしまう。一方、第5図の場合は81
ステート必要である。
このように、本実施例によれば、処理の実行が簡易であ
ると共に、処理時間も大幅に雉縮することができる。
ると共に、処理時間も大幅に雉縮することができる。
尚、本発明は上記実施例に限定されれるものではなく、
本発明の要旨の範囲内で種々の変形実施が可能である。
本発明の要旨の範囲内で種々の変形実施が可能である。
[発明の効果]
以上説明したように、本発明によればCal+命令の前
にレジスタ回路に読み出したいサブルーチンに対応した
値を書き込むだけで、それに応じたサブルーチンを読み
出すことができる。
にレジスタ回路に読み出したいサブルーチンに対応した
値を書き込むだけで、それに応じたサブルーチンを読み
出すことができる。
第1図は本発明の一実施例装置のブロック回路図、第2
図(A>、(B)はそれぞれサブルーチン上位アドレス
ROM、サブルーチン下位アドレスROMの内容の一例
を示す概略説明図、第3図はアキュムレータ値に対応し
たサブルーチンを読み出す場合のフローチャート、第4
図、第5図は第3図のフローチャーを実現するための従
来の詳細な手順を示すフローチャートである。 1;CPU、 3;Call命令コントロール回路、 5;レジスタ回路、 6;サブルーチン下位アドレスROM、7;サブルーチ
ン上位アドレスROM、8;プログラム用ROM。 代理人 弁理士 渡 辺 喜 平 第1図 第2図 (Al (81第3図
図(A>、(B)はそれぞれサブルーチン上位アドレス
ROM、サブルーチン下位アドレスROMの内容の一例
を示す概略説明図、第3図はアキュムレータ値に対応し
たサブルーチンを読み出す場合のフローチャート、第4
図、第5図は第3図のフローチャーを実現するための従
来の詳細な手順を示すフローチャートである。 1;CPU、 3;Call命令コントロール回路、 5;レジスタ回路、 6;サブルーチン下位アドレスROM、7;サブルーチ
ン上位アドレスROM、8;プログラム用ROM。 代理人 弁理士 渡 辺 喜 平 第1図 第2図 (Al (81第3図
Claims (1)
- CPUと、このCPUが実行するプログラムを蓄積した
プログラム用ROMと、前記CPUからのサブルーチン
アドレスがサブルーチンアドレスROMの何番目にある
かが書き込まれるレジスタ回路と、このレジスタ回路に
接続され、上位アドレスが配列されているサブルーチン
上位アドレスROMと、前記レジスタ回路に接続され、
サブルーチンの下位アドレスが配列されている下位アド
レスROMと、CPUがCall命令の命令コードを読
み込んだことを検出し、これに続く2つのメモリリード
サイクルのうち、初めのサイクルでサブルーチン下位ア
ドレスROMを、次のサイクルでサブルーチン上位アド
レスROMを選択する信号を出力し、この問プログラム
用ROMを非アクティブとするCall命令コントロー
ル回路とを設けたことを特徴とするマイクロコンピュー
タ回路。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP62-155508A JPH011032A (ja) | 1987-06-24 | マイクロコンピュ−タ回路 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP62-155508A JPH011032A (ja) | 1987-06-24 | マイクロコンピュ−タ回路 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS641032A JPS641032A (en) | 1989-01-05 |
| JPH011032A true JPH011032A (ja) | 1989-01-05 |
Family
ID=
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4672534A (en) | Integrated circuit device incorporating a data processing unit and a ROM storing applications program therein | |
| EP0569969A1 (en) | Microcomputer having instruction memory storing instructions for reading out internal conditions | |
| EP0313097B1 (en) | Microcomputer system including master processor and slave processor | |
| JPH011032A (ja) | マイクロコンピュ−タ回路 | |
| JPS60189047A (ja) | デ−タ処理装置 | |
| JPH04280334A (ja) | ワンチップマイクロコンピュータ | |
| JPH0481939A (ja) | マイクロコンピュータの制御方式 | |
| JPS63280333A (ja) | マイクロプログラム制御装置 | |
| JPH0333934A (ja) | レジスタ退避復帰方式 | |
| JP3785807B2 (ja) | 制御装置 | |
| JPH1083384A (ja) | マイクロコンピュータ | |
| JPS62269237A (ja) | デ−タプロセツサ | |
| JPS636637A (ja) | メモリ切替装置 | |
| JPH02263256A (ja) | マイクロコンピュータ及びコントローラ | |
| JPS5914061A (ja) | メモリバンク切換回路 | |
| JPS60193046A (ja) | 命令例外検出方式 | |
| JPS62243038A (ja) | プログラムの評価装置 | |
| JPH02136921A (ja) | レジスタアクセス方式 | |
| JPS63257044A (ja) | プログラマブルメモリマツピング方式 | |
| JPS63265332A (ja) | プログラムジヤンプ方式 | |
| JPH06242964A (ja) | 割込み処理方式、割込み処理システム、及びマイクロコンピュータ | |
| JPS61272856A (ja) | プロセツサ制御方式 | |
| JPH02224026A (ja) | スタック回路 | |
| JPH0635750A (ja) | 半導体集積回路装置 | |
| JPS619733A (ja) | テスト装置 |