JPH0820947B2 - データ処理装置 - Google Patents

データ処理装置

Info

Publication number
JPH0820947B2
JPH0820947B2 JP63302902A JP30290288A JPH0820947B2 JP H0820947 B2 JPH0820947 B2 JP H0820947B2 JP 63302902 A JP63302902 A JP 63302902A JP 30290288 A JP30290288 A JP 30290288A JP H0820947 B2 JPH0820947 B2 JP H0820947B2
Authority
JP
Japan
Prior art keywords
data
flag
information
bus
operand
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 - Fee Related
Application number
JP63302902A
Other languages
English (en)
Other versions
JPH02148222A (ja
Inventor
信生 檜垣
浩三 木村
督三 清原
恒三 足立
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP63302902A priority Critical patent/JPH0820947B2/ja
Publication of JPH02148222A publication Critical patent/JPH02148222A/ja
Publication of JPH0820947B2 publication Critical patent/JPH0820947B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Description

【発明の詳細な説明】 産業上の利用分野 本発明はデータ処理装置に関するものである。
従来の技術 第3図は従来のデータ処理装置を示すものであり、10
1は演算を行う演算装置である。102は外部からデータを
取り込むバス制御装置である。103は演算装置101及びバ
ス制御装置102の出力データを転送する出力データ用バ
スである。104は出力データバス103上のデータを入力す
るレジスタファイルである。105は出力データバス103の
データを読み込みフラグ生成のためのデータに依存した
情報を生成するフラグ情報生成装置である。106はフラ
グ情報生成装置105で生成された情報と演算装置101の演
算実行で生成されるフラグ生成のための演算に依存した
情報からフラグを生成するフラグ生成制御装置である。
以上のように構成されたデータ処理装置について、以
下にその動作について説明する。まず外部メモリよりデ
ータをデータ処理装置内部の汎用レジスタに転送する命
令(以下ロード命令とする)の動作を説明する。バス制
御装置102が外部よりデータを取り込み出力データ用バ
ス103にデータを出力する。そして出力データ用バス103
上のデータをレジスタファイル104が読み込み汎用レジ
スタに書き込む。それと同時にフラグ情報生成装置105
が出力データ用バス103のデータよりフラグ生成のため
の情報を生成しフラグ生成制御装置106がフラグを生成
し命令の実行が終了する。次にデータを加算しレジスタ
に書き込む命令(以下加算命令とする)の動作を表す。
演算装置101が演算するデータを取り込み加算を行い出
力データ用バス103に加算結果を出力する。そして出力
データ用バス103上の加算結果をレジスタに書き込む。
この場合も上記のロード命令と同じようにフラグ情報生
成装置105が出力データ用バス103上の加算結果よりフラ
グ生成のためのデータに依存した情報を生成し、フラグ
生成制御装置106がその情報と、演算装置101の演算実行
で生成されるフラグ生成のための演算に依存した情報よ
りフラグを生成し命令の実行が終了する。
発明が解決しようとする課題 しかしながらこの構成においては命令、特に高機能命
令を高速に実行する。つまり、オペランドフェッチとデ
ータの格納のない比較命令を同時に実行しようとしても
オペランドフェッチしているときは出力データ用バス10
3上にオペランドフェッチしたデータがありフラグ情報
生成装置105はオペランドフェッチしたデータを読み込
みフラグ生成のための情報を生成し、フラグ生成制御装
置106はその情報によってフラグを生成するのでオペラ
ンドフェッチと比較命令を同時に実行できないという課
題を有していた。
本発明はかかる点に鑑み、若干のハードウェアの増加
で、フラグ反映の必要がないオペランドフェッチと演算
結果を書き込む必要がなくフラグ反映のみを行えばよい
演算を並列同時実行できるデータ処理装置を提供するこ
とを目的とする。
課題を解決するための手段 本発明は演算を行う1つまたは複数の演算装置と、前
記演算装置の出力データを転送する出力データ用バス
と、オペランドデータを転送するオペランドフェッチ用
バスと、前記出力データ用バスと前記オペランドフェッ
チ用バスを選択するデータ選択装置と、前記出力データ
用バスのデータを読み込みデータよりフラグ生成のため
のデータに依存した情報を生成する出力データ用フラグ
情報生成装置と、前記オペランドフェッチ用バスのデー
タを読み込みデータよりフラグ生成のためのデータに依
存した情報を生成するオペランドデータ用フラグ情報生
成装置と、前記出力データ用フラグ情報生成装置からの
出力と前記オペランドデータ用フラグ情報生成装置から
の出力を選択するフラグ情報選択装置と、前記フラグ情
報選択装置で選択されたフラグ生成のためのデータに依
存した情報と前記演算装置の演算実行で生成されるフラ
グ生成のために演算に依存した情報を入力し前記情報よ
りフラグを生成するフラグ生成制御装置を備えたデータ
処理装置である。
作用 本発明は前記した構成により、オペランドフェッチで
はデータ選択装置はオペランドフェッチ用バスを選択し
オペランドフェッチしてきたデータをレジスタファイル
内のレジスタに書き込むと同時に、フラグ情報選択装置
はオペランドデータ用フラグ情報生成装置を選択してフ
ラグを生成できる。また演算実行ではデータ選択装置は
出力データ用バスを選択し演算装置で実行した演算の結
果をレジスタファイル内のレジスタに書き込むと同時
に、フラグ情報選択装置は出力データ用フラグ情報生成
装置を選択してフラグを生成できる。そしてフラグへの
反映を行わないオペランドフェッチではデータ選択装置
はオペランドフェッチ用バスを選択しオペランドフェッ
チしたデータをレジスタファイル内のレジスタに書き込
むのと同時に、フラグ情報選択装置は出力データ用フラ
グ情報生成装置を選択して演算装置で実行した演算結果
を書き込む必要のない演算のフラグ反映のみを行うこと
ができる。従って、フラグ反映する必要のないオペラン
ドフェッチと演算結果を書き込む必要がなくフラグ反映
のみを行う演算を並列に実行することが可能であり、高
機能命令等の命令の実行サイクルが削減でき高速化でき
る。
実 施 例 第1図は本発明のデータ処理装置の構成図である。第
1図において1は演算を行う演算装置である。2は演算
装置1の出力データを転送する出力データ用バスであ
る。3は外部からのデータの取り込みを制御するバス制
御装置である。4はバス制御装置3データを転送するオ
ペランドフェッチ用バスである。5は出力データ用バス
2とオペランドフェッチ用バス4を選択するデータ選択
装置である。6はデータ選択装置5で選択されたデータ
を入力するレジスタファイルである。7は出力データ用
バス2のデータを読み込みそのデータよりフラグ生成の
ためのデータに依存した情報を生成する出力データ用フ
ラグ情報生成装置である。8はオペランドフェッチ用バ
ス4のデータを読み込みそのデータよりフラグ生成のた
めのデータに依存した情報を生成するオペランドデータ
用フラグ情報生成装置である。9は出力データ用フラグ
情報生成装置7からの出力とオペランドデータ用フラグ
情報生成装置8からの出力を選択するフラグ情報選択装
置である。10はフラグ情報選択装置9で選択されたフラ
グ生成のためのデータに依存した情報と演算装置1の演
算実行で生成されるフラグ生成のための演算に依存した
情報を入力しフラグを生成するフラグ生成制御装置であ
る。
以上のように構成された本実施例について、以下に動
作を説明する。ロード命令では、バス制御装置3が外部
よりデータを取り込みオペランドフェッチ用バス4にデ
ータを出力する。そしてデータ選択装置5がオペランド
フェッチ用バス4側を選択し、レジスタファイル6がデ
ータを読み込みレジスタに書き込む。それと同時にオペ
ランドデータ用フラグ情報生成装置8がオペランドフェ
ッチ用バス4上のデータを読み込みフラグ反映のための
データに依存する情報を生成する。そしてフラグ情報選
択装置9がオペランドデータ用フラグ情報生成装置8側
を選択しその情報よりフラグ生成制御装置10がフラグを
生成し命令の実行が終了する。加算命令では、演算装置
1がデータを取り込み加算を行い出力データ用バス2に
加算結果を出力する。そしてデータ選択装置5が出力デ
ータ用バス2側を選択し加算結果をレジスタファイル6
が読み込みレジスタに書き込む。これと同時に出力デー
タ用フラグ情報生成装置7が出力データ用バス2上のデ
ータを読み込みフラグ生成のためのデータに依存した情
報を生成する。そしてフラグ情報選択装置9が出力デー
タ用フラグ情報生成装置7側を選択しフラグ生成制御装
置10がそのデータに依存した情報と演算装置1内で生成
されるフラグ生成のための演算に依存した情報よりフラ
グを生成し命令の実行が終了する。
高機能命令は複数の基本命令に展開できるので1つの
高機能命令に複数のオペランドフェッチや演算実行が存
在する。また高機能命令の展開中に表れるオペランドフ
ェッチはフラグ反映を必要としない場合があり、演算実
行命令の中には比較命令のように演算結果の書き込みが
なく演算を行いフラグ反映のみを必要とするものがあ
る。従って、両者を同時実行する場合にはバス制御装置
3が外部よりデータを取り込みオペランドフェッチ用バ
ス4にデータを出力し、データ選択装置5がオペランド
フェッチ用バス4側を選択しレジスタファイル6がオペ
ランドフェッチしてきたデータを読み込みレジスタに書
き込む。それと同じサイクルで演算装置1がデータを取
り込み演算を行い出力データ用バス2に演算結果を出力
し、出力データ用フラグ情報生成装置7が出力データ用
バス2上のデータを読み込みフラグ生成のためのデータ
に依存した情報を生成する。そしてフラグ情報選択装置
9が出力データ用フラグ情報生成装置7側を選択しフラ
グ生成制御装置10がその演算結果に依存する情報と演算
装置1内で生成されるフラグ生成のための演算に依存し
た情報よりフラグを生成する。以上のように、高機能命
令等でフラグ反映を行わないオペランドフェッチと、演
算結果を書き込まずフラグ反映のみを行う演算実行があ
る場合にはその2つを同時に実行することができる。
以上のことより高機能命令などでは命令実行のサイク
ル数を減少することができ命令実行の高速化がはかれ
る。
例えば、R0の内容をスタートアドレスとするメモリ上
のデータ(src1)とR1の内容をスタートアドレスとする
メモリ上のデータ(src2)を1バイトずつ比較しsrc1と
src2が等しい限りアドレスを1バイトずつ増加して比較
を繰り返す命令(以下ストリングコンペア命令とする)
があるとする。但し、この繰り返しの比較の終了条件と
してsrc1とsrc2が等しくない場合、src1とR3の内容(終
了条件比較値)が等しい場合、R2の内容(比較するデー
タ数)が0になった場合の3つがありこの条件を満たせ
ば比較を終了するものとする。上記のストリングコンペ
ア命令を従来のデータ処理装置の構成で実行した場合の
マイクロコードの展開の説明図を第4図に示す。以下順
にサイクル毎に説明する。但し図中のマイクロコード展
開の1行が実行サイクルに相当するものとする。まず第
1サイクルで演算装置101でR2の内容より1を減じて出
力データ用バス103を介してレジスタファイル104内のR2
に書き込む。次に第2サイクルでR0の内容をアドレスと
するメモリ上のデータをバス制御装置102がフェッチしt
mp1(レジスタファイル104内のワークレジスタ)に書き
込む。次も同様にR1の内容をアドレスとするメモリ上の
データを制御装置102がフェッチしtmp2(レジスタファ
イル104内のワークレジスタ)に書き込む。第4サイク
ルで演算装置101でR0の内容を1増加させて出力データ
用バス103に出力しレジスタファイル104のR0に書き込
む。同様に第5サイクルでは演算装置101でR1の内容を
1増加させて出力データ用バス103を介してR1に書き込
む。第6、第7、第8サイクルでは演算装置101で減算
を行い出力データ用バス103に出力しフラグ情報生成装
置105がデータよりフラグ生成のためのデータに依存し
た情報を生成しフラグ生成制御装置106がそのデータに
依存した情報と演算装置101からのフラグ生成のための
演算に依存する情報よりフラグを生成することにより終
了条件のチェックを行っている。ここで終了条件が満た
せばlabel1に分岐して命令を終了し、満たさなければlo
opに分岐して比較を繰り返す。このようにストリングの
比較が続く場合マイクロコードはループして実行を行っ
ている。そのループ内の実行サイクルは9であるので命
令が終了するまでにn回ループしたとすると命令の実行
サイクルは9nとなる。
次に同じストリングコンペア命令を上記実施例の構成
で実行した場合のマイクロコード展開の説明図を第2図
に示す。まず第1サイクルでは演算装置1がR2の内容か
ら1を減じて出力データ用バス2に出力し、データ選択
装置5が出力データ用バス2側に選択されレジスタファ
イル6内のR2にデータが書き込まれる。第2サイクルで
はバス制御装置3が外部よりデータを取り込みオペラン
ドフェッチ用バス4に出力し、データ選択装置5はオペ
ランドフェッチ用バス4側を選択しレジスタファイル6
内のワークレジスタ(tmp1)に書き込む。それと同時に
演算装置1はR2と0の減算を行い結果を出力データ用バ
ス2に出力し、出力データ用フラグ情報生成装置7がデ
ータを読み込みフラグ生成のためのデータに依存した情
報を生成し、フラグ情報選択装置9が出力データ用フラ
グ情報生成装置7側を選択しこのデータに依存した情報
と演算装置1から出力されるフラグ生成のための演算に
依存した情報とからフラグ生成制御装置10がフラグを生
成し、これより終了条件をチェックする。同じように第
3サイクルではオペランドフェッチしてきたデータをデ
ータ選択装置5をオペランドフェッチ用バス4側に選択
することによりワークレジスタ(tmp2)に書き込む。そ
れと同じサイクルで演算装置1でtmp1の内容とR3の内容
を減算して出力データ用バス2に出力しフラグ情報選択
装置9を出力データ用フラグ情報生成装置7側にするこ
とにより演算結果よりフラグを生成し終了条件のチェッ
クを行っている。第4、第5サイクルでは第1サイクル
と同じように演算装置1で加算を行いデータ選択装置5
を出力データ用バス2側にしレジスタファイル6内のレ
ジスタに書き込む。第6サイクルでは終了条件をチェッ
クし終了条件を満たせば終了し、満たさなければloopに
分岐して比較を繰り返す。以上のように本実施例ではフ
ラグ反映を行わないオペランドフェッチと、レジスタに
書き込まずフラグ反映のみを行う演算実行を同時に実行
することができるので、従来の構成では1サイクルかけ
て行っていた終了条件のチェックをオペランドフェッチ
と同時に行うことができる。第2図の第2、第3サイク
ルがオペランドフェッチと終了条件のチェックを同時に
行っているサイクルである。これよりマイクロコード展
開のループ内のサイクル数は従来のものより2サイクル
減り命令の実行サイクルは7nとなる。従って、従来の構
成での命令実行より2nサイクル高速に実行でき、特に繰
り返し回数が多い場合にはその効果は大きい。
さらに、本発明では出力データ用バスに演算装置を複
数接続したとしても演算結果のデータに依存するフラグ
生成のための情報を生成する装置は出力データ用バスに
1つ接続するだけですみ、若干のハードウェアの増加だ
けで実現できるのでこの効果は大きい。
発明の効果 以上説明したように、本発明によれば、フラグ反映を
行わなければならない命令に対しては、オペランドフェ
ッチの場合、フラグ情報選択装置をオペランドフェッチ
用バスに選択し、演算実行の場合、フラグ情報選択装置
を出力データ用バスに選択することによりオペランドフ
ェッチや演算実行にともなってフラグ反映ができる。
又、高機能命令などで表れるフラグを反映する必要のな
いオペランドフェッチに対しては、フェッチしてきたデ
ータはデータ選択装置をオペランドフェッチ用バスに選
択することによりレジスタに書き込み、それと同時に演
算結果を書き込まない演算を演算装置で実行しフラグ情
報選択装置を出力データ用バスに選択することにより、
オペランドフェッチと同時に選択結果をフラグに反映す
ることができる。すなわち、フラグ反映を必要としない
オペランドフェッチと演算結果を書き込む必要のない演
算を並列に実行することが可能であり、命令の実行サイ
クルを減少することができ、命令の実行を高速化でき
る。特に、高機能命令のように繰り返し実行を行う命令
のループ内にオペランドフェッチがある場合には効果が
大きくなる。その上、本発明では出力データ用バスに演
算装置を複数接続したとしても演算結果のデータに依存
するフラグ生成のための情報を生成する装置は出力デー
タ用バスに1つ接続するだけですみ、若干のハードウェ
アの増加だけで実現できるのでその実用的効果は大き
い。
【図面の簡単な説明】
第1図は本発明の一実施例の構成を示すブロック図、第
2図は上記実施例で高機能命令を実行する場合のマイク
ロコードの展開の説明図、第3図は従来のデータ処理装
置を示す構成図、第4図は従来のデータ処理装置で高機
能命令を実行する場合のマイクロコードの展開の説明図
である。 1……演算装置、2……出力データ用バス、 3……バス制御装置、 4……オペランドフェッチ用バス、 5……データ選択装置、6……レジスタファイル、 7……出力データ用フラグ情報生成装置、 8……オペランドデータ用フラグ情報生成装置、 9……フラグ情報選択装置、 10……フラグ生成制御装置、 101……演算装置、102……バス制御装置、 103……出力データ用バス、 104……レジスタファイル、 105……フラグ情報生成装置、 106……フラグ生成制御装置。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 足立 恒三 大阪府門真市大字門真1006番地 松下電器 産業株式会社内 (56)参考文献 特開 昭61−100836(JP,A) 特開 昭58−60355(JP,A) 特開 平2−100134(JP,A)

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】演算を行う1つまたは複数の演算装置と、
    前記演算装置の出力データを転送する出力データ用バス
    と、オペランドデータを転送するオペランドフェッチ用
    バスと、前記出力データ用バスと前記オペランドフェッ
    チ用バスを選択するデータ選択装置と、前記データ選択
    装置で選択したデータを格納するレジスタファイルと、
    前記出力データ用バスのデータを読み込みデータよりフ
    ラグ生成のためのデータに依存した情報を生成する出力
    データ用フラグ情報生成装置と、前記オペランドフェッ
    チ用バスのデータを読み込みデータよりフラグ生成のた
    めのデータに依存した情報を生成するオペランドデータ
    用フラグ情報生成装置と、前記出力データ用フラグ情報
    生成装置からの出力と前記オペランドデータ用フラグ情
    報生成装置からの出力を選択するフラグ情報選択装置
    と、前記フラグ情報選択装置で選択されたフラグ生成の
    ためのデータに依存した情報と前記演算装置の演算実行
    で生成されるフラグ生成のための演算に依存した情報を
    入力し前記情報よりフラグを生成するフラグ生成制御装
    置を備え、オペランドフェッチの場合前記データ選択装
    置は前記オペランドフェッチ用バスを選択し前記フラグ
    情報選択装置は前記オペランドデータ用フラグ情報生成
    装置を選択してオペランドフェッチと同時にフラグを生
    成し、演算実行の場合前記データ選択装置は出力データ
    用バスを選択し前記フラグ情報選択装置は前記出力デー
    タ用フラグ情報生成装置を選択して演算実行と共にフラ
    グを生成し、フラグ反映を行わないオペランドフェッチ
    の場合前記データ選択装置はオペランドフェッチ用バス
    を選択し前記フラグ情報選択装置は前記出力データ用フ
    ラグ情報生成装置を選択してオペランドフェッチと演算
    のフラグ反映を同時に実行できることを特徴とするデー
    タ処理装置。
JP63302902A 1988-11-30 1988-11-30 データ処理装置 Expired - Fee Related JPH0820947B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63302902A JPH0820947B2 (ja) 1988-11-30 1988-11-30 データ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63302902A JPH0820947B2 (ja) 1988-11-30 1988-11-30 データ処理装置

Publications (2)

Publication Number Publication Date
JPH02148222A JPH02148222A (ja) 1990-06-07
JPH0820947B2 true JPH0820947B2 (ja) 1996-03-04

Family

ID=17914483

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63302902A Expired - Fee Related JPH0820947B2 (ja) 1988-11-30 1988-11-30 データ処理装置

Country Status (1)

Country Link
JP (1) JPH0820947B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4021590B2 (ja) * 1999-06-21 2007-12-12 東芝ソリューション株式会社 浮動小数点演算装置
JP5866697B2 (ja) * 2012-02-23 2016-02-17 株式会社エルイーテック 複数のコンディションフラグを有するcpu

Also Published As

Publication number Publication date
JPH02148222A (ja) 1990-06-07

Similar Documents

Publication Publication Date Title
JPH10232779A (ja) 命令並列処理方法及び装置
TW201823972A (zh) 向量產生指令
JP3834145B2 (ja) ネスト可能な遅延分岐命令を有するマイクロプロセッサを備えたデータ処理装置及びそのマイクロプロセッサを動作させる方法
US5390306A (en) Pipeline processing system and microprocessor using the system
JPH0820947B2 (ja) データ処理装置
JP2861560B2 (ja) データ処理装置
JP2885197B2 (ja) 演算処理装置及び演算処理方法
JP3278441B2 (ja) ベクトル処理装置
JP3124361B2 (ja) メモリデータロード装置
JP3441847B2 (ja) データメモリを有するプロセッサ
JPH04195629A (ja) 演算フラグ生成装置
JP2542120B2 (ja) 情報処理装置
JPH10105399A (ja) データ処理装置
JP3523407B2 (ja) 情報処理装置
JP2636566B2 (ja) パイプライン制御方式
JP3068406B2 (ja) ベクトル演算装置
JPH0228828A (ja) 最大値最小値検出回路
JPS6386033A (ja) パイプライン処理方式
JPS6373335A (ja) 情報処理装置
JPS6028014B2 (ja) マイクロプロセツサ
JPH01147723A (ja) 情報処理装置のパイプライン処理方式
JPH11143710A (ja) 処理対象値入力装置及びプログラム変換装置
JPH11203133A (ja) 情報処理装置
JP2005134987A (ja) パイプライン演算処理装置
JPS6243775A (ja) ベクトル演算装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees