JPS6010668B2 - 可変長オペランドの取出制御機構 - Google Patents
可変長オペランドの取出制御機構Info
- Publication number
- JPS6010668B2 JPS6010668B2 JP54019897A JP1989779A JPS6010668B2 JP S6010668 B2 JPS6010668 B2 JP S6010668B2 JP 54019897 A JP54019897 A JP 54019897A JP 1989779 A JP1989779 A JP 1989779A JP S6010668 B2 JPS6010668 B2 JP S6010668B2
- Authority
- JP
- Japan
- Prior art keywords
- signal
- aop
- operand
- fetch
- address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/04—Addressing variable-length words or parts of words
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0844—Multiple simultaneous or quasi-simultaneous cache accessing
- G06F12/0855—Overlapped cache accessing, e.g. pipeline
- G06F12/0859—Overlapped cache accessing, e.g. pipeline with reload from main memory
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0877—Cache access modes
- G06F12/0886—Variable-length word access
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30018—Bit or string instructions
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/34—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes
- G06F9/345—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes of multiple operands or results
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/3824—Operand accessing
- G06F9/383—Operand prefetching
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Advance Control (AREA)
- Memory System (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Executing Machine-Instructions (AREA)
Description
【発明の詳細な説明】
本発明はキャッシュ並びに主記憶のキャッシュ・バイパ
スからデータを取出すことに係り、また次の命令の復号
と並行して、(可変長オペランドを実行するに必要な順
序で取出データを要求し、受取り、そしてバッファする
如き)複数の浮動式オペランド・アドレス・レジスタ及
びオペランド・バッファの順序づけを制御することに係
る。
スからデータを取出すことに係り、また次の命令の復号
と並行して、(可変長オペランドを実行するに必要な順
序で取出データを要求し、受取り、そしてバッファする
如き)複数の浮動式オペランド・アドレス・レジスタ及
びオペランド・バッファの順序づけを制御することに係
る。
発明の背景
mMシステム/370モデル168の如き大形商業プロ
セッサでは、主記憶制御機構(ProcessorSb
ra袋ControIFuMtion:以下「PSCF
」と略す)と命令前処理機構(lmtmction P
re−PnにeSSingF肌ction:以下「IP
PF」と略す)との間に設けられるデータ転送用のバス
はダブルワードの幅を有している。
セッサでは、主記憶制御機構(ProcessorSb
ra袋ControIFuMtion:以下「PSCF
」と略す)と命令前処理機構(lmtmction P
re−PnにeSSingF肌ction:以下「IP
PF」と略す)との間に設けられるデータ転送用のバス
はダブルワードの幅を有している。
従って、大量のデータが転送されねばならない場合、多
数のダブルワ−ド・サイクルが取られることになる。キ
ャッシュ(高速バッファ記憶)が凶CF中に設けられる
場合には、主記憶からキャッシュヘロ−ドすることがで
きる最小量のデータである「ライン」のサイズを、ダブ
ルワードの2の累乗倍(2,4,8,又は16)に取る
のが普通である。このラインGサイズはシステムの性能
を最適化するように選ばれる。ライン・サイズを小さく
取ると多数のラインを転送する必要があるために性能の
低下を招くことがあり、また逆にライン・サイズを大き
く取るとライン転送に長い時間を要するためにかえって
性能の低下を招くことがある。さらに、バス−サイズと
ライン・サイズは異なっているので、キャッシュへ1ラ
インをロードするためには複数のサイクルを要し、しか
もこれらのサイクルの間、キャッシュへ転送中のライン
をプロセッサが利用できないという問題がある。先行技
術 命令ユニットへ供給される記憶データのアクセス速度を
改善するために、キャッシュを使用することは先行技術
において周知である。
数のダブルワ−ド・サイクルが取られることになる。キ
ャッシュ(高速バッファ記憶)が凶CF中に設けられる
場合には、主記憶からキャッシュヘロ−ドすることがで
きる最小量のデータである「ライン」のサイズを、ダブ
ルワードの2の累乗倍(2,4,8,又は16)に取る
のが普通である。このラインGサイズはシステムの性能
を最適化するように選ばれる。ライン・サイズを小さく
取ると多数のラインを転送する必要があるために性能の
低下を招くことがあり、また逆にライン・サイズを大き
く取るとライン転送に長い時間を要するためにかえって
性能の低下を招くことがある。さらに、バス−サイズと
ライン・サイズは異なっているので、キャッシュへ1ラ
インをロードするためには複数のサイクルを要し、しか
もこれらのサイクルの間、キャッシュへ転送中のライン
をプロセッサが利用できないという問題がある。先行技
術 命令ユニットへ供給される記憶データのアクセス速度を
改善するために、キャッシュを使用することは先行技術
において周知である。
たとえば、米国特許第35699斑号には、主記憶から
キャッシュへの転送をキャッシュ・フロックと呼ばれる
データ群を単位として行い、その際、主記憶とキャッシ
ュの間にあるバスの幅に依存して1ラインを一連の並列
サブラィンとして取出すことが示されている。このサブ
ラィンは、種々の状況に応じて、バイト、ワード、ダブ
ルワ−ド又は4ワードのいずれかに等しく選ばれる。I
BMシステム/370モデル1班の如き大形のプロセッ
サでは、サプラィソとしてダブルワードが使用される。
また、米国特許第3$機29号、第斑0路斑号、第斑9
6419号等の先行技術には、或るラインを取出してい
る間に、要求されたサブラィン(これは必ずしもライン
中の第1サプラィンでなくてもよい)をキャッシュへ転
送すると同時に、命令ユニットへも転送することが示さ
れている。しかし、本発明のように、転送中ラインのう
ち要求されたサブラィンから始まって最上位アドレスを
有するサブラインに至るまでの他のサプラインを、命令
ユニット及びキャッシュの双方へ同時的に転送すること
については、これら先行技術には何も示されていない。
本発明の1側面によれば、各サブラィンがキャッシュへ
転送されるとすぐに、IPPFは最も望ましいサプライ
ンのすべてをアクセスとすることができる。本発明のよ
うに、ライン転送が完了する前に、転送中ラインの第1
サブラィンを除く任意のサブラィンを命令ユニットヘア
クセス可能にするという先行技術は知られていない。事
実、既知の先行技術には、ライン転送中にキャッシュの
アクセスを禁止するという技術が示されているにすぎな
い。たとえば、米国特許第37053磯号はこの類型に
属し、キャッシュ中の異なるブロック、すなわち完成さ
れたラインへのアクセスのみを許容する技術を示してい
るにすぎない。また米国特許第3462744号には、
最初の命令の前処理の間に、命令ユニットによって主記
憶から要求された諸オペランドへ諸タグを割当てるとと
もに、これらのオペランドを処理すべき実行ユニット中
の諾しジスタへ前記タグを割当てるようにしたオペラン
ド処理技術が示されている。
キャッシュへの転送をキャッシュ・フロックと呼ばれる
データ群を単位として行い、その際、主記憶とキャッシ
ュの間にあるバスの幅に依存して1ラインを一連の並列
サブラィンとして取出すことが示されている。このサブ
ラィンは、種々の状況に応じて、バイト、ワード、ダブ
ルワ−ド又は4ワードのいずれかに等しく選ばれる。I
BMシステム/370モデル1班の如き大形のプロセッ
サでは、サプラィソとしてダブルワードが使用される。
また、米国特許第3$機29号、第斑0路斑号、第斑9
6419号等の先行技術には、或るラインを取出してい
る間に、要求されたサブラィン(これは必ずしもライン
中の第1サプラィンでなくてもよい)をキャッシュへ転
送すると同時に、命令ユニットへも転送することが示さ
れている。しかし、本発明のように、転送中ラインのう
ち要求されたサブラィンから始まって最上位アドレスを
有するサブラインに至るまでの他のサプラインを、命令
ユニット及びキャッシュの双方へ同時的に転送すること
については、これら先行技術には何も示されていない。
本発明の1側面によれば、各サブラィンがキャッシュへ
転送されるとすぐに、IPPFは最も望ましいサプライ
ンのすべてをアクセスとすることができる。本発明のよ
うに、ライン転送が完了する前に、転送中ラインの第1
サブラィンを除く任意のサブラィンを命令ユニットヘア
クセス可能にするという先行技術は知られていない。事
実、既知の先行技術には、ライン転送中にキャッシュの
アクセスを禁止するという技術が示されているにすぎな
い。たとえば、米国特許第37053磯号はこの類型に
属し、キャッシュ中の異なるブロック、すなわち完成さ
れたラインへのアクセスのみを許容する技術を示してい
るにすぎない。また米国特許第3462744号には、
最初の命令の前処理の間に、命令ユニットによって主記
憶から要求された諸オペランドへ諸タグを割当てるとと
もに、これらのオペランドを処理すべき実行ユニット中
の諾しジスタへ前記タグを割当てるようにしたオペラン
ド処理技術が示されている。
詳述すれば「各オペランドが主記憶から共通データ・バ
スに到着する際、このオペランドへ割当てられたタグが
すべてのレジスタへ放送(broadcast)される
。このタグを割当てられたレジスタは放送されたタグと
の比較一致に応答して付勢され、かくて受取られたオペ
ランドは共通データ・バスからこの付勢済みのレジスタ
へ入力ゲートされ、このようにしてこの命令の実行を完
了することができる。この共通データ・バス方式は本発
明とは完全に異なる。先行技術でもあるBMシステム/
370モデル168は、本発明とは異なる方法を使用し
ている。
スに到着する際、このオペランドへ割当てられたタグが
すべてのレジスタへ放送(broadcast)される
。このタグを割当てられたレジスタは放送されたタグと
の比較一致に応答して付勢され、かくて受取られたオペ
ランドは共通データ・バスからこの付勢済みのレジスタ
へ入力ゲートされ、このようにしてこの命令の実行を完
了することができる。この共通データ・バス方式は本発
明とは完全に異なる。先行技術でもあるBMシステム/
370モデル168は、本発明とは異なる方法を使用し
ている。
このプロセッサは、主記憶から取出されたダブルワード
をバッファすることができる8バイトのオペランド.バ
ッファを2個備えている。キャッシュへ或るラインが取
出される際このラインの1ダブルワードだけが主記憶か
らIPPFへ直接に転送されるのに対し、他のダブルワ
ードはこのラインの転送が完了した後でなければキャッ
シュからIPPFへ転送することができない。1ダブル
ワードより大きいオペランドを必要とする命令について
は、IPPFは最初のダブルワードを敬出すだけである
。
をバッファすることができる8バイトのオペランド.バ
ッファを2個備えている。キャッシュへ或るラインが取
出される際このラインの1ダブルワードだけが主記憶か
らIPPFへ直接に転送されるのに対し、他のダブルワ
ードはこのラインの転送が完了した後でなければキャッ
シュからIPPFへ転送することができない。1ダブル
ワードより大きいオペランドを必要とする命令について
は、IPPFは最初のダブルワードを敬出すだけである
。
このオペランドの後続ダブルワードは、マイクロプログ
ラムの制御下で、実行機構(ExecutionFun
ction:以下「EF」と略す)によって取出される
。データを正しいバイト境界へ合せたり、相異なるダブ
ルワードからのデータを連結したりする操作も、マイク
ロプログラムの制御下で、EF内部で行われる。IBM
システム/370モデル168においてこのようにして
処理されるLM(多重ロード)命令や、MyC(移動)
、NC(論理積)、OC(論理和)、XC(排他論理和
)又はCLC(論理比較)の如きSS(Storage
ーリーStowge:記憶城間)論理命令については、
LPPFとEFの間の並行処理が禁止されるので、復号
されたこの種の命令の実行が完了するまでmPFは後続
命令を復号することができない。発明の要約キャッシュ
・ミスが生じた際のプロセッサの性能を強化するために
通常取られている方法は、mPFによって要求されたサ
プラィンを主記憶から敬出し、このサブラィンをキャッ
シュへ書込むと同時に、これをIPPFへ送るというも
のである。こうすることにより、mPFは要求されたサ
プラィンを可能な限り速かに受取ることができる。一般
に、後続サブラィンの各々に対するPSCFの取出はこ
の最初の取出に続いて当該ラインの終端に至るまで順次
に行われ、そしてこれらのサブラィンはIPPFによっ
て動的に割当てられた浮動式オペランド・バッファへ転
送される。次いで、このライン取出は当該ラインの始端
へ戻り、そこから最初に取出されたサブラィンに至るま
での残りのサプラィンを取出すように継続されるけれど
も、該残りのサプラィンはIPPF中のどの浮動式オペ
ランド・バッファにも転送されない。そのかわり、この
ライン全体がキャッシュへ転送される。たとえば、或る
ラインが8個のダブルワード0及至7を含み且つダブル
ワード3に対する取出要求がキャッシュ・ミスを生ぜし
めるものとすれば、これらのダブルワードは3,4,5
,6,7,0,1,2の順序で取出され、これらのうち
ダブルワード3乃至7がIPPFへ利用可能となる。も
しこの例においてキャッシュ・ヒットが生ずるならば、
IPPFが要求したダブルワード3乃至7がキャッシュ
から直接に得られることになる。
ラムの制御下で、実行機構(ExecutionFun
ction:以下「EF」と略す)によって取出される
。データを正しいバイト境界へ合せたり、相異なるダブ
ルワードからのデータを連結したりする操作も、マイク
ロプログラムの制御下で、EF内部で行われる。IBM
システム/370モデル168においてこのようにして
処理されるLM(多重ロード)命令や、MyC(移動)
、NC(論理積)、OC(論理和)、XC(排他論理和
)又はCLC(論理比較)の如きSS(Storage
ーリーStowge:記憶城間)論理命令については、
LPPFとEFの間の並行処理が禁止されるので、復号
されたこの種の命令の実行が完了するまでmPFは後続
命令を復号することができない。発明の要約キャッシュ
・ミスが生じた際のプロセッサの性能を強化するために
通常取られている方法は、mPFによって要求されたサ
プラィンを主記憶から敬出し、このサブラィンをキャッ
シュへ書込むと同時に、これをIPPFへ送るというも
のである。こうすることにより、mPFは要求されたサ
プラィンを可能な限り速かに受取ることができる。一般
に、後続サブラィンの各々に対するPSCFの取出はこ
の最初の取出に続いて当該ラインの終端に至るまで順次
に行われ、そしてこれらのサブラィンはIPPFによっ
て動的に割当てられた浮動式オペランド・バッファへ転
送される。次いで、このライン取出は当該ラインの始端
へ戻り、そこから最初に取出されたサブラィンに至るま
での残りのサプラィンを取出すように継続されるけれど
も、該残りのサプラィンはIPPF中のどの浮動式オペ
ランド・バッファにも転送されない。そのかわり、この
ライン全体がキャッシュへ転送される。たとえば、或る
ラインが8個のダブルワード0及至7を含み且つダブル
ワード3に対する取出要求がキャッシュ・ミスを生ぜし
めるものとすれば、これらのダブルワードは3,4,5
,6,7,0,1,2の順序で取出され、これらのうち
ダブルワード3乃至7がIPPFへ利用可能となる。も
しこの例においてキャッシュ・ヒットが生ずるならば、
IPPFが要求したダブルワード3乃至7がキャッシュ
から直接に得られることになる。
従って、本発明によれば、キャッシュ・ミスの場合には
IPPFは主記憶中の要求データを直接にアクセスする
ことができ、またキャッシュ・ヒットの場合にはキャッ
シュ中の要求データをアクセスすることができるので、
先行技術のキャッシュに見られるような転送中ラインを
アクセスするための遅延を排除することが可能となる。
本発明の側面に従って、主記憶から受取られた諸サブラ
ィンをバッファするためにそれぞれダブルワードの容量
を有する複数のオペランド・バッファを設け、これらの
オペランド・バッファを浮動式に割当てることが行われ
る。
IPPFは主記憶中の要求データを直接にアクセスする
ことができ、またキャッシュ・ヒットの場合にはキャッ
シュ中の要求データをアクセスすることができるので、
先行技術のキャッシュに見られるような転送中ラインを
アクセスするための遅延を排除することが可能となる。
本発明の側面に従って、主記憶から受取られた諸サブラ
ィンをバッファするためにそれぞれダブルワードの容量
を有する複数のオペランド・バッファを設け、これらの
オペランド・バッファを浮動式に割当てることが行われ
る。
mMシステム/370の諸命令LM,MVC,NC,O
C,XC及びCLCについて、IPPFはオペランドの
サブラィン全部を受取り、PSCFのシフタを使用して
これらのサブラィンを所望の境界へ位置合せし、そして
割当てられたオペランド・バッファへ諸バイトを入力ゲ
ートすることによって相異なるサブラィンからのデータ
を連結するように動作する。或る命令に対するオペラン
ドのサブライン全部を一旦要求してしまうと、mPFは
、並行的に実行することができる先行命令がいつ実行さ
れるかということに拘わりなく、後続命令のためのオペ
ランド取出を行うことができる。MCFとIPPFの間
の通信は次のように設定される。
C,XC及びCLCについて、IPPFはオペランドの
サブラィン全部を受取り、PSCFのシフタを使用して
これらのサブラィンを所望の境界へ位置合せし、そして
割当てられたオペランド・バッファへ諸バイトを入力ゲ
ートすることによって相異なるサブラィンからのデータ
を連結するように動作する。或る命令に対するオペラン
ドのサブライン全部を一旦要求してしまうと、mPFは
、並行的に実行することができる先行命令がいつ実行さ
れるかということに拘わりなく、後続命令のためのオペ
ランド取出を行うことができる。MCFとIPPFの間
の通信は次のように設定される。
すなわち、IPPFの取世襲求は、浮動式オペランド・
バッファと対をなす浮動式オペランド・アドレス・レジ
スタによって開始される。IPPFは取出要求アドレス
及び取出要求制御信号をPSCFへ送る。もしデータが
キャッシュから利用可能であれば、このデー外ま笛CF
とIPPF間の他の制御信号を要することないこ2サイ
クル後にプロセッサへ送られる。もしこのデータをキャ
ッシュから利用することができなければ、PSCFはm
PFの待機を通知するめにIPPFへ「取出遅延」信号
を送る。その後、データが到着する前に、MCFはIP
PFへ「偽CF前進一宿号を送る。PSCFによって複
数のダブルワードが復帰(retmn)されんとすると
き、PSCFは、各ダブルワードを送る前に「PSCF
前進」信号を上昇させる。この信号の待機を停止する時
機をIPPFに通知するために、前記遅延された取出の
開始時に「取出進行中」信号がオンに転じられ、またそ
の終了後にこの信号がオフに転じられる。このことは(
当該ラインで最上位アドレスを有するダブルワー日こ対
する)最後の「MCF前進」信号と同時又はその後でも
よい。この機構を動作させる制御論理は2つに分けられ
る。
バッファと対をなす浮動式オペランド・アドレス・レジ
スタによって開始される。IPPFは取出要求アドレス
及び取出要求制御信号をPSCFへ送る。もしデータが
キャッシュから利用可能であれば、このデー外ま笛CF
とIPPF間の他の制御信号を要することないこ2サイ
クル後にプロセッサへ送られる。もしこのデータをキャ
ッシュから利用することができなければ、PSCFはm
PFの待機を通知するめにIPPFへ「取出遅延」信号
を送る。その後、データが到着する前に、MCFはIP
PFへ「偽CF前進一宿号を送る。PSCFによって複
数のダブルワードが復帰(retmn)されんとすると
き、PSCFは、各ダブルワードを送る前に「PSCF
前進」信号を上昇させる。この信号の待機を停止する時
機をIPPFに通知するために、前記遅延された取出の
開始時に「取出進行中」信号がオンに転じられ、またそ
の終了後にこの信号がオフに転じられる。このことは(
当該ラインで最上位アドレスを有するダブルワー日こ対
する)最後の「MCF前進」信号と同時又はその後でも
よい。この機構を動作させる制御論理は2つに分けられ
る。
第1のものは、複数のダブルワードを復帰させるために
PSCFに設けられた諸回路である。第2のものは、複
数のダブルワードを要求し、受取り、そして保持するた
めにIPPFに設けられたアドレス・オペランド対(A
ddressOpera肘Pair:以下「AOP」と
略す)と呼ばれる浮動式オペランド・アドレス・レジス
タ及び浮動式オペランド。バッファの対と、これらのA
OPを各オペランドごとに受取られる複数のダブルワー
ドと関連づけ且つ順序づけるための諸制御とから成る。
偽CFは、主記憶からIPPFへ複数のダブルヮ‐ドを
通過させるとともに、mPFへ必要な諸制御信号を供給
するための複数の制御を含む。
PSCFに設けられた諸回路である。第2のものは、複
数のダブルワードを要求し、受取り、そして保持するた
めにIPPFに設けられたアドレス・オペランド対(A
ddressOpera肘Pair:以下「AOP」と
略す)と呼ばれる浮動式オペランド・アドレス・レジス
タ及び浮動式オペランド。バッファの対と、これらのA
OPを各オペランドごとに受取られる複数のダブルワー
ドと関連づけ且つ順序づけるための諸制御とから成る。
偽CFは、主記憶からIPPFへ複数のダブルヮ‐ドを
通過させるとともに、mPFへ必要な諸制御信号を供給
するための複数の制御を含む。
鴨CFが各ダブルヮ‐ドlこ対する取出要求を受取る場
合、俺CFはこの要求に関連する諸制御ビットをソース
/シンク・ユニット制御フィールドに置き、これによっ
て要求された最初のダブルワード、当該ラインの終端に
あるダブルワード及びこのラインについて取出されるべ
き最後のダブルワードを識別する。
合、俺CFはこの要求に関連する諸制御ビットをソース
/シンク・ユニット制御フィールドに置き、これによっ
て要求された最初のダブルワード、当該ラインの終端に
あるダブルワード及びこのラインについて取出されるべ
き最後のダブルワードを識別する。
各ダブルワードが主記憶から出力される際、偽CFは、
要求された最初のダブルワードから当該ラインの終端に
あるダプルワ−ドに至るまでの各ダブルワ−ドを、IP
PFへ直接的に通過させる。これに対し、当該ラインの
始端から始まる後続ダブルワードは、IPPFには通過
されない。IPPF中のオペランド制御は、AOPと呼
ばれる浮動式オペランド・アドレス・レジスタと浮動式
オペランド・バッファの対を複数組含む。
要求された最初のダブルワードから当該ラインの終端に
あるダプルワ−ドに至るまでの各ダブルワ−ドを、IP
PFへ直接的に通過させる。これに対し、当該ラインの
始端から始まる後続ダブルワードは、IPPFには通過
されない。IPPF中のオペランド制御は、AOPと呼
ばれる浮動式オペランド・アドレス・レジスタと浮動式
オペランド・バッファの対を複数組含む。
AOPの各々は、門CFから1ダブルワードの取出を要
求してそのダブルワードを受取るとともに、命令実行の
ためにEF‘こよって必要とされるまでこのダブルワー
ドをバッファすることができる。或る幾つかの命令(た
とえば、LM,MVC,CLC,XC、等)については
、押PFは、最大33ダブルワードまでの複数のダブル
ワードを有するオペランドを取出す。AOPの各々は、
ダブルワード要求の各々へ割当てられる。
求してそのダブルワードを受取るとともに、命令実行の
ためにEF‘こよって必要とされるまでこのダブルワー
ドをバッファすることができる。或る幾つかの命令(た
とえば、LM,MVC,CLC,XC、等)については
、押PFは、最大33ダブルワードまでの複数のダブル
ワードを有するオペランドを取出す。AOPの各々は、
ダブルワード要求の各々へ割当てられる。
同一オペランド中の複数のダブルワードへ割当てられた
諸AOPは、それらを表わす複数のAOPステータス・
ラツチに保持されたバック・ポィンタのチェーンによっ
て互いに連結される。AOPステータス・ラッチの各々
は「先行識別子ハすなわち「先行ID」と呼ばれるバッ
ク・ボィンタを受取ることができ、これにより同一オペ
ランドのチェーンにおいて先行する隣接ダブルワードへ
割当てられた他のAOPを識別する。或るAOPに対す
る取出が遅延された場合、どのAOPが凶CFから次の
ダブルワードを受取るべきかを記録するために、AOP
ステータス・ラッチに「前進m」が記憶される。次の「
PSCF前進J信号が受取られる場合、「前進m」は諸
AOPステータス・ラッチに記憶された「先行ID」と
比較され、これにより「前進m」に等しい「先行m」が
存在するか否かが決定される。
諸AOPは、それらを表わす複数のAOPステータス・
ラツチに保持されたバック・ポィンタのチェーンによっ
て互いに連結される。AOPステータス・ラッチの各々
は「先行識別子ハすなわち「先行ID」と呼ばれるバッ
ク・ボィンタを受取ることができ、これにより同一オペ
ランドのチェーンにおいて先行する隣接ダブルワードへ
割当てられた他のAOPを識別する。或るAOPに対す
る取出が遅延された場合、どのAOPが凶CFから次の
ダブルワードを受取るべきかを記録するために、AOP
ステータス・ラッチに「前進m」が記憶される。次の「
PSCF前進J信号が受取られる場合、「前進m」は諸
AOPステータス・ラッチに記憶された「先行ID」と
比較され、これにより「前進m」に等しい「先行m」が
存在するか否かが決定される。
もしいずれかの「先行ID」が等しければ、これを保持
するAOPステータス・ラツチによって表わされたAO
Pは次のダブルワードを受取るべき次のAOPでなけれ
ばならない。かくて、該次のAOPのmはチェーンにお
ける次の後続AOPを決定するための「前進ID」とな
るので、この手順を繰返せば当該オペランドに対する諸
AOPの順序全体を決定することができる。従って、も
しPSCFが他のダブルワードに対する「鴨CF前進」
信号を送るならば、このダブルワードは次の後続AOP
へ向けられることになる。このプロセスは、PSCFが
「取出進行中」信号を下降させるか又はチェーンの終り
を指示する「AOP比較一致」信号が存在しなくなるま
で、継続されることになる。実施態様の概要 本発明は、BMシステム/370の命令LM(多重ロー
ド)、MVC(移動)、NC(論理積)、OC(論理和
)、XC(排他論理和)、CLC(論理比較)、MNZ
(ゾーン移動)及びMyN(数字移動)を処理する際、
そのオペランド取出と実行機能との間の並行動作を可能
にすることによって、プロセッサの性能を改善せんとす
るものである。
するAOPステータス・ラツチによって表わされたAO
Pは次のダブルワードを受取るべき次のAOPでなけれ
ばならない。かくて、該次のAOPのmはチェーンにお
ける次の後続AOPを決定するための「前進ID」とな
るので、この手順を繰返せば当該オペランドに対する諸
AOPの順序全体を決定することができる。従って、も
しPSCFが他のダブルワードに対する「鴨CF前進」
信号を送るならば、このダブルワードは次の後続AOP
へ向けられることになる。このプロセスは、PSCFが
「取出進行中」信号を下降させるか又はチェーンの終り
を指示する「AOP比較一致」信号が存在しなくなるま
で、継続されることになる。実施態様の概要 本発明は、BMシステム/370の命令LM(多重ロー
ド)、MVC(移動)、NC(論理積)、OC(論理和
)、XC(排他論理和)、CLC(論理比較)、MNZ
(ゾーン移動)及びMyN(数字移動)を処理する際、
そのオペランド取出と実行機能との間の並行動作を可能
にすることによって、プロセッサの性能を改善せんとす
るものである。
さらに本発明は、これらのMVC,NC,OC,XC及
びCLC命令に対する取出動作の間に第1及び第2の可
変長オペランドの位置合せを行い、該オペランド位置合
せした状態でEF(実行機構)へ供筋会することによっ
て、プロセッサの性能を改善せんとするものである。
びCLC命令に対する取出動作の間に第1及び第2の可
変長オペランドの位置合せを行い、該オペランド位置合
せした状態でEF(実行機構)へ供筋会することによっ
て、プロセッサの性能を改善せんとするものである。
LM命令の場合、オペランドの取出動作中に1対の汎用
レジスタへ8バイトのオペランドがロードされるように
位置合せを行うと、EF自体はこの位直合せを行う必要
がなく、従ってそのために遅延されることがないので、
これによりプロセッサの性能を改善することができる。
以下詳細な実施態様のデータ流に含まれる主要な構成要
素について簡述する。
レジスタへ8バイトのオペランドがロードされるように
位置合せを行うと、EF自体はこの位直合せを行う必要
がなく、従ってそのために遅延されることがないので、
これによりプロセッサの性能を改善することができる。
以下詳細な実施態様のデータ流に含まれる主要な構成要
素について簡述する。
0ー 塔CF(主記憶制御機構)に設けられた多重ダブ
ルワードのバイパス制御。
ルワードのバイパス制御。
これは、主記憶から取出された諸ダブルワードをダブル
ワード境界でmPFへ通過させることができる。‘2’
PSCFのバツフア・デ−夕・バス・アウト(Buf
企rDaねB船○山:以下「BDBO」と略す)に設け
られたシフタ。
ワード境界でmPFへ通過させることができる。‘2’
PSCFのバツフア・デ−夕・バス・アウト(Buf
企rDaねB船○山:以下「BDBO」と略す)に設け
られたシフタ。
このシフタは取出されたダブルワードをバイト境界に合
せて左シフトするとともに、このダブルワードの左端か
らシフト・オフされた任意のバイトを該ダブルワードの
右端へ再挿入することができる。このシフト動作はIP
PFから供給される3ビットの「シフト量」信号によっ
て制御される。この信号はダブルワードを左シフトすべ
きバイト数を指定し、要求された可変長オペランドのバ
イト・アドレスにある最下位3ビットによって形成され
る。‘3’ IPPFに設けられた6個のAOP。
せて左シフトするとともに、このダブルワードの左端か
らシフト・オフされた任意のバイトを該ダブルワードの
右端へ再挿入することができる。このシフト動作はIP
PFから供給される3ビットの「シフト量」信号によっ
て制御される。この信号はダブルワードを左シフトすべ
きバイト数を指定し、要求された可変長オペランドのバ
イト・アドレスにある最下位3ビットによって形成され
る。‘3’ IPPFに設けられた6個のAOP。
この各々は1個のオペランド・アドレス・レジスタ(O
perand Address Regster:以下
「OARJと略す)と1個のオペランド・バッファ(O
perandBuHer:以下「OP」と略す)から成
り、それぞれ8バイトをアドレスし、受取り、そして保
持することができる。
perand Address Regster:以下
「OARJと略す)と1個のオペランド・バッファ(O
perandBuHer:以下「OP」と略す)から成
り、それぞれ8バイトをアドレスし、受取り、そして保
持することができる。
各AOP中のOARは、主記憶中にある要求された任意
のバイトをアドレスするためのバイト・アドレスを保持
する。OARに保持されたアドレスは取出要求を介して
俺CFへ送られ、そこでアドレスされたバイトを含む単
一のダブルワードを取出すために使用される。このダブ
ルワードは常にダブルワード境界にあり、従ってPSC
Fの要求アドレスはダブルワード・アドレスであって、
このダブルワード中のバイトを指定すべき下位3ビット
を無視する。もし要求されたダブルワードがキャッシュ
中にあれば、このダブルワードはPSCFによってキャ
ッシュから取出され、さもなければ主記憶から取出され
る。取出されたダブルワードはBDBOを介してmPF
へ送られ、そしてその諸バイトは1個又は2個のAOP
へ選択的に入力ゲートされる。この入力ゲート動作は、
BDBOから各AOP中の各OPへバイト単位で行われ
る。つまり、BDBO上の或るバイトが或るAOP中の
OPへ入力ゲートされるのに対し、BDBO上の他のバ
イトは他のAOP中のOPへ入力ゲートされることがあ
るということである。このようにして入力ゲートされた
任意のOPを選択し、その内容をEF中の作業レジスタ
、すなわちA及びBレジスタヘゲートすることができる
。■ オペランド取出ブロックに設けられたアドレス増
数器。
のバイトをアドレスするためのバイト・アドレスを保持
する。OARに保持されたアドレスは取出要求を介して
俺CFへ送られ、そこでアドレスされたバイトを含む単
一のダブルワードを取出すために使用される。このダブ
ルワードは常にダブルワード境界にあり、従ってPSC
Fの要求アドレスはダブルワード・アドレスであって、
このダブルワード中のバイトを指定すべき下位3ビット
を無視する。もし要求されたダブルワードがキャッシュ
中にあれば、このダブルワードはPSCFによってキャ
ッシュから取出され、さもなければ主記憶から取出され
る。取出されたダブルワードはBDBOを介してmPF
へ送られ、そしてその諸バイトは1個又は2個のAOP
へ選択的に入力ゲートされる。この入力ゲート動作は、
BDBOから各AOP中の各OPへバイト単位で行われ
る。つまり、BDBO上の或るバイトが或るAOP中の
OPへ入力ゲートされるのに対し、BDBO上の他のバ
イトは他のAOP中のOPへ入力ゲートされることがあ
るということである。このようにして入力ゲートされた
任意のOPを選択し、その内容をEF中の作業レジスタ
、すなわちA及びBレジスタヘゲートすることができる
。■ オペランド取出ブロックに設けられたアドレス増
数器。
任意のCARに置かれたアドレスはこの増数器へゲート
され、そこで0又は8を加算された後、6個のOARの
うち任意のものへゲートされうる。このアドレス増数器
は、mPFにおける他の機能のためにも使用される。
され、そこで0又は8を加算された後、6個のOARの
うち任意のものへゲートされうる。このアドレス増数器
は、mPFにおける他の機能のためにも使用される。
IPPFによって行われる可変長オペランドの取出動作
には、2種類のものがある。
には、2種類のものがある。
第1のものはソース・オペランド(第2オペランド)を
取出すので、以下では単に「ソ−ス取出」と呼ばれる。
第2のものは行先オペランド(第1オペランド)を取出
す関係上、以下では単に「行先取出」と呼べれる。これ
ら2種類の敬出動作がともに活勢である場合は、その各
々は最大3個までのAOPを使用することができる。こ
れに対し、LM又はMNCの如き命令についてソース取
出動作のみが活勢である場合は、この動作のために利用
可能なすべてのAOPを使用することができる。行先取
出動作が常に零のシフト量を使用する点を除くと、ソー
ス及び行先取出動作は全く同じである。ソース取出動作
は、命令が復号された時間の命令のために開始される。
この時間には、このフィールドの第1バイト量が置かれ
るAレジスタ中のバイト位置及び該第1バイトの主記憶
バイト位置を考慮して、そのシフト量が決定される。こ
の第1バイトの主記憶バイト位置は、第2オペランド・
アドレスの下位3ビットを調べることによって決定され
る。命令MVC,NC,OC,XC及びCLCについて
は、第2オペランドは第1オペランドと位置合せされて
いると考えられるので、第1バイトが置かれるべきAレ
ジスタ中のバイト位置は第1オペランド・アドレスの下
位3ビットによって決定される。LM命令については、
第1オペランド・アドレスの下位3ビットは、ロードさ
るべき第1レジスタが偶数又は奇数番号のどちらである
かに依存して、000又は100の値を取る。かくて、
シフト量を決定するには、第2オペランド・アドレスの
下位3ビットから第1オペランド・アドレスの下位3ビ
ットを減算するとともに、上位ビット位置からの桁上げ
を無視すればよい。たとえば、もし第1オペランド・ア
ドレスが010で終了し、そして第2オペランド・アド
レスが101で終了すれば、101から010を減算し
た値は011である。つまり、第2オペランドを第1オ
ペランドと位置合せするためには、第2オペランドを3
バイトだけ左シフトせねばならないということである。
MVZ命令及びMVN命令については、位置合せは行わ
れないから、シフト量は零へセットされる。このシフト
量は保持され、主記憶に置かれたオペランド‘こ関係す
るすべての取出のために使用される。さらに、第2オペ
ランド・アドレスと第1オペランド。アドレスが比較さ
れ、その結果、もし前者が後者より大きければ、第1オ
ペランドの取出が繰返される。この点については以下で
説明する。命令の復号時には、オペランドを取出すたに
何回のダブルワード取出を遂行する必要があるかという
ことが決定される。
取出すので、以下では単に「ソ−ス取出」と呼ばれる。
第2のものは行先オペランド(第1オペランド)を取出
す関係上、以下では単に「行先取出」と呼べれる。これ
ら2種類の敬出動作がともに活勢である場合は、その各
々は最大3個までのAOPを使用することができる。こ
れに対し、LM又はMNCの如き命令についてソース取
出動作のみが活勢である場合は、この動作のために利用
可能なすべてのAOPを使用することができる。行先取
出動作が常に零のシフト量を使用する点を除くと、ソー
ス及び行先取出動作は全く同じである。ソース取出動作
は、命令が復号された時間の命令のために開始される。
この時間には、このフィールドの第1バイト量が置かれ
るAレジスタ中のバイト位置及び該第1バイトの主記憶
バイト位置を考慮して、そのシフト量が決定される。こ
の第1バイトの主記憶バイト位置は、第2オペランド・
アドレスの下位3ビットを調べることによって決定され
る。命令MVC,NC,OC,XC及びCLCについて
は、第2オペランドは第1オペランドと位置合せされて
いると考えられるので、第1バイトが置かれるべきAレ
ジスタ中のバイト位置は第1オペランド・アドレスの下
位3ビットによって決定される。LM命令については、
第1オペランド・アドレスの下位3ビットは、ロードさ
るべき第1レジスタが偶数又は奇数番号のどちらである
かに依存して、000又は100の値を取る。かくて、
シフト量を決定するには、第2オペランド・アドレスの
下位3ビットから第1オペランド・アドレスの下位3ビ
ットを減算するとともに、上位ビット位置からの桁上げ
を無視すればよい。たとえば、もし第1オペランド・ア
ドレスが010で終了し、そして第2オペランド・アド
レスが101で終了すれば、101から010を減算し
た値は011である。つまり、第2オペランドを第1オ
ペランドと位置合せするためには、第2オペランドを3
バイトだけ左シフトせねばならないということである。
MVZ命令及びMVN命令については、位置合せは行わ
れないから、シフト量は零へセットされる。このシフト
量は保持され、主記憶に置かれたオペランド‘こ関係す
るすべての取出のために使用される。さらに、第2オペ
ランド・アドレスと第1オペランド。アドレスが比較さ
れ、その結果、もし前者が後者より大きければ、第1オ
ペランドの取出が繰返される。この点については以下で
説明する。命令の復号時には、オペランドを取出すたに
何回のダブルワード取出を遂行する必要があるかという
ことが決定される。
この回数は2つの数値を加算することによって決定され
る。最初の数値Lは命令のLフィールドから導かれる8
ビットの長さ値である。これはオペランドのバイト数よ
り1だけ少ない2進数であり、mPFによって他の目的
のために発生される。数値Lへ加算される8ビットの値
Dは次のようにして発生される。すなわち、この数値D
の上位4ビットは零であり、次のビットは最初の取出が
重複(duplicaに)されるときは1であり、最後
の3ビットはオペランド開始アドレスの下位3ビットで
ある。これらの数値が加算される場合、上位ビット位置
からの桁上げが保持され、9ビットの和の上位ビットに
なる。この9ビットの和のうち、下位3ビットが捨てら
れて6ビットの結果値が得られる。この結果値は、遂行
すべきダブルワード取出の全回数よりも1だけ少ない。
この結果値はカウン外こ置かれ、そこで(最初の取出を
除く)各取出ごとに減数されるので、これにより取出動
作を停止すべき時機を制御することができる。たとえば
、或るオペランドが35ゞィトを含み、最初の取出は重
複されず、そのアドレスの下位ビットは101であるも
のと仮定する。そうすると、Lは00100010に等
しく、Dは00000101に、その和は000100
111に、そして結果値は000100に等しくなるか
ら、最初の取出の後に4回のダブルワード取出が行われ
劉まならない。命令が復号されるとき、そのオペランド
・アドレスが計算され、利用可能な1個のAOPに置か
れるので、これに基づいてPSCFへの取出要求が開始
される。
る。最初の数値Lは命令のLフィールドから導かれる8
ビットの長さ値である。これはオペランドのバイト数よ
り1だけ少ない2進数であり、mPFによって他の目的
のために発生される。数値Lへ加算される8ビットの値
Dは次のようにして発生される。すなわち、この数値D
の上位4ビットは零であり、次のビットは最初の取出が
重複(duplicaに)されるときは1であり、最後
の3ビットはオペランド開始アドレスの下位3ビットで
ある。これらの数値が加算される場合、上位ビット位置
からの桁上げが保持され、9ビットの和の上位ビットに
なる。この9ビットの和のうち、下位3ビットが捨てら
れて6ビットの結果値が得られる。この結果値は、遂行
すべきダブルワード取出の全回数よりも1だけ少ない。
この結果値はカウン外こ置かれ、そこで(最初の取出を
除く)各取出ごとに減数されるので、これにより取出動
作を停止すべき時機を制御することができる。たとえば
、或るオペランドが35ゞィトを含み、最初の取出は重
複されず、そのアドレスの下位ビットは101であるも
のと仮定する。そうすると、Lは00100010に等
しく、Dは00000101に、その和は000100
111に、そして結果値は000100に等しくなるか
ら、最初の取出の後に4回のダブルワード取出が行われ
劉まならない。命令が復号されるとき、そのオペランド
・アドレスが計算され、利用可能な1個のAOPに置か
れるので、これに基づいてPSCFへの取出要求が開始
される。
このAOPに関連する制御には、シフト量を記憶し、こ
の制御に関連する特定の命令を記憶し、そして当該AO
Pがこのフィールドへ割当てられた最初のAOPである
ことを記憶するように、ステータス情報がセットされる
。次いで、プロセッサ中の優先順位が許容する場合「他
のAOPが割当てられて開始されることになる。
の制御に関連する特定の命令を記憶し、そして当該AO
Pがこのフィールドへ割当てられた最初のAOPである
ことを記憶するように、ステータス情報がセットされる
。次いで、プロセッサ中の優先順位が許容する場合「他
のAOPが割当てられて開始されることになる。
こうするためには、最後に開始されたAOP中のアドレ
スを増数器へゲートし、通常はこのアドレス8を加算し
、このようにして増数されたアドレスを開始さるべき次
のAOPへゲートすることが必要である。次のAOPに
関連する制御はシフト量をセットされ、そして各AOP
について設けられたラツチはその特定のAOPに対する
3ビットの「先行ID」を保持する。この「先行10」
は、該特定のAOPの前に開始されたAOPを識別する
ものである。取出さるべき諸ダブルワードへ複数のAO
Pを割当てるというこの手順は、AOPが利用可能であ
る間は、換言すれば最大数のAOPが開始されてしまう
まで、継続されるのである。任意のAOPはその開始時
に所与のダブルワード‘こ動的に割当てられる。これと
同様に、任意のAOPはその受取られたダブルワードを
EFへ転送した後にリセットされると、その割当を動的
に外される。割当を外された任意のAOPは、処理中の
任意のオペランド・チェーンにおける割当てのたに利用
可能となる。かくて、複数のバック・ポィンタによって
連結された諸AOPのチェーンが存在する場合、このチ
ェーン中の各AOPは次の上位アドレスを有するダブル
ワードを取出す。最初の取出を重複させるようなチェー
ンは通常のチェーンとは異なる。というのは、このよう
なチェーンでは第2のAOPが開始されたとき、その要
求アドレスは増数されず、従ってかかる重複的な取出チ
ェーンにおける最初の2個のAOPは同一ダブルワード
を取出すからである。PSCFがこのようにして取出さ
れた諸ダブルワードを諸AOPへ送る場合、該ダブルワ
ードは的CFの制御が指示する量だけ笛CFによってシ
フトされている。
スを増数器へゲートし、通常はこのアドレス8を加算し
、このようにして増数されたアドレスを開始さるべき次
のAOPへゲートすることが必要である。次のAOPに
関連する制御はシフト量をセットされ、そして各AOP
について設けられたラツチはその特定のAOPに対する
3ビットの「先行ID」を保持する。この「先行10」
は、該特定のAOPの前に開始されたAOPを識別する
ものである。取出さるべき諸ダブルワードへ複数のAO
Pを割当てるというこの手順は、AOPが利用可能であ
る間は、換言すれば最大数のAOPが開始されてしまう
まで、継続されるのである。任意のAOPはその開始時
に所与のダブルワード‘こ動的に割当てられる。これと
同様に、任意のAOPはその受取られたダブルワードを
EFへ転送した後にリセットされると、その割当を動的
に外される。割当を外された任意のAOPは、処理中の
任意のオペランド・チェーンにおける割当てのたに利用
可能となる。かくて、複数のバック・ポィンタによって
連結された諸AOPのチェーンが存在する場合、このチ
ェーン中の各AOPは次の上位アドレスを有するダブル
ワードを取出す。最初の取出を重複させるようなチェー
ンは通常のチェーンとは異なる。というのは、このよう
なチェーンでは第2のAOPが開始されたとき、その要
求アドレスは増数されず、従ってかかる重複的な取出チ
ェーンにおける最初の2個のAOPは同一ダブルワード
を取出すからである。PSCFがこのようにして取出さ
れた諸ダブルワードを諸AOPへ送る場合、該ダブルワ
ードは的CFの制御が指示する量だけ笛CFによってシ
フトされている。
もし所与のダブルワードが最初のAOPに対するもので
あれば、該ダブルワードは該AOP中のOPへ完全に入
力ゲートされよう。しかし、もしこれが最初のAOPで
はなく、しかもこのダブルワードが循環バイト(BD8
0の左端からシフト・オフされ且つその右端へ再挿入さ
れたバイト)を有するならば、これらの循環バイトは、
該バイトがBDBO上のダブルワードで有していたと同
じバイト位置において、先行するAOP中のOPへ入力
ゲートされることになる。残りのバイト、すなわち循環
シフトされなかったバイトは、該バイトがBDBO上の
ダブルワードで有していたと同じバイト位置において、
当該ダブルワ−ドを要求したAOP中のOPへ入力ゲー
トされる。命令の実行がEFで一且開始してしまうと、
充満状態にある諸AOP中のOPはEFによって必要と
される順序でその作業レジスタ、すなわちA及びBレジ
スタへ入力ゲートされる。命令のオペランドのためにチ
ェーン中の最後のAOPが開始されると、オペランド取
出を必要とする他の命令を復号することが許容されてそ
の取出が開始され、またこれと並行して、EFの内部で
は先にオペランドを取出された先行命令について実行が
継続される。
あれば、該ダブルワードは該AOP中のOPへ完全に入
力ゲートされよう。しかし、もしこれが最初のAOPで
はなく、しかもこのダブルワードが循環バイト(BD8
0の左端からシフト・オフされ且つその右端へ再挿入さ
れたバイト)を有するならば、これらの循環バイトは、
該バイトがBDBO上のダブルワードで有していたと同
じバイト位置において、先行するAOP中のOPへ入力
ゲートされることになる。残りのバイト、すなわち循環
シフトされなかったバイトは、該バイトがBDBO上の
ダブルワードで有していたと同じバイト位置において、
当該ダブルワ−ドを要求したAOP中のOPへ入力ゲー
トされる。命令の実行がEFで一且開始してしまうと、
充満状態にある諸AOP中のOPはEFによって必要と
される順序でその作業レジスタ、すなわちA及びBレジ
スタへ入力ゲートされる。命令のオペランドのためにチ
ェーン中の最後のAOPが開始されると、オペランド取
出を必要とする他の命令を復号することが許容されてそ
の取出が開始され、またこれと並行して、EFの内部で
は先にオペランドを取出された先行命令について実行が
継続される。
実施態様の詳細な説明
第1図は由Mシステム/370のアーキテクチヤを使用
した計算機システムを示す。
した計算機システムを示す。
1/0ブロックAI7はこのシステムへ接続されるすべ
ての1/0論理回路及び装置(たとえば、チャネル及び
1/0装置)を表わす。
ての1/0論理回路及び装置(たとえば、チャネル及び
1/0装置)を表わす。
1/0ブロックAI7はその制御情報をEFAI5から
受取り、そのデータをPSCFAI3と授受する。
受取り、そのデータをPSCFAI3と授受する。
偽CF AI3は主記憶(MS)AI6とデータを授受
するに必要なすべての論理回路を含む。
するに必要なすべての論理回路を含む。
さらに、確CF AI3は、仮想アドレスを実アドレス
へ変換するための論理と、プロセッサによって現に使用
されている情報を保持してその高速アクセスを可能とす
るキャッシュを含む。主記憶AI6は、このシステムへ
接続されるすべての主記憶を表わす。
へ変換するための論理と、プロセッサによって現に使用
されている情報を保持してその高速アクセスを可能とす
るキャッシュを含む。主記憶AI6は、このシステムへ
接続されるすべての主記憶を表わす。
諸ブロックAI0,AIl,AI2及びA9はこのシス
テムのIPPF A7を構成し、−層具体的にはブロッ
クAIO‘ま命令取出(1−FTH)を遂行し、ブロッ
クAI Iは命令復号(1−DEC)を遂行し、フロッ
クAI2は命令の待ち行列(1−Q)であり、ブロック
A9はオペランド取出(OPNDFTH)を遂行する。
従って、mPFA7は諸命令を取出し、該命令を復号し
、そしてPSCFA13からそのオペランドを取出すよ
うに動作する。所与の命令がEFAI5へ転送されると
き、そのオペランドは利用可能となっていることが多い
ので、この場合にはその処理を直ちに行うことができる
。IPPFA7は処理中の複数の命令を同時に保持する
ことができる。命令取出ブロックAIOは、PSCF
AI3から命令を取出すための論理と、命令復号ブロッ
クAIIによって必要とされるまでこれらの命令を保持
するための論理とを表わす。
テムのIPPF A7を構成し、−層具体的にはブロッ
クAIO‘ま命令取出(1−FTH)を遂行し、ブロッ
クAI Iは命令復号(1−DEC)を遂行し、フロッ
クAI2は命令の待ち行列(1−Q)であり、ブロック
A9はオペランド取出(OPNDFTH)を遂行する。
従って、mPFA7は諸命令を取出し、該命令を復号し
、そしてPSCFA13からそのオペランドを取出すよ
うに動作する。所与の命令がEFAI5へ転送されると
き、そのオペランドは利用可能となっていることが多い
ので、この場合にはその処理を直ちに行うことができる
。IPPFA7は処理中の複数の命令を同時に保持する
ことができる。命令取出ブロックAIOは、PSCF
AI3から命令を取出すための論理と、命令復号ブロッ
クAIIによって必要とされるまでこれらの命令を保持
するための論理とを表わす。
このブロックAIOは、分岐命令が処理されているとき
、その目標ストリーム及び正規ストリームの両方から命
令を取出すことができる。命令復号ブロックAIIは、
命令の復号に関係するすべての論理を表わす。
、その目標ストリーム及び正規ストリームの両方から命
令を取出すことができる。命令復号ブロックAIIは、
命令の復号に関係するすべての論理を表わす。
このブロックAIIは1個の命令レジスタを含み、議し
ジスタは命令取出ブロックAIOから命令を1個ずつ受
取り、該命令が復号されるまでこれを保持する。所与の
命令を復号する場合には、システム中の多数のィンタロ
ック条件を調べ、これに基づいて、この命令の実行に備
えてmPFA7で遂行されねばならない動作を特定のサ
イクルで開始することができるか否かを決定する必要が
ある。このブロックAIIは、特定の命令の有効アドレ
スを計算するに必要な論理も含む。もし特定の命令が復
号可能であるということが判明すれば、バスA4を介し
て「復号成功」信号が生ぜられ、この信号に応じて所定
の動作が開始される。もし特定サイクルの間にこの命令
を復号できないということが判明すれば、この命令は1
サイクル余計に命令レジスタに保持されるので、この命
令が復号可能であるか杏かを後続サイクルで決定するこ
とができる。各命令はプログラムによって論理的に呼出
される順序で復号されるが、その際、分岐の経路を仮定
することが行われる。もし実際の分岐経路が仮定した経
路と違うことが判れば、この間違った経路で処理された
すべての命令がリセットされ、然る後「実際の分岐経路
に沿った動作が再開される。所与の命令が成功裡に復号
されると、この命令は命令復号ブロックAIIから命令
待ち行列ブロックA12へ転送され、そしてオペランド
の取出が必要であれば、その有効アドレス及び適当な制
御信号がバスA4を介してオペランド取出ブロックA9
へ送られる。2バイト及び4バイト長の命令については
、復号サイクルとして1サイクルだけが必要であるにす
ぎない。
ジスタは命令取出ブロックAIOから命令を1個ずつ受
取り、該命令が復号されるまでこれを保持する。所与の
命令を復号する場合には、システム中の多数のィンタロ
ック条件を調べ、これに基づいて、この命令の実行に備
えてmPFA7で遂行されねばならない動作を特定のサ
イクルで開始することができるか否かを決定する必要が
ある。このブロックAIIは、特定の命令の有効アドレ
スを計算するに必要な論理も含む。もし特定の命令が復
号可能であるということが判明すれば、バスA4を介し
て「復号成功」信号が生ぜられ、この信号に応じて所定
の動作が開始される。もし特定サイクルの間にこの命令
を復号できないということが判明すれば、この命令は1
サイクル余計に命令レジスタに保持されるので、この命
令が復号可能であるか杏かを後続サイクルで決定するこ
とができる。各命令はプログラムによって論理的に呼出
される順序で復号されるが、その際、分岐の経路を仮定
することが行われる。もし実際の分岐経路が仮定した経
路と違うことが判れば、この間違った経路で処理された
すべての命令がリセットされ、然る後「実際の分岐経路
に沿った動作が再開される。所与の命令が成功裡に復号
されると、この命令は命令復号ブロックAIIから命令
待ち行列ブロックA12へ転送され、そしてオペランド
の取出が必要であれば、その有効アドレス及び適当な制
御信号がバスA4を介してオペランド取出ブロックA9
へ送られる。2バイト及び4バイト長の命令については
、復号サイクルとして1サイクルだけが必要であるにす
ぎない。
しかし、6バイト長の命令については、オペラソドの各
々に関連して1サイクルずつ、つまり2復号サイクルが
必要である。オペランドの敬出は、これら復号サイクル
の各々ごとに開始されうる。しかし、この命令は第2復
号サイクルまで命令待ち行列ブロックAI2へ移動ごれ
ない。命令待ち行列ブロックAI2は、復号から完全な
実行まで諸命令を保持する如き命令待ち行列論理を表わ
す。
々に関連して1サイクルずつ、つまり2復号サイクルが
必要である。オペランドの敬出は、これら復号サイクル
の各々ごとに開始されうる。しかし、この命令は第2復
号サイクルまで命令待ち行列ブロックAI2へ移動ごれ
ない。命令待ち行列ブロックAI2は、復号から完全な
実行まで諸命令を保持する如き命令待ち行列論理を表わ
す。
このブロックAI2は4個の待ち行列位置に1個ずつ、
計4個の命令を保持することができ、そのうちの1個は
実行中でもよい。また待ち行列位置は簡単なラウンド・
ロビンの様式で使用される。2ビットの「待ち行列入力
ポィンタハすなわち「Q入力ポインタ」は次にロードさ
るべき待ち行列位置を指定し、命令が命令待ち行列ブロ
ックAI2へ移動されるたびに1ずつステップされる。
計4個の命令を保持することができ、そのうちの1個は
実行中でもよい。また待ち行列位置は簡単なラウンド・
ロビンの様式で使用される。2ビットの「待ち行列入力
ポィンタハすなわち「Q入力ポインタ」は次にロードさ
るべき待ち行列位置を指定し、命令が命令待ち行列ブロ
ックAI2へ移動されるたびに1ずつステップされる。
2ビットの「待ち行列出力ポインタハすなわち「Q出力
ポインタ」はEFAI5へ送られるべき次の待ち行列位
置を指定し、命令の実行が開始するたびに1ずつステッ
プされる。
ポインタ」はEFAI5へ送られるべき次の待ち行列位
置を指定し、命令の実行が開始するたびに1ずつステッ
プされる。
また所与の命令がEFAI5へ移動して第1実行サイク
ルに1サイクルだけ先行する場合には、「OP分岐取得
」信号が発生される。EFAI5は、シフトや加算等の
諸命令を実行するに必要なすべての論理を表わす。
ルに1サイクルだけ先行する場合には、「OP分岐取得
」信号が発生される。EFAI5は、シフトや加算等の
諸命令を実行するに必要なすべての論理を表わす。
この論理は、各命令がどのように実行さるべきかを決定
する処の制御記憶中のマイク。プログラムによって制御
される。EFAI5は、プログラムによって呼出された
順序で、各命令を順次に実行する。1サイクルで実行す
ることができる命令に遭遇した場合、該命令は命令待ち
行列ブロックAI2からEFAI5へ通過され、そこで
各命令あたり1サイクルの速度で実行される。
する処の制御記憶中のマイク。プログラムによって制御
される。EFAI5は、プログラムによって呼出された
順序で、各命令を順次に実行する。1サイクルで実行す
ることができる命令に遭遇した場合、該命令は命令待ち
行列ブロックAI2からEFAI5へ通過され、そこで
各命令あたり1サイクルの速度で実行される。
EFAI5は汎用レジスタへのすべての書込みを処理し
、またすべての割込条件を処理する。ブロックAI4は
システム中の汎用レジスタGRを表わす。
、またすべての割込条件を処理する。ブロックAI4は
システム中の汎用レジスタGRを表わす。
これらの汎用レジスタは命令の実行のためにEFAI5
によってアクセス可能であり〜実行されようとしている
命令の準備の一部として命令待ち行列ブロックAI2の
制御下でEFA15へ謙出され、また有効アドレスを計
算するために命令復号ブロックAIIによって謙出され
る。オペランド取出ブロックA9は主記憶AI6からオ
ペランドを取出すために使用される論理を示す。
によってアクセス可能であり〜実行されようとしている
命令の準備の一部として命令待ち行列ブロックAI2の
制御下でEFA15へ謙出され、また有効アドレスを計
算するために命令復号ブロックAIIによって謙出され
る。オペランド取出ブロックA9は主記憶AI6からオ
ペランドを取出すために使用される論理を示す。
このブロックA9は後述するように本発明の要部である
。第2図には、前記の諸ブロックAI3,AIl,AI
2及びAI5へそれぞれ接続されたオペランド取出ブロ
ックA9のインタフェース・バスAI乃至A6及びA8
が略示されている。
。第2図には、前記の諸ブロックAI3,AIl,AI
2及びAI5へそれぞれ接続されたオペランド取出ブロ
ックA9のインタフェース・バスAI乃至A6及びA8
が略示されている。
これらのバスはそれぞれ次のように定義される複数の線
から成る。バスAI B2 一 取出要求 Q9−シフト量 バスA2 A2A一 PSCF使用中 A2B一 PSCF前進 A2C一 取出拒否 A2D− 取出遅延 A28− 取出進行中 A2F− BDB。
から成る。バスAI B2 一 取出要求 Q9−シフト量 バスA2 A2A一 PSCF使用中 A2B一 PSCF前進 A2C一 取出拒否 A2D− 取出遅延 A28− 取出進行中 A2F− BDB。
バスバスA3
E18‐ オペランド制御の俺CF要求
836− オペランド制御の使用中
バスA4
A4Aー アドレス加算器出力
A4B一 復号成功
A4Cー オベランド長
A4D− 行先取出
A4E− ソース取出
A4F− 命令ビット11
A4G一 MNC,NC,OC,XC,CLC復号A4
H− LM復号A4J− SS第2復号サイクル バスA5 A5A− OP分岐取得 A5B− Q出力ポインタ A5C一 Q入力ポインタ バスA6 A6A一 Aレジスタへの主記憶オペランドA6B一
Bレジスタへの主記憶オペランドバスA8RI − A
及びBレジスタへのバス GI7− Aレジスタへの入力ゲート GI8一 Bレジスタへの入力ゲート S2 一 Eクロツク停止 第2図はオペランド取出ブロックA9の主要な構成要素
を示す。
H− LM復号A4J− SS第2復号サイクル バスA5 A5A− OP分岐取得 A5B− Q出力ポインタ A5C一 Q入力ポインタ バスA6 A6A一 Aレジスタへの主記憶オペランドA6B一
Bレジスタへの主記憶オペランドバスA8RI − A
及びBレジスタへのバス GI7− Aレジスタへの入力ゲート GI8一 Bレジスタへの入力ゲート S2 一 Eクロツク停止 第2図はオペランド取出ブロックA9の主要な構成要素
を示す。
詳述すれば、合計6個のAOP、すなわちAOP−A乃
至AOP−Fが設けられ、またその内部にはAAR−A
乃至OAR−F並びにOP−A乃至OP−Fがそれぞれ
設けられる。
至AOP−Fが設けられ、またその内部にはAAR−A
乃至OAR−F並びにOP−A乃至OP−Fがそれぞれ
設けられる。
簡単のために第2図にはAOP−Aだけが詳細に図示さ
れているが、これはOAR−A,OP一A及びそれらの
制御CTLを含む。これと同様の配列がAOF−B乃至
AOP−Fの各々に設けられる。AOPの各々は主記憶
A1 6から取出さるべきダブルワードをアドレスし、
このダブルワードを受取り、そしてEFAI5によって
必要とされるまでこれをバッファする。各命令ごとに十
分な数のAOPが割当てられるので、オペランド・フィ
ールド全体を取出し、これを必要に応じてEFA15に
供給することができる。IBMシステム/370には、
或る命令のすべてのオペランド取出を後続命令のオペラ
ンド取出の前に遂行しなければならないというアーキテ
クチヤ上の制約がある。
れているが、これはOAR−A,OP一A及びそれらの
制御CTLを含む。これと同様の配列がAOF−B乃至
AOP−Fの各々に設けられる。AOPの各々は主記憶
A1 6から取出さるべきダブルワードをアドレスし、
このダブルワードを受取り、そしてEFAI5によって
必要とされるまでこれをバッファする。各命令ごとに十
分な数のAOPが割当てられるので、オペランド・フィ
ールド全体を取出し、これを必要に応じてEFA15に
供給することができる。IBMシステム/370には、
或る命令のすべてのオペランド取出を後続命令のオペラ
ンド取出の前に遂行しなければならないというアーキテ
クチヤ上の制約がある。
さらに、多くの命令については、オペランドの取出をそ
のフィールドの下位機から上位端へ順次に遂行しなけれ
ばならないという制約もある。このため、或る命令のオ
ペランドを取出すに必要なすべてのAOPは、オペラン
ド取出を必要とする後続オペランドの復号が許容される
前に、割当てられなければならない。たとえば、3ダブ
ルワードの取出を必要とするようなLM命令について考
察する。このような命令の場合、次の命令の復号が許容
される前に、その取出を遂行するために3個のAOPが
割当てられねばならない。これらのAOPのうち最初の
AOFは、LM命令が復号されるとき命令復号ブロック
AIIから受取られる諸信号によって割当てられ、その
動作を開始させる。それと同時に、命令復号ブロックA
IIから他の制御信号はソース制御(SRCCTL)を
作動させる。オペランド取母ブロックA9で優先順位の
条件が許容する場合、ソース制御は他の2個のAOPを
割当ててそれらを開始させる。従って、当該フィールド
の取出に関連する3個のAOPは互いにチェーンされて
いるものと考えられる。LM命令を実行するための準備
が完了すると、最初に割当てられたAOPにバッファさ
れているデータがEFAI5へ自動的に入力ゲートされ
、然る後、EFAI5の要求に応じて割当て済みの他の
AOPにバッファされているデータがEF A15へ供
歌給される。多数のSS(Stはge−to−Stor
age:記憶城間)論理命令は主記憶AI6から2フィ
ールドを取出すことを必要とし、しかも該フィールドの
各々は多数のダブルワードを含むことがあるので、オペ
ランド取出ブロックA9は、2種類のチェーンについて
複数のAOPを同時に割当て且つ開始させることが必要
である。
のフィールドの下位機から上位端へ順次に遂行しなけれ
ばならないという制約もある。このため、或る命令のオ
ペランドを取出すに必要なすべてのAOPは、オペラン
ド取出を必要とする後続オペランドの復号が許容される
前に、割当てられなければならない。たとえば、3ダブ
ルワードの取出を必要とするようなLM命令について考
察する。このような命令の場合、次の命令の復号が許容
される前に、その取出を遂行するために3個のAOPが
割当てられねばならない。これらのAOPのうち最初の
AOFは、LM命令が復号されるとき命令復号ブロック
AIIから受取られる諸信号によって割当てられ、その
動作を開始させる。それと同時に、命令復号ブロックA
IIから他の制御信号はソース制御(SRCCTL)を
作動させる。オペランド取母ブロックA9で優先順位の
条件が許容する場合、ソース制御は他の2個のAOPを
割当ててそれらを開始させる。従って、当該フィールド
の取出に関連する3個のAOPは互いにチェーンされて
いるものと考えられる。LM命令を実行するための準備
が完了すると、最初に割当てられたAOPにバッファさ
れているデータがEFAI5へ自動的に入力ゲートされ
、然る後、EFAI5の要求に応じて割当て済みの他の
AOPにバッファされているデータがEF A15へ供
歌給される。多数のSS(Stはge−to−Stor
age:記憶城間)論理命令は主記憶AI6から2フィ
ールドを取出すことを必要とし、しかも該フィールドの
各々は多数のダブルワードを含むことがあるので、オペ
ランド取出ブロックA9は、2種類のチェーンについて
複数のAOPを同時に割当て且つ開始させることが必要
である。
このような理由で、他方のオペランドを扱うために、ソ
ー制御と殆んど同じ構成を有する行先制御(DSTCT
L)と呼ばれる第2組の制御が設けられる。ここで、行
先制御は命令の第1(行先)オペランド‘こよって使用
されるのに対し、ソース制御は命令の第2(ソース)オ
ペランドによって使用されるものである。また、オペラ
ンド取出を順序正しく維持しなければならないという制
約と、IPPF A7及び裕CF AI3の間のインタ
フェースの制約があるために、オペランド取出ブロック
A9は或る取出を反復しなければならないことがある。
この目的に沿って、必要に応じて或る取出を反復させる
ための再取世論理(RE−FTHLGC)が設けられる
。MCF AI3がキャッシュを参照して取出を遂行す
ることができない場合、IPPFA7のオペランド取出
ブロックA9へデータを復帰させるまでに余分の遅延が
含まれる。
ー制御と殆んど同じ構成を有する行先制御(DSTCT
L)と呼ばれる第2組の制御が設けられる。ここで、行
先制御は命令の第1(行先)オペランド‘こよって使用
されるのに対し、ソース制御は命令の第2(ソース)オ
ペランドによって使用されるものである。また、オペラ
ンド取出を順序正しく維持しなければならないという制
約と、IPPF A7及び裕CF AI3の間のインタ
フェースの制約があるために、オペランド取出ブロック
A9は或る取出を反復しなければならないことがある。
この目的に沿って、必要に応じて或る取出を反復させる
ための再取世論理(RE−FTHLGC)が設けられる
。MCF AI3がキャッシュを参照して取出を遂行す
ることができない場合、IPPFA7のオペランド取出
ブロックA9へデータを復帰させるまでに余分の遅延が
含まれる。
この状況では、PSCF A1 3との通信を扱うため
にオペランド取出ブロックA9中に遅延取出論理(DL
YD−FTHLGC)が設けられる。ここで、5個の汎
用レジスタヘロードするようなLM命令(LM 0,4
,ADR)の例について考察する。
にオペランド取出ブロックA9中に遅延取出論理(DL
YD−FTHLGC)が設けられる。ここで、5個の汎
用レジスタヘロードするようなLM命令(LM 0,4
,ADR)の例について考察する。
この例の場合、主記憶AI6中のデータは、以下の表−
1に示すように、第1バイト「A」を第1ダブルワード
DWIのバイト位贋「ADR」に置かれ、その後に残り
のバイトが置かれる。なお、汎用レジスタの各々は1ワ
ードをそれぞれ保持する。表−I (主記憶AI6中のデータ) DW・「町町 A B C D E DW2 F G 日I J K L M DW3 NOPQR S T− 性能を向上させるために「オペランド取出ブロックA9
は、EFAI5の処理に最適のバイト境界へソース・オ
ペランドを位置合せするめの手段を備えている。
1に示すように、第1バイト「A」を第1ダブルワード
DWIのバイト位贋「ADR」に置かれ、その後に残り
のバイトが置かれる。なお、汎用レジスタの各々は1ワ
ードをそれぞれ保持する。表−I (主記憶AI6中のデータ) DW・「町町 A B C D E DW2 F G 日I J K L M DW3 NOPQR S T− 性能を向上させるために「オペランド取出ブロックA9
は、EFAI5の処理に最適のバイト境界へソース・オ
ペランドを位置合せするめの手段を備えている。
説明中のLM命令の例では、ロードさるべき最初の汎用
レジスタは偶数番号を有し「そして最初の入力ゲートの
際には前記の位置合せによって記憶オペランドの最初の
8バイトがEFA15中のAレジスタへ供給される。次
いで、これらの8バイトは汎用レジスタ・ブロックAI
4に設けられた最初の2個の汎用レジスタへ同時に書込
まれ「然る後、オペランド取出ブロックA9から後続デ
ータの要求が与えられると、他の8バイト・グループが
供給され、直ちに汎用レジスタ・ブロックA14にある
2個の汎用レジスタへ書込まれる。もしLM命令によっ
てロードされる最初の汎用レジスタが奇数番号を有する
ものであれば、前記の最適位置合せにより記憶オペラン
ドの最初の4バイトがAレジスタの最後の4バイト位暦
に供給され、そこから当該汎用レジスタへ書込まれる。
後続データの要求が与えられると、オペランド取出ブロ
ックA9は記憶オペランドの後続8バイト・グループを
供V給し、これを汎用レジスタ・ブロックAI4の汎用
レジスタ対へ書込ませる。この例の場合、書込まるべき
最初の汎用レジス外ま偶数番号を有し、従って最初の入
力ゲート時に8バイトが置かれることが望ましい。しか
しながら、前記の表−1に示すように、主記憶AI6中
のデータはその第1バイト「A」が第1ダブルワードの
バイト位贋3にあるように位置合せされている。従って
、EFAI5へ供給さるべき最初の8バイトのうち、5
バイトは第1ダブルワードから与えられ、残りの3バイ
トは第2ダブルワードから与えられる。これらのバイト
を正しいバイト位置へ移動させる操作は俺CFA13に
設けられたシフタによって行われ、該シフタはオペラン
ド敬世ブロックA9で制御されるシフト量に応じて動作
する。このシフト量は左シフトの量を指定する3ビット
から成る。当該ダブルワードの左端からシフト・オフさ
れた任意のバイトは、その右端へ再挿入される。ここで
、第2図に関連して、このフィールドを取出すために3
個のAOP、すなわちAOP−A乃至AOP−Cが割当
てられ、そしてこれらのAOPは主記憶バイト位置「A
DRハ「ADR十8」及び「ADR+16」に置かれた
各ダブルワードを取出すためにそれぞれ割当てられてい
るものと仮定する。
レジスタは偶数番号を有し「そして最初の入力ゲートの
際には前記の位置合せによって記憶オペランドの最初の
8バイトがEFA15中のAレジスタへ供給される。次
いで、これらの8バイトは汎用レジスタ・ブロックAI
4に設けられた最初の2個の汎用レジスタへ同時に書込
まれ「然る後、オペランド取出ブロックA9から後続デ
ータの要求が与えられると、他の8バイト・グループが
供給され、直ちに汎用レジスタ・ブロックA14にある
2個の汎用レジスタへ書込まれる。もしLM命令によっ
てロードされる最初の汎用レジスタが奇数番号を有する
ものであれば、前記の最適位置合せにより記憶オペラン
ドの最初の4バイトがAレジスタの最後の4バイト位暦
に供給され、そこから当該汎用レジスタへ書込まれる。
後続データの要求が与えられると、オペランド取出ブロ
ックA9は記憶オペランドの後続8バイト・グループを
供V給し、これを汎用レジスタ・ブロックAI4の汎用
レジスタ対へ書込ませる。この例の場合、書込まるべき
最初の汎用レジス外ま偶数番号を有し、従って最初の入
力ゲート時に8バイトが置かれることが望ましい。しか
しながら、前記の表−1に示すように、主記憶AI6中
のデータはその第1バイト「A」が第1ダブルワードの
バイト位贋3にあるように位置合せされている。従って
、EFAI5へ供給さるべき最初の8バイトのうち、5
バイトは第1ダブルワードから与えられ、残りの3バイ
トは第2ダブルワードから与えられる。これらのバイト
を正しいバイト位置へ移動させる操作は俺CFA13に
設けられたシフタによって行われ、該シフタはオペラン
ド敬世ブロックA9で制御されるシフト量に応じて動作
する。このシフト量は左シフトの量を指定する3ビット
から成る。当該ダブルワードの左端からシフト・オフさ
れた任意のバイトは、その右端へ再挿入される。ここで
、第2図に関連して、このフィールドを取出すために3
個のAOP、すなわちAOP−A乃至AOP−Cが割当
てられ、そしてこれらのAOPは主記憶バイト位置「A
DRハ「ADR十8」及び「ADR+16」に置かれた
各ダブルワードを取出すためにそれぞれ割当てられてい
るものと仮定する。
PSCFAI3はこのアドレスの下位3ビットを無視し
、アドレスされたバイトを含むダブルワードを復帰させ
る。注意すべきは、これらのAOPが割当てられる順序
はどのAOPが現に割当てられているかということに依
存し、従ってA,B,C,D、等の如き必然的な順序づ
けは存在しないということである。もっとも、LM命令
が復号されるときにどのAOPも使用中でなければ、A
OPはこの順序で割当てられることになろう。まず、A
OP−Aに設けられたOAR−A中の取出要求アドレス
に応じて復帰されたデータを考察する。このようにして
取出された第1ダブルワードDWIはは3バイトだけ左
シフトすることによって位置合せされるので、PSCF
A13によって復帰されるデータはABCDE−−−の
順序を有する。シフト済みの第1ダブルワードはAOP
−A中のOP−Aへ入力ゲートされる。前記の動作は以
下の表−2に示されており、ここで記号Xは関係のない
以前の内容を表わす。アンダーラインはどのバイトが入
力ゲートされたかということを示す。表−2 (寸べランド取出ブロックA9 へ□−トトされるDWI) 表−3 (才べランド取出ブoックA9 へロードされるDW2) AOP−Bの取出によって得られる第2ダブルワードD
W2は諸バイトIJKLMFGHである。
、アドレスされたバイトを含むダブルワードを復帰させ
る。注意すべきは、これらのAOPが割当てられる順序
はどのAOPが現に割当てられているかということに依
存し、従ってA,B,C,D、等の如き必然的な順序づ
けは存在しないということである。もっとも、LM命令
が復号されるときにどのAOPも使用中でなければ、A
OPはこの順序で割当てられることになろう。まず、A
OP−Aに設けられたOAR−A中の取出要求アドレス
に応じて復帰されたデータを考察する。このようにして
取出された第1ダブルワードDWIはは3バイトだけ左
シフトすることによって位置合せされるので、PSCF
A13によって復帰されるデータはABCDE−−−の
順序を有する。シフト済みの第1ダブルワードはAOP
−A中のOP−Aへ入力ゲートされる。前記の動作は以
下の表−2に示されており、ここで記号Xは関係のない
以前の内容を表わす。アンダーラインはどのバイトが入
力ゲートされたかということを示す。表−2 (寸べランド取出ブロックA9 へ□−トトされるDWI) 表−3 (才べランド取出ブoックA9 へロードされるDW2) AOP−Bの取出によって得られる第2ダブルワードD
W2は諸バイトIJKLMFGHである。
以下の表−3はこのデータがどのようにしてOP−A及
びOP−Bへ入力ゲートされるかということを示す。表
−4 (すべランド取出ブロックA9 ′\ロードされるDW3 ) しかし、取出された第2ダブルワードの全部がOP−B
へ入力ゲートされるわけではない。
びOP−Bへ入力ゲートされるかということを示す。表
−4 (すべランド取出ブロックA9 ′\ロードされるDW3 ) しかし、取出された第2ダブルワードの全部がOP−B
へ入力ゲートされるわけではない。
左シフトされたけれども左端からシフト・オフされなか
ったバイト、すなわち1,J,K,L及びMだけがOP
−Bへ入力ゲートされる。左端からシフト・オフされ且
つ右端に再挿入された他の3バイトF,G及び日はOP
一Bに先行するOP−Aへ入力ゲートされる。この第2
の取出に応じたデータが復帰され且つこのデータがOP
−A及びOP−Bへ入力ゲートされてしまうと、OP−
Aの完成された内容をEFA15へ供給することができ
る。
ったバイト、すなわち1,J,K,L及びMだけがOP
−Bへ入力ゲートされる。左端からシフト・オフされ且
つ右端に再挿入された他の3バイトF,G及び日はOP
一Bに先行するOP−Aへ入力ゲートされる。この第2
の取出に応じたデータが復帰され且つこのデータがOP
−A及びOP−Bへ入力ゲートされてしまうと、OP−
Aの完成された内容をEFA15へ供給することができ
る。
第3の取出に応じたデータ、すなわち第3ダブルワード
DW3はQRST−NOPであり、以下の表−4に示す
ようにOP一C及びOP−Bへ入力ゲートされる。表−
5(第2オペラソドの救出位置合せ) DWI −AB CDEF DVV2 G 日 I J − − − −(
命令の実行完了後における第1オペランドの書込位置合
せ) DVV3 − − A B C
DDWJ4 8 F G 日 I J
− −このようにして取出された第3ダブルワードも3
バイトだけ左シフトされ、その際、左端からシフト・オ
フされなかったバイトはOP一Cへ入力ゲートされ、左
端からシフト・オフされ且つ右端に再挿入されたバイト
はOP−Cに先行するOP−Bへ入力ゲートされる。
DW3はQRST−NOPであり、以下の表−4に示す
ようにOP一C及びOP−Bへ入力ゲートされる。表−
5(第2オペラソドの救出位置合せ) DWI −AB CDEF DVV2 G 日 I J − − − −(
命令の実行完了後における第1オペランドの書込位置合
せ) DVV3 − − A B C
DDWJ4 8 F G 日 I J
− −このようにして取出された第3ダブルワードも3
バイトだけ左シフトされ、その際、左端からシフト・オ
フされなかったバイトはOP一Cへ入力ゲートされ、左
端からシフト・オフされ且つ右端に再挿入されたバイト
はOP−Cに先行するOP−Bへ入力ゲートされる。
この第3ダブルワードの取出が完了すると、OP一B及
びOP‐Cに置かれたデータをEF AI5へ供野績す
ることができる。以上では幾つかの例を参照しながら動
作上の概念を説明したが、以下ではこれらの概念を一般
化して説明する。まずシフト量を決定することが必要で
あり、このためオペランドの第1バイトが置かれた主記
憶バイト位置と、EFAI5によって必要とされる該第
1バイトのバイト位置とが考慮される。このシフト量は
、アドレスされたフィールドから取出された各ダブルワ
ードに適用される。第1ダブルワードについては、その
全バイトがシフトされ、然る後、割当てられた最初のO
Pへ入力ゲートされる。後続の各ダブルワードについて
は、その左端からシフト・オフされたバイトは常に前に
割当てられたAOP中のOPへ入力ゲートされ、また左
シフトされたけれども左端からシフト・オフされなかっ
たバイトは当該取出のために用いられたアドレスを保持
するAOP中のOPへ入力ゲートされる。このシフト量
が零でなければ、特定のAOPに贋かれたデータは次の
AOPによる取出が完了するまで使用することができな
い。というのは、次の取出によって得られるデー夕の或
るものが、該特定のOPの内容を完成させるために必要
となる場合があるからである。割当てられた最後のOP
に置かれたデータは、その取出が完了するとすぐに使用
されることはもちろんである。第1ダブルワード中の必
要なバイトのうち1以上のバイトが左端からシフト・オ
フされる場合、これらのバイトが失われないようにする
ために該ダブルワードへ2個のAOPを割当てることが
必要である。
びOP‐Cに置かれたデータをEF AI5へ供野績す
ることができる。以上では幾つかの例を参照しながら動
作上の概念を説明したが、以下ではこれらの概念を一般
化して説明する。まずシフト量を決定することが必要で
あり、このためオペランドの第1バイトが置かれた主記
憶バイト位置と、EFAI5によって必要とされる該第
1バイトのバイト位置とが考慮される。このシフト量は
、アドレスされたフィールドから取出された各ダブルワ
ードに適用される。第1ダブルワードについては、その
全バイトがシフトされ、然る後、割当てられた最初のO
Pへ入力ゲートされる。後続の各ダブルワードについて
は、その左端からシフト・オフされたバイトは常に前に
割当てられたAOP中のOPへ入力ゲートされ、また左
シフトされたけれども左端からシフト・オフされなかっ
たバイトは当該取出のために用いられたアドレスを保持
するAOP中のOPへ入力ゲートされる。このシフト量
が零でなければ、特定のAOPに贋かれたデータは次の
AOPによる取出が完了するまで使用することができな
い。というのは、次の取出によって得られるデー夕の或
るものが、該特定のOPの内容を完成させるために必要
となる場合があるからである。割当てられた最後のOP
に置かれたデータは、その取出が完了するとすぐに使用
されることはもちろんである。第1ダブルワード中の必
要なバイトのうち1以上のバイトが左端からシフト・オ
フされる場合、これらのバイトが失われないようにする
ために該ダブルワードへ2個のAOPを割当てることが
必要である。
これは重榎取出条件と呼ばれる。ここで、童複取出の例
として、ダブルワード境界の3バイト後にある主記憶バ
イト位置「ADR2」で開始する、10バイトの第2オ
ペランドを、ダブルワード境界の5バイト後にある主記
億バイト位直「ADRI」で開始する第1オペランドへ
移動させるようなMVC命令について、6バイトの左シ
フトを使用した状況を考察する。この例は以下の表−5
乃至表−8に示されている。表−5には、第1バイト「
A」が主記憶バイト位鷹「ADR 2」に贋かれている
第2オペランドの敬世蟻における位置合せと、第1バイ
ト「A」が主記憶バイト位置「ADRI」に置かれる第
1オペランドの書込時における位置合せがそれぞれ示さ
れている。
として、ダブルワード境界の3バイト後にある主記憶バ
イト位置「ADR2」で開始する、10バイトの第2オ
ペランドを、ダブルワード境界の5バイト後にある主記
億バイト位直「ADRI」で開始する第1オペランドへ
移動させるようなMVC命令について、6バイトの左シ
フトを使用した状況を考察する。この例は以下の表−5
乃至表−8に示されている。表−5には、第1バイト「
A」が主記憶バイト位鷹「ADR 2」に贋かれている
第2オペランドの敬世蟻における位置合せと、第1バイ
ト「A」が主記憶バイト位置「ADRI」に置かれる第
1オペランドの書込時における位置合せがそれぞれ示さ
れている。
表−6
(AOP−Aの取出)
OP−A 耳 F − − A B C
DOPHB X X X X X X X XOP
−C X X X X X X X X
表−7(AOP−Bの取出) 表−8 (AOP−Cの取出) MVC命令については、諸AOPにおけるデータ位置合
せは、取出されたオペランドの第1バイトを書込まるべ
き位置のダブルワード境界について位置合せした後、こ
のデ−夕をそのままEFAI5へ移動させたり書込んだ
りするようなものであることが望ましい。
DOPHB X X X X X X X XOP
−C X X X X X X X X
表−7(AOP−Bの取出) 表−8 (AOP−Cの取出) MVC命令については、諸AOPにおけるデータ位置合
せは、取出されたオペランドの第1バイトを書込まるべ
き位置のダブルワード境界について位置合せした後、こ
のデ−夕をそのままEFAI5へ移動させたり書込んだ
りするようなものであることが望ましい。
この場合、LM命令の例に関連して説明した前記の動作
概念が適用されるならば、取出されたオペランドの或る
バイトが失われることになろう。
概念が適用されるならば、取出されたオペランドの或る
バイトが失われることになろう。
この損失が生ずるのは、書込オペランドの第1ダブルワ
ードに含まれるバイト数が取出オペランドの第1ダブル
ワード‘と含まれるバイト数よりも小さい場合である。
この損失を回避するには「最初の2個のAOPを最初の
取出ダブルワードへ重複的に割当てればよい。LM命令
について既に説明した動作概念を適用できるのは「主記
憶A車6中の同一ダブルワードを取出すために最初の2
個のAOPが割当てられる場合だけである。この場合、
割当てられた最初のAOPは最初のダブルワードの循環
シフト・バイトをバツフアし、第2のAOPは第2のダ
ブルワードの非一循環シフト・バイトをバッファする。
第2のAOPが第1の取母ダブルワードへ割当てられた
後、後続のAOPが連続的な取出ダブルワードへそれぞ
れ割当てられる。2個の取出ダブルワードを含むMVC
命令の重複シフトの例では、3個のAOPが必要である
が、以下ではこれらがAOP−A,AOP−B及びAO
P−Cであると仮定する。
ードに含まれるバイト数が取出オペランドの第1ダブル
ワード‘と含まれるバイト数よりも小さい場合である。
この損失を回避するには「最初の2個のAOPを最初の
取出ダブルワードへ重複的に割当てればよい。LM命令
について既に説明した動作概念を適用できるのは「主記
憶A車6中の同一ダブルワードを取出すために最初の2
個のAOPが割当てられる場合だけである。この場合、
割当てられた最初のAOPは最初のダブルワードの循環
シフト・バイトをバツフアし、第2のAOPは第2のダ
ブルワードの非一循環シフト・バイトをバッファする。
第2のAOPが第1の取母ダブルワードへ割当てられた
後、後続のAOPが連続的な取出ダブルワードへそれぞ
れ割当てられる。2個の取出ダブルワードを含むMVC
命令の重複シフトの例では、3個のAOPが必要である
が、以下ではこれらがAOP−A,AOP−B及びAO
P−Cであると仮定する。
AOP−A及びAOP一Bは主記憶バイト位置「ADR
2」に置かれた第1の取出ダブルワードへ割当てられ
、AOP−Cは主記憶バイト位置「ADR2十8」に置
かれた第2の取出ダブルワードへ割当てられる。もし追
加の取出が必要であれば、それぞれのAOPをオペラン
ド・フィールドの上位ダブルワードへ順次割当てればよ
く、前記のようにAOPを重複的に割当てることは必要
ない。この例では〜AOP−A及びAOP−Bは第1及
び第2の重複AOPと呼ばれる。第1のダブルワードへ
割当てられたAOP−Aの取出に応じて6バイトだけ左
シフトされたデータが復帰されると「 このデータ全体
は表一6に示すようにOP−Aへ入力ゲートされる。
2」に置かれた第1の取出ダブルワードへ割当てられ
、AOP−Cは主記憶バイト位置「ADR2十8」に置
かれた第2の取出ダブルワードへ割当てられる。もし追
加の取出が必要であれば、それぞれのAOPをオペラン
ド・フィールドの上位ダブルワードへ順次割当てればよ
く、前記のようにAOPを重複的に割当てることは必要
ない。この例では〜AOP−A及びAOP−Bは第1及
び第2の重複AOPと呼ばれる。第1のダブルワードへ
割当てられたAOP−Aの取出に応じて6バイトだけ左
シフトされたデータが復帰されると「 このデータ全体
は表一6に示すようにOP−Aへ入力ゲートされる。
表−6乃至表−8中のアンダーラインはどのバイトが入
力ゲートされたかということを示す。表−7は、AOP
−Bによる第2の蚤複取出に対する循環シフト。データ
がどのように扱われるかということを示す。循環シフト
されない2バイト「E」及び「F」はOP−Bへ入力ゲ
ートされt残りの6バイトはOA−Aへ入力ゲートされ
、かくてそこに既に存在する同一情報にオーバーレーさ
れる。表−8は第2の取出ダブルワードDW2がAOP
−Cによってどのように扱われるかということを示す。
AOP−Cによる6バイトのシフト後、その6つの循環
バイト位鷹は前に割当てられたOP−Bの対応バイト位
置へゲートされ、かくてバイトG,日,19 j,一?
一で以てダブルワードを完成し「 またこの例では使用
されることがない残りの2バイトがOP一Cへ入力ゲー
トされる。次いで「OP−A及びOP−Bにあるデータ
(これは表−5に示す如く、第1オペランドの第3及び
第4ダブルワードにそのまま書込まれるように位贋合せ
されている)は、MVC命令の実行に必要になるときE
FAI5へ転送される。この例の場合、MyC命令はO
P−Cに置かれたデータを使用せずにその実行を完了す
るので、このデータはEFAI5によっては使用されな
い。次に、第3図に示すタイミングを使用する如きオペ
ランド取出ブロックA9と偽CFAI3との間のインタ
フェースを考察する。
力ゲートされたかということを示す。表−7は、AOP
−Bによる第2の蚤複取出に対する循環シフト。データ
がどのように扱われるかということを示す。循環シフト
されない2バイト「E」及び「F」はOP−Bへ入力ゲ
ートされt残りの6バイトはOA−Aへ入力ゲートされ
、かくてそこに既に存在する同一情報にオーバーレーさ
れる。表−8は第2の取出ダブルワードDW2がAOP
−Cによってどのように扱われるかということを示す。
AOP−Cによる6バイトのシフト後、その6つの循環
バイト位鷹は前に割当てられたOP−Bの対応バイト位
置へゲートされ、かくてバイトG,日,19 j,一?
一で以てダブルワードを完成し「 またこの例では使用
されることがない残りの2バイトがOP一Cへ入力ゲー
トされる。次いで「OP−A及びOP−Bにあるデータ
(これは表−5に示す如く、第1オペランドの第3及び
第4ダブルワードにそのまま書込まれるように位贋合せ
されている)は、MVC命令の実行に必要になるときE
FAI5へ転送される。この例の場合、MyC命令はO
P−Cに置かれたデータを使用せずにその実行を完了す
るので、このデータはEFAI5によっては使用されな
い。次に、第3図に示すタイミングを使用する如きオペ
ランド取出ブロックA9と偽CFAI3との間のインタ
フェースを考察する。
オペランド取出ブロックA9は、任意のプロセッサ・サ
イクルのラッチ時間に、「取出要求」信号B2を開始さ
せることができる。ラッチ時間はプロセッサ・クロック
の下降に応じて開始及び終了する。これに対し、トリガ
時間はプロセッサ・クロックの上昇に応じて開始及び終
了する。「取出要求」信号82はPSCFAI3へ送ら
れ、それと同時にオペランド取出ブロックA9のプロセ
ッサ・アドレス・ラッチ(PRAL、第2図参照)から
俺CF A13へその論理アドレスが送られる。プ。セ
ツサ−アドレス・ラッチは、IPPFA7にある源のう
ちOARから論理アドレスを転送する。もしPSCF
AI3が一層優先順位の高い機能のために使用中であり
、従ってこの取出要求を処理することができなければ、
PSCF A13は信号B2が送られる前のトリガ時間
に「搭CF使用中一宿号A2Aを上昇させる。この信号
A2Aは、このプロセッサ・サイクルの間に送られるす
べての取出要求が斑CFAI3によって完全に無視され
るということを、オペランド取出ブロックA9に指示す
る。第4図は、キャッシュをアクセスするためにPSC
F AI3によって受諾される簡単な取出要求のタイミ
ングを示す。
イクルのラッチ時間に、「取出要求」信号B2を開始さ
せることができる。ラッチ時間はプロセッサ・クロック
の下降に応じて開始及び終了する。これに対し、トリガ
時間はプロセッサ・クロックの上昇に応じて開始及び終
了する。「取出要求」信号82はPSCFAI3へ送ら
れ、それと同時にオペランド取出ブロックA9のプロセ
ッサ・アドレス・ラッチ(PRAL、第2図参照)から
俺CF A13へその論理アドレスが送られる。プ。セ
ツサ−アドレス・ラッチは、IPPFA7にある源のう
ちOARから論理アドレスを転送する。もしPSCF
AI3が一層優先順位の高い機能のために使用中であり
、従ってこの取出要求を処理することができなければ、
PSCF A13は信号B2が送られる前のトリガ時間
に「搭CF使用中一宿号A2Aを上昇させる。この信号
A2Aは、このプロセッサ・サイクルの間に送られるす
べての取出要求が斑CFAI3によって完全に無視され
るということを、オペランド取出ブロックA9に指示す
る。第4図は、キャッシュをアクセスするためにPSC
F AI3によって受諾される簡単な取出要求のタイミ
ングを示す。
プロセッサ・サイクル1のラッチ時間に、r取出要求」
信号B2とアドレスがオペランド取出プロツククA9の
プロセッサ。アドレス・ラッチへ送られる。プロセッサ
・サイクル2及び3の間、偽CFのCI及びC2サイク
ルがキャッシュ‘アクセスの時間を指定する。キヤツシ
ユはCIサイクルの間にアクセスされ、そしてキャッシ
ュ・ヒットの場合は要求されたデータがC2サイクルの
間に復帰される。またC2サイクルの間には、LM命令
及びMVC命令の例について既に説明した値を有する「
シフト量」信号Q9がこの取出のたにIPPF A7か
ら偽CFA13へ送られる。プロセッサ・サイクル3の
ラッチ時間には、掩CFAI3はキャッシュから得られ
たダブルワードとこの信号Q9に応じてシフトし、これ
をBDBOを介してオペランド取出ブロックA9へ転送
する。第5図はやや特殊な状況における取出のタイミン
グを示す。
信号B2とアドレスがオペランド取出プロツククA9の
プロセッサ。アドレス・ラッチへ送られる。プロセッサ
・サイクル2及び3の間、偽CFのCI及びC2サイク
ルがキャッシュ‘アクセスの時間を指定する。キヤツシ
ユはCIサイクルの間にアクセスされ、そしてキャッシ
ュ・ヒットの場合は要求されたデータがC2サイクルの
間に復帰される。またC2サイクルの間には、LM命令
及びMVC命令の例について既に説明した値を有する「
シフト量」信号Q9がこの取出のたにIPPF A7か
ら偽CFA13へ送られる。プロセッサ・サイクル3の
ラッチ時間には、掩CFAI3はキャッシュから得られ
たダブルワードとこの信号Q9に応じてシフトし、これ
をBDBOを介してオペランド取出ブロックA9へ転送
する。第5図はやや特殊な状況における取出のタイミン
グを示す。
すなわち、要求されたデータがキャッシュに存在しない
ためにMCF A13によって主記憶AI6から取出さ
れねばならず、しかもこの取出要求が門CFA13によ
って受取られたとき、PSCFAI3が既に主記憶A1
6に対する進行中のアクセスを有しているような状況で
ある。「取出要求」信号B2は前記したようにプロセッ
サ・サイクル1の間にIPPF A7から送られる。し
かしながら、プロセッサ・サイクル3に相当するPSC
FのC2サイクルの間にキャッシュ・ミスが決定され、
かくてPSCF A13からオペランド取出ブロックA
9へ「取出拒否」信号A2Cが送られる。
ためにMCF A13によって主記憶AI6から取出さ
れねばならず、しかもこの取出要求が門CFA13によ
って受取られたとき、PSCFAI3が既に主記憶A1
6に対する進行中のアクセスを有しているような状況で
ある。「取出要求」信号B2は前記したようにプロセッ
サ・サイクル1の間にIPPF A7から送られる。し
かしながら、プロセッサ・サイクル3に相当するPSC
FのC2サイクルの間にキャッシュ・ミスが決定され、
かくてPSCF A13からオペランド取出ブロックA
9へ「取出拒否」信号A2Cが送られる。
この信号A2Cは、キャッシュからデータが得られない
ことを指示し、さらに笛CFA13が遅延された取出に
ついて既に使用中であり、従ってこの時点で当該要求を
処理することができないことを指示する。PSCF A
13はこの拒否された取出要求を記憶しないので、オペ
ランド取出ブロックA9はこの取出要求を後で再び供給
しなければならない。また、PSCF A1 3からの
「取出進行中」信号A28は、オペランド取出ブロック
A9に対し、PSCFAI3における遅延された取出の
持続時間を通知する。この信号A2Eは、「取出拒否」
信号A2Cの存続時間中はオン又はオフのいずれであっ
てもよい。オペランド取出ブロックA9は、拒否された
敬出要求が再び拒否されるような可能性が少ない時機を
決定するために、「取出進行中」信号A28を利用する
。第5図において、この信号A2Eはプロセッサ・サイ
クル7にオフに移行し、そして「取出要求」信号B2は
プロセッサ・サイクル8のラッチ時間に反復されるよう
に図示されている。これは、当該取出要求が再び拒否さ
れないように、この要求を反復することができる最も早
いタイミングである。俺CF A13から遅延された取
出のための「取出進行中」信号A2Eを供給させるよう
にしたのは、俺CFAI3が主記憶AI6からキャッシ
ュへ1ラインのデータ(キヤツシユ.フロツク)を現に
取出しているからである。
ことを指示し、さらに笛CFA13が遅延された取出に
ついて既に使用中であり、従ってこの時点で当該要求を
処理することができないことを指示する。PSCF A
13はこの拒否された取出要求を記憶しないので、オペ
ランド取出ブロックA9はこの取出要求を後で再び供給
しなければならない。また、PSCF A1 3からの
「取出進行中」信号A28は、オペランド取出ブロック
A9に対し、PSCFAI3における遅延された取出の
持続時間を通知する。この信号A2Eは、「取出拒否」
信号A2Cの存続時間中はオン又はオフのいずれであっ
てもよい。オペランド取出ブロックA9は、拒否された
敬出要求が再び拒否されるような可能性が少ない時機を
決定するために、「取出進行中」信号A28を利用する
。第5図において、この信号A2Eはプロセッサ・サイ
クル7にオフに移行し、そして「取出要求」信号B2は
プロセッサ・サイクル8のラッチ時間に反復されるよう
に図示されている。これは、当該取出要求が再び拒否さ
れないように、この要求を反復することができる最も早
いタイミングである。俺CF A13から遅延された取
出のための「取出進行中」信号A2Eを供給させるよう
にしたのは、俺CFAI3が主記憶AI6からキャッシ
ュへ1ラインのデータ(キヤツシユ.フロツク)を現に
取出しているからである。
これは1ラインごとに8ダブルワードを転送することを
含む。ラインの境界はLOOOで終る2進の主記憶ダブ
ルワード。アドレスによって表わされる。所与のライン
から取出される最初のダブルワードは〜敬出要求によっ
てアドレスされたダブルワードである。次いで、PSC
FA亀3はそのラインの終端に至るまで主記憶アドレス
の順に各ダブルワードを取出し、そしてその後は、この
ラインの始端から前記要求されたダブルワード‘こ至る
までの各ダブルワードを取出す。以下の表−9は8ダブ
ルワードから成る或るラインを示す。
含む。ラインの境界はLOOOで終る2進の主記憶ダブ
ルワード。アドレスによって表わされる。所与のライン
から取出される最初のダブルワードは〜敬出要求によっ
てアドレスされたダブルワードである。次いで、PSC
FA亀3はそのラインの終端に至るまで主記憶アドレス
の順に各ダブルワードを取出し、そしてその後は、この
ラインの始端から前記要求されたダブルワード‘こ至る
までの各ダブルワードを取出す。以下の表−9は8ダブ
ルワードから成る或るラインを示す。
但し、取出要求はこのラインの第6ダブルワードDW6
をアドレスしているものとする。表−9の右端にある数
字は、PSCFAI3によって主記憶AI6から取出さ
れる各ダブルワードの取出願序を示す。本発明によれば
、蛸CFAI3は「取出要求によってアドレスされた特
定のダブルワードからこのラインの終端にある最後のダ
ブルワード、すなわちこのラインで最高の主記憶アドレ
スを有するダブルワードまでのものを「オペランド取出
ブロックA9へ送るにすぎない。表−9の例では〜 こ
のラインの第6乃至第8ダブルワードのみがmPFAy
及びキャッシュへ送られる。もっともトキャッシュは結
果的にこのライン全体を受取ることになる。表−9 第6図は、要求されたデータがキャッシュ中に存在しな
いためにこれを主記憶AI6から取出さなければならず
、そしてPSCFAI3がこの取出要求を受諾するよう
な状況における取出タイミングを示す。
をアドレスしているものとする。表−9の右端にある数
字は、PSCFAI3によって主記憶AI6から取出さ
れる各ダブルワードの取出願序を示す。本発明によれば
、蛸CFAI3は「取出要求によってアドレスされた特
定のダブルワードからこのラインの終端にある最後のダ
ブルワード、すなわちこのラインで最高の主記憶アドレ
スを有するダブルワードまでのものを「オペランド取出
ブロックA9へ送るにすぎない。表−9の例では〜 こ
のラインの第6乃至第8ダブルワードのみがmPFAy
及びキャッシュへ送られる。もっともトキャッシュは結
果的にこのライン全体を受取ることになる。表−9 第6図は、要求されたデータがキャッシュ中に存在しな
いためにこれを主記憶AI6から取出さなければならず
、そしてPSCFAI3がこの取出要求を受諾するよう
な状況における取出タイミングを示す。
プロセッサ・サイクルーの間、「取出要求」信号B2は
第3図乃至第5図について説明したと同様の様式で開始
される。この信号B2が斑CF AI3によって受諾さ
れるとき、「取出進行中」信号A2E‘ま存在しない。
プロセッサQサイクル3に相当する鴇CFのC2サイク
ルの間、PSCF A13からオペランド取出ブ。ツク
A9へ「取出遅延」信号A20が送られ「 この取出要
求がPSCF A13によって処理されること及び要求
されたデータが直ちには利用できないことを指示する。
次のプロセッサ。サイクル亀の間、「敬出進行中」信号
A2Eがオンとなり「当該遅延された取出が完了される
までオンに留まる。プロセッサ。サイクル10として示
される或る後続サイクルの間、PSCFA13からオペ
ランド取出ブロックA9へ「俺CF前進」信号A28が
送られ「この2サイクル後にアドレスされたダブルワー
ド(DW)が供総合されることを指示する。この信号A
率8がオンとなってから2サイクル後にPSCFのCI
及びC2サイクルが与えられ「 かくてC2サイクルの
間にオペランド取出ブロックA9へ前記アドレスされた
ダブルワード(DW)が与えられる。これは第6図のプ
ロセッサ8サイクル官電及び富2の間に示される。主記
憶A亀6が当該ラインの全体をキャッシュへ転送してい
る間、「取出進行中」信号A28はオンに留まる。「的
CF前進一宿号A2Bは、オペランド取出ブロックA翼
へ送られるべき各後続ダブルワードのプロセッサ亀サイ
クルの間、オンとなる。この信号A2Bは連続的なプロ
セッサ。サイクルにわたってオンであってもよく、又は
PSCF A1 3で干渉条件が生じれば互いに分離さ
れてもよい。この信号A28は、オペランド取出ブロッ
クA9へ送られないでキャッシュにのみ送られる当該ラ
イン中のダブルワードについてはトオベランド取出フロ
ックA9へ供給されない。1ラインに包含されるダブル
ワードのうちどれが要求されるかということに依存して
、1個乃至8個のうち適当な数の「PSCF前進」信号
A28が「取出進行中」信号A2Eの持続時間中にオペ
ランド取出ブロックA9へ送られる。
第3図乃至第5図について説明したと同様の様式で開始
される。この信号B2が斑CF AI3によって受諾さ
れるとき、「取出進行中」信号A2E‘ま存在しない。
プロセッサQサイクル3に相当する鴇CFのC2サイク
ルの間、PSCF A13からオペランド取出ブ。ツク
A9へ「取出遅延」信号A20が送られ「 この取出要
求がPSCF A13によって処理されること及び要求
されたデータが直ちには利用できないことを指示する。
次のプロセッサ。サイクル亀の間、「敬出進行中」信号
A2Eがオンとなり「当該遅延された取出が完了される
までオンに留まる。プロセッサ。サイクル10として示
される或る後続サイクルの間、PSCFA13からオペ
ランド取出ブロックA9へ「俺CF前進」信号A28が
送られ「この2サイクル後にアドレスされたダブルワー
ド(DW)が供総合されることを指示する。この信号A
率8がオンとなってから2サイクル後にPSCFのCI
及びC2サイクルが与えられ「 かくてC2サイクルの
間にオペランド取出ブロックA9へ前記アドレスされた
ダブルワード(DW)が与えられる。これは第6図のプ
ロセッサ8サイクル官電及び富2の間に示される。主記
憶A亀6が当該ラインの全体をキャッシュへ転送してい
る間、「取出進行中」信号A28はオンに留まる。「的
CF前進一宿号A2Bは、オペランド取出ブロックA翼
へ送られるべき各後続ダブルワードのプロセッサ亀サイ
クルの間、オンとなる。この信号A2Bは連続的なプロ
セッサ。サイクルにわたってオンであってもよく、又は
PSCF A1 3で干渉条件が生じれば互いに分離さ
れてもよい。この信号A28は、オペランド取出ブロッ
クA9へ送られないでキャッシュにのみ送られる当該ラ
イン中のダブルワードについてはトオベランド取出フロ
ックA9へ供給されない。1ラインに包含されるダブル
ワードのうちどれが要求されるかということに依存して
、1個乃至8個のうち適当な数の「PSCF前進」信号
A28が「取出進行中」信号A2Eの持続時間中にオペ
ランド取出ブロックA9へ送られる。
或る場合にはオペランド取出ブロックA9によって必要
とされるものよりも多いダブルワードが存在しうるが、
このような状況では、必要でないデー外まオペランド取
出ブロックA9によって無視される。もしアドレスされ
たダブルワードに続く追加のダブルワードがオペランド
取出ブロックA9によって必要とされるならば、該ブロ
ックはこの信号A2Bが受取られるたびに擬似的なCI
及びC2サイクルを通過する。第6図の例では、俺CF
のCI及びC2サイクルは3ダブルワード(OW,DW
+8及びDW+16)の各々ごとに与えられず。BDB
Oを介してオペランド取出ブロックA9へ転送されてい
る諸ダブルワード中の衝突を避けるために、的CFAI
3は、該ブロックA9へ「鴨CF前進」信号A2Bを送
っている間は常に「俺CF使用中」信号A2Aを上昇さ
せる。次に、第1図の命令復号ブロックAIIとオペラ
ソド取出ブロックA9との間で通信される諸信号を考察
する。
とされるものよりも多いダブルワードが存在しうるが、
このような状況では、必要でないデー外まオペランド取
出ブロックA9によって無視される。もしアドレスされ
たダブルワードに続く追加のダブルワードがオペランド
取出ブロックA9によって必要とされるならば、該ブロ
ックはこの信号A2Bが受取られるたびに擬似的なCI
及びC2サイクルを通過する。第6図の例では、俺CF
のCI及びC2サイクルは3ダブルワード(OW,DW
+8及びDW+16)の各々ごとに与えられず。BDB
Oを介してオペランド取出ブロックA9へ転送されてい
る諸ダブルワード中の衝突を避けるために、的CFAI
3は、該ブロックA9へ「鴨CF前進」信号A2Bを送
っている間は常に「俺CF使用中」信号A2Aを上昇さ
せる。次に、第1図の命令復号ブロックAIIとオペラ
ソド取出ブロックA9との間で通信される諸信号を考察
する。
既に説明したように、バスA3は2本の信号線E18及
びB36を含み、これらの線は追加命令の復号を条件付
きで禁止する。前者の信号線はPSCFA13の使用を
必要とするどの命令も復号さるべきでないことを指示し
、後者の信号線はオペランド取出ブロックA9の使用を
必要とするどの命令も復号さるべきでないことを指示す
る。バスA4は、オペランドの取出を開始させる多数の
信号線A4A乃至A4日から成る。
びB36を含み、これらの線は追加命令の復号を条件付
きで禁止する。前者の信号線はPSCFA13の使用を
必要とするどの命令も復号さるべきでないことを指示し
、後者の信号線はオペランド取出ブロックA9の使用を
必要とするどの命令も復号さるべきでないことを指示す
る。バスA4は、オペランドの取出を開始させる多数の
信号線A4A乃至A4日から成る。
ラツチ信号である「復号成功」信号A4Bは、成功裡の
復号サイクルが生じたことを指示する。「アドレス加算
器出力」信号A4Aは、復号中の命令の有効アドレスを
与える。「オペランド長一信号A4Cは、オペランド・
フィールド中にあるバイトの数より1本だけ小さい8ビ
ットの2進値を与える。「SS第2復号サイクル」信号
A4Jは、命令復号ブロックAIIが6バイト長を有す
る命令の第1復号を完了して、今や第2復号を行おうと
しているとき、オンとなる。「行先取出」信号A4Dは
命令により行先オペランドが取出されることを指示し、
最初のAOPを直接的に開始させるとともに、1より多
い取出が必要である場合には行先制御(DSTCTL、
第2図)を作動させる。「行先取出」信号A40はSS
命令の第1オペランドを取出すためにだけ使用され、主
記憶AI6とは異なる境界へ位置合せすることは行わな
い。「ソ−ス敬出」信号A48は命令によりソース・オ
ペランドが取出されることを指示し、最初のAOPを直
接的に開始させるとともに、1より多い取出が必要であ
る場合にはソース制御(SRCCTL、第2図)を作動
させる。この信号A4EはSS命令の第2オペランドを
取出すために使用され、またより簡単な命令のオペラン
ドを取出すためにも使用される。「LM復号」信号A4
日は、当該命令がLM命令であるとき、オンとなる。信
号A4Gは、当該命令がMNC,NC,OC,XC又は
CLC命令のいずれかであるとき、オンとなる。「命令
ビット11」信号A4日ま、当該命令のビット11が1
であるとき、オンとなる。この信号は、LM命令につい
て、ロードさるべき最初の汎用レジス夕が偶数又は奇数
番号のどちらを有するかを決定するために使用される。
「アドレス加算器出力」信号A4A及び「行先取出」信
号A4Dはトリガ信号であって、復号サイクルの間に有
意となる。残りの諸信号はラッチ信号であり、復号サイ
クルのラツチ時間(1/2サイクル後)の間に有意な値
を有する。次に、第1図の命令待ち行列ブロックAI2
からオペランド取出ブロックA9へ至るバスA5につい
て説明する。
復号サイクルが生じたことを指示する。「アドレス加算
器出力」信号A4Aは、復号中の命令の有効アドレスを
与える。「オペランド長一信号A4Cは、オペランド・
フィールド中にあるバイトの数より1本だけ小さい8ビ
ットの2進値を与える。「SS第2復号サイクル」信号
A4Jは、命令復号ブロックAIIが6バイト長を有す
る命令の第1復号を完了して、今や第2復号を行おうと
しているとき、オンとなる。「行先取出」信号A4Dは
命令により行先オペランドが取出されることを指示し、
最初のAOPを直接的に開始させるとともに、1より多
い取出が必要である場合には行先制御(DSTCTL、
第2図)を作動させる。「行先取出」信号A40はSS
命令の第1オペランドを取出すためにだけ使用され、主
記憶AI6とは異なる境界へ位置合せすることは行わな
い。「ソ−ス敬出」信号A48は命令によりソース・オ
ペランドが取出されることを指示し、最初のAOPを直
接的に開始させるとともに、1より多い取出が必要であ
る場合にはソース制御(SRCCTL、第2図)を作動
させる。この信号A4EはSS命令の第2オペランドを
取出すために使用され、またより簡単な命令のオペラン
ドを取出すためにも使用される。「LM復号」信号A4
日は、当該命令がLM命令であるとき、オンとなる。信
号A4Gは、当該命令がMNC,NC,OC,XC又は
CLC命令のいずれかであるとき、オンとなる。「命令
ビット11」信号A4日ま、当該命令のビット11が1
であるとき、オンとなる。この信号は、LM命令につい
て、ロードさるべき最初の汎用レジス夕が偶数又は奇数
番号のどちらを有するかを決定するために使用される。
「アドレス加算器出力」信号A4A及び「行先取出」信
号A4Dはトリガ信号であって、復号サイクルの間に有
意となる。残りの諸信号はラッチ信号であり、復号サイ
クルのラツチ時間(1/2サイクル後)の間に有意な値
を有する。次に、第1図の命令待ち行列ブロックAI2
からオペランド取出ブロックA9へ至るバスA5につい
て説明する。
「OP分非皮取得」信号A5Aはトリガ信号であって、
命令待ち行列ブ。ツクAI2からEFAI5へ或る命令
が転送されようとしていることを指示する。これはこの
命令の第1実行サイクルの前に生ぜられる。「Q出力ポ
ィンタ」信号A5Bは2ビットの2進カゥンタであり、
実行さるべき次の命令がどの待ち行列位置から到来する
かを指示する。この信号A5Bはラツチ信号であって、
「OP分料皮取得一宿号A5Aに応答して1ずつステッ
プする。「Q入力ポインタ」信号A5Cは2ビットの2
進カゥンタであり、復号さるべき次の命令がどの待ち行
列位置に置かれるかを指示する。この信号A5Cはラツ
チ信号であって、「復号成功」信号A4Bが或るSS命
令の第1復号サイクルに対するものでない限り、該信号
A4Bに応答して1ずつステップする。第7図は、LM
及びMVC命令がどのようにして復号及び実行されるか
という1つのタイミング例を示す。
命令待ち行列ブ。ツクAI2からEFAI5へ或る命令
が転送されようとしていることを指示する。これはこの
命令の第1実行サイクルの前に生ぜられる。「Q出力ポ
ィンタ」信号A5Bは2ビットの2進カゥンタであり、
実行さるべき次の命令がどの待ち行列位置から到来する
かを指示する。この信号A5Bはラツチ信号であって、
「OP分料皮取得一宿号A5Aに応答して1ずつステッ
プする。「Q入力ポインタ」信号A5Cは2ビットの2
進カゥンタであり、復号さるべき次の命令がどの待ち行
列位置に置かれるかを指示する。この信号A5Cはラツ
チ信号であって、「復号成功」信号A4Bが或るSS命
令の第1復号サイクルに対するものでない限り、該信号
A4Bに応答して1ずつステップする。第7図は、LM
及びMVC命令がどのようにして復号及び実行されるか
という1つのタイミング例を示す。
この例では、LM命令は待ち行列位置00に保持され、
MVC命令は待ち行列位置01に保持される。また第7
図は、この例について、「復号成功」信号A4B、「Q
入力ポインタ」信号A5C、「Q出力ポィンタ」信号A
5B及び「OP分岐取得」信号A5Aのタイミング関係
を示す。次に、第1図のオペランド取出ブロックA9と
EFAI5との間に介存するバスA6及びA8について
説明する。バスA6は2本の線A6A及びA68を含む
。「Aレジスタへの主記憶オペランド」信号A6Aは、
EFA15が他のOPに保持されたソース・データをA
レジスタヘゲートすることを必要としていることを指示
する。「Bレジスタへの主記憶オペランド」信号A68
は、EFA15が他のOPに置かれた行先データをBレ
ジスタヘゲートすることを必要としていることを指示す
る。これらの信号はともにトリガ信号であって、データ
が必要とされる1サイクル前に生ずる。バスA8は4本
の線を含む。
MVC命令は待ち行列位置01に保持される。また第7
図は、この例について、「復号成功」信号A4B、「Q
入力ポインタ」信号A5C、「Q出力ポィンタ」信号A
5B及び「OP分岐取得」信号A5Aのタイミング関係
を示す。次に、第1図のオペランド取出ブロックA9と
EFAI5との間に介存するバスA6及びA8について
説明する。バスA6は2本の線A6A及びA68を含む
。「Aレジスタへの主記憶オペランド」信号A6Aは、
EFA15が他のOPに保持されたソース・データをA
レジスタヘゲートすることを必要としていることを指示
する。「Bレジスタへの主記憶オペランド」信号A68
は、EFA15が他のOPに置かれた行先データをBレ
ジスタヘゲートすることを必要としていることを指示す
る。これらの信号はともにトリガ信号であって、データ
が必要とされる1サイクル前に生ずる。バスA8は4本
の線を含む。
RIはデータ・バスであって、諸PPからEF A15
中のA及びBレジスタに至る。「Aレジスタへの入力ゲ
ート」信号GI7及び「Bレジスタへの入力ゲート」信
号GI8はラツチ信号であって、バスA8をA及びBレ
ジスタへそれぞれ入力ゲートさせるためのものである。
バスA8の「Eクロック停止」信号S2はトリガ信号で
あって、EFAI5中のクロック、すなわちEクロック
を停止させる。この信号S2がオンに転ずるのは、PS
CFAI3からまだ得られていないデータEFAI5が
必要とする場合である。第8図は、Eクロックを停止さ
せるための代表的な状況下におけるタイミング例を示す
。
中のA及びBレジスタに至る。「Aレジスタへの入力ゲ
ート」信号GI7及び「Bレジスタへの入力ゲート」信
号GI8はラツチ信号であって、バスA8をA及びBレ
ジスタへそれぞれ入力ゲートさせるためのものである。
バスA8の「Eクロック停止」信号S2はトリガ信号で
あって、EFAI5中のクロック、すなわちEクロック
を停止させる。この信号S2がオンに転ずるのは、PS
CFAI3からまだ得られていないデータEFAI5が
必要とする場合である。第8図は、Eクロックを停止さ
せるための代表的な状況下におけるタイミング例を示す
。
プロセッサ・サイクル1の間に「Aレジスタへの主記憶
オペラソド」信号A6Aが受取られ、EF AI5によ
り或るデータが必要とされていることを指示する。しか
しながら、この例ではプロセッサ・サイクル4に至るま
でこのデータを取出すための斑CFのC2サイクルが付
勢されないので、該デー夕はプロセッサ・サイクル5の
開始端まで利用することができない。このことはプロセ
ッサ・サイクル1の間に認識され、かくてプロセッサ・
サイクル2の間に「Eクロック停止」信号S2がオンに
転じられ、かくてEクロックのパルス3が禁止される。
この禁止条件はその後2サイクルにわたつて持続し「前
記と同様の事象を生ぜしめる。「Aレジスタへの入力ゲ
ート」信号GI7はこの期間中オンに維持され、その間
の各サイクルごとにAレジスタへの入力ゲートを行わし
める。というのは、この入力ゲート動作は停止式クロッ
クではなく自走式クロツクによって制御されるからであ
る。プロセッサ・サイクル5の間に行われる最後の入力
ゲートと同時に、必要なデータが利用可能になる。かく
て、このデー外まその必要性に応じて延長されたEサイ
クルの終了間近にAレジスタに現われる。命令待ち行列
ブロックAI2は最大4個の命令を保持することができ
、そのうち1つの命令は実行中であり、残りの3つは実
行を待機中でもよい。
オペラソド」信号A6Aが受取られ、EF AI5によ
り或るデータが必要とされていることを指示する。しか
しながら、この例ではプロセッサ・サイクル4に至るま
でこのデータを取出すための斑CFのC2サイクルが付
勢されないので、該デー夕はプロセッサ・サイクル5の
開始端まで利用することができない。このことはプロセ
ッサ・サイクル1の間に認識され、かくてプロセッサ・
サイクル2の間に「Eクロック停止」信号S2がオンに
転じられ、かくてEクロックのパルス3が禁止される。
この禁止条件はその後2サイクルにわたつて持続し「前
記と同様の事象を生ぜしめる。「Aレジスタへの入力ゲ
ート」信号GI7はこの期間中オンに維持され、その間
の各サイクルごとにAレジスタへの入力ゲートを行わし
める。というのは、この入力ゲート動作は停止式クロッ
クではなく自走式クロツクによって制御されるからであ
る。プロセッサ・サイクル5の間に行われる最後の入力
ゲートと同時に、必要なデータが利用可能になる。かく
て、このデー外まその必要性に応じて延長されたEサイ
クルの終了間近にAレジスタに現われる。命令待ち行列
ブロックAI2は最大4個の命令を保持することができ
、そのうち1つの命令は実行中であり、残りの3つは実
行を待機中でもよい。
これらの命令は、EFAI5が受諾可能になるとすぐに
、命令待ち行列ブロックA12からEFAI5へ順次に
転送される。命令待ち行列ブロックAI2からEFAI
5へ各命令が転送されるとき、このことを指示するため
に「OP分岐取得」信号A5Aが生ぜられる。この信号
A5Aはオペランド取出ブロックA9へ送られ、EFA
I5における実行の開始に1サイクルだけ先行する。或
る種の命令は1サイクルで実行することができるので、
これらの命令が処理される場合、各サイクルごとに命令
待ち行列ブロックAI2からEFAI5へ新しい命令を
転送することができる。EFAI5は、諸命令の実行を
遂行するに必要なすべての論理、たとえばオペランドの
シフト、加算等を遂行する論理を含む。
、命令待ち行列ブロックA12からEFAI5へ順次に
転送される。命令待ち行列ブロックAI2からEFAI
5へ各命令が転送されるとき、このことを指示するため
に「OP分岐取得」信号A5Aが生ぜられる。この信号
A5Aはオペランド取出ブロックA9へ送られ、EFA
I5における実行の開始に1サイクルだけ先行する。或
る種の命令は1サイクルで実行することができるので、
これらの命令が処理される場合、各サイクルごとに命令
待ち行列ブロックAI2からEFAI5へ新しい命令を
転送することができる。EFAI5は、諸命令の実行を
遂行するに必要なすべての論理、たとえばオペランドの
シフト、加算等を遂行する論理を含む。
この論理は書込み可能な制御記億によって制御され、該
制御記憶はプロセッサが初期設定されるときにセットさ
れ、各命令がどのように実行さるべきかを決定する処の
マイクロプログラムを保持する。オペランド取出ブロッ
クA9は本発明の要部であり、PSCFA13からオペ
ランドを事前に取出し且つそれらを必要に応じてEFA
I5へ転送するための論理を含む。オペランド取出ブロ
ックA9の動作は、オペランドの取出を必要とする命令
が復号される際に命令復号ブロックAIIから生ぜられ
る制御信号によって開始される。
制御記憶はプロセッサが初期設定されるときにセットさ
れ、各命令がどのように実行さるべきかを決定する処の
マイクロプログラムを保持する。オペランド取出ブロッ
クA9は本発明の要部であり、PSCFA13からオペ
ランドを事前に取出し且つそれらを必要に応じてEFA
I5へ転送するための論理を含む。オペランド取出ブロ
ックA9の動作は、オペランドの取出を必要とする命令
が復号される際に命令復号ブロックAIIから生ぜられ
る制御信号によって開始される。
オペランド取出ブロックA9は、既に説明したように、
AOP−A乃至AOP−Fを含む。これらAOPの各々
は鴇CF A13かう要求された単一のダブルワードを
アドレスするとともに、それに応じて受取られた該ダブ
ルワードをEFAI5が必要とするまでバッファするこ
とができる。これらのAOPは、オペランドの取出が必
要となる都度、一度に1つずつ割当てられる。多くの命
令、特にSS命令及びLM命令は複数のダブルワードを
有するオペランドの取出を要求することがあるから、オ
ペランド取出ブロックA9には2組の制御、すなわちソ
ース制御(SRCCTL、第2図)及び行先制御(DS
TCTL、第2図)が設けられる。これらの制御は命令
復号ブロックAIIからの制御信号に応じてオンに転ぜ
られ、これにより適当な数のAOPの動作を開始させる
。IBMシステム/370のアーキテクチャには、主記
憶AI6から取出されるオペランドの実際の順序がプロ
グラムによって論理的に呼出される順序と同じでなけれ
ばならないという制約がある。この理由で、オペランド
取出ブロックA9に再取世論理(RE−FTHLGC、
第2図)が設けられ、何らかの理由でオペランドの取出
順序が乱されたとき該オペランドの再取出を行うために
使用される。オペランド取出ブロックA9からPSCF
A13に至るバスAIは、取出さるべきオペランドの仮
想アドレスをPSCF A13へ送るためのアドレス線
と、この取出がどのように処理さるべきかを通知する制
御線とを含む。俺CF AI3からオペランド取出ブロ
ックA9に至るバスA2は、データを復帰させるための
ダブルワード線と、データが利用可能となる時機又は当
該取出が即時に処理できるのか若しくは遅延されるのか
を指示するための制御線とを含む。オペランド取出ブロ
ックA9から命令復号ブロックAIIへ至るバスA3は
主としてオペランド取出ブロックA9が使用中である場
合を指示する教本の制御線から成り、従って命令復号プ
。ックAIIは必要とあればこれを利用して後続命令の
復号を禁止することができる。命令復号ブロックAII
からオペランド取出ブロックA9に至るバスA4は、当
該命令について計算された有効アドレスを送るためのア
ドレス線と、この命令について必要なオペランド敬出を
開始させるための制御線とを含む。命令待ち行列ブロッ
クAI2からオペランド敬出ブロックA9へ至るバスA
5は、どの命令が次に実行されるかを指示する制御線を
含むので、オペランド取出ブロックA9はこれによりE
FAI6がオペランドを必要とする時機を知ることがで
きる。オペランド取世ブロックA9からEFAI5へ至
るバスA6は、それぞれのOPからEF A15中のA
及び8レジスタへ薮競された8バイトのバスと、この情
薮をA及びBレジスタへ入力ゲートさせるための制御線
と、EFAI5の必要とするデータがまだ利用可館でな
いときEクロックを停止させて該データを待機させる如
き「Eクロック停止」線S2とを含む。EFAI5から
オペランド取出ブロックA9に至るバスA6は複数の入
力ゲート線から成り、該線はEFAI5によって追加の
ダブルワードが必要とされていることをオペランド取出
ブロックA9へ指示する。
AOP−A乃至AOP−Fを含む。これらAOPの各々
は鴇CF A13かう要求された単一のダブルワードを
アドレスするとともに、それに応じて受取られた該ダブ
ルワードをEFAI5が必要とするまでバッファするこ
とができる。これらのAOPは、オペランドの取出が必
要となる都度、一度に1つずつ割当てられる。多くの命
令、特にSS命令及びLM命令は複数のダブルワードを
有するオペランドの取出を要求することがあるから、オ
ペランド取出ブロックA9には2組の制御、すなわちソ
ース制御(SRCCTL、第2図)及び行先制御(DS
TCTL、第2図)が設けられる。これらの制御は命令
復号ブロックAIIからの制御信号に応じてオンに転ぜ
られ、これにより適当な数のAOPの動作を開始させる
。IBMシステム/370のアーキテクチャには、主記
憶AI6から取出されるオペランドの実際の順序がプロ
グラムによって論理的に呼出される順序と同じでなけれ
ばならないという制約がある。この理由で、オペランド
取出ブロックA9に再取世論理(RE−FTHLGC、
第2図)が設けられ、何らかの理由でオペランドの取出
順序が乱されたとき該オペランドの再取出を行うために
使用される。オペランド取出ブロックA9からPSCF
A13に至るバスAIは、取出さるべきオペランドの仮
想アドレスをPSCF A13へ送るためのアドレス線
と、この取出がどのように処理さるべきかを通知する制
御線とを含む。俺CF AI3からオペランド取出ブロ
ックA9に至るバスA2は、データを復帰させるための
ダブルワード線と、データが利用可能となる時機又は当
該取出が即時に処理できるのか若しくは遅延されるのか
を指示するための制御線とを含む。オペランド取出ブロ
ックA9から命令復号ブロックAIIへ至るバスA3は
主としてオペランド取出ブロックA9が使用中である場
合を指示する教本の制御線から成り、従って命令復号プ
。ックAIIは必要とあればこれを利用して後続命令の
復号を禁止することができる。命令復号ブロックAII
からオペランド取出ブロックA9に至るバスA4は、当
該命令について計算された有効アドレスを送るためのア
ドレス線と、この命令について必要なオペランド敬出を
開始させるための制御線とを含む。命令待ち行列ブロッ
クAI2からオペランド敬出ブロックA9へ至るバスA
5は、どの命令が次に実行されるかを指示する制御線を
含むので、オペランド取出ブロックA9はこれによりE
FAI6がオペランドを必要とする時機を知ることがで
きる。オペランド取世ブロックA9からEFAI5へ至
るバスA6は、それぞれのOPからEF A15中のA
及び8レジスタへ薮競された8バイトのバスと、この情
薮をA及びBレジスタへ入力ゲートさせるための制御線
と、EFAI5の必要とするデータがまだ利用可館でな
いときEクロックを停止させて該データを待機させる如
き「Eクロック停止」線S2とを含む。EFAI5から
オペランド取出ブロックA9に至るバスA6は複数の入
力ゲート線から成り、該線はEFAI5によって追加の
ダブルワードが必要とされていることをオペランド取出
ブロックA9へ指示する。
第9A図乃至第9D図は、主としてオペランド取出の開
始及び命令複号ブロックAIIから受取られた信号の処
理に関係する幾つかの論理を示す。
始及び命令複号ブロックAIIから受取られた信号の処
理に関係する幾つかの論理を示す。
線A4Bは、所与の命令が命令復号ブロックAIIで復
号されたサイクルのラッチ時間に「復号成功」信号を送
る。この信号A4Bは、動作の開始に関係するオペラン
ド取出ブロックA9中の他の部分にも送られる。この信
号A4Bが受取られると同時に、他の諸信号が他の動作
を開始させるために受取られることがある。これらの信
号のうち、「行先取出」信号A4Dは当該命令の行先オ
ペランドの取出が行われることを指示し、「ソース取出
」信号A4Eは当該命令のソース・オペランドの取出が
行われることを指示する。これと同時に、命令復号ブロ
ックAIIからのアドレスが利用可能となり、第1 1
図のプロセッサ・アドレス・ラツチD12へゲートされ
る。またこれと同時に、第9D図において「命令ビット
11」信号A4Fが与えられ、さらに第9C図において
取出さるべきオペランドのバイト数より1だけ小さい8
ビットの「オペランド長一信号A4Cが与えられる。オ
ペランド敬出ブロックA9を開始させた「復号成功」信
号A4Bが生ぜられた後のサイクルには、オペランド取
出ブロックA9は、当該命令の要求を満たすために取出
されねばならないダブルワードの数を決定する必要があ
る。
号されたサイクルのラッチ時間に「復号成功」信号を送
る。この信号A4Bは、動作の開始に関係するオペラン
ド取出ブロックA9中の他の部分にも送られる。この信
号A4Bが受取られると同時に、他の諸信号が他の動作
を開始させるために受取られることがある。これらの信
号のうち、「行先取出」信号A4Dは当該命令の行先オ
ペランドの取出が行われることを指示し、「ソース取出
」信号A4Eは当該命令のソース・オペランドの取出が
行われることを指示する。これと同時に、命令復号ブロ
ックAIIからのアドレスが利用可能となり、第1 1
図のプロセッサ・アドレス・ラツチD12へゲートされ
る。またこれと同時に、第9D図において「命令ビット
11」信号A4Fが与えられ、さらに第9C図において
取出さるべきオペランドのバイト数より1だけ小さい8
ビットの「オペランド長一信号A4Cが与えられる。オ
ペランド敬出ブロックA9を開始させた「復号成功」信
号A4Bが生ぜられた後のサイクルには、オペランド取
出ブロックA9は、当該命令の要求を満たすために取出
されねばならないダブルワードの数を決定する必要があ
る。
このため、オペランド取出ブロックA9は、第9C図の
長さレジスタB15へ供給される「オペランド長一信号
A4Cの値と、当該命令が復号される際その後続サイク
ルのラッチ時間に第11図のプロセッサ・アドレス・ラ
ツチ○12から線○2を介して第9C図のプロセッサ・
アドレス・レジスタB16へゲートされるアドレスの下
位3ビットとを使用する。このアドレスの下位3ビット
はダブルワード境界の左側にあるオペランドの第1バイ
トを位贋付ける。第98図の「車複取出」信号BIO‘
ま、オペランドの第1ダブルワード位置から追加の取出
が遂行されねばならないときに生ぜられる。第9C図の
オペランド長加算器B17から生ぜられる和のうち線B
IIに与えられるビット23乃至28は、当該オペラン
ドについて取出されねばならないダブルワードの総数よ
り1だけ小さい「ダブルワード・カウント」信号を有す
る。もしこの信号BIIが零に等しいことが琴検出器B
18によって検出されるならば、「復号成功」信号A4
Bによって直接に開始された最初の取出だけで十分であ
る。しかし、もしこの信号BIIが零でなければ、この
信号は第13図のソース制御又は行先制御を作動させ、
当該オペランドについて必要とされる追加ダブルワード
の取出を行わしめる。追加のAOPを開始させるために
ソース制御及び行先制御をオペランド取出ブロックA9
に設けたのは、或る種のSS命令が互いに独立した2フ
ィールドの取出を要求するということによる。
長さレジスタB15へ供給される「オペランド長一信号
A4Cの値と、当該命令が復号される際その後続サイク
ルのラッチ時間に第11図のプロセッサ・アドレス・ラ
ツチ○12から線○2を介して第9C図のプロセッサ・
アドレス・レジスタB16へゲートされるアドレスの下
位3ビットとを使用する。このアドレスの下位3ビット
はダブルワード境界の左側にあるオペランドの第1バイ
トを位贋付ける。第98図の「車複取出」信号BIO‘
ま、オペランドの第1ダブルワード位置から追加の取出
が遂行されねばならないときに生ぜられる。第9C図の
オペランド長加算器B17から生ぜられる和のうち線B
IIに与えられるビット23乃至28は、当該オペラン
ドについて取出されねばならないダブルワードの総数よ
り1だけ小さい「ダブルワード・カウント」信号を有す
る。もしこの信号BIIが零に等しいことが琴検出器B
18によって検出されるならば、「復号成功」信号A4
Bによって直接に開始された最初の取出だけで十分であ
る。しかし、もしこの信号BIIが零でなければ、この
信号は第13図のソース制御又は行先制御を作動させ、
当該オペランドについて必要とされる追加ダブルワード
の取出を行わしめる。追加のAOPを開始させるために
ソース制御及び行先制御をオペランド取出ブロックA9
に設けたのは、或る種のSS命令が互いに独立した2フ
ィールドの取出を要求するということによる。
これらの命令については、前記制御は同時的に動作する
。ソース制御と行先制劉の1つの相違点は、前者が主記
憶AI6から取出されたオペランドの位置合せを遂行す
ることができるのに対し、後者は取出されたダブルワー
ドを常に1ェンティティ(entity)としてEF
A1 5へ通過させるということにある。しかし「 ソ
ース制御はダブルワードを任意のバイト境界へシフトす
ることができるので、互いに異なる2個のダブルワード
からのデータを1個のOPヘアセンブルし、その結果デ
ータを必要に応じてEFAI5へ供給することができる
。ソース制御については、俺CFAI3からデータが復
帰されるときのオペランドのシフト量が決定されるが、
これはr復号成功」信号A48のラツチ時間に行われる
。
。ソース制御と行先制劉の1つの相違点は、前者が主記
憶AI6から取出されたオペランドの位置合せを遂行す
ることができるのに対し、後者は取出されたダブルワー
ドを常に1ェンティティ(entity)としてEF
A1 5へ通過させるということにある。しかし「 ソ
ース制御はダブルワードを任意のバイト境界へシフトす
ることができるので、互いに異なる2個のダブルワード
からのデータを1個のOPヘアセンブルし、その結果デ
ータを必要に応じてEFAI5へ供給することができる
。ソース制御については、俺CFAI3からデータが復
帰されるときのオペランドのシフト量が決定されるが、
これはr復号成功」信号A48のラツチ時間に行われる
。
LM命令の場合は、第9○図の3ビット加算器BI9が
使用される。その右側入力B20は1の補教化回路へ接
続され、該回路は線A4Fを介して加えられるLM命令
の「命令ビット11」信号(これは。ードされる最初の
汎用レジスタが奇数番号を有するときオンの状態を示す
)と00を連結する。加算器BI9の左側入力D2は、
第11図のプロセッサ・アドレス・ラッチ○12から、
LM命令の有効アドレスの下位3ビットを受取る。この
結果、EFAI5中のAレジスタに置かれるべきオペラ
ンドの第1バイトのバイト・アドレスが、該第1バイト
の主記憶AI6におけるバイト・アドレスから減算され
る。つまり、加算器BI9の出力は当該オペランドが左
シフトさるべき量を指示するということである。加算器
BI9の位置29から生ぜられる桁上げは、EFAI5
へ供給さるべき第1ダブルワード中のバイトの数が、主
記憶AI6からの最初の取出中に得られるバイトの数に
等しいか又はそれより大きいことを指示する。この特定
の状況では、ソース制御によって遂行される次の取出は
主記憶AI6中の後続ダブルワ−ドを対象として行われ
ることになる。しかし、加算器819の位置29から桁
上げが生じなければ、最初の入力ゲート時にEF A1
5へ供孫合されるバイトよりも多いバイトが最初の取出
の際に得られるということが指示される。これは童複取
出の状況である。第9D図の加算器B2 1は、MVC
,NC,OC,XC及びCLC命令のシフト量を決定す
る。その機能はLM命令に関連して説明した加算器BI
9のそれと略同じであり、ただ右側入力B22が第1オ
ペランドの下位アドレス・ビットを受取るという点が相
違するだけである。これらの下位アドレス・ビットはし
ジスタB23から得られ、議しジス外ま当該命令の第1
オペランド‘こ対する先の復号成功サイクル中にセット
されている。加算器B21及びBI9の出力は、ゲート
信号として機能する信号A4G及びA4日の制御下でレ
ジスタB24へゲ−トされ、議しジスタは復号に続くサ
イクルの開始時にこのシフト量を保持する。但し、信号
A4Gは復号された命令がMNC,NC,OC,XC若
しくはCLC命令であることを指示し、他の信号A4日
は復号された命令がLM命令であることを指示する。も
し第9A図のトリガB26がオンで、当該復号サイクル
がソース取出を開始させたことを指示するならば、レジ
スタB24(第9D図)に保持されたシフト量信号は3
ビットのソース・シフト・バツフア・ラツチB25へ入
力ゲートされる。このようにして該ラツチB25に置か
れたシフト量信号は、ソース・オペランドの取出を必要
とする他の命令について新しい「復号成功」信号A4B
が得られるまで、そのままに留まる。第13図からの「
ソース取出」信号F7によって指示されるように、ソー
ス制御がソース取出を行うたびに、ラッチB25中のシ
フト量信号はバスB13へゲートされる。トリガB26
(第9A図)からの「ソース・フィ−ルド取出」信号B
9は、「復号成功」信号A4Bに起因する最初の取出の
ためにレジスタB24に保持されたシフト量信号をバス
B13へ直接にゲートさせる。バスB13の出力は、後
述する如く、AOPに関連するステータス・ビットをシ
フトする。ソース・シフト・バツフア・ラツチB25の
出力へ接続された零検出器B27及びレジスタB24へ
接続された雲検出器B28は、フアネル回路を通して線
B14へ供給される。この「琴シフト量」信号B14は
このソース取出についてはシフトが遂行さるべきでない
ことを指示し、また特定のAOPが取出を完了するとす
ぐに、すなわち後続AOPの取出を待機せずに、そのO
PからのデータをEFAI5へ供給することを可能にす
る。加算器BI9及びB21から生ぜられる桁上げ信号
B41及びB42は第9B図のフアネル回路B29へ供
給され、そこで遂行中の命令の型を指示する適当な復号
信号A4G又はA4日及び「復号成功」信号A4Bと組
合わされ、これにより重複取出トリガB30をオンに転
じる。このトリガB3川ま当該ソース・オペランド‘こ
ついて重複取出が遂行されねばならないことを指示し、
重複取出論理の制御並びに遂行さるべき取出の回数を決
定するオペランド長加算器B17へその出力を供給する
。MVC,NC,OC,XC又はCLC命令の場合、童
複取出条件はラッチB32へ接続された線B31上の信
号によって指示される。これは特別の信号であって、行
先フィールド(第1オペランド)の全体が1ダブルワー
ドに包含されるときに、重榎取出を抑止するために使用
される。このような場合、両オペランドが童複取出を必
要とするように位置合せされたとしても、かかる童複取
出を行う必要はない。ラッチ832からの信号831は
トリガ833によって制御することができる。トリガB
33は、SS命令の第1オペランドが1より多いダブル
ワードを有する場合、該命令の第1復号サイクル中にセ
ットされる。ラツチB32がセットされるのは、トリガ
B33がオンである場合か又はトリガB34がオンで且
つ信号B12が1より多いダブルワードが供聯合される
ことを指示する場合である。トリガB34がセットされ
るのは、「復号成功」信号A4Bが存在し、MNC,N
C,OX,XC又はCLC命令のいずれかが復号されて
おり且つ当該サイクルがこのような命令の第2復号サイ
クルでない場合である。ラッチB32及びトリガB33
は、それらをリセットさせるような次の「復号成功」信
号A4Bが生ぜられるまで、そのままオンに留まる。線
B4乃至B7上の信号はトIJガ信号であり、所与のA
OPが開始されるサイクルの間に有意となる。
使用される。その右側入力B20は1の補教化回路へ接
続され、該回路は線A4Fを介して加えられるLM命令
の「命令ビット11」信号(これは。ードされる最初の
汎用レジスタが奇数番号を有するときオンの状態を示す
)と00を連結する。加算器BI9の左側入力D2は、
第11図のプロセッサ・アドレス・ラッチ○12から、
LM命令の有効アドレスの下位3ビットを受取る。この
結果、EFAI5中のAレジスタに置かれるべきオペラ
ンドの第1バイトのバイト・アドレスが、該第1バイト
の主記憶AI6におけるバイト・アドレスから減算され
る。つまり、加算器BI9の出力は当該オペランドが左
シフトさるべき量を指示するということである。加算器
BI9の位置29から生ぜられる桁上げは、EFAI5
へ供給さるべき第1ダブルワード中のバイトの数が、主
記憶AI6からの最初の取出中に得られるバイトの数に
等しいか又はそれより大きいことを指示する。この特定
の状況では、ソース制御によって遂行される次の取出は
主記憶AI6中の後続ダブルワ−ドを対象として行われ
ることになる。しかし、加算器819の位置29から桁
上げが生じなければ、最初の入力ゲート時にEF A1
5へ供孫合されるバイトよりも多いバイトが最初の取出
の際に得られるということが指示される。これは童複取
出の状況である。第9D図の加算器B2 1は、MVC
,NC,OC,XC及びCLC命令のシフト量を決定す
る。その機能はLM命令に関連して説明した加算器BI
9のそれと略同じであり、ただ右側入力B22が第1オ
ペランドの下位アドレス・ビットを受取るという点が相
違するだけである。これらの下位アドレス・ビットはし
ジスタB23から得られ、議しジス外ま当該命令の第1
オペランド‘こ対する先の復号成功サイクル中にセット
されている。加算器B21及びBI9の出力は、ゲート
信号として機能する信号A4G及びA4日の制御下でレ
ジスタB24へゲ−トされ、議しジスタは復号に続くサ
イクルの開始時にこのシフト量を保持する。但し、信号
A4Gは復号された命令がMNC,NC,OC,XC若
しくはCLC命令であることを指示し、他の信号A4日
は復号された命令がLM命令であることを指示する。も
し第9A図のトリガB26がオンで、当該復号サイクル
がソース取出を開始させたことを指示するならば、レジ
スタB24(第9D図)に保持されたシフト量信号は3
ビットのソース・シフト・バツフア・ラツチB25へ入
力ゲートされる。このようにして該ラツチB25に置か
れたシフト量信号は、ソース・オペランドの取出を必要
とする他の命令について新しい「復号成功」信号A4B
が得られるまで、そのままに留まる。第13図からの「
ソース取出」信号F7によって指示されるように、ソー
ス制御がソース取出を行うたびに、ラッチB25中のシ
フト量信号はバスB13へゲートされる。トリガB26
(第9A図)からの「ソース・フィ−ルド取出」信号B
9は、「復号成功」信号A4Bに起因する最初の取出の
ためにレジスタB24に保持されたシフト量信号をバス
B13へ直接にゲートさせる。バスB13の出力は、後
述する如く、AOPに関連するステータス・ビットをシ
フトする。ソース・シフト・バツフア・ラツチB25の
出力へ接続された零検出器B27及びレジスタB24へ
接続された雲検出器B28は、フアネル回路を通して線
B14へ供給される。この「琴シフト量」信号B14は
このソース取出についてはシフトが遂行さるべきでない
ことを指示し、また特定のAOPが取出を完了するとす
ぐに、すなわち後続AOPの取出を待機せずに、そのO
PからのデータをEFAI5へ供給することを可能にす
る。加算器BI9及びB21から生ぜられる桁上げ信号
B41及びB42は第9B図のフアネル回路B29へ供
給され、そこで遂行中の命令の型を指示する適当な復号
信号A4G又はA4日及び「復号成功」信号A4Bと組
合わされ、これにより重複取出トリガB30をオンに転
じる。このトリガB3川ま当該ソース・オペランド‘こ
ついて重複取出が遂行されねばならないことを指示し、
重複取出論理の制御並びに遂行さるべき取出の回数を決
定するオペランド長加算器B17へその出力を供給する
。MVC,NC,OC,XC又はCLC命令の場合、童
複取出条件はラッチB32へ接続された線B31上の信
号によって指示される。これは特別の信号であって、行
先フィールド(第1オペランド)の全体が1ダブルワー
ドに包含されるときに、重榎取出を抑止するために使用
される。このような場合、両オペランドが童複取出を必
要とするように位置合せされたとしても、かかる童複取
出を行う必要はない。ラッチ832からの信号831は
トリガ833によって制御することができる。トリガB
33は、SS命令の第1オペランドが1より多いダブル
ワードを有する場合、該命令の第1復号サイクル中にセ
ットされる。ラツチB32がセットされるのは、トリガ
B33がオンである場合か又はトリガB34がオンで且
つ信号B12が1より多いダブルワードが供聯合される
ことを指示する場合である。トリガB34がセットされ
るのは、「復号成功」信号A4Bが存在し、MNC,N
C,OX,XC又はCLC命令のいずれかが復号されて
おり且つ当該サイクルがこのような命令の第2復号サイ
クルでない場合である。ラッチB32及びトリガB33
は、それらをリセットさせるような次の「復号成功」信
号A4Bが生ぜられるまで、そのままオンに留まる。線
B4乃至B7上の信号はトIJガ信号であり、所与のA
OPが開始されるサイクルの間に有意となる。
これらの信号は、このAOPによって遂行さるべき動作
に関係する情報を供給する。「第1取出」信号B4は現
在の取出が主記憶AI6の特定のフィールドから取出さ
れつつあるオペランドの最初のものであることを指示し
、「最終取出」信号B5は現在の取出がこのオペラソド
の最後のものであることを、「行先取出」信号B6は現
在の取出が行先制御によって行われていることを、そし
て「ソース取出」信号B7は現在の取出がソース制御に
よって行われていることをそれぞれ指示する。信号B6
又はB7のいずれか一方は、これらのすべての取出につ
いてオンとなる。信号B4及びB5は、順次の取出位置
に依存して、いずれかの組合せでオンとなる。第12図
から加わる「再取出優先」信号E8は、当該サイクルの
間にアドレス増数器DI1(第11図)が再取出を遂行
するために使用されていることを指示する。
に関係する情報を供給する。「第1取出」信号B4は現
在の取出が主記憶AI6の特定のフィールドから取出さ
れつつあるオペランドの最初のものであることを指示し
、「最終取出」信号B5は現在の取出がこのオペラソド
の最後のものであることを、「行先取出」信号B6は現
在の取出が行先制御によって行われていることを、そし
て「ソース取出」信号B7は現在の取出がソース制御に
よって行われていることをそれぞれ指示する。信号B6
又はB7のいずれか一方は、これらのすべての取出につ
いてオンとなる。信号B4及びB5は、順次の取出位置
に依存して、いずれかの組合せでオンとなる。第12図
から加わる「再取出優先」信号E8は、当該サイクルの
間にアドレス増数器DI1(第11図)が再取出を遂行
するために使用されていることを指示する。
これは遂行可能な最高優先順位の動作である。信号E8
は、アドレス増数器ラッチDI0(第11図)からアド
レスが取られるように「アドレス加算器をPRALへゲ
ート」信号BIをオフに転じ、またラッチ時間に「取世
襲求」信号B2をオンに転じて笛CF A13へ取出要
求を指示させる。「ソース/行先優先」信号E7は、或
るサイクルの間にソース制御又は行先制御のいずれかが
取出のためにアドレス増数器DIIを使用していること
を指示する。これは第2の優先順位を有する動作である
。またこの信号E7は、アドレス増数器DIIからアド
レスが取られるように、信号BIをオフに転じる。さら
にこの信号E7は、PSCF A13への「取出要求」
信号B2をラッチ時間にオンに転じるとともに、この取
出のために或るAOPが開始されるように「AOP開始
」信号B3をオンに転じる。もし命令復号ブロックAI
1から加わる「行先取出」信号A40及び「ソース取出
」信号A4Eの一方が「復号成功」信号A4Bと同時に
オンとなるならば、これに応じて信号B2及びB3がオ
ンに転じられる。しかし、信号BIはオンに転じないの
で、アドレスはアドレス加算器D13(第11図)から
取られない。第10A図及び第10B図に示す論理は、
使用中状態にあるAOPのトラックを維持するとともに
、必要に応じて開始さるべき次のAOPを決定する。
は、アドレス増数器ラッチDI0(第11図)からアド
レスが取られるように「アドレス加算器をPRALへゲ
ート」信号BIをオフに転じ、またラッチ時間に「取世
襲求」信号B2をオンに転じて笛CF A13へ取出要
求を指示させる。「ソース/行先優先」信号E7は、或
るサイクルの間にソース制御又は行先制御のいずれかが
取出のためにアドレス増数器DIIを使用していること
を指示する。これは第2の優先順位を有する動作である
。またこの信号E7は、アドレス増数器DIIからアド
レスが取られるように、信号BIをオフに転じる。さら
にこの信号E7は、PSCF A13への「取出要求」
信号B2をラッチ時間にオンに転じるとともに、この取
出のために或るAOPが開始されるように「AOP開始
」信号B3をオンに転じる。もし命令復号ブロックAI
1から加わる「行先取出」信号A40及び「ソース取出
」信号A4Eの一方が「復号成功」信号A4Bと同時に
オンとなるならば、これに応じて信号B2及びB3がオ
ンに転じられる。しかし、信号BIはオンに転じないの
で、アドレスはアドレス加算器D13(第11図)から
取られない。第10A図及び第10B図に示す論理は、
使用中状態にあるAOPのトラックを維持するとともに
、必要に応じて開始さるべき次のAOPを決定する。
破線で囲まれた回路C,A乃至C,Fの各々は、開始ト
リガと、使用中トリガと、AOPの各々に対応するラッ
チとを含む。以下では回路C,Aについて説明するが、
これは他の回路C,B乃至C,Fについてもあてはまる
。回路C,Aに設けられた使用中トリガC20及び使用
中ラツチC21は、AOP−Aに対応する使用中トリガ
及び使用中ラッチである。これらはAOP−Aが使用中
であるときオンとなり、AOP−Aが割当てられておら
ず従って利用可能であるときオフとなる。これらをオン
に転ずる信号はAND回路C22から到来し、該回路は
第9A図から加わる「AOP開始」信号B3及びAOP
−Aが次に使用されることを指示する復号器C23の出
力Aによって作動される。AND回路C22の出力はそ
れと同時に開始トリガC24をオンに転じ、該トリガは
AOP−Aが開始されている1サイクルの間オンとなる
。「AOP−Aリセット」信号KIは、AOP−Aがも
はや必要でなくなったとき1サイクルの間にオンになり
、使用中ラツチC21及び使用中トリガC20をオフに
転じてAOP−Aが今や割当てられていないことを指示
させる。ラッチC21がオンであると、これに応じて「
アドレス増数器をOAR−Aへゲート」信号C7及び「
アドレス加算器をOAR−Aへゲート」信号C13が禁
止される。第11図を参照するに、信号C7及びCI3
はアドレス増数器ラッチDIO又はアドレス加算器ラツ
チD9からAOP一AにあるOAR−Aへの入力ゲート
をそれぞれ制御する。もし使用中ラツチC21がオフで
あれば、信号81の状態に依存して信号C7又はC13
のいずれか一方が出力され、かくてアドレス増数器ラッ
チDIO又はアドレス加算器ラツチD9のいずれかがO
AR−Aへ入力ゲートされる。従って、或るAOPが使
用中でなければ、そのOARは、信号BIの状態に依存
して第11図のアドレス増数器ラッチDIO又はアドレ
ス加算器ラッチD9から各サイクルごとに入力ゲートさ
れうる。然る後、このAOPが開始されるとき、この入
力ゲートが停止されるので、入力ゲートされた最後の値
はこのAOPが必要とするオペランド・アドレス値であ
る。回路C,Aについて前記した構成及び動作は、AO
Pの各々についても同様である。第10A図の回路C2
5乃至C27は開始トリガC24及び使用中トリガC2
0の状態を調べ、そして第9A図からの「AOP開始」
信号B3が活勢である場合には、どのAOPが次のサイ
クルで開始さるべきかを決定する。
リガと、使用中トリガと、AOPの各々に対応するラッ
チとを含む。以下では回路C,Aについて説明するが、
これは他の回路C,B乃至C,Fについてもあてはまる
。回路C,Aに設けられた使用中トリガC20及び使用
中ラツチC21は、AOP−Aに対応する使用中トリガ
及び使用中ラッチである。これらはAOP−Aが使用中
であるときオンとなり、AOP−Aが割当てられておら
ず従って利用可能であるときオフとなる。これらをオン
に転ずる信号はAND回路C22から到来し、該回路は
第9A図から加わる「AOP開始」信号B3及びAOP
−Aが次に使用されることを指示する復号器C23の出
力Aによって作動される。AND回路C22の出力はそ
れと同時に開始トリガC24をオンに転じ、該トリガは
AOP−Aが開始されている1サイクルの間オンとなる
。「AOP−Aリセット」信号KIは、AOP−Aがも
はや必要でなくなったとき1サイクルの間にオンになり
、使用中ラツチC21及び使用中トリガC20をオフに
転じてAOP−Aが今や割当てられていないことを指示
させる。ラッチC21がオンであると、これに応じて「
アドレス増数器をOAR−Aへゲート」信号C7及び「
アドレス加算器をOAR−Aへゲート」信号C13が禁
止される。第11図を参照するに、信号C7及びCI3
はアドレス増数器ラッチDIO又はアドレス加算器ラツ
チD9からAOP一AにあるOAR−Aへの入力ゲート
をそれぞれ制御する。もし使用中ラツチC21がオフで
あれば、信号81の状態に依存して信号C7又はC13
のいずれか一方が出力され、かくてアドレス増数器ラッ
チDIO又はアドレス加算器ラツチD9のいずれかがO
AR−Aへ入力ゲートされる。従って、或るAOPが使
用中でなければ、そのOARは、信号BIの状態に依存
して第11図のアドレス増数器ラッチDIO又はアドレ
ス加算器ラッチD9から各サイクルごとに入力ゲートさ
れうる。然る後、このAOPが開始されるとき、この入
力ゲートが停止されるので、入力ゲートされた最後の値
はこのAOPが必要とするオペランド・アドレス値であ
る。回路C,Aについて前記した構成及び動作は、AO
Pの各々についても同様である。第10A図の回路C2
5乃至C27は開始トリガC24及び使用中トリガC2
0の状態を調べ、そして第9A図からの「AOP開始」
信号B3が活勢である場合には、どのAOPが次のサイ
クルで開始さるべきかを決定する。
これらの回路の動作は、まずAOP−Aを調べそれが使
用可能であれば使用し、さもなければ次にAOP−Bを
調べそれが使用可能であれば使用するという手順を、A
OP−Fに至るまで順次に行う。回路C25乃至C27
はビット0乃至2から成る3ビットのm(識別子)を供
給し、これにより次に使用さるべきAOPを指示する。
簡単のために「次のm」と呼ばれるこのmはその値2が
AOP−Aを指示し、値3がAOP−Bを指示し、以下
同様に値7がAOP−Fを指示する如く符号化されてい
る。このようにして発生された「次のID」は使用mラ
ッチC28に置かれ、該ラツチはこのr次のID」を復
号器C23へ戻す。こうすることにより、「AOP開始
」信号B3が受取られたとき、オンに転ぜられるべき開
始トリガ及び使用中トリガを決定することができる。所
与のAOPを識別するIDの符号化は、本発明の実施態
様を通して標準化されている。復号器C23の出力A乃
至Fは2進のIDコード010乃至111(すなわちI
G隼の2乃至7)にそれぞれ対応する。この実施態様に
おけるすべての復号器及び符号器には、これと同じ規則
が適用される。第11図は、オペランド取出ブロックA
9における仮想アドレスの処理を示す。そこにはAOP
−A乃至AOP−Fにそれぞれ設けられた6個のOAR
、すなわちOAR−A乃至OAR−Fが図示されている
。これらのOARは、第10A図及び第10B図から加
わる信号C7乃至CI8の制御下で、アドレス加算器ラ
ツチD9又はアドレス増数器ラツチDIOから入力ゲー
トされうる。オペランド取出ブロックA9のアドレス加
算器ラッチD9によって受取られる有効アドレスはアド
レス加算器出力線A4Aを介して命令復号ブロックAI
Iから供v給され、該ブロックは命令が復号されたと
きその有効アドレスを計算する。
用可能であれば使用し、さもなければ次にAOP−Bを
調べそれが使用可能であれば使用するという手順を、A
OP−Fに至るまで順次に行う。回路C25乃至C27
はビット0乃至2から成る3ビットのm(識別子)を供
給し、これにより次に使用さるべきAOPを指示する。
簡単のために「次のm」と呼ばれるこのmはその値2が
AOP−Aを指示し、値3がAOP−Bを指示し、以下
同様に値7がAOP−Fを指示する如く符号化されてい
る。このようにして発生された「次のID」は使用mラ
ッチC28に置かれ、該ラツチはこのr次のID」を復
号器C23へ戻す。こうすることにより、「AOP開始
」信号B3が受取られたとき、オンに転ぜられるべき開
始トリガ及び使用中トリガを決定することができる。所
与のAOPを識別するIDの符号化は、本発明の実施態
様を通して標準化されている。復号器C23の出力A乃
至Fは2進のIDコード010乃至111(すなわちI
G隼の2乃至7)にそれぞれ対応する。この実施態様に
おけるすべての復号器及び符号器には、これと同じ規則
が適用される。第11図は、オペランド取出ブロックA
9における仮想アドレスの処理を示す。そこにはAOP
−A乃至AOP−Fにそれぞれ設けられた6個のOAR
、すなわちOAR−A乃至OAR−Fが図示されている
。これらのOARは、第10A図及び第10B図から加
わる信号C7乃至CI8の制御下で、アドレス加算器ラ
ツチD9又はアドレス増数器ラツチDIOから入力ゲー
トされうる。オペランド取出ブロックA9のアドレス加
算器ラッチD9によって受取られる有効アドレスはアド
レス加算器出力線A4Aを介して命令復号ブロックAI
Iから供v給され、該ブロックは命令が復号されたと
きその有効アドレスを計算する。
というのは、アドレス加算器D31は実際には命令復号
ブロックAIIの一部として設けられているからである
。アドレス加算器ラッチD9にあるアドレスはアドレス
加算器D13から与えられ、オペランド取出ブロックA
9の内部におけるアドレスの処理を表わす。
ブロックAIIの一部として設けられているからである
。アドレス加算器ラッチD9にあるアドレスはアドレス
加算器D13から与えられ、オペランド取出ブロックA
9の内部におけるアドレスの処理を表わす。
オペランド取出ブロックA9が適当なOAR中のアドレ
スによって要求されるオペランドの再取出を必要とする
場合、アドレス増数器DI Iは該OARからプロセッ
サ・アドレス・ラツチD12ヘアドレスを与えるための
通路として使用される。この場合、信号F3川ま不在で
このアドレスには何も加算されず、また信号BIも不在
であるからこのアドレスはプロセッサ・アドレス・ラツ
チD12へゲートされる。かくて、このアドレスは変更
されないでそのままPSCF A13へ再送される。こ
の目的は既に開始されたAOPについて取出を反復する
ことにあるから、他のAOPは開始されない。アドレス
増数器DIIの他の目的は、ソース制御又は行先制籾に
よって、使用中でないAOPを開始させるためのアドレ
スを供輪葺することにある。この場合、ソース制御又は
行先制御によって最後に開始されたAOFのOARはア
ドレス増数器DIIへゲートされ、さらに偽CF AI
3へ新しい取出要求を供給するためにプロセッサ・アド
レス・ラツチD12へゲートされ、また次のAOPを開
始させるためにアドレス増数器ラツチDIOIこもゲー
トされる。ソース制御又は行先制御がこのようにしてア
ドレス増数器DIOを普通に使用している場合、信号F
30がオンとなって(ダブルワード中の8バイトを表わ
す)8がアドレスへ加算されるから、次の上位ダブルワ
ードから取出が行われることになる。この例外は信号F
30が不在となるような童複取出の場合であり、ここで
は同一ダブルワードが再び取出される。既に説明した信
号BIはアドレス加算器D13をプロセッサ・アドレス
・ラッチD12へゲートするための信号であって、該ラ
ツチD12へのアドレスがアドレス加算器D13又はア
ドレス増数器DIIのいずれから取られるのかを制御す
るとともに、アドレス加算器ラッチ○9又はアドレス増
数器ラッチDIOのいずれがOARへ入力ゲートされる
のかを制御する。第12A図及び第12B図の論理は、
第11図のアドレス増数器DIIヘアドレスを出力ゲー
トすべきOARを制御する。「OARゲート」線EI乃
至E6はOAR一A乃至OAR−Fの出力ゲートへそれ
ぞれ接続され、そして優先回路を構成するフアネル回路
EIO乃至E15へ接続されたゲート制御トリガから信
号をそれぞれ受取る。rAOP再取出」信号JI乃至J
6は第17B図から受取られ、AOP−A乃至AOP−
Fの各々に対する再取出動作を指示する。これらの信号
JI乃至J6のうち唯1つだけが一時にオンとなること
が可能であり、そして或る信号がオンとなった場合には
、これに応じて第12A図の「OARゲート」信号EI
乃至E6のうち対応する信号がオンに転じられ、またO
R回路E9の出力がオンとなってフアネル回路EIO乃
至E15への他の全入力をデゲートさせる。さらに再取
出優先トリガE16もオンとなり、線E8を介して当該
サイクルの間にアドレス増数器DI1(第11図)が再
取出のために使用されていることを指示する。もし「A
OP再取出」信号JI乃至J6の或るものがオンでなけ
れば、アドレス増数器DIIをソース制御及び行先制御
によって使用することができる。もしこれらの制御のう
ちいずれか一方がアドレス増数器DIIの使用を必要と
すれば、該制御は第138図の「行分aD使用」信号F
1、「ソースID使用」信号F3又は「次のID使用」
信号F4をオンに転ずる。信号FIは行先制御が新しい
AOPの開始を必要とするときにオンに転じ、これによ
り第15図からの線G6に「先行行先ID」を有するO
ARをアドレス増数器DI Iへゲートさせる。同様に
、信号F3はソース制御が新しいAOPの開始を必要と
するときオンに転じ、これにより第15図からの線G4
に「先行ソースm」を有するOARをアドレス増数器D
I Iへゲートさせる。ソース制御だけが1サイクルの
速度で新しいOARを開始させることができるが、この
ためには特別の動作が必要である。この場合、第10A
図からの「次のID」信号CI9によって識別されたA
OPがアドレス増数器DIIへゲートされるように、ソ
ース制御によって(信号F3のかわりに)信号F4が上
昇される。信号CI9は開始されんとしているAOPの
IDを含み、そしてこの「次のm」は線G4上の「先行
ソースID」のかわりに使用される。というのは、1サ
イクルの速度で動作している場合、先に開始されたAO
Pのmが「先行ソースID」信号G4を獲得するには十
分な時間が無いからである。第12A図のソース/行先
優先トリガE17がオンに転ずると、これは当該サイク
ル中にソース制御又は行先制御によってアドレス増数器
DIIが使用されていることを指示する。
スによって要求されるオペランドの再取出を必要とする
場合、アドレス増数器DI Iは該OARからプロセッ
サ・アドレス・ラツチD12ヘアドレスを与えるための
通路として使用される。この場合、信号F3川ま不在で
このアドレスには何も加算されず、また信号BIも不在
であるからこのアドレスはプロセッサ・アドレス・ラツ
チD12へゲートされる。かくて、このアドレスは変更
されないでそのままPSCF A13へ再送される。こ
の目的は既に開始されたAOPについて取出を反復する
ことにあるから、他のAOPは開始されない。アドレス
増数器DIIの他の目的は、ソース制御又は行先制籾に
よって、使用中でないAOPを開始させるためのアドレ
スを供輪葺することにある。この場合、ソース制御又は
行先制御によって最後に開始されたAOFのOARはア
ドレス増数器DIIへゲートされ、さらに偽CF AI
3へ新しい取出要求を供給するためにプロセッサ・アド
レス・ラツチD12へゲートされ、また次のAOPを開
始させるためにアドレス増数器ラツチDIOIこもゲー
トされる。ソース制御又は行先制御がこのようにしてア
ドレス増数器DIOを普通に使用している場合、信号F
30がオンとなって(ダブルワード中の8バイトを表わ
す)8がアドレスへ加算されるから、次の上位ダブルワ
ードから取出が行われることになる。この例外は信号F
30が不在となるような童複取出の場合であり、ここで
は同一ダブルワードが再び取出される。既に説明した信
号BIはアドレス加算器D13をプロセッサ・アドレス
・ラッチD12へゲートするための信号であって、該ラ
ツチD12へのアドレスがアドレス加算器D13又はア
ドレス増数器DIIのいずれから取られるのかを制御す
るとともに、アドレス加算器ラッチ○9又はアドレス増
数器ラッチDIOのいずれがOARへ入力ゲートされる
のかを制御する。第12A図及び第12B図の論理は、
第11図のアドレス増数器DIIヘアドレスを出力ゲー
トすべきOARを制御する。「OARゲート」線EI乃
至E6はOAR一A乃至OAR−Fの出力ゲートへそれ
ぞれ接続され、そして優先回路を構成するフアネル回路
EIO乃至E15へ接続されたゲート制御トリガから信
号をそれぞれ受取る。rAOP再取出」信号JI乃至J
6は第17B図から受取られ、AOP−A乃至AOP−
Fの各々に対する再取出動作を指示する。これらの信号
JI乃至J6のうち唯1つだけが一時にオンとなること
が可能であり、そして或る信号がオンとなった場合には
、これに応じて第12A図の「OARゲート」信号EI
乃至E6のうち対応する信号がオンに転じられ、またO
R回路E9の出力がオンとなってフアネル回路EIO乃
至E15への他の全入力をデゲートさせる。さらに再取
出優先トリガE16もオンとなり、線E8を介して当該
サイクルの間にアドレス増数器DI1(第11図)が再
取出のために使用されていることを指示する。もし「A
OP再取出」信号JI乃至J6の或るものがオンでなけ
れば、アドレス増数器DIIをソース制御及び行先制御
によって使用することができる。もしこれらの制御のう
ちいずれか一方がアドレス増数器DIIの使用を必要と
すれば、該制御は第138図の「行分aD使用」信号F
1、「ソースID使用」信号F3又は「次のID使用」
信号F4をオンに転ずる。信号FIは行先制御が新しい
AOPの開始を必要とするときにオンに転じ、これによ
り第15図からの線G6に「先行行先ID」を有するO
ARをアドレス増数器DI Iへゲートさせる。同様に
、信号F3はソース制御が新しいAOPの開始を必要と
するときオンに転じ、これにより第15図からの線G4
に「先行ソースm」を有するOARをアドレス増数器D
I Iへゲートさせる。ソース制御だけが1サイクルの
速度で新しいOARを開始させることができるが、この
ためには特別の動作が必要である。この場合、第10A
図からの「次のID」信号CI9によって識別されたA
OPがアドレス増数器DIIへゲートされるように、ソ
ース制御によって(信号F3のかわりに)信号F4が上
昇される。信号CI9は開始されんとしているAOPの
IDを含み、そしてこの「次のm」は線G4上の「先行
ソースID」のかわりに使用される。というのは、1サ
イクルの速度で動作している場合、先に開始されたAO
Pのmが「先行ソースID」信号G4を獲得するには十
分な時間が無いからである。第12A図のソース/行先
優先トリガE17がオンに転ずると、これは当該サイク
ル中にソース制御又は行先制御によってアドレス増数器
DIIが使用されていることを指示する。
このトリガE17がオンに転ずるのは、「ソース/行先
優先要求」信号F2が存在し且つOR回路E9へ供給さ
れる「AOP再取出」信号J I乃至J6が存在しない
場合である。第13A図乃至第13D図は、ソース制御
及び行先制御を示す。
優先要求」信号F2が存在し且つOR回路E9へ供給さ
れる「AOP再取出」信号J I乃至J6が存在しない
場合である。第13A図乃至第13D図は、ソース制御
及び行先制御を示す。
これらの図面に示された主要な制御論理は、特定のフィ
ールドを敬出すために1より多いAOPが必要であると
き、追加AOPの開始を制御する。「1より多いダブル
ワード」信号B12が、主たる制御を与える。ソース取
出を必要とする命令が復号された後のサイクルにこの信
号B12が存在していれば、「ソース8フィールド取出
」信号B9はラッチFIO及びトリガFIIをセットす
る。このラツチFIO及びトリガFIで‘ま「 このソ
ース。フィールドの取出が継続する限り、オンに留まる
。また信号B9はソース。カウント。ラッチF12を制
御し、これにより当該オペランドについて取出すことが
必要なダブルワードの総数より1だけ小さい「ダブルワ
ード・カウント」信号BIIを該ラッチへ入力ゲートさ
せる。次いで、この信号BIIは各サイクルごとに加算
器F13及びソース・カウント・トリガF14を通して
ソース・カウント・ラツチF亀2へ戻される。普通の場
合、ラツチF12のカウント信号は加算器F13によっ
ては変更されない。しかし、もしソース取世ラツチF2
1(第13D図)からの「ソース取出」信号F8がオン
となって新しいソース取出が開始されたことを指示する
なら‘ま、信号BIIは加算器F13で1だけ減数され
る。零検出器F15はソース・カウント・ラッチF12
のビット23乃至27へ接続され、この信号BIIが1
まで減数されたときその出力を供給し、よって1回だけ
の取出が残っていることを指示する。この取出が行われ
た場合、雲検出器F15の出力と信号F8の組合せによ
りAND回路F16から出力が生じ、ソース・リセット
−トリガF17をオンに転じる。これによりソース制御
のオペランド取出が終了したことが指示され、そしてソ
ース活勢ラッチFIOがリセットされる。ソース・リセ
ット。
ールドを敬出すために1より多いAOPが必要であると
き、追加AOPの開始を制御する。「1より多いダブル
ワード」信号B12が、主たる制御を与える。ソース取
出を必要とする命令が復号された後のサイクルにこの信
号B12が存在していれば、「ソース8フィールド取出
」信号B9はラッチFIO及びトリガFIIをセットす
る。このラツチFIO及びトリガFIで‘ま「 このソ
ース。フィールドの取出が継続する限り、オンに留まる
。また信号B9はソース。カウント。ラッチF12を制
御し、これにより当該オペランドについて取出すことが
必要なダブルワードの総数より1だけ小さい「ダブルワ
ード・カウント」信号BIIを該ラッチへ入力ゲートさ
せる。次いで、この信号BIIは各サイクルごとに加算
器F13及びソース・カウント・トリガF14を通して
ソース・カウント・ラツチF亀2へ戻される。普通の場
合、ラツチF12のカウント信号は加算器F13によっ
ては変更されない。しかし、もしソース取世ラツチF2
1(第13D図)からの「ソース取出」信号F8がオン
となって新しいソース取出が開始されたことを指示する
なら‘ま、信号BIIは加算器F13で1だけ減数され
る。零検出器F15はソース・カウント・ラッチF12
のビット23乃至27へ接続され、この信号BIIが1
まで減数されたときその出力を供給し、よって1回だけ
の取出が残っていることを指示する。この取出が行われ
た場合、雲検出器F15の出力と信号F8の組合せによ
りAND回路F16から出力が生じ、ソース・リセット
−トリガF17をオンに転じる。これによりソース制御
のオペランド取出が終了したことが指示され、そしてソ
ース活勢ラッチFIOがリセットされる。ソース・リセ
ット。
トリガF竃7がオンになると、これに応じて「ソース/
行先最終取出」信号F6が送られ、このサイクルに開始
されているOARが最終取出のためのものであることを
指示する。システム中のデッドロックを防止するには、
ソース制御又は行先制御の一方により割当てることがで
きるAOPの数を制限して他方の制御によるAOPの獲
得をロック・アウトしないようにすることが必要である
。
行先最終取出」信号F6が送られ、このサイクルに開始
されているOARが最終取出のためのものであることを
指示する。システム中のデッドロックを防止するには、
ソース制御又は行先制御の一方により割当てることがで
きるAOPの数を制限して他方の制御によるAOPの獲
得をロック・アウトしないようにすることが必要である
。
この制限を実現するため、AOPの各々についてステー
タス・ビットを維持し「 どのAOPがソース取出又は
行先取出のために使用されているかを記録することが行
われる。信号N5は2個のAOPがソースのために割当
てられることを指示し、信号N4は3個のAOPがソー
スのために割当てられることを指示する。これらの信号
はソース取出ラッチF21からの信号F21と組合わさ
れ、ソース取出のために3個のOARが割当てられるこ
とを指示するためにフアネル回路F32から出力を生ぜ
しめる。この出力は、行先活勢ラツチF30がオンであ
るとき、ソース制限トリガF20をオンに転ずる。行先
制御のための同様の論理は、3個以上のOARが行先取
出のために割当てられるとき、行先制限トリガFI9を
オンに転ずる。
タス・ビットを維持し「 どのAOPがソース取出又は
行先取出のために使用されているかを記録することが行
われる。信号N5は2個のAOPがソースのために割当
てられることを指示し、信号N4は3個のAOPがソー
スのために割当てられることを指示する。これらの信号
はソース取出ラッチF21からの信号F21と組合わさ
れ、ソース取出のために3個のOARが割当てられるこ
とを指示するためにフアネル回路F32から出力を生ぜ
しめる。この出力は、行先活勢ラツチF30がオンであ
るとき、ソース制限トリガF20をオンに転ずる。行先
制御のための同様の論理は、3個以上のOARが行先取
出のために割当てられるとき、行先制限トリガFI9を
オンに転ずる。
この動作は「 ソース活勢ラッチFI0のオン状態によ
っては条件付けられない。このように「 この点におけ
る両制御の動作が異なるのは、MVC命令やLM命令の
如き命令について行先制御が活勢でなくても、ソース制
御はランすることがあるからである。逆に、行先制御は
、ソース制御がランしていなければ、決してランしない
。制限トリガFI9又はF20の一方がオンであれば、
それに関連するソース制御又は行先制御はそれ以上AO
Pを開始させることができない。優先回路F22は、ア
ドレス増数器DI1(第11図)を次に使用することが
できるのがソース制御又は行先制御のどちらであるかを
決定する。
っては条件付けられない。このように「 この点におけ
る両制御の動作が異なるのは、MVC命令やLM命令の
如き命令について行先制御が活勢でなくても、ソース制
御はランすることがあるからである。逆に、行先制御は
、ソース制御がランしていなければ、決してランしない
。制限トリガFI9又はF20の一方がオンであれば、
それに関連するソース制御又は行先制御はそれ以上AO
Pを開始させることができない。優先回路F22は、ア
ドレス増数器DI1(第11図)を次に使用することが
できるのがソース制御又は行先制御のどちらであるかを
決定する。
この回路によって調べられるものには、ソース活勢トリ
ガFIO及び行先活勢トリガF30、行先制限トリガF
I9及びソース制限トリガF20、アドレス増数器トリ
ガF27、「ソースノ行先優先」信号E7並びに「PS
CF使用中」信号A2Aがある。実現されたアルゴリズ
ムに従って、もしソース制御及び行先制御の両者が使用
中であれば、それらの制御は1つおきのサイクルごとに
動作することを許され、そしてどちらの制御も先行サイ
クルに動作しなかったならば、行先制御に磯先権が与え
られる。もし行先制劉が宿勢でなければトソース制御が
各サイクルごとに動作することを許される。もし行先制
御が後続サイクルにアドレス増数器DIIを使用するの
であれば、優先回路F22の出力はラツチF23をオン
に転ずる。
ガFIO及び行先活勢トリガF30、行先制限トリガF
I9及びソース制限トリガF20、アドレス増数器トリ
ガF27、「ソースノ行先優先」信号E7並びに「PS
CF使用中」信号A2Aがある。実現されたアルゴリズ
ムに従って、もしソース制御及び行先制御の両者が使用
中であれば、それらの制御は1つおきのサイクルごとに
動作することを許され、そしてどちらの制御も先行サイ
クルに動作しなかったならば、行先制御に磯先権が与え
られる。もし行先制劉が宿勢でなければトソース制御が
各サイクルごとに動作することを許される。もし行先制
御が後続サイクルにアドレス増数器DIIを使用するの
であれば、優先回路F22の出力はラツチF23をオン
に転ずる。
もしソース制御が後続サイクルにおいてアドレス増数器
DIIを使用することになっており且つ該制御が現サイ
クル中にこのアドレス増数器DIIを成功裡に使用しな
かったならば、ラツチF24がオンに転ぜられる。もし
ソース制御がアドレス増数器DIIを現サイクルで成功
裡に使用し且つ該増数器を次のサイクルで再び使用する
のであれば、そのときにはラッチF25がオンに転ぜら
れる。これらのラッチから得られる信号F1,F3及び
F4は第12A図及び第12B図のゲート制御論理へ供
給されて適当なOARからアドレス増数器DI Iへの
ゲートを制御し、「ソース/行先優先要求」信号F2は
第12図のソース/行先優先トリガE17へ供V給され
てソース制御又は行先制御が優先権を必要としているこ
とを指示せしめる。もしラツチF24又はF25がオン
になれば、ソース・アドレス増数器トリガF27はこれ
らのラッチへ接続されたOR回路の出力信号F26によ
ってオンに転じられる。
DIIを使用することになっており且つ該制御が現サイ
クル中にこのアドレス増数器DIIを成功裡に使用しな
かったならば、ラツチF24がオンに転ぜられる。もし
ソース制御がアドレス増数器DIIを現サイクルで成功
裡に使用し且つ該増数器を次のサイクルで再び使用する
のであれば、そのときにはラッチF25がオンに転ぜら
れる。これらのラッチから得られる信号F1,F3及び
F4は第12A図及び第12B図のゲート制御論理へ供
給されて適当なOARからアドレス増数器DI Iへの
ゲートを制御し、「ソース/行先優先要求」信号F2は
第12図のソース/行先優先トリガE17へ供V給され
てソース制御又は行先制御が優先権を必要としているこ
とを指示せしめる。もしラツチF24又はF25がオン
になれば、ソース・アドレス増数器トリガF27はこれ
らのラッチへ接続されたOR回路の出力信号F26によ
ってオンに転じられる。
高優先順位の再取出動作が遂行されなかった場合、この
トリガF27はアドレス増数器DIIがソース・オペラ
ンドのために使用されていることを指示する。もしこの
トリガF27のオンと同時にソース・リセット・トリガ
F17がオンとなるか、又は「偽CF使用中」信号A2
Aが受取られ、或いはもし「ソース/行先優先」信号E
7がオフであれば、このラツチF27の出力はAND回
路F28で阻止される。もしこの出力が阻止されなけれ
ば、ソース・オペランドのために或るAOPが開始され
、またソース取出ラツチF21がオンとなってこのこと
を指示する。このラッチF21からの信号F8及びラツ
チへ接続されたソース取出トリガからの「ソース取出」
信号F7は、この要求に関連するAOPを正常に開始さ
せるたに使用される。ソース・オペランドの取出につい
て説明したものと同機の回路が、行先オペランドの取出
についても設けられ、それと同様の態様で使用される。
両者が相違する処は、行先制御は1サイクルの速度では
動作することができず、しかも常に3個のAOPに制限
されるのに対し、ソース制御は1サイクルの速度で動作
可能であって、行先制御が活勢でなければ6個のAOP
全部を使用することができるという点にある。第14図
において、行先IDトリガGIO‘ま、EF A15へ
供v給さるべき次の行先データを有するAOPのID、
すなわち「次の行先IDJを保持する。
トリガF27はアドレス増数器DIIがソース・オペラ
ンドのために使用されていることを指示する。もしこの
トリガF27のオンと同時にソース・リセット・トリガ
F17がオンとなるか、又は「偽CF使用中」信号A2
Aが受取られ、或いはもし「ソース/行先優先」信号E
7がオフであれば、このラツチF27の出力はAND回
路F28で阻止される。もしこの出力が阻止されなけれ
ば、ソース・オペランドのために或るAOPが開始され
、またソース取出ラツチF21がオンとなってこのこと
を指示する。このラッチF21からの信号F8及びラツ
チへ接続されたソース取出トリガからの「ソース取出」
信号F7は、この要求に関連するAOPを正常に開始さ
せるたに使用される。ソース・オペランドの取出につい
て説明したものと同機の回路が、行先オペランドの取出
についても設けられ、それと同様の態様で使用される。
両者が相違する処は、行先制御は1サイクルの速度では
動作することができず、しかも常に3個のAOPに制限
されるのに対し、ソース制御は1サイクルの速度で動作
可能であって、行先制御が活勢でなければ6個のAOP
全部を使用することができるという点にある。第14図
において、行先IDトリガGIO‘ま、EF A15へ
供v給さるべき次の行先データを有するAOPのID、
すなわち「次の行先IDJを保持する。
各命令の実行開始時に、「OP分岐取得」信号A5Aは
、ラツチG14から行先IDトリガGIOへの入力ゲー
トを行わしめる。もしこの命令について行先取出が遂行
されたならば、当該制御は、OP分岐取得サイクルの間
にチェーンにおける最初の行先AOPのID、すなわち
r次の行先m」を線M2に供給する。次いで、EFAI
5が行先データのダブルワードを受取る準備を完了する
と、これは「Bレジスタへの主記憶オペランド」信号A
6Bを与える。この結果、行先IDトリガGIOはゲー
トGIIを介して出力ゲート制御ラッチGI2へゲート
され、そしてその「現に出力ゲートされるAOPのm」
出力G3はこのmによって選択されたAOP中のOPを
EF A1 5のA及びBレジスタに至るバスヘゲート
させる。もしこのデータが実際に偽CFA13から再び
受取られなかったならば、ラッチGI2への入力ゲート
を制御する信号GI5は後続サイクル中にEクロツクが
停止される間このラツチの内容をそのまま保持させるの
で、当該OPはそのデータをEFA15が受取るまで継
続的に出力ゲートすることができる。またラッチGI2
の出力信号G3はオペランド取出論理へ供給され、該論
理は行先チェーンにおける次のOPを決定するとともに
、「次のm」信号PIを復帰させてそのデータをEFA
15へ送らせるようにする。この信号PIは、「Bレジ
スタへの主記憶オペランド」信号A68により、行先I
DトリガGIQへ入力ゲートされる。もしEクロツクが
がAND回路G1 3によって停止されているならば、
データが利用可能となるまで、行先IDトリガGIOへ
の入力ゲートが禁止される。この動作の完了時に、最初
のOPの行先データはEFA15へ供給されており、ま
た行先IDトリガGI Oもチェーンの次のAOPをポ
イントするように更新されているので、EFAI5が他
の入力ゲートを通知するとき、EFAI5は行先チェー
ンにおける次のOPの内容を受取ることになる。
、ラツチG14から行先IDトリガGIOへの入力ゲー
トを行わしめる。もしこの命令について行先取出が遂行
されたならば、当該制御は、OP分岐取得サイクルの間
にチェーンにおける最初の行先AOPのID、すなわち
r次の行先m」を線M2に供給する。次いで、EFAI
5が行先データのダブルワードを受取る準備を完了する
と、これは「Bレジスタへの主記憶オペランド」信号A
6Bを与える。この結果、行先IDトリガGIOはゲー
トGIIを介して出力ゲート制御ラッチGI2へゲート
され、そしてその「現に出力ゲートされるAOPのm」
出力G3はこのmによって選択されたAOP中のOPを
EF A1 5のA及びBレジスタに至るバスヘゲート
させる。もしこのデータが実際に偽CFA13から再び
受取られなかったならば、ラッチGI2への入力ゲート
を制御する信号GI5は後続サイクル中にEクロツクが
停止される間このラツチの内容をそのまま保持させるの
で、当該OPはそのデータをEFA15が受取るまで継
続的に出力ゲートすることができる。またラッチGI2
の出力信号G3はオペランド取出論理へ供給され、該論
理は行先チェーンにおける次のOPを決定するとともに
、「次のm」信号PIを復帰させてそのデータをEFA
15へ送らせるようにする。この信号PIは、「Bレジ
スタへの主記憶オペランド」信号A68により、行先I
DトリガGIQへ入力ゲートされる。もしEクロツクが
がAND回路G1 3によって停止されているならば、
データが利用可能となるまで、行先IDトリガGIOへ
の入力ゲートが禁止される。この動作の完了時に、最初
のOPの行先データはEFA15へ供給されており、ま
た行先IDトリガGI Oもチェーンの次のAOPをポ
イントするように更新されているので、EFAI5が他
の入力ゲートを通知するとき、EFAI5は行先チェー
ンにおける次のOPの内容を受取ることになる。
ソースIDトリガG竃6も同様に動作するが、ただこの
トリガは当該命令について遂行されたソース取出のサー
ビスを与えるという点が異なる。この相違点の理由とし
ては、或る命令についてソース取出が遂行される場合、
オペランド取世論理は、EFAI5からの明示的信号を
要することなく、その実行開始時にAレジスタへの最初
の入力ゲートを自動的に遂行するということが挙げられ
る。このことは「OP分岐取得」信号A5Aによって生
ぜられ「該信号は「次のソースID」信号MIを出力ゲ
ート制御ラツチGI2へ直接にゲートせしめるとともに
、この信号MIの値が零でなければラッチGI9をオン
に転じて線GI?に信号を生ぜしめ、これによって当該
OPをEFA15中のAレジス夕へ出力ゲートさせる。
行先オペランド‘こついて説明したと同様に「出力ゲー
ト制御ラッチG亀2の出力信号G3はオペランド取出論
理へ加わり、該論理はチェ−ン中の「次のm」信号PI
を供給し、この信号はラツチG富9によってソースID
トリガG16へ入力ゲートされる。Eクロックを停止さ
せる動作は行先オペランドのそれと同じであり、そして
EFAI5中にあるAレジスタへの後続オペランドの入
力ゲートは「Aレジスタへの主記憶オペランド」信号A
6Aによって通知されるので、これにより行先IDのそ
れと同じ動作が行われる。第15図において、先行ソー
ス・ラッチG20及び先行ソース・トリガG21は、ソ
ース制御によって現に生成されている処のチェーンで最
後に開始されたAOPのIDを保持する。
トリガは当該命令について遂行されたソース取出のサー
ビスを与えるという点が異なる。この相違点の理由とし
ては、或る命令についてソース取出が遂行される場合、
オペランド取世論理は、EFAI5からの明示的信号を
要することなく、その実行開始時にAレジスタへの最初
の入力ゲートを自動的に遂行するということが挙げられ
る。このことは「OP分岐取得」信号A5Aによって生
ぜられ「該信号は「次のソースID」信号MIを出力ゲ
ート制御ラツチGI2へ直接にゲートせしめるとともに
、この信号MIの値が零でなければラッチGI9をオン
に転じて線GI?に信号を生ぜしめ、これによって当該
OPをEFA15中のAレジス夕へ出力ゲートさせる。
行先オペランド‘こついて説明したと同様に「出力ゲー
ト制御ラッチG亀2の出力信号G3はオペランド取出論
理へ加わり、該論理はチェ−ン中の「次のm」信号PI
を供給し、この信号はラツチG富9によってソースID
トリガG16へ入力ゲートされる。Eクロックを停止さ
せる動作は行先オペランドのそれと同じであり、そして
EFAI5中にあるAレジスタへの後続オペランドの入
力ゲートは「Aレジスタへの主記憶オペランド」信号A
6Aによって通知されるので、これにより行先IDのそ
れと同じ動作が行われる。第15図において、先行ソー
ス・ラッチG20及び先行ソース・トリガG21は、ソ
ース制御によって現に生成されている処のチェーンで最
後に開始されたAOPのIDを保持する。
普通の場合「「ソース取出」信号B7がなければ、この
先行AOPのIDはトリガG2 1からゲートG22を
通してラッチG20へ帰還されるので、このIDはこの
ラッチG20及びトリガG21で無限に保持される。こ
れに対し、「ソ−ス取出」信号B7が生ずる場合は、r
最終取出J信号B5がオンでゲートG23を阻止させな
い限り、この信号B7はゲートG23を作動させるので
、線T2にある開始中AOPのID(CI ID)がラ
ツチG2Qへゲートされることになる。各AOPの制御
によって保持されるステータス情報の内には、チェーン
における先行AOPのID、すなわち「先行ID」が含
まれる。この「先行ID」は線G8を介してAOP制御
へ供給される。ソース制御については、これがチェーン
の最初の取出でない限り、従って「第1取出」信号B4
がオンでゲートG24を阻止させない限り、この「先行
ID」は「ソース取出」信号B7の制御下でゲートG2
4を通して線G8へゲートされる。かくて、チェーン中
の最初のAOPはr先行ID」として零を有するのに対
し、チェーン中の他のAOPは先行AOPがどれである
かを指示する有意な「先行ID」を有する。先行行先ラ
ッチG26及び先行行先トリガG27も同様の態様で動
作する。IBMシステム/370のアーキテクチヤがプ
ロセッサの動作に議す制約には「命令“n”に対するす
べてのオペランド取出が命令“n十1”に対する任意の
オペランド敬出の前に遂行されねばならないというもの
と、複数のダブルワード‘こわたるオペランドを有する
ような命令については、オペランドの取出は最下位から
最上位へ順次に遂行されねばならないというものがある
。
先行AOPのIDはトリガG2 1からゲートG22を
通してラッチG20へ帰還されるので、このIDはこの
ラッチG20及びトリガG21で無限に保持される。こ
れに対し、「ソ−ス取出」信号B7が生ずる場合は、r
最終取出J信号B5がオンでゲートG23を阻止させな
い限り、この信号B7はゲートG23を作動させるので
、線T2にある開始中AOPのID(CI ID)がラ
ツチG2Qへゲートされることになる。各AOPの制御
によって保持されるステータス情報の内には、チェーン
における先行AOPのID、すなわち「先行ID」が含
まれる。この「先行ID」は線G8を介してAOP制御
へ供給される。ソース制御については、これがチェーン
の最初の取出でない限り、従って「第1取出」信号B4
がオンでゲートG24を阻止させない限り、この「先行
ID」は「ソース取出」信号B7の制御下でゲートG2
4を通して線G8へゲートされる。かくて、チェーン中
の最初のAOPはr先行ID」として零を有するのに対
し、チェーン中の他のAOPは先行AOPがどれである
かを指示する有意な「先行ID」を有する。先行行先ラ
ッチG26及び先行行先トリガG27も同様の態様で動
作する。IBMシステム/370のアーキテクチヤがプ
ロセッサの動作に議す制約には「命令“n”に対するす
べてのオペランド取出が命令“n十1”に対する任意の
オペランド敬出の前に遂行されねばならないというもの
と、複数のダブルワード‘こわたるオペランドを有する
ような命令については、オペランドの取出は最下位から
最上位へ順次に遂行されねばならないというものがある
。
オペランド取出論理がこのように構成されていると〜各
オペランドを取出すために使用されるAOPはァーキテ
クチャ的に正しい順序で開始されることになる。
オペランドを取出すために使用されるAOPはァーキテ
クチャ的に正しい順序で開始されることになる。
しかし、或るデータはキャッシュから利用することがで
き、また他のデータは主記憶AI6からの取出を必要と
することがあるので、各ダブルワードのみかけの取出順
序はAOPの開始順序とは異なることがある。この理由
で、後述するように順序付け拒否と呼ばれる機構がオペ
ランド取出ブロックA9に設けられる。それぞれの取出
が正しい順序で遂行されることを保証するには、諸AO
Pが最初はどのような順序で開始されたかを記憶するこ
とが必要である。第16A図乃至第16D図に示すLR
U(戊astRecentlyUsed)論理はこの機
能を遂行する。15個のラッチ日13乃至日27の各々
はAOPの異なる対にそれぞれ対応する。
き、また他のデータは主記憶AI6からの取出を必要と
することがあるので、各ダブルワードのみかけの取出順
序はAOPの開始順序とは異なることがある。この理由
で、後述するように順序付け拒否と呼ばれる機構がオペ
ランド取出ブロックA9に設けられる。それぞれの取出
が正しい順序で遂行されることを保証するには、諸AO
Pが最初はどのような順序で開始されたかを記憶するこ
とが必要である。第16A図乃至第16D図に示すLR
U(戊astRecentlyUsed)論理はこの機
能を遂行する。15個のラッチ日13乃至日27の各々
はAOPの異なる対にそれぞれ対応する。
たとえば、ラツチ日13について説明すると、これはA
OP−Bの開始時にセットされ、そしてAOP−Aの開
始時にリセットされる。もし任意の時間にラッチ日13
がオンであれば、これはAOP−BがAOP−Aよりも
後に開始されたことを指示し、従って再取出が遂行され
る場合には、AOP−AがAOPnBよりも高い優先順
位を有することになる。これに対し、もしラッチ日13
がオフであれば、事態は前記と全く反対である。フアネ
ル回路日28乃至日33の各々は、AOP一A乃至AO
P−Fの各々が再取出を必要としていることを指示する
第17B図からの「AOP再取出要求」信号J7乃至J
12をそれぞれ受取る。この再取出が必要となるのは
「前記したように順序を外れた取出があったためか、又
はPSCFAI3によって取出が拒否されたためである
。フアネル回路日28の出力は、他のAOPが高い優先
順位を有していて再取出を必要としているために、AO
P−Aが現時点では再取出を許可されないことを指示す
る。
OP−Bの開始時にセットされ、そしてAOP−Aの開
始時にリセットされる。もし任意の時間にラッチ日13
がオンであれば、これはAOP−BがAOP−Aよりも
後に開始されたことを指示し、従って再取出が遂行され
る場合には、AOP−AがAOPnBよりも高い優先順
位を有することになる。これに対し、もしラッチ日13
がオフであれば、事態は前記と全く反対である。フアネ
ル回路日28乃至日33の各々は、AOP一A乃至AO
P−Fの各々が再取出を必要としていることを指示する
第17B図からの「AOP再取出要求」信号J7乃至J
12をそれぞれ受取る。この再取出が必要となるのは
「前記したように順序を外れた取出があったためか、又
はPSCFAI3によって取出が拒否されたためである
。フアネル回路日28の出力は、他のAOPが高い優先
順位を有していて再取出を必要としているために、AO
P−Aが現時点では再取出を許可されないことを指示す
る。
この状態が存在するのは、AOP一Bが再取出を必要と
し且つAOP−Aより高い優先順位を有していたり、又
はAOP−Cが再取出を必要とし且つAOP−Aより高
い優先順位を有している場合等である。フアネル回路日
29乃至日33は、AOP−B乃至AOP−Fについて
これと同じ機能を遂行する。第17A図及び第17B図
に示す論理の主たる目的は、再取出を必要とするAOP
のトラックを維持することと、その再取出の正しい時間
になるとき適当な再取出信号を発生することである。
し且つAOP−Aより高い優先順位を有していたり、又
はAOP−Cが再取出を必要とし且つAOP−Aより高
い優先順位を有している場合等である。フアネル回路日
29乃至日33は、AOP−B乃至AOP−Fについて
これと同じ機能を遂行する。第17A図及び第17B図
に示す論理の主たる目的は、再取出を必要とするAOP
のトラックを維持することと、その再取出の正しい時間
になるとき適当な再取出信号を発生することである。
「C21D」信号T4は、PSCFのC2サイクルを有
するAOPを識別する。ここで、C2サイクルとは、ダ
ブルワードが送られていること又は取出要求が遅延若し
くは拒否されたことを俺CF AI3が通知するような
時間である。この信号T4は復号器J 13へ供給され
、そこから前記AOPへの出力が生ぜられる。AOP−
Aが「C21D」信号T4によって識別されるものとす
ると、C2サイクルの間に線J14に信号が生ぜられる
。もしこのC2サイクルの間に「遅延敬出拒否」信号A
2Cが存在するか又はPSCFA13から「取出遅延」
信号A2Dが生ぜられる場合、或いはオペランド敬出ブ
ロックA9で「順序付け拒否」信号K7が発生される場
合、OR回路J16はAND回路J 15へ出力を与え
、該AND回路はまた線J 14上の信号を受取ってA
OP一A再取出要求ラッチJ17をオンに転ずる。もし
C2サイクルの間に「取出遅延」信号A20が存在する
か、又は「遅延取出進行中」信号A28がオンである間
に「遅延取出棺否」信号A2Cが存在すれば、AND回
路J 1 8はAOP−A拒否ラッチJ I 9をオン
に転ずる。AOP−A再取出要求ラッチJ 1 7は、
AOP−Aによって必要とされた再取出が実際に遂行さ
れるまで、AOP−Aが再取出を必要としていることを
記憶する。AOP−A拒否ラッチJ I9は、AOP−
Aの拒否理由が遅延取出にあることを記憶し、そして「
遅延取出進行中」信号A28が終了するまでこれを記憶
する。ラッチJ17及びJI9の両者がオンである場合
、これは再取出が必要とされているけれども、拒否の原
因となった遅延取出力沖SCFA13でまだ完了してい
ないために、この再取出がまだ遂行できないことを指示
する。ラッチJ17がオンで且つラッチJI9がオフと
なる場合、これはAOP−Aの再取出が必要とされてお
り且つ優先順位が与えられれば直ちに遂行可能であるこ
とを指示する。「AOP−A再取出」信号JIを上昇さ
せることができるのは、ラツチJ17がオソ、ラツチJ
I9がオフで、しかも(優先順位の高い或るAOPが再
取出を待機していることを指示する)信号日7がオフで
あるような場合である。この信号JIは、AOP−Aの
再取出を実施するに必要な動作を生ぜしめる。特に、こ
の信号JIはゲート制御トリガへ供給されてAOP−A
をアドレス増数器DI1(第11図)へゲートせしめ、
さらにこの信号J Iは符号器J20へ供野合され、該
符号器から再取出IDトリガJ21へAOP−Aのmを
送らしめる。このようにして再取出IDトリガJ21に
非零のIDが与えられると、これは識別されたAOP−
Aに対する再取出を遂行するためにアドレス増数器DI
Iがこの特定のサイクルで使用されていることを表わす
。このm値は復号器J22へ供給され、該復号器はAO
P−Aについて線J 23に出力を発生してこれをAN
D回路J24へ与える。AND回路J24は、「PSC
F使用中」信号A2Aがオンでなければ、AOP−A再
取出要求ラッチJ17をリセットする。前記したように
、もしAOP−Aからの当初の取出要求が「取出遅延」
信号A2Dを受取ったならばトこれに応じてAOP−A
拒否ラッチJI9及びAOP−A再取出要求ラツチJ1
7がオンに転じられている筈である。
するAOPを識別する。ここで、C2サイクルとは、ダ
ブルワードが送られていること又は取出要求が遅延若し
くは拒否されたことを俺CF AI3が通知するような
時間である。この信号T4は復号器J 13へ供給され
、そこから前記AOPへの出力が生ぜられる。AOP−
Aが「C21D」信号T4によって識別されるものとす
ると、C2サイクルの間に線J14に信号が生ぜられる
。もしこのC2サイクルの間に「遅延敬出拒否」信号A
2Cが存在するか又はPSCFA13から「取出遅延」
信号A2Dが生ぜられる場合、或いはオペランド敬出ブ
ロックA9で「順序付け拒否」信号K7が発生される場
合、OR回路J16はAND回路J 15へ出力を与え
、該AND回路はまた線J 14上の信号を受取ってA
OP一A再取出要求ラッチJ17をオンに転ずる。もし
C2サイクルの間に「取出遅延」信号A20が存在する
か、又は「遅延取出進行中」信号A28がオンである間
に「遅延取出棺否」信号A2Cが存在すれば、AND回
路J 1 8はAOP−A拒否ラッチJ I 9をオン
に転ずる。AOP−A再取出要求ラッチJ 1 7は、
AOP−Aによって必要とされた再取出が実際に遂行さ
れるまで、AOP−Aが再取出を必要としていることを
記憶する。AOP−A拒否ラッチJ I9は、AOP−
Aの拒否理由が遅延取出にあることを記憶し、そして「
遅延取出進行中」信号A28が終了するまでこれを記憶
する。ラッチJ17及びJI9の両者がオンである場合
、これは再取出が必要とされているけれども、拒否の原
因となった遅延取出力沖SCFA13でまだ完了してい
ないために、この再取出がまだ遂行できないことを指示
する。ラッチJ17がオンで且つラッチJI9がオフと
なる場合、これはAOP−Aの再取出が必要とされてお
り且つ優先順位が与えられれば直ちに遂行可能であるこ
とを指示する。「AOP−A再取出」信号JIを上昇さ
せることができるのは、ラツチJ17がオソ、ラツチJ
I9がオフで、しかも(優先順位の高い或るAOPが再
取出を待機していることを指示する)信号日7がオフで
あるような場合である。この信号JIは、AOP−Aの
再取出を実施するに必要な動作を生ぜしめる。特に、こ
の信号JIはゲート制御トリガへ供給されてAOP−A
をアドレス増数器DI1(第11図)へゲートせしめ、
さらにこの信号J Iは符号器J20へ供野合され、該
符号器から再取出IDトリガJ21へAOP−Aのmを
送らしめる。このようにして再取出IDトリガJ21に
非零のIDが与えられると、これは識別されたAOP−
Aに対する再取出を遂行するためにアドレス増数器DI
Iがこの特定のサイクルで使用されていることを表わす
。このm値は復号器J22へ供給され、該復号器はAO
P−Aについて線J 23に出力を発生してこれをAN
D回路J24へ与える。AND回路J24は、「PSC
F使用中」信号A2Aがオンでなければ、AOP−A再
取出要求ラッチJ17をリセットする。前記したように
、もしAOP−Aからの当初の取出要求が「取出遅延」
信号A2Dを受取ったならばトこれに応じてAOP−A
拒否ラッチJI9及びAOP−A再取出要求ラツチJ1
7がオンに転じられている筈である。
この状況では、データはPSCF AISによって1ビ
ット遅れて復帰されるのでt再取出を遂行する必要はな
い。この特定の状況にいて〜AOP−Aに対するデータ
が復帰されんとするとき、「前進ID」線UIを介して
与えられる該AOPのIDが「PSCF前進」信号A2
Bによって復号器J25へゲートされ、かくて該復号器
から線J26に生ぜられる出力によってAOP−A拒否
ラツチJ 1 7及びAOP−A再取出要求ラッチJ耳
9がリセットされる。再取出を実際に必要としていなか
ったとしても、遅延された取出の際にこれらのラツチを
オンに転ずるのはト優先順位の低い他のAOPが再取出
を遂行することを防止するためである。これらの他のA
OPは「AOP−Aに対するデータが受取られるまで再
取出を遂行することを許可されないからである。AOP
一A拒否ラッチJ19は、「遅延取出進行中」信号A2
Eがオフになるまで、つまりPSCF A13で遂行さ
れている遅延された現在の取出が完了したこと及びPS
CF A亀 3が今や遅延された他の取出を遂行するた
めに利用可能であることが通知されるまで、オンに留ま
る。第19図のAOPリセット。トリガK8乃至K13
は、対応するAOPがその動作を完了してリセットされ
んとするとき、オンに転じられる。この状況が生ずるの
は、対応するAOPについて取出されたデータがEFA
I5へ成功裡に転送された場合である。この状態は、デ
ータがA及びBレジスタへ出力ゲートされていることを
指示示する処の第14図の出力ゲート制御ラッチから加
わる「現に出力ゲートされるAOPのID」信号G3の
存在と、「Eクロツク停止」停止信号S2の不在とによ
って認識される。第18図の論理は、「順序付け拒否」
信号K7を生成するためのものである。
ット遅れて復帰されるのでt再取出を遂行する必要はな
い。この特定の状況にいて〜AOP−Aに対するデータ
が復帰されんとするとき、「前進ID」線UIを介して
与えられる該AOPのIDが「PSCF前進」信号A2
Bによって復号器J25へゲートされ、かくて該復号器
から線J26に生ぜられる出力によってAOP−A拒否
ラツチJ 1 7及びAOP−A再取出要求ラッチJ耳
9がリセットされる。再取出を実際に必要としていなか
ったとしても、遅延された取出の際にこれらのラツチを
オンに転ずるのはト優先順位の低い他のAOPが再取出
を遂行することを防止するためである。これらの他のA
OPは「AOP−Aに対するデータが受取られるまで再
取出を遂行することを許可されないからである。AOP
一A拒否ラッチJ19は、「遅延取出進行中」信号A2
Eがオフになるまで、つまりPSCF A13で遂行さ
れている遅延された現在の取出が完了したこと及びPS
CF A亀 3が今や遅延された他の取出を遂行するた
めに利用可能であることが通知されるまで、オンに留ま
る。第19図のAOPリセット。トリガK8乃至K13
は、対応するAOPがその動作を完了してリセットされ
んとするとき、オンに転じられる。この状況が生ずるの
は、対応するAOPについて取出されたデータがEFA
I5へ成功裡に転送された場合である。この状態は、デ
ータがA及びBレジスタへ出力ゲートされていることを
指示示する処の第14図の出力ゲート制御ラッチから加
わる「現に出力ゲートされるAOPのID」信号G3の
存在と、「Eクロツク停止」停止信号S2の不在とによ
って認識される。第18図の論理は、「順序付け拒否」
信号K7を生成するためのものである。
この信号K7を受取るAOPはそのOPに保持されたダ
ブルワードの再取出を行うように制御されるが、これは
受取られたダブルワードが順序を外れているために行わ
れる。もし任意のAOPが再取出を必要としておれば、
OR回路K14は出力を発生して、そしてもしこの状態
が存在する間に「AOP開始」信号B3がオンならば、
AND回路K15から出力が生ぜられ、これによりトリ
ガK16「ラッチKIT及びトリガK18が後続サイク
ルにおいてそれぞれ1サイクルの間オンに転じられる。
この結果、当該AOPに関連する要求のC2サイクルの
間に、つまり該AOPが拒否信号を探索する間に、r順
序付け拒否」信号K7が生ぜられる。信号日亀乃至日6
は、AOP−A乃至AOP−Fについても再取出を必要
としている高優先順位のAOPが存在することをそれぞ
れ指示する。もしこれらのうち任意の信号がオンであり
且つこのAOPのmが「CIID」信号T】又は「C2
1D」信号T4の形で与えられるならば、フアネル回路
KI9又はK26から信号が生ぜられトこれにより当該
AOPのC2サイクル中に「順序付け拒否」信号K?が
生ぜられる。第20A図及び第20B図に示す論理は、
‘1}特定の命令がその最初の実行サイクルを越えて進
行することを許される前に或るAOPのOPによってデ
ータが受取られたか否かに拘わりなく、このAOPを復
号中の該特定の命令と関連付けるように動作し「 さら
に‘2)EF A15によって各AOPのデータが必要
とされる時点を指示するように動作する。
ブルワードの再取出を行うように制御されるが、これは
受取られたダブルワードが順序を外れているために行わ
れる。もし任意のAOPが再取出を必要としておれば、
OR回路K14は出力を発生して、そしてもしこの状態
が存在する間に「AOP開始」信号B3がオンならば、
AND回路K15から出力が生ぜられ、これによりトリ
ガK16「ラッチKIT及びトリガK18が後続サイク
ルにおいてそれぞれ1サイクルの間オンに転じられる。
この結果、当該AOPに関連する要求のC2サイクルの
間に、つまり該AOPが拒否信号を探索する間に、r順
序付け拒否」信号K7が生ぜられる。信号日亀乃至日6
は、AOP−A乃至AOP−Fについても再取出を必要
としている高優先順位のAOPが存在することをそれぞ
れ指示する。もしこれらのうち任意の信号がオンであり
且つこのAOPのmが「CIID」信号T】又は「C2
1D」信号T4の形で与えられるならば、フアネル回路
KI9又はK26から信号が生ぜられトこれにより当該
AOPのC2サイクル中に「順序付け拒否」信号K?が
生ぜられる。第20A図及び第20B図に示す論理は、
‘1}特定の命令がその最初の実行サイクルを越えて進
行することを許される前に或るAOPのOPによってデ
ータが受取られたか否かに拘わりなく、このAOPを復
号中の該特定の命令と関連付けるように動作し「 さら
に‘2)EF A15によって各AOPのデータが必要
とされる時点を指示するように動作する。
命令復号ブロックAIIが「復号成功」信号A4Bを供
給し且つ「行先取出」信号A4D又は「ソース取出」信
号A4Eによって行先又はソース。オペランドが取出さ
れることが指示される場合、命令待ち行列ブロックAI
2からの「Q入力ポィンタ」信号A5Cが第20A図の
Q−mバッファL13へ入力ゲートされる。この信号A
5Cは、この命令を受取るような命令待ち行列ブロック
AI2中の待ち行列位置を識別する。この待ち行列位置
の指標(Q−m)は、命令複号ブロックAIIによって
他の命令が復号されるまで、バッファL13に記憶され
る。かくて、この命令に関連するAOPが開始されるま
で、この「Q入力ポィンタ」信号A5Cが保持される。
Q−IDバッファL13の出力は回路L,AI乃至L(
FI)の各入力へ接続される。AOP−Aに対応する回
路L(AI)は以下で詳述されるが、他の回路L(BI
)乃至L(FI)の各々はそれぞれのAOPに対する開
始及びリセット信号を受取ることを除仇よ回路L(AI
)と同じように構成される。回路L(AI)には、AO
P一Aに関連して2ビットのステータス・ラッチL14
が設けられ、該ラッチはAOP−Aと現に関連している
命令の「Q入力ポィンタ」信号A5Cを記憶する。
給し且つ「行先取出」信号A4D又は「ソース取出」信
号A4Eによって行先又はソース。オペランドが取出さ
れることが指示される場合、命令待ち行列ブロックAI
2からの「Q入力ポィンタ」信号A5Cが第20A図の
Q−mバッファL13へ入力ゲートされる。この信号A
5Cは、この命令を受取るような命令待ち行列ブロック
AI2中の待ち行列位置を識別する。この待ち行列位置
の指標(Q−m)は、命令複号ブロックAIIによって
他の命令が復号されるまで、バッファL13に記憶され
る。かくて、この命令に関連するAOPが開始されるま
で、この「Q入力ポィンタ」信号A5Cが保持される。
Q−IDバッファL13の出力は回路L,AI乃至L(
FI)の各入力へ接続される。AOP−Aに対応する回
路L(AI)は以下で詳述されるが、他の回路L(BI
)乃至L(FI)の各々はそれぞれのAOPに対する開
始及びリセット信号を受取ることを除仇よ回路L(AI
)と同じように構成される。回路L(AI)には、AO
P一Aに関連して2ビットのステータス・ラッチL14
が設けられ、該ラッチはAOP−Aと現に関連している
命令の「Q入力ポィンタ」信号A5Cを記憶する。
ラツチL14は第10A図からの「AOP一A開始」信
号CIによってバッファL13にある「Q−m」をセッ
トされ、第19図から「AOP−Aリセット」信号KI
が送られるとき零へリセットされる。或る命令がEFA
I5によって実行される準備を完了している場合、命令
待ち行列ブロックAI2から回路L,AI乃至L,FI
の各々へrQ出力ポィンタ」信号AQBが与えられ、こ
れにより実行さるべき次の命令の待ち行列位置を指示す
る。
号CIによってバッファL13にある「Q−m」をセッ
トされ、第19図から「AOP−Aリセット」信号KI
が送られるとき零へリセットされる。或る命令がEFA
I5によって実行される準備を完了している場合、命令
待ち行列ブロックAI2から回路L,AI乃至L,FI
の各々へrQ出力ポィンタ」信号AQBが与えられ、こ
れにより実行さるべき次の命令の待ち行列位置を指示す
る。
この信号A5Bの値は比較器L7においてステータス・
ラッチL14中の「Q−m」と比較され、そして両者が
一致するとき、すなわちこの待ち行列位置が同じ命令に
対するものであるとき、比較器L7から一致出力L7が
生ぜられる。第21A図から加わる「AOP−Aソース
・ステータス」信号K3は、AOP−Aがソース取出の
ために使用されており且つそれがチェーン中の最初のも
のであるような状況を識別する。もし「比較一致一宿号
L7が存在すると同時にこの信号M3がオンであれば、
トリガL15がオンとなり、かくて次のOP分岐取得時
にAOP−Aからのデー夕がEFAI5によって必要と
されることを指示する。比較器L7及びトリガL15の
出力は回路L(AI)の出力を与え、回路L(A2)の
入力へ接続される。
ラッチL14中の「Q−m」と比較され、そして両者が
一致するとき、すなわちこの待ち行列位置が同じ命令に
対するものであるとき、比較器L7から一致出力L7が
生ぜられる。第21A図から加わる「AOP−Aソース
・ステータス」信号K3は、AOP−Aがソース取出の
ために使用されており且つそれがチェーン中の最初のも
のであるような状況を識別する。もし「比較一致一宿号
L7が存在すると同時にこの信号M3がオンであれば、
トリガL15がオンとなり、かくて次のOP分岐取得時
にAOP−Aからのデー夕がEFAI5によって必要と
されることを指示する。比較器L7及びトリガL15の
出力は回路L(AI)の出力を与え、回路L(A2)の
入力へ接続される。
回路L(A2)は回路L(B2)乃至L(F2)の各々
と同じであり、後者の回路は回路L(BI)乃至L(F
I)の出力へそれぞれ接続される。以下では回路L(A
2)が他の回路L(B2)乃至L(F2)を代表するも
のとして詳述される。トリガL15が回路L(A2)へ
信号を供総合する場合、そのフアネル回路L16が作動
されて出力LIを発生し、ラツチL17及びトリガL1
8をオンに転ずる。
と同じであり、後者の回路は回路L(BI)乃至L(F
I)の出力へそれぞれ接続される。以下では回路L(A
2)が他の回路L(B2)乃至L(F2)を代表するも
のとして詳述される。トリガL15が回路L(A2)へ
信号を供総合する場合、そのフアネル回路L16が作動
されて出力LIを発生し、ラツチL17及びトリガL1
8をオンに転ずる。
もしAOP−Aでデータを利用することができなければ
、「Eクロック停止」信号S2が供V給される。Eクロ
ツクが停止される限り、この信号S2はオンとなり、フ
アネル回路L16を通してラッチLIT及びトリガL1
8をオンに維持する。この状況にあるラッチL17及び
トリガL18は、AOP−A中のデータが現サイクルの
間にEFAI5によって必要とされること、そしてオペ
ランド取出ブロックA9がPSCFA13からのこのデ
ータを依然として待機している場合にはEクロックが停
止されねばならないことを指示する。また、「ソースI
D」信号GIがソース入力ゲートを受取るべき次のAO
PとしてAOP−Aを指定している間に、EF A15
からの「Aレジスタへの主記憶オペランド」信号A6A
が生じてEFAI5がそのAレジスタのためにソース・
データのダブルワードを必要としていることを指示する
場合には、ラツチL17がオンに転じられる。このラツ
チL17は、行先データについて同様の「Bレジスタへ
の主記憶オペランド」信号A6B及び「行先ID」信号
G2が存在する場合にも、オンに転じられる。第21A
図及び第218図の諸回路は、特定のAOPがソース又
は行先AOPのチェーンにおける最初のものか否かを記
憶する。
、「Eクロック停止」信号S2が供V給される。Eクロ
ツクが停止される限り、この信号S2はオンとなり、フ
アネル回路L16を通してラッチLIT及びトリガL1
8をオンに維持する。この状況にあるラッチL17及び
トリガL18は、AOP−A中のデータが現サイクルの
間にEFAI5によって必要とされること、そしてオペ
ランド取出ブロックA9がPSCFA13からのこのデ
ータを依然として待機している場合にはEクロックが停
止されねばならないことを指示する。また、「ソースI
D」信号GIがソース入力ゲートを受取るべき次のAO
PとしてAOP−Aを指定している間に、EF A15
からの「Aレジスタへの主記憶オペランド」信号A6A
が生じてEFAI5がそのAレジスタのためにソース・
データのダブルワードを必要としていることを指示する
場合には、ラツチL17がオンに転じられる。このラツ
チL17は、行先データについて同様の「Bレジスタへ
の主記憶オペランド」信号A6B及び「行先ID」信号
G2が存在する場合にも、オンに転じられる。第21A
図及び第218図の諸回路は、特定のAOPがソース又
は行先AOPのチェーンにおける最初のものか否かを記
憶する。
もしAOP−Aが開始されるサイクル中に「ソース取出
」信号B7及び「第1取出」信号B4がともにオンであ
れば、ステータス・ラツチM9(A)がセットされる。
ラツチM9(A)は、AOP−Aがソース取出のために
使用されており且つそれがチェーンにおける最初のAO
Pであることを指示する。M9(A)がリセツトされる
のは、AOP−Aが「AOP−Aリセット」信号KIに
よってリセットされる場合である。AOP一Aが実行さ
れるべき次の命令と関連することを「比較一致」信号L
7が指示する場合、AND回路MI1(A)から出力が
発生され、これに応じて復号器M12からしジスタM1
3へAOP−AのIDが供給される。レジスタM13は
「次のソースm」信号MIを供給し〜これにより実行さ
るべき次の命令に対するソース取出の第1ダブルワード
に関連するAOPを指示する。他の5個のAOPについ
ても対応するラツチM9(B)乃至M9(F)が設けら
れ、対応するAOPが第1ソースAOP、すなわち、ソ
ース取出の第1ダブルワードに関連するAOPであるか
否かを記憶する。
」信号B7及び「第1取出」信号B4がともにオンであ
れば、ステータス・ラツチM9(A)がセットされる。
ラツチM9(A)は、AOP−Aがソース取出のために
使用されており且つそれがチェーンにおける最初のAO
Pであることを指示する。M9(A)がリセツトされる
のは、AOP−Aが「AOP−Aリセット」信号KIに
よってリセットされる場合である。AOP一Aが実行さ
れるべき次の命令と関連することを「比較一致」信号L
7が指示する場合、AND回路MI1(A)から出力が
発生され、これに応じて復号器M12からしジスタM1
3へAOP−AのIDが供給される。レジスタM13は
「次のソースm」信号MIを供給し〜これにより実行さ
るべき次の命令に対するソース取出の第1ダブルワード
に関連するAOPを指示する。他の5個のAOPについ
ても対応するラツチM9(B)乃至M9(F)が設けら
れ、対応するAOPが第1ソースAOP、すなわち、ソ
ース取出の第1ダブルワードに関連するAOPであるか
否かを記憶する。
また、AOPのそれぞれに対応する6個のラッチMI0
(A)乃至MI0(F)が設けられ、対応するAOPが
第1行先AOP、すなわち行先取出の第1ダブルワード
に関連するAOPであるか否かを記憶する。任意の命令
については、第1ソースAOPと第1行先AOPが高々
1個ずつ存在しうるが、もし両者ともに存在するならば
、それらのAOPは互いに別個のものでなければならな
い。第22A図及び第22B図の諸回路は、各AOPの
ステータス、すなわち各AOPがソース又は行先取出の
どちらに関連するかを記憶する。
(A)乃至MI0(F)が設けられ、対応するAOPが
第1行先AOP、すなわち行先取出の第1ダブルワード
に関連するAOPであるか否かを記憶する。任意の命令
については、第1ソースAOPと第1行先AOPが高々
1個ずつ存在しうるが、もし両者ともに存在するならば
、それらのAOPは互いに別個のものでなければならな
い。第22A図及び第22B図の諸回路は、各AOPの
ステータス、すなわち各AOPがソース又は行先取出の
どちらに関連するかを記憶する。
ラッチN6(A)は、AOP一Aが行先取出のために割
当てられているか杏かを記録する。ラツチN6(A)は
、「AOP−A開始」信号CIが受取られるときに「行
先取出」信号B6がオンを指示するならば、オンに転じ
られる。またラッチN6(A)は、「AOP−Aリセッ
ト」信号KIが受取られるとき、リセットされる。この
ほかに5個のラツチN6(B)乃至N6(F)があるが
、これらは他の5個のAOPについてラツチN6(A)
と同じ様式で機能する。回路N7は行先トリガN6(A
)乃至N6(F)の状態を調べて2つの出力信号NI及
びN2を発生する。
当てられているか杏かを記録する。ラツチN6(A)は
、「AOP−A開始」信号CIが受取られるときに「行
先取出」信号B6がオンを指示するならば、オンに転じ
られる。またラッチN6(A)は、「AOP−Aリセッ
ト」信号KIが受取られるとき、リセットされる。この
ほかに5個のラツチN6(B)乃至N6(F)があるが
、これらは他の5個のAOPについてラツチN6(A)
と同じ様式で機能する。回路N7は行先トリガN6(A
)乃至N6(F)の状態を調べて2つの出力信号NI及
びN2を発生する。
信号NIは3個以上のAOPが所与の行先オペランドに
割当てられることを指示するのに対し、信号N2は2個
以上のAOPが所与の行先オペランドに割当てられるこ
とを指示する。前記と同様の1組のラッチN8(A)乃
至N8(F)はソース取出のために割当てられるAOP
を記憶し、回路N7と同様の回路N9へ出力を与える。
割当てられることを指示するのに対し、信号N2は2個
以上のAOPが所与の行先オペランドに割当てられるこ
とを指示する。前記と同様の1組のラッチN8(A)乃
至N8(F)はソース取出のために割当てられるAOP
を記憶し、回路N7と同様の回路N9へ出力を与える。
回路N9の出力N4は3個以上のAOPが所与のソース
・オペランドへ割当てられることを指示し、他の出力N
5は2個以上のAOPが所与のソース・オペランドへ割
当てられることを指示する。第23A図及び第238図
の機構は、所与のオペランドを取出すために複数のAO
Pが使用されねばならないとき、これらのAOPがどの
ようにチェ−ンされるかを記憶する。
・オペランドへ割当てられることを指示し、他の出力N
5は2個以上のAOPが所与のソース・オペランドへ割
当てられることを指示する。第23A図及び第238図
の機構は、所与のオペランドを取出すために複数のAO
Pが使用されねばならないとき、これらのAOPがどの
ようにチェ−ンされるかを記憶する。
AOP−A先行mラツチP4は3ビットのラツチであっ
て、AOP一Aに先行するチェーン中の任意のAOPの
ID、すなわち「行先ID」を記憶する。AOP一Aが
使用中でない場合、又はチェーン中でAOP一Aだけが
使用中である場合、AOP−Aに先行するAOPが存在
しないことを指示するたにこのラッチP4中のID値は
零へセットされる。もしAOP−Aが使用中であって、
チェーンの1部を構成するが該チェーンの最初のAOP
でなければ、ラッチP4はAOP−Aに先行する(チェ
ーン中の)AOPのIDを保持する。ラッチP4は、r
AOP−A開始」信号CIが受取られる時間に、セット
される。ラツチP4へセットされる「先行m」は、第1
5図の線G8から到来する。この線G8は、ソース又は
行先オペランドのどちらが取出されるかに依存して、r
先行ソースID」又は「先行行先m」を有する。このm
は、AOP−Aの前に最後に開始されたチェーン中のA
OPを識別する。他の5個のAOPについても、これと
同様の先行mラッチP5乃至P9が設けられる。かくて
、AOPの各々は、存在しうるチェーンで当該AOPに
先行するAOPを知ることができる。云いかえれば、チ
ェーンにおける上位AOPから下位AOPへのバックポ
ィンタによってチェーニングが達成される。オペランド
取出ブロックA9では、或る場合には所与のAOPに先
行するAOPを知る必要があり、また他の場合にはチェ
ーン中の後続AOFを知る必要がある。これらの先行A
OP及び後続AOPは、ラッチP4乃至P9の「先行I
D」を調べることによって決定することができる。チェ
ーン中の後続AOPは「先行m」をラッチP4乃至P9
の内容と比較することによって識別することができ、そ
してもし或るラッチの内容が一致すれば、該ラッチによ
って表わされるAOPがチェーン中の次のAOPになる
。ここで、或るチェーンからのダブルワードが任意のA
OPからEFAI6中のA又はBレジスタへ現に出力ゲ
ートされているような状況を考察する。
て、AOP一Aに先行するチェーン中の任意のAOPの
ID、すなわち「行先ID」を記憶する。AOP一Aが
使用中でない場合、又はチェーン中でAOP一Aだけが
使用中である場合、AOP−Aに先行するAOPが存在
しないことを指示するたにこのラッチP4中のID値は
零へセットされる。もしAOP−Aが使用中であって、
チェーンの1部を構成するが該チェーンの最初のAOP
でなければ、ラッチP4はAOP−Aに先行する(チェ
ーン中の)AOPのIDを保持する。ラッチP4は、r
AOP−A開始」信号CIが受取られる時間に、セット
される。ラツチP4へセットされる「先行m」は、第1
5図の線G8から到来する。この線G8は、ソース又は
行先オペランドのどちらが取出されるかに依存して、r
先行ソースID」又は「先行行先m」を有する。このm
は、AOP−Aの前に最後に開始されたチェーン中のA
OPを識別する。他の5個のAOPについても、これと
同様の先行mラッチP5乃至P9が設けられる。かくて
、AOPの各々は、存在しうるチェーンで当該AOPに
先行するAOPを知ることができる。云いかえれば、チ
ェーンにおける上位AOPから下位AOPへのバックポ
ィンタによってチェーニングが達成される。オペランド
取出ブロックA9では、或る場合には所与のAOPに先
行するAOPを知る必要があり、また他の場合にはチェ
ーン中の後続AOFを知る必要がある。これらの先行A
OP及び後続AOPは、ラッチP4乃至P9の「先行I
D」を調べることによって決定することができる。チェ
ーン中の後続AOPは「先行m」をラッチP4乃至P9
の内容と比較することによって識別することができ、そ
してもし或るラッチの内容が一致すれば、該ラッチによ
って表わされるAOPがチェーン中の次のAOPになる
。ここで、或るチェーンからのダブルワードが任意のA
OPからEFAI6中のA又はBレジスタへ現に出力ゲ
ートされているような状況を考察する。
この状況が生ずると、第14図のソースmトリガGI6
又は行先IDトリガGIOを更新するために、現に出力
ゲートされたAOPに後続するチェーン中のAOPを決
定することが必要である。これは6個の比較器P10乃
至P15のうち1つの出力によって達成され、該比較器
は線G3上の先行mによって識別されるAOPの後続A
OPを識別する。比較器PIO乃至P15の出力は、後
続AOPのmを3ビット信号へ符号化するために、符号
器PIへ入力される。詳述すれば、A又はBレジスタへ
現に出力ゲートされているAOPのIDは第14図の出
力ゲート制御ラッチGI2に保持され、該ラッチはこの
mを線G3に供給して対応する出力ゲートを制御する。
又は行先IDトリガGIOを更新するために、現に出力
ゲートされたAOPに後続するチェーン中のAOPを決
定することが必要である。これは6個の比較器P10乃
至P15のうち1つの出力によって達成され、該比較器
は線G3上の先行mによって識別されるAOPの後続A
OPを識別する。比較器PIO乃至P15の出力は、後
続AOPのmを3ビット信号へ符号化するために、符号
器PIへ入力される。詳述すれば、A又はBレジスタへ
現に出力ゲートされているAOPのIDは第14図の出
力ゲート制御ラッチGI2に保持され、該ラッチはこの
mを線G3に供給して対応する出力ゲートを制御する。
このIDは、比較器PIO乃至P15の各々において、
ラッチP4乃至P9の先行IDの各々と比較される。も
しチェーン中でこれに後続するAOPがあれば、完全な
一致を生ぜしめる先行IDラッチの指定は現に出力ゲー
トされているAOPを指定する。因に、このAOPは出
力を生ずる特定の比較器によって識別される。たとえば
、AOP−Bが現に出力ゲートされており、そしてチェ
ーン中の次のAOPがAOP一Bであると仮定する。
ラッチP4乃至P9の先行IDの各々と比較される。も
しチェーン中でこれに後続するAOPがあれば、完全な
一致を生ぜしめる先行IDラッチの指定は現に出力ゲー
トされているAOPを指定する。因に、このAOPは出
力を生ずる特定の比較器によって識別される。たとえば
、AOP−Bが現に出力ゲートされており、そしてチェ
ーン中の次のAOPがAOP一Bであると仮定する。
この場合、AOP−Eの先行mラッチP8は011を保
持し、これによりチェーン中の先行AOPがAOP一B
であることを指示する。仮定によりAOP一Bが出力ゲ
ートされているから、そのmである011が線G3に現
われて比較器P14から出力を生ぜしめる。この出力は
符号器PIの入力へ接続され、該符号器はAOP−Eの
mである110を出力してこれが次のAOPであること
を指示する。かくて、AOP−Eがチェーン中の次のA
OPであることが決定された。その後、出力PIは第1
4図のソースIDトリガGI6又は先行IDトリガGI
0へ帰還される。今やAOP一BのデータがEF A1
5へ入力ゲートされたから、AOP−Bはもはや必要
ではなく、従ってこの入力ゲートの完了時にリセットさ
れる。この段階ではAOP−Eが残りのチェーンにおけ
る最初のAOPとなり、これに先行する他のAOPは存
在しないので、AOP−Eの先行mラッチP8を零へリ
セットすることが必要になる。これはAND回路P1
6Eを介して行われ、該回路は、比較器P14からの比
較一致信号、「EFへの入力ゲート」信号G25及び「
Eクロック停止」信号S2に応答してその出力を発生す
る。この出力は、トリガ及びOR回略を介して、ラツチ
P8へまを入力ゲートさせる。このラッチP8は、「A
OP一Eリセット」信号K5が受取られるときはいつで
もリセツトされる。AOPの各々についてこれと同様の
回路が設けられることはもちろんである。後続AOPを
見出すことが必要となる他の状況は、MCF AI3が
複数のダブルワードをIPPFA7へ復帰させており且
つそれらのダブルワードが割当て済みの複数のOPを充
満させうるような場合である。
持し、これによりチェーン中の先行AOPがAOP一B
であることを指示する。仮定によりAOP一Bが出力ゲ
ートされているから、そのmである011が線G3に現
われて比較器P14から出力を生ぜしめる。この出力は
符号器PIの入力へ接続され、該符号器はAOP−Eの
mである110を出力してこれが次のAOPであること
を指示する。かくて、AOP−Eがチェーン中の次のA
OPであることが決定された。その後、出力PIは第1
4図のソースIDトリガGI6又は先行IDトリガGI
0へ帰還される。今やAOP一BのデータがEF A1
5へ入力ゲートされたから、AOP−Bはもはや必要
ではなく、従ってこの入力ゲートの完了時にリセットさ
れる。この段階ではAOP−Eが残りのチェーンにおけ
る最初のAOPとなり、これに先行する他のAOPは存
在しないので、AOP−Eの先行mラッチP8を零へリ
セットすることが必要になる。これはAND回路P1
6Eを介して行われ、該回路は、比較器P14からの比
較一致信号、「EFへの入力ゲート」信号G25及び「
Eクロック停止」信号S2に応答してその出力を発生す
る。この出力は、トリガ及びOR回略を介して、ラツチ
P8へまを入力ゲートさせる。このラッチP8は、「A
OP一Eリセット」信号K5が受取られるときはいつで
もリセツトされる。AOPの各々についてこれと同様の
回路が設けられることはもちろんである。後続AOPを
見出すことが必要となる他の状況は、MCF AI3が
複数のダブルワードをIPPFA7へ復帰させており且
つそれらのダブルワードが割当て済みの複数のOPを充
満させうるような場合である。
この場合、各ダブルワードが適当なAOPによって受取
られる都度、チェーン中の次のAOPを見出してそのA
OPへ次のダブルワードを置くようにすることが必要で
ある。これは、第308図からの「前進ID」信号U3
を受取り且つチェ−ン中の次のAOPのID、すなわち
「次のm」を出力する如き比較器P17乃至P22並び
に符号器P2によって達成される。また、所与のAOP
のIDを与えられたとき、その先行AOPを見出すこと
がしばしば必要となる。
られる都度、チェーン中の次のAOPを見出してそのA
OPへ次のダブルワードを置くようにすることが必要で
ある。これは、第308図からの「前進ID」信号U3
を受取り且つチェ−ン中の次のAOPのID、すなわち
「次のm」を出力する如き比較器P17乃至P22並び
に符号器P2によって達成される。また、所与のAOP
のIDを与えられたとき、その先行AOPを見出すこと
がしばしば必要となる。
この操作が必要となるのは、PSCF AI3からデー
タが復帰しつつあり、しかも零を除くシフト量によって
位置合せが遂行されているような場合である。この状況
では、BDBO上にあるダブルワードの左端からシフト
・オフされ且つその右端へ戻される諸バイトは、前記し
た如き様式で、先行するOPへ入力ゲートされる。この
ことを達成するために、「CIm」信号T3が復号器P
23に与えられ、該復号器はこのダブルワードが関連す
るAOPについて出力を供給し、かくてこのAOPに関
連する「先行ID」をOR回路P24へゲートしてその
出力P3を生ぜしめる。この世力P3は「CIID」信
号T3によって識別されるAOPに先行するAOPのm
であり、前記バイトが入力ゲートさるべきAOPを識別
する。第24A図及び第24B図の諸回路は、鴇CFA
13から各ダブルワードが受取られるときそのシフト量
を記憶するとともに、諸AOPのOPへの入力ゲートを
制御する。
タが復帰しつつあり、しかも零を除くシフト量によって
位置合せが遂行されているような場合である。この状況
では、BDBO上にあるダブルワードの左端からシフト
・オフされ且つその右端へ戻される諸バイトは、前記し
た如き様式で、先行するOPへ入力ゲートされる。この
ことを達成するために、「CIm」信号T3が復号器P
23に与えられ、該復号器はこのダブルワードが関連す
るAOPについて出力を供給し、かくてこのAOPに関
連する「先行ID」をOR回路P24へゲートしてその
出力P3を生ぜしめる。この世力P3は「CIID」信
号T3によって識別されるAOPに先行するAOPのm
であり、前記バイトが入力ゲートさるべきAOPを識別
する。第24A図及び第24B図の諸回路は、鴇CFA
13から各ダブルワードが受取られるときそのシフト量
を記憶するとともに、諸AOPのOPへの入力ゲートを
制御する。
それぞれのAOPに対応して3ビットの容量を有するシ
フト量ラッチQI0乃至Q15が設けられる。AOP−
Aに関連するシフト量ラッチQI川ま、「AOP−A開
始」信号CIが生ずるとき「シフト量」信号B13をセ
ットされ、よって敬出のために必要なシフト塁を指示す
る。他のシフト量ラツチQII乃至Q15もこれと同様
の様式で動作し、関連するAOPがリセットされるまで
そのシフト量をそれぞれ保持する。特定のAOPに対す
るCIサイクルに到達する場合、「CIm」信号T3は
復号器Q16へ供給され、該復号器から選択されたAO
Pに対する出力を生ぜしめる。これに応じて該AOPの
シフト量がOR回路Q17へ供給され、かくて該回路の
出力がBDBOシフト・レジスタQ18へ供給される。
このようにして、選択されたAOPのC2サイクルの間
に該AOPに関連するシフト量がBDBOシフト−レジ
スタQ18に現われ、線Q9を介してPSCF A13
へ供給され、そこで遂行されるシフト動作の量を制御す
る。PSCFA13で行われるシフト動作は、ダブルワ
ードを左シフトするとともに、その左端からシフト。オ
フされた任意のバイトをその右端に再挿入するようなも
のである。第24A図及び第24B図にある残りの諸回
路は、このシフトされたデータを選択されたAOPのO
Pへ入力ゲートすることを制御する。
フト量ラッチQI0乃至Q15が設けられる。AOP−
Aに関連するシフト量ラッチQI川ま、「AOP−A開
始」信号CIが生ずるとき「シフト量」信号B13をセ
ットされ、よって敬出のために必要なシフト塁を指示す
る。他のシフト量ラツチQII乃至Q15もこれと同様
の様式で動作し、関連するAOPがリセットされるまで
そのシフト量をそれぞれ保持する。特定のAOPに対す
るCIサイクルに到達する場合、「CIm」信号T3は
復号器Q16へ供給され、該復号器から選択されたAO
Pに対する出力を生ぜしめる。これに応じて該AOPの
シフト量がOR回路Q17へ供給され、かくて該回路の
出力がBDBOシフト・レジスタQ18へ供給される。
このようにして、選択されたAOPのC2サイクルの間
に該AOPに関連するシフト量がBDBOシフト−レジ
スタQ18に現われ、線Q9を介してPSCF A13
へ供給され、そこで遂行されるシフト動作の量を制御す
る。PSCFA13で行われるシフト動作は、ダブルワ
ードを左シフトするとともに、その左端からシフト。オ
フされた任意のバイトをその右端に再挿入するようなも
のである。第24A図及び第24B図にある残りの諸回
路は、このシフトされたデータを選択されたAOPのO
Pへ入力ゲートすることを制御する。
この目的は、左シフトされたけれども左端からシフト・
オフされなかったバイトを当該取出を要求したAOPの
OPへ入力ゲートするとともに、左端からシフト・オフ
され且つ右端へ循環されたバイトを先行AOPのOPへ
入力ゲートすることである。諸AOPへの入力ゲートを
遂行するために、第24B図の入力、ゲート・レジスタ
QI乃至Q8からこれらのAOPへ、それぞれ3ビット
の長さを有する8個のIDが送られる。これらIDの各
々は、選択されたOP中にある1バイト位置への入力ゲ
ートを制御する。もし特定サイクルの間にこのmの値が
霧であれば、これは入力ゲートが生じないことを指示す
る。もしIDの値が2乃至7であれば、これは当該バイ
トの入力ゲートカミOP−A乃至OP−Fでそれぞれ遂
行さるべきことを指示する。BDBOのバイト0に与え
られるデータは常に当該取出を遂行したAOPのOPへ
入力ゲートされるので、「CIID」信号T3はその値
を直接に入力ゲート・レジスタQIへ供V給するにすぎ
ない。他のバイトについては、入力ゲートはこのAOP
を対象として、又は先行AOPを対象として行われる。
かくて、他のバイトの各々については、入力ゲート・レ
ジスタQ2乃至Q8は、この時間に先行IDラッチから
出力ゲートされている「CIIO」信号T3又は「先行
ID」信号P3の一方を供給されうる。これら2個のm
のうちどちらのIDがゲートされるかは、7個の信号Q
I9乃至Q25によって制御される。これらの信号はO
R回路Q17のシフト量出力から復号され、どのmがバ
イト1乃至7のゲートを制御すべきかをそれぞれ指示す
る。これらの信号の各々は関連するAOPへバイトが入
力ゲートさるべき場合にオンとなり、先行AOPへこの
バイトが入力ゲートさるべき場合にオフとなる。もし先
行AOPが存在しなければ、これは奪検出器Q26によ
って認識され、該検出器はシフト量の復号を無効にして
すべてのバイトを関連するAOPへ入力ゲートさせる。
第25A図及び第25B図はそれぞれのAOPに設けら
れる6個のOPを示す。
オフされなかったバイトを当該取出を要求したAOPの
OPへ入力ゲートするとともに、左端からシフト・オフ
され且つ右端へ循環されたバイトを先行AOPのOPへ
入力ゲートすることである。諸AOPへの入力ゲートを
遂行するために、第24B図の入力、ゲート・レジスタ
QI乃至Q8からこれらのAOPへ、それぞれ3ビット
の長さを有する8個のIDが送られる。これらIDの各
々は、選択されたOP中にある1バイト位置への入力ゲ
ートを制御する。もし特定サイクルの間にこのmの値が
霧であれば、これは入力ゲートが生じないことを指示す
る。もしIDの値が2乃至7であれば、これは当該バイ
トの入力ゲートカミOP−A乃至OP−Fでそれぞれ遂
行さるべきことを指示する。BDBOのバイト0に与え
られるデータは常に当該取出を遂行したAOPのOPへ
入力ゲートされるので、「CIID」信号T3はその値
を直接に入力ゲート・レジスタQIへ供V給するにすぎ
ない。他のバイトについては、入力ゲートはこのAOP
を対象として、又は先行AOPを対象として行われる。
かくて、他のバイトの各々については、入力ゲート・レ
ジスタQ2乃至Q8は、この時間に先行IDラッチから
出力ゲートされている「CIIO」信号T3又は「先行
ID」信号P3の一方を供給されうる。これら2個のm
のうちどちらのIDがゲートされるかは、7個の信号Q
I9乃至Q25によって制御される。これらの信号はO
R回路Q17のシフト量出力から復号され、どのmがバ
イト1乃至7のゲートを制御すべきかをそれぞれ指示す
る。これらの信号の各々は関連するAOPへバイトが入
力ゲートさるべき場合にオンとなり、先行AOPへこの
バイトが入力ゲートさるべき場合にオフとなる。もし先
行AOPが存在しなければ、これは奪検出器Q26によ
って認識され、該検出器はシフト量の復号を無効にして
すべてのバイトを関連するAOPへ入力ゲートさせる。
第25A図及び第25B図はそれぞれのAOPに設けら
れる6個のOPを示す。
各OPへの入力ゲートはバイト単位で制御されるので、
各OPの各バイトは個別に表わされている。第258図
のAレジスタR2及びBレジスタR3は、実際にはEF
A15の一部である。BDBOバスA2Fは、1ダブル
ワードを構成する8個の個別的なバイトへ分けて示され
ている。第1バイトRIOはOP−A乃至OP−Fの第
1バイトに相当するラッチR4乃至R9へそれぞれ供給
される。これらのバイトへの入力ゲートは復号器R30
の出力によって制御され、該復号器は線QIにIDを供
給しているOPの1つに対する信号を上昇させる。他の
OPの各バイトは、それ自体の復号器R31乃至R37
と前記した入力ゲート信号によって制御される。諸PP
からAレジスタR2及びBレジスタR3への出力ゲート
は、復号器R37の出力によって制御される。復号器R
37に加わる「現に出力ゲートされるAOPのID」信
号G3は出力ゲートさるべきOPを識別する3ビットの
mであり、復号器R37の出力に適当な出力ゲート信号
を生ぜしめる。次いで、この世力によって当該OPのす
べてのバイトがゲートされ、そして該バイトはOR回路
R1 3乃至R20及びバスRIを介してA及びBレジ
スタへそれぞれ供給される。A及びBレジスタへの入力
ゲートは、既に説明したrAレジスタへの入力ゲート」
信号GI7及び「8レジスタへの入力ゲート」信号GI
8によって制御される。第26A図及び第268図の諸
回路は、鷲CFA13からのデータを待機しているAO
Pを記憶する。
各OPの各バイトは個別に表わされている。第258図
のAレジスタR2及びBレジスタR3は、実際にはEF
A15の一部である。BDBOバスA2Fは、1ダブル
ワードを構成する8個の個別的なバイトへ分けて示され
ている。第1バイトRIOはOP−A乃至OP−Fの第
1バイトに相当するラッチR4乃至R9へそれぞれ供給
される。これらのバイトへの入力ゲートは復号器R30
の出力によって制御され、該復号器は線QIにIDを供
給しているOPの1つに対する信号を上昇させる。他の
OPの各バイトは、それ自体の復号器R31乃至R37
と前記した入力ゲート信号によって制御される。諸PP
からAレジスタR2及びBレジスタR3への出力ゲート
は、復号器R37の出力によって制御される。復号器R
37に加わる「現に出力ゲートされるAOPのID」信
号G3は出力ゲートさるべきOPを識別する3ビットの
mであり、復号器R37の出力に適当な出力ゲート信号
を生ぜしめる。次いで、この世力によって当該OPのす
べてのバイトがゲートされ、そして該バイトはOR回路
R1 3乃至R20及びバスRIを介してA及びBレジ
スタへそれぞれ供給される。A及びBレジスタへの入力
ゲートは、既に説明したrAレジスタへの入力ゲート」
信号GI7及び「8レジスタへの入力ゲート」信号GI
8によって制御される。第26A図及び第268図の諸
回路は、鷲CFA13からのデータを待機しているAO
Pを記憶する。
AOP−AがPSCF A1 3からデータを受取るこ
とを待機している場合、AOP−A待機中ラッチS3及
びトリガS4はオンである。これらは「AOP−A開始
」信号CIによってオンに転じられ、そして「AOP−
Aリセット」信号KIが受取られるか又はデータを受取
ったという適当な指示が与えられるまで、オンに留まる
。最も簡単な状況では第29図から加わる信号T5がオ
フであり、そしてこのような状況でトリガS4がリセッ
トされるのは、「C21D」信号T4がAOP−Aを指
定して信号S5をオフに移行させ、しかも信号S6がオ
フでC2サイクル中に「取出遅延」信号A2D、「遅延
取出拒否」信号A2C及び「順序付け拒否」信号K7の
いずれも存在しなかったことを指示する場合である。A
OP−Aがソース取出に関係する場合は、信号T5は常
にオンである。このソース取出は複数のダブルワードを
含み、このAOPがチェーンにおける最後のAOPでな
ければ零を除くシフトを含む。この状況では、OP一A
へゲートされねばならない或るデータはチェーン中の次
のAOPがそのデータを受取るときに供孫台され、かく
てこのデータがゲートされるまでEFAI5はOP−A
を使用することができない。従って、この状況では、次
のAOPがそのデータを受取るまで、AOP−A待機中
ラツチS3をオフに転ずることは必要ない。次のAOP
がそのデータを受取る際、このAOPに先行するAOP
一AのIDが線P3に供給されて信号S7をオフに転じ
させるとともに、信号T5の存在を条件としてAOP−
A待機中トリガS4をオフに転じさせる。AOP一B乃
至AOP−Fについても、これと同様の論理が設けられ
る。回路S8は、Eクロックを停止することが必要な時
機を決定する。
とを待機している場合、AOP−A待機中ラッチS3及
びトリガS4はオンである。これらは「AOP−A開始
」信号CIによってオンに転じられ、そして「AOP−
Aリセット」信号KIが受取られるか又はデータを受取
ったという適当な指示が与えられるまで、オンに留まる
。最も簡単な状況では第29図から加わる信号T5がオ
フであり、そしてこのような状況でトリガS4がリセッ
トされるのは、「C21D」信号T4がAOP−Aを指
定して信号S5をオフに移行させ、しかも信号S6がオ
フでC2サイクル中に「取出遅延」信号A2D、「遅延
取出拒否」信号A2C及び「順序付け拒否」信号K7の
いずれも存在しなかったことを指示する場合である。A
OP−Aがソース取出に関係する場合は、信号T5は常
にオンである。このソース取出は複数のダブルワードを
含み、このAOPがチェーンにおける最後のAOPでな
ければ零を除くシフトを含む。この状況では、OP一A
へゲートされねばならない或るデータはチェーン中の次
のAOPがそのデータを受取るときに供孫台され、かく
てこのデータがゲートされるまでEFAI5はOP−A
を使用することができない。従って、この状況では、次
のAOPがそのデータを受取るまで、AOP−A待機中
ラツチS3をオフに転ずることは必要ない。次のAOP
がそのデータを受取る際、このAOPに先行するAOP
一AのIDが線P3に供給されて信号S7をオフに転じ
させるとともに、信号T5の存在を条件としてAOP−
A待機中トリガS4をオフに転じさせる。AOP一B乃
至AOP−Fについても、これと同様の論理が設けられ
る。回路S8は、Eクロックを停止することが必要な時
機を決定する。
もし信号LIがオンでOP−AからのデータをEFAI
5が現に必要としていることを指示し、そして信号S9
がオンでオペランド敬出ブロックA9が依然として俺C
F AI3からのデータを待機していることを指示する
ならば、これに応じてEクロックが停止される。この状
態は、PSCFAI3からデータが受取られるまで、す
べてのサイクルにわたって持続する。Eクロツクは、信
号LIがオンで且つ信号TIIがオンである場合にも、
停止される。但し、信号LIはEFAI5によってデー
タが必要とされていることを指示し、信号T1 1はA
OP−Aがソース又は行先チェーンで最後に開始された
AOPであること及びこのチェーンには現に遂行されて
いる取出が存在しないことを指示する。諸AOPはこの
取出に応じたデータを必ずしも待機していないけれども
、もしEFAI5が進行することを許容され且つこのデ
ータを入力ゲートすることを許容されたならば、これに
よってAOP−Aがリセットされ、かくてAOP−A中
のアドレスが失われることになろう。それゆえ、ソース
又は行先論理がチェーン中の次のAOPを開始する準備
を完了したとしても、このアドレスはそのために利用す
ることができなくなる。従って、このアドレスを保存す
るために、この状況でもEクロックが停止される。他の
5個のAOPに対する同様の状態も、Bクロックを停止
させる。第27図の諸回路は、PSCFAI3からデー
タが復帰される時機を記憶する。
5が現に必要としていることを指示し、そして信号S9
がオンでオペランド敬出ブロックA9が依然として俺C
F AI3からのデータを待機していることを指示する
ならば、これに応じてEクロックが停止される。この状
態は、PSCFAI3からデータが受取られるまで、す
べてのサイクルにわたって持続する。Eクロツクは、信
号LIがオンで且つ信号TIIがオンである場合にも、
停止される。但し、信号LIはEFAI5によってデー
タが必要とされていることを指示し、信号T1 1はA
OP−Aがソース又は行先チェーンで最後に開始された
AOPであること及びこのチェーンには現に遂行されて
いる取出が存在しないことを指示する。諸AOPはこの
取出に応じたデータを必ずしも待機していないけれども
、もしEFAI5が進行することを許容され且つこのデ
ータを入力ゲートすることを許容されたならば、これに
よってAOP−Aがリセットされ、かくてAOP−A中
のアドレスが失われることになろう。それゆえ、ソース
又は行先論理がチェーン中の次のAOPを開始する準備
を完了したとしても、このアドレスはそのために利用す
ることができなくなる。従って、このアドレスを保存す
るために、この状況でもEクロックが停止される。他の
5個のAOPに対する同様の状態も、Bクロックを停止
させる。第27図の諸回路は、PSCFAI3からデー
タが復帰される時機を記憶する。
新しいAOPが開始される場合、「AOP開始」信号B
3は開始されている次のAOPのIDを線CI 9から
C1 mトリガT21へゲートさせる。このトリガ中の
非零IDは、所与のAOPが丁度開始さたばかりである
こと並びに俺CF A13がこのAOPの取出を処理す
るCIサイクル(第1キャッシュ・サイクル)にあるこ
とを指示する。通常の場合、このmはCImラッチT2
2へ供給され、後続サイクル中にそこからさらにC21
DトリガT23へ供給される。もし特定のIDがこのト
リガT2にある間に、「取出遅延」信号A2D、「取世
拒否J信号A2C又は「順序付け拒否」信号K7が存在
すれば、これは当該取出の処理を指示し、かくて当該A
OPの制御はこの取出を処理するべく適当なアクション
を取らなければならない。もしこれらの信号のどれもが
受取られなければ、これは取出されたデータがこのサイ
クルのラツチ時間にBOB○で利用できることを指示す
る。再取出を拒否された取出の時間が到来する場合、こ
の取出に関連するAOPの「再取出」信号が線JI乃至
J6のいずれかに現われる。
3は開始されている次のAOPのIDを線CI 9から
C1 mトリガT21へゲートさせる。このトリガ中の
非零IDは、所与のAOPが丁度開始さたばかりである
こと並びに俺CF A13がこのAOPの取出を処理す
るCIサイクル(第1キャッシュ・サイクル)にあるこ
とを指示する。通常の場合、このmはCImラッチT2
2へ供給され、後続サイクル中にそこからさらにC21
DトリガT23へ供給される。もし特定のIDがこのト
リガT2にある間に、「取出遅延」信号A2D、「取世
拒否J信号A2C又は「順序付け拒否」信号K7が存在
すれば、これは当該取出の処理を指示し、かくて当該A
OPの制御はこの取出を処理するべく適当なアクション
を取らなければならない。もしこれらの信号のどれもが
受取られなければ、これは取出されたデータがこのサイ
クルのラツチ時間にBOB○で利用できることを指示す
る。再取出を拒否された取出の時間が到来する場合、こ
の取出に関連するAOPの「再取出」信号が線JI乃至
J6のいずれかに現われる。
この信号は符号器T24によってこのAOPのIDへ符
号化され、そしてこのIDは再取出mトリガT25に置
かれ、そこからさらに再取出IDラツチT26へ置かれ
る。非零IDトリガT25に現われる場合、これはこの
特定のAOPに対する再取出を遂行するためにアドレス
増数器011(第11図)が使用されていることを指示
する。もしこのサイクルの間に「俺CF使用中」信号A
2Aが存在しなければ、俺CFAI3はこの要求を受入
れそれを処理することになるので、そのmはラッチT2
6から再取出CIIDトリガT27へ通過することを許
され、かくてPSCF A13がこの要求を処理するC
Iサイクルにあることを指示する。次いで、OR回路は
トリガT27及びT2 1からこのIDを受取り、その
出力をラツチT22へ供給する。トリガT27及びT2
1は互いに排他的であって、両者が非零IDを有するこ
とはないから、選択回路でなくOR回路を使用すること
は何らの困難性をも伴わない。所与の取出が遅延される
場合、この取出に関連するAOPのmが前進IDラッチ
U8(第308図)に記憶され、線U3を介して与えら
れる。データが復帰される2サイクル前に、俺CFAI
3は「PSCF前進」信号A2Bを供給し、該信号はラ
ッチされた後線U5を介して与えられ、当該AOPのI
Dを再取出CImトリガT27へゲートする。このmは
、通常の遍路を介して、トリガT23に到着する時間に
データを入力ゲートさせる。第28図の諸回路は、所与
のAOPがチェーン中の最後のAOPであるためにリセ
ットできないような場合を決定する。
号化され、そしてこのIDは再取出mトリガT25に置
かれ、そこからさらに再取出IDラツチT26へ置かれ
る。非零IDトリガT25に現われる場合、これはこの
特定のAOPに対する再取出を遂行するためにアドレス
増数器011(第11図)が使用されていることを指示
する。もしこのサイクルの間に「俺CF使用中」信号A
2Aが存在しなければ、俺CFAI3はこの要求を受入
れそれを処理することになるので、そのmはラッチT2
6から再取出CIIDトリガT27へ通過することを許
され、かくてPSCF A13がこの要求を処理するC
Iサイクルにあることを指示する。次いで、OR回路は
トリガT27及びT2 1からこのIDを受取り、その
出力をラツチT22へ供給する。トリガT27及びT2
1は互いに排他的であって、両者が非零IDを有するこ
とはないから、選択回路でなくOR回路を使用すること
は何らの困難性をも伴わない。所与の取出が遅延される
場合、この取出に関連するAOPのmが前進IDラッチ
U8(第308図)に記憶され、線U3を介して与えら
れる。データが復帰される2サイクル前に、俺CFAI
3は「PSCF前進」信号A2Bを供給し、該信号はラ
ッチされた後線U5を介して与えられ、当該AOPのI
Dを再取出CImトリガT27へゲートする。このmは
、通常の遍路を介して、トリガT23に到着する時間に
データを入力ゲートさせる。第28図の諸回路は、所与
のAOPがチェーン中の最後のAOPであるためにリセ
ットできないような場合を決定する。
線G5に与えられる■は、開始を必要とするAOPがま
だあれば、ソース・チェーンで開始された最後のAOP
を識別する。もしこの最後に開始されたAOPがチェー
ン中の最後のものであれば、このmには零が与えられる
。糠G7は、行先についてこれと同じ情報を供鴇舎する
。かくて、もし復号器T17が線TI9に信号を出力す
れば、これはAOP−Aがこのチェーンの最後のもので
あること及び他のAOPを開始する必要があることを指
示する。もしこの信号が存在しており且つ「ソース取出
」信号F7が存在していなくてソース・チェーンの新し
いAOPが開始されていることを指示するならば、信号
TIIがオンとなり、かくてAOP−AがEPA15に
よって必要とされている場合には、それはこの時間にそ
の入力ゲートを完了することを許容されないことを指示
する。これと同様に、復号器T18が信号T20を生じ
てAOP−Aが行先チヱーンで最後に開始されたAOP
であることを指示し、しかも「行先取出」信号F5が存
在しておらず、かくて行先のために新しいAOPが開始
されていることを指示する場合にも、信号TIIがオン
に転ぜられる。第29図の諸論理回路は、所与のAOP
がその待機中トリガをオフに転ずる前にそのプロセッサ
からの第2の入力ゲートを必要としているか否かを記憶
する。
だあれば、ソース・チェーンで開始された最後のAOP
を識別する。もしこの最後に開始されたAOPがチェー
ン中の最後のものであれば、このmには零が与えられる
。糠G7は、行先についてこれと同じ情報を供鴇舎する
。かくて、もし復号器T17が線TI9に信号を出力す
れば、これはAOP−Aがこのチェーンの最後のもので
あること及び他のAOPを開始する必要があることを指
示する。もしこの信号が存在しており且つ「ソース取出
」信号F7が存在していなくてソース・チェーンの新し
いAOPが開始されていることを指示するならば、信号
TIIがオンとなり、かくてAOP−AがEPA15に
よって必要とされている場合には、それはこの時間にそ
の入力ゲートを完了することを許容されないことを指示
する。これと同様に、復号器T18が信号T20を生じ
てAOP−Aが行先チヱーンで最後に開始されたAOP
であることを指示し、しかも「行先取出」信号F5が存
在しておらず、かくて行先のために新しいAOPが開始
されていることを指示する場合にも、信号TIIがオン
に転ぜられる。第29図の諸論理回路は、所与のAOP
がその待機中トリガをオフに転ずる前にそのプロセッサ
からの第2の入力ゲートを必要としているか否かを記憶
する。
それぞれのAOPに対応する6個のステータス・ビット
があるが、これらのビットがセットされるのは、「ソー
ス取出」信号B7がオンであり、「叢シフト重一信号B
14がオフであり、しかも「最終取出」信号B5がオフ
である場合に、対応するAOPが開始されるような時間
である。これらのステータス・ビットは、対応するAO
Pがリセットされるときに、リセットされる。第30A
図及び第30B図の講論理回路は遅延された取出の処理
に関係しており、復帰されるデータが正しいOPへ向け
られることを保証する。
があるが、これらのビットがセットされるのは、「ソー
ス取出」信号B7がオンであり、「叢シフト重一信号B
14がオフであり、しかも「最終取出」信号B5がオフ
である場合に、対応するAOPが開始されるような時間
である。これらのステータス・ビットは、対応するAO
Pがリセットされるときに、リセットされる。第30A
図及び第30B図の講論理回路は遅延された取出の処理
に関係しており、復帰されるデータが正しいOPへ向け
られることを保証する。
前進IDトリガU7及びラッチU8は、遅延された取出
によって復帰されているデータを受取るべきOPのmを
保持する。もし取出要求のC2サイクルの間に「取出遅
延」信号A2Dが受取られ且つ「順序付け拒否」信号K
7が存在しなければ、このサイクルを使用しているAO
Pを識別する処の「C21D」信号T4が第30B図の
ゲートU9を介して前進IDラツチU8へゲ−トされる
。通常の場合、このIDは俺CF A13から「PSC
F前進」信号A2Bが受取られるまでトリガU7及びラ
ッチU8に留まり、該信号が受取られると前述の如く再
取出CImトリガT27へゲートされる。前進IDラツ
チU8は前記した如き「先行m」のすべてと継続的に比
較され、そしてこれに応じて線P2にチェーン中の次の
AOPのIDが復帰される。「偽CF前進」信号A2B
が受取られる場合、該次のAOPのIDはゲートUIO
を介してトリガU7へゲートされる。次いで、PSCF
AI3が次の上位ダブルワードについて他の「俺CF前
進」信号A2Bを供給すれば、この信号を受取るべきA
OPのIDは該信号が受取られる時間にトリガU7及び
ラツチU8に見出される。もしチェーン中に次のAOP
が存在しなければ、級P2を介して復帰されるIDは零
であり、トリガU7及びラツチU8が零へリセツトされ
るので、オペランド取出論理に関する限り顕著な遅延取
出がもはや存在しないことが指示される。トリガU7及
びラッチU8は、PSCFAI3からの「取出進行中」
信号A28がなくなる場合にも、零へリセットされる。
これによってカバーされる状況とは、鴇CFAI3によ
って復帰されるダブルワードよりも多いチェーン化され
たOPをmPFA7が有する場合である。重複取出が要
求される状況では、以下に説明するような複雑な事態が
生じうる。
によって復帰されているデータを受取るべきOPのmを
保持する。もし取出要求のC2サイクルの間に「取出遅
延」信号A2Dが受取られ且つ「順序付け拒否」信号K
7が存在しなければ、このサイクルを使用しているAO
Pを識別する処の「C21D」信号T4が第30B図の
ゲートU9を介して前進IDラツチU8へゲ−トされる
。通常の場合、このIDは俺CF A13から「PSC
F前進」信号A2Bが受取られるまでトリガU7及びラ
ッチU8に留まり、該信号が受取られると前述の如く再
取出CImトリガT27へゲートされる。前進IDラツ
チU8は前記した如き「先行m」のすべてと継続的に比
較され、そしてこれに応じて線P2にチェーン中の次の
AOPのIDが復帰される。「偽CF前進」信号A2B
が受取られる場合、該次のAOPのIDはゲートUIO
を介してトリガU7へゲートされる。次いで、PSCF
AI3が次の上位ダブルワードについて他の「俺CF前
進」信号A2Bを供給すれば、この信号を受取るべきA
OPのIDは該信号が受取られる時間にトリガU7及び
ラツチU8に見出される。もしチェーン中に次のAOP
が存在しなければ、級P2を介して復帰されるIDは零
であり、トリガU7及びラツチU8が零へリセツトされ
るので、オペランド取出論理に関する限り顕著な遅延取
出がもはや存在しないことが指示される。トリガU7及
びラッチU8は、PSCFAI3からの「取出進行中」
信号A28がなくなる場合にも、零へリセットされる。
これによってカバーされる状況とは、鴇CFAI3によ
って復帰されるダブルワードよりも多いチェーン化され
たOPをmPFA7が有する場合である。重複取出が要
求される状況では、以下に説明するような複雑な事態が
生じうる。
最初の取出はチェーン中の第1ダブルワードについて遂
行され、そして鴇CFAI3中で「取出遅延」信号A2
Dに遭遇する。然る後、PSCFA13がデータを復帰
させる場合、これは複数のダブルワードを復帰させる。
もし特別なことが何ら行われなければ、最初の取出に関
連するAOPへ第1ダブルワードが入力ゲートされ、次
のダブルワード(アドレス+8)が次のAOPへ入力ゲ
ートされ、以下同様に後続ダブルワードが後続AOPへ
順次に入力ゲートされることになろう。しかしながら、
この場合には、前記した通り重榎取出が行われる。従っ
て、次のAOPは(アドレス+8ではなく)同じ位置か
ら取出を行おうとしているので、この要求に応答してア
ドレス十8にあるダブルワードの内容を受取ることは間
違っている。この状況を処理するために、第1重複mト
リガU12及びラッチU13と第2重複IDトリガU1
4及びラツチU15が設けられる。
行され、そして鴇CFAI3中で「取出遅延」信号A2
Dに遭遇する。然る後、PSCFA13がデータを復帰
させる場合、これは複数のダブルワードを復帰させる。
もし特別なことが何ら行われなければ、最初の取出に関
連するAOPへ第1ダブルワードが入力ゲートされ、次
のダブルワード(アドレス+8)が次のAOPへ入力ゲ
ートされ、以下同様に後続ダブルワードが後続AOPへ
順次に入力ゲートされることになろう。しかしながら、
この場合には、前記した通り重榎取出が行われる。従っ
て、次のAOPは(アドレス+8ではなく)同じ位置か
ら取出を行おうとしているので、この要求に応答してア
ドレス十8にあるダブルワードの内容を受取ることは間
違っている。この状況を処理するために、第1重複mト
リガU12及びラッチU13と第2重複IDトリガU1
4及びラツチU15が設けられる。
これらのトリガ及びラッチは、第1要求をなしたAOP
のmとこの要求を重複させたAOPのIDそれぞれ保持
するために使用される。第1重複町ラツチU13は、ソ
ース・フィールドが存在することを「ソース・フィール
ド取出」信号B9が指示し且つ重複取出の状況が存在す
ることを「童複取出」信号BIOが指示するとき、CI
mトリガT2の内容によってセットされる。このラッチ
U13は、フアネル回路U16が出力を発生し当該mに
よって指定されたAOPがリセツト信号を受取ったこと
を指示するまで、セットされたままに留まる。この時間
には、第1重複mトリガU12及びラツチU13は零へ
リセツトされる。信号U18及びUI9によって指示さ
れるように、r第1重複m」が非琴値へセットされ且つ
「第2重複ID」が依然として零であるような時間には
、遂行さるべき次のソース取出が重榎取出でなければな
らないことが知られている。「ソース取出」信号F8に
よって指示されるようにこのソース取出が生ずる場合、
これに応じてAND回路U17から出力が生ぜられるの
で、これにより信号CI9によって開始されているAO
PのIDが第2重複mトリガU14へゲートされる。こ
のIDは、「第1重複m」をリセットするものと同じフ
アネル回路U16からの信号によってリセットされるま
で、そこに留まる。もし「第1重複m」が「前進ID」
と等しければ、前記した状況が潜在的に存在することが
比較器U201こよって認識される。もしこのことが生
じ且つそれと同時に信号U21によって指示される如く
「第2重複m」が零でなければ、これら2状態の論理積
である信号U22によって第2重複IDトリガU14が
前進mトリガU7へゲートされる。かくて、この場合に
は、次のことが生ずる。重複取出の状況が存在し、第1
取出が第IAOPによって開始され、またこれに応じて
遅延取出が生ぜられる。第2の車複取出に関連するAO
Pが開始され、そのmが第1のもののかわりに前進ID
ラツチU8へゲートされる。次いで、PSCF A13
がデータを供給する場合、第IAOPによって最初に要
求されたデータは事実上第2AOPに属するものとみな
され、そして第10Pは左端からシフト・オフされた諸
バイトを先行AOPへ入力ゲートするという通常の機構
によってその必要とするすべてのデータを受取る。俺C
F AI3によって復帰されうる後続ダブルワードは後
続のAOPへゲートされる。第31A図乃至第31C図
のバイパス及びシフタ制御は、第1図のPSCF A1
3に設けられる。第31A図の取出アドレス・レジスタ
(FAR)は、各オペランドについて取出さるべき各ダ
ブルワードごとに、オペランド取出ブロックA9中のプ
ロセッサ・アドレス・ラツチD12(第11図)から要
求アドレスを受取る。
のmとこの要求を重複させたAOPのIDそれぞれ保持
するために使用される。第1重複町ラツチU13は、ソ
ース・フィールドが存在することを「ソース・フィール
ド取出」信号B9が指示し且つ重複取出の状況が存在す
ることを「童複取出」信号BIOが指示するとき、CI
mトリガT2の内容によってセットされる。このラッチ
U13は、フアネル回路U16が出力を発生し当該mに
よって指定されたAOPがリセツト信号を受取ったこと
を指示するまで、セットされたままに留まる。この時間
には、第1重複mトリガU12及びラツチU13は零へ
リセツトされる。信号U18及びUI9によって指示さ
れるように、r第1重複m」が非琴値へセットされ且つ
「第2重複ID」が依然として零であるような時間には
、遂行さるべき次のソース取出が重榎取出でなければな
らないことが知られている。「ソース取出」信号F8に
よって指示されるようにこのソース取出が生ずる場合、
これに応じてAND回路U17から出力が生ぜられるの
で、これにより信号CI9によって開始されているAO
PのIDが第2重複mトリガU14へゲートされる。こ
のIDは、「第1重複m」をリセットするものと同じフ
アネル回路U16からの信号によってリセットされるま
で、そこに留まる。もし「第1重複m」が「前進ID」
と等しければ、前記した状況が潜在的に存在することが
比較器U201こよって認識される。もしこのことが生
じ且つそれと同時に信号U21によって指示される如く
「第2重複m」が零でなければ、これら2状態の論理積
である信号U22によって第2重複IDトリガU14が
前進mトリガU7へゲートされる。かくて、この場合に
は、次のことが生ずる。重複取出の状況が存在し、第1
取出が第IAOPによって開始され、またこれに応じて
遅延取出が生ぜられる。第2の車複取出に関連するAO
Pが開始され、そのmが第1のもののかわりに前進ID
ラツチU8へゲートされる。次いで、PSCF A13
がデータを供給する場合、第IAOPによって最初に要
求されたデータは事実上第2AOPに属するものとみな
され、そして第10Pは左端からシフト・オフされた諸
バイトを先行AOPへ入力ゲートするという通常の機構
によってその必要とするすべてのデータを受取る。俺C
F AI3によって復帰されうる後続ダブルワードは後
続のAOPへゲートされる。第31A図乃至第31C図
のバイパス及びシフタ制御は、第1図のPSCF A1
3に設けられる。第31A図の取出アドレス・レジスタ
(FAR)は、各オペランドについて取出さるべき各ダ
ブルワードごとに、オペランド取出ブロックA9中のプ
ロセッサ・アドレス・ラツチD12(第11図)から要
求アドレスを受取る。
もしデータがキャッシュに存在しなければ、或いは変換
アドレスが変換索引緩衝機構(図示せず)に存在しなけ
れば、この取出要求は主記憶AI6に対して行われる。
殆んどの取出要求については、デー夕はキャッシュに存
在しているので、通常、キャッシュ・ヒット線は第31
8図のトリガVIをセットしてAND回路V2を作動さ
せ、かくてキャッシュ。アクセスによって生ぜられた刻
時されたCI取出信号を通過させる。その出力V36は
キャッシュからのデータをOR回路V28及びBDBO
ラツチV29を介してバイト・シフタV32へゲートす
る。バイト4シフタV32のシフト量はIPPF A7
からAND回路V38へ送られ、刻時された「取出前進
一信号によってゲートされる。バイト・シフタV32の
出力は、選択されたOPのためにびPF A7へ供V給
される。キャッシュ・ミスが生じて主記憶AI6からデ
ータを得ることが必要となれば、主記憶AI6から1ラ
インを構成する8ダブルワードが取出される。このライ
ンのダブルワ−Nこ関連する取出アドレス・レジスタ(
FAR)のアドレスは、ダブルワード要求の各々が線V
4からの「取出優先」信号を受取る際、3ビットの増数
器V20によって増数される。キャッシュ・ミスを生ぜ
しめた処の要求されたダブルワードで取出が開始される
と、この取出は当該ラインの終端、すなわちこのライン
にある最上位アドレスのダブルワードまで継続し、次い
でこのラインの始端にあるダブルワードに戻り、ライン
・カウンタV5によって決定されるように合計8個のダ
ブルワードが取出されるまで継続的に行われる。
アドレスが変換索引緩衝機構(図示せず)に存在しなけ
れば、この取出要求は主記憶AI6に対して行われる。
殆んどの取出要求については、デー夕はキャッシュに存
在しているので、通常、キャッシュ・ヒット線は第31
8図のトリガVIをセットしてAND回路V2を作動さ
せ、かくてキャッシュ。アクセスによって生ぜられた刻
時されたCI取出信号を通過させる。その出力V36は
キャッシュからのデータをOR回路V28及びBDBO
ラツチV29を介してバイト・シフタV32へゲートす
る。バイト4シフタV32のシフト量はIPPF A7
からAND回路V38へ送られ、刻時された「取出前進
一信号によってゲートされる。バイト・シフタV32の
出力は、選択されたOPのためにびPF A7へ供V給
される。キャッシュ・ミスが生じて主記憶AI6からデ
ータを得ることが必要となれば、主記憶AI6から1ラ
インを構成する8ダブルワードが取出される。このライ
ンのダブルワ−Nこ関連する取出アドレス・レジスタ(
FAR)のアドレスは、ダブルワード要求の各々が線V
4からの「取出優先」信号を受取る際、3ビットの増数
器V20によって増数される。キャッシュ・ミスを生ぜ
しめた処の要求されたダブルワードで取出が開始される
と、この取出は当該ラインの終端、すなわちこのライン
にある最上位アドレスのダブルワードまで継続し、次い
でこのラインの始端にあるダブルワードに戻り、ライン
・カウンタV5によって決定されるように合計8個のダ
ブルワードが取出されるまで継続的に行われる。
主記憶AI6から1ダブルワードを選択するために各要
求が優先順位を獲得すると、敬出アドレス・レジスタ中
のアドレスは記憶アドレス・バス・ィン(SABI)を
介して主記憶A16へ送られる。「取出優先」信号はA
ND回路V6から生ぜられ、該回路は「IPPF取出要
求」信号の間にキャッシュ・ミス信号と取出アドレス・
レジスタの非使用中信号を受取る。
求が優先順位を獲得すると、敬出アドレス・レジスタ中
のアドレスは記憶アドレス・バス・ィン(SABI)を
介して主記憶A16へ送られる。「取出優先」信号はA
ND回路V6から生ぜられ、該回路は「IPPF取出要
求」信号の間にキャッシュ・ミス信号と取出アドレス・
レジスタの非使用中信号を受取る。
次いで、AND回路V6は「取出アドレス・レジスタ使
用中」信号を供給し、これにより取出要求ラツチV15
をセットする。ラッチV15はこの要求を主記憶優先回
路V3へ出力し、該回路は取出優先線V4が付勢される
時機を決定して取出さるべき各ダブルワードごとに敬出
優先パルスを出力する。ライン・カウンタV5はAND
回路V6から得られる「取出アドレス・レジスタ使用中
」信号によってカウント零へリセットされ、そして線V
4に「敬出優先」信号が与えられるたびに増数される。
用中」信号を供給し、これにより取出要求ラツチV15
をセットする。ラッチV15はこの要求を主記憶優先回
路V3へ出力し、該回路は取出優先線V4が付勢される
時機を決定して取出さるべき各ダブルワードごとに敬出
優先パルスを出力する。ライン・カウンタV5はAND
回路V6から得られる「取出アドレス・レジスタ使用中
」信号によってカウント零へリセットされ、そして線V
4に「敬出優先」信号が与えられるたびに増数される。
カウント7に達すると、ライン・カウンタV5はAND
回路V7を付勢して取出要求トリガをリセットさせると
ともに、次のIPPF取出要求まで線V4を介して他の
取出要求を停止させる。このラインに対する第1取出要
求はr第1取世」信号V18としてAND回路V8から
ソ−スノシンク・タイミング・チェーンV24へ供給さ
れる。このチェーンV24から得られるタイミングは、
主記憶制御信号と主記憶AI6から取出データを得る際
に包含される時間遅延と同期させるために必要である。
また、「取出優先」信号V4は、当該要求が書込みでは
なく取出し‘こ対するものであることを指示するために
、ソースノシンク・タイミング・チェーンの他の通路に
入る。
回路V7を付勢して取出要求トリガをリセットさせると
ともに、次のIPPF取出要求まで線V4を介して他の
取出要求を停止させる。このラインに対する第1取出要
求はr第1取世」信号V18としてAND回路V8から
ソ−スノシンク・タイミング・チェーンV24へ供給さ
れる。このチェーンV24から得られるタイミングは、
主記憶制御信号と主記憶AI6から取出データを得る際
に包含される時間遅延と同期させるために必要である。
また、「取出優先」信号V4は、当該要求が書込みでは
なく取出し‘こ対するものであることを指示するために
、ソースノシンク・タイミング・チェーンの他の通路に
入る。
この信号V4はチェーンV24からAND回路V9へ出
力され、該回路はそれと同時にチェーンV24からの第
1取出信号を受取ってラツチVI0をセットする。次い
でt一連の取出信号はラツチVIIに加わり、そこでそ
れぞれ1/2サイクルずつ遅延された後、AND回路V
1 2へ加えられる。AND回路V1 2は、r取出前
進一信号V13をIPPFへ供給するために、31/2
サイクルだけ遅延された取出信号を通過させる。またこ
の「取出前進一信号は2サイクル以上の遅延を与えるラ
ッチ及びトリガを適して線V33へ供給される。この線
V33はAND回路V38を付勢して「シフト量」信号
をバイト・シフタV32へ通過させるので、該シフ外ま
この制御の下に取出された8バイトのダブルワードをm
PFA7及びEFAI5の諸回路へ出力する。当該ライ
ンの終端にあるダブルワードのための「取出前進一信号
V13が出力された後、この信号V13とバイト・シフ
タV32からのダブルワードが終了する。
力され、該回路はそれと同時にチェーンV24からの第
1取出信号を受取ってラツチVI0をセットする。次い
でt一連の取出信号はラツチVIIに加わり、そこでそ
れぞれ1/2サイクルずつ遅延された後、AND回路V
1 2へ加えられる。AND回路V1 2は、r取出前
進一信号V13をIPPFへ供給するために、31/2
サイクルだけ遅延された取出信号を通過させる。またこ
の「取出前進一信号は2サイクル以上の遅延を与えるラ
ッチ及びトリガを適して線V33へ供給される。この線
V33はAND回路V38を付勢して「シフト量」信号
をバイト・シフタV32へ通過させるので、該シフ外ま
この制御の下に取出された8バイトのダブルワードをm
PFA7及びEFAI5の諸回路へ出力する。当該ライ
ンの終端にあるダブルワードのための「取出前進一信号
V13が出力された後、この信号V13とバイト・シフ
タV32からのダブルワードが終了する。
このライン終了はAND回路V16によって検出され「
該回路は主記憶AI6へ供給されている記憶アドレス・
バス・ィン(SABI)の取出要求アドレス・ビット2
6乃至28が1であることをセンスして「ライン終了」
信号V17を供給する。
該回路は主記憶AI6へ供給されている記憶アドレス・
バス・ィン(SABI)の取出要求アドレス・ビット2
6乃至28が1であることをセンスして「ライン終了」
信号V17を供給する。
この信号V17はソース/シンク・タイミング・チェー
ンV24のライン終了通路へ入力される。この信号V1
7はチェーンV24から1サイクルの遅延を与えるラッ
チV17及びトリガを介してラツチVIOをリセットし
、これによりAND回路V12を禁止してその後の「取
出前進一信号V13及びバイト・シフタV32からの任
意の対応ダブルワードを阻止する。第1要求に応じて主
記憶AI6から取出されるダブルワードから当該ライン
の終端にあるダブルワードまでについて、キャッシュ・
バイパス通路が設けられる。
ンV24のライン終了通路へ入力される。この信号V1
7はチェーンV24から1サイクルの遅延を与えるラッ
チV17及びトリガを介してラツチVIOをリセットし
、これによりAND回路V12を禁止してその後の「取
出前進一信号V13及びバイト・シフタV32からの任
意の対応ダブルワードを阻止する。第1要求に応じて主
記憶AI6から取出されるダブルワードから当該ライン
の終端にあるダブルワードまでについて、キャッシュ・
バイパス通路が設けられる。
従って、主記憶AI6から取出され且つキャッシュへ供
給される諸ダブルワードは、ゲートV27を有するキャ
ッシュ・バイパス通路にも供V給される。このバイパス
通路ゲートV27は第1要求に対応するダブルワードか
ら当該ラインの終機に至るまでのダブルワードについて
は付勢されるけれども、その後は当該ラインの終端に至
るまでのダブルワードについて禁止されることになる。
このため、AND回路V1 2の出力から2 1/2サ
イクルの遅延を与えるトリガ及びラッチを通して線V3
7へ「取出前進一信号が送られ、これによりバイパス・
ゲートV27の付勢が制御される。前記したシフタV3
2は、左方向へバイト単位の循環シフトを行う。
給される諸ダブルワードは、ゲートV27を有するキャ
ッシュ・バイパス通路にも供V給される。このバイパス
通路ゲートV27は第1要求に対応するダブルワードか
ら当該ラインの終機に至るまでのダブルワードについて
は付勢されるけれども、その後は当該ラインの終端に至
るまでのダブルワードについて禁止されることになる。
このため、AND回路V1 2の出力から2 1/2サ
イクルの遅延を与えるトリガ及びラッチを通して線V3
7へ「取出前進一信号が送られ、これによりバイパス・
ゲートV27の付勢が制御される。前記したシフタV3
2は、左方向へバイト単位の循環シフトを行う。
つまり、このシフタV32はバイト単位で左シフトを遂
行するとともに、左端からシフト・オフされたバイトを
その右端へ再挿入するということである。左シフトに限
って説明したのは、理解を容易にするためである。しか
しながら、右方向へバイト単位の循環シフトを行い、右
端からシフト・オフされたバイトを左端へ再挿入する如
きシフタであっても、前記と同様に使用できることはも
ちろんである。仮に、左シフタのシフト量がNであった
とすれば、右シフタの場合には、そのシフト量を単に8
一Nに設定するだけで、同等の機能を遂行することがで
きる。
行するとともに、左端からシフト・オフされたバイトを
その右端へ再挿入するということである。左シフトに限
って説明したのは、理解を容易にするためである。しか
しながら、右方向へバイト単位の循環シフトを行い、右
端からシフト・オフされたバイトを左端へ再挿入する如
きシフタであっても、前記と同様に使用できることはも
ちろんである。仮に、左シフタのシフト量がNであった
とすれば、右シフタの場合には、そのシフト量を単に8
一Nに設定するだけで、同等の機能を遂行することがで
きる。
第1図は本発明を包含するシステムの全容ブロック図、
第2図は特に本発明が関係するオペランド取出ブロック
の構成要素を示す図、第3図はmPF(命令前処理機構
)の取出要求に関係するタイミングを示す図、第4図は
キャッシュをアクセスするために鴨CF(主記憶制御機
構)によって受諾される取出要求のタイミングを示す図
、第5図はライン取世が進行中であるときmPFの取出
要求を拒否するMCFの動作に関係するタイミングを示
す図、第6図はIPPFの取出要求がキャッシュ・ミス
を伴うときこの取出要求を受諾するPSCFの動作に関
係するタイミングを示す図、第7図はLM(多重ロード
)命令及びMVC(移動)命令が復号及び実行される場
合のタイミングを示す図、第8図はEF(実行機構)と
オペランド取出ブロックとの間にあるバスA6及びA8
上の信号タイミングを示す図、第9図は第9A図乃至第
9D図の結合様式を示す図、第9A図乃至第90図はオ
ペランド取出の開始及び命令復号ブロックから受取られ
た信号の処理に関係するオペランド取出ブロックの設定
論理を示す図、第10図は第10A図及び第10B図の
結合様式を示す図、第10A図及び第10B図は使用中
AOP(アドレス・オペランド対)のトラックを維持し
且つ開始さるべき次のAOPを決定する論理を示す図、
第11図はオペランド取出ブロックにおけるアドレス・
データの流れを示す図、第12図は第12A図及び第1
2B図の結合様式を示す図、第12A図及び第12B図
はアドレス増数器ヘアドレスを出力ゲートすべきOAR
(オペランド・アドレス・レジスタ)を制御する論理を
示す図、第13図は第13A図乃至第13D図の結合様
式を示す図、第13A図乃至第13D図はソース制御及
び行先制御を示す図、第14図及び第15図はソース制
御及び行先制御のID(識別子)論理を示す図、第16
図は第16A図及び第16D図の結合様式を示す図、第
16A図乃至第16D図はAOPのLRU(じastR
ecentlyUsed)論理を示す図、第17図は第
17A図及び第178図の結合様式を示す図、第17A
図及び第17B図は再取出を必要とするAOPのトラッ
クを維持し且つ適当な時間に再取出信号を生成する再取
世論理を示す図、第18図及び第19図は順序付け拒否
信号及びAOPリセット信号を生成する論理を示す図、
第20図は第20A図及び第20B図の結合様式を示す
図、第20A図及び第20B図は所与のAOPを復号中
の特定の命令と関連付け且つEFによってAOPのデー
タが必要とされる時機を指示する論理を示す図、第21
図は第21A図及び第21B図の結合様式を示す図、第
21A図及び第21B図は各AOPがソース又は行先A
OPのチェーンにおける最初のものか否かを記憶する論
理を示す図、第22図は第22A図及び第22B図の結
合様式を示す図、第22A図及び第22B図は各AOP
がソース又は行先取出のどちらに関連するかを記憶する
論理を示す図、第23図は第23A図及び第238図の
結合様式を示す図、第23A図及び第23B図は複数の
AOPがどのようにチェーンされるかを記憶する論理を
示す図、第24図は第24A図及び第24B図の結合様
式を示す図、第24A図及び第24B図はPSCFから
受取られるダブルワードのシフト量を記憶し且つ各OP
(オペランド・バッファ)への入力ゲートを制御する論
理を示す図、第25図は第25A図及び第258図の結
合様式を示す図、第25A図及び第25B図はそれぞれ
のAOPに設けられるOPを示す図、第26図は第26
A図及び第26B図の結合様式を示す図、第26A図及
び第26B図はPSCFからのデータを待機しているA
OPを識別する論理を示す図、第27図乃至第29図は
CI/C21D及び入力ゲート要求のステータスを記憶
する論理を示す図、第30図は第30A図及び第30B
図の結合様式を示す図、第30A図及び第30B図は遅
延された取出に応じて復帰されるデータが正しいOPへ
向けられることを保証する論理を示す図、第31図は第
31A図乃至第31C図の結合様式を示す図、第31A
図乃至第31C図はPSCFに設けられるバイパス及び
シフタ制御を示す図である。 FIG.31 FIG.31C FIGI OG.2 FIG.3 FIG.4 FIG5 FIG.6 FIG.7 FIG.8 【G.9A FIG.9 FIG.98 FIG.9C FIG.90 FIG.10A FIG.10 FIG.108 FIG.11 FIG.12 FIG.12A FIG.丁28 FIG.13A FIG.136 FIG.13C FIG.13 FIG.130 FIG.14 FIG.15 FIG.16A FIG.16 FIG.166 FIG.16C FIG.16D FIG.17 FIG.17A FIG.178 FIG.18 FIG.P FIG.20A FIG20 口G.208 FIG.21A FIG.218 FIG.22A FIG.228 FIG.23 FIG.23A FIG.238 FIG.24A FIG.24 FIG.248 FIG.25 FIG.25A FIG.258 【G.26A FIG.26 FIG.268 FIG.27 口G.28 FIG.29 FIG.30 FIG.30A FIG.SOB 口俺.SIA FIG.3’8
第2図は特に本発明が関係するオペランド取出ブロック
の構成要素を示す図、第3図はmPF(命令前処理機構
)の取出要求に関係するタイミングを示す図、第4図は
キャッシュをアクセスするために鴨CF(主記憶制御機
構)によって受諾される取出要求のタイミングを示す図
、第5図はライン取世が進行中であるときmPFの取出
要求を拒否するMCFの動作に関係するタイミングを示
す図、第6図はIPPFの取出要求がキャッシュ・ミス
を伴うときこの取出要求を受諾するPSCFの動作に関
係するタイミングを示す図、第7図はLM(多重ロード
)命令及びMVC(移動)命令が復号及び実行される場
合のタイミングを示す図、第8図はEF(実行機構)と
オペランド取出ブロックとの間にあるバスA6及びA8
上の信号タイミングを示す図、第9図は第9A図乃至第
9D図の結合様式を示す図、第9A図乃至第90図はオ
ペランド取出の開始及び命令復号ブロックから受取られ
た信号の処理に関係するオペランド取出ブロックの設定
論理を示す図、第10図は第10A図及び第10B図の
結合様式を示す図、第10A図及び第10B図は使用中
AOP(アドレス・オペランド対)のトラックを維持し
且つ開始さるべき次のAOPを決定する論理を示す図、
第11図はオペランド取出ブロックにおけるアドレス・
データの流れを示す図、第12図は第12A図及び第1
2B図の結合様式を示す図、第12A図及び第12B図
はアドレス増数器ヘアドレスを出力ゲートすべきOAR
(オペランド・アドレス・レジスタ)を制御する論理を
示す図、第13図は第13A図乃至第13D図の結合様
式を示す図、第13A図乃至第13D図はソース制御及
び行先制御を示す図、第14図及び第15図はソース制
御及び行先制御のID(識別子)論理を示す図、第16
図は第16A図及び第16D図の結合様式を示す図、第
16A図乃至第16D図はAOPのLRU(じastR
ecentlyUsed)論理を示す図、第17図は第
17A図及び第178図の結合様式を示す図、第17A
図及び第17B図は再取出を必要とするAOPのトラッ
クを維持し且つ適当な時間に再取出信号を生成する再取
世論理を示す図、第18図及び第19図は順序付け拒否
信号及びAOPリセット信号を生成する論理を示す図、
第20図は第20A図及び第20B図の結合様式を示す
図、第20A図及び第20B図は所与のAOPを復号中
の特定の命令と関連付け且つEFによってAOPのデー
タが必要とされる時機を指示する論理を示す図、第21
図は第21A図及び第21B図の結合様式を示す図、第
21A図及び第21B図は各AOPがソース又は行先A
OPのチェーンにおける最初のものか否かを記憶する論
理を示す図、第22図は第22A図及び第22B図の結
合様式を示す図、第22A図及び第22B図は各AOP
がソース又は行先取出のどちらに関連するかを記憶する
論理を示す図、第23図は第23A図及び第238図の
結合様式を示す図、第23A図及び第23B図は複数の
AOPがどのようにチェーンされるかを記憶する論理を
示す図、第24図は第24A図及び第24B図の結合様
式を示す図、第24A図及び第24B図はPSCFから
受取られるダブルワードのシフト量を記憶し且つ各OP
(オペランド・バッファ)への入力ゲートを制御する論
理を示す図、第25図は第25A図及び第258図の結
合様式を示す図、第25A図及び第25B図はそれぞれ
のAOPに設けられるOPを示す図、第26図は第26
A図及び第26B図の結合様式を示す図、第26A図及
び第26B図はPSCFからのデータを待機しているA
OPを識別する論理を示す図、第27図乃至第29図は
CI/C21D及び入力ゲート要求のステータスを記憶
する論理を示す図、第30図は第30A図及び第30B
図の結合様式を示す図、第30A図及び第30B図は遅
延された取出に応じて復帰されるデータが正しいOPへ
向けられることを保証する論理を示す図、第31図は第
31A図乃至第31C図の結合様式を示す図、第31A
図乃至第31C図はPSCFに設けられるバイパス及び
シフタ制御を示す図である。 FIG.31 FIG.31C FIGI OG.2 FIG.3 FIG.4 FIG5 FIG.6 FIG.7 FIG.8 【G.9A FIG.9 FIG.98 FIG.9C FIG.90 FIG.10A FIG.10 FIG.108 FIG.11 FIG.12 FIG.12A FIG.丁28 FIG.13A FIG.136 FIG.13C FIG.13 FIG.130 FIG.14 FIG.15 FIG.16A FIG.16 FIG.166 FIG.16C FIG.16D FIG.17 FIG.17A FIG.178 FIG.18 FIG.P FIG.20A FIG20 口G.208 FIG.21A FIG.218 FIG.22A FIG.228 FIG.23 FIG.23A FIG.238 FIG.24A FIG.24 FIG.248 FIG.25 FIG.25A FIG.258 【G.26A FIG.26 FIG.268 FIG.27 口G.28 FIG.29 FIG.30 FIG.30A FIG.SOB 口俺.SIA FIG.3’8
Claims (1)
- 1 ソース・オペランドのアドレス及び行先オペランド
のアドレスを含む可変フイールド長命令を解読する命令
デコーダを備え、該命令デコーダの解読出力に応答して
可変長の前記ソース・オペランド及び前記行先オペラン
ドをサブライン単位で主記憶装置から逐次に取出すため
の命令前処理装置において:各々が1つのサブライン・
アドレス・レジスタ及び1つのサブライン・オペランド
・バツフアから成る複数のアドレス・オペランド対(た
とえば第2図のAOP−AないしAOP−F)と;前記
ソース・オペランドをシフトして前記行先オペランドと
位置合せする際に該ソース・オペランドの循環バイト・
シフトが指示される場合、該ソース・オペランドの重複
取出を指示する重複取出開始信号を供給することにより
、前記ソース・オペランドのアドレスに応じて前記主記
憶装置から取出され且つ位置合せされた該ソース・オペ
ランドの第1サブラインを受取るべき2つの前記アドレ
ス・オペランド対を選択させるための重複取出制御手段
(たとえば第9B図のB30)と;前記行先オペランド
が前記主記憶装置中の唯1つのサブラインに包合される
か否かを検知するためのオペランド長検知手段(たとえ
ば第9C図のB17)と;前記ソース・オペランドの第
1サブラインを受取るべき1つの前記アドレス・オペラ
ンド対が選択されるように前記検知手段の肯定出力に応
答して前記重複取出制御手段を禁止するための手段(た
とえば第9B図のB32及びB33を含む回路)とを備
えて成る、可変長オペランドの取出制御機構。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US05/887,091 US4189768A (en) | 1978-03-16 | 1978-03-16 | Operand fetch control improvement |
| US887091 | 1978-03-16 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS54127633A JPS54127633A (en) | 1979-10-03 |
| JPS6010668B2 true JPS6010668B2 (ja) | 1985-03-19 |
Family
ID=25390441
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP54019897A Expired JPS6010668B2 (ja) | 1978-03-16 | 1979-02-23 | 可変長オペランドの取出制御機構 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US4189768A (ja) |
| JP (1) | JPS6010668B2 (ja) |
Families Citing this family (16)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4467443A (en) * | 1979-07-30 | 1984-08-21 | Burroughs Corporation | Bit addressable variable length memory system |
| JPS5743239A (en) * | 1980-08-27 | 1982-03-11 | Hitachi Ltd | Data processor |
| US4445172A (en) * | 1980-12-31 | 1984-04-24 | Honeywell Information Systems Inc. | Data steering logic for the output of a cache memory having an odd/even bank structure |
| US4451883A (en) * | 1981-12-01 | 1984-05-29 | Honeywell Information Systems Inc. | Bus sourcing and shifter control of a central processing unit |
| JPS58149548A (ja) * | 1982-03-02 | 1983-09-05 | Hitachi Ltd | メモリ制御方式 |
| US4888689A (en) * | 1986-10-17 | 1989-12-19 | Amdahl Corporation | Apparatus and method for improving cache access throughput in pipelined processors |
| US5313601A (en) * | 1988-01-30 | 1994-05-17 | Nec Corporation | Request control apparatus |
| US5285527A (en) * | 1991-12-11 | 1994-02-08 | Northern Telecom Limited | Predictive historical cache memory |
| US5438668A (en) * | 1992-03-31 | 1995-08-01 | Seiko Epson Corporation | System and method for extraction, alignment and decoding of CISC instructions into a nano-instruction bucket for execution by a RISC computer |
| US5371864A (en) * | 1992-04-09 | 1994-12-06 | International Business Machines Corporation | Apparatus for concurrent multiple instruction decode in variable length instruction set computer |
| US6735685B1 (en) * | 1992-09-29 | 2004-05-11 | Seiko Epson Corporation | System and method for handling load and/or store operations in a superscalar microprocessor |
| JP3644959B2 (ja) * | 1992-09-29 | 2005-05-11 | セイコーエプソン株式会社 | マイクロプロセッサシステム |
| US7089408B2 (en) * | 2003-05-12 | 2006-08-08 | International Business Machines Corporation | Re-fetch of long operand buffered remainder after cache line invalidation in out-of-order multiprocessor system without instruction re-execution |
| US6973552B2 (en) * | 2003-05-12 | 2005-12-06 | International Business Machines Corporation | System and method to handle page validation with out-of-order fetch |
| US7328312B2 (en) * | 2005-02-03 | 2008-02-05 | International Business Machines Corporation | Method and bus prefetching mechanism for implementing enhanced buffer control |
| US7962726B2 (en) * | 2008-03-19 | 2011-06-14 | International Business Machines Corporation | Recycling long multi-operand instructions |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3496550A (en) * | 1967-02-27 | 1970-02-17 | Burroughs Corp | Digital processor with variable field length operands using a first and second memory stack |
| US3569938A (en) * | 1967-12-20 | 1971-03-09 | Ibm | Storage manager |
| US3588829A (en) * | 1968-11-14 | 1971-06-28 | Ibm | Integrated memory system with block transfer to a buffer store |
| US3806888A (en) * | 1972-12-04 | 1974-04-23 | Ibm | Hierarchial memory system |
| US3896419A (en) * | 1974-01-17 | 1975-07-22 | Honeywell Inf Systems | Cache memory store in a processor of a data processing system |
-
1978
- 1978-03-16 US US05/887,091 patent/US4189768A/en not_active Expired - Lifetime
-
1979
- 1979-02-23 JP JP54019897A patent/JPS6010668B2/ja not_active Expired
Also Published As
| Publication number | Publication date |
|---|---|
| JPS54127633A (en) | 1979-10-03 |
| US4189768A (en) | 1980-02-19 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4189770A (en) | Cache bypass control for operand fetches | |
| JPS6010668B2 (ja) | 可変長オペランドの取出制御機構 | |
| US4725947A (en) | Data processor with a branch target instruction storage | |
| US4890220A (en) | Vector processing apparatus for incrementing indices of vector operands of different length according to arithmetic operation results | |
| US12197917B2 (en) | Exit history based branch prediction | |
| NZ236142A (en) | Data processor skips execution of instructions in queue that are tagged as requiring unavailable data | |
| JPS62221036A (ja) | 計算装置 | |
| JPH0215369A (ja) | ベクター処理システムの命令を実行する方法及び装置 | |
| JPH01503011A (ja) | キャッシュマネッジメントシステムを含むデジタルデータ処理システム用汎用プロセッサユニット | |
| US4189772A (en) | Operand alignment controls for VFL instructions | |
| EP0772819B1 (en) | Apparatus and method for efficiently determining addresses for misaligned data stored in memory | |
| JPH09138778A5 (ja) | ||
| EP0360553B1 (en) | Buffer storage system | |
| EP0159712B1 (en) | Control means in a digital computer | |
| JPH02287626A (ja) | パイプライン方式の分岐命令制御装置 | |
| JPS62102344A (ja) | バツフア・メモリ制御方式 | |
| JPS6112289B2 (ja) | ||
| JPH02304650A (ja) | パイプライン方式のマイクロプロセッサ | |
| US6789185B1 (en) | Instruction control apparatus and method using micro program | |
| JPS6027945A (ja) | 命令取出装置 | |
| JPH0546475A (ja) | バツフア記憶制御方式 | |
| JPS6047618B2 (ja) | 情報処理装置 | |
| JP2673041B2 (ja) | 命令実行制御方式 | |
| JP2680909B2 (ja) | 緩衝記憶装置 | |
| JPS61264455A (ja) | 主記憶一致制御方式 |