JPS61122754A - マイクロプロセツサ - Google Patents

マイクロプロセツサ

Info

Publication number
JPS61122754A
JPS61122754A JP24558784A JP24558784A JPS61122754A JP S61122754 A JPS61122754 A JP S61122754A JP 24558784 A JP24558784 A JP 24558784A JP 24558784 A JP24558784 A JP 24558784A JP S61122754 A JPS61122754 A JP S61122754A
Authority
JP
Japan
Prior art keywords
instruction
subroutine
buffer memory
execution
cycle
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
JP24558784A
Other languages
English (en)
Inventor
Tsunaaki Shitei
四手井 綱章
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
Original Assignee
Oki Electric Industry 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 filed Critical Oki Electric Industry Co Ltd
Priority to JP24558784A priority Critical patent/JPS61122754A/ja
Publication of JPS61122754A publication Critical patent/JPS61122754A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はSマイクロプロセッサ(MPU)、特に実行す
べき命令の取込みを前もって他の命令実行中に行なって
命令取込み時間を短縮する、いわゆる先行制御機能を有
するマイクロプロセッサに関するものである。
〔従来の技術〕
従来、このような分野の技術としては、Micropr
ocessor and Peripheral Ha
ndbook。
” /A−BIT HMO8MICROPROCESS
OR” (19g、))(米) Inte1社。P3・
/−,3・A  に記載されるものがあった。以下、そ
の構成の概要を図を用いて説明する。
第2図は従来のマイクロプロセッサの一構成例を示すブ
ロック図である。図において、/はマイクロプロセッサ
(MPU)であり、データパスコを介して与えられるプ
ログラムの命令に基づいて所定の命令実行を行なう。M
PU/は、データパスコを介して与えられるプログラム
の命令を解読して各種の制御信号aを発生する制御部3
と、制御信号aに基づき各種の演算を行−・命令の実行
を行なう演算部ダと、制御信号&により制御されデータ
パスコを介しであるいは予め与えられるデータを一時的
に記憶するレジスタ部夕とを備えている。
さらにMPU /には、制御信号aI/c基づいてデー
タパスコとMPU /内との信号の授受を行なうインタ
ーフェイス6と、インター7エイス6を介して与えられ
る命令を一時的に記憶して所定のタイミングで該命令を
制御部Jに与えるバッファメモリ7とを備えている。
ここで、制御部Jは、バッファメモリ7に格納された命
令を取出す(フェッチ)ための命令レジスタ31、命令
レジスタ3/で読出された命令を解読する命令デコーダ
3コ、及び解読された命令を所定のタイミングで制御信
号aとして出力する制御回路33等を備えている。そし
て制御信号aは、 MPU /内の各回路を制御するた
めに命令レジスタ3/、命令デコーダ3コ、演算部ダ、
レジスタ部夕、インターフェイス6、及びバッファメモ
リ7等に与えられる。
また、演算部ダは、算術演算および論理演算を行うもの
で、算術論理ユニット、アキュムレータ、アキエムレー
タラッチ、一時レジスタ、フラグフリップフロップ、1
0進補正等を備え、制御信号aに基づいて命令の実行(
エグゼキエーシ四ン)を行う。この演算部弘での演算の
基礎となるデータを格納するレジスタ部夕は、MPU/
内の内部メモリとしての機能を持ち、汎用ワーキングレ
ジスタ、一時レジスタ、インクリメンタ/デクリメンタ
とアドレスラッチ、レジスタ選択、及びマルチプレクサ
等を備えている。
以上のように構成されるMPU /の動作を第3図〜第
夕図を参照しつつ説明する。なお、第3図はいわゆる先
行制御機能を持だな〜・一般的なMPUの動作タイミン
グ図、第q図及び第3図(tl 、 (2)は先行制御
機能を持つMPU/の動作タイミング図である。
一般に、第二図中のバッファメモリ7を持たないMPU
/にあっては、第3図のようなタイミングで動作する。
すなわち、MPU /が命令サイクル/。
ユ、・・・の順に動作する場合、命令サイクル/では取
出しサイクル(フェッチサイクル)l及び実行サイクル
lの順に、以下同様に各命令サイクルコ・・・でフェッ
チサイクルコ・・・及び実行サイクルコ・・・の繰返動
作で進行する。例えば、命令サイクル/中のフェッチサ
イクルlでは、制御信号aに基づいてレジスタ部夕から
アドレス情報が出力され、これがインター7エイス6を
介してデータパスコに送出される。するとデータパスコ
に接続された外部のプログラムメモリ(図示せず)等か
ら指定されたアドレスの命令コードが取り出され、これ
がデータパスコ及びインターフェイス6を介して命令レ
ジスタ31へ与えられる。命令レジスタ31で読み出さ
れた命令コードは命令デコーダ3λで解読され、これを
基に制御回路33で各種の制御信号aが作られてフェッ
チサイクルlを完了する。次いで命令サイクルl中の実
行サイクル/では、制御信号aに基づいて演算部グで命
令の実行が行われる。このような7エツチサイクル及び
実行サイクルが各命令サイクルコ・・・ごとに順次行な
われる。
ところが、このような方式では、命令サイクルト・・ご
とに命令コードの取出しを行うので、これに要する時間
のためにMPHの動作が遅くなる。
そこで、従来のMPU /にあっては、バッファメモリ
7を設けて第ダ図及び第!図に示すような取出しの先行
制御を行っている。ここで、第弘図は命令サイクルがシ
ーケンシャルに実行されている場合のタイミング図、第
3図(1)は命令サイクルがシーケンシャルでない実行
がある場合の説明図、及び第3図(2)は第り図(1)
のタイミング図である。
第弘図に示すように、命令がメインルーチンのみの場合
、実行すべき命令を前もって取込んでおき、これをバッ
ファメモリ7に格納しておく。例えば、命令サイクル/
において、前の命令サイクル中K、インターフェイス乙
の空時間を利用し、フェッチサイクルlの命令コードを
データパスコ及びインター7エイス6を介してバッファ
メモリ7へ転送し、フェッチサイクル/を終了しておく
そして前の命令サイクルの命令実行が終了すると、制御
信号aにより、バッファメモリ7に転送されたフェッチ
サイクル/の命令コードが命令レジスタ3/に転送され
、直ちに実行サイクル/に移される。以後、′同様にし
て実行サイクルλ、3・・・へと連続的に命令の実行が
行なわれる。このよ51C1先行制御では命令コードの
取込みが前もって他の命令実行中に行われるため、命令
コード取込みに要する時間が減少してMPU /の動作
が速くなる。
一方、第夕図(it 、 (2)に示すようK、命令サ
イクル/、  2.  J・・・で構成されるメインル
ーチンM中に、命令サイクル2S、、7S・・・で構成
されるサブルーチンSが組込まれた場合、メインルーチ
ンMの実行サイクルl、コ、3・・・がシーケンシャル
に進行しなくなる。例えば、メインルーチンMの実行サ
イクル/中において、その後に必要となる7エツチサイ
クルコ、3を実行しているとき、サブルーチンSのコー
ル命令(呼出し命令)Scがあると、バッファメモリ7
に格納された7エツチサイクルユ、3の命令コードが制
御信号aVCよりクリアされ、サブルーチンSへと実行
シーケンスAが移る。サブルーチンSの実行にあたって
、まずサブルーチン実行サイクルコS中の7エツチサイ
クルコSを実行するために、新たに命令コードをデータ
パスコ及びインターフェイス6を介してバッファメモリ
7へ転送する。次いでこの転送された命令コードが制御
部3で読出し解読され、演算部ダによりサブルーチン実
行サイクル2Sが実行される。以下同様にサブルーチン
実行サイクル3Sへと進む。ここで、サブルーチン実行
サイクルJS中にリターン命令(復帰命令)SRがある
と、サブルーチン実行サイクル、2S中にバッファメモ
リ7に格納されたフェッチサイクル3Sの命令コードが
クリアされ、メインルーチンMの命令サイクルλへと復
帰する。
〔発明が解決しようとする問題点〕
しかしながら、上記構成の装置では、連続したアドレス
の命令を順次実行する場合には命令コードの取込みに要
する時間を減らすことができるが、メインルーチンMの
進行中にサブルーチンコール命令Scや割込み命令、ジ
ャンプ命令等があると、実行シーケンスScが順番とな
らず、バッファメモリ7に前もって転送した命令コード
をすべてクリアし、再度新たに実行すべき命令コードを
取込む必要がある。同様のことはサブルーチンSからメ
インルーチンMへ復帰する場合にもいえる。そのため命
令の再取込みに要する時間ロスのために、命令の読込み
効率が低下し、MPU /の実行速度が遅いという問題
点があった。
本発明は、前記従来技術が持っていた問題点として、命
令の再取込みに要する時間ロスの点について解決した装
置を提供するものである。
〔問題点を解決するための手段〕
本発明は、前記問題点を解決するために、先行制御機能
を有するマイクロプロセッサ(MPU)において、命令
の実行に先だって先行的に命令を取込み格納するバッフ
ァメモリを複数個設けると共に、プログラム命令の実行
に応じて複数個のバッファメモリからの読出し信号を選
択し命令レジスタに与える選択回路を設けたものである
〔作用〕
本発明によれば、以上のよ5KMPUを構成したので、
例えばメインルーチン実行時には第1のバッファメモリ
を用い、サブルーチンの実行に際しては第1のバッファ
メモリの記憶内容を保持したまま第コのバッファメモリ
を用いてサブルーチンの命令を取込むように働く。これ
によってメインルーチンへの復帰時には第1のバッファ
メモリに格納された命令を直ちに取込むことが可能とな
る。
従って前記問題点を除去できるのである。
〔実施例〕
第1図は本発明の第1の実施例を示すMPUの回路構造
図である。なお、第1図において第2図〜第5図中の袂
素と同一の要素には同一の符号が付されている。
そしてこのMPUl0Qが第2図のものと異なる点は、
インターフェイス6と制御部3との間にコ個のバッファ
メモリ/θ7−/、 /θ7−コ を設げたことと、バ
ッファメモリ107−/、 107−2の出力信号のう
ち7つを選択して制御部3へ与えるための選択回路10
1を設けたことである。  、ここで、バッファメモリ
107−/、 107−−は、制御信号aに基づき、イ
ンタフェイス乙の空時間を利用して外部メモリ(図示せ
ず)等からデータバス及び該インター7エイス6を介し
てプログラムの命令を、命令実行に先行して予め取込む
メモリである。そして制御信号aにより、第1のバッフ
ァメモリ107−/  には例えばメインルーチンの命
令が取込まれ、一方、第一のバッファメモリ107−2
には例えばサブルーチンの命令が取込まれる。また第1
と第一のバッファメモリ107−/。
107−2は、制御信号aに基づきプログラムの命令を
先行的に順次取込む。そしてその全記憶容量が取込んだ
命令で満たされると、選択回路10gを介して命令レジ
スタ3/へ読出しが行なわれ、メモリの空スペースが生
じる毎に、インターフェイス6を介してプログラムの命
令が新たに格納される。
バッファメモリ107= /、 107−2の出力信号
を選択する選択回路iogは、バッファメモリ/θ7−
/。
107−2から読出したjつの命令を制御信号aにより
一時にl入力づつ選択して命令レジスタ3/へ与える回
路で、ANDゲート、インバータ、及びOR回路等で構
成されている。そして選択回路。
iogは、例えばメインルーチンの命令サイクル時には
第1のバッファメモリ107−/の取込み命令を命令レ
ジスタ31へ与え、一方、サブルーチンの命令サイクル
時には第一のバッファメモ!J 107−2の取込み命
令を命令レジスタ31へ与えるよ51C働く。
以上のように構成されるMPU10Oの動作を第4図を
参照しつつ説明する。なお、第6図は第7図の動作タイ
ミング図である。
ここで、第6図に示すように、命令サイクルl。
コ、3・・・で構成されるメインルーチンM中に、命令
サイクルλg、、7S・・・で構成されるサブルーチン
Sが組込まれた場合を想定する。
まず、メインルーチンMの実行サイクルl中においては
、後に実行すべきプログラムの命令がインター7エイス
6を介して第1のバッファメモリ107− /へ順次取
込まれる。そして第1のバッファメモI)107−/に
は先行して取込んだ命令で常に満たされる。
今、メインルーチンMの実行サイクルl中において7エ
ツチサイクルコ、3を実行しているとき、サブルーチン
Sのコール命令SCがあると、制御信号aによりg/の
バッファメモリ107−/の内容(フエツチナイクルコ
、3)が保持されたまま、選択回路10tの入力端が第
2のバッファメモ+)107−コの出力端へ切替え接続
されてサブルーチンSへと移る。ここで第一のバッファ
メモリ107−コには、制御信号aにより制御されるイ
ンターフェイス乙の切替え操作により、サブルーチン実
行サイクル28に先行して該実行サイクル2Sの取込み
が済に終了している。そのためメインルーチンMからサ
ブルーチンSへ移行しても、命令レジスタ3/は直ちに
サブルーチンSの命令を第2のバッファメモリ107−
2から取出してサブルーチン実行サイクル2Sへと進行
する。以下同様K、サブルーチン実行サイクル2S中に
第一のバッファレジスタ/θ7−2へサブルーチン命令
が順次格納され、フエツチサイク/L/JS、#S・・
・が実行されていく。
ここで、サブルーチン実行サイクルJS中にリターン命
令SRがあると、制御信号aにより第一のバッファメモ
!J 107−.1の内容が保持されたまま選択回路1
01の入力端が第1のバッファメモリ107− /側へ
と切替わりメインルーチンMへ復帰する。ところが戻り
先の命令コードはtでに第2のバッファメモリ107−
 /に格納されているため、命令レジスタJ/は直ちに
該第−のバッファメモリ107− /から命令コードを
読み出して実行サイクルコ、3へと進む。
このように、メインルーチンMとサブルーチンSとが切
替わっても、メインルーチンMの命令先行取込みは第1
のバッファメモリ107−1で、サブルーチンSの命令
先行取込みは第一のバッファメモI)107−2でそれ
ぞれ行なわれているので、ルーチン切替え時における命
令取込み時間のロスをな(すことができ、高速処理が可
能となる。従って本実施例のMPU100をファルタイ
ム制御用システムのプロセッサとして用いれば、応答性
の優れる制御システムが実現できる。
第7図は本発明の第λの実施例を示すMPU200の回
路構成図である。この実施例が第1の実施例と異なる点
は、インターフェイス6に第3のバッファメモリ107
− Jを接続すると共K、これに対応して3人力の選択
回路−ogを設けたことである。
このような構成にあっては、第1と第2のバッファメモ
IJ 107− /、 107−−を第1の実施例と同
様に使用し、一方、第3のバッファメモリ107−.3
を例えば電源異常時の緊急割込み用に使用する。
そして第3のバッファメモリ107−.3 に、常に割
込み処理ルーチンを格納しておけば、電源異常時の割込
みにおいて、従来のように割込み時に割込み命令を取込
むのではなく、予め格納しておいた割込み命令を第3の
バッフアメ%I)107−3から取込むことが可能とな
るため、割込みの応答時間を短縮できる。従って電源異
常時の処理において信頼性が強く要求されるシステムに
最適である。
なお、バッファメモリ107−1〜107−3の数は、
ジャンプ命令等の他の命令の数に応じて適宜増加しても
、上記実施例と同様の利点を有する。
〔発明の効果〕
以上詳細に説明したように、本発明によれば、命令の実
行に先だって先行的に命令を取込み格納するバッファメ
モリを複数個設けると共に、プログラム命令の実行に応
じて複数個のバックアメそすからの読出し信号を選択し
命令レジスタに与える選択回路を設けたので、実行シー
ダンスの変更時に生じる命令取込み時間のロスをなくす
ことができ、従りてMPHの高速処理化が可能となる。
【図面の簡単な説明】
第1図は本発明の第1の実施例を示すMPUの回路構成
図、第1図は従来のMPUの回路構成図、第3図〜第j
図は第一図の動作説明図、第6図は第1図の動作説明図
、第7図は本発明の第2の実施例を示すMPUの回路構
成図である。 コ・・・データバス、J・・・制御部、グ・・・演算部
、り・・・レジスタ部、6・・・インターフェイス、3
1・・・命令レジスタ、3コ・・・命令デコーダ、33
・・・制御回路、/θ0. 200・・・マイクロプロ
セッサ(MPU)、107−/ 〜107−.3−・・
バッファメモリ、10g、  20g・・・選択回路。 出願人代理人  柿 本 恭 成 蔓 2 固 t;マイ70ブロセップ(MPU) $ 3 図 ド11令l−−−命4F2−斗−命牛3−4−介や4→
第4 図

Claims (1)

  1. 【特許請求の範囲】 データバスから与えられる命令をバッファメモリに一時
    記憶した後命令レジスタで取り出しそれを命令デコーダ
    により解読して各種の制御信号を発生する制御部と、前
    記制御信号に基づき各種の演算を行い前記解読された命
    令の実行を行なう演算部と、前記制御信号により制御さ
    れデータを一時的に記憶するレジスタ部とを備えたマイ
    クロプロセッサにおいて、 前記演算部による命令実行に先だち前記データバスから
    与えられる各種の命令を種類分けして予め格納する複数
    個のバッファメモリと、この各バッファメモリ内に格納
    されたそれぞれの命令を前記演算部による命令実行に応
    じて/入力づつ選択して前記命令レジスタに与える選択
    回路とを備えたことを特徴とするマイクロプロセッサ。
JP24558784A 1984-11-19 1984-11-19 マイクロプロセツサ Pending JPS61122754A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP24558784A JPS61122754A (ja) 1984-11-19 1984-11-19 マイクロプロセツサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24558784A JPS61122754A (ja) 1984-11-19 1984-11-19 マイクロプロセツサ

Publications (1)

Publication Number Publication Date
JPS61122754A true JPS61122754A (ja) 1986-06-10

Family

ID=17135946

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24558784A Pending JPS61122754A (ja) 1984-11-19 1984-11-19 マイクロプロセツサ

Country Status (1)

Country Link
JP (1) JPS61122754A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04361329A (ja) * 1991-06-07 1992-12-14 Fujitsu Ltd 命令フェッチ回路
JPH06103065A (ja) * 1992-09-21 1994-04-15 Matsushita Electric Ind Co Ltd 命令プリフェッチ装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04361329A (ja) * 1991-06-07 1992-12-14 Fujitsu Ltd 命令フェッチ回路
JPH06103065A (ja) * 1992-09-21 1994-04-15 Matsushita Electric Ind Co Ltd 命令プリフェッチ装置

Similar Documents

Publication Publication Date Title
KR100208889B1 (ko) 병렬처리장치 및 병렬처리방법
JP2500036B2 (ja) ハイブリッドパイプライン接続プロセッサおよびその処理方法
JPH0636515B2 (ja) 通信プロセッサ装置
US4945511A (en) Improved pipelined processor with two stage decoder for exchanging register values for similar operand instructions
JPH0769812B2 (ja) データ処理装置
JPH03233630A (ja) 情報処理装置
EP0240606B1 (en) Pipe-line processing system and microprocessor using the system
JPS61122754A (ja) マイクロプロセツサ
US5361338A (en) Pipelined system for decomposing instruction into two decoding parts and either concurrently generating two operands addresses of merging decomposing decoding codes based upon the second operand
JPH01183737A (ja) 情報処理装置
US20050050309A1 (en) Data processor
JPH04104350A (ja) マイクロプロセッサ
JPH08161166A (ja) プロセッサ
JP2689914B2 (ja) 情報処理装置
JP2002182902A (ja) メモリデータアクセス構造およびその方法
JPH0342723A (ja) データ処理装置
JPS63141131A (ja) パイプライン制御方式
JP2825315B2 (ja) 情報処理装置
JPH04227541A (ja) プロセッサ及びループ制御機能処理方法
JPH0218732B2 (ja)
JPH0756734A (ja) マイクロプロセッサ及びその制御方法
JPS6028014B2 (ja) マイクロプロセツサ
JPH024009B2 (ja)
JPS5899869A (ja) 並列処理方式
JPH06222935A (ja) 情報処理装置および情報処理装置によるタスク切替方法