JPH0559451B2 - - Google Patents

Info

Publication number
JPH0559451B2
JPH0559451B2 JP61132496A JP13249686A JPH0559451B2 JP H0559451 B2 JPH0559451 B2 JP H0559451B2 JP 61132496 A JP61132496 A JP 61132496A JP 13249686 A JP13249686 A JP 13249686A JP H0559451 B2 JPH0559451 B2 JP H0559451B2
Authority
JP
Japan
Prior art keywords
instruction
microprogram
subsequent
executed
destination
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 - Lifetime
Application number
JP61132496A
Other languages
English (en)
Other versions
JPS62288940A (ja
Inventor
Kazumasa Tanaka
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
Nippon Electric 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP13249686A priority Critical patent/JPS62288940A/ja
Publication of JPS62288940A publication Critical patent/JPS62288940A/ja
Publication of JPH0559451B2 publication Critical patent/JPH0559451B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は情報処理装置に関し、特に情報処理装
置における連続す命令の高速処理に関する。
〔従来の技術〕
従来、この種の情報処理装置においては、各命
令はいくつかのマイクロプログラムステツプを共
有化することはあつても、論理的かつ時間的に独
立したマイクロプログラムルーチンで処理されて
いた。すなわち、連続する命令の組合せによつて
マイクロプログラム処理の内容を変えることはな
かつた。
したがつて、従来の情報処理装置では、先行す
る命令(以下、単に先行命令と称する)のマイク
ロプログラムの実行が完了した後に、この先行命
令の直後に後続する命令(以下、単に後続命令と
称する)のマイクロプログラムの実行に入つてい
た。
〔発明が解決しようとする問題点〕
上述した従来の情報処理装置では、例えば、先
行命令の書込み動作のデステイネーシヨン(書出
し位置)と後続命令の読出し動作のソース(読出
し位置)とが一致する場合には、先行命令の演算
結果をデステイネーシヨンに格納する処理と後続
命令の処理とを一括処理できる(先行命令のデス
テイネーシヨンへの書込み動作と後続命令のソー
スからの読出し動作とを合成して無駄な書込みお
よび読出しを省略することができる)にもかかわ
らず、先行命令と後続命令とをシーケンスシヤル
に実行しなければならないという欠点がある。
本発明の目的は、上述の点に鑑み、先行命令と
後続命令とが特定の関係にあり、かつ先行命令の
書込み動作のデステイネーシヨンと後続命令の読
出し動作のソースとが一致するときに、先行命令
の処理を中断して先行命令の演算結果をデステイ
ネーシヨンに格納する処理と後続命令の処理とを
一括処理することにより、演算処理を高速化する
ようにした情報処理装置を提供することにある。
〔問題点を解決するための手段〕
本発明の情報処理装置は、各命令について、後
続命令を指定する後続命令指定フイールドおよび
後続命令の起動を指示する起動指示フイールドを
含み命令を処理する第1のマイクロプログラム
と、先行命令の演算結果をデステイネーシヨンに
格納する処理を後続命令の処理とを一括処理する
第2のマイクロプログラムとを格納する制御メモ
リと、実行中の命令のデステイネーシヨンと後続
命令のソースとの一致を検出する命令関係検出回
路と、実行中の命令の第1のマイクロプログラム
に含まれる後続命令指定フイールドの内容と後続
命令の第1のマイクロプログラムの先頭アドレス
とを比較して実行中の命令が指定する後続命令が
実行中の命令の直後に続いていることを識別する
命令識別回路と、メモリ内の命令に応じて前記制
御メモリから対応する第1のマイクロプログラム
を読み出して実行し、前記命令識別回路が実行中
の命令でデステイネーシヨンと後続命令のソース
との一致を検出し、かつ前記命令関係検出回路が
実行中の命令が指定する後続命令が実行中の命令
の直後に続いていることを識別したときに、実行
中の命令の第1のマイクロプログラムの起動指示
フイールドが後続命令の第2のマイクロプログラ
ムの起動を指示していれば、実行中の命令の第1
のマイクロプログラムの処理を中断して後続命令
の第2のマイクロプログラムを起動させる制御回
路とを含む。
〔作用〕
本発明の情報処理装置では、制御メモリが各命
令について、後続命令を指定する後続命令指定フ
イールドおよび後続命令の起動を指示する起動指
示フイールドを含み命令を処理する第1のマイク
ロプログラムと、先行命令の演算結果をデステイ
ネーシヨンに格納する処理と後続命令の処理とを
一括処理する第2のマイクロプログラムとを格納
し、命令関係検出回路が実行中の命令のデステイ
ネーシヨンと後続命令のソースとの一致を検出
し、命令識別回路が実行中の命令の第1のマイク
ロプログラムに含まれる後続命令指定フイールド
の内容と後続命令の第1のマイクロプログラムの
先頭アドレスとを比較して実行中の命令が指定す
る後続命令が実行中の命令の直後に続いているこ
とを識別し、制御回路がメモリ内の命令に応じて
制御メモリから対応する第1のマイクロプログラ
ムを読み出して実行し、命令識別回路が実行中の
命令のデステイネーシヨンと後続命令のソースと
の一致を検出し、かつ命令関係検出回路が実行中
の命令が指定する後続命令が実行中の命令の直後
に続いていることを識別したときに、実行中の命
令の第1のマイクロプログラムの起動指示フイー
ルドが後続命令の第2のマイクロプログラムの起
動を指示していれば、実行中の命令の第1のマイ
クロプログラムの処理を中断して後続命令の第2
のマイクロプログラムを起動させる。
〔実施例〕
次に、本発明については図面を参照して説明す
る。
第1図は本発明の一実施例を示すブロツク図で
ある。本実施例の情報処理装置は、先行制御回路
1と、命令関係検出回路2と、命令識別回路3
と、制御メモリアドレス制御回路4と、制御メモ
リ回路5と、制御回路6と、演算回路7と、メモ
リ8と、汎用レジスタ9とから、その主要部が構
成されている。
先行制御回路1は、メモリ8から命令語を順次
読み出し、読み出した命令語内のデイステイネー
シヨンフイールドとソースフイールドとの値を命
令関係検出回路2内のデイステイネーシヨンバツ
フア21とソースバツフア22とにそれぞれ供給
する。また、先行制御回路1は、各命令語を処理
する制御メモリ51内のマイクロプログラムの先
頭アドレスを命令識別回路3内のマイクロプログ
ラム先頭アドレスバツフア31に供給する。
命令関係検出回路2は、デイステイネーシヨン
バツフア21と、ソースバツフア22と、デイス
テイネーシヨンバツフア21の読出しレジスタ2
3と、読出しレジスタ23の出力とソースバツフ
ア22の出力とを比較する比較回路24とを有す
る。
デイステイネーシヨンバツフア21は、先行制
御回路1から供給されるデイステイネーシヨンを
記憶保持し、その出力ラインには制御メモリ51
内の第1のマイクロプログラムによつて現在実行
中の命令の直後の後続命令のデイステイネーシヨ
ンが出力される。現在実行中の命令の処理が終了
し後続命令が起動されたときには、後続命令のデ
イステイネーシヨンが読出しレジスタ23に取り
込まれるとともに、デイステイネーシヨンバツフ
ア21の出力ラインには後続命令のさらに次の命
令のデイステイネーシヨンが出力される。
ソースバツフア22は、先行制御回路1から供
給されるソースを記憶保持し、その出力ラインに
はデイステイネーシヨンバツフア21と同様に現
在実行中の命令の直後の後続命令のソースが出力
される。現在実行中の命令の処理が終わつて後続
命令が起動されたときには、ソースバツフア22
の出力ラインには後続命令のさらに次の命令のソ
ースが出力される。
比較回路24は、読出しレジスタ23の内容と
ソースバツフア22の出力との一致を検出する。
すなわち、現在実行中の命令のデイステイネーシ
ヨンと後続命令のソースとの一致を検出する。も
し両者が一致していれば、現在実行中の命令の演
算結果を後続命令が使用することを意味する。
命令識別回路3は、マイクロプログラム先頭ア
ドレスバツフア31と、比較回路32とを有す
る。
マイクロプログラム先頭アドレスバツフア31
は、先行制御回路1から供給される各命令語を処
理する制御メモリ51内の第1のマイクロプログ
ラムの先頭アドレスを記憶保持し、マイクロプロ
グラム先頭アドレスバツフア31の出力ラインに
は現在実行中の命令の直後の後続命令の第1のマ
イクロプログラムの先頭アドレスが出力されてい
る。
比較回路32は、マイクロプログラム先頭アド
レスバツフア31の出力、すなわち現在実行中の
命令の直後の後続命令の第1のマイクロプログラ
ムの先頭アドレスと現在実行中の命令の第1のマ
イクロプログラムに含まれてる後続命令指定フイ
ールドで指示される後続命令の第1のマイクロプ
ログラムの先頭アドレスとの一致を検出する。
制御メモリアドレス制御回路4は、アドレス修
飾回路41と、アドレスレジスタ42とを有し、
制御メモリ51に格納されているマイクロプログ
ラムのアドレスを指定する。
アドレスレジスタ42には、命令起動時のマイ
クロプログラムの先頭アドレスとして制御回路6
の指示に応じてマイクロプログラム先頭アドレス
バツフア31の出力またはこの出力をアドレス修
飾回路41によつて修飾変更したものがセツトさ
れる。
なお、本実施例の情報処理装置においては、各
命令の第1のマイクロプログラムの先頭アドレス
は偶数値に決められており、アドレス修飾回路4
1はマイクロプログラム先頭アドレスバツフア3
1の出力の最下位ビツトを反転して奇数値にし各
命令の第2のマイクロプログラムの先頭アドレス
にする機能を有する。
1つの命令を処理する第1のマイクロプログラ
ムが起動されてから次の命令が起動されるまで
は、制御回路6の指示により周知の方法でアドレ
スレジスタ42が更新され、それに対応する第1
のマイクロプログラムが制御メモリ51から読み
出されて実行される。
制御メモリ51には、各命令を個別に実行処理
する偶数番地から始める第1のマイクロプログラ
ムと、アドレス修飾回路41によつて奇数値に修
飾されたアドレスで始まる、先行命令の演算結果
をデステイネーシヨンに格納する処理と後続命令
の処理とを一括処理する(先行命令のデステイネ
ーシヨンへの書込み動作と後続命令のソースから
の読出し動作とを合成して無駄な書込みおよび読
出しを省略する)第2のマイクロプログラムとが
格納されている。
制御メモリ51内の各命令の第1および第2の
マイクロプログラムは、読出しレジスタ52に読
み出され、この内容に従つて演算回路7をはじめ
とする各部が制御される。
現在実行中の命令の第1のマイクロプログラム
の途中において直後の後続命令の種類や命令関係
の依存性によつては先行命令の演算結果をデステ
イネーシヨンに格納する処理が後続命令の処理と
一括処理可能なときに後続命令の第2のマイクロ
プログラムを起動するために、第1のマイクロプ
ログラムには後続命令の第1のマイクロプログラ
ムの先頭アドレスで表現された後続命令の種類を
指示する後続命令指定フイールドが設けられ、こ
の後続命令指定フイールドが命令識別回路3内の
比較回路32によつて後続命令の第1のマイクロ
プログラムの先頭アドレスと比較される。
一方、命令関係検出回路2においては、現在実
行中の命令の演算結果のデステイネーシヨンと直
後の後続命令のオペランドのソースとが比較され
る。実行中の命令の第1のマイクロプログラムに
含まれる起動指示フイールドで後続命令の第2の
マイクロプログラムの起動指示が出たときには、
比較回路24および32における2つの比較結果
がともに一致していれば制御回路6の指示により
現在実行中の命令の演算結果をデステイネーシヨ
ンに格納する処理と後続命令の処理とを一括処理
する後続命令の第2のマイクロプログラムが起動
される。比較回路24および32における2つの
比較結果が1つでも一致していなければ、後続命
令の第2のマイクロプログラムは起動されず、現
在実行中の命令の第1のマイクロプログラムの実
行を継続してその処理が終了した時点で後続命令
の第1のマイクロプログラムが起動される。
演算回路7は、読出しレジスタ71および72
と、セレクタ73と、12ビツト×32ビツト幅の乗
算器74と、64ビツトのシフタ75と、64ビツト
幅の加算器76と、結果レジスタ77とを含んで
構成されている。この演算回路7は、読出しレジ
スタ52に読み出されたマイクロプログラムによ
つて制御される。
32ビツト×32ビツトの固定小数点の乗算命令を
実行する場合、乗数と被乗数とが読出しレジスタ
71と72とにそれぞれ読み出され、読出しレジ
スタ71に読み出された乗数はセレクタ73によ
つて3分割されて3回にわたり乗算器74に入力
され、そのたびにその部分積が結果レジスタ77
に取り込まれ、それがシフタ75を介して次の部
分積に加算器76によつて加算される。
結果レジスタ77に得られた最終結果は、汎用
レジスタ9あるいはメモリ8に格納される。
次に、このように構成された本実施例の情報処
理装置の動作について説明する。なお、ここでは
第2図aに示す命令語列を実行する場合を例にと
つて具体的に説明する。
第2図aに示す命令語列は、汎用レジスタG1
とG2との内容を乗算し、その結果をメモリ8に
格納するものである。
第2図bには、MLT命令(乗算命令)を実行
中に後続のSTORE命令(格納命令)の第2のマ
イクロプログラムを起動すべく、そのマイクロプ
ログラム語が制御メモリ51の読出しレジスタ5
2に読み出されたときの各部の状態が示されてい
る。
デイステイネーシヨンバツフア21、ソースバ
ツフア22およびマイクロプログラム先頭アドレ
スバツフア31には、それぞれ後続のSTORE命
令のデステイネーシヨンG1、ソースG2および
“0100”(“ ”は16進数であることを示す。以下
同様)が出力されている。デイステイネーシヨン
バツフア21の読出しレジスタ23には、現在実
行中のMLT命令のデイステイネーシヨンG1が
入つている。したがつて、比較回路24は一致信
号を出力する。
一方、読出しレジスタ52に格納されている現
在実行中のMLT命令の第1のマイクロプログラ
ムに含まれる後続命令指定フイールドには、
STORE命令を表わす“0200”が入つており、比
較回路32も一致信号を出力する。読出しレジス
タ52内の現在実行中のMLT命令の第1のマイ
クロプログラムに含まれる起動指示フイールドに
は、STORE命令の第2のマイクロプログラムの
起動コマンドが入つており、これが制御回路6内
のデコーダ6aでデコードされ、2つの比較回路
24および32の出力とアンド回路6bで論理積
がとられ、STORE命令の真の第2のマイクロプ
ログラムの起動指示信号となる。
STORE命令の真の第2のマイクロプログラム
の起動指示信号が出力されると、制御メモリ51
のアドレスレジスタ42には後続のSTORE命令
の第1のマイクロプログラムの先頭アドレス
“0200”の最下位ビツトを反転した値“0201”が
セツトされ、“0201”番地から始めるSTORE命
令の第2のマイクロプログラムが起動される。こ
のSTORE命令の第2のマイクロプログラムによ
つて直前のMLT命令の演算結果が汎用レジスタ
G1に格納されるとともにメモリ8に格納され
る。
第3図に第2図aに示した命令語列を本実施例
の情報処理装置で実行したときのタイムチヤート
を示す。第1マシンサイクルでMLT命令を実行
する第1のマイクロプログラムの先頭アドレス
“0100”がアドレスレジスタ42に入り、MLT命
令の第1のマイクロプログラムが起動される。こ
の起動されたMLT命令の第1のマイクロプログ
ラムは、順次汎用レジスタG1およびG2からオ
ペランドを読み出して乗算処理を実行していく
が、処理の途中である第3マシンサイクルで後続
のSTORE命令の第2のマイクロプログラムの起
動指示を発行する。すると、第4マシンサイクル
で先頭アドレスが“0201”であるSTORE命令の
第2のマイクロプログラムが起動され、先行する
MLT命令の演算結果の結果レジスタ77への取
込みと汎用レジスタ9およびメモリ8への書込み
とが行われる。
参考として、第2図aに示した命令語列を本実
施例の情報処理装置を使わずにMLT命令と
STORE命令とを個別に実行したときのタイムチ
ヤートを第4図に示す。
第3図のタイムチヤートと第4図のタイムチヤ
ートとを比較すると明らかなように、本実施例の
情報処置装置における処理では先行するMLT命
令の演算結果をデステイネーシヨンに格納する処
理と後続のSTORE命令の処理とを一括処理する
分だけ処理時間が短くなつている。
なお、第1図に示した実施例の情報処理装置で
は、現在実行中の命令のデイステイネーシヨンと
後続命令の1つのソースとの比較しか行つていな
いが、通常の2つのオペランドを持つ演算命令で
はそのデイステイネーシヨンはソースでもあるの
で、命令関係検出回路2としては第5図に示すよ
うな回路がより好ましい。この命令関係検出回路
では、現在実行中の命令デイステイネーシヨンと
後続命令の2つのソース(一方はデイステイネー
シヨンバツフア21内にある)を2つの比較回路
241および242で比較し、それらの比較結果
により後続命令の第2のマイクロプログラムの先
頭アドレスを決定する。
〔発明の効果〕
以上説明したように本発明は、連続する命令に
ついて先行命令の演算結果をデステイネーシヨン
に格納する処理と後続命令の処理とが一括処理で
きるときにはこれらを後続命令の第2のマイクロ
プログラムによつて実行することにより、演算処
理の高速化を図ることができる効果がある。
【図面の簡単な説明】
第1図は本発明の一実施例のブロツク図、第2
図aは第1図に示した情報処置装置の動作を説明
のための命令語列を示す図、第2図bは第1図に
示した情報処理装置において第2図aに示した命
令語列を実行したときの各部の状態値を示す図、
第3図は第1図に示した情報処置装置の動作の一
例を示すタイムチヤート、第4図は従来の情報処
理装置の動作の一例を示すタイムチヤート、第5
図は第1図中に示した命令関係検出回路のより好
ましい一例を示す図である。 図において、1……先行制御回路、2……命令
関係検出回路、3……命令識別回路、4……制御
メモリアドレス制御回路、5……制御メモリ回
路、6……制御回路、7……演算回路、8……メ
モリ、9……汎用レジスタである。

Claims (1)

  1. 【特許請求の範囲】 1 各命令について、後続命令を指定する後続命
    令指定フイールドおよび高速命令の起動を指示す
    る起動指示フイールドを含み命令を処理する第1
    のマイクロプログラムと、先行命令の演算結果を
    デステイネーシヨンに格納する処理を後続命令の
    処理とを一括処理する第2のマイクロプログラム
    とを格納する制御メモリと、 実行中の命令のデステイネーシヨンと後続命令
    のソースとの一致を検出する命令関係検出回路
    と、 実行中の命令の第1のマイクロプログラムに含
    まれる後続命令指定フイールドの内容と後続命令
    の第1のマイクロプログラムの先頭アドレスとを
    比較して実行中の命令が指定する後続命令が実行
    中の命令の直後に続いていることを識別する命令
    識別回路と、 メモリ内の命令に応じて前記制御メモリから対
    応する第1のマイクロプログラムを読み出して実
    行し、前記命令識別回路が実行中の命令のデステ
    イネーシヨンと後続命令のソースとの一致を検出
    し、かつ前記命令関係検出回路が実行中の命令が
    指定する後続命令が実行中の命令の直後に続いて
    いることを識別したときに、実行中の命令の第1
    のマイクロプログラムの起動指定フイールドが後
    続命令の第2のマイクロプログラムの起動を指示
    していれば、実行中の命令の第1のマイクロプロ
    グラムの処理を中断して後続命令の第2のマイク
    ロプログラムを起動させる制御回路と、 を含むことを特徴とする情報処理装置。
JP13249686A 1986-06-06 1986-06-06 情報処理装置 Granted JPS62288940A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP13249686A JPS62288940A (ja) 1986-06-06 1986-06-06 情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP13249686A JPS62288940A (ja) 1986-06-06 1986-06-06 情報処理装置

Publications (2)

Publication Number Publication Date
JPS62288940A JPS62288940A (ja) 1987-12-15
JPH0559451B2 true JPH0559451B2 (ja) 1993-08-31

Family

ID=15082730

Family Applications (1)

Application Number Title Priority Date Filing Date
JP13249686A Granted JPS62288940A (ja) 1986-06-06 1986-06-06 情報処理装置

Country Status (1)

Country Link
JP (1) JPS62288940A (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5818754A (ja) * 1981-07-27 1983-02-03 インタ−ナシヨナル・ビジネス・マシ−ンズ・コ−ポレ−シヨン 命令処理ユニツト
JPS58149541A (ja) * 1982-03-01 1983-09-05 Hitachi Ltd デ−タ処理装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5818754A (ja) * 1981-07-27 1983-02-03 インタ−ナシヨナル・ビジネス・マシ−ンズ・コ−ポレ−シヨン 命令処理ユニツト
JPS58149541A (ja) * 1982-03-01 1983-09-05 Hitachi Ltd デ−タ処理装置

Also Published As

Publication number Publication date
JPS62288940A (ja) 1987-12-15

Similar Documents

Publication Publication Date Title
US4833640A (en) Register bank change including register to register transfer in a data processing system
US5757685A (en) Data processing system capable of processing long word data
JPS63261449A (ja) デ−タ処理装置
US4631672A (en) Arithmetic control apparatus for a pipeline processing system
JP2685245B2 (ja) プログラマブルコントローラ
US5390306A (en) Pipeline processing system and microprocessor using the system
JP2538053B2 (ja) 制御装置
JPH0560629B2 (ja)
JPH0559451B2 (ja)
JPS58200349A (ja) マイクロプログラム制御装置
JPH0377137A (ja) 情報処理装置
JPS61173345A (ja) 計算機システム
JPS62288939A (ja) 情報処理装置
JPS5829051A (ja) 演算処理装置
JPS5896346A (ja) 階層型演算方式
JPS61283930A (ja) 情報処理装置
JPS59223846A (ja) 演算処理装置
JPS63629A (ja) デ−タ処理方式
JPS6028014B2 (ja) マイクロプロセツサ
JPH02109128A (ja) コンピュータシステム
JPS61296435A (ja) マイクロプログラム制御方式
JPH04116726A (ja) 情報処理装置
JPH01197840A (ja) 情報処理装置
JPH0752416B2 (ja) マイクロコンピユ−タ・システム
JPS6116114B2 (ja)