JPS58205258A - デ−タ処理装置 - Google Patents
デ−タ処理装置Info
- Publication number
- JPS58205258A JPS58205258A JP8820382A JP8820382A JPS58205258A JP S58205258 A JPS58205258 A JP S58205258A JP 8820382 A JP8820382 A JP 8820382A JP 8820382 A JP8820382 A JP 8820382A JP S58205258 A JPS58205258 A JP S58205258A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- branch
- execution
- stored
- branch instruction
- 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
- 238000001514 detection method Methods 0.000 claims 3
- 238000010586 diagram Methods 0.000 description 4
- BYFGZMCJNACEKR-UHFFFAOYSA-N aluminium(i) oxide Chemical compound [Al]O[Al] BYFGZMCJNACEKR-UHFFFAOYSA-N 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
- 239000013256 coordination polymer Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000000034 method Methods 0.000 description 1
- 229920006395 saturated elastomer Polymers 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3802—Instruction prefetching
- G06F9/3804—Instruction prefetching for branches, e.g. hedging, branch folding
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
本発明は電子計算機;C用〜ハられるデータ処理装置に
関する。
関する。
一般に電子計算機の基本動作は、(1)命令の読み出し
サイクル、(2)命令の実行サイクル、の2つに分割す
ることができる。即ち、CPUに於いては命令カウンタ
の内容がアドレス情報として送出され、それに対応する
主記憶の番地から命令が読み出される、上記1に対応す
る読み出しサイクルと、命令レジスタに保持されている
命令が解釈され実行される、上記2に対応する実行サイ
クルがある。
サイクル、(2)命令の実行サイクル、の2つに分割す
ることができる。即ち、CPUに於いては命令カウンタ
の内容がアドレス情報として送出され、それに対応する
主記憶の番地から命令が読み出される、上記1に対応す
る読み出しサイクルと、命令レジスタに保持されている
命令が解釈され実行される、上記2に対応する実行サイ
クルがある。
電子計算機の制御方式に於いては、動作1と2のサイク
ルを交互に行なうのが処理機構としては最も簡単でv′
iあるが、両者を平行して行なう処理機構の方が全体の
命令処理時間は速くなる。このため読み出された命令を
一時蓄えるバッファをもうけ、実行に必要な命令は、こ
のバッファ、即ち命令キー−から命令レジスタに転送さ
れ、解釈実行される命令先取り機構が提案された。
ルを交互に行なうのが処理機構としては最も簡単でv′
iあるが、両者を平行して行なう処理機構の方が全体の
命令処理時間は速くなる。このため読み出された命令を
一時蓄えるバッファをもうけ、実行に必要な命令は、こ
のバッファ、即ち命令キー−から命令レジスタに転送さ
れ、解釈実行される命令先取り機構が提案された。
以下第1図を用いてこの従来方式の説明をしてゆく。
第1図は従来方式の命令先取り機構を有する電子計算機
のブロックダイヤグラムである。アドレスレジスタ(以
下ARと記す)10oは、データ転送に必要なアドレス
を保持するレジスタであり、データ転送サイクル中は同
一の値が保持されている。バス制御回路101は、CP
Uと外部装置間のデータ転送を制御する回路であり、先
取り信号PFE102が論理1である場合はAOUTl
12のタイミングで、AR1o○の内容を送出し、主
記憶から読み出された命令は、1/○インターフエース
103を経由して、l1N111のタイミングで命令キ
ュー104に取り込まれる。命令キー−104は、その
中に主記憶から読み出された命令が蓄えられる先入れ先
出し構造を持つリングバッファである。TOPレジスタ
106は、最も最近に命令キー−104に格納された命
令のキュー104内での位置を示し、BOTTOM レ
ジスタ106は、最も最近に命令キー−104から命令
レジスタ(以下IRと記す)1o7へ送出された命令の
キー−104内での位置をそれぞれ示すものである。T
OPレジスタ105は命令が命令キ□ ニー104に格納された場率、悴、BOTTOMレジス
タ106は命令が命令キー−104から送出さ往た場合
に、それぞれ更新される。両者のレジスタの差からキー
−内に蓄えられている命令の個数は計算できる。
のブロックダイヤグラムである。アドレスレジスタ(以
下ARと記す)10oは、データ転送に必要なアドレス
を保持するレジスタであり、データ転送サイクル中は同
一の値が保持されている。バス制御回路101は、CP
Uと外部装置間のデータ転送を制御する回路であり、先
取り信号PFE102が論理1である場合はAOUTl
12のタイミングで、AR1o○の内容を送出し、主
記憶から読み出された命令は、1/○インターフエース
103を経由して、l1N111のタイミングで命令キ
ュー104に取り込まれる。命令キー−104は、その
中に主記憶から読み出された命令が蓄えられる先入れ先
出し構造を持つリングバッファである。TOPレジスタ
106は、最も最近に命令キー−104に格納された命
令のキュー104内での位置を示し、BOTTOM レ
ジスタ106は、最も最近に命令キー−104から命令
レジスタ(以下IRと記す)1o7へ送出された命令の
キー−104内での位置をそれぞれ示すものである。T
OPレジスタ105は命令が命令キ□ ニー104に格納された場率、悴、BOTTOMレジス
タ106は命令が命令キー−104から送出さ往た場合
に、それぞれ更新される。両者のレジスタの差からキー
−内に蓄えられている命令の個数は計算できる。
キュー制御回路1o8v′i、TOPvジスタ105の
値BOTTC)Mレジスター06の値からバス制御回路
101に命令先取りを許可するか否かを示す信号PFE
102を生成する回路である。PFE102が論理1で
あると、バス制御回路101により、命令が先取りされ
て命令キュー104に格納される動作、即ち読み出しサ
イクルが繰り返される。
値BOTTC)Mレジスター06の値からバス制御回路
101に命令先取りを許可するか否かを示す信号PFE
102を生成する回路である。PFE102が論理1で
あると、バス制御回路101により、命令が先取りされ
て命令キュー104に格納される動作、即ち読み出しサ
イクルが繰り返される。
lR107は、命令キー−104から読み出された命令
を・保持するレジスタであり、命令の実行サイクル中に
は同一の値が保持されている。制御二二ノ)109は、
lR107に保持されている命令を解釈し、各種制御信
号を生成する回路である。PALUlloは、レジスタ
と演算器から構成され、制御ユニット109から生成さ
れた制御信、′−。
を・保持するレジスタであり、命令の実行サイクル中に
は同一の値が保持されている。制御二二ノ)109は、
lR107に保持されている命令を解釈し、各種制御信
号を生成する回路である。PALUlloは、レジスタ
と演算器から構成され、制御ユニット109から生成さ
れた制御信、′−。
号をもとに、lR107に保持されている命令に対応す
る動作を実行する処理ユニットである。
る動作を実行する処理ユニットである。
第1図の装置の命令読み出しサイクル、実行サイクルの
タイミングチャートを第2図に示す。図では、常に信号
PFE102が論理1で、即ち命令キー−が飽和状態に
なることなく、命令の先取りが実行されることを示して
いる。ARlooにn4地が格納されると命令読み出し
サイクルが実行され、主記憶のn番地の命令I(n)が
命令キュー104に格納される。読み出しサイクルが完
了すると、ARlooの値は(n+1)に更新され命令
読み出しサイクルが再実行される。実行サイクルでは、
命令キー−104からlR107に送出された命令が順
次、解釈実行されることが示されている。
タイミングチャートを第2図に示す。図では、常に信号
PFE102が論理1で、即ち命令キー−が飽和状態に
なることなく、命令の先取りが実行されることを示して
いる。ARlooにn4地が格納されると命令読み出し
サイクルが実行され、主記憶のn番地の命令I(n)が
命令キュー104に格納される。読み出しサイクルが完
了すると、ARlooの値は(n+1)に更新され命令
読み出しサイクルが再実行される。実行サイクルでは、
命令キー−104からlR107に送出された命令が順
次、解釈実行されることが示されている。
今、(n+1)番地の命令1(n + 1)が分岐命令
だとする。分岐命令の実行が開始されてから、分岐先ア
ドレスの算出に必要な時間τだけ経過した時刻に於いて
、バス転送回路が動作して命令工(n + 3)の読み
出しが実行中であるので、分岐先アドレスmがARlo
oに格納できず、I (n + 3 )の読み出し動作
が完了するまで、即ちη時間だけ実行サイクルが延び、
分岐命令の終了は遅れることになる。
だとする。分岐命令の実行が開始されてから、分岐先ア
ドレスの算出に必要な時間τだけ経過した時刻に於いて
、バス転送回路が動作して命令工(n + 3)の読み
出しが実行中であるので、分岐先アドレスmがARlo
oに格納できず、I (n + 3 )の読み出し動作
が完了するまで、即ちη時間だけ実行サイクルが延び、
分岐命令の終了は遅れることになる。
その後、Aftlooには分岐先アドンスmが格納され
命令r(m)の読み出しサイクルが実行されるが、その
動作完了時まで、即ち8時間、CPU(d待ち状態にな
り、その後1[mJは実行される。
命令r(m)の読み出しサイクルが実行されるが、その
動作完了時まで、即ち8時間、CPU(d待ち状態にな
り、その後1[mJは実行される。
分岐命令1(n + ’I)以降先取りされた命令1(
n + 2J。
n + 2J。
1(n+3)は、共にCPUには実行されない余分な命
令であり、これら余分な命令のためにバスの使用が行な
われることになる。
令であり、これら余分な命令のためにバスの使用が行な
われることになる。
このように従来での命令先取り制御では、1 分岐命令
実行で命令先読み状態であれば分岐命令の実行時間が延
びる。
実行で命令先読み状態であれば分岐命令の実行時間が延
びる。
2 分岐命令読み出し以後読み出された命令は決して実
行されず、余分なバス転送が行なわれる。
行されず、余分なバス転送が行なわれる。
という欠点がある。
本発明は以上のような欠点に鑑みてなされたもので、バ
ッファに分岐命令が格納された時刻から分岐命令の実行
が終了するまでの時刻を検出し、この期間にわたって命
令読み出しサイクルを停止することにより、分岐命令実
行の際に分岐命令の実行時間を延長させることなく、ま
た分岐命令読み出しの際に余分な命令のバス転送が行な
われることのないデータ処理装置を提供することを目的
とするものである。
ッファに分岐命令が格納された時刻から分岐命令の実行
が終了するまでの時刻を検出し、この期間にわたって命
令読み出しサイクルを停止することにより、分岐命令実
行の際に分岐命令の実行時間を延長させることなく、ま
た分岐命令読み出しの際に余分な命令のバス転送が行な
われることのないデータ処理装置を提供することを目的
とするものである。
以下に本発明の一実施例を図面を用いて説明する。
第3図は本発明の一実施例を示すCPUのブロックダイ
ヤグラムである。図中3o○〜312は、第1図100
〜112とそれぞれ同一の機能を有する。デコーダ31
3は命令キー−に格納される命令が分岐命令であること
を検出し、その場合は論理1を出力する回路である。フ
リップフロップ314は、デコーダ313の出力により
セットされ、制御ユニット309から出力されるFR8
T信号315によりリセットされる。即ち、このフリッ
プフロップ314の出力は命令キュー304に分岐命令
が格納された以後、その分岐命令の実行終了時まで、そ
の出力信号BRNCH31eを論理1にする回路である
。ゲート317ij、このBRNCH信号316とキュ
ー制御回路308の出力信号302を入力とし、バス制
御回路301に先取り許可信号P F E’318を出
力する。従来例とは違い、キーー利御回路308の出力
信号PFE302が論理1であっても、BRNC)(信
号316が論理1であれば、バス制御回路301は命令
読み出しを実行しない。
ヤグラムである。図中3o○〜312は、第1図100
〜112とそれぞれ同一の機能を有する。デコーダ31
3は命令キー−に格納される命令が分岐命令であること
を検出し、その場合は論理1を出力する回路である。フ
リップフロップ314は、デコーダ313の出力により
セットされ、制御ユニット309から出力されるFR8
T信号315によりリセットされる。即ち、このフリッ
プフロップ314の出力は命令キュー304に分岐命令
が格納された以後、その分岐命令の実行終了時まで、そ
の出力信号BRNCH31eを論理1にする回路である
。ゲート317ij、このBRNCH信号316とキュ
ー制御回路308の出力信号302を入力とし、バス制
御回路301に先取り許可信号P F E’318を出
力する。従来例とは違い、キーー利御回路308の出力
信号PFE302が論理1であっても、BRNC)(信
号316が論理1であれば、バス制御回路301は命令
読み出しを実行しない。
第4図は、本実施例<おける命令読み出しと命令実行の
タイミングチャートである。命令読み出しサイクルで、
(n+1)番地の分岐命令In + iが先取りされ命
令キー−304に格納されると、BRNCH信号316
が論理1になることにより、P F E’信号318は
論理0になり先取り動作は停止する。
タイミングチャートである。命令読み出しサイクルで、
(n+1)番地の分岐命令In + iが先取りされ命
令キー−304に格納されると、BRNCH信号316
が論理1になることにより、P F E’信号318は
論理0になり先取り動作は停止する。
n+1
実行サイクルに於いて分岐命令工 の実行が開始さ
れた後、分岐先アドレスの算出が終了するまでの時間で
の経過後に於いて、余分な命令を読み出す命令読み出し
サイクルは実行されておらず、従って、即座にAl2O
2に分岐先アドレスmが格納される。それと同時に、フ
リップフロップ314の出力信号BRNCH316は論
理0となり先読み動作は再実行される。従って、第1図
の従来の装置とは違い、ηだけの時間遅れを伴うことは
ない。
れた後、分岐先アドレスの算出が終了するまでの時間で
の経過後に於いて、余分な命令を読み出す命令読み出し
サイクルは実行されておらず、従って、即座にAl2O
2に分岐先アドレスmが格納される。それと同時に、フ
リップフロップ314の出力信号BRNCH316は論
理0となり先読み動作は再実行される。従って、第1図
の従来の装置とは違い、ηだけの時間遅れを伴うことは
ない。
以上説明したように本発明においては、1 分岐命令実
行に際し、バッファに分岐命令が格納された時刻から分
岐命令の実行終了まで命令読み出しサイクルを停止させ
るため、バス転送回路の動作中のために生じる時間遅れ
が存在せず、即座に分岐命令の実行が行なえる。
行に際し、バッファに分岐命令が格納された時刻から分
岐命令の実行終了まで命令読み出しサイクルを停止させ
るため、バス転送回路の動作中のために生じる時間遅れ
が存在せず、即座に分岐命令の実行が行なえる。
2 0PUの実行に必要のない余分な命令は先取りされ
ず、バスの使用効率が良く無駄な時間がない。
ず、バスの使用効率が良く無駄な時間がない。
という利点がある。
それゆえ、従来の命令先取り機構を有するマイクロプロ
セッサ−より分岐命令の効率よい処理が可能となり、か
つ外部バスのデータ転送が効率よく行なわれ、同一外部
バスを共有するマルチグロセノサーノステムにも適して
いる。
セッサ−より分岐命令の効率よい処理が可能となり、か
つ外部バスのデータ転送が効率よく行なわれ、同一外部
バスを共有するマルチグロセノサーノステムにも適して
いる。
特にビン数に制限のめるマイクロプロセッサ−に於いて
は、命令読み出し用とデータ入出力用の信号を同一端子
に割り当てることが通常であり、その場合、不必要な命
令転送のために端子が占有されデータ入出力の実行が遅
延させられる欠点も排除できる。
は、命令読み出し用とデータ入出力用の信号を同一端子
に割り当てることが通常であり、その場合、不必要な命
令転送のために端子が占有されデータ入出力の実行が遅
延させられる欠点も排除できる。
第1図は従来のデータ処理装置のブロックダイヤグラム
、第2図は従来の命令読み出しと実行を示すタイミング
チャート、第3図は本発明の一実施例を示すデータ処理
装置のブロックダイヤグラム、第4図は同実施列に於け
る命令読み出しと実行を示すタイミングチャートである
。 300−同一・・アドレスレジスタ、301・・−・B
U’S制御回路、302−・・・・先取り信号PFE、
303・・・入出力インターフェース、304・−・命
令キュー、305・・・・・TOPレジスタ、306−
・・BOTTOMレジスタ、3o7・・・・・命令レジ
スタ、30 B −同一キュー制御回路、309−−制
御5iJ UN i T 。 310・・・・・・RALU、311−・ ItN、5
12−−、、AOUT1313−デコーダ、314−−
−フリップ70ツブ、315・・FR8T信号、316
・・・BRNCH信号、317−・ ゲート、318・
・・先取り信号PFE’0
、第2図は従来の命令読み出しと実行を示すタイミング
チャート、第3図は本発明の一実施例を示すデータ処理
装置のブロックダイヤグラム、第4図は同実施列に於け
る命令読み出しと実行を示すタイミングチャートである
。 300−同一・・アドレスレジスタ、301・・−・B
U’S制御回路、302−・・・・先取り信号PFE、
303・・・入出力インターフェース、304・−・命
令キュー、305・・・・・TOPレジスタ、306−
・・BOTTOMレジスタ、3o7・・・・・命令レジ
スタ、30 B −同一キュー制御回路、309−−制
御5iJ UN i T 。 310・・・・・・RALU、311−・ ItN、5
12−−、、AOUT1313−デコーダ、314−−
−フリップ70ツブ、315・・FR8T信号、316
・・・BRNCH信号、317−・ ゲート、318・
・・先取り信号PFE’0
Claims (1)
- 余令レジスタに命令を供給するバッファと、前記バッフ
ァに格納すべき命令のアドレスを保持するアドレスレジ
スタと、記憶部から前記バッファへの命令の読み出しを
制御する側聞手段と、前記バッファに分岐命令が格納さ
れた時刻から前記分岐命令の実行が終了するまでの時刻
を検出する検出手段とを備え、前記検出手段の検出信号
により前記制御手段の制御動作を停止させることを特徴
とするデータ処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8820382A JPS58205258A (ja) | 1982-05-24 | 1982-05-24 | デ−タ処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8820382A JPS58205258A (ja) | 1982-05-24 | 1982-05-24 | デ−タ処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS58205258A true JPS58205258A (ja) | 1983-11-30 |
Family
ID=13936337
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP8820382A Pending JPS58205258A (ja) | 1982-05-24 | 1982-05-24 | デ−タ処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS58205258A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63197232A (ja) * | 1987-02-12 | 1988-08-16 | Toshiba Corp | マイクロプロセツサ |
JPH01263727A (ja) * | 1988-04-13 | 1989-10-20 | Mitsubishi Electric Corp | データ処理装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5136037A (ja) * | 1974-09-21 | 1976-03-26 | Hitachi Ltd | Memoriseigyohoshiki |
JPS55123739A (en) * | 1979-03-15 | 1980-09-24 | Fujitsu Ltd | Memory content prefetch control system |
-
1982
- 1982-05-24 JP JP8820382A patent/JPS58205258A/ja active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5136037A (ja) * | 1974-09-21 | 1976-03-26 | Hitachi Ltd | Memoriseigyohoshiki |
JPS55123739A (en) * | 1979-03-15 | 1980-09-24 | Fujitsu Ltd | Memory content prefetch control system |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63197232A (ja) * | 1987-02-12 | 1988-08-16 | Toshiba Corp | マイクロプロセツサ |
JPH01263727A (ja) * | 1988-04-13 | 1989-10-20 | Mitsubishi Electric Corp | データ処理装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4949241A (en) | Microcomputer system including a master processor and a slave processor synchronized by three control lines | |
JPH06139189A (ja) | 共有バス調停機構 | |
JPH0354375B2 (ja) | ||
JP2982875B2 (ja) | スレーブ制御装置 | |
US5659760A (en) | Microprocessor having interrupt vector generation unit and vector fetching command unit to initiate interrupt processing prior to returning interrupt acknowledge information | |
US5499348A (en) | Digital processor capable of concurrently executing external memory access and internal instructions | |
JPS62115542A (ja) | 情報処理装置 | |
JPS58205258A (ja) | デ−タ処理装置 | |
JP2005521937A (ja) | コンピュータオペレーティングシステムにおけるコンテキスト切り替え方法及び装置 | |
US6618790B1 (en) | Burst suspend and resume with computer memory | |
JP2762441B2 (ja) | コプロセッサ | |
JP2814683B2 (ja) | 命令処理装置 | |
JPH03158952A (ja) | Dmaコントローラおよび情報処理システム | |
JPH03257665A (ja) | 情報処理装置 | |
JP2002278753A (ja) | データ処理システム | |
SU1124316A1 (ru) | Микро-ЭВМ | |
JP2875546B2 (ja) | 情報処理システム | |
JPH0423041A (ja) | データ処理装置 | |
JPH0479022B2 (ja) | ||
JPS5942331B2 (ja) | プロセツサソウチノセイギヨホウシキ | |
JPH10187634A (ja) | 同期制御方法および主記憶共有型並列プロセッサ | |
JPS62151936A (ja) | マイクロプロセツサに内蔵されるキヤツシユ回路 | |
JPH04308930A (ja) | 電子計算機 | |
JPS6134167B2 (ja) | ||
JPS5814256A (ja) | マイクロプログラム診断方式 |