JPS6341932A - 分岐命令処理装置 - Google Patents

分岐命令処理装置

Info

Publication number
JPS6341932A
JPS6341932A JP61186429A JP18642986A JPS6341932A JP S6341932 A JPS6341932 A JP S6341932A JP 61186429 A JP61186429 A JP 61186429A JP 18642986 A JP18642986 A JP 18642986A JP S6341932 A JPS6341932 A JP S6341932A
Authority
JP
Japan
Prior art keywords
branch
instruction
register
output
address
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
JP61186429A
Other languages
English (en)
Inventor
Hideshi Ishii
石井 英志
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
Publication of JPS6341932A publication Critical patent/JPS6341932A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • G06F9/322Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address
    • G06F9/325Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address for loops, e.g. loop detection or loop counter
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3842Speculative instruction execution
    • G06F9/3846Speculative instruction execution using static prediction, e.g. branch taken strategy

Abstract

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

Description

【発明の詳細な説明】 産業上の利用分野 本発明はプログラムのループを制御するための計数分岐
命令を実行する分岐命令処理装置に関する。
従来の技術 科学技術計算などのプログラムでは、例えば、FORT
RANプログラムのDoルーズのように同一処理規定回
数だけ繰返すようi場合が非常に多い。
このような場合によく使われる分岐命令として計数分岐
命令(以下BCT命令と称す)がある。
BCT命令では、指定されたレジスタの内容が読出され
、”Illだけ減算されて再び元のレジスタに格納され
る。さらに、減算の結果が101となった場合には分岐
不成立、′O1以外の場合には分岐成立とみなされる。
このBCT命令はループされる命令群の最後に置かれ、
分岐先はその命令群の先頭の命令のアドレスとされる。
指定レジスタにループ回数がロードされ文あと、この命
令の先頭の命令から実行が開始され、この命令群は指定
回数だlLf実行される。
従来、このB CT 歯合を実行するには、(1)指定
されたレジスタからllt″を減算するステップ (2)減算結果をもとにして、分岐の成立または不取立
を判定するステップ の2つの処理ステップをシリアルに実行する必要がある
発明が解決しようとする問題点 従来の分岐命令処理装置は、この2つの処理を並行して
実行することができなかったため、(1)の減算処理が
不要な分岐命令に比較してBCT命令の実行時間が長く
なるという欠点があった。
この欠点を解決するために、1975年6月24日 日
立製作所から出願され1979年7月23日に公告され
た特公昭54−20385号公報に示される技術が提案
されている。この公報記載の技術によれば、上記ループ
回数を格納するレジスタ3に対応してその内容が‘1’
であるか否かの表示を行なう表示レジスタ8が設けられ
る。上記レジスタへのデータの古き込み時に書き込みデ
ータが11 ”であることを検出して上記表示レジスタ
8がセットされる。BCT命令の実行に先立って上記表
示レジスタ8の内容が読み出され、その内容によって分
岐の成立・不成立の判定が行われている。
この技術ではBCT命令の実行開始時に、上記表示レジ
スタの内容により直ちに分岐の成立・不成立を判定する
ことが可能なため、BCT命令の実行時間が高速になる
。しかし、たとえば、ループ回数を格納するレジスタが
16個の汎用レジスタである場合にはそれらに対応して
16個の表示レジスタを設ける必要があり、ハードウェ
ア量の増加を招くという欠点がある。
本発明の目的は上記の点に鑑み、BCT命令を高速で実
行できる分岐命令処理装會?提供すること(である。
問題点を解決するための手段 本発明の分岐命令処理装置は、プログラムのループ制御
を行うための計数分岐命令を実行する分岐命令処理装置
において、前記計数分岐命令のルーフ回数を格納する格
納手段と、この格納手段の出力から‘1’を減算する減
算手段と、この減算手段の出力を前記格納手段に書き込
むための制御平段と、前記格納手段の出力に接続され前
記格納手段の内容が‘1’であること全検出する検出手
段と、この検出手段の出力により分岐成立ま次は不成立
を判定する分岐判定手段とを有する。
実施例 次に本発明の一実施例を図面を参照しながら詳細に説明
する。
第1図を参照すると、本発明の一実施例は、プログラム
やデータを格納するためのメインメモリユニットl、こ
のメインメモリユニット1をアクセスするためのメモリ
アクセスユニット2.前記メインメモリユニット1から
前記メモリアクセスユニット2全介して与えられる命令
を解読しオペラランドの読出動作等全前記メモリアクセ
スユニ。
ト2に指示する先行制御ユニット3.前記メモリアクセ
スユニットからのオペランド読出指示に応答して前記メ
インメモリ1から読出されたオペランドをメモリアクセ
スユニット2を介して入力し、格納するオペランドバッ
ファ4,16個の汎用レジスタを含むレジスタファイル
で構成され命令のオペランドや演算結果を格納する汎用
レジスタ群5、これらオペランドバッファ4および汎用
レジスタ群5のどちらか一方からのオペランドマ念は演
算結果を選択するセレクタ6、前記オペランドバッファ
4.前記汎用レジスタ群5および定数発生回路8のうち
の一つからのオペランド、演算結果または定数を選択す
るセックタフ、前記セレクタ6からの選択結果を格納す
るオペランドレジスタ9.前記セレクタ7からの選択結
果を格納するオペランドレジスタ10.これらオペラン
ドレジスタ9および10からの値に基づいて指定され1
演:J1.を施す演算論理ユニット(ALU)11.こ
のALUIIからの演算結果を格納するりゲルトレジス
タ12.前記汎用レシタ群群5の中の選択された1つの
汎用レジスタの内容がl1l(2進数”OO・・・01
”)であることを検出するための検出回路13.この検
出回j!f!13での”1”の検出に応答してセットさ
れるフリップフロップ14゜前記先行制御ユニット3か
らの分岐命令用制御情幸に丁:格(+、するレジスタ2
2.このレジスタ22から信号線107を介して与えら
れる命令タイプおよび信号1108を介して与えられる
分岐タイミング信号に応答して、特に分岐タイプがBC
T命令を示す場合、フリップフロップ14からの値が1
1″であれば分岐不成立と判定し、値が10″であれば
分岐成立と判定する分岐判定回路15゜この分岐判定回
路15からの分岐成立判定に応答してセットされるアリ
ツブフロップ16.前記先行制御ユニットが分岐成立を
予測した場合に送らnてくる分岐先命令のアドレスを格
納するレジスタ17および18.現在実行中の命令のア
ドレスを保持する命令アドレスレジスタ20.この命令
アドレスレジスタ20の内容に”11′を加算する加算
回路21.および前記フリップフロップの出力に応答し
てレジスタ18の内容と加算回路21からの情報−と選
択するセレクタ19から構成されている。
次に本発明の動作を以下詳細に説明する。
計数分岐命令は以下のように読み出される。
第21會参照すると第1図の先行制御ユニット3から与
えられる計数分岐命令を読出すための仮想アドレスは仮
想アドレスレジスタ200に格納される。このレジスタ
200に格納され之アドレスの上位ビットは、必要であ
ればページング処理回路201で処理されるとともに、
T L B(Tran−slation Lookas
ide Buffer )アドレスアレイ202および
TLBデータアレイ203で仮想アドレスが央アドレス
に変換される。変換された実アドレスはセレクタ206
および209を介してキャッシュアドレスレジスタ21
1の上位ビットフィールドに格納される。このレジスタ
211の下位ビットフィールドには仮想アドレスレジス
タ200の下位ビットフィールドの内容が格納される。
このキャッシュアドレスレジスタ211iC格納さnた
アドレスが、キャッジ、アドレスアレイ214に格納さ
れていれはキャッジ、テータアレレ215に格納された
BCT命令が読み出されてセレクタ220を介して先行
制御ユニット3に与えられる。もし、キャッシュアドレ
スアレイ214に所望の実アドレスが格納されていなけ
れば、実アドレスはキャッシュアドレスレジスタ211
からストアバ、ファ207t−介して第1図のメインメ
モリユニット1に与えられる。この実アドレスに応答し
てメインメモリユニット1から読出されたBCT命令は
、メモリデータレジスタ208゜セレクタ212.キャ
ッシュ書込レジスタ213を介して一旦キャッシュデー
タアレイ215に格納される。格納されたBCT命令は
セレクタ220を介して先行制御ユニット3に与えられ
る。
次に、本実施例におけるパイプライン制御について詳細
に説明する。第3図を参照すると、各命令は、命令解読
ステージD、アドレス計算ステージA、TLBアクセス
(アドレス変換)ステージP、キャッジ、アクセスステ
ージC2汎用レジスタ5/オペランドバツンア4読出ス
テージT、命令実行ステージEおよび結果の書込みステ
ージWの7つのステージから構成されている。 この7
つのステージをX軸にとっ念第6図、第1図、第4図お
よび第5図を参照して本実施例の制御系の動作を詳細に
説明する。第4図および第6図を参照すると、メモリア
クセスユニット2から与えられれば計数分岐命令は線1
00および命令バッファ301を介して命令レジスタ3
02に格納される。
セレクタ311を介して与えられるBCT命令のアドレ
スフィールドの内容とインデックスレジスタファイル3
12の内容が実効アドレス加算器314において加算さ
れる。この加算器314からの加算結果、すなわち分岐
先命令の実効アドレスは実効アドレスレジスタ315に
格納される。
このレジスタ315の実効アドレスは実効アドレススタ
ックに格納される。
一方、命令レジスタ302のOPコードは命令デコーダ
303で解読され解読済命令レジスタ305にセットさ
nる。レジスタ305の解読結果は解読済命令スタック
306に格納される。以上の処理は先行制御ユニット3
で行なわれる。
第1図、第4図および第6図を参照すると、ステージT
では、汎用レジスタ群5から読出された36ビツトのデ
ータは、検出回路13で‘1’11か否か検出される。
ま念、実効アドレススタック307および解読済命令ス
タック306から線104および103に実効アドレス
および解読結果が読出される。
第1図および第8図を参照すると、データ系では汎用レ
ジスタ群5からオペランドが読出される。
ステージEでは、読出されたオペランドがオペランドレ
ジスタ9に格納されオペランドレジスタ10の内容‘1
’でALTJIIで減算される。
制御系でd、1103を介して与えられる解読結果がレ
ジスタ22に格納されるとともに線104を介して与え
られる実効アドレスがレジスタ1フ4に格納される。−
力、検出回路13での検出結果が‘1’であればフリッ
プフロップ14がセットされる。このフリップ20ツブ
14の出力、レジスタ22から線107を介して与えら
れる分岐命令タイプ、およびレジスタ22から5108
を介して分岐タイミング信号に基づいてBCT命令等の
分岐成立および分岐不成立が分岐判定回路15で判定さ
れる。この分岐判定動作を第5図を参照して以下詳細に
説明する。
第5図を参照すると、線107を介して与えられる分岐
命令タイプはデコーダ450で解読され、それぞれの分
岐命令ごとに異なる分岐条件が選択される。計算分岐命
令以外の分岐命令の分岐条件IRQ−IRnはインジケ
ータレジスタ(図示せず)に格納されている。BCT命
令の場合にはデコーダ450の出力のうち信号線458
が‘1’となりアリツブフロップ14の否定出力とアン
ドゲート454で論理積がとられる。この出力はオアゲ
ート455に介してアンドゲート456に与えられ!1
08を介して与えられる分岐タイミング信号と論理積が
とられ、分岐成立信号として線105および106に送
出される。すなわち、分岐命令がBCT命令の場合フリ
ップフロップ14の内容が101のときにはi!@10
5および106の分岐成立信号は‘1’となりアリツブ
フロップの内容が‘1’1のときKは[105および1
06の分岐成立信号はloとなる。
ステージWにおいて、実効アドレスはレジスタ17から
レジスタ18に格納される。[106から与えられる分
岐成立信号はアリツブフロップ16にセットされる。一
方、線105’i介して分岐成立信号は先行制御ユニッ
ト3に与えられ、第4図に示す命令バッファ制御回路3
00を起動して次の命令を命令バッファ301から命令
レジスタ302に格納する。フリップフロップ16の内
容が‘1’1すなわち分岐成立の場合には、レジスタ1
7およびレジスタ18と転送され之分岐先アドレスが選
択され、命令アドレスレジスタ2oにセットされる。一
方、アリツブフロップ16の出力がIoIすなわち分岐
不成立の場合ま念は分岐タイミングでない場合はセレク
タ19は加算回路21を選択するため命令カウンタ20
の内容はl′13だけ加算される。
次にBCT命令の実行性能の向上を一災l・面倒と、こ
れに相当する従来の分岐命令処理装置と比較して、以下
詳細に説明する。
第7図を参照すると、従来の分岐命令処理装置でのBC
T命令の実行は以下のようなデータ系の処理プロセスと
なる。すなわち、汎用レジスタ群5の中の1つの汎用レ
ジスタの内容がオペランドレジスタ9に読み出され第1
図のALTJIIにより‘1’が減算される。この減算
の結果がO1であれば、第1図のフリップ20ツブ14
に相当するアリ、プフロップがセットされる。その結果
から計数分岐命令の分岐の成立または不成立が判定され
る。
第8図を参照すると、本発明の一実施例ではステージT
で汎用レジスタ群5の中の1つの汎用レジスタの内容が
‘1’11か否か検出され、アリ、プフロップ14がセ
ットされる。このフリップフロップ14の値で分岐の成
立または不成立が判定される。この念め本実施例ではス
テージEt、で行なわれる。この結果分岐命令の実行性
能が向上する。
【図面の簡単な説明】
第1囚は本発明の一実施例を示す図、第2図は第1図の
メモリアクセスユニット2の詳細な構成を示す図; 第3図はパイプライン制御の各ステージ全説明するため
の図; 第4図は第1図の先行制御ユニット3の詳細i構成を示
す図; 第5図は第1図の検出回路13および分岐判定回路15
の詳細な構成を示す図、 第6図は一実施例の制御系の処理プロセスを示すタイム
チャート、第7図は従来技術のデータ系の処理プロセス
を示すタイムチャートンよび第8因は一実施例のデータ
系の処理プコセスを示すタイムチャートでぬる。 図において、1・・・・・・メインメモリユニ、ト、2
・・・・・・メモリアクセスユニット、3・・・・・・
先行制御ユニット、4・・・・・・オペランドバッファ
、5・・・・・・汎用レジスタ群、6.7・・・・・・
セレクタ、8・・・・・・定数発生回路、9.10・・
・・・・オペランドレジスタ、11・・・・・・ALU
l 12・・・・・・リザルトレジスタ、13・・・検
出回路、14,16・・・・・・フリ、プフロノプ、1
7.18.22・・・・・・レジスタ、19・・・・・
・セレクタ、20・・・・・・命令アドレスレジスフ1
.21・・・・・・加算回路 第3Σ DA   PC7T: XJv 箔汐ス  73先回謁 〆 招Z 図 JL用↓5スタ タ オペラシドレシスタ デ ソ“す′)レトレシヌタ /Z フ1ハノブフロヅブ 4 ジ”L’Fflbシスク 、3− オベランFL−シスタ / ツブ)レトレシ゛スタ fl フリリプフロ1.フプ/q 第7 図 T  E、  EどW 招3 図 TE、W み威刈定

Claims (1)

  1. 【特許請求の範囲】 プログラムのループ制御を行うための計数分岐命令を実
    行する分岐命令処理装置において、前記計数分岐命令の
    ループ回数を格納する格納手段と、 この格納手段の出力から‘1’を減算する減算手段と、 この減算手段の出力を前記格納手段に書き込むための制
    御手段と、 前記格納手段の出力に接続され前記格納手段の内容が‘
    1’であることを検出する検出手段と、この検出手段の
    出力により分岐成立または不成立を判定する分岐判定手
    段と、 を有することを特徴とする分岐命令処理装置。
JP61186429A 1985-08-22 1986-08-07 分岐命令処理装置 Pending JPS6341932A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP60-185328 1985-08-22
JP18532885 1985-08-22

Publications (1)

Publication Number Publication Date
JPS6341932A true JPS6341932A (ja) 1988-02-23

Family

ID=16168900

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61186429A Pending JPS6341932A (ja) 1985-08-22 1986-08-07 分岐命令処理装置

Country Status (3)

Country Link
US (1) US4882701A (ja)
JP (1) JPS6341932A (ja)
FR (1) FR2586490B1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998036351A1 (fr) * 1997-02-17 1998-08-20 Hitachi, Ltd. Processeur de donnees

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62180427A (ja) * 1986-02-03 1987-08-07 Nec Corp プログラム制御回路
US5101484A (en) * 1989-02-14 1992-03-31 Intel Corporation Method and apparatus for implementing an iterative program loop by comparing the loop decrement with the loop value
JPH0460720A (ja) * 1990-06-29 1992-02-26 Hitachi Ltd 条件分岐命令制御方式
US5313606A (en) * 1991-01-17 1994-05-17 Chips And Technologies, Inc. System for detecting boundary cross-over of instruction memory space using reduced number of address bits
US5303355A (en) * 1991-03-27 1994-04-12 Motorola, Inc. Pipelined data processor which conditionally executes a predetermined looping instruction in hardware
JPH07200292A (ja) * 1993-12-28 1995-08-04 Mitsubishi Electric Corp パイプライン式プロセッサ
US5404473A (en) * 1994-03-01 1995-04-04 Intel Corporation Apparatus and method for handling string operations in a pipelined processor
US5802346A (en) * 1995-06-02 1998-09-01 International Business Machines Corporation Method and system for minimizing the delay in executing branch-on-register instructions
US5909573A (en) * 1996-03-28 1999-06-01 Intel Corporation Method of branch prediction using loop counters
US5822602A (en) * 1996-07-23 1998-10-13 S3 Incorporated Pipelined processor for executing repeated string instructions by halting dispatch after comparision to pipeline capacity
US6975679B2 (en) 2001-06-01 2005-12-13 Microchip Technology Incorporated Configuration fuses for setting PWM options
US6937084B2 (en) 2001-06-01 2005-08-30 Microchip Technology Incorporated Processor with dual-deadtime pulse width modulation generator
US6604169B2 (en) 2001-06-01 2003-08-05 Microchip Technology Incorporated Modulo addressing based on absolute offset
US6976158B2 (en) 2001-06-01 2005-12-13 Microchip Technology Incorporated Repeat instruction with interrupt
US6952711B2 (en) 2001-06-01 2005-10-04 Microchip Technology Incorporated Maximally negative signed fractional number multiplication
US6552625B2 (en) 2001-06-01 2003-04-22 Microchip Technology Inc. Processor with pulse width modulation generator with fault input prioritization
US7020788B2 (en) 2001-06-01 2006-03-28 Microchip Technology Incorporated Reduced power option
US6601160B2 (en) 2001-06-01 2003-07-29 Microchip Technology Incorporated Dynamically reconfigurable data space
US20020184566A1 (en) 2001-06-01 2002-12-05 Michael Catherwood Register pointer trap
US7007172B2 (en) 2001-06-01 2006-02-28 Microchip Technology Incorporated Modified Harvard architecture processor having data memory space mapped to program memory space with erroneous execution protection
US6985986B2 (en) 2001-06-01 2006-01-10 Microchip Technology Incorporated Variable cycle interrupt disabling
US7003543B2 (en) 2001-06-01 2006-02-21 Microchip Technology Incorporated Sticky z bit
US6934728B2 (en) 2001-06-01 2005-08-23 Microchip Technology Incorporated Euclidean distance instructions
US6728856B2 (en) 2001-06-01 2004-04-27 Microchip Technology Incorporated Modified Harvard architecture processor having program memory space mapped to data memory space
US7467178B2 (en) 2001-06-01 2008-12-16 Microchip Technology Incorporated Dual mode arithmetic saturation processing
US20040021483A1 (en) * 2001-09-28 2004-02-05 Brian Boles Functional pathway configuration at a system/IC interface
US6552567B1 (en) 2001-09-28 2003-04-22 Microchip Technology Incorporated Functional pathway configuration at a system/IC interface
US7721075B2 (en) * 2006-01-23 2010-05-18 Mips Technologies, Inc. Conditional branch execution in a processor having a write-tie instruction and a data mover engine that associates register addresses with memory addresses
US7721073B2 (en) * 2006-01-23 2010-05-18 Mips Technologies, Inc. Conditional branch execution in a processor having a data mover engine that associates register addresses with memory addresses
US7721074B2 (en) * 2006-01-23 2010-05-18 Mips Technologies, Inc. Conditional branch execution in a processor having a read-tie instruction and a data mover engine that associates register addresses with memory addresses
US8464030B2 (en) * 2010-04-09 2013-06-11 International Business Machines Corporation Instruction cracking and issue shortening based on instruction base fields, index fields, operand fields, and various other instruction text bits
US8489865B1 (en) * 2010-04-15 2013-07-16 Lockheed Martin Corporation Device, system, and method for single thread command chaining instructions from multiple processor elements

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS522140A (en) * 1975-06-24 1977-01-08 Hitachi Ltd Information processing apparatus
JPS5420385A (en) * 1977-07-15 1979-02-15 Mitsubishi Electric Corp Time switch
JPS55146550A (en) * 1979-04-27 1980-11-14 Hitachi Ltd High speed branch controlling system
JPS5621239A (en) * 1979-07-27 1981-02-27 Fujitsu Ltd Processing system for branch instruction
JPS5734253A (en) * 1980-08-09 1982-02-24 Fujitsu Ltd Brunch instruction controlling circuit
JPS603750A (ja) * 1983-06-22 1985-01-10 Hitachi Ltd 計数分岐命令の制御方式
JPS60198640A (ja) * 1984-03-21 1985-10-08 Nec Corp パイプライン型情報処理装置

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3573854A (en) * 1968-12-04 1971-04-06 Texas Instruments Inc Look-ahead control for operation of program loops
US3593306A (en) * 1969-07-25 1971-07-13 Bell Telephone Labor Inc Apparatus for reducing memory fetches in program loops
BE789583A (fr) * 1971-10-01 1973-02-01 Sanders Associates Inc Appareil de controle de programme pour machine de traitement del'information
US4031521A (en) * 1971-10-15 1977-06-21 International Business Machines Corporation Multimode programmable machines
JPS549456B2 (ja) * 1972-07-05 1979-04-24
IT1000638B (it) * 1973-12-28 1976-04-10 Olivetti & Co Spa Calcolatore elettronico con dispo sitivo di deviazione dei micropro grammi
US4097920A (en) * 1976-12-13 1978-06-27 Rca Corporation Hardware control for repeating program loops in electronic computers
US4200927A (en) * 1978-01-03 1980-04-29 International Business Machines Corporation Multi-instruction stream branch processing mechanism
US4181942A (en) * 1978-03-31 1980-01-01 International Business Machines Corporation Program branching method and apparatus
JPS56129950A (en) * 1980-03-07 1981-10-12 Hitachi Ltd Information processor
JPS56149646A (en) * 1980-04-21 1981-11-19 Toshiba Corp Operation controller
US4370711A (en) * 1980-10-21 1983-01-25 Control Data Corporation Branch predictor using random access memory
US4430706A (en) * 1980-10-27 1984-02-07 Burroughs Corporation Branch prediction apparatus and method for a data processing system
US4462074A (en) * 1981-11-19 1984-07-24 Codex Corporation Do loop circuit
US4435756A (en) * 1981-12-03 1984-03-06 Burroughs Corporation Branch predicting computer
JPS58117050A (ja) * 1981-12-30 1983-07-12 Fujitsu Ltd デ−タシヨリソウチ
US4477872A (en) * 1982-01-15 1984-10-16 International Business Machines Corporation Decode history table for conditional branch instructions
US4463422A (en) * 1982-07-12 1984-07-31 Csp, Inc. Method of processing an iterative program loop
US4604691A (en) * 1982-09-07 1986-08-05 Nippon Electric Co., Ltd. Data processing system having branch instruction prefetching performance
JPS59146342A (ja) * 1983-02-09 1984-08-22 Nec Corp ル−プ制御方式
US4626988A (en) * 1983-03-07 1986-12-02 International Business Machines Corporation Instruction fetch look-aside buffer with loop mode control
JPS6043751A (ja) * 1983-08-18 1985-03-08 Hitachi Ltd 情報処理装置
US4764861A (en) * 1984-02-08 1988-08-16 Nec Corporation Instruction fpefetching device with prediction of a branch destination for each branch count instruction
US4727483A (en) * 1984-08-15 1988-02-23 Tektronix, Inc. Loop control system for digital processing apparatus
JPS61273637A (ja) * 1985-05-30 1986-12-03 Nec Corp 情報処理装置
CA1285657C (en) * 1986-01-29 1991-07-02 Douglas W. Clark Apparatus and method for execution of branch instructions

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS522140A (en) * 1975-06-24 1977-01-08 Hitachi Ltd Information processing apparatus
JPS5420385A (en) * 1977-07-15 1979-02-15 Mitsubishi Electric Corp Time switch
JPS55146550A (en) * 1979-04-27 1980-11-14 Hitachi Ltd High speed branch controlling system
JPS5621239A (en) * 1979-07-27 1981-02-27 Fujitsu Ltd Processing system for branch instruction
JPS5734253A (en) * 1980-08-09 1982-02-24 Fujitsu Ltd Brunch instruction controlling circuit
JPS603750A (ja) * 1983-06-22 1985-01-10 Hitachi Ltd 計数分岐命令の制御方式
JPS60198640A (ja) * 1984-03-21 1985-10-08 Nec Corp パイプライン型情報処理装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998036351A1 (fr) * 1997-02-17 1998-08-20 Hitachi, Ltd. Processeur de donnees
US6505295B1 (en) 1997-02-17 2003-01-07 Hitachi, Ltd. Data processor
US7080240B2 (en) 1997-02-17 2006-07-18 Hitachi, Ltd. Data processing apparatus

Also Published As

Publication number Publication date
US4882701A (en) 1989-11-21
FR2586490A1 (fr) 1987-02-27
FR2586490B1 (fr) 1993-11-05

Similar Documents

Publication Publication Date Title
JPS6341932A (ja) 分岐命令処理装置
US3728692A (en) Instruction selection in a two-program counter instruction unit
EP0551932B1 (en) Digital signal processor processing multi-point conditional branch operations in a pipeline mode
US3577189A (en) Apparatus and method in a digital computer for allowing improved program branching with branch anticipation reduction of the number of branches, and reduction of branch delays
US3764988A (en) Instruction processing device using advanced control system
EP0823085B1 (en) Method and apparatus for improved branch prediction accuracy in a superscaler microprocessor
US6233670B1 (en) Superscalar processor with direct result bypass between execution units having comparators in execution units for comparing operand and result addresses and activating result bypassing
EP0155211A2 (en) System for by-pass control in pipeline operation of computer
US4542456A (en) Method and apparatus for performing range checks
US4305124A (en) Pipelined computer
EP0093430B1 (en) Pipeline data processing system
CA2056356C (en) Interruption handling system
US4670836A (en) Device for detecting an overlap of operands to be accessed
US4631672A (en) Arithmetic control apparatus for a pipeline processing system
US5678016A (en) Processor and method for managing execution of an instruction which determine subsequent to dispatch if an instruction is subject to serialization
JPH0743648B2 (ja) 情報処理装置
EP0012242B1 (en) Digital data processor for word and character oriented processing
EP0061586A2 (en) Data processing apparatus with extended general purpose registers
EP0313817B1 (en) Method and apparatus for explicitly evaluating conditions in a data processor
JP2626675B2 (ja) データ誘起状態信号発生装置及び方法
JP2812610B2 (ja) パイプライン制御方式
EP0015276B1 (en) A digital pipelined computer
JPS6230455B2 (ja)
US6289439B1 (en) Method, device and microprocessor for performing an XOR clear without executing an XOR instruction
JP2511063B2 (ja) パイプライン制御方式