JP2933569B2 - 中央演算処理装置 - Google Patents

中央演算処理装置

Info

Publication number
JP2933569B2
JP2933569B2 JP15076797A JP15076797A JP2933569B2 JP 2933569 B2 JP2933569 B2 JP 2933569B2 JP 15076797 A JP15076797 A JP 15076797A JP 15076797 A JP15076797 A JP 15076797A JP 2933569 B2 JP2933569 B2 JP 2933569B2
Authority
JP
Japan
Prior art keywords
instruction
instructions
central processing
processing unit
register
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
JP15076797A
Other languages
English (en)
Other versions
JPH10340190A (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.)
NIPPON DENKI OFUISU SHISUTEMU KK
Original Assignee
NIPPON DENKI OFUISU SHISUTEMU KK
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 DENKI OFUISU SHISUTEMU KK filed Critical NIPPON DENKI OFUISU SHISUTEMU KK
Priority to JP15076797A priority Critical patent/JP2933569B2/ja
Publication of JPH10340190A publication Critical patent/JPH10340190A/ja
Application granted granted Critical
Publication of JP2933569B2 publication Critical patent/JP2933569B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、大型計算機からパ
ソコンや組込用のワンチップマイコンに至るまで、CP
Uの処理性能の向上が必要なすべての中央演算処理装置
に関する。
【0002】
【従来の技術】現在、中央演算処理装置自体の演算速度
は、年々速くなっているが、それに対して主記憶装置の
高速化がついていかず、そのため、命令の平均ビット長
と中央演算処理装置のビット幅及びバスサイクルの時間
により、計算機の実効速度が決まってしまう状況であ
り、それ以上の改善は、基本的にあきらめざるを得なか
った。
【0003】このような、主記憶装置と中央演算処理装
置のバスのボトルネック(上述のこと)解消の一手法と
して、特開昭58−222348号公報などに記載され
た技術がある。
【0004】例えば、特開昭58−222348号公報
記載の技術は、繰り返し処理を実行する際に、ロードG
R命令、各種命令、BCT(ブランチオンカウント)命
令の順に処理することが多いということに着目し、それ
らの命令を一度実行したときに、専用の高速命令バッフ
ァに取り込み、BCT命令により繰り返す際に、再度主
記憶装置から読み込まず、読み込み済みの高速命令バッ
ファから読み込み実行することにより、繰り返し処理に
おけるバスのボトルネック解消を図ったものである。
【0005】図6は、従来技術のBCT命令を含むルー
プのプログラム図である。
【0006】
【発明が解決しようとする課題】第1の問題点は、従来
技術の特開昭58−222348号公報の技術では、B
CT命令等に限定した高速化しか望めないことである。
【0007】その理由は、繰り返し処理に着目し、BC
T命令とそのアドレスの一致を高速命令バッファの使用
の可否の選択にあてたからである。
【0008】第2の問題点は、複数命令の同時実行が、
困難なため、現在、中央演算処理装置の高速化の一手法
であるスーパースカラ技術と組み合わせ使用すること
が、できないことである。
【0009】その理由は、命令バッファに順次読み出し
方式の記憶処理装置を使っているため、複数命令の同時
読み出しができないためである。
【0010】[発明の目的]本発明の目的は、従来の技
術での問題点である高速命令バッファの適用範囲を繰り
返し処理という拘束条件より、解き放ち、また、命令の
並列実行を可能とする手段を提供することにある。
【0011】また、CPUのメモリのバスネックを解消
することを目的とする。
【0012】
【課題を解決するための手段】本発明は、上述した課題
を解決するための手段として、以下の中央演算処理装置
を提供する。
【0013】すなわち、本発明は、IR命令(インスト
ラクション レジスタ内の命令)の登録の有無を判別す
るビットをもつ複数レジスタ2と、前記複数レジスタに
対応する番号を割り付ける命令を格納した記憶手段3
と、前記割り付けられた命令を同時に発行し、実施する
命令を実現する機能2,4,1,5,3と、を備えるこ
とを特徴とする中央演算処理装置を提供するものであ
る。
【0014】また、上記命令を実現する機能として、前
記IRレジスタ1とIRレジスタセット2をまたぐバス
4と、該命令を実行するためのマイクロプログラムを格
納した記憶手段3と、を備えることを特徴とする中央演
算処理装置でもある。
【0015】また更に、CPUの命令を登録する命令を
格納した記憶手段3と、該登録された命令の複数個を同
時発行して実行させる命令を追加したコマンドセットを
格納した記憶手段3と、前記命令を記憶するレジスタセ
ット2と、を有することを特徴とする中央演算処理装置
でもある。本発明の中央演算処理装置は、命令の記憶を
高速バッファではなく、命令記憶のための高速のレジス
タセット(図3)に替え、また、ソフトウェアが、意識
することなく勝手に中央演算処理装置が処理するのでは
なく、命令の登録と実行のための命令セット(図2)を
追加した。
【0016】さらに、登録と実行のための命令では、レ
ジスタセットの中の何番目の命令を処理するのかをオペ
ランドにて設定するよう配慮した。
【0017】[作用]このようにすることにより、再度
実行する命令は、登録命令により記憶させておき、必要
な時に実行することができるため、繰り返し処理にしか
適用できないという拘束条件から解かれる。
【0018】また、命令に際して、登録した命令を実行
する命令のオペコードに複数のレジスタ番号を割り当て
ることにより、登録された命令の再実行が可能となる。
【0019】また、CPUの命令を登録する命令と、登
録された命令の複数個を同時発行して実行させる命令を
追加したコマンドセットをもち、またその命令を記憶す
るレジスタセットをもつことにより、命令を登録後は、
その番号にて命令を指定できることより、例えば、番号
の指定に4bit必要であるとし、命令のオペコードに
16bit必要であるとしても、32bit幅の命令で
4命令の同時発行が可能となり、つまり従来より4倍も
高速化できる可能性があることになる。
【0020】以下、本発明の作用について、更に詳細に
説明する。
【0021】従来、CPUは、命令実行のため、メモリ
より一命令を読み込みデコードし実行をしていた。
【0022】そのため、CPU自体の実行速度が速くな
っても、CPUのバス幅と平均命令長及び転送サイクル
の3つが原因でCPUとメモリ間の転送がボトルネック
となり、十分な高速化ができなかった。本発明では、こ
のボトルネックを解決することを目的とする。
【0023】本発明では、命令を登録するレジスタIR
0〜15を持ち、各レジスタIRに割り付ける命令CS
(コマンドセット)と複数命令の同時発行を行う命令E
C(エグゼキュート コマンド)を備えることを特徴と
し、同時使用頻度の高い命令を一度に発行できることに
より、高速の転送効果が得られる。特に最内側のループ
での使用は効果がある。
【0024】このように、本発明によれば、16命令の
同時発行が可能なことより、最大16倍の高速化が期待
できる。
【0025】以下、更に、例を上げて説明する。 1.命令の登録方法 CS(コマンドセット) IRx、命令 にて、IRxに命令のデータが読み込まれ、登録され
る。 2.命令の実行 EC x,y,…z にて、IRx,IRy,…IRzに読み込まれている命
令を順に実行する。
【0026】CPUリセットにより各bitは、0とな
る。
【0027】
【実施例】以下、本発明の実施例を、図面を参照して、
説明する。
【0028】[第1の実施例] [構成の説明]図1は、本発明の中央演算処理装置の一
実施例のブロック図であり、命令を実現する機能とし
て、前記IRレジスタ1とIRレジスタセットをまたぐ
バス4と、命令を実行するためのマイクロプログラム3
と、を備えることを特徴とする中央演算処理装置であ
る。
【0029】マイクロプログラムROM3は、一般のマ
イクロプロセッサでも持っているが、本発明では、従来
の利用に加えて、「IRにCSやEC等の命令が来た時
に、その処理をする。」ことができることであり、具体
的には、CSの場合、IR1の前のゲートを開き、バス
4を通して、IRレジスタセット2に、更に、ゲートを
開いて書き込むことであり、ECの場合は、逆にIR1
に、IRレジスタセット2から、必要な命令をロードす
ることである。
【0030】図2は、本発明の一実施例の命令ビット構
成であり、図3は、本発明のIR(インストラクショ
ン)レジスタセットの構成図である。
【0031】図3のIRレジスタセットは、16個のレ
ジスタからなり、1つのレジスタは、登録の有無ビット
と命令記憶域よりなる構成をもち、命令記憶域は、中央
演算処理装置の最長命令ビット長と同じビット長をも
つ。
【0032】[動作の説明]次に、この中央演算処理装
置の動作を説明する。
【0033】CS(コマンドセット)命令により、登録
する番号と命令を指定し、IRレジスタセットの対応す
る番号の登録有無ビットを有効にし、命令記憶領域に、
CS命令にて指定した命令を書き込む。
【0034】その後、EC(エグゼキュート コマン
ド)命令によって実行する命令の登録番号をオペランド
の対応するビットにより、図2のように、Nx(x=
1..16)の値が、1の時、実行し、0の時、実行し
ないと定め、各命令を同時に複数命令の実行をかける。
【0035】中央演算処理装置は、そのオペランドを解
析して、実行する命令の登録番号を獲得し、若い登録番
号の命令より順に実行を開始する。
【0036】このようにして、複数命令の同時発行が、
32ビット幅の一命令で行うことができ、かつ、繰り返
し処理を前提としないため、様々な局面での中央演算処
理装置の高速化が可能となる。
【0037】[第2の実施例]次に、本発明の第2の実
施例について、図面を参照して説明する。
【0038】図4は、第2の実施例の命令ビット構成で
あり、図5は、第2の実施例のIRレジスタセットの構
成図である。
【0039】この実施例では、CS命令により、命令登
録する際、命令をデコードして、μOP(マイクロオペ
レーション)(図5)にし、その内容をも記憶するよう
に改良したことにより、命令実行時にデコードの作業を
行う必要がないため、その分だけ高速な実行処理が可能
となった。
【0040】また、EC命令も、各ビットに登録番号を
対応させる方式から、4ビットで登録番号を示す方式に
変更し、図4のNx(x=1..4)の値により、登録
番号を指定し、順番に実行する方式とした。
【0041】この方法により、同時に実行を開始できる
命令は、4分の1になったが、命令の実行順番は、再登
録しなくても変更可能になった。
【0042】
【発明の効果】第1の効果は、BCT命令のようなルー
プ命令に依存しない中央演算処理装置の高速化が可能な
ことである。
【0043】その理由は、命令を記憶するレジスタセッ
トを中央演算処理装置内に持つことにより、命令を登録
番号として指定するだけで、どれだけ長い命令でも実行
をかけられるからである。
【0044】第2の効果は、スーパースカラ技術との組
み合わせで使用できることである。
【0045】その理由は、スーパースカラでは、同時に
命令を発行できることと、かつ、パイプラインが乱れな
いような命令の投入が、必要であるが、両条件とも満足
できているからである。
【図面の簡単な説明】
【図1】中央演算処理装置のブロック図。
【図2】追加命令セットを示す図。
【図3】IRレジスタ構成図。
【図4】第2の実施例の追加命令セットを示す図。
【図5】第2の実施例のIRレジスタ構成図。
【図6】従来技術のBCT命令を含むループのプログラ
ム図。
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.6,DB名) G06F 9/38 G06F 9/28 G06F 9/30

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】 中央演算処理装置の内部において、IR命令の登録の有無を判別するビットをもつ複数レジ
    スタと、 前記複数レジスタに対応する番号を割り付ける命令を格
    納した記憶手段と、 前記割り付けられた命令を同時に発行し、実施する命令
    を実現する機能と、 を有することを特徴とした中央演算処理装置。
  2. 【請求項2】 上記命令を実現する機能として、前記I
    RレジスタとIRレジスタセットをまたぐバスと、該命
    令を実行するためのマイクロプログラムを格納した記憶
    手段と、を備えることを特徴とする請求項記載の中央
    演算処理装置。
  3. 【請求項3】 CPUの命令を登録する命令を格納した
    記憶手段と、該登録された命令の複数個を同時発行して
    実行させる命令を追加したコマンドセットを格納した記
    憶手段と、前記命令を記憶するレジスタセットと、を有
    することを特徴とする請求項又は記載の中央演算処
    理装置。
JP15076797A 1997-06-09 1997-06-09 中央演算処理装置 Expired - Lifetime JP2933569B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15076797A JP2933569B2 (ja) 1997-06-09 1997-06-09 中央演算処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15076797A JP2933569B2 (ja) 1997-06-09 1997-06-09 中央演算処理装置

Publications (2)

Publication Number Publication Date
JPH10340190A JPH10340190A (ja) 1998-12-22
JP2933569B2 true JP2933569B2 (ja) 1999-08-16

Family

ID=15503980

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15076797A Expired - Lifetime JP2933569B2 (ja) 1997-06-09 1997-06-09 中央演算処理装置

Country Status (1)

Country Link
JP (1) JP2933569B2 (ja)

Also Published As

Publication number Publication date
JPH10340190A (ja) 1998-12-22

Similar Documents

Publication Publication Date Title
US5860126A (en) Controlling shared memory access ordering in a multi-processing system using an acquire/release consistency model
US4493020A (en) Microprogrammed digital data processor employing microinstruction tasking and dynamic register allocation
JP4856646B2 (ja) 連続フロープロセッサパイプライン
JP3561915B2 (ja) スーパースカラ型プロセサにおいて命令処理を制御するためタグを割り当てるシステム及び方法
US4384324A (en) Microprogrammed digital data processing system employing tasking at a microinstruction level
US20120239907A1 (en) Active memory command engine and method
US4493019A (en) Pipelined microprogrammed digital data processor employing microinstruction tasking
US6338134B1 (en) Method and system in a superscalar data processing system for the efficient processing of an instruction by moving only pointers to data
US20060225060A1 (en) Code swapping in embedded DSP systems
JPH0916409A (ja) マイクロコンピュータ
JP2933569B2 (ja) 中央演算処理装置
JP2671160B2 (ja) 例外処理方式
JPS6032220B2 (ja) 情報処理装置
JP2562838B2 (ja) プロセッサ及びストアバッファ制御方法
JP7078380B2 (ja) 命令制御装置、命令制御方法およびプログラム
JP2906958B2 (ja) ユーザプログラムロード方式
JP2814683B2 (ja) 命令処理装置
JP2671161B2 (ja) レジスタ干渉チェック方式
JP2883488B2 (ja) 命令処理装置
JPH0769825B2 (ja) 並列処理装置
JP2883489B2 (ja) 命令処理装置
JP3814283B2 (ja) マイクロプロセッサ
JPS6229813B2 (ja)
JP2007128336A (ja) 並列レジスタアクセス装置及びシステムlsi
JPS60193046A (ja) 命令例外検出方式