JPS6380333A - マイクロコンピユ−タ回路 - Google Patents

マイクロコンピユ−タ回路

Info

Publication number
JPS6380333A
JPS6380333A JP22653086A JP22653086A JPS6380333A JP S6380333 A JPS6380333 A JP S6380333A JP 22653086 A JP22653086 A JP 22653086A JP 22653086 A JP22653086 A JP 22653086A JP S6380333 A JPS6380333 A JP S6380333A
Authority
JP
Japan
Prior art keywords
address
circuit
branch
adder
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
Application number
JP22653086A
Other languages
English (en)
Inventor
Noriyuki Takagi
高木 規之
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP22653086A priority Critical patent/JPS6380333A/ja
Publication of JPS6380333A publication Critical patent/JPS6380333A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はマイクロコンピュータ回路に間し、特にプログ
ラミングにおけるケース別分岐を容易にするマイクロコ
ンピュータ回路に関する。
〔従来の技術〕
従来、この種のマイクロコンピュータ回路では、プログ
ラミングにおけるケース別分岐の方法として、分岐先が
多い場合に分岐先アドレスをメモリ中に分岐テーブルと
して順にセットしておき、条イ牛によって該当するアド
レスをプログラムカウンタにセントすることにより目的
の分岐先アドレスにジャンプする方法が広く用いられて
いる。
例えば、アキュムレータ値によって第2図に示すように
分岐させる場合を考えると、第4図に示すようなプログ
ラムになる。なお、CPUIはZ80(ザイログ社製)
を想定し、DEFTは2バイトのデータを示すデータ定
義用疑似命令である(以下、同様)、このプログラムは
、処理時間が最短となるよう考慮しであるが、分岐完了
までの処理ステート数は71ステートとなる。
〔発明が解決しようとする問題点〕
上述した従来のマイクロコンピュータ回路では、分岐先
アドレスが格納されている分岐テーブルのアドレスの計
算をソフト1クエアで行っているので、分岐完了までの
処理ステート数が多くなり、処理時間がかかるという欠
点がある。
本発明の目的は、上述の点に鑑み、分岐先アドレスが格
納されている分岐テーブルのアドレスの計算をハードウ
ェアで行わせるようにしたマイクロコンピュータ回路を
提供することにある。
〔問題点を解決するための手段〕
本発明のマイクロコンピュータ回路は、CPUから分岐
先アドレスが分岐テーブルの何番目にあるかを書き込ま
れるレジスタ回路と、このレジスタ回路に書き込まれた
値と前記CPUが出力するアドレスバスの値とを加算す
る加算回路と、前記アドレスバスの値を保持するアドレ
スバスバッファと、前記CPUが実行するマシンサイク
ルをカウントすることにより前記加算回路が動作するタ
イミングと前記アドレスバスバッファが動作するタイミ
ングとを排他的に制御して前記加算回路からの出力また
は前記アドレスバスバッファからの出力をアドレスとし
てメモリに供給させる加算器制御回路とを有する。
〔作用〕
本発明のマイクロコンピュータ回路では、レジスタ回路
がCPUから分岐先アドレスが分岐テーブルの何番目に
あるかを書き込まれ、加算回路がレジスタ回路に書き込
まれた値とCPUが出力するアドレスバスの値とを加算
し、アドレスバスバッファがアドレスバスの値を保持し
、加算器制御回路がCPUが実行するマシンサイクルを
カウントすることにより加算回路が動作するタイミング
とアドレスバスバッファが動作するタイミングとを排他
的に制御して加算回路からの出力またはアドレスバスバ
ッファからの出力をアドレスとしてメモリに供給させる
〔実施例〕
次に、本発明について図面を参照して詳細に説明する。
第1図は、本発明の一実施例を示す回路ブロフク図であ
る。本実施例のマイクロコンピュータ回路は、CPUI
と、ROM2と、RAM3と、レジスタ回路4と、加算
器制御回路5と、加算回路6と、アドレスデコーダ7と
、アドレスバスバッファ8とから、その主要部が構成さ
れている。
CPUIは、例えば80系の8ビツトマイクロコンビエ
ータである280でなり、そのアドレスポートAo〜 
A、Sはアドレスバス11を介して加算回路6、アドレ
スバスバッファ8およびアドレスデコーダ7に接続され
ている。また、CPUIのデータポートD0〜D、は、
データバス12を介してレジスタ回路4、ROM2およ
びRAM3に接続されている。さらに、CPUIからは
、コントロール信号がコントロールバス13ヲ介シてR
OM2、RAM3、加算器制御回路5およびアドレスレ
コーダ7に供給されている。
レジスタ回路4は、第1ビツト(LSB)〜第16ピン
ト(MSB)の16ビソトレジスタを有し、CPUIか
らのアキュムレータ値はこのうちの第2〜第9ビツトに
書き込まれるようになっており、第1ビツトおよび第1
0〜第16ビツトは常にOに固定されている。このため
、レジスタ回路4には、アキュムレータ値の2倍の値が
ストアされるようになっている。このようにレジスタ回
路4にアキュムレータ値の2倍の値をストアするように
したのは、分岐テーブル(JPTBL)の各分岐先アド
レスが2バイトで構成されているためである。
レジスタ回路4の出力は、加算回路6に接続されている
加算器制御回路5は、CPUIから供給されるメモリや
IQのり−ド/ライトをコントロールするコントロール
信号を組み合わせる論理回路とカウンタとから構成され
ている。加算器制御回路5からは、加算回路6およびア
ドレスバスバッファ8にコントロール信号が供給されて
いる。
加算回路6は、16ビツトの加算回路であり、出力はR
OM2およびRAM3に接続されている。
アドレスデコーダ7は、アドレスをデコードしてコント
ロール信号をレジスタ回路4、加算器制御回路5、RO
M2およびRAM3に供給するようになっている。
アドレスバスバッファ8は、16ビツトのアドレスを一
時的に保持するバッファであり、その出力はROM2お
よびRAM3に接続されている。
第3図は、第1図に示した本実施例のマイクロコンピュ
ータ回路で第2図に示したケース別分岐を実行する場合
のプログラム例を示す。なお、REGは、レジスタ回路
4が割り当てられている入出力アドレスである。このプ
ログラムの分岐完了までの処理ステート数は、30ステ
ートである。
次に、このように構成された本実施例のマイクロコンピ
ュータ回路の動作について説明する。
まず、命令 OUT  (REG)、A の実行により、レジスタ回路4にアキュムレータ値が書
き込まれる。また、この命令の実行により加算器制御回
路5が起動され、加算器側?■回路5でCPU 1が次
の命令 LD   HL、   (J PTBL)を実行する際
のメモリリードサイクルのカウントが開始される。命令 LD  HL、  (JPTBL) は3バイト命令で、M1〜M、の5つのマシンサイクル
からなる。M、サイクルは命令1バイト目を読み込む命
令コードフェッチサイクル、M8およびM、サイクルは
命令の残りの2バイトを読み込むメモリリードサイクル
(この2バイトでM4およびM、サイクルで読み込むア
ドレスが指定される)、M4およびM、サイクルはとも
にメモリリードサイクルである。M、サイクルでMtお
よびM、サイクルで指定されたアドレスの内容をLレジ
スタに読み込み、M、サイクルでその次のアドレスの内
容をHレジスタに読み込む。
加算器制御回路5は、既述したように命令OUT  (
REG)、A で起動がかけられた後にマシンサイクルのカウントを開
始するが、命令 LD  HL、  (JPTBL) のM4およびM、サイクルで加算回路6を動作させる一
方、アドレスバスバッファ8の動作を禁止する。
CPUIは、アドレスバス11にM4サイクルではJP
TBL番地を、M、サイクルではJ PTBL+1番地
を指定するアドレスを出力するが、既述したようにM4
およびM、サイクルではアドレスバスバッファ8の動作
が禁止される一方、加算回路6が動作されるので、メモ
リに与えられるアドレスはCPUIが出力したアドレス
にレジスタ回路4内の16ビツトレジスタの値が加算さ
れた値となる。このため、この加算値を読み込むことに
より、分岐テーブルの所望の分岐先アドレスがHLレジ
スタペアに読み込まれる。
したがって、命令 JP  (HL) の実行により、所望の分岐先アドレスへのジャンプが行
われる。
このように本実施例のマイクロコンピュータ回路では、
第3図に示したようにプログラム中の分岐に要するステ
ート数が30ステートですみ、処理時間が短縮できるこ
とになる。しかも、従来のプログラムでは、第4回に示
したようにBCおよびHLの2つのレジスタペアが必要
であるのに対して、本実施例のマイクロコンピュータ回
路ではHしレジスタペアのみですむことになる。
なお、上記実施例では、CPUIとして80系8ビツト
マイクロコンピユータである280を使用した場合につ
いて説明したが、cpu tは他のマイクロコンピュー
タであってもよい。
〔発明の効果〕
以上説明したように本発明は、外部に設けたレジスタ回
路にアキュムレータ値を書き込んだ後に分岐テーブルの
先頭2バイトをロードする命令を実行するだけでレジス
タ回路に古き込まれた値に対応する分岐先アドレスをC
PU内部のレジスタペアにロードできるようにしたこと
により、分岐先アドレスが格納されている分岐テーブル
のアドレスの計算を不要としてプログラムにおける分岐
に要するステート数を減少させ処理時間を短縮化できる
効果がある。
【図面の簡単な説明】
第1図は本発明の一実施例を示すブロック図、第2図は
ケース別分岐の一例を示す図、第3図は第1図に示した
マイクロコンピュータ回路で第2図のケース別分岐を実
行するプログラム例を示す図、 第4図は従来のマイクロコンピュータ回路で第2図の条
件別分岐を実行するプログラム例を示す図である。 図において、 1・・・CPU、 2・・・ROM。 3・・・RAM。 4・・・レジスタ回路、 5・・・加算器制御回路、 6・・・加算回路、 7・・・アドレスデコーダ、 8・・・アドレスバスバッファ、 11・・・アドレスバス、 12・・・データバス、 13・・・コントロールバスである。

Claims (1)

  1. 【特許請求の範囲】 CPUから分岐先アドレスが分岐テーブルの何番目にあ
    るかを書き込まれるレジスタ回路と、このレジスタ回路
    に書き込まれた値と前記CPUが出力するアドレスバス
    の値とを加算する加算回路と、 前記アドレスバスの値を保持するアドレスバスバッファ
    と、 前記CPUが実行するマシンサイクルをカウントするこ
    とにより前記加算回路が動作するタイミングと前記アド
    レスバスバッファが動作するタイミングとを排他的に制
    御して前記加算回路からの出力または前記アドレスバス
    バッファからの出力をアドレスとしてメモリに供給させ
    る加算器制御回路と、 を有することを特徴とするマイクロコンピュータ回路。
JP22653086A 1986-09-24 1986-09-24 マイクロコンピユ−タ回路 Pending JPS6380333A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP22653086A JPS6380333A (ja) 1986-09-24 1986-09-24 マイクロコンピユ−タ回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP22653086A JPS6380333A (ja) 1986-09-24 1986-09-24 マイクロコンピユ−タ回路

Publications (1)

Publication Number Publication Date
JPS6380333A true JPS6380333A (ja) 1988-04-11

Family

ID=16846578

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22653086A Pending JPS6380333A (ja) 1986-09-24 1986-09-24 マイクロコンピユ−タ回路

Country Status (1)

Country Link
JP (1) JPS6380333A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013192786A (ja) * 2012-03-21 2013-09-30 Sophia Co Ltd 遊技機

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013192786A (ja) * 2012-03-21 2013-09-30 Sophia Co Ltd 遊技機

Similar Documents

Publication Publication Date Title
US6405302B1 (en) Microcomputer
US5381531A (en) Data processor for selective simultaneous execution of a delay slot instruction and a second subsequent instruction the pair following a conditional branch instruction
JPH06332792A (ja) データ処理装置及びそのデータ読み出し制御回路,データ書き込み制御回路
JP2970821B2 (ja) データ処理装置
JPH01119828A (ja) マイクロプロセッサ
US5757685A (en) Data processing system capable of processing long word data
EP0240606B1 (en) Pipe-line processing system and microprocessor using the system
JPH08212075A (ja) 情報処理装置
JPS6380333A (ja) マイクロコンピユ−タ回路
JP3504355B2 (ja) プロセッサ
US5649229A (en) Pipeline data processor with arithmetic/logic unit capable of performing different kinds of calculations in a pipeline stage
US5463747A (en) Microprogram data processor processing operand address calculation and instruction execution with common hardware
JPH01169537A (ja) マイクロプロセッサ
JPH0218729B2 (ja)
JP2000112754A (ja) データ処理装置
JPH05282133A (ja) 演算方式
US7003543B2 (en) Sticky z bit
JP3515018B2 (ja) パイプライン形データ処理装置
JPH04275603A (ja) プログラマブル・コントローラ
JP2987281B2 (ja) プロセッサ
JP2002163104A (ja) マイクロコンピュータ
JP4702004B2 (ja) マイクロコンピュータ
JP3063593B2 (ja) プログラマブルコントローラ
JPH08305564A (ja) マイクロコンピュータ
JPS62117041A (ja) マイクロコンピユ−タ