JPH0328928A - Loopの制御方式 - Google Patents
Loopの制御方式Info
- Publication number
- JPH0328928A JPH0328928A JP16447389A JP16447389A JPH0328928A JP H0328928 A JPH0328928 A JP H0328928A JP 16447389 A JP16447389 A JP 16447389A JP 16447389 A JP16447389 A JP 16447389A JP H0328928 A JPH0328928 A JP H0328928A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- execution cycle
- execution
- conditions
- detected
- 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
Links
- 230000010365 information processing Effects 0.000 claims description 5
- 238000000034 method Methods 0.000 claims description 5
- 230000000873 masking effect Effects 0.000 claims description 3
- 101100412394 Drosophila melanogaster Reg-2 gene Proteins 0.000 abstract 2
- 238000010586 diagram Methods 0.000 description 6
- 101001044053 Mus musculus Lithostathine-1 Proteins 0.000 description 4
- 108700012361 REG2 Proteins 0.000 description 4
- 101150108637 REG2 gene Proteins 0.000 description 4
- 101100120298 Rattus norvegicus Flot1 gene Proteins 0.000 description 4
- 101100412403 Rattus norvegicus Reg3b gene Proteins 0.000 description 4
- 238000001514 detection method Methods 0.000 description 4
- 101100328521 Schizosaccharomyces pombe (strain 972 / ATCC 24843) cnt6 gene Proteins 0.000 description 3
- 238000007796 conventional method Methods 0.000 description 3
- 230000015556 catabolic process Effects 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 102100023882 Endoribonuclease ZC3H12A Human genes 0.000 description 1
- 101710112715 Endoribonuclease ZC3H12A Proteins 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- QGVYYLZOAMMKAH-UHFFFAOYSA-N pegnivacogin Chemical compound COCCOC(=O)NCCCCC(NC(=O)OCCOC)C(=O)NCCCCCCOP(=O)(O)O QGVYYLZOAMMKAH-UHFFFAOYSA-N 0.000 description 1
Landscapes
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は指定された条件を検出する迄同じ命令を繰り返
し実行するLOOP命令を行なう情報処理装置に関し、
特にその制御方式に関する.〔従来の技術〕 従来、この種の命令の制御を行なう情報処理装置は、検
出する条件及び実行内容並びに条件を検出した後に行な
われる命令のアドレスの指示を含む命令を、その条件が
検出される迄繰り返してフェッチして実行を行ない、そ
の条件を検出した時、その実行をキャンセルして次の命
令のフエッチを行なって実行する制御方式になっていた
.第3図は従来方式でのパイプライン動作の一例を示す
図であり、命令のFetch,Decode,Exec
uteの3段のパイプライン構造になっており、el
−e,サイクルはf!−f3サイクルによって同じ命令
が繰り返しFetchされた実行サイクルであり、e3
で条件の一致が検出された場合、f5+d4のサイクル
をCancell,て次の命令のFetch(fN)を
行ない、Decode及びExecuteが行なわれる
. 〔発明が解決しようとする課題〕 上述した従来の制御方式は、LOOPから抜け出す条件
を検出する迄同じ命令を繰り返しFetchして実行を
行ない、条件を検出した時に次の命令のFetchを行
ない実行する方式になっているので、制御を行なう情報
処理装置が複数段のパイプライン構戒になっていて、か
つ、条件の検出及び実行を行なうサイクルが複数段のパ
イプラインのうちの下段(後の段)にある場合、条件を
検出した実行サイクルと次の命令の実行サイクルとの間
に穴ができてしまい、性能低下につながり、実行サイク
ルが下段のパイプライン にある程、性能低下は大きく
なるという欠点がある. 第3図の例でも、2実行サイクル空いてしまうことがわ
かる. 〔課題を解決するための手段〕 本発明のLOOPの制御方式の楕戒は、命令により指定
された条件が一致する迄同じ命令を繰り返し実行し、そ
の条件を検出した時LOOPから抜け出してその命令の
実行へ移るというようなLoOPする命令を実行する情
報処理装置に於いて、検出する条件を保持するレジスタ
と、前記条件が一致する迄繰り返し行なわれる命令を保
持するレジスタであるカレント・インストラクション・
レジスタ(C.I.R.)及び前記条件が一致した後に
行なう命令を保持するレジスタであるネクスト・インス
トラクション・レジスタ(N.I.R.)と、次の実行
サイクルで前記条件が一致する事を検出する手段及び前
記条件が一致した時その実行サイクルを無効化するマス
ク手段及び次の実行サイクルで前記条件が一致する事が
検出される迄前記C.I.R.に保持されている命令を
実行サイクル毎に繰り返し実行し、前記条件が検出され
た後行なう命令の実行開始を延ばす手段を有し、命令に
より与えられた条件が1回もLOOPしないで一致した
場合、その実行サイクルを無効化して前記N.I.R.
にある次の命令を前記C.I.R.に格納してLOOP
を終了するか、あるいは、前記C.I.R.内の命令を
繰り返して連続的に実行し、その実行サイクルで条件が
一致する事を検出した時に前記N.I.R.にある次の
命令を前記C.I.R.に格納して・LOOPを終了す
ることを特徴とする. 〔実施例〕 次に、本発明について図面を参照して説明する. 第1図は本発明の一実施例のブロック図であり、1は条
件が一致する迄繰り返し行なわれる命令及び検出する条
件を保持するレジスタ(Cur−rent INS R
EG) 、2は条件が一致した後に行なう命令を保持す
るレジスタ(Next rNs REG) 、3は次の
実行サイクルで条件が一致する事を検出し、また現在の
実行サイクルで条件が一致する事を検出する条件検出手
段、4は保持されている命令を実行する命令実行手段、
5はLOOP回数を計数するLOOPカウンタ(Loo
p Counter) 6はNext INS R
EG2に保持されている命令の実行開始を延期するTi
ming制御回路(Timing CNT)である. Loop Counter5が4未満になる迄同じ命令
を繰り返し実行し、一回の実行につきLoop Cou
nter5を−4するという場合に、Current
INS REG 1よりLoop Counter5が
4未満という条件及びLoopCounter 5の値
が条件検出手段3に入力され、実行サイクルを無効化す
る為、4未満かを確認し、その結果を命令実行手段4に
出力する.又、次の実行サイクルで条件が一致するかを
検出する為、8未満かを確認し、その結果Timing
CNT6に出力する.そして、命令実行手段4はCu
rrent I N SREG 1より与えられた命令
を条件検出手段3より入力した結果が4未満でない場合
に実行し、同時にLoop Counter5の値を−
4する.このようにして、命令実行手段4はCurre
ntINS REG 1にある命令を毎T ( Clo
ck)実行し続ける.そして、Timing CNT6
は条件検出手段3より入力した結果が8未満となった時
、Next INS REG2内の命令をCurren
t INS REG 1に格納してLO○Pから抜け、
Next INS REG2内にあった次の命令が実行
される. 又、Loop Counter5の初期値が4未満であ
った場合、命令実行手段4はCurrent ISN
REG 1 .内の命令実行をマスクし無効化する.
そして、同時にTiming CNT6はNext I
NS REG2内の命令をCurrent INS R
EG 1に格納してLOOPが終了する. 第2図は本発明に於けるパイプライン動作の一例を示す
図であり、命令のFetch,Decode, Exe
cu−teの3段のパイプライン構造になっており、e
ll−e13サイクルは条件が不一致の為LOOPLで
いる実行サイクルであり、etsサイクルに於いて次の
実行サイクルで条件が一致する事を検出し、Next
INS REG2内の次の命令をCurrent IN
S REG1に格納してLOOPから抜ける。そして、
次のTで次の命令の実行eNサイクルが行なわれる。
し実行するLOOP命令を行なう情報処理装置に関し、
特にその制御方式に関する.〔従来の技術〕 従来、この種の命令の制御を行なう情報処理装置は、検
出する条件及び実行内容並びに条件を検出した後に行な
われる命令のアドレスの指示を含む命令を、その条件が
検出される迄繰り返してフェッチして実行を行ない、そ
の条件を検出した時、その実行をキャンセルして次の命
令のフエッチを行なって実行する制御方式になっていた
.第3図は従来方式でのパイプライン動作の一例を示す
図であり、命令のFetch,Decode,Exec
uteの3段のパイプライン構造になっており、el
−e,サイクルはf!−f3サイクルによって同じ命令
が繰り返しFetchされた実行サイクルであり、e3
で条件の一致が検出された場合、f5+d4のサイクル
をCancell,て次の命令のFetch(fN)を
行ない、Decode及びExecuteが行なわれる
. 〔発明が解決しようとする課題〕 上述した従来の制御方式は、LOOPから抜け出す条件
を検出する迄同じ命令を繰り返しFetchして実行を
行ない、条件を検出した時に次の命令のFetchを行
ない実行する方式になっているので、制御を行なう情報
処理装置が複数段のパイプライン構戒になっていて、か
つ、条件の検出及び実行を行なうサイクルが複数段のパ
イプラインのうちの下段(後の段)にある場合、条件を
検出した実行サイクルと次の命令の実行サイクルとの間
に穴ができてしまい、性能低下につながり、実行サイク
ルが下段のパイプライン にある程、性能低下は大きく
なるという欠点がある. 第3図の例でも、2実行サイクル空いてしまうことがわ
かる. 〔課題を解決するための手段〕 本発明のLOOPの制御方式の楕戒は、命令により指定
された条件が一致する迄同じ命令を繰り返し実行し、そ
の条件を検出した時LOOPから抜け出してその命令の
実行へ移るというようなLoOPする命令を実行する情
報処理装置に於いて、検出する条件を保持するレジスタ
と、前記条件が一致する迄繰り返し行なわれる命令を保
持するレジスタであるカレント・インストラクション・
レジスタ(C.I.R.)及び前記条件が一致した後に
行なう命令を保持するレジスタであるネクスト・インス
トラクション・レジスタ(N.I.R.)と、次の実行
サイクルで前記条件が一致する事を検出する手段及び前
記条件が一致した時その実行サイクルを無効化するマス
ク手段及び次の実行サイクルで前記条件が一致する事が
検出される迄前記C.I.R.に保持されている命令を
実行サイクル毎に繰り返し実行し、前記条件が検出され
た後行なう命令の実行開始を延ばす手段を有し、命令に
より与えられた条件が1回もLOOPしないで一致した
場合、その実行サイクルを無効化して前記N.I.R.
にある次の命令を前記C.I.R.に格納してLOOP
を終了するか、あるいは、前記C.I.R.内の命令を
繰り返して連続的に実行し、その実行サイクルで条件が
一致する事を検出した時に前記N.I.R.にある次の
命令を前記C.I.R.に格納して・LOOPを終了す
ることを特徴とする. 〔実施例〕 次に、本発明について図面を参照して説明する. 第1図は本発明の一実施例のブロック図であり、1は条
件が一致する迄繰り返し行なわれる命令及び検出する条
件を保持するレジスタ(Cur−rent INS R
EG) 、2は条件が一致した後に行なう命令を保持す
るレジスタ(Next rNs REG) 、3は次の
実行サイクルで条件が一致する事を検出し、また現在の
実行サイクルで条件が一致する事を検出する条件検出手
段、4は保持されている命令を実行する命令実行手段、
5はLOOP回数を計数するLOOPカウンタ(Loo
p Counter) 6はNext INS R
EG2に保持されている命令の実行開始を延期するTi
ming制御回路(Timing CNT)である. Loop Counter5が4未満になる迄同じ命令
を繰り返し実行し、一回の実行につきLoop Cou
nter5を−4するという場合に、Current
INS REG 1よりLoop Counter5が
4未満という条件及びLoopCounter 5の値
が条件検出手段3に入力され、実行サイクルを無効化す
る為、4未満かを確認し、その結果を命令実行手段4に
出力する.又、次の実行サイクルで条件が一致するかを
検出する為、8未満かを確認し、その結果Timing
CNT6に出力する.そして、命令実行手段4はCu
rrent I N SREG 1より与えられた命令
を条件検出手段3より入力した結果が4未満でない場合
に実行し、同時にLoop Counter5の値を−
4する.このようにして、命令実行手段4はCurre
ntINS REG 1にある命令を毎T ( Clo
ck)実行し続ける.そして、Timing CNT6
は条件検出手段3より入力した結果が8未満となった時
、Next INS REG2内の命令をCurren
t INS REG 1に格納してLO○Pから抜け、
Next INS REG2内にあった次の命令が実行
される. 又、Loop Counter5の初期値が4未満であ
った場合、命令実行手段4はCurrent ISN
REG 1 .内の命令実行をマスクし無効化する.
そして、同時にTiming CNT6はNext I
NS REG2内の命令をCurrent INS R
EG 1に格納してLOOPが終了する. 第2図は本発明に於けるパイプライン動作の一例を示す
図であり、命令のFetch,Decode, Exe
cu−teの3段のパイプライン構造になっており、e
ll−e13サイクルは条件が不一致の為LOOPLで
いる実行サイクルであり、etsサイクルに於いて次の
実行サイクルで条件が一致する事を検出し、Next
INS REG2内の次の命令をCurrent IN
S REG1に格納してLOOPから抜ける。そして、
次のTで次の命令の実行eNサイクルが行なわれる。
以上説明したように本発明は、指定された条件が検出さ
れる迄同じ命令を繰り返し実行し又、次の命令の実行開
始を延期することにより、条件を検出した実行サイクル
と次の命令の実行サイクルの間に穴があかず、連続して
実行できるという効果がある. 従来方法と本発明のバイブライン動作の例に於いて、2
T ( clock)の性能差がでる.
れる迄同じ命令を繰り返し実行し又、次の命令の実行開
始を延期することにより、条件を検出した実行サイクル
と次の命令の実行サイクルの間に穴があかず、連続して
実行できるという効果がある. 従来方法と本発明のバイブライン動作の例に於いて、2
T ( clock)の性能差がでる.
第1図は本発明の一実施例のブロック図、第2図は本実
施例のパイプライン動作例を示す図、第3図は従来方法
のパイプライン動作例を示す図である.
施例のパイプライン動作例を示す図、第3図は従来方法
のパイプライン動作例を示す図である.
Claims (1)
- 【特許請求の範囲】 命令により指定された条件が一致する迄同じ命令を繰り
返し実行し、その条件を検出した時LOOPから抜け出
してその命令の実行へ移るというようなLOOPする命
令を実行する情報処理装置に於いて、検出する条件を保
持するレジスタと、前記条件が一致する迄繰り返し行な
われる命令を保持するレジスタであるカレント・インス
トラクション・レジスタ(C.I.R.)及び前記条件
が一致した後に行なう命令を保持するレジスタであるネ
クスト・インストラクション・レジスタ(N.I.R.
)と、次の実行サイクルで前記条件が一致する事を検出
する手段及び前記条件が一致した時その実行サイクルを
無効化するマスク手段及び次の実行サイクルで前記条件
が一致する事が検出される迄前記C.I.R.に保持さ
れている命令を実行サイクル毎に繰り返し実行し、前記
条件が検出された後行なう命令の実行開始を延ばす手段
を有し、命令により与えられた条件が1回もLOOPし
ないで一致した場合、その実行サイクルを無効化して前
記N.I.R.にある次の命令を前記C.I.R.に格
納してLOOPを終了するか、あるいは、前記C.I.
R.内の命令を繰り返して連続的に実行し、その実行サ
イクルで条件が一致する事を検出した時に前記N.I.
R. にある次の命令を前記C.I.R.に格納してLOOP
を終了することを特徴とするLOOPの制御方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP16447389A JPH0328928A (ja) | 1989-06-26 | 1989-06-26 | Loopの制御方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP16447389A JPH0328928A (ja) | 1989-06-26 | 1989-06-26 | Loopの制御方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0328928A true JPH0328928A (ja) | 1991-02-07 |
Family
ID=15793848
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP16447389A Pending JPH0328928A (ja) | 1989-06-26 | 1989-06-26 | Loopの制御方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0328928A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06236271A (ja) * | 1993-01-08 | 1994-08-23 | Internatl Business Mach Corp <Ibm> | プロセッサおよび命令推測実行方法 |
-
1989
- 1989-06-26 JP JP16447389A patent/JPH0328928A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06236271A (ja) * | 1993-01-08 | 1994-08-23 | Internatl Business Mach Corp <Ibm> | プロセッサおよび命令推測実行方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69837791D1 (de) | VERFAHREN UND GERÄT FÜR EFFIZIENTE, SYNCHRONE MIMD-OPERATIONEN MIT iVLIW PE-ZU-PE KOMMUNIKATIONEN | |
US4903264A (en) | Method and apparatus for handling out of order exceptions in a pipelined data unit | |
US20080215864A1 (en) | Method and apparatus for instruction pointer storage element configuration in a simultaneous multithreaded processor | |
KR100316710B1 (ko) | 병렬 프로세서를 위한 무순서 명령어 발행 방법 및 장치 | |
JP2002342114A (ja) | トレースデータ採取可能なプロセッサ | |
EP1967950A2 (en) | Multiprocessor system for continuing program execution upon detection of abnormality | |
US5850551A (en) | Compiler and processor for processing loops at high speed | |
JPH0328928A (ja) | Loopの制御方式 | |
JP2765893B2 (ja) | ループ制御装置 | |
EP1177499B1 (en) | Processor and method of executing instructions from several instruction sources | |
JP2878792B2 (ja) | 電子計算機 | |
KR19990072645A (ko) | 프로그램제어유닛의명령페치장치및방법 | |
US6920547B2 (en) | Register adjustment based on adjustment values determined at multiple stages within a pipeline of a processor | |
JPS61289429A (ja) | 演算処理装置 | |
JP2843844B2 (ja) | 並列演算処理装置 | |
US7627795B2 (en) | Pipelined data processor with deterministic signature generation | |
JPH03292545A (ja) | プログラムループの検知回復装置 | |
JPH0877037A (ja) | ジャミング装置 | |
JPH01286034A (ja) | 情報処理装置 | |
JPH04195630A (ja) | データ処理装置 | |
JPH0328938A (ja) | マイクロコンピュータ装置 | |
JPH05224926A (ja) | 条件分岐命令制御方式 | |
JPH01220042A (ja) | 中央処理装置 | |
JPH0378832A (ja) | デ―タ処理装置 | |
JPH01258031A (ja) | データ処理装置 |