JPS6240536A - ストア−ド・プログラム式デイジタル・コンピユ−タ - Google Patents
ストア−ド・プログラム式デイジタル・コンピユ−タInfo
- Publication number
- JPS6240536A JPS6240536A JP61059071A JP5907186A JPS6240536A JP S6240536 A JPS6240536 A JP S6240536A JP 61059071 A JP61059071 A JP 61059071A JP 5907186 A JP5907186 A JP 5907186A JP S6240536 A JPS6240536 A JP S6240536A
- Authority
- JP
- Japan
- Prior art keywords
- address
- signal
- memory
- instruction
- instruction word
- 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
- 230000015654 memory Effects 0.000 claims description 316
- 239000000872 buffer Substances 0.000 claims description 136
- 230000004044 response Effects 0.000 claims description 14
- 230000007246 mechanism Effects 0.000 claims description 3
- 238000012544 monitoring process Methods 0.000 claims 1
- 238000012545 processing Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 11
- 230000008859 change Effects 0.000 description 9
- 238000000034 method Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000012546 transfer Methods 0.000 description 4
- 230000003111 delayed effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- GVBNSPFBYXGREE-UHFFFAOYSA-N Visnadine Natural products C1=CC(=O)OC2=C1C=CC1=C2C(OC(C)=O)C(OC(=O)C(C)CC)C(C)(C)O1 GVBNSPFBYXGREE-UHFFFAOYSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000013213 extrapolation Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 235000013372 meat Nutrition 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012360 testing method Methods 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
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)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
[産業上の利用分野]
本発明はス]・アート・プログラム式ディジタル・コン
ピュータ・システムに関するものである。
ピュータ・システムに関するものである。
[従来の技術]
ストアード・プログラム式ディジタル・コンピュータ・
システムは、典型的にはデータ処理動作において用いら
れるインストラクション及びオペランドを記憶するアド
レス可能な中央メモリを備えている。このような形式の
中央メモリに対するアクセスには、中央メモリ・アドレ
スを符号化した信号を伝送するアドレス入力バスを用い
たプロトコルが採用されている。符号化されたアドレス
は、要求ラインに要求信号が送出されたときは、中央メ
モリに転送される。この要求信号によって、中央メモリ
はアドレスを受け取り、このアドレスにより指定された
ワードを出力として供給する。
システムは、典型的にはデータ処理動作において用いら
れるインストラクション及びオペランドを記憶するアド
レス可能な中央メモリを備えている。このような形式の
中央メモリに対するアクセスには、中央メモリ・アドレ
スを符号化した信号を伝送するアドレス入力バスを用い
たプロトコルが採用されている。符号化されたアドレス
は、要求ラインに要求信号が送出されたときは、中央メ
モリに転送される。この要求信号によって、中央メモリ
はアドレスを受け取り、このアドレスにより指定された
ワードを出力として供給する。
更に、メモリが応答できる速度よりもメモリ要求が速く
発生するような場合に対処できるようにするために、応
答があるまでは、又は応答している間は、要求信号を伴
う各アドレスを一時記憶することができるアドレス・キ
ュー又はパイプ・ライン回路を採用することも可能であ
る。
発生するような場合に対処できるようにするために、応
答があるまでは、又は応答している間は、要求信号を伴
う各アドレスを一時記憶することができるアドレス・キ
ュー又はパイプ・ライン回路を採用することも可能であ
る。
また、このようなディジタル・コンピュータはインスト
ラクション及びオペランドの両者を記憶できる高速度バ
ッファ即ちキャッシュを採用することが多い。特定のイ
ンストラクション又はオペランドを度々又は頻繁に参照
する場合、及び特定のものをそれぞれ参照する間におい
て他のインストラクション又はオペランドを参照する回
数が余り多くない場合は、2つの理由から総合的な処−
理速度を実質的に増大さじることができる。その第1の
ものでは、比較的に遅いメモリに対する参照回数を減少
させることが可能であり、その第2のものでは、コンピ
ュータの種々の部分にそれぞれのインストラクション及
びオペランドを速やかに供給することができる。
ラクション及びオペランドの両者を記憶できる高速度バ
ッファ即ちキャッシュを採用することが多い。特定のイ
ンストラクション又はオペランドを度々又は頻繁に参照
する場合、及び特定のものをそれぞれ参照する間におい
て他のインストラクション又はオペランドを参照する回
数が余り多くない場合は、2つの理由から総合的な処−
理速度を実質的に増大さじることができる。その第1の
ものでは、比較的に遅いメモリに対する参照回数を減少
させることが可能であり、その第2のものでは、コンピ
ュータの種々の部分にそれぞれのインストラクション及
びオペランドを速やかに供給することができる。
本発明の目的はインストラクションを保持させることを
意図したバッファ・メモリを主に動作させることにある
が、このようなオペランドを修飾することができないと
いう理論的な根拠が存在しているわけではない。
意図したバッファ・メモリを主に動作させることにある
が、このようなオペランドを修飾することができないと
いう理論的な根拠が存在しているわけではない。
中央メモリを用いてインストラクションを記憶し、これ
をインストラクション・ワード・バッファに転送する場
合は、中央メモリに供給される各インストラクション・
ワード・バッファのアドレスにより転送すると都合がよ
い。このインストラクション・ワード・バッファのアド
レスは読み出したインストラクション・ワードを記憶す
べきインストラクション・ワードの記憶位置を指定する
ものである。これらの中央メモリ・アドレス−がそれぞ
れアドレス・キュー即ちパイプラインに沿つ。
をインストラクション・ワード・バッファに転送する場
合は、中央メモリに供給される各インストラクション・
ワード・バッファのアドレスにより転送すると都合がよ
い。このインストラクション・ワード・バッファのアド
レスは読み出したインストラクション・ワードを記憶す
べきインストラクション・ワードの記憶位置を指定する
ものである。これらの中央メモリ・アドレス−がそれぞ
れアドレス・キュー即ちパイプラインに沿つ。
でシフトされると、これによりインストラクション・ワ
ード・バッファのアドレスをシフトさせてインストラク
ション・ワードを読み出し、インストラクション・ワー
ド・バッファの位置を識別して当該のインストラクショ
ン・ワードを記憶させる。
ード・バッファのアドレスをシフトさせてインストラク
ション・ワードを読み出し、インストラクション・ワー
ド・バッファの位置を識別して当該のインストラクショ
ン・ワードを記憶させる。
更に、このようなコンピュータにおいては、インストラ
クション・ワード・バッファからインストラクション・
プロセッサに個々のインストラクション・ワードを供給
して実行すると都合がよい。
クション・ワード・バッファからインストラクション・
プロセッサに個々のインストラクション・ワードを供給
して実行すると都合がよい。
インストラクションの実行を連続的に行なうために、各
インストラクション・ワードはいずれにしろ実行すべき
次のインストラクション・ワードの中央メモリ・アドレ
スを指定する。バッファ・アドレス制御は指定されたこ
のような中央メモリ・アドレスを受け取り、中央メモリ
・アドレスが割り付けられていないときは、中央メモリ
・アドレスにインストラクション・ワードパバツファ・
アドレスを割り付け、又は次のインストラクション・ワ
ード・バッファのアドレス用にインストラクション・ワ
ード・バッファのアドレスが既に中央メモリ・アドレス
に対して割り付けられているときは、このインストラク
ション・ワード・バッファのアドレス割り付けを決定す
る。最襖に、インストラクション・ワード・バッファが
満杯であり、バッファ・アドレスに対して前に中央メモ
リ・アドレスを割り付けていないときは、バッファ・ア
ドレス制御は現在中央メモリアドレスに割り付けられて
いるインストラクション・ワード・バッファのアドレス
を選択し、割り付けを新しい中央メモリ・アドレスへ変
更する。
インストラクション・ワードはいずれにしろ実行すべき
次のインストラクション・ワードの中央メモリ・アドレ
スを指定する。バッファ・アドレス制御は指定されたこ
のような中央メモリ・アドレスを受け取り、中央メモリ
・アドレスが割り付けられていないときは、中央メモリ
・アドレスにインストラクション・ワードパバツファ・
アドレスを割り付け、又は次のインストラクション・ワ
ード・バッファのアドレス用にインストラクション・ワ
ード・バッファのアドレスが既に中央メモリ・アドレス
に対して割り付けられているときは、このインストラク
ション・ワード・バッファのアドレス割り付けを決定す
る。最襖に、インストラクション・ワード・バッファが
満杯であり、バッファ・アドレスに対して前に中央メモ
リ・アドレスを割り付けていないときは、バッファ・ア
ドレス制御は現在中央メモリアドレスに割り付けられて
いるインストラクション・ワード・バッファのアドレス
を選択し、割り付けを新しい中央メモリ・アドレスへ変
更する。
インストラクション・ワード・バッファに繰り返して実
行される完全なインストラクション・ループが含まれて
いるときは、現在実行しているインストラクション・ワ
ードのために中央メモリを参照する必要がないので、第
1回目の後は処理を迅速に進めることができる。この期
間に現在実行しているインストラクションの後に実行さ
れると予想されるインストラクションが中央メモリから
要求されるならば、処理速度を更に高めることができる
。このようなルックアヘッド装Cはこの種のコンピュー
タには普通のことである。このようなコンピュータで実
行されるプログラムが正しく設計されているならば、大
抵のインストラクションのアドレスを実際に指定する前
に、ルックアヘッド装置にこれらのアドレスを予めフェ
ッチしているので、これらを実行する際に中央メモリか
ら要求されるインストラクションをほとんど待つことが
ないようにすることが可能である。
行される完全なインストラクション・ループが含まれて
いるときは、現在実行しているインストラクション・ワ
ードのために中央メモリを参照する必要がないので、第
1回目の後は処理を迅速に進めることができる。この期
間に現在実行しているインストラクションの後に実行さ
れると予想されるインストラクションが中央メモリから
要求されるならば、処理速度を更に高めることができる
。このようなルックアヘッド装Cはこの種のコンピュー
タには普通のことである。このようなコンピュータで実
行されるプログラムが正しく設計されているならば、大
抵のインストラクションのアドレスを実際に指定する前
に、ルックアヘッド装置にこれらのアドレスを予めフェ
ッチしているので、これらを実行する際に中央メモリか
ら要求されるインストラクションをほとんど待つことが
ないようにすることが可能である。
この他、これらの説明及び関連した考察は、次の文献、
即ち米国特許第3.928.857号、第4,110.
822号、第3.573,854号、第3.736.5
76号及び第3.699゜535号に示されている。特
に、第3.928゜857号は以下に説明する本発明に
最も近い技術と思われる。
即ち米国特許第3.928.857号、第4,110.
822号、第3.573,854号、第3.736.5
76号及び第3.699゜535号に示されている。特
に、第3.928゜857号は以下に説明する本発明に
最も近い技術と思われる。
[発明の概要]
特定の中央メモリ・アドレスに第1の参照が読み出し要
求を発生し、この第1の読み出し要求に応答する前に第
2の参照が続いたときは、中央メモリからインストラク
ション・ワードを要求する効率を低下させる問題が発生
する。このようなことは前述のルックアヘッドを備えた
コンピュータに発生することがあり、この場合には、前
述のルックアヘッド装置がインタラブドされたときに、
現在実行中のインストラクション・ワードよりも更に先
にインストラクション・シーケンスを進めている個々の
インストラクション・ワードが中央メモリから再要求さ
れる恐れがある。また、このようなことは、共有バッフ
ァ・メモリの同一のインストラクションを各プロセッサ
が実行する恐れのある多重プロセッサ構成のときにも発
生し得る。
求を発生し、この第1の読み出し要求に応答する前に第
2の参照が続いたときは、中央メモリからインストラク
ション・ワードを要求する効率を低下させる問題が発生
する。このようなことは前述のルックアヘッドを備えた
コンピュータに発生することがあり、この場合には、前
述のルックアヘッド装置がインタラブドされたときに、
現在実行中のインストラクション・ワードよりも更に先
にインストラクション・シーケンスを進めている個々の
インストラクション・ワードが中央メモリから再要求さ
れる恐れがある。また、このようなことは、共有バッフ
ァ・メモリの同一のインストラクションを各プロセッサ
が実行する恐れのある多重プロセッサ構成のときにも発
生し得る。
場合によってはこのようなことが度々発生して、中央メ
モリの応答をかなり遅延させ、従ってインストラクショ
ンの実行を遅延させるので、−・つの中央メモリ・アド
レスに対し、前述のような第2以下の参照により更に要
求を発生させるのを防止すると都合がよい。本発明は、
中央メモリ・アドレスに割り付けられ、中央メモリに対
する各要求を決定するインストラクション・ワード・バ
ッファ・アドレスを用いることにより、このような多重
要求を防止する機構に関するものである。複数のメモリ
位置を有する書き込み有効メモリが設けられ、各メモリ
位置はステータス・ワードを記憶すると共に、インスト
ラクション・ワード・バッファのアドレスに関係付けら
れる。両メモリは例えば同一のアドレス値により関連付
けた同一のアドレス・セットを用いる。中央メモリに要
求を送出して特定のインストラクション・ワード・バッ
ファ・アドレスを読み出したり、設定するときは、書き
込み有効メモリに関連するアドレス位置を第2の値に設
定する。バッファ・アドレス割り付け手段が中央メモリ
・アドレスの割り付けをインストラクション・ワード・
バッファ・アドレスに変更する度に、書き込み有効メモ
リ内に対応するステータス・ワードは第1の値に設定さ
れる。中央メモリ・アドレスをアドレス・キュー即ちパ
イプラインに送出したときは、この第1の値は再び第2
の値に変更される。
モリの応答をかなり遅延させ、従ってインストラクショ
ンの実行を遅延させるので、−・つの中央メモリ・アド
レスに対し、前述のような第2以下の参照により更に要
求を発生させるのを防止すると都合がよい。本発明は、
中央メモリ・アドレスに割り付けられ、中央メモリに対
する各要求を決定するインストラクション・ワード・バ
ッファ・アドレスを用いることにより、このような多重
要求を防止する機構に関するものである。複数のメモリ
位置を有する書き込み有効メモリが設けられ、各メモリ
位置はステータス・ワードを記憶すると共に、インスト
ラクション・ワード・バッファのアドレスに関係付けら
れる。両メモリは例えば同一のアドレス値により関連付
けた同一のアドレス・セットを用いる。中央メモリに要
求を送出して特定のインストラクション・ワード・バッ
ファ・アドレスを読み出したり、設定するときは、書き
込み有効メモリに関連するアドレス位置を第2の値に設
定する。バッファ・アドレス割り付け手段が中央メモリ
・アドレスの割り付けをインストラクション・ワード・
バッファ・アドレスに変更する度に、書き込み有効メモ
リ内に対応するステータス・ワードは第1の値に設定さ
れる。中央メモリ・アドレスをアドレス・キュー即ちパ
イプラインに送出したときは、この第1の値は再び第2
の値に変更される。
次に、当該の中央メモリ・アドレスを参照すると、バッ
ファ・アドレス割り付け手段は前に行なった当該中央メ
モリ・アドレスのインストラクション・ワード・バッフ
ァ・アドレスの割り付けを検出する。書き込み有効メモ
リの番地に関連するインストラクション・ワード・バッ
ファ・アドレスは、書き込み有効メモリを読み出し、ス
テータス・ワードを供給して中央メモリに対する要求を
ディセーブルするのに用いられる。
ファ・アドレス割り付け手段は前に行なった当該中央メ
モリ・アドレスのインストラクション・ワード・バッフ
ァ・アドレスの割り付けを検出する。書き込み有効メモ
リの番地に関連するインストラクション・ワード・バッ
ファ・アドレスは、書き込み有効メモリを読み出し、ス
テータス・ワードを供給して中央メモリに対する要求を
ディセーブルするのに用いられる。
従って、本発明の目的の一つは、処理の部分をなすコン
ピュータの処理速度を増加することにある。
ピュータの処理速度を増加することにある。
本発明の他の目的は、このような中央メモリを効率よく
動作させるために必要とするアドレス・キューの長さを
減少させることにある。
動作させるために必要とするアドレス・キューの長さを
減少させることにある。
本発明の更に他の目的は、このような中央メモリに必要
とする参照の総回数を減少させることにある。
とする参照の総回数を減少させることにある。
[実施例]
第1図及び第2図に示されている本発明を説明するに当
り、ある場合では第1図及び第2図が個個の要素の動作
のタイミングを明確に示すものではないを理解すべきで
ある。このような場合のタイミングは、当該の分野にお
いて通常に盲熟する者にとって推測し得るものである。
り、ある場合では第1図及び第2図が個個の要素の動作
のタイミングを明確に示すものではないを理解すべきで
ある。このような場合のタイミングは、当該の分野にお
いて通常に盲熟する者にとって推測し得るものである。
不確実な、即ち不確定のタイミング関係は明確に表示、
即ち定義されているものとする。第1図及び第2図に示
す各信号路は一つの制御信号を伝送するもの、又は典型
的なものとして一つのアドレス又はメモリ位置の内容で
ある多数の並列ビットを伝送するものとすることができ
る。第1図及び第2図において、個々の機能ブロックは
、ブロックに書き込まれ、かつこれを説明している機能
を実行するように協動する多数の固有のロジック回路を
典型的に表わすものである。Ill m信号は、通常、
論理0及び論理1の値、又は所定の関係にある第1及び
第2の値を有するものとして定義されており、この第1
及び第2の値は以下本明細書により明らかにされている
。更に、いくつかのデータ信号の大部分に対して制御信
号の意味付けをしており、特定のデータ信号の入力によ
って機能ブロックに朋待されている動作をする。実際の
設計においては、ブロックの機能を開始させる信号に対
し、例えば独立したグー1−信号即ちクロック信号が設
けられている。これらのものは、通常、本発明及びその
動作を不明確にしないように、その詳細な説明が省略さ
れている。
即ち定義されているものとする。第1図及び第2図に示
す各信号路は一つの制御信号を伝送するもの、又は典型
的なものとして一つのアドレス又はメモリ位置の内容で
ある多数の並列ビットを伝送するものとすることができ
る。第1図及び第2図において、個々の機能ブロックは
、ブロックに書き込まれ、かつこれを説明している機能
を実行するように協動する多数の固有のロジック回路を
典型的に表わすものである。Ill m信号は、通常、
論理0及び論理1の値、又は所定の関係にある第1及び
第2の値を有するものとして定義されており、この第1
及び第2の値は以下本明細書により明らかにされている
。更に、いくつかのデータ信号の大部分に対して制御信
号の意味付けをしており、特定のデータ信号の入力によ
って機能ブロックに朋待されている動作をする。実際の
設計においては、ブロックの機能を開始させる信号に対
し、例えば独立したグー1−信号即ちクロック信号が設
けられている。これらのものは、通常、本発明及びその
動作を不明確にしないように、その詳細な説明が省略さ
れている。
第1図を先ず参照するに、書き込み有効メモリ29を含
むディジタル・コンピュータ装置の概要ブロック図が示
されている。本装置において書き込み有効メモリ29は
ANDゲート30と共に本発明の中心をなすものである
。中央メモリ15はアドレス指定可能な位置に各インス
トラクション・ワードを記憶する。最終的に、中央メモ
リ15は、所望の中央メモリ・アドレスがデータ線25
の信号に符号化され、要求信号が゛データ線27に送出
されたときに、データ[116の信号に符号化したイン
ストラクション・ワードを出力する。
むディジタル・コンピュータ装置の概要ブロック図が示
されている。本装置において書き込み有効メモリ29は
ANDゲート30と共に本発明の中心をなすものである
。中央メモリ15はアドレス指定可能な位置に各インス
トラクション・ワードを記憶する。最終的に、中央メモ
リ15は、所望の中央メモリ・アドレスがデータ線25
の信号に符号化され、要求信号が゛データ線27に送出
されたときに、データ[116の信号に符号化したイン
ストラクション・ワードを出力する。
(データ線16及び17は多重信号を表わし、データ線
27は1制御ビットを表わすことに注−意すること)。
27は1制御ビットを表わすことに注−意すること)。
要求信号がデータ線27に出力されると、データ線゛2
5上の中央メモリ・アドレスが中央メモリ15に受け取
られ、中央メモリ15内のアドレス・キュー、即ちパイ
プラインに送出される。このようなディジタル・コンピ
ュータ・メモリは当該の分野に習熟する者が容易に設計
するものであり、これについてこれ以上の説明は必要で
はない。このようなアドレス・キュー即ちパイプライン
に置かれたアドレスが最も古く残るものとなるまで、こ
れがアドレス・キュー即ちパイプラインにより逐次シフ
トされ、この時点でアドレス・キュー即ちパイプライン
により指定された中央メモリ・アドレスのデータが読み
出され、読み出されたインストラクションや、その他の
データがデータ線16の信号に符号化されることは、理
解される。本発明では、中央メモリ15内のアドレス・
キューを得るのが便利である。各中央メモリ・アドレス
を保持する付加的な機能がインストラクション・ワード
・バッファ(IWB)ロード・アドレスも同じようにア
ドレス指定をする。このIW[30−ド・アドレスはデ
ータ線25上の中央メモリ(CM)アドレスと並行して
得られる線24の信号である。インストラクション・ワ
ード・バッファ・アドレスはデータ線17の信号に置か
れると同時に、これに関連するインストラクションを符
号化し、データ1116に送出する。最後に、中央メモ
リ15もアドレス・キューが所定数の中央メモリ・アド
レスを有するとき、即ちこれにより満たされているとき
は、第1の値を有するビジー信号を[128に発生し、
そうでないときは第2の値を有するビジー信号を発生す
る。実行されるべき一連のインストラクションは中央メ
モリ15に予め記憶されているものとする。これらのイ
ンストラクションが中央メモリ15にどのように配置さ
れるかは、本発明には関係ない。ここで、このようなア
ドレス・キュー又はパイプラインに配置されたアドレス
は、最後に未だ残っている最も古いものとなるまで、キ
ュー即ちパイプラインを介して逐次シフトされ、その時
点でこのアドレスにより指定された中央メモリ15の位
置にあるデータが読み出され、これに含まれているイン
ストラクション又は他のデータがデータ線16の信号に
符号化されることが理解される。本発明では、各中央メ
モリ・アドレスと共に搬送される付加的な1lflll
を有す中央メモリ15内のアドレス・キュー、及びイン
ストラクション・ワード・バッファ(IWB)アドレス
を備えるのが都合がよく、このIWBアドレスは線25
の中央メモリ・アドレスと同時的にデータ線24の信号
から得られる。
5上の中央メモリ・アドレスが中央メモリ15に受け取
られ、中央メモリ15内のアドレス・キュー、即ちパイ
プラインに送出される。このようなディジタル・コンピ
ュータ・メモリは当該の分野に習熟する者が容易に設計
するものであり、これについてこれ以上の説明は必要で
はない。このようなアドレス・キュー即ちパイプライン
に置かれたアドレスが最も古く残るものとなるまで、こ
れがアドレス・キュー即ちパイプラインにより逐次シフ
トされ、この時点でアドレス・キュー即ちパイプライン
により指定された中央メモリ・アドレスのデータが読み
出され、読み出されたインストラクションや、その他の
データがデータ線16の信号に符号化されることは、理
解される。本発明では、中央メモリ15内のアドレス・
キューを得るのが便利である。各中央メモリ・アドレス
を保持する付加的な機能がインストラクション・ワード
・バッファ(IWB)ロード・アドレスも同じようにア
ドレス指定をする。このIW[30−ド・アドレスはデ
ータ線25上の中央メモリ(CM)アドレスと並行して
得られる線24の信号である。インストラクション・ワ
ード・バッファ・アドレスはデータ線17の信号に置か
れると同時に、これに関連するインストラクションを符
号化し、データ1116に送出する。最後に、中央メモ
リ15もアドレス・キューが所定数の中央メモリ・アド
レスを有するとき、即ちこれにより満たされているとき
は、第1の値を有するビジー信号を[128に発生し、
そうでないときは第2の値を有するビジー信号を発生す
る。実行されるべき一連のインストラクションは中央メ
モリ15に予め記憶されているものとする。これらのイ
ンストラクションが中央メモリ15にどのように配置さ
れるかは、本発明には関係ない。ここで、このようなア
ドレス・キュー又はパイプラインに配置されたアドレス
は、最後に未だ残っている最も古いものとなるまで、キ
ュー即ちパイプラインを介して逐次シフトされ、その時
点でこのアドレスにより指定された中央メモリ15の位
置にあるデータが読み出され、これに含まれているイン
ストラクション又は他のデータがデータ線16の信号に
符号化されることが理解される。本発明では、各中央メ
モリ・アドレスと共に搬送される付加的な1lflll
を有す中央メモリ15内のアドレス・キュー、及びイン
ストラクション・ワード・バッファ(IWB)アドレス
を備えるのが都合がよく、このIWBアドレスは線25
の中央メモリ・アドレスと同時的にデータ線24の信号
から得られる。
IWBアドレスは線17の信号に配W1され、これと同
時にこれに関連するインストラクションが符号化されて
データl1116上に配置される。最後に、中央メモリ
15は、アドレス・キューが所定の数の中央メモリ・ア
ドレスを有し、即ち満たされたときは、第1の値を有す
るビジー信号を線28に発生し、それ以外のときは第2
の値を有するビジー信号を発生する。実行すべきシーフ
ェンスのインストラクションは予め中央メモリ15に存
在していると仮定している。どのようにしてこれらのイ
ンストラクションが中央メモリ15に配置されるかは、
本発明の説明には関係のないことである。
時にこれに関連するインストラクションが符号化されて
データl1116上に配置される。最後に、中央メモリ
15は、アドレス・キューが所定の数の中央メモリ・ア
ドレスを有し、即ち満たされたときは、第1の値を有す
るビジー信号を線28に発生し、それ以外のときは第2
の値を有するビジー信号を発生する。実行すべきシーフ
ェンスのインストラクションは予め中央メモリ15に存
在していると仮定している。どのようにしてこれらのイ
ンストラクションが中央メモリ15に配置されるかは、
本発明の説明には関係のないことである。
インストラクション・ワード・バッファ18は各要求信
号に対してデータ線16の信号に符号化されているイン
ストラクション・ワードと、これに関連され、データ1
117の信号に符号化されているインストラクション・
ワード・バッファ(IWB)アドレスとからなる中央メ
モリ信号を受け取り、これらに応答してデータ線17の
IWBアドレスにより指定される番地にインストラクシ
ョン・ワードを記憶する。また、インストラクション・
ワード・バッファ18は各IWBメモリ位置に関連して
読み出し有効インディケータ(1ビツトのものでもよい
)も備えている。各読み出し有効インディケータは第1
及び第2の値を有する。インストラクション・ワードが
インストラクション・ワード・バッファ18のメモリ位
置にロードされる度に、関連する読み出し有効インディ
ケータがその第2の値にセットされる。これが第1の値
にどのようにセットされるかについて簡単に説明しよう
。
号に対してデータ線16の信号に符号化されているイン
ストラクション・ワードと、これに関連され、データ1
117の信号に符号化されているインストラクション・
ワード・バッファ(IWB)アドレスとからなる中央メ
モリ信号を受け取り、これらに応答してデータ線17の
IWBアドレスにより指定される番地にインストラクシ
ョン・ワードを記憶する。また、インストラクション・
ワード・バッファ18は各IWBメモリ位置に関連して
読み出し有効インディケータ(1ビツトのものでもよい
)も備えている。各読み出し有効インディケータは第1
及び第2の値を有する。インストラクション・ワードが
インストラクション・ワード・バッファ18のメモリ位
置にロードされる度に、関連する読み出し有効インディ
ケータがその第2の値にセットされる。これが第1の値
にどのようにセットされるかについて簡単に説明しよう
。
1a33の信号に符号化されているIWBは、インスト
ラクション・ワード・バッファ18のメモリ位置を指定
して、当該のメモリ位置のインストラクション・ワード
を線19のインストラクション・ワードに符号化させ、
かつこれに1111連する読み出し有効インディケータ
を線31の読み出し有効ステータス信号に符号化させる
。特定のIW8番地の読み出し有効インディケータ・ス
テータスは、クリアされる、即ち線23の信号にIWB
アドレスを配置することによりその第1の値にセットさ
れる。これによってクリアされたステータスは、l!1
9の関連するインストラクション・ワードと共に、線3
1に直ちに得られるものと見做すことができる。本発明
に関連する好ましい実施例においては、綜23上を転送
されるアドレスは、逐次的な−グループのIW8アドレ
スを指定することができ、この場合は指定された全ての
番地はその第1の値に設定される。
ラクション・ワード・バッファ18のメモリ位置を指定
して、当該のメモリ位置のインストラクション・ワード
を線19のインストラクション・ワードに符号化させ、
かつこれに1111連する読み出し有効インディケータ
を線31の読み出し有効ステータス信号に符号化させる
。特定のIW8番地の読み出し有効インディケータ・ス
テータスは、クリアされる、即ち線23の信号にIWB
アドレスを配置することによりその第1の値にセットさ
れる。これによってクリアされたステータスは、l!1
9の関連するインストラクション・ワードと共に、線3
1に直ちに得られるものと見做すことができる。本発明
に関連する好ましい実施例においては、綜23上を転送
されるアドレスは、逐次的な−グループのIW8アドレ
スを指定することができ、この場合は指定された全ての
番地はその第1の値に設定される。
インストラクション・プロセッサ20はデータ1119
上の信号に符号化されたインストラクション・ワード・
バッファ18からの固有のインストラクション・ワード
を受け取る。各インストラクション・ワードは関連する
読み出し有効インディケータ・ステータスを符号化した
線31の信号を付随させている。各インストラクション
・プロセッサ20は、付随させている読み出し有効イン
ディケータがセット値である第2の値にあるとき、即ち
クリアされていないときにのみ、固有のインストラクシ
ョン・ワードを実行する。、Mみ出し有効インディケー
タが第1の値、即ちクリアされた値のときは、インスト
ラクション・プロセッサ20は一時的にインストラクシ
ョン・ワードの実行を停止する。
上の信号に符号化されたインストラクション・ワード・
バッファ18からの固有のインストラクション・ワード
を受け取る。各インストラクション・ワードは関連する
読み出し有効インディケータ・ステータスを符号化した
線31の信号を付随させている。各インストラクション
・プロセッサ20は、付随させている読み出し有効イン
ディケータがセット値である第2の値にあるとき、即ち
クリアされていないときにのみ、固有のインストラクシ
ョン・ワードを実行する。、Mみ出し有効インディケー
タが第1の値、即ちクリアされた値のときは、インスト
ラクション・プロセッサ20は一時的にインストラクシ
ョン・ワードの実行を停止する。
本発明の目的において注目すべき重要なことは、インス
トラクション・ワードをそれぞれ各実行することにより
、インストラクション・プロセッサ20が明白に、又は
暗黙の内に次のインストラクション・ワードの番地を指
定する他の中央メモリ・アドレスの参照を更に発生する
ことである。これを更に具体的にすると、よく知られて
いることであるが、例えば逐次的な次のアドレスを決定
するためにアドレス(メモリの最終番地を除く)に定数
(通常は1)を加えることが可能な、連続する逐次的な
中央メモリ・アドレスにインストラクション・ワードを
配列する。分岐を指定するインストラクション・ワード
は、実行すべき次のインストラクション・ワードの番地
を特定して決定する。他のインストラクション・ワード
は、シーフェンス上、次に来るアドレスの位置に基づい
ているので、次のインストラクション・ワードを暗黙の
内に決定する。インタラブド又はブレーク・ポイント・
オペレーションに基づく特殊な目的のアドレス設定は、
特殊な場合として取り扱うことができるので、ここで説
明を要するものではない。
トラクション・ワードをそれぞれ各実行することにより
、インストラクション・プロセッサ20が明白に、又は
暗黙の内に次のインストラクション・ワードの番地を指
定する他の中央メモリ・アドレスの参照を更に発生する
ことである。これを更に具体的にすると、よく知られて
いることであるが、例えば逐次的な次のアドレスを決定
するためにアドレス(メモリの最終番地を除く)に定数
(通常は1)を加えることが可能な、連続する逐次的な
中央メモリ・アドレスにインストラクション・ワードを
配列する。分岐を指定するインストラクション・ワード
は、実行すべき次のインストラクション・ワードの番地
を特定して決定する。他のインストラクション・ワード
は、シーフェンス上、次に来るアドレスの位置に基づい
ているので、次のインストラクション・ワードを暗黙の
内に決定する。インタラブド又はブレーク・ポイント・
オペレーションに基づく特殊な目的のアドレス設定は、
特殊な場合として取り扱うことができるので、ここで説
明を要するものではない。
インストラクション・プロセッサ20は画形式のアドレ
スを内部的に生成し、それぞれ現在インストラクション
・ワード信号により決定された中央メモリ・アドレスを
新しい中央メモリ・アドレスの線21に送出する。大抵
の場合、インストラクション・プロセッサ20は、この
形式の各インストラクションのために増加されて次のイ
ンストラクションを暗黙の内に決定し、また指定された
インストラクションへの分岐インストラクションによっ
てリセットされる内部カウンタを単に保持するだけであ
る。
スを内部的に生成し、それぞれ現在インストラクション
・ワード信号により決定された中央メモリ・アドレスを
新しい中央メモリ・アドレスの線21に送出する。大抵
の場合、インストラクション・プロセッサ20は、この
形式の各インストラクションのために増加されて次のイ
ンストラクションを暗黙の内に決定し、また指定された
インストラクションへの分岐インストラクションによっ
てリセットされる内部カウンタを単に保持するだけであ
る。
バッファ・アドレス指定IIJIl1部22は中央メモ
リ・アドレス線21の信号により各中央メモリ・アドレ
スを受け取る。また、バッファ・アドレス指定制御部2
2は多数の異なる機能を内部で実行し、必要に応じてI
WBアドレスの割り付け及び関連付けを行なう。バッフ
ァ・アドレス指定制御部22は中央メモリ・アドレスに
対する固有のIWBアドレスの割り付けを記録する内部
アドレス・テーブルを保持している。バッファ・アドレ
ス指定制御部22は、新しい中央メモリ・アドレスを中
央メモリ・アドレス線21を介して受け取る度に、その
アドレス・テーブルを検索してこれにIW8アドレスが
割り付けられているかについて判断をづ“る。
リ・アドレス線21の信号により各中央メモリ・アドレ
スを受け取る。また、バッファ・アドレス指定制御部2
2は多数の異なる機能を内部で実行し、必要に応じてI
WBアドレスの割り付け及び関連付けを行なう。バッフ
ァ・アドレス指定制御部22は中央メモリ・アドレスに
対する固有のIWBアドレスの割り付けを記録する内部
アドレス・テーブルを保持している。バッファ・アドレ
ス指定制御部22は、新しい中央メモリ・アドレスを中
央メモリ・アドレス線21を介して受け取る度に、その
アドレス・テーブルを検索してこれにIW8アドレスが
割り付けられているかについて判断をづ“る。
IWBアドレスが今回量は取った中央メモリ・アドレス
に割り付けられていないときは、バッファ・アドレス指
定υJai1部22は中央メモリ・アドレスにIWBア
ドレスを割り付け、この割り付けをアドレス・テーブル
に記録する。これには他のある中央メモリ・アドレスか
ら選択したIWBアドレスを再割り付けすることが含ま
れているので、この割り付けをした後は、インストラク
ション・ワード・バッファ18における当該番地に記憶
されているインストラクション・ワードが無効となる。
に割り付けられていないときは、バッファ・アドレス指
定υJai1部22は中央メモリ・アドレスにIWBア
ドレスを割り付け、この割り付けをアドレス・テーブル
に記録する。これには他のある中央メモリ・アドレスか
ら選択したIWBアドレスを再割り付けすることが含ま
れているので、この割り付けをした後は、インストラク
ション・ワード・バッファ18における当該番地に記憶
されているインストラクション・ワードが無効となる。
従って、当該番地に対する読み出し有効インディケータ
はクリアされなければならないが、これは線23の信号
に再割り付けされた1又は複数のIWBアドレスを送出
することにより達成される。この信号は、インストラク
ション・ワード・バッファ18に入力され、先に述べた
ようにインストラクション・ワード・バッファ18は当
該アドレスに関連する読み出し有効インディケータをそ
の第1の値即ちクリアされた状態にセットさせる。この
中央メモリ・アドレスに割り付けられた新しいIWBア
ドレスは線33の信号にも配列されるが、このIWBア
ドレスの読み出し有効ステータスがクリアされているの
で、インストラクション・プロセッサ20はアドレス指
定された番地に記憶されているインストラクション・ワ
ードの実行が一時禁止される。
はクリアされなければならないが、これは線23の信号
に再割り付けされた1又は複数のIWBアドレスを送出
することにより達成される。この信号は、インストラク
ション・ワード・バッファ18に入力され、先に述べた
ようにインストラクション・ワード・バッファ18は当
該アドレスに関連する読み出し有効インディケータをそ
の第1の値即ちクリアされた状態にセットさせる。この
中央メモリ・アドレスに割り付けられた新しいIWBア
ドレスは線33の信号にも配列されるが、このIWBア
ドレスの読み出し有効ステータスがクリアされているの
で、インストラクション・プロセッサ20はアドレス指
定された番地に記憶されているインストラクション・ワ
ードの実行が一時禁止される。
IWBアドレスの再割り付けをする度に、古いインスト
ラクション・ワードの問題のIWBアドレスが再割り付
けされている中央メモリ・アドレス位置のものに置換す
る必要がある。これは線25の信号に新しい中央メモリ
・アドレスを配置すると共に、線24の信号に割り付け
られたIWBアドレスにより一部達成される。次に、書
き込み有効メモリ29及び中央メモリ15は協動し、最
終的に中央メモリ15の当該アドレス番地からインスト
ラクション・ワードを得る。
ラクション・ワードの問題のIWBアドレスが再割り付
けされている中央メモリ・アドレス位置のものに置換す
る必要がある。これは線25の信号に新しい中央メモリ
・アドレスを配置すると共に、線24の信号に割り付け
られたIWBアドレスにより一部達成される。次に、書
き込み有効メモリ29及び中央メモリ15は協動し、最
終的に中央メモリ15の当該アドレス番地からインスト
ラクション・ワードを得る。
書き込み有効メモリ29は線23のクリア有効信号も受
け取る。インストラクション・ワード・バッファ18は
インストラクション・ワード・バッファ18内の読み出
し有効メモリと同一であり、これにはIWBアドレスに
よりそれぞれアドレス指定可能な多数のメモリ番地があ
り、それぞれり′リアされてステータスをセットさせる
ことに対応した少なくとも第1及び第2のインディケー
タ値を記憶することができる。書き込み有効メモリ29
は、クリア有効アドレス信号を線23を介して受け取る
と、クリア有効アドレス信号によりアドレス指定された
書き込み有効メモリ29内の1又は複数の位置を第1の
値即ちクリア状態に設定する。書き込み有効メモリ29
は線26を介し、アドレスを線24の信号に符号化して
いる書ぎ込み有効メモリ・インディケータのセット又は
クリアされたステータスも供給する。更に、データ線2
7のセット信号により、線24のIWBアドレスにより
アドレスされた個々のインディケータを第2の値即ちセ
ット値にセットすることができる。
け取る。インストラクション・ワード・バッファ18は
インストラクション・ワード・バッファ18内の読み出
し有効メモリと同一であり、これにはIWBアドレスに
よりそれぞれアドレス指定可能な多数のメモリ番地があ
り、それぞれり′リアされてステータスをセットさせる
ことに対応した少なくとも第1及び第2のインディケー
タ値を記憶することができる。書き込み有効メモリ29
は、クリア有効アドレス信号を線23を介して受け取る
と、クリア有効アドレス信号によりアドレス指定された
書き込み有効メモリ29内の1又は複数の位置を第1の
値即ちクリア状態に設定する。書き込み有効メモリ29
は線26を介し、アドレスを線24の信号に符号化して
いる書ぎ込み有効メモリ・インディケータのセット又は
クリアされたステータスも供給する。更に、データ線2
7のセット信号により、線24のIWBアドレスにより
アドレスされた個々のインディケータを第2の値即ちセ
ット値にセットすることができる。
その後、線23を介して書き込み有効メモリ29へこの
アドレスを指定する他のクリア信号が送出されるまでは
、このアドレスを線24の信号に符号化する度に、線2
6の書き込み有効ステータス信号の値は第2の値となる
。
アドレスを指定する他のクリア信号が送出されるまでは
、このアドレスを線24の信号に符号化する度に、線2
6の書き込み有効ステータス信号の値は第2の値となる
。
fi126の書き込み有効信号はANDゲート30の第
1の入力を形成する。ANDゲート30は、126に第
1の値が存在し、かつ線28に第2の値が存在するとき
は、ANDゲート30から線27に対する出力が第2の
値となり、それ以外のときは第1の値となるように設計
されている。想起されるように、アドレス・キュー即ち
バイブラインが要求を受け付けることができないときは
、線28を介して転送されるビジー信号は第1の値に設
定され、そうでないときはその第2の値に設定される。
1の入力を形成する。ANDゲート30は、126に第
1の値が存在し、かつ線28に第2の値が存在するとき
は、ANDゲート30から線27に対する出力が第2の
値となり、それ以外のときは第1の値となるように設計
されている。想起されるように、アドレス・キュー即ち
バイブラインが要求を受け付けることができないときは
、線28を介して転送されるビジー信号は第1の値に設
定され、そうでないときはその第2の値に設定される。
従って、アドレス・キューが他のアドレスを受け取付け
る余地ができるまで、要求を遅延させる手段が得られる
。ANDゲート30の肉入力が満足するものとなったと
きは、線27上に生成された要求信号によって、中央メ
モリ15はIWBアドレスを線24に、また中央メモリ
・アドレスを線25に一緒にアドレス・キューにして送
出する。従って、インストラクション・プロセッサ20
が必要とするインス]・ラクション・ワードは、結局イ
ンストラクション・ワード・バーツファ18に記憶され
る。
る余地ができるまで、要求を遅延させる手段が得られる
。ANDゲート30の肉入力が満足するものとなったと
きは、線27上に生成された要求信号によって、中央メ
モリ15はIWBアドレスを線24に、また中央メモリ
・アドレスを線25に一緒にアドレス・キューにして送
出する。従って、インストラクション・プロセッサ20
が必要とするインス]・ラクション・ワードは、結局イ
ンストラクション・ワード・バーツファ18に記憶され
る。
要求アドレスがアドレス・キューによって進行し、所望
のインストラクション・ワードが最終的にデータ線19
の信号に符号化されるまで、次のインストラクションの
処理を遅延しなければならないことは明らかであるが、
これはこの実施例のものではない。本発明は、インスト
ラクション・ワード・ルックアヘッドが存在する場合に
用いられることを意図している。従って、インストラク
ション・プロセッサ20がインストラクション・ワード
を必要とするより前に、実質的にインストラクション・
ワードを要求することができる。典型的なコンピュータ
・プログラムには、次のインストラクションの処理を開
始する前に、特定のシーフェンスのインストラクション
を多数回実行する頻繁なループの挿入処理が含まれてい
る。今回のループにおいて、特定のループが完了した後
に実行可能な固有のインストラクション・ワードを中央
メモリ15から読み出し、インストラクション・ワード
・バッファ18にセットすることができるので、中央メ
モリ15からの応答を持つことなく、これらのインスト
ラクション・ワードを実行することができる。従って、
典型的なルックアヘッド機能はシーフェンスで続いてい
るインストラクション・ワードが後で実行されるべきの
ちのであると単純に仮定するので、本質的に、通常のイ
ンストラクション・ワードが中央メモリ15内で連続す
るアドレスを占めるものとなる。
のインストラクション・ワードが最終的にデータ線19
の信号に符号化されるまで、次のインストラクションの
処理を遅延しなければならないことは明らかであるが、
これはこの実施例のものではない。本発明は、インスト
ラクション・ワード・ルックアヘッドが存在する場合に
用いられることを意図している。従って、インストラク
ション・プロセッサ20がインストラクション・ワード
を必要とするより前に、実質的にインストラクション・
ワードを要求することができる。典型的なコンピュータ
・プログラムには、次のインストラクションの処理を開
始する前に、特定のシーフェンスのインストラクション
を多数回実行する頻繁なループの挿入処理が含まれてい
る。今回のループにおいて、特定のループが完了した後
に実行可能な固有のインストラクション・ワードを中央
メモリ15から読み出し、インストラクション・ワード
・バッファ18にセットすることができるので、中央メ
モリ15からの応答を持つことなく、これらのインスト
ラクション・ワードを実行することができる。従って、
典型的なルックアヘッド機能はシーフェンスで続いてい
るインストラクション・ワードが後で実行されるべきの
ちのであると単純に仮定するので、本質的に、通常のイ
ンストラクション・ワードが中央メモリ15内で連続す
るアドレスを占めるものとなる。
第1図において、これをルックアヘッド機能を有するバ
ッファ・アドレス指定制御部22により達成することが
できる。最も簡単な形式の場合、この手段は単に中央メ
モリ・アドレス線21を介して受け取る新しい各中央メ
モリ・アドレスを増加させ、連続する次の中央メモリ・
アドレスを指定する手段となる。この手段は、例えば新
しい中央メモリ・アドレスを記憶し、線24のIWBア
ドレスと、線25の中央メモリ・アドレスとの供給が可
能な内部レジスタを設けることにより達成することがで
きる。線24を介してアドレスが入力される書き込み有
効メモリ29のインディケータが第2の値となる度に、
内部のルックアヘッド・カウンタを次の中央メモリ・ア
ドレスに進める。
ッファ・アドレス指定制御部22により達成することが
できる。最も簡単な形式の場合、この手段は単に中央メ
モリ・アドレス線21を介して受け取る新しい各中央メ
モリ・アドレスを増加させ、連続する次の中央メモリ・
アドレスを指定する手段となる。この手段は、例えば新
しい中央メモリ・アドレスを記憶し、線24のIWBア
ドレスと、線25の中央メモリ・アドレスとの供給が可
能な内部レジスタを設けることにより達成することがで
きる。線24を介してアドレスが入力される書き込み有
効メモリ29のインディケータが第2の値となる度に、
内部のルックアヘッド・カウンタを次の中央メモリ・ア
ドレスに進める。
アドレス割り付けテーブルを検索して、IWBアドレス
がこの新しいメモリ・アドレスに割り付けられているか
について調べる。イエスであり、かつこれに関連する書
き込み有効インディケータが第2の値であるときは、中
央メモリ・アドレスを再び増加させて、テストを繰り返
すことができる。
がこの新しいメモリ・アドレスに割り付けられているか
について調べる。イエスであり、かつこれに関連する書
き込み有効インディケータが第2の値であるときは、中
央メモリ・アドレスを再び増加させて、テストを繰り返
すことができる。
ノーのときは、前述のように、これに新しいIWBアド
レスを割り付けてこれに関連するnlき込み有効インデ
ィケータをクリアし、中央メモリ・アドレスを有するイ
ンストラクション・ワードに対する要求をアドレス・キ
ューに配列する。
レスを割り付けてこれに関連するnlき込み有効インデ
ィケータをクリアし、中央メモリ・アドレスを有するイ
ンストラクション・ワードに対する要求をアドレス・キ
ューに配列する。
更に、バッファ・アドレス指定制御部22は線26に占
き込み有効ステータス信号を入力して中央メモリ15に
対する不必要な読み出し要求を禁止している。このよう
なことは、例えばIWBアドレスの1ブロツクが同時に
再割り付けされ、アドレス・キューに配列した新しいイ
ンストラクション・ワードに対して再割り付けした全て
のアドレス番地が要求を出す前に、プログラムがループ
又は分岐をする場合に発生することがある。このような
ことは他の状況でもあり得る。このような場合は、書ぎ
込み有効機構を除き、インストラクション・ワード・バ
ッファ18の読み出し有効メモリのみが記憶しているイ
ンストラクション・ワードを要求する必要があるかにつ
いての表示をしており、まだ応答していないものを除き
、アドレス要求がアドレス・キューに配列された条件を
検出することはできない。個々のインディケータのステ
ータスは、占き込み有効メモリ29を用いることにより
、アドレス・キューにおける要求の存在を検出する手段
となる。線26のインディケータ・ステータス信号は、
記憶しているIWBアドレスを含むこれ以上の要求がア
ドレス・キューに配列されるのを阻止する。
き込み有効ステータス信号を入力して中央メモリ15に
対する不必要な読み出し要求を禁止している。このよう
なことは、例えばIWBアドレスの1ブロツクが同時に
再割り付けされ、アドレス・キューに配列した新しいイ
ンストラクション・ワードに対して再割り付けした全て
のアドレス番地が要求を出す前に、プログラムがループ
又は分岐をする場合に発生することがある。このような
ことは他の状況でもあり得る。このような場合は、書ぎ
込み有効機構を除き、インストラクション・ワード・バ
ッファ18の読み出し有効メモリのみが記憶しているイ
ンストラクション・ワードを要求する必要があるかにつ
いての表示をしており、まだ応答していないものを除き
、アドレス要求がアドレス・キューに配列された条件を
検出することはできない。個々のインディケータのステ
ータスは、占き込み有効メモリ29を用いることにより
、アドレス・キューにおける要求の存在を検出する手段
となる。線26のインディケータ・ステータス信号は、
記憶しているIWBアドレスを含むこれ以上の要求がア
ドレス・キューに配列されるのを阻止する。
各要求が固有のIWBアドレスを含み、かつその要求が
アドレス・キューに受【プ付けられたときは、書き込み
有効メモリ29において対応するインディケータをセッ
トし、線26上の符号化−されたステータス信号によっ
てバッファ・アドレス指定制御部22のルックアヘッド
・レジスタに記憶されている中央メモリ・アドレスも直
ちに増加する基準となる。ルックアヘッド・アドレスが
要求していないワード番地に達すると、現在アドレスの
インストラクション・ワードに対する要求が中央メモリ
15により受け付けられるまで、線26上を転送される
ステータスはバッファ・アドレス指定制御部22がルッ
クアヘッド・アドレスを増加するのを停止させる。
アドレス・キューに受【プ付けられたときは、書き込み
有効メモリ29において対応するインディケータをセッ
トし、線26上の符号化−されたステータス信号によっ
てバッファ・アドレス指定制御部22のルックアヘッド
・レジスタに記憶されている中央メモリ・アドレスも直
ちに増加する基準となる。ルックアヘッド・アドレスが
要求していないワード番地に達すると、現在アドレスの
インストラクション・ワードに対する要求が中央メモリ
15により受け付けられるまで、線26上を転送される
ステータスはバッファ・アドレス指定制御部22がルッ
クアヘッド・アドレスを増加するのを停止させる。
以上の説明は全て多少要約化したものであり、バッファ
・アドレス指定制御部22の各要素は明確に定義されて
いない。以下で説明する第2図は1、mき込み有効メモ
リ機構を最適に用いるようにブロックIWBアドレスの
再割り付け及びルックアヘッドのアドレス指定に関連さ
せた更に具体的な実施例である。第1図に関する次の説
明はこの実施例の動作を更に明確にするものである。
・アドレス指定制御部22の各要素は明確に定義されて
いない。以下で説明する第2図は1、mき込み有効メモ
リ機構を最適に用いるようにブロックIWBアドレスの
再割り付け及びルックアヘッドのアドレス指定に関連さ
せた更に具体的な実施例である。第1図に関する次の説
明はこの実施例の動作を更に明確にするものである。
第1図により形成された装置の動作を説明するために、
一連のプログラム・ワードからなるプログラムが中央メ
モリ15に記憶されているものと仮定し、かつ分岐イン
ストラクションを実行して線21の信号に先頭インスト
ラクション・ワードを指定する中央メモリ・アドレスを
設定しているものと仮定する。この中央メモリ・アドレ
スの初期値は以上で説明したように、W8アドレスが割
り付けられていない中央メモリ・アドレスとして、バッ
ファ・アドレス指定制御部22により処理されるものと
仮定する。従って、バッファ・アドレス指定制御部22
は中央メモリ・アドレスの初期値にIWBアドレスを割
り付ける。IWBアドレスの新しい割り付けがあると、
今割り付けたIWBアドレスを有する書き込み及び読み
出し有効インディケータは、Fi123にIWBアドレ
スを設定することによりクリアされる。同時に、IWB
アドレスを線33に送出してインストラクション・・プ
ロセッサ20が最初のインストラクション・ワードを受
け取るインストラクション・ワード・バッファ18の番
地を指定する。次いで、中央メモリ・アドレスは線25
に送出される。中央メモリ・アドレスは内部のルックア
ヘッド・レジスタにもロードされ、これからIW80−
ド・アドレスの線24に送出される。線24のIWBロ
ード・アドレスによりアドレス指定された磨き込み有効
メモリ29内のクリア書き込み有効インディゲータは、
第1の状態にあるインディケータの値を線26に送出し
、ANDゲート30の第1人力を満足させる。アドレス
・キューが満足されているために中央メモリ15が線2
8に第2の値のビジー信号を出力すると仮定すると、A
NDゲ−ト30の第2人力も満足され、要求信号が線2
7を介して中央メモリ15に送出される。この要求信号
により線24のIWBロード・アドレス及び線25の中
央メモリ・アドレスが中央メモリ15におけるアドレス
・キューに登録される。この要求信号は更に線27を介
し、書き込み有効メモリ29に対するセット信号ともな
り、これによって線24のロード・アドレスに対応する
書き込み有効インディケータをセットさせ、線26の占
き込み有効ステータス信号を第2の値に変化させる。
一連のプログラム・ワードからなるプログラムが中央メ
モリ15に記憶されているものと仮定し、かつ分岐イン
ストラクションを実行して線21の信号に先頭インスト
ラクション・ワードを指定する中央メモリ・アドレスを
設定しているものと仮定する。この中央メモリ・アドレ
スの初期値は以上で説明したように、W8アドレスが割
り付けられていない中央メモリ・アドレスとして、バッ
ファ・アドレス指定制御部22により処理されるものと
仮定する。従って、バッファ・アドレス指定制御部22
は中央メモリ・アドレスの初期値にIWBアドレスを割
り付ける。IWBアドレスの新しい割り付けがあると、
今割り付けたIWBアドレスを有する書き込み及び読み
出し有効インディケータは、Fi123にIWBアドレ
スを設定することによりクリアされる。同時に、IWB
アドレスを線33に送出してインストラクション・・プ
ロセッサ20が最初のインストラクション・ワードを受
け取るインストラクション・ワード・バッファ18の番
地を指定する。次いで、中央メモリ・アドレスは線25
に送出される。中央メモリ・アドレスは内部のルックア
ヘッド・レジスタにもロードされ、これからIW80−
ド・アドレスの線24に送出される。線24のIWBロ
ード・アドレスによりアドレス指定された磨き込み有効
メモリ29内のクリア書き込み有効インディゲータは、
第1の状態にあるインディケータの値を線26に送出し
、ANDゲート30の第1人力を満足させる。アドレス
・キューが満足されているために中央メモリ15が線2
8に第2の値のビジー信号を出力すると仮定すると、A
NDゲ−ト30の第2人力も満足され、要求信号が線2
7を介して中央メモリ15に送出される。この要求信号
により線24のIWBロード・アドレス及び線25の中
央メモリ・アドレスが中央メモリ15におけるアドレス
・キューに登録される。この要求信号は更に線27を介
し、書き込み有効メモリ29に対するセット信号ともな
り、これによって線24のロード・アドレスに対応する
書き込み有効インディケータをセットさせ、線26の占
き込み有効ステータス信号を第2の値に変化させる。
これによって、バッファ・アドレス指定制御部22は内
部ルックアヘッド・レジスタの中央メモリ・アドレスを
増加させるように指令され、1i125の信号に新しい
中央メモリ・アドレスを設定させる。 バッファ・アド
レス指定制御部22はその内部アドレス・テーブルを検
索し、IWBアドレスがこの新しい中央メモリ・アドレ
スに割り付けられているかについて判断をする。先ず書
き込み有効メモリ機構の使用を正当化するように、ブロ
ック単位で割り付けを行なうと仮定しているので、通常
の場合、IWBアドレスは既に割り付けられている。い
ずれにしろ(線21の信号により指定されている新しい
中央メモリ・アドレスのみがIWB実行アドレスを線を
33に送出させるので)、線24にのみ新しいIWBア
ドレスを送出し、増加された中央メモリ・アドレスが線
25の信号に符号化される。もし、IWBアドレスの新
しい割り付けが実行されなかったときは、クリア有効信
号はIQ23に送出されない。前に概要を示したような
手順によって、線24のIWBアドレスにより指定され
たアドレスのインストラクション・ワード・バッファ1
8に第2のインス1−ラクション・ワードをロードさせ
る。同様に、WA26のIWBアドレスによりアドレス
指定されたインディケータがセットされたときは、最終
的に新しい書き込み有効ステータス信号が線26上に送
出されるので、内部ルックアヘッド・レジスタに記憶さ
れている中央メモリ・アドレスを再度増加させる。
部ルックアヘッド・レジスタの中央メモリ・アドレスを
増加させるように指令され、1i125の信号に新しい
中央メモリ・アドレスを設定させる。 バッファ・アド
レス指定制御部22はその内部アドレス・テーブルを検
索し、IWBアドレスがこの新しい中央メモリ・アドレ
スに割り付けられているかについて判断をする。先ず書
き込み有効メモリ機構の使用を正当化するように、ブロ
ック単位で割り付けを行なうと仮定しているので、通常
の場合、IWBアドレスは既に割り付けられている。い
ずれにしろ(線21の信号により指定されている新しい
中央メモリ・アドレスのみがIWB実行アドレスを線を
33に送出させるので)、線24にのみ新しいIWBア
ドレスを送出し、増加された中央メモリ・アドレスが線
25の信号に符号化される。もし、IWBアドレスの新
しい割り付けが実行されなかったときは、クリア有効信
号はIQ23に送出されない。前に概要を示したような
手順によって、線24のIWBアドレスにより指定され
たアドレスのインストラクション・ワード・バッファ1
8に第2のインス1−ラクション・ワードをロードさせ
る。同様に、WA26のIWBアドレスによりアドレス
指定されたインディケータがセットされたときは、最終
的に新しい書き込み有効ステータス信号が線26上に送
出されるので、内部ルックアヘッド・レジスタに記憶さ
れている中央メモリ・アドレスを再度増加させる。
分岐又は他のインストラクションによりシーフェンスを
外れた中央メモリ・アドレスを線21に送出するまで、
この処理は継続する。指定された折しい中央メモリ・ア
ドレスがインストラクション・ワード・バッファ18に
既にロードされていると仮定する。この場合に、割り付
けテーブルがバッファ・アドレス指定制御部22により
検索されたときは、この割り付けが検出され、適当なI
WBアドレスが線33の信号に送出される。線33のI
WBアドレスにより指定された番地にインストラクショ
ンが既にロードしているものと仮定しているので、関連
の読み出し有効インディケータは第2の値、即ちセット
値にあり、従ってインストラクション・プロセッサ20
は直ちにインストラクション・ワードの処理を開始する
ことができる。これは大抵のインストラクション・ワー
ドを実行するときの典型的な状態であると予測され、か
つインストラクション・ワードがインストラクション・
ワード・バッファ18に既に存在するので、バッファ・
アドレス指定制御部22は割り付けテーブルを検索する
だけで良く、線33に正しいIWBアドレスを送出する
。通常、現在実行しているインストラクションのアドレ
スから少し増加させた所で連続するインス1−ラクショ
ンに次に実行すべきインストラクションが存在し、又は
これが新たに実行されたので、インストラクション・ワ
ード・バッファ18に未だ存在する。特定のプログラム
において、インストラクション・プロセッサ20が前に
実行したインストラクションよりも少し大きなアドレス
を有するメモリ位置に記憶しているインストラクション
を実行する度に、大抵の場合、ルックアヘッド機能は次
のインストラクション・ワードを既にインストラクショ
ン・ワード・バッファ18にロードしているか、又はこ
れらの要求を中央メモリ15のアドレス・キューに出し
ていなければならない。特定のループが何゛回も反復さ
れたときは、書ぎ込み有効メモリ機構は既に要求された
が、未だインストラクション・ワード・バッファ18に
ロードされていないインストラクション・ワードに対す
る冗長な要求を禁止する。従って、中央メモリ15に対
する要求をかなり少なくすることができる。中央メモリ
15がデータ・ワード要求やインストラクション・ワー
ド要求があるとビジーとなるので、中央メモリ要求が殆
どなくなり、総合的な実行が更に速くなる。
外れた中央メモリ・アドレスを線21に送出するまで、
この処理は継続する。指定された折しい中央メモリ・ア
ドレスがインストラクション・ワード・バッファ18に
既にロードされていると仮定する。この場合に、割り付
けテーブルがバッファ・アドレス指定制御部22により
検索されたときは、この割り付けが検出され、適当なI
WBアドレスが線33の信号に送出される。線33のI
WBアドレスにより指定された番地にインストラクショ
ンが既にロードしているものと仮定しているので、関連
の読み出し有効インディケータは第2の値、即ちセット
値にあり、従ってインストラクション・プロセッサ20
は直ちにインストラクション・ワードの処理を開始する
ことができる。これは大抵のインストラクション・ワー
ドを実行するときの典型的な状態であると予測され、か
つインストラクション・ワードがインストラクション・
ワード・バッファ18に既に存在するので、バッファ・
アドレス指定制御部22は割り付けテーブルを検索する
だけで良く、線33に正しいIWBアドレスを送出する
。通常、現在実行しているインストラクションのアドレ
スから少し増加させた所で連続するインス1−ラクショ
ンに次に実行すべきインストラクションが存在し、又は
これが新たに実行されたので、インストラクション・ワ
ード・バッファ18に未だ存在する。特定のプログラム
において、インストラクション・プロセッサ20が前に
実行したインストラクションよりも少し大きなアドレス
を有するメモリ位置に記憶しているインストラクション
を実行する度に、大抵の場合、ルックアヘッド機能は次
のインストラクション・ワードを既にインストラクショ
ン・ワード・バッファ18にロードしているか、又はこ
れらの要求を中央メモリ15のアドレス・キューに出し
ていなければならない。特定のループが何゛回も反復さ
れたときは、書ぎ込み有効メモリ機構は既に要求された
が、未だインストラクション・ワード・バッファ18に
ロードされていないインストラクション・ワードに対す
る冗長な要求を禁止する。従って、中央メモリ15に対
する要求をかなり少なくすることができる。中央メモリ
15がデータ・ワード要求やインストラクション・ワー
ド要求があるとビジーとなるので、中央メモリ要求が殆
どなくなり、総合的な実行が更に速くなる。
次に第2図を参照するに、この発明の好ましい実施例が
特定のディジタル・コンピュータ設計の詳細なブロック
図に示されている。先に述べたように、インストラクシ
ョン・ルックアヘッド機能は、ブロックIWBアドレス
の割り付けとの関連において、書き込み有効メモリの使
用を許可することにより、中央メモリに対するインスト
ラクション・ワード要求を管理する。ここでの説明は、
実行すべきインストラクションを含む中央メモリ59か
ら開始するのが好都合である。中央メモリ59は、第1
図において先に述べた中央メモリ15に非常に似ており
、アドレス・キュー即ちパイプライン機能を備えている
。線43の信号に符号化されている中央メモリ・アドレ
ス、及び線62の信号に符号化されているブロック数は
、中央メモリ59に入力される。線62のブロック数は
インストラクション・ワード・バッファ(IWB)アド
レスの上位部分を形成する。この実施例において、線4
3の中央メモリ・アドレスにおける所定番号の下位ビッ
トはIWBアドレスの対応する番号の下位ビットを形成
し、そのブロック数はこれに連結されて完全なIWBア
ドレスを形成している。線61に要求信号を送出したと
きは、中央メモリ59は線43上に符号化されている中
央メpす・アドレスを入力して線62の信号にお−ける
ブロック番号をそのアドレス・キューに割り付け′る。
特定のディジタル・コンピュータ設計の詳細なブロック
図に示されている。先に述べたように、インストラクシ
ョン・ルックアヘッド機能は、ブロックIWBアドレス
の割り付けとの関連において、書き込み有効メモリの使
用を許可することにより、中央メモリに対するインスト
ラクション・ワード要求を管理する。ここでの説明は、
実行すべきインストラクションを含む中央メモリ59か
ら開始するのが好都合である。中央メモリ59は、第1
図において先に述べた中央メモリ15に非常に似ており
、アドレス・キュー即ちパイプライン機能を備えている
。線43の信号に符号化されている中央メモリ・アドレ
ス、及び線62の信号に符号化されているブロック数は
、中央メモリ59に入力される。線62のブロック数は
インストラクション・ワード・バッファ(IWB)アド
レスの上位部分を形成する。この実施例において、線4
3の中央メモリ・アドレスにおける所定番号の下位ビッ
トはIWBアドレスの対応する番号の下位ビットを形成
し、そのブロック数はこれに連結されて完全なIWBア
ドレスを形成している。線61に要求信号を送出したと
きは、中央メモリ59は線43上に符号化されている中
央メpす・アドレスを入力して線62の信号にお−ける
ブロック番号をそのアドレス・キューに割り付け′る。
第1図の装置のように、このアドレス・キューは所定の
長さを有し、一杯になっていないときは、論理1の信号
をBUSY信号の線58に送出して、他のアドレスをア
ドレス・キューに登録可能なこと、即ちアドレス・キュ
ーは「ビジーではない」ことを表わしている。線43の
信号に符号化されているアドレス位置のインストラクシ
ョン・ワードは、線67に送出される中央メモリの信号
の一部として符号化される。線62の信号に符号化され
ているブロック番号は、線43に符号化されている中央
メモリ・アドレスの下位ビットに連結され、また線66
の中央メモリ信号の残部として符号化されることにより
インストラクションを記憶する完全なIWBアドレス位
置を形成する。
長さを有し、一杯になっていないときは、論理1の信号
をBUSY信号の線58に送出して、他のアドレスをア
ドレス・キューに登録可能なこと、即ちアドレス・キュ
ーは「ビジーではない」ことを表わしている。線43の
信号に符号化されているアドレス位置のインストラクシ
ョン・ワードは、線67に送出される中央メモリの信号
の一部として符号化される。線62の信号に符号化され
ているブロック番号は、線43に符号化されている中央
メモリ・アドレスの下位ビットに連結され、また線66
の中央メモリ信号の残部として符号化されることにより
インストラクションを記憶する完全なIWBアドレス位
置を形成する。
rWBアドレスはインストラクション・ワード・バッフ
ァ68のロード(LD)アドレス入力に印加される。次
に、線67の信号に符号化されているインストラクショ
ンは線66を転送されるインストラクション・ワード・
バッファ68のIWBアドレス位置に記憶される。イン
ストラクション・ワード・バッファ68は例えば超高速
度の半導体メモリであり、これには指定されたメモリ番
地に対する線67上で符号化されたインストラクション
の線が得られるように、線66のIWBアドレス信号に
より付勢されるゲート回路網が含まれている。
ァ68のロード(LD)アドレス入力に印加される。次
に、線67の信号に符号化されているインストラクショ
ンは線66を転送されるインストラクション・ワード・
バッファ68のIWBアドレス位置に記憶される。イン
ストラクション・ワード・バッファ68は例えば超高速
度の半導体メモリであり、これには指定されたメモリ番
地に対する線67上で符号化されたインストラクション
の線が得られるように、線66のIWBアドレス信号に
より付勢されるゲート回路網が含まれている。
独立している読み出し有効メモリ65は、符号化されて
いる線66のIWBアドレスをそのSET端子に入力し
ている。この実施例では、読み出し有効メモリ65に一
組のアドレス可能な1ビツト・レジスタ、即ち複数の7
リツプ・70ツブが備えられており、これらの7リツプ
・フロップはそれぞれインストラクション・ワード・バ
ッファ68のアドレスにより指定可能なので、各読み出
し有効メモリ65のアドレスとインストラクション・ワ
ード・バッファ68のアドレスとの間に完全な1対1の
対応が存在する。線66を介して読み出し有効メモリ6
5のSET入力にIWBアドレスを受け取ったときは、
これによってアドレス指定されたビットが論理1にセッ
トされる。
いる線66のIWBアドレスをそのSET端子に入力し
ている。この実施例では、読み出し有効メモリ65に一
組のアドレス可能な1ビツト・レジスタ、即ち複数の7
リツプ・70ツブが備えられており、これらの7リツプ
・フロップはそれぞれインストラクション・ワード・バ
ッファ68のアドレスにより指定可能なので、各読み出
し有効メモリ65のアドレスとインストラクション・ワ
ード・バッファ68のアドレスとの間に完全な1対1の
対応が存在する。線66を介して読み出し有効メモリ6
5のSET入力にIWBアドレスを受け取ったときは、
これによってアドレス指定されたビットが論理1にセッ
トされる。
読み出し有効メモリ65を読み出すために、線57のブ
ロック数及びm41b上に符号化されている下位ビット
はそれぞれ連結されて、読み出し有効メモリ65の読み
出し入力、即ちRD大入力印加されるアドレスの上位及
び下位ビットを形成する。このようにしてアドレス指定
されたフリップ・70ツブ、[1らレジスタの内容は論
理1又は論理Oにある線71の信号に符号化される。最
後に、共通のブロック番号を有する複数のフリップ・)
ロツブに線53のクリア信号(CLRBLK)を印加す
ることにより、これらを同時にクリア、又は論理0にセ
ットすることができる。
ロック数及びm41b上に符号化されている下位ビット
はそれぞれ連結されて、読み出し有効メモリ65の読み
出し入力、即ちRD大入力印加されるアドレスの上位及
び下位ビットを形成する。このようにしてアドレス指定
されたフリップ・70ツブ、[1らレジスタの内容は論
理1又は論理Oにある線71の信号に符号化される。最
後に、共通のブロック番号を有する複数のフリップ・)
ロツブに線53のクリア信号(CLRBLK)を印加す
ることにより、これらを同時にクリア、又は論理0にセ
ットすることができる。
インストラクション・ワード・バッファ68は線70の
信号に符号化された固有のインストラクション・ワード
をインストラクション・プロセッサ69に供給し、読み
出し有効メモリ65と同じような方法で読み出すために
、アドレス指定される。線70上に送出された各インス
トラクション・ワードのIW8アドレスは、線57上を
転送されるブロック番号を最上位ビットとして、また線
41bの信号の最下位ビットをIWBアドレスの最下位
ビットとして連結することにより形成される。インスト
ラクション・プロセッサ69は、線72のRUN信号が
論理1のときに、各インストラクションを実行する。こ
のRUN信号はANDゲート78から出力されている。
信号に符号化された固有のインストラクション・ワード
をインストラクション・プロセッサ69に供給し、読み
出し有効メモリ65と同じような方法で読み出すために
、アドレス指定される。線70上に送出された各インス
トラクション・ワードのIW8アドレスは、線57上を
転送されるブロック番号を最上位ビットとして、また線
41bの信号の最下位ビットをIWBアドレスの最下位
ビットとして連結することにより形成される。インスト
ラクション・プロセッサ69は、線72のRUN信号が
論理1のときに、各インストラクションを実行する。こ
のRUN信号はANDゲート78から出力されている。
ANDゲート78の入力の1つは読み出し有効メモリ6
5内の読み出し有効インディケータ・フリップ・70ツ
ブから供給されており、これは線57及び41bのIW
Bアドレスを選択し、またインストラクションを実行す
るときには論理1でなければならない。
5内の読み出し有効インディケータ・フリップ・70ツ
ブから供給されており、これは線57及び41bのIW
Bアドレスを選択し、またインストラクションを実行す
るときには論理1でなければならない。
線77上のANDゲート78の第2の入力も論理1でな
ければならないが、その出力源は以下で説明する。
ければならないが、その出力源は以下で説明する。
線72のRLIN及び線57及び41bの信号により形
成されたインストラクション・ワード・バッファ68の
アドレスは、同時にインストラクション・プロセッサ6
9に供給される。インストラクション・プロセッサ69
は線72のRU N−信号の論理値を検出し、もしこの
値が論理1であるときは$170の信号に符号化されて
いるインストラクション・ワードを実行する。線72の
論理値が論理Oのときに、!171が論理0にある限り
、インストラクション・プロセッサ69は線70上のイ
ンストラクションの実行を停止する。
成されたインストラクション・ワード・バッファ68の
アドレスは、同時にインストラクション・プロセッサ6
9に供給される。インストラクション・プロセッサ69
は線72のRU N−信号の論理値を検出し、もしこの
値が論理1であるときは$170の信号に符号化されて
いるインストラクション・ワードを実行する。線72の
論理値が論理Oのときに、!171が論理0にある限り
、インストラクション・プロセッサ69は線70上のイ
ンストラクションの実行を停止する。
先に述べたように本発明の目的から、線73及び74に
存在し、中央メモリ59のアドレスを指定する信号は、
インストラクション・プロセッサ69の出力のみである
と仮定することができ、次のインストラクションはこの
中央メモリ59から読み出さなければならない。典型的
な構造のコンピュータでは、実行順序に割り込みをする
特殊目的のインストラクション(分岐インストラクショ
ン)は除き、連続的に実行すべきインストラクション・
アドレスが大きな番号から順次配列されている。
存在し、中央メモリ59のアドレスを指定する信号は、
インストラクション・プロセッサ69の出力のみである
と仮定することができ、次のインストラクションはこの
中央メモリ59から読み出さなければならない。典型的
な構造のコンピュータでは、実行順序に割り込みをする
特殊目的のインストラクション(分岐インストラクショ
ン)は除き、連続的に実行すべきインストラクション・
アドレスが大きな番号から順次配列されている。
線74の信号に符号化されている分岐アドレス及び線7
3の増加信号は、実行アドレス・レジスタ40を形成す
る中央メモリ・アドレスの設定及び変更に用いられる。
3の増加信号は、実行アドレス・レジスタ40を形成す
る中央メモリ・アドレスの設定及び変更に用いられる。
インストラクション・プロセッサ69がインストラクシ
ョンを実行することにより、分岐アドレスが発生する度
に、実行アドレス・レジスタ40は線74の信号に符号
化されている分岐アドレスを読み込み、記憶する。イン
ストラクション・プロセッサ69が線73に増加信号を
発生する度に、実行アドレス・レジスタ40の内容は、
アドレス機構においてどのような定数増加値を用いよう
とも、殆ど変わることなく、1だけ増加される。実行ア
ドレス・レジスタ40の内容は、その名が示すように、
次に実行すべきインストラクションが配置されている中
央メモリ・アドレスを指定する。しかし、インストラク
ション・プロセッサ69は、インストラクション・ワー
ド・バッファ68から供給されたインストラクション・
ワードのみを実行することが想起される。従って、何よ
りも先ず、実行アドレス・レジスタ4oにアドレスを記
憶させているインストラクション・ワードがインストラ
クション・ワード・バッファ68に実際に存在している
か否かについて判断することが必要である。これがイエ
スであるならば、インストラクション・ワード・バッフ
ァ68のアドレスがインストラクション・ワードを実際
に存在する。
ョンを実行することにより、分岐アドレスが発生する度
に、実行アドレス・レジスタ40は線74の信号に符号
化されている分岐アドレスを読み込み、記憶する。イン
ストラクション・プロセッサ69が線73に増加信号を
発生する度に、実行アドレス・レジスタ40の内容は、
アドレス機構においてどのような定数増加値を用いよう
とも、殆ど変わることなく、1だけ増加される。実行ア
ドレス・レジスタ40の内容は、その名が示すように、
次に実行すべきインストラクションが配置されている中
央メモリ・アドレスを指定する。しかし、インストラク
ション・プロセッサ69は、インストラクション・ワー
ド・バッファ68から供給されたインストラクション・
ワードのみを実行することが想起される。従って、何よ
りも先ず、実行アドレス・レジスタ4oにアドレスを記
憶させているインストラクション・ワードがインストラ
クション・ワード・バッファ68に実際に存在している
か否かについて判断することが必要である。これがイエ
スであるならば、インストラクション・ワード・バッフ
ァ68のアドレスがインストラクション・ワードを実際
に存在する。
この関係を明確にするため、それぞれ異なるIWBブロ
ック番号を有し、識別用をする複数のプレフィックス・
レジスタ52が設けられている。
ック番号を有し、識別用をする複数のプレフィックス・
レジスタ52が設けられている。
従って、プレフィックス・レジスタ52の番号はインス
トラクション・ワード・バッファ68を分割するブロッ
ク数に等しい。複数のプレフイツクス・レジスタ52は
それぞれ異なるプレフィックス、又はIWBアドレスの
一部を形成してい久Q%中央メモリ・アドレスの部分を
記憶することができる。実行アドレス比較手段56はデ
ータ線79を介してプレフィックス・レジスタ52の全
内容を符号化した信号を入力し、それぞれ中央メモリ・
アドレスのプレフィックスと比較させる。このプレフィ
ックスは実行アドレス・レジスタ40に記憶され、かつ
線41aの信号に符号化されている。実行アドレス比較
手段56は2つの出力を有する。プレフィックス・レジ
スタ52の1つの内容と、線41a上を転送されるプレ
フィックスとの間が等しいのを検出すると、等号信号線
77に対する出力を論理1にセットし、先に述べたAN
Dゲート78の入力を満足させる。実行アドレス・レジ
スタ40におけるアドレスのプレフィックスに等しいプ
レフィックスを有するプレフィックス・レジスタ52が
1つもないときは、等号信号線77上の出力は論理0に
セットされ、ANDゲート78を減勢し、かつインスト
ラクション・プロセッサ69に対する線72上のRU
N信号を消去する。不等条件は、イン1スラクシヨン・
ワード・バッファ68に記憶されていないイン1ストラ
クシヨン・ワードの分岐アドレスにより、分岐インスト
ラクションを実行した結果が典型的なものである。また
、等号条件が検出されたときは、プレフィックス・レジ
スタ52の一つ(内容が実行アドレス・レジスタ4oに
記憶されている中火メモリ・アドレスのプレフィックス
に等しい)に割り付けられているブロック番号を線57
の信号に符号化し、xwsiみ出しアドレスの上位部分
として読み出し有効メモリ65及びインストラクション
・ワード・バッファ68へ供給する。この実施例の場合
、読み出し有効メモリ65及びインストラクション・ワ
ード・バッファ68に供給されるIWB読み出しアドレ
スの下位部分は、プレフィックスを形成してL1記実行
アドレス・レジスタ40におけるアドレス部分であり、
線57のブロック番号と連結される。これらは、プレフ
ィックスが例えば上位ビットからなるので(アドレスは
通常のバイナリにより表示されると仮定している)、便
宜的に中央メモリ・アドレスの最下位ビット(18B)
と呼ぶことができる。これは線41により概要的に表示
されており、線41はプレフィックスを転送する線41
aと、LSBを転送する線41bとに分岐される。この
ようにして、読み出し有効メモリ65から線71を介し
て符号化した読み出し有効インディケータを供給し、ま
たインストラクション・ワード・バッファ68から線7
0を介して符号化したイン1ストラクシヨン・ワード信
号を供給することになる。
トラクション・ワード・バッファ68を分割するブロッ
ク数に等しい。複数のプレフイツクス・レジスタ52は
それぞれ異なるプレフィックス、又はIWBアドレスの
一部を形成してい久Q%中央メモリ・アドレスの部分を
記憶することができる。実行アドレス比較手段56はデ
ータ線79を介してプレフィックス・レジスタ52の全
内容を符号化した信号を入力し、それぞれ中央メモリ・
アドレスのプレフィックスと比較させる。このプレフィ
ックスは実行アドレス・レジスタ40に記憶され、かつ
線41aの信号に符号化されている。実行アドレス比較
手段56は2つの出力を有する。プレフィックス・レジ
スタ52の1つの内容と、線41a上を転送されるプレ
フィックスとの間が等しいのを検出すると、等号信号線
77に対する出力を論理1にセットし、先に述べたAN
Dゲート78の入力を満足させる。実行アドレス・レジ
スタ40におけるアドレスのプレフィックスに等しいプ
レフィックスを有するプレフィックス・レジスタ52が
1つもないときは、等号信号線77上の出力は論理0に
セットされ、ANDゲート78を減勢し、かつインスト
ラクション・プロセッサ69に対する線72上のRU
N信号を消去する。不等条件は、イン1スラクシヨン・
ワード・バッファ68に記憶されていないイン1ストラ
クシヨン・ワードの分岐アドレスにより、分岐インスト
ラクションを実行した結果が典型的なものである。また
、等号条件が検出されたときは、プレフィックス・レジ
スタ52の一つ(内容が実行アドレス・レジスタ4oに
記憶されている中火メモリ・アドレスのプレフィックス
に等しい)に割り付けられているブロック番号を線57
の信号に符号化し、xwsiみ出しアドレスの上位部分
として読み出し有効メモリ65及びインストラクション
・ワード・バッファ68へ供給する。この実施例の場合
、読み出し有効メモリ65及びインストラクション・ワ
ード・バッファ68に供給されるIWB読み出しアドレ
スの下位部分は、プレフィックスを形成してL1記実行
アドレス・レジスタ40におけるアドレス部分であり、
線57のブロック番号と連結される。これらは、プレフ
ィックスが例えば上位ビットからなるので(アドレスは
通常のバイナリにより表示されると仮定している)、便
宜的に中央メモリ・アドレスの最下位ビット(18B)
と呼ぶことができる。これは線41により概要的に表示
されており、線41はプレフィックスを転送する線41
aと、LSBを転送する線41bとに分岐される。この
ようにして、読み出し有効メモリ65から線71を介し
て符号化した読み出し有効インディケータを供給し、ま
たインストラクション・ワード・バッファ68から線7
0を介して符号化したイン1ストラクシヨン・ワード信
号を供給することになる。
先に述べたように、本発明は、インストラクション・ア
ドレス用のルックアヘッド・レジスタを採用しているデ
ィジタル・コンピュータ・システム用に特に適しており
、インストラクション・ワード・バッファ68に対する
要求が最終的に確定する前に、インストラクション・ア
ドレスのルックアヘッドによって後の実行の際の先頭と
なると思われるインストラクションをインストラクショ
ン・ワード・バッファ68に配置させるものである。結
局、これらを実行すると、実行速度が高められる。これ
らを実行しなかったときは、不必要な中央メモリ要求が
少しばかり発行されるだけである。インストラクション
・ルックアヘッド機能はルックアヘッド・アドレス・レ
ジスタ42に記憶されているアドレスにより制御される
。典型的なものとして、分岐インストラクションの実行
により一つのアドレスが生成されたときは、ルックアヘ
ッド・アドレス・レジスタ42の初期アドレスを線74
を介してインストラクション・プロセッサ69から受け
取る。分岐又は他のインストラクションがシーフェンス
外の中央メモリ・アドレスの参照を発生する度に、新し
いこのアドレスがルックアヘッド・アドレス・レジスタ
42に記憶される。通常、インストラクション・プロセ
ッサ69により実行した非分岐インストラクションはル
ックアヘッド・アドレス・レジスタ42の内容には影響
を与えない。
ドレス用のルックアヘッド・レジスタを採用しているデ
ィジタル・コンピュータ・システム用に特に適しており
、インストラクション・ワード・バッファ68に対する
要求が最終的に確定する前に、インストラクション・ア
ドレスのルックアヘッドによって後の実行の際の先頭と
なると思われるインストラクションをインストラクショ
ン・ワード・バッファ68に配置させるものである。結
局、これらを実行すると、実行速度が高められる。これ
らを実行しなかったときは、不必要な中央メモリ要求が
少しばかり発行されるだけである。インストラクション
・ルックアヘッド機能はルックアヘッド・アドレス・レ
ジスタ42に記憶されているアドレスにより制御される
。典型的なものとして、分岐インストラクションの実行
により一つのアドレスが生成されたときは、ルックアヘ
ッド・アドレス・レジスタ42の初期アドレスを線74
を介してインストラクション・プロセッサ69から受け
取る。分岐又は他のインストラクションがシーフェンス
外の中央メモリ・アドレスの参照を発生する度に、新し
いこのアドレスがルックアヘッド・アドレス・レジスタ
42に記憶される。通常、インストラクション・プロセ
ッサ69により実行した非分岐インストラクションはル
ックアヘッド・アドレス・レジスタ42の内容には影響
を与えない。
ディジタル加算器44は線41を介して実行アドレス・
レジスタ40のアドレスを受け取り、これに線45を介
して外部(第2図に関して)から供給される最大ルック
アヘッド・カウントを加算する。これら2値の和を線4
6の信号に符号化して比較手段47の第1の入力に供給
する。比較手段47はルックアヘッド・アドレス・レジ
スタ42に記憶されているアドレスを符号化した信号も
線43から受け取り、線43上の信号のアドレスがライ
ン46の信号におけるアドレスに等しいか、又はこれよ
り大きいとぎは、$148上の出力信号を論理1にセッ
トする。従って、ANDゲート50はディセーブルされ
、線49に論理Oを符号化した信号を出力する。この論
理Oはルックアヘッド・アドレス・レジスタ42の内容
をこれ以上増加するのを禁止する。ルックアヘッド・ア
ドレス・レジスタ42にのアドレスが実行アドレス・レ
ジスタ4oの内容と最大ルックアヘッド・カウントとの
和よりも小さいときは、比較手段47はライン48上に
論理1を送出する。従って、線45の信号における最大
ルックアヘッド・カウントと、実行アドレス・レジスタ
40に記憶されていたアドレスどの和がルックアヘッド
・アドレス・レジスタ42の内容よりも小さいか、又は
これに等しいときは、ルックアヘッド・アドレス・レジ
スタ42の内容を増加させることはできない。
レジスタ40のアドレスを受け取り、これに線45を介
して外部(第2図に関して)から供給される最大ルック
アヘッド・カウントを加算する。これら2値の和を線4
6の信号に符号化して比較手段47の第1の入力に供給
する。比較手段47はルックアヘッド・アドレス・レジ
スタ42に記憶されているアドレスを符号化した信号も
線43から受け取り、線43上の信号のアドレスがライ
ン46の信号におけるアドレスに等しいか、又はこれよ
り大きいとぎは、$148上の出力信号を論理1にセッ
トする。従って、ANDゲート50はディセーブルされ
、線49に論理Oを符号化した信号を出力する。この論
理Oはルックアヘッド・アドレス・レジスタ42の内容
をこれ以上増加するのを禁止する。ルックアヘッド・ア
ドレス・レジスタ42にのアドレスが実行アドレス・レ
ジスタ4oの内容と最大ルックアヘッド・カウントとの
和よりも小さいときは、比較手段47はライン48上に
論理1を送出する。従って、線45の信号における最大
ルックアヘッド・カウントと、実行アドレス・レジスタ
40に記憶されていたアドレスどの和がルックアヘッド
・アドレス・レジスタ42の内容よりも小さいか、又は
これに等しいときは、ルックアヘッド・アドレス・レジ
スタ42の内容を増加させることはできない。
さて、線64上の信号も論理1であると一時的に仮定す
ると、ANDゲート50は[149を介するルックアヘ
ッド・アドレス・レジスタ42の増加信号を論3Ili
にしてその内容を増加させ、中央メモリ59においで続
く次のインストラクションの位置を指定する。従って、
インストラクション・プロセッサ69により、ルックア
ヘッド・アドレス・レジスタ42の内容を非分岐のイン
ストラクション・シーフェンスから非同期的に、かつ独
立して進め、実行することができるのは明らかである。
ると、ANDゲート50は[149を介するルックアヘ
ッド・アドレス・レジスタ42の増加信号を論3Ili
にしてその内容を増加させ、中央メモリ59においで続
く次のインストラクションの位置を指定する。従って、
インストラクション・プロセッサ69により、ルックア
ヘッド・アドレス・レジスタ42の内容を非分岐のイン
ストラクション・シーフェンスから非同期的に、かつ独
立して進め、実行することができるのは明らかである。
このような分岐インストラクションを記憶している番地
からインストラクション・シーフェンスが離れている番
地へプログラムが分岐をしている間に、実行されるイン
ストラクションの割り合いが非常に小さいことは、コン
ピュータ技術に習熟している者に明らかである。従って
、多くの場合、ルックアヘッド機能は、前に実行したイ
ンストラクションがしばらくインストラクション・ワー
ド・バッファ68に残っている事実と組み合わせると、
大抵のインストラクションを直ちにバッファ58から読
み出して実行することが可能となる。
からインストラクション・シーフェンスが離れている番
地へプログラムが分岐をしている間に、実行されるイン
ストラクションの割り合いが非常に小さいことは、コン
ピュータ技術に習熟している者に明らかである。従って
、多くの場合、ルックアヘッド機能は、前に実行したイ
ンストラクションがしばらくインストラクション・ワー
ド・バッファ68に残っている事実と組み合わせると、
大抵のインストラクションを直ちにバッファ58から読
み出して実行することが可能となる。
ルックアヘッド・アドレス−レジスタ42に形成されて
いる各中央メモリ・アドレスを用い、これに記憶してい
るインストラクション・ワードに対する中央メモリ・ア
ドレス要求を発生することができる。ルックアヘッド・
アドレス・レジスタ42に記憶されているアドレス・プ
レフィックスにg11連する処理は、実行アドレス・レ
ジスタ40に記憶されているプレフィックスに対する処
理と同じような方法で実行される。ルックアヘッド・ア
ドレス比較手段54は線79のプレフィックス・レジス
タ52の内容を受け取り、これに記憶されていた各プレ
フィックスと、線43の信号に符号化されたルックアヘ
ッド・アドレス・レジスタ42内のアドレスのプレフィ
ックスとを比較する。
いる各中央メモリ・アドレスを用い、これに記憶してい
るインストラクション・ワードに対する中央メモリ・ア
ドレス要求を発生することができる。ルックアヘッド・
アドレス・レジスタ42に記憶されているアドレス・プ
レフィックスにg11連する処理は、実行アドレス・レ
ジスタ40に記憶されているプレフィックスに対する処
理と同じような方法で実行される。ルックアヘッド・ア
ドレス比較手段54は線79のプレフィックス・レジス
タ52の内容を受け取り、これに記憶されていた各プレ
フィックスと、線43の信号に符号化されたルックアヘ
ッド・アドレス・レジスタ42内のアドレスのプレフィ
ックスとを比較する。
(ルックアヘッド・アドレス・レジスタ42におけるア
ドレスのプレフィックスが分岐インストラクションの実
行により、又は増加により常に変更される対象でもある
ので、)ここでもルックアヘッド・アドレス・レジスタ
42に記憶されているプレフィックスがプレフィックス
・レジスタ52に記憶されているものに等しいという保
証はなく、従ってプレフィックス・レジスタ52のうち
の1つの内容をルックアヘッド・アドレス・レジスタ4
2に含まれているプレフィックスにより置換する準備を
実行する。この処理は、線55の等号信号により開始さ
れる。線55の等号信号は、線77を介する実行アドレ
ス比較手段56の信号によるものと同じように、ルック
アヘッド・アドレス・レジスタ42のプレフィックス・
レジスタ52に記憶されているプレフィックスのいずれ
かと等しいか、又は等しくないかを表わしている。線5
5の等号信号は、等しい状態が検出されたときは論理1
にあり、それ以外のときは論理Oにあると見做すことが
できる。バッファ・アドレス割り付け手段51は、線5
5の等号信号が論理Oとなるのに応答して線53の信号
に符号化され、かつ線43aの信号に符号化されたブロ
ック番号を供給する。線53の信号は、全てのプレフィ
ックス・レジスタ52から当該のブロック番号を有する
プレフィックス・レジスタ52がルックアヘッド・アド
レス・レジスタ42から1143aの信号に符号化され
たプレフィックスを受け取って記憶させることができる
ようにする信号である。バッファ・アドレス割り付け手
段51によるプレフィックス・レジスタ52の割り付け
の基本はここでは重要なことではない。簡単な一解決方
法としてブロック番号を増加させ、その最大値のものか
ら最少値のものへ戻すものがある。他の解決方法として
いわゆる最少最新利用(LRU)アルゴリズムを保持す
るものがあり、この場合のプレフィックス・レジスタ5
2はプレフィックスを置換しており、LRtJプレフィ
ックスを含むものである。
ドレスのプレフィックスが分岐インストラクションの実
行により、又は増加により常に変更される対象でもある
ので、)ここでもルックアヘッド・アドレス・レジスタ
42に記憶されているプレフィックスがプレフィックス
・レジスタ52に記憶されているものに等しいという保
証はなく、従ってプレフィックス・レジスタ52のうち
の1つの内容をルックアヘッド・アドレス・レジスタ4
2に含まれているプレフィックスにより置換する準備を
実行する。この処理は、線55の等号信号により開始さ
れる。線55の等号信号は、線77を介する実行アドレ
ス比較手段56の信号によるものと同じように、ルック
アヘッド・アドレス・レジスタ42のプレフィックス・
レジスタ52に記憶されているプレフィックスのいずれ
かと等しいか、又は等しくないかを表わしている。線5
5の等号信号は、等しい状態が検出されたときは論理1
にあり、それ以外のときは論理Oにあると見做すことが
できる。バッファ・アドレス割り付け手段51は、線5
5の等号信号が論理Oとなるのに応答して線53の信号
に符号化され、かつ線43aの信号に符号化されたブロ
ック番号を供給する。線53の信号は、全てのプレフィ
ックス・レジスタ52から当該のブロック番号を有する
プレフィックス・レジスタ52がルックアヘッド・アド
レス・レジスタ42から1143aの信号に符号化され
たプレフィックスを受け取って記憶させることができる
ようにする信号である。バッファ・アドレス割り付け手
段51によるプレフィックス・レジスタ52の割り付け
の基本はここでは重要なことではない。簡単な一解決方
法としてブロック番号を増加させ、その最大値のものか
ら最少値のものへ戻すものがある。他の解決方法として
いわゆる最少最新利用(LRU)アルゴリズムを保持す
るものがあり、この場合のプレフィックス・レジスタ5
2はプレフィックスを置換しており、LRtJプレフィ
ックスを含むものである。
(LRU置換アルゴリズムの場合は、バッファ・アドレ
ス割り付け手段51に使用履歴を入力できるものでなけ
ればならず、点線62aはこのためのものである。) 何れにしてもルックアヘッド・アドレス・レジスタ42
に含まれているプレフィックスが線43aを介してプレ
フィックス・レジスタ52の一つに一旦転送されると、
ルックアヘッド・アドレス比較手段54により実行され
た比較により等号状態が検出され、線55上の等号信号
が論理1にセットされ、かつルックアヘッド・アドレス
・レジスタ42において内容がアドレスのブレクイ4ツ
クスと等しいプレフィックス・レジスタ52のブロック
番号が線62から得られる。
ス割り付け手段51に使用履歴を入力できるものでなけ
ればならず、点線62aはこのためのものである。) 何れにしてもルックアヘッド・アドレス・レジスタ42
に含まれているプレフィックスが線43aを介してプレ
フィックス・レジスタ52の一つに一旦転送されると、
ルックアヘッド・アドレス比較手段54により実行され
た比較により等号状態が検出され、線55上の等号信号
が論理1にセットされ、かつルックアヘッド・アドレス
・レジスタ42において内容がアドレスのブレクイ4ツ
クスと等しいプレフィックス・レジスタ52のブロック
番号が線62から得られる。
さて、この条件がここで開示する本発明の要旨であるこ
とを念頭に置いて、この条件における書き込み有効メモ
リ63及びこれに国連する素子の動作を説明しよう。書
き込み有効メモリ63の構造及び動作は書き込み有効メ
モリ63の動作に非常に良く似ていると共に、第1図の
書き込み有効メモリ29の動作にも似ている。書き込み
有効メモリ63は各ステータス・インディケータ(この
実施例では1ビツトからなる。)を記憶することができ
る複数の記憶位置を有する。各記憶位置は、インストラ
クション・ワード・バッファ68の1アドレスにのみに
関連する固有のアドレスを有し、この実施例ではこのア
ドレスに関連させたインストラクション・ワード・バッ
ファ68に等しい。
とを念頭に置いて、この条件における書き込み有効メモ
リ63及びこれに国連する素子の動作を説明しよう。書
き込み有効メモリ63の構造及び動作は書き込み有効メ
モリ63の動作に非常に良く似ていると共に、第1図の
書き込み有効メモリ29の動作にも似ている。書き込み
有効メモリ63は各ステータス・インディケータ(この
実施例では1ビツトからなる。)を記憶することができ
る複数の記憶位置を有する。各記憶位置は、インストラ
クション・ワード・バッファ68の1アドレスにのみに
関連する固有のアドレスを有し、この実施例ではこのア
ドレスに関連させたインストラクション・ワード・バッ
ファ68に等しい。
書き込み有効メモリ63の位置に記憶されている各ステ
ータス・インディケータは、第1及び第2の値を有し、
これらは便宜的に論理1及び論理0の値にそれぞれ対応
しているものと見做してよい。
ータス・インディケータは、第1及び第2の値を有し、
これらは便宜的に論理1及び論理0の値にそれぞれ対応
しているものと見做してよい。
書き込み有効メモリ63のアドレス空間を例えば連結さ
せることによって、インストラクション・ワード・バッ
ファ68のように、種々に定められている固有のプレフ
ィックス・レジスタ52の1ブロック番号を最上位ビッ
トとして中央メモリ・アドレスの最下位ビットと連結さ
せ、書き込み有効メモリ63の1メモリ位置の固有なア
ドレスを形成することができる。従って、与えられたブ
ロック番号は1グループの書き込み有効メモリ63のア
ドレスをも定める。
せることによって、インストラクション・ワード・バッ
ファ68のように、種々に定められている固有のプレフ
ィックス・レジスタ52の1ブロック番号を最上位ビッ
トとして中央メモリ・アドレスの最下位ビットと連結さ
せ、書き込み有効メモリ63の1メモリ位置の固有なア
ドレスを形成することができる。従って、与えられたブ
ロック番号は1グループの書き込み有効メモリ63のア
ドレスをも定める。
書き込み有効メモリ63は、書き込み有効メモリ65の
ように、個々にメモリ番地のセット(SET)又は読み
出しくRD)を有し、1ブロック番号により識別される
複数のグループのメモリ番地をクリア即ち論理0にセッ
トすることができる。バッファ・アドレス割り付け手段
51によってプレフィックス・レジスタ52に記憶され
ているプレフィックスを変更させ、1153の信号に符
号化されているブロック番号を書き込み有効メモリ63
のクリア(CLRBLK)入力に印加し、当該のブロッ
ク番号を含むアドレスを有するグループの記憶位置をク
リアさせ、又はそれらの第1の値即ち論理0値にセット
させる。新しいバッファ・アドレスの割り付けを実行す
る度に、線53の信号に符号化されているブロック番号
を書き込み゛有効メモリ63のCLRBLK入力に印加
することによって、これらのメモリ番地がそれらの論理
0の値にセットされていることを確認させる。ルックア
ヘッド・アドレス比較手段54は、プレフィックス・レ
ジスタ52の1つの内容と、ルックアヘッド・アドレス
・レジスタ42に記憶されているアドレスのプレフィッ
クスとの間が等しいのを検出する度に、線55の等号信
号を論理1にセットする。更に、ルックアヘッド・アド
レス比較手段54は等しいプレフィックスを記憶してい
るプレフィックス・レジスタ52のブロック番号を表わ
す信号を線62に送出する。
ように、個々にメモリ番地のセット(SET)又は読み
出しくRD)を有し、1ブロック番号により識別される
複数のグループのメモリ番地をクリア即ち論理0にセッ
トすることができる。バッファ・アドレス割り付け手段
51によってプレフィックス・レジスタ52に記憶され
ているプレフィックスを変更させ、1153の信号に符
号化されているブロック番号を書き込み有効メモリ63
のクリア(CLRBLK)入力に印加し、当該のブロッ
ク番号を含むアドレスを有するグループの記憶位置をク
リアさせ、又はそれらの第1の値即ち論理0値にセット
させる。新しいバッファ・アドレスの割り付けを実行す
る度に、線53の信号に符号化されているブロック番号
を書き込み゛有効メモリ63のCLRBLK入力に印加
することによって、これらのメモリ番地がそれらの論理
0の値にセットされていることを確認させる。ルックア
ヘッド・アドレス比較手段54は、プレフィックス・レ
ジスタ52の1つの内容と、ルックアヘッド・アドレス
・レジスタ42に記憶されているアドレスのプレフィッ
クスとの間が等しいのを検出する度に、線55の等号信
号を論理1にセットする。更に、ルックアヘッド・アド
レス比較手段54は等しいプレフィックスを記憶してい
るプレフィックス・レジスタ52のブロック番号を表わ
す信号を線62に送出する。
I!1I62上のブロック番号信号はIWBアドレス・
ゲート75のブロック番号入力に印加される。
ゲート75のブロック番号入力に印加される。
これと同時に、ルックアヘッド・アドレス・レジスタ4
2に記憶されているアドレスの最下位ビットも1I43
bを介してIWBアドレス・ゲート75の最下位入力に
印加される。1182及び43bを介してIWBアドレ
ス・ゲート75に入力される上位部としてのブロック番
号を連結して書き込み有効メモリ63におけるメモリ位
置のアドレスを形成する。IWBアドレス・ゲート75
は線61の要求信号により付勢され、線62の信号に符
号化されている連結ブロック番号と、線43b上の信号
に符号化されている最下位ビットとを線76上のIWB
アドレスとして書き込み有効メモリ63のセラ1〜入力
に供給させる。線76上に符号化されている値は、書き
込み有効メモリ63内の特定のメモリ位置のアドレスを
表わしているので、このようにして指定されたメモリ位
置を論理1即ち第2の値にセラ]−させる。
2に記憶されているアドレスの最下位ビットも1I43
bを介してIWBアドレス・ゲート75の最下位入力に
印加される。1182及び43bを介してIWBアドレ
ス・ゲート75に入力される上位部としてのブロック番
号を連結して書き込み有効メモリ63におけるメモリ位
置のアドレスを形成する。IWBアドレス・ゲート75
は線61の要求信号により付勢され、線62の信号に符
号化されている連結ブロック番号と、線43b上の信号
に符号化されている最下位ビットとを線76上のIWB
アドレスとして書き込み有効メモリ63のセラ1〜入力
に供給させる。線76上に符号化されている値は、書き
込み有効メモリ63内の特定のメモリ位置のアドレスを
表わしているので、このようにして指定されたメモリ位
置を論理1即ち第2の値にセラ]−させる。
Ia62の信号におけるブロック番号を書き込み有効メ
モリ63の読み出しく RD )入力に印加して書き込
み有効メモリ63を読み出し、このブロック番号に対し
て線43bの信号に符号化されている最下位ビットを連
結し、組み合わせたIWBI読み出しアドレスを形成す
る。このようにして形成されたアドレスにより、メモリ
位置の内容を書き込みステータス・インディケータとし
て線64の信号に符号化する。線64上の書き込みステ
ータス・インディケータは小さな丸印しにより示すAN
Dゲート60のいわゆる1゛反転」入力に供給されるた
めに、論理1ではなく、論理OがANDゲート600Å
力を満足するものとなる。l1155を介するルックア
ヘッド・アドレス比較手段54の等号信号はANDゲー
ト60の第2の入力に供給される。等号状態が検出され
たときは、論理1が線55に送出されることを想起する
に、この値は規約によりANDゲート60の入力を満足
するものとなる。BUSY信号は中央メモリ59から1
!58を介してANDゲート60の第3人力に供給され
る。もう1度想起するに、論理1のBLJSY信号は、
中央メモリ59のアドレス・キューが1143の信号か
ら他の中央メモリ・アドレス、及び線62の信号に符号
化されている関連のブロック番号を受け付けることがで
きることを意味している。ANDゲート60の入力にお
ける3つの条件が全て満足されたときは、線61に論理
1の信号が出力され、この信号により中央メモリ59に
対する要求(REQ)信号が形成される。線61の要求
信号は[143の信号に中央メモリ・アドレスを配列し
、かつこれに関連するブロック番号を1162を介して
アドレス・キューに配列する。線61の要求信号もIW
Bアドレス・ゲート75を付勢して開にし、ルックアヘ
ッド・アドレス・レジスタ42に記憶され、かつI!4
3b上の信号に符号化されたアドレスの最下位ビットを
線76を介して書き込み有効メモリ63に導く。これに
より、線64のステータス・インディケータを論理1に
変更させ、線61の要求信号を減勢させることにより、
新しいルックアヘッド・アドレスが得られるまで、中央
メモリ59に他の中央メモリ・アドレス及び関連するブ
ロック番号を入力するのを禁止する。
モリ63の読み出しく RD )入力に印加して書き込
み有効メモリ63を読み出し、このブロック番号に対し
て線43bの信号に符号化されている最下位ビットを連
結し、組み合わせたIWBI読み出しアドレスを形成す
る。このようにして形成されたアドレスにより、メモリ
位置の内容を書き込みステータス・インディケータとし
て線64の信号に符号化する。線64上の書き込みステ
ータス・インディケータは小さな丸印しにより示すAN
Dゲート60のいわゆる1゛反転」入力に供給されるた
めに、論理1ではなく、論理OがANDゲート600Å
力を満足するものとなる。l1155を介するルックア
ヘッド・アドレス比較手段54の等号信号はANDゲー
ト60の第2の入力に供給される。等号状態が検出され
たときは、論理1が線55に送出されることを想起する
に、この値は規約によりANDゲート60の入力を満足
するものとなる。BUSY信号は中央メモリ59から1
!58を介してANDゲート60の第3人力に供給され
る。もう1度想起するに、論理1のBLJSY信号は、
中央メモリ59のアドレス・キューが1143の信号か
ら他の中央メモリ・アドレス、及び線62の信号に符号
化されている関連のブロック番号を受け付けることがで
きることを意味している。ANDゲート60の入力にお
ける3つの条件が全て満足されたときは、線61に論理
1の信号が出力され、この信号により中央メモリ59に
対する要求(REQ)信号が形成される。線61の要求
信号は[143の信号に中央メモリ・アドレスを配列し
、かつこれに関連するブロック番号を1162を介して
アドレス・キューに配列する。線61の要求信号もIW
Bアドレス・ゲート75を付勢して開にし、ルックアヘ
ッド・アドレス・レジスタ42に記憶され、かつI!4
3b上の信号に符号化されたアドレスの最下位ビットを
線76を介して書き込み有効メモリ63に導く。これに
より、線64のステータス・インディケータを論理1に
変更させ、線61の要求信号を減勢させることにより、
新しいルックアヘッド・アドレスが得られるまで、中央
メモリ59に他の中央メモリ・アドレス及び関連するブ
ロック番号を入力するのを禁止する。
場合によっては、線62の信号に符号化されているブロ
ック番号と、843の信号に符号化されている最下位ビ
ットとを連結させて書き込み有効メモリ63のアドレス
を形成し、そのステータス値を論理1にする。これは、
アドレスが中央メモリ59のアドレス・キューに既に配
列されていることを少なくとも意味している。(実際に
は、関連する中央メモリ・アドレスにより指定された番
地のインストラクション・ワードは既に読み出され、線
67に送出され、かつインストラクション・ワード・バ
ッファ68にロードされている。)いずれにしろ、線6
4の論理1はANDゲート60をディセーブルし、以下
、線6・1の要求信号を発生して中央メモリ59に不要
な参照をし、要求を出したインストラクション・ワード
を読み出すことを阻止する。従って、中央メモリ59の
アドレス・キュー内のアドレスが1回以上現れるのを阻
止する。このことから、インストラクションが既にイン
ストラクション・ワード・バッファ68にロードされて
いたときは、中央メモリ59からインストラクション・
ワードを再び読み出すことも阻止される。
ック番号と、843の信号に符号化されている最下位ビ
ットとを連結させて書き込み有効メモリ63のアドレス
を形成し、そのステータス値を論理1にする。これは、
アドレスが中央メモリ59のアドレス・キューに既に配
列されていることを少なくとも意味している。(実際に
は、関連する中央メモリ・アドレスにより指定された番
地のインストラクション・ワードは既に読み出され、線
67に送出され、かつインストラクション・ワード・バ
ッファ68にロードされている。)いずれにしろ、線6
4の論理1はANDゲート60をディセーブルし、以下
、線6・1の要求信号を発生して中央メモリ59に不要
な参照をし、要求を出したインストラクション・ワード
を読み出すことを阻止する。従って、中央メモリ59の
アドレス・キュー内のアドレスが1回以上現れるのを阻
止する。このことから、インストラクションが既にイン
ストラクション・ワード・バッファ68にロードされて
いたときは、中央メモリ59からインストラクション・
ワードを再び読み出すことも阻止される。
完全かつ論理的に矛盾のないようにするため、プレフィ
ックス・レジスタ52の割り付けを変更したときは、中
央メモリ59のアドレス・キューをクリアしてアドレス
・キューから当該のブロック番号に関連した中央メモリ
・アドレス要求を排除し、これらのインストラクション
・ワード・バッファ68のメモリ位置に古いインストラ
クション・ワードがロードされるのを阻止する必要があ
ることを述べて置かねばならない。これを達成する方法
は種々ある。一つのブロック番号にそれぞれ関連させた
111のカウンタを備えて、そのブロック番号に関連す
る中央メモリ・アドレスがアドレス・キューに登録され
る度にこのカウンタを1つ進めてもよく、また線66に
送出される信号が当該カウンタの関連ブロックに対応す
るブロック番号のバッファ・アドレスを符号化する度に
1だけ減少させてもよい。プレフィックス・レジスタ5
2のプレフィックスを変更したときは、当該のブロック
番号を有するバッファ・アドレスに、関連して発行する
インストラクション・ワードが無視され、当該カウンタ
の値がOに減少するまでは、当該のブロック番号に関連
した読み出し有効メモリ・ステータス・ワードの設定を
禁止する。これとは別に、アドレス・キューを直接調べ
、かつ各メモリ・アドレス及びこれに1111するブロ
ック番号を消去してもよい。ただし、このブロック番号
はプレフィックスを変更したプレフィックス・レジスタ
52のものである。この問題とその解決は、書き込み有
効メモリ63の存在又は非存在に関係のないことであり
、実際のところ選択した特定の実施例に係わらず、処理
しなければならない問題である。
ックス・レジスタ52の割り付けを変更したときは、中
央メモリ59のアドレス・キューをクリアしてアドレス
・キューから当該のブロック番号に関連した中央メモリ
・アドレス要求を排除し、これらのインストラクション
・ワード・バッファ68のメモリ位置に古いインストラ
クション・ワードがロードされるのを阻止する必要があ
ることを述べて置かねばならない。これを達成する方法
は種々ある。一つのブロック番号にそれぞれ関連させた
111のカウンタを備えて、そのブロック番号に関連す
る中央メモリ・アドレスがアドレス・キューに登録され
る度にこのカウンタを1つ進めてもよく、また線66に
送出される信号が当該カウンタの関連ブロックに対応す
るブロック番号のバッファ・アドレスを符号化する度に
1だけ減少させてもよい。プレフィックス・レジスタ5
2のプレフィックスを変更したときは、当該のブロック
番号を有するバッファ・アドレスに、関連して発行する
インストラクション・ワードが無視され、当該カウンタ
の値がOに減少するまでは、当該のブロック番号に関連
した読み出し有効メモリ・ステータス・ワードの設定を
禁止する。これとは別に、アドレス・キューを直接調べ
、かつ各メモリ・アドレス及びこれに1111するブロ
ック番号を消去してもよい。ただし、このブロック番号
はプレフィックスを変更したプレフィックス・レジスタ
52のものである。この問題とその解決は、書き込み有
効メモリ63の存在又は非存在に関係のないことであり
、実際のところ選択した特定の実施例に係わらず、処理
しなければならない問題である。
本発明により達成可能な効果はディジタル・コンピュー
タにおいてのみ得られるものであり、このディジタル・
コンピュータとはその通常のアドレス指定モードが所定
のシーフェンス形式にあり、かつインストラクション・
シーフェンスにおいて比較離れたアドレスへ分岐するイ
ンストラクションによってかなり頻繁にインタラブドさ
れるものであることを強調しておかねばならない。その
第1の条件は、最近のストアード・プログラム・コンピ
ュータ用の通常のハードウェア構造のものである。その
第2の条件は、慎重なプログラム設計により達成可能な
ものである。先に述べたように、同時的な、即ち中央メ
モリの番地に対するインストラクション・ワード・バッ
ファ68におけるメモリ位置をブロック番号に割り付け
ること、及び中央メモリ59におけるアドレス・キュー
即ちパイプライン構造を用いることも望ましい。このよ
うな第3の条件は、1回に1つを基本として、中央メモ
リーアドレスにIWB読み出しアドレスの割り付けをし
たときは、通常は割り付け後、直ちに中央メモリ59が
インストラクション・ワードを要求することがあり得る
ので、書き込み有効メモリ63の使用を確認するために
必要となる。その第4の条件は、アドレス・キュー即ち
パイプラインを用いず、任意の時間に中央メモリ59の
1参照のみを処理し、かつ読み出し有効メモリ65が中
央メモリ59による読み出し要求の受け付けを検知する
機能に役立つときは、必要となる。
タにおいてのみ得られるものであり、このディジタル・
コンピュータとはその通常のアドレス指定モードが所定
のシーフェンス形式にあり、かつインストラクション・
シーフェンスにおいて比較離れたアドレスへ分岐するイ
ンストラクションによってかなり頻繁にインタラブドさ
れるものであることを強調しておかねばならない。その
第1の条件は、最近のストアード・プログラム・コンピ
ュータ用の通常のハードウェア構造のものである。その
第2の条件は、慎重なプログラム設計により達成可能な
ものである。先に述べたように、同時的な、即ち中央メ
モリの番地に対するインストラクション・ワード・バッ
ファ68におけるメモリ位置をブロック番号に割り付け
ること、及び中央メモリ59におけるアドレス・キュー
即ちパイプライン構造を用いることも望ましい。このよ
うな第3の条件は、1回に1つを基本として、中央メモ
リーアドレスにIWB読み出しアドレスの割り付けをし
たときは、通常は割り付け後、直ちに中央メモリ59が
インストラクション・ワードを要求することがあり得る
ので、書き込み有効メモリ63の使用を確認するために
必要となる。その第4の条件は、アドレス・キュー即ち
パイプラインを用いず、任意の時間に中央メモリ59の
1参照のみを処理し、かつ読み出し有効メモリ65が中
央メモリ59による読み出し要求の受け付けを検知する
機能に役立つときは、必要となる。
この実施例においては、編き込み有効メモリ63のアド
レス決定に最下位ビットを用い、また個々のプレフィッ
クスの記憶に4つのプレフィックス・レジスタ52を用
いる。従って、これらのパラメータは64メモリ位置と
、6ビツト・アドレスとを有するインストラクション・
ワード・バッファ68を決定し、そのうちの2ビツトは
ブロック番号を決定し、また4ビツトは最下位ビットを
決定する。従って、それぞれ16インストラクシヨン・
ワードの4ブロツクが存在する。他の組合わせや、大き
さも可能なことは、明らかである。
レス決定に最下位ビットを用い、また個々のプレフィッ
クスの記憶に4つのプレフィックス・レジスタ52を用
いる。従って、これらのパラメータは64メモリ位置と
、6ビツト・アドレスとを有するインストラクション・
ワード・バッファ68を決定し、そのうちの2ビツトは
ブロック番号を決定し、また4ビツトは最下位ビットを
決定する。従って、それぞれ16インストラクシヨン・
ワードの4ブロツクが存在する。他の組合わせや、大き
さも可能なことは、明らかである。
第2図に示した装置の動作を理解するために、中央メモ
リ59は第1表に示すようにアドスレス10 000(
16進)で始まるインストラクションを有するものと仮
定する。更に、プレフィックスとして用いる上位4デイ
ジツト及び下位ディジットはIW8読み出しアドレスの
LSB (4ビツト)を形成する。従って、アドレス 10 00Aの場合、プレフィックスは1000であり
、LSBは10192 (−A 16)である。個々のインストラクション・ワ
ードの厳密な機能は、分岐インストラクションか又は非
分岐インストラクションかということを除き、不定であ
るので、これらの機能の他の特徴は省略されている。更
に、[45に供給される最大ルックアヘッド・カウント
は8であると仮定する。インストラクション・ワード・
バッファ68にはアドレス10 000〜10 01F
が存在すると仮定する。各プレフィックス・レジスタ5
2にはプレフィックス1 000が含まれていないと仮
定する。更に、インストラクション・シーフェンスにお
けるリモー]・・インストラクション・ワードからの分
岐はI!1174の信号に値10 000を供給するも
のと仮定する。
リ59は第1表に示すようにアドスレス10 000(
16進)で始まるインストラクションを有するものと仮
定する。更に、プレフィックスとして用いる上位4デイ
ジツト及び下位ディジットはIW8読み出しアドレスの
LSB (4ビツト)を形成する。従って、アドレス 10 00Aの場合、プレフィックスは1000であり
、LSBは10192 (−A 16)である。個々のインストラクション・ワ
ードの厳密な機能は、分岐インストラクションか又は非
分岐インストラクションかということを除き、不定であ
るので、これらの機能の他の特徴は省略されている。更
に、[45に供給される最大ルックアヘッド・カウント
は8であると仮定する。インストラクション・ワード・
バッファ68にはアドレス10 000〜10 01F
が存在すると仮定する。各プレフィックス・レジスタ5
2にはプレフィックス1 000が含まれていないと仮
定する。更に、インストラクション・シーフェンスにお
けるリモー]・・インストラクション・ワードからの分
岐はI!1174の信号に値10 000を供給するも
のと仮定する。
第 1 表
中央メモリ インストラクション・アドレス
(16進) 分岐条件 10000 非分岐 10001 非分岐 10002 非分岐 10003 非分岐 10004 100002へ40回分
岐した後は非分岐 10005 非分岐 1000B 非分岐 10007 非分岐 10008 非分岐 10009 非分岐 1000A 非分岐 1000B 非分岐 100GCIo 009へ25回分岐した後は非分岐 10000 非分岐 1000E 非分岐 1000F 非分岐 1001G 非分岐 10011 非分岐 10012 10007へ10回分岐し
た模は非分岐 10013 非分岐 このようなプログラム・セグメントの実行は次のように
進行する。アドレス10 000を実行アドレス・レジ
スタ40及びルックアヘッド・レジスタ42にロードす
る。プレフィックスは1000はプレフィックス・レジ
スタ52のいずれにも存在しないので、実行アドレス比
較手段56及びルックアヘッド・アドレス比較手段54
はそれぞれ線77及び線55を介して転送される等号信
号を論理Oにする。線77の論理値Oによって172の
RUN信号を論理Oにして、インストラクション・プロ
セッサ69のインストラクション実行を中衛させる。更
に、論理Oが@55に存在するので、バッファ・アドレ
ス割り付け手段51は、プレフィックス・レジスタを選
択してこれにプレフィックス1000をヒツトし、かつ
選択したプレフィックス・レジスタのブロック番′号を
[53に送出する。これによってプレフィックス100
0は線79のプレフィックス・レジスタ信号に符号化さ
れて直ちに出力される。実行アドレス比較手段56及び
ルックアヘッド・アドレス比較手段54はいずれにも等
号状態を検出して、線77及び線55の等号信号の値を
論理1にそれぞれ変更する。また、$153のブロック
番号によっても書き込み有効メモリ63及び読み出し有
効メモリ65におけるブロック番号に関連したブロック
のインディケータを論理Oにクリアする。
(16進) 分岐条件 10000 非分岐 10001 非分岐 10002 非分岐 10003 非分岐 10004 100002へ40回分
岐した後は非分岐 10005 非分岐 1000B 非分岐 10007 非分岐 10008 非分岐 10009 非分岐 1000A 非分岐 1000B 非分岐 100GCIo 009へ25回分岐した後は非分岐 10000 非分岐 1000E 非分岐 1000F 非分岐 1001G 非分岐 10011 非分岐 10012 10007へ10回分岐し
た模は非分岐 10013 非分岐 このようなプログラム・セグメントの実行は次のように
進行する。アドレス10 000を実行アドレス・レジ
スタ40及びルックアヘッド・レジスタ42にロードす
る。プレフィックスは1000はプレフィックス・レジ
スタ52のいずれにも存在しないので、実行アドレス比
較手段56及びルックアヘッド・アドレス比較手段54
はそれぞれ線77及び線55を介して転送される等号信
号を論理Oにする。線77の論理値Oによって172の
RUN信号を論理Oにして、インストラクション・プロ
セッサ69のインストラクション実行を中衛させる。更
に、論理Oが@55に存在するので、バッファ・アドレ
ス割り付け手段51は、プレフィックス・レジスタを選
択してこれにプレフィックス1000をヒツトし、かつ
選択したプレフィックス・レジスタのブロック番′号を
[53に送出する。これによってプレフィックス100
0は線79のプレフィックス・レジスタ信号に符号化さ
れて直ちに出力される。実行アドレス比較手段56及び
ルックアヘッド・アドレス比較手段54はいずれにも等
号状態を検出して、線77及び線55の等号信号の値を
論理1にそれぞれ変更する。また、$153のブロック
番号によっても書き込み有効メモリ63及び読み出し有
効メモリ65におけるブロック番号に関連したブロック
のインディケータを論理Oにクリアする。
先ず、読み出し有効メモリ65のみを考えるに、線57
を介して転送されるブロック番号は、プレフィックス・
レジスタ52と実行アドレス比較手段56との間の関係
によって、線53上に最初に供給されたブロック番号に
等しい。fj!41b上を転送されるアドレス10 0
00の4最下位ビットはo oooである。I!57
及び41bによりアドレス指定された読み出し有効メモ
リ65内のインディケータには、線71の信号に配列さ
れる論理Oが含まれている。従って、ANDゲート78
は線72に論理Oを送出し、インストラクション・プロ
セッサ69は待機し続ける。
を介して転送されるブロック番号は、プレフィックス・
レジスタ52と実行アドレス比較手段56との間の関係
によって、線53上に最初に供給されたブロック番号に
等しい。fj!41b上を転送されるアドレス10 0
00の4最下位ビットはo oooである。I!57
及び41bによりアドレス指定された読み出し有効メモ
リ65内のインディケータには、線71の信号に配列さ
れる論理Oが含まれている。従って、ANDゲート78
は線72に論理Oを送出し、インストラクション・プロ
セッサ69は待機し続ける。
書き込み有効メモリ63内で対応するインディケータは
線62の同一のブロック番号及び線43bの同一の最下
位ビットによりアドレス指定される。従って、書き込み
有効メモリ63も線64にその出力として論理Oの信号
を出力し、ANDゲート6oの入力をエネーブルし、か
つANDゲー1−5oに対する入力をディセーブルする
。プレフィックス・レジスタ52がビジーでないと仮定
しているので、線58のBUSY信号も論理1であり、
ANDゲート60はその3人力の全てが満足されること
になり、要求信号をI!i!61に送出させる。この要
求信号は中央メモリ・アドレス(10000)を線43
に出力させ、また中央メモリ59のアドレス・キューを
出力させ、プレフィックス1000を中央メモリ59の
アドレス・キューに記憶させる。線61の要求信号はI
WBアドレス・ゲート75もエネーブルさ、せ、a62
を介するルックアヘッド・アドレス比較手段54のブロ
ック番号を導出し、また線43bを介するルックアヘッ
ド・アドレス・レジスタ42の最下位ビットを線76の
IWB読み出しアドレスとして導出し、3き込み有効メ
モリ63に書き込む。線76のrWB読み出しアドレス
によって指定された書き込み有効インディケータをセッ
トさせるので、線64の信号は論理Oから論理1に変化
してANDゲート6oをディセーブルさせ、かつAND
ゲート50の入力をエネーブルさせる。
線62の同一のブロック番号及び線43bの同一の最下
位ビットによりアドレス指定される。従って、書き込み
有効メモリ63も線64にその出力として論理Oの信号
を出力し、ANDゲート6oの入力をエネーブルし、か
つANDゲー1−5oに対する入力をディセーブルする
。プレフィックス・レジスタ52がビジーでないと仮定
しているので、線58のBUSY信号も論理1であり、
ANDゲート60はその3人力の全てが満足されること
になり、要求信号をI!i!61に送出させる。この要
求信号は中央メモリ・アドレス(10000)を線43
に出力させ、また中央メモリ59のアドレス・キューを
出力させ、プレフィックス1000を中央メモリ59の
アドレス・キューに記憶させる。線61の要求信号はI
WBアドレス・ゲート75もエネーブルさ、せ、a62
を介するルックアヘッド・アドレス比較手段54のブロ
ック番号を導出し、また線43bを介するルックアヘッ
ド・アドレス・レジスタ42の最下位ビットを線76の
IWB読み出しアドレスとして導出し、3き込み有効メ
モリ63に書き込む。線76のrWB読み出しアドレス
によって指定された書き込み有効インディケータをセッ
トさせるので、線64の信号は論理Oから論理1に変化
してANDゲート6oをディセーブルさせ、かつAND
ゲート50の入力をエネーブルさせる。
ディジタル加算器44は、先に説明した動作と並行して
実行アドレス・レジスタ40の内容の総和及び線45の
ルックアヘッド・カウントを形成する。線45のルック
アヘッド・カウントが8であると仮定したことが想起さ
れる。io oo。
実行アドレス・レジスタ40の内容の総和及び線45の
ルックアヘッド・カウントを形成する。線45のルック
アヘッド・カウントが8であると仮定したことが想起さ
れる。io oo。
+8はルックアヘッド・アドレス・レジスタ42に記憶
されている10 000よりも大きいので、ルックアヘ
ッド・アドレス・レジスタ42は線48に論理1を送出
して、先に説明した線64の論理1と共にANDゲート
50からエネーブルさせる。ルックアヘッド・アドレス
・レジスタ42はこのようにして線49から得た論理1
により、10 001に増加される。
されている10 000よりも大きいので、ルックアヘ
ッド・アドレス・レジスタ42は線48に論理1を送出
して、先に説明した線64の論理1と共にANDゲート
50からエネーブルさせる。ルックアヘッド・アドレス
・レジスタ42はこのようにして線49から得た論理1
により、10 001に増加される。
一方、I!j43のアドレス値io ooo、及び線
61の要求信号により、中央メモリ59に導出された線
62のブロック番号が処理される。やがて中央メモリ5
9は、符号化された線67の信号における中央メモリ・
アドレス10 000、及び符号化されたl!66の信
号におけるIWBアドレスに記憶されているインストラ
クション・ワードにより応答する。これによって、アド
レス指定された読み出し有効メモリ65におけるインデ
ィケータのステータスを論理1にセットさせ、線67の
信号におけるインストラクションを線66の信号によっ
て指定されたインストラクション・ワード・バッファ6
8のアドレスに0−ドさせる。
61の要求信号により、中央メモリ59に導出された線
62のブロック番号が処理される。やがて中央メモリ5
9は、符号化された線67の信号における中央メモリ・
アドレス10 000、及び符号化されたl!66の信
号におけるIWBアドレスに記憶されているインストラ
クション・ワードにより応答する。これによって、アド
レス指定された読み出し有効メモリ65におけるインデ
ィケータのステータスを論理1にセットさせ、線67の
信号におけるインストラクションを線66の信号によっ
て指定されたインストラクション・ワード・バッファ6
8のアドレスに0−ドさせる。
従って、中央メモリ59のアドレスio oo。
に記憶されているインストラクション・ワードが線70
に得られ、実行することができる。ANDゲート78の
内入力が論理1となるので、線72に対するANDゲー
ト78の出力は論理1に変化して170におけるインス
トラクション・ワードの実行が可能なことをインストラ
クション・プロセッサ69に知らせる。このインストラ
クションが分岐しない形式であることが第1表で指定さ
れているので、インストラクション・プロセッサ69よ
り送出される線73の信号により、実行アドレス・レジ
スタ40の内容がio ooiに増加する。
に得られ、実行することができる。ANDゲート78の
内入力が論理1となるので、線72に対するANDゲー
ト78の出力は論理1に変化して170におけるインス
トラクション・ワードの実行が可能なことをインストラ
クション・プロセッサ69に知らせる。このインストラ
クションが分岐しない形式であることが第1表で指定さ
れているので、インストラクション・プロセッサ69よ
り送出される線73の信号により、実行アドレス・レジ
スタ40の内容がio ooiに増加する。
アドレス10 000に対するメモリ要求がアドレス・
キューを通過する間に、アドレス10 001.10
002等に対する付加的な要求も同じように発生し、ア
ドレス・キューに配列されている。実際に要求したイン
ストラクション・ワードが中央メモリ59から線67に
出力されるまでは、・アドレス・キューを10〜20イ
ンストラクシヨン・ワード実行時間だけ遅延させること
ができるので、アドレス10 000に最初に記憶して
いたインストラクション・ワードをインストラクション
・プロセッサ69が受け取った時点で、アドレス10
001〜10 008の要求が既にアドレス・キューに
配列されていたということは、十分あり得る。中央メモ
リ59のサイクル時間が1インス1−ラクション実行時
間よりも遅いこともあるので、アドレスio ooi
、10 002.10 003等の実行時間は、インス
トラクション・プロセッサ69がインストラクション・
ワード・バッファ68に前にロードした各インストラク
ション・ワードを実行するものよりも遅い速度で進行す
る。ルックアヘッド・アドレス・レジスタ42の内容が
10 008に進んだときに、比較手段47がANDゲ
ート50をディセーブルするので、実行アドレス・レジ
スタ40の内容が10001に増加されるまで、アドレ
ス10 009のインスl−ラクション・ワード要求を
発生することができない。
キューを通過する間に、アドレス10 001.10
002等に対する付加的な要求も同じように発生し、ア
ドレス・キューに配列されている。実際に要求したイン
ストラクション・ワードが中央メモリ59から線67に
出力されるまでは、・アドレス・キューを10〜20イ
ンストラクシヨン・ワード実行時間だけ遅延させること
ができるので、アドレス10 000に最初に記憶して
いたインストラクション・ワードをインストラクション
・プロセッサ69が受け取った時点で、アドレス10
001〜10 008の要求が既にアドレス・キューに
配列されていたということは、十分あり得る。中央メモ
リ59のサイクル時間が1インス1−ラクション実行時
間よりも遅いこともあるので、アドレスio ooi
、10 002.10 003等の実行時間は、インス
トラクション・プロセッサ69がインストラクション・
ワード・バッファ68に前にロードした各インストラク
ション・ワードを実行するものよりも遅い速度で進行す
る。ルックアヘッド・アドレス・レジスタ42の内容が
10 008に進んだときに、比較手段47がANDゲ
ート50をディセーブルするので、実行アドレス・レジ
スタ40の内容が10001に増加されるまで、アドレ
ス10 009のインスl−ラクション・ワード要求を
発生することができない。
中央メモリ59のアドレス10 004に記憶されてい
るアドレス10 002への分岐インストラクションに
よりインタラブ1〜されるまで、インストラクション・
ワードの逐次的な実行G、tit続する。10 002
に記憶されている分岐インストラクションはアドレス1
0 002へ40回分岐させる条件分岐であり、この後
に実行は7ドレス10 005のインストラクションか
ら継続する。
るアドレス10 002への分岐インストラクションに
よりインタラブ1〜されるまで、インストラクション・
ワードの逐次的な実行G、tit続する。10 002
に記憶されている分岐インストラクションはアドレス1
0 002へ40回分岐させる条件分岐であり、この後
に実行は7ドレス10 005のインストラクションか
ら継続する。
アト゛レス10 002へ分岐が発生したときに、中央
メモリ・アドレス10 002゜ 10 003及び10 004に記憶されているインス
トラクション・ワードは現在のところ全てインストラク
ション・ワード・バッファ68に存在するので、これら
のインストラクションはインストラクション・プロセッ
サ69に可能な最高速度で実行することができる。アド
レス 10 002に分岐が発生する度に、実行アドレス・レ
ジスタ40及びルックアヘッド・アドレス・レジスタ4
2の両者の内容はセットにより10 002に変更され
る。ルックアヘッド・アドレス・レジスタ42)プレフ
ィックス・レジスタ52)ルックアヘッド・アドレス比
較手段54及び書き込み有効メモリ63を含むルックア
ヘッド処理は、インストラクション・プロセッサ69に
おける1インス1−ラクション・ワードの実行と比較し
ても非常に速く発生するので、ルックアヘッド・アドレ
ス・レジスタ42が順方向にカウントをし、16進のア
ドレス100C (=10 004+8)の要求を中央メモリ59のアド
レス・キューに配列させるのは確実である。
メモリ・アドレス10 002゜ 10 003及び10 004に記憶されているインス
トラクション・ワードは現在のところ全てインストラク
ション・ワード・バッファ68に存在するので、これら
のインストラクションはインストラクション・プロセッ
サ69に可能な最高速度で実行することができる。アド
レス 10 002に分岐が発生する度に、実行アドレス・レ
ジスタ40及びルックアヘッド・アドレス・レジスタ4
2の両者の内容はセットにより10 002に変更され
る。ルックアヘッド・アドレス・レジスタ42)プレフ
ィックス・レジスタ52)ルックアヘッド・アドレス比
較手段54及び書き込み有効メモリ63を含むルックア
ヘッド処理は、インストラクション・プロセッサ69に
おける1インス1−ラクション・ワードの実行と比較し
ても非常に速く発生するので、ルックアヘッド・アドレ
ス・レジスタ42が順方向にカウントをし、16進のア
ドレス100C (=10 004+8)の要求を中央メモリ59のアド
レス・キューに配列させるのは確実である。
アドレス10002”のインストラクション・ワードへ
分岐が発生する度に、ルックアヘッド・アドレス・レジ
スタ42の内容は10 002にリセットされる。アド
レス・シーフェンス10 003.10 004.10
005等における各インディケータ用に読み出される
書き込み有効メモリ63により、線64に送出された論
理1のステータスはANDゲート50の入力をディセー
ブルし、かつこれらの中央メモリ・アドレスに記憶され
ているが、未だインスl−ラクション・ワード・バッフ
ァ68にロードされていないインストラクション・ワー
ドに対する付加的な要求の発生を阻止するのは、明らか
である。ただし、書き込み有効メモリ63の存在により
、このような要求を不要に発生することはない。
分岐が発生する度に、ルックアヘッド・アドレス・レジ
スタ42の内容は10 002にリセットされる。アド
レス・シーフェンス10 003.10 004.10
005等における各インディケータ用に読み出される
書き込み有効メモリ63により、線64に送出された論
理1のステータスはANDゲート50の入力をディセー
ブルし、かつこれらの中央メモリ・アドレスに記憶され
ているが、未だインスl−ラクション・ワード・バッフ
ァ68にロードされていないインストラクション・ワー
ドに対する付加的な要求の発生を阻止するのは、明らか
である。ただし、書き込み有効メモリ63の存在により
、このような要求を不要に発生することはない。
ある状況において、1つのアドレスに記憶されているイ
ンストラクション・ワードに対して多重要求を頻繁に発
生すると、中央メモリ15の応答を相当に遅くさせ、従
って、処理速度を低下させることにもなるので、このよ
うな多重要求をなくすことが適当である。本発明ではイ
ンストラクション・ワード・バッファ・アドレスを利用
して中央メモリに対する各要求を識別することによりこ
れを達成していることが分かる。IWB読み出しアドレ
スは書き込み有効メモリ63の複数のメモリ位置を参照
するのに用いることができ、これらのメモリ位置には、
中央メモリ・アドレスのステータスを表わす値が、アド
レス・キューに存在しているか否かを問わず、記憶され
ている。
ンストラクション・ワードに対して多重要求を頻繁に発
生すると、中央メモリ15の応答を相当に遅くさせ、従
って、処理速度を低下させることにもなるので、このよ
うな多重要求をなくすことが適当である。本発明ではイ
ンストラクション・ワード・バッファ・アドレスを利用
して中央メモリに対する各要求を識別することによりこ
れを達成していることが分かる。IWB読み出しアドレ
スは書き込み有効メモリ63の複数のメモリ位置を参照
するのに用いることができ、これらのメモリ位置には、
中央メモリ・アドレスのステータスを表わす値が、アド
レス・キューに存在しているか否かを問わず、記憶され
ている。
結局、アドレス10 004に記憶されているインスト
ラクション・ワードの分岐条件は満足されなくなり、実
行アドレス・レジスタ40の内容は単純に10 005
に進められる。連続する当該のインストラクション・ワ
ードがインストラクション・ワード・バッファ68に既
に記憶されているので、インストラクション・プロセッ
サ69は、中央メモリ59が次のインストラクション・
ワード要求に応答し、その実行が中央メモリ59に「追
い付く」まで、当該の及び次のインストラクション・ワ
ードの実行をR高速度で進めることができる。この実施
例のように、アドレス10 009への分岐が含まれて
いるときは、インストラクション・ワードの実行を継続
して最高速度で進めることができる。アドレス 10 009〜10 00Gを含むループを実行してい
る間に、ルックアヘッド機能はアドレス10 000.
10 00D等に記憶されているインストラクション・
ワードを要求することができるので、中央メモリ59が
これらのインストラクション・ワードの個々の要求に応
答するのを待つことでこれ以上時間を喪失することはな
い。
ラクション・ワードの分岐条件は満足されなくなり、実
行アドレス・レジスタ40の内容は単純に10 005
に進められる。連続する当該のインストラクション・ワ
ードがインストラクション・ワード・バッファ68に既
に記憶されているので、インストラクション・プロセッ
サ69は、中央メモリ59が次のインストラクション・
ワード要求に応答し、その実行が中央メモリ59に「追
い付く」まで、当該の及び次のインストラクション・ワ
ードの実行をR高速度で進めることができる。この実施
例のように、アドレス10 009への分岐が含まれて
いるときは、インストラクション・ワードの実行を継続
して最高速度で進めることができる。アドレス 10 009〜10 00Gを含むループを実行してい
る間に、ルックアヘッド機能はアドレス10 000.
10 00D等に記憶されているインストラクション・
ワードを要求することができるので、中央メモリ59が
これらのインストラクション・ワードの個々の要求に応
答するのを待つことでこれ以上時間を喪失することはな
い。
ルックアヘッド・アドレス・レジスタ42が10 01
0に増加すると、新しいプレフィックスが形成される。
0に増加すると、新しいプレフィックスが形成される。
プレフィックス・レジスタ52)例えば1000を含ん
でいない°ものは、バッファ・アドレス割り付け手段5
1により1001を保持するように再割り付けされ、か
つインストラクション・プロセッサ69によるインスト
ラクション・ワードの実行をインタラブドすることなく
、ルックアヘッド処理を継続する。バッファ・アドレス
割り付け手段51は、現在のインストラクション・ワー
ド実行を妨害することがないように、1000を含まな
いプレフィックス・レジスタ52を選択しなければなら
ない。メモリ位置10 007〜10 012に含まれ
ているループを効率よく実行する必要があるので、中央
メモリ59を更に参照することなく、プレフィックス1
001を有するアドレスからプレフィックス1000を
有するアドレスへの分岐が可能なことに注目すべきであ
る。インストラクション・ワードの実行は以下同じよう
な形式で続く。
でいない°ものは、バッファ・アドレス割り付け手段5
1により1001を保持するように再割り付けされ、か
つインストラクション・プロセッサ69によるインスト
ラクション・ワードの実行をインタラブドすることなく
、ルックアヘッド処理を継続する。バッファ・アドレス
割り付け手段51は、現在のインストラクション・ワー
ド実行を妨害することがないように、1000を含まな
いプレフィックス・レジスタ52を選択しなければなら
ない。メモリ位置10 007〜10 012に含まれ
ているループを効率よく実行する必要があるので、中央
メモリ59を更に参照することなく、プレフィックス1
001を有するアドレスからプレフィックス1000を
有するアドレスへの分岐が可能なことに注目すべきであ
る。インストラクション・ワードの実行は以下同じよう
な形式で続く。
第1図は本発明の要旨部分を示す概要的なブロック図、
第2図は本発明の好ましい実施例のブロック図であり、
インストラクション・ワード・ルックアヘッド機能を含
むディジタル・コンピュータ装ηのブロック図である。 15.59・・・中央メモリ、 18・・・インストラクション・ワード・バッファ、2
0.69・・・インストラクション・プロセッサ、22
・・・バッファ・アドレス指定制御部、50.60.7
8・・・ANDゲート 51・・・バッファ・アドレス割り付け手段、63・・
・虜き込み有効メモリ、 65・・・読み出し有効メモリ、 68・・・インストラクション・ワード・バッファ、7
5・・・IWBアドレス・ゲート。
第2図は本発明の好ましい実施例のブロック図であり、
インストラクション・ワード・ルックアヘッド機能を含
むディジタル・コンピュータ装ηのブロック図である。 15.59・・・中央メモリ、 18・・・インストラクション・ワード・バッファ、2
0.69・・・インストラクション・プロセッサ、22
・・・バッファ・アドレス指定制御部、50.60.7
8・・・ANDゲート 51・・・バッファ・アドレス割り付け手段、63・・
・虜き込み有効メモリ、 65・・・読み出し有効メモリ、 68・・・インストラクション・ワード・バッファ、7
5・・・IWBアドレス・ゲート。
Claims (4)
- (1)ストアード・プログラム式ディジタル・コンピュ
ータにおいて、それぞれ中央メモリ・アドレス及びイン
ストラクション・ワード・バッファ・アドレスを符号化
した複数のアドレス信号を受け取り、要求信号に応答し
て現在アドレス信号に符号化された前記中央メモリ・ア
ドレス及び前記インストラクション・ワード・バッファ
・アドレスをアドレス・キューに配列し、かつ当該中央
メモリ・アドレス及びそれに関連したインストラクショ
ン・ワード・バッファ・アドレスに記憶されている前記
インストラクション・ワードを符号化した前記中央メモ
リ・アドレスを前記アドレス・キューの各中央メモリ・
アドレスに供給するアドレス指定可能な中央メモリと、
前記中央メモリの信号を受け取り、かつこれに符号化さ
れている各インストラクション・ワードを関連するイン
ストラクション・ワード・バッファ・アドレスにより指
定されたアドレスに記憶し、かつインストラクション・
ワード信号を供給して記憶している複数のインストラク
ション・ワードをそれぞれ符号化するインストラクショ
ン・ワード・バッファと、前記インストラクション・ワ
ード信号を受け取り、その応答によりそれぞれ前記中央
メモリのアドレスを指定する複数のプロセッサ信号を発
生するインストラクション・プロセッサと、前記プロセ
ッサ信号を受け取り、その応答により前記インストラク
ション・ワード・バッファ・アドレスを選択して前記中
央メモリ及び前記インストラクション・ワード・バッフ
ァのアドレスを符号化したアドレス信号を前記中央メモ
リ供給するバッファ・アドレス割り付け手段と、 (a)それぞれ前記インストラクション・ワード・バッ
ファ・アドレスに関連したアドレスを有する複数のメモ
リ位置からなり、それぞれに第1及び第2の値を有する
書き込みステータス・インデッケータを記憶すると共に
、前記中央メモリに供給されたアドレス信号に符号化さ
れている前記インストラクション・ワード・バッファ・
アドレスを受け取り、前記要求信号に応答して前記アド
レス信号に符号化されている前記インストラクション・
ワード・バッファ・アドレスによりアドレスを関連させ
ている前記メモリ・アドレス位置において前記ステータ
ス・インディケータを第2の値に設定し、更に符号化し
たインストラクション・ワード・バッファ・アドレスと
関連させているアドレスのメモリ位置にある前記ステー
タス・インディケータの値を符号化したステータス信号
を前記アドレス信号に応答して供給するアドレス可能な
書き込み有効メモリ、及び (b)前記書き込み有効メモリからビジー信号及びステ
ータス信号を受け取り、そのビジー信号及びステータス
信号の第1の現在値に応答して前記中央メモリへ要求信
号を発生するゲート手段を含むアドレス要求機構と を備え、 更に前記中央メモリは前記アドレス・キューにおける中
央メモリ・アドレスの所定番号に、それ以外のときは第
1の値に少なくとも応答して第2の値を有するビジー信
号を発生することにより、前記中央メモリ・インストラ
クション・アドレス・キューにおけるアドレスを如何な
る時も1回以上現れないように阻止するキュー監視手段
からなることを特徴とするストアード・プログラム式デ
ィジタル・コンピュータ。 - (2)特許請求の範囲第1項記載のストアード・プグラ
ム式ディジタル・コンピュータにおいて、前記書き込み
有効メモリは異なる1つの前記インストラクション・ワ
ード・バッファ・アドレスと同一のアドレスをそれぞれ
有する複数のメモリ位置を備えることを特徴とするスト
アード・プログラム式ディジタル・コンピュータ。 - (3)特許請求の範囲第2項のストアード・プログラム
式ディジタル・コンピュータにおいて、前記バッファ・
アドレス割り付け手段は更に前記インストラクション・
ワード・バッファ・アドレスの特定の1つの選択に応答
して、選択した各インストラクション・ワード・バッフ
ァ・アドレスに等しいアドレスを有する前記書き込み有
効メモリのメモリ位置におけるステータス・ワード・イ
ンディケータをその第1の値に設定することを特徴とす
るストアード・プログラム式ディジタル・コンピュータ
。 - (4)特許請求の範囲第2項記載のストアード・プログ
ラム式ディジタル・コンピュータにおいて、前記バッフ
ァ・アドレス割り付け手段は更に前記プロセッサ信号の
特定の1つの選択に応答して、複数のインストラクショ
ン・ワード・バッファ・アドレスを選択し、かつ選択し
たインストラクション・ワード・バッファ・アドレスに
等しいアドレスを有する前記書き込み有効メモリのメモ
リ位置における各ステータス・ワード・インディケータ
をその第1の値に設定することを特徴とするストアード
・プログラム式ディジタル・コンピュータ。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US765427 | 1985-08-14 | ||
US06/765,427 US4761731A (en) | 1985-08-14 | 1985-08-14 | Look-ahead instruction fetch control for a cache memory |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS6240536A true JPS6240536A (ja) | 1987-02-21 |
Family
ID=25073526
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP61059071A Pending JPS6240536A (ja) | 1985-08-14 | 1986-03-17 | ストア−ド・プログラム式デイジタル・コンピユ−タ |
Country Status (5)
Country | Link |
---|---|
US (1) | US4761731A (ja) |
EP (1) | EP0211472A3 (ja) |
JP (1) | JPS6240536A (ja) |
AU (1) | AU577462B2 (ja) |
CA (1) | CA1243124A (ja) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4884197A (en) * | 1985-02-22 | 1989-11-28 | Intergraph Corporation | Method and apparatus for addressing a cache memory |
JPS6297036A (ja) * | 1985-07-31 | 1987-05-06 | テキサス インスツルメンツ インコ−ポレイテツド | 計算機システム |
US4894772A (en) * | 1987-07-31 | 1990-01-16 | Prime Computer, Inc. | Method and apparatus for qualifying branch cache entries |
US4943908A (en) * | 1987-12-02 | 1990-07-24 | International Business Machines Corporation | Multiple branch analyzer for prefetching cache lines |
US5125083A (en) * | 1989-02-03 | 1992-06-23 | Digital Equipment Corporation | Method and apparatus for resolving a variable number of potential memory access conflicts in a pipelined computer system |
WO1991011765A1 (en) * | 1990-01-29 | 1991-08-08 | Teraplex, Inc. | Architecture for minimal instruction set computing system |
EP0449369B1 (en) * | 1990-03-27 | 1998-07-29 | Koninklijke Philips Electronics N.V. | A data processing system provided with a performance enhancing instruction cache |
US5323489A (en) * | 1991-11-14 | 1994-06-21 | Bird Peter L | Method and apparatus employing lookahead to reduce memory bank contention for decoupled operand references |
US5461718A (en) * | 1992-04-24 | 1995-10-24 | Digital Equipment Corporation | System for sequential read of memory stream buffer detecting page mode cycles availability fetching data into a selected FIFO, and sending data without aceessing memory |
US5452418A (en) * | 1992-04-24 | 1995-09-19 | Digital Equipment Corporation | Method of using stream buffer to perform operation under normal operation mode and selectively switching to test mode to check data integrity during system operation |
US5404484A (en) * | 1992-09-16 | 1995-04-04 | Hewlett-Packard Company | Cache system for reducing memory latency times |
US5490113A (en) * | 1994-06-15 | 1996-02-06 | Digital Equipment Corporation | Memory stream buffer |
US6327645B1 (en) | 1999-11-08 | 2001-12-04 | Silicon Integrated Systems Corp. | Cache memory system with memory request address queue, cache write address queue, and cache read address queue |
US7296259B2 (en) * | 2002-09-11 | 2007-11-13 | Agere Systems Inc. | Processor system with cache-based software breakpoints |
US8397186B2 (en) * | 2009-07-16 | 2013-03-12 | Synopsys, Inc. | Technique for replaying operations using replay look-ahead instructions |
US10331558B2 (en) * | 2017-07-28 | 2019-06-25 | Apple Inc. | Systems and methods for performing memory compression |
Family Cites Families (16)
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 |
US3699535A (en) * | 1971-02-01 | 1972-10-17 | Raytheon Co | Memory look-ahead connection arrangement for writing into an unoccupied address and prevention of reading out from an empty address |
US3736567A (en) * | 1971-09-08 | 1973-05-29 | Bunker Ramo | Program sequence control |
FR2226079A5 (ja) * | 1973-04-13 | 1974-11-08 | Honeywell Bull Soc Ind | |
US3928857A (en) * | 1973-08-30 | 1975-12-23 | Ibm | Instruction fetch apparatus with combined look-ahead and look-behind capability |
CA1059639A (en) * | 1975-03-26 | 1979-07-31 | Garvin W. Patterson | Instruction look ahead having prefetch concurrency and pipe line features |
US4168523A (en) * | 1975-11-07 | 1979-09-18 | Ncr Corporation | Data processor utilizing a two level microaddressing controller |
US4298927A (en) * | 1978-10-23 | 1981-11-03 | International Business Machines Corporation | Computer instruction prefetch circuit |
JPS5943786B2 (ja) * | 1979-03-30 | 1984-10-24 | パナフアコム株式会社 | 記憶装置のアクセス方式 |
US4371924A (en) * | 1979-11-09 | 1983-02-01 | Rockwell International Corp. | Computer system apparatus for prefetching data requested by a peripheral device from memory |
JPS6019809B2 (ja) * | 1979-12-26 | 1985-05-18 | 株式会社日立製作所 | デ−タ処理装置 |
US4439828A (en) * | 1981-07-27 | 1984-03-27 | International Business Machines Corp. | Instruction substitution mechanism in an instruction handling unit of a data processing system |
JPS5835627A (ja) * | 1981-08-26 | 1983-03-02 | Toshiba Corp | メモリデ−タ先取り制御方式 |
JPS5848146A (ja) * | 1981-09-18 | 1983-03-22 | Toshiba Corp | 命令先取り方式 |
AU542447B2 (en) * | 1982-02-27 | 1985-02-21 | Fujitsu Limited | System for controlling key storage unit |
US4594659A (en) * | 1982-10-13 | 1986-06-10 | Honeywell Information Systems Inc. | Method and apparatus for prefetching instructions for a central execution pipeline unit |
-
1985
- 1985-08-14 US US06/765,427 patent/US4761731A/en not_active Expired - Fee Related
-
1986
- 1986-03-17 JP JP61059071A patent/JPS6240536A/ja active Pending
- 1986-03-24 CA CA000504866A patent/CA1243124A/en not_active Expired
- 1986-04-15 EP EP86302794A patent/EP0211472A3/en not_active Withdrawn
- 1986-04-23 AU AU56519/86A patent/AU577462B2/en not_active Ceased
Also Published As
Publication number | Publication date |
---|---|
AU5651986A (en) | 1987-02-19 |
EP0211472A3 (en) | 1989-11-02 |
US4761731A (en) | 1988-08-02 |
AU577462B2 (en) | 1988-09-22 |
CA1243124A (en) | 1988-10-11 |
EP0211472A2 (en) | 1987-02-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS6240536A (ja) | ストア−ド・プログラム式デイジタル・コンピユ−タ | |
US6076151A (en) | Dynamic memory allocation suitable for stride-based prefetching | |
US4926323A (en) | Streamlined instruction processor | |
US5091851A (en) | Fast multiple-word accesses from a multi-way set-associative cache memory | |
KR100626858B1 (ko) | 단일 적재 워드를 형성하기 위해서 별개의 저장 버퍼 엔트리들로부터의 개별 바이트들의 전송을 적재하는 저장 시스템 | |
US4768148A (en) | Read in process memory apparatus | |
US4701844A (en) | Dual cache for independent prefetch and execution units | |
KR970008187B1 (ko) | 명령 연속흐름을 갖는 프로세서 제어된 인터페이스 | |
KR910002929B1 (ko) | 파이프 라인 캐쉬 메모리 장치 | |
US5051885A (en) | Data processing system for concurrent dispatch of instructions to multiple functional units | |
JP2986088B2 (ja) | バッファ・メモリを動作させる方法及び関連する装置 | |
JP2554449B2 (ja) | キャッシュ・メモリを有するデータ処理システム | |
US7555576B2 (en) | Processing apparatus with burst read write operations | |
EP0439025A2 (en) | A data processor having a deferred cache load | |
JP2000242558A (ja) | キャッシュシステム及びその操作方法 | |
JPH0345407B2 (ja) | ||
US4320456A (en) | Control apparatus for virtual address translation unit | |
JPH0612325A (ja) | プロセス親和スケジュール法およびその装置 | |
JP2007514237A (ja) | 分岐先バッファにおいてエントリを割り当てる方法及び装置 | |
US5450561A (en) | Cache miss prediction method and apparatus for use with a paged main memory in a data processing system | |
JP2001290706A (ja) | Tlbキャッシュのためのプリフェッチ | |
US6700582B2 (en) | Method and system for buffer management | |
US4688188A (en) | Data storage apparatus for storing groups of data with read and write request detection | |
US6738837B1 (en) | Digital system with split transaction memory access | |
EP0297265A2 (en) | An instruction control mechanism for a computer system |