JP2756546B2 - デジタルデータ処理システムに使用される処理装置 - Google Patents

デジタルデータ処理システムに使用される処理装置

Info

Publication number
JP2756546B2
JP2756546B2 JP63502144A JP50214488A JP2756546B2 JP 2756546 B2 JP2756546 B2 JP 2756546B2 JP 63502144 A JP63502144 A JP 63502144A JP 50214488 A JP50214488 A JP 50214488A JP 2756546 B2 JP2756546 B2 JP 2756546B2
Authority
JP
Japan
Prior art keywords
signal
data
source
control signal
source data
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 - Fee Related
Application number
JP63502144A
Other languages
English (en)
Other versions
JPH01502941A (ja
Inventor
アンドリュー エス オルシン
ロバート エム スープニック
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
DEIJITARU EKUITSUPUMENTO CORP
Original Assignee
DEIJITARU EKUITSUPUMENTO CORP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by DEIJITARU EKUITSUPUMENTO CORP filed Critical DEIJITARU EKUITSUPUMENTO CORP
Publication of JPH01502941A publication Critical patent/JPH01502941A/ja
Application granted granted Critical
Publication of JP2756546B2 publication Critical patent/JP2756546B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/226Microinstruction function, e.g. input/output microinstruction; diagnostic microinstruction; microinstruction format

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Complex Calculations (AREA)
  • Executing Machine-Instructions (AREA)

Description

【発明の詳細な説明】 発明の背景 1.産業上の利用分野 本発明は一般にデジタルデータ処理システムの分野に
関するものである。
2.従来の技術 標準的なデジタルデータ処理システムには3つの基本
的要素すなわち、プロセッサ要素、記憶要素、ならびに
入出力要素が含まれている。記憶要素はアドレッシング
可能な記憶場所に情報を記憶する。この情報にはデータ
とそれを処理するための命令の両方が含まれている。プ
ロセッサ要素には、単数又は複数のデジタルデータ処理
装置すなわち「プロセッサ」が含まれており、この各々
が情報を記憶要素から自らのところまで転送させたり又
は取出させたりし、入情報を命令又はデータのいずれか
として解釈し、そのデータを命令に応じて処理する。そ
の結果は次に、記憶要素内のアドレッシングされた場所
に記憶される。
入出力要素は又、システム内に情報を転送しそこから
処理済データを得るために記憶要素と交信もする。入出
力要素を含むユニットは通常プロセッサ要素がそれに供
給する制御情報に従って動作する。制御情報は、入出力
装置が実行すべきオペレーションの定義づけをする。入
出力装置が実行すべきオペレーションの1つのクラスは
少なくともユーザー情報すなわちユーザープログラムに
より用いられる情報を入出力装置と記憶要素の間で転送
することである。入出力要素を含む標準的ユニットは、
例えばプリンタ、テレタイプライター、ビデオ表示端末
装置を含み、さらにはディスク又はテープ記憶装置も含
まれていてもよい。
入出力装置として機能する以外に、ディスク記憶装置
及び時としてテープ記憶装置は記憶要素の1部としても
機能することができる。特に、記憶要素は標準的に、比
較的迅速にプロセッサにその内容をアクセスできるが一
般にコストの高い記憶装置である1つの主記憶機構を含
んでいる。最近の主記憶機構は標準的にMOS又はバイポ
ーラ半導体技術を用いて作られており、1メガバイトの
数分の1から数十メガバイトの記憶を提供することがで
きる。
プロセッサは、複数の回路を含み、システム内の他の
ユニットと通信するのを許可するインタフェース回路
と、処理が実際に起こるデータ経路回路と、及び、処理
に応答してデータ経路回路及びインタフェース回路を制
御する制御回路と、を含む。プロセッサは、もしプロセ
ッサが仮想の(virtual)アドレッシング及びキャッシ
ュ(cathe)メモリを支持するならば、メモリ管理オペ
レーションを実行する回路も含んでもよい。データ経路
回路は、典型的に、一般目的のレジスタのセットと、一
時レジスタのセットと、ワーキングレジスタのセット
と、データを格納し得る全てのものと、及び、データの
数値及び論理オペレーションを実行する数値及び論理回
路と、を含む。
典型的なインストラクションは、オペレーションコー
ド及び/またはそれ以上のオペランドスペシファイアー
を含む。オペランドスペシファイアーは、データを含ん
でもよいが、一般に、プロセスされるべきデータを含む
データ処理システム内のロケーションをスペシファイす
る。オペレーションコードは、データがどのように処理
されるべきであるかを定める。オペランドスペシファイ
アーは、プロセスされるべきデータを含むようにデータ
経路の外の、メモリ、入力/出力ユニット、一般目的レ
ジスタ、あるいは、他のプロセッサレジスタ内のロケー
ションを識別してもよい。一時レジスタ及びワーキング
レジスタは、インストラクションにおいて識別されない
が、処理されるべきデータを一時的に記憶する状況で、
特にデータがプロセッサの外からのものである場合に、
使用される。更に、いくつかのインストラクションの実
行は、数値及び論理回路を通していくつかのサイクルを
要求し、各サイクルが中間結果を生じる状態であり、そ
して、一時レジスタは、特に、中間結果を格納するよう
に使用されてもよい。処理の後で、処理されたデータ
は、最終格納ロケーションに伝達される以前に、ワーキ
ングレジスタ内に格納され、ワーキングレジスタは、ま
た、一般目的レジスタあるいはメモリであってもよい。
各処理サイクルにおいて、制御回路は、データ経路内
のレジスタと数値及び論理回路とを制御するマイクロイ
ンストラクションを発する。典型的なマイクロインスト
ラクションにおいて、制御回路は、3つのロケーション
の識別を与えるように要求され、2つはプロセスされる
べきデータを与え、そして、第3のものは格納のために
データを受け取る。これまで、マイクロインストラクシ
ョン内のインフォメーションを与えることは、全ての3
つのロケーションについてマイクロワードフィールドを
明確に要求していた。それゆえ、全ての3つのフィール
ドが制御回路からワーキングレジスタにフィールド内の
インフォメーションを移送するように接続が要求され
る。更に、全ての3つのレジスタについてマイクロイン
ストラクションフィールドを明確に与えることは、ま
た、該フィールドを発生させる制御回路内の回路を要求
する。マイクロプロセッサにおいて、回路間の接続の数
を最小化することが好ましく、また、マイクロプロセッ
サを形成する回路の数を最小化することが好ましい。
発明の概要 本発明は、デジタルデータ処理システムに使用される
新しいプロセッサを提供する。
プロセッサは、オペレーションの結果についての宛先
(destination)、すなわち、オペレーションの結果が
書き込まれるロケーションが、処理されるべきオペラン
ドについての2つの可能なソースロケーションと、及
び、宛先オペランドを定めるオペランドスペシファイア
ーに値が関連されているカウンタの現在値に基づいて、
決定されるのを許可する回路を含む。これは、制御マイ
クロインストラクション内で要求されるビット数を大い
に減少させる。
図面の簡単な説明 本発明は、添付のクレーム中に特徴と合わせて指摘さ
れている。本発明のもつ上述の及びその他の利点は、添
付の図面と合わせて以下の説明を参照することによりよ
り良く理解できるものと思われる。なお図中: 第1A図は、本発明を内含するデジタルデータ処理シス
テムの全体のブロックダイヤグラムであり、第1B図は、
第1A図に示されているシステム内で用いられるプロセッ
サの組織的ブロックダイヤグラムである。
第2図は、第2A図から第2D図までを含むもので、本発
明を理解するのに役立つタイミングダイヤグラムであ
る。
第3A図、第3B図及び第3C図は、特にデータ経路を通し
ての情報の伝送に関する第1B図に示されているプロセッ
サの一部分のブロックダイヤグラムである。
第4A図は、詳細なブロックダイヤグラムであり、第4B
−1図及び第4B−2図は、特に仮想アドレスの物理アド
レスへの変換に関する第1図に示されているプロセッサ
の一部分のより詳細な回路図である。
第5図は、特にキャッシュ記憶機構からのデータ検索
に関する第1B図に示されているプロセッサの一部分の詳
細なブロックダイヤグラムである。
第6図は、特にシステムのその他の部分との転送を制
御するための回路に関する第1B図に示されているプロセ
ッサの一部分の詳細なブロックダイヤグラムである。
1実施態様の詳細な説明 全体的説明 第1図を参照すると、本発明を内含するデータ処理シ
ステムは、基本要素として中央演算処理装置CPU10、記
憶機構11及び単数又は複数の入出力サブシステム12(1
つの入出力サブシステムが第1図に示されている)を含
んでいる。母線13がCPU10、記憶機構11そして入出力サ
ブシステム12を並列に相互接続している。CPU10は、記
憶機構11内のアドレッシング可能な記憶場所に記憶され
ている命令を実行する。命令は、同様に記憶装置内のア
ドレス可能な場所に記憶されているオペランドについて
実行すべきオペレーションを識別する。命令及びオペラ
ンドは必要に応じてCPU10により取出され、処理済デー
タは記憶機構11内に記憶するために戻される。CPU10は
又、入出力サブシステム12に制御情報を伝送し、記憶機
構11へのデータの伝送又はそれからのデータ検索といっ
た選択されたオペレーションをこれらのサブシステムが
実行できるようにする。かかるデータには、記憶機構11
に伝送されうる命令又はオペランド或いは記憶又は表示
のため記憶機構11から検索される処理済データが含まれ
ていることが考えられる。
操作鍵盤機構14はオペレータのインターフェイスとし
て用いられる。これによりオペレータは、データを検査
し預けたり、CPU10のオペレーションを停止させたり又
は一連の命令を通してCPU10をステップしたり、又それ
に応えてCPU10の応答を決定したりすることができる。
又これによりオペレータはブートストラップ手順を用い
て、システムを初期値設定し、データ処理システム全体
についてさまざまな診断テストを行なうこともできる。
データ処理システムには、ディスク及びテープ式二次
記憶装置、テレタイプライター、ビデオ表示端末装置、
ラインプリンタ、電話及びコンピュータネットワークユ
ニットなどを含む、さまざまなタイプの入出力装置20が
含まれるものと考えられる。これらのユニットは全て単
数又は複数の制御装置22を通って装置母線21を通して母
線13と連絡している。制御装置22、それに接続されてい
る装置母線21及び制御装置と連絡している入出力装置22
が、1つの入出力サブシステム12を構成する。
記憶機構11は母線13及び複数のアレイ17に直接接続さ
れている記憶機構制御装置15を含んでいる。アレイ17に
は、情報が記憶されるアドレス可能な記憶場所が複数含
まれている。記憶機構制御装置15はCPU10又は入出力サ
ブシステム12から母線13を通して転送要求を受けとる。
母線13を通して伝送できる転送要求にはいくつかのタイ
プがあり、一般に次の2つのカテゴリに分けられる。1
つのカテゴリーでは、情報は1記憶場所内に書き込まれ
るか又は記憶され、もう1方のカテゴリーでは、情報は
記憶場所から検索又は読みとられる。
第1図に示されているシステムは又、母線13及び記憶
機構制御装置15と接続し、CPU10により記憶機構11に向
けられる書込み転送要求を代行受信する書込みバッファ
23をも含んでいる。このシステムにおいて記憶機構制御
装置15は、CPU10又は入出力制御装置22のいずれかによ
り母線13を通して伝送される書込み要求に応答しない。
特に、書込みバッファ11は、書込まれるべきデータとそ
のデータが記憶されるべきアレイ17内の場所を識別する
関連アドレスの両方を含む書込み情報を緩衝する。記憶
機構制御装置が書込みオペレーションを受け入れること
ができる場合、書込みバッファは、専用母線24を通して
アドレス及び付随するデータを記憶機構制御装置15へ伝
送し、この制御装置はアレイ17がアドレスにより識別さ
れた場所にデータを記憶できるようにする。こうして、
母線13を通してのCPU10による書込みデータの伝送率が
高すぎて記憶機構11が受け入れられなくなった場合、書
込みバッファ23は、記憶機構11が受入れできるようにな
るまで要求を緩衝することができる。記憶機構制御装置
は、CPU10又は入出力制御装置22からの読みとり要求に
応えこれに対して読みとりデータを戻すため、直接母線
13にも接続されている。
当業者は、第1図に示されているように単一プロセッ
サシステム内で書込みバッファ23を用いると有利である
と考えるであろうが、これはマルチプロセッサシステム
(図示されておらず)内で用いられるのが最も有利であ
る。マルチプロセッサシステムにおいては、記憶機構11
は数多くのCPU及び結びつけられた入出力システム12か
ら読取り及び書込み要求を受けることになる。書込みオ
ペレーションを実行するのを待ってCPU10による処理が
遅れるのを避けるため、書込みバッファ23は、書込みア
ドレス及びデータをとり、CPU10は処理を再開すること
ができる。
書込みバッファにはさらにCPU10からの母線13を通し
ての読取り要求を監視するための回路が含まれている。
自ら緩衝しておりかつまだ記憶機構11に転送していない
データを識別する読取り要求が母線13を通して伝送され
たことを確認した場合、書込みバッファ23はその専用母
線24を通して、記憶機構制御装置がその要求に応えない
よう抑制する。その代りに、書込みバッファ23は母線13
を通して要求されたデータを転送し読取りオペレーショ
ンを完了する。
第1図に示されているシステムには又CPU10の制御の
下で仲裁(任意指定)オペレーションを実行してシステ
ム内に複数ある場合母線13に対するさまざまな入出力サ
ブシステムのアクセスを調節するようなシステム制御回
路25も含まれている。
CPU10は、プロセッサ30及びオプションの浮動小数点
プロセッサ31を含んでいる。標準的に言ってそうである
ように、浮動小数点プロセッサは1つのオプションであ
り、本発明に基づいて作られたCPU又はデジタルデータ
処理システム10内に必ずしもなくてもよい。浮動小数点
プロセッサには、選択されたタイプのデータすなわち浮
動小数点書式のデータについての命令を処理するために
最適化されている回路が含まれている。標準的には、プ
ロセッサ30は同じデータを処理することができるが、処
理の実行により時間がかかる。
システム内で用いられる1つのプロセッサ30の詳細な
機能的ブロックダイヤグラムは第1B図に示されている。
第1B図を参照すると、プロセッサ30には、母線13のさま
ざまな制御ライン(集合的に13Aとして示されている)
に接続し以下に記されているように母線のさまざまなラ
インを通って信号を送受するような母線インターフェイ
ス回路33が含まれている。この母線インターフェイス回
路は、キャッシュ35、データ経路36、記憶域管理装置37
及びプロセッサ制御回路40へ及びこれらからの信号を転
送する内部IDAL母線34にも接続している。プロセッサ30
の1実施態様についての母線インターフェイス回路33が
以下に第6図と関連づけて説明されている。
数多くのレジスタもこの内部IDAL母線34に接続され、
母線インターフェイス回路33の制御の下で母線13のDAL
ライン50と内部IDAL母線34の間でデータを転送する。限
定的に言うと、母線インターフェイスユニット33の制御
の下で、書込みデータレジスタ250及び書込みアドレス
レジスタ251はそれぞれ、書込みデータ及びこの書込み
データが記憶される記憶機構11又は入出力装置12内の場
所のアドレスを受けとる。以下に説明されているよう
に、適当な時点で、母線インターフェイスユニット33は
これらのレジスタの中味がマルチプレクサ253を通してD
ALライン50上に伝送され書込みオペレーションが実行さ
れうるようにする。同様に、母線インターフェイスユニ
ット33の制御の下で、読取りアドレスレジスタ252は読
みとられるべきデータを含む場所のアドレスを受けと
る。適当な時点で、母線インターフェイスユニット33は
読取りアドレスレジスタ252の中味がマルチプレクサ253
を通してDALライン50上に結合(カップリング)され読
取りオペレーションが実行されうるようにする。読みと
りデータは入力レジスタ253内で、同様に母線インター
フェイスユニット33の制御の下でラッチング(保持)さ
れる。母線インターフェイスユニット33は入力レジスタ
254の中味が、RCV DAT受信のデータ信号として内部IDAL
母線34上に結合(カップリング)されうるようにする。
プロセッサ制御回路40は記憶機構11から検索されたプ
ログラム命令を復号し、連続処理サイクルにてデータ経
路36が、その命令を実行するのに必要とされる演算論理
オペレーションを行なうことができるようにする。デー
タ経路36は処理すべきデータを記憶するための1組のレ
ジスタ255と処理を行なうための演算論理回路を含んで
いる。データ経路36は第3A図及び第3B図を参照しながら
以下にさらに詳細に説明されている。
プロセッサ30の1実施態様は仮想アドレスを用い、仮
想アドレスを物理アドレスに変換するための仮想アドレ
ス変換回路37を提供する。仮想アドレス変換回路には、
プロセッサ30内のその他の回路特にデータ経路36からの
仮想アドレスを受けとる1組の原始レジスタ257及びい
くつかの変換情報を含む変換バッファ260が含まれてい
る。変換は必要に応じてプロセッサ制御回路40の制御下
で行なわれる。物理アドレスは、変換回路37からマルチ
プレクサ261を通して内部IDAL母線34上に結合される。
データ経路36には同様に、物理アドレスが含まれていて
もよく、マルチプレクサ261のための第2の原始入力を
提供する。プロセッサ制御回路40はマルチプレクサ261
を制御する。
キャッシュ記憶機構35はCPU10内の従来の情報記憶回
路である。キャッシュ記憶機構はK.Hwang及びF.Briggs
共著、「コンピュータアーキテクチャーとパラレル処
理」(マグローヒル、1984年)、第2.4節、p98以降、な
らびにV.Hamacher著、「コンピュータ組織」(マグロー
ヒル、1984年)、第8.6節、p306以降に記述されてい
る。データ記憶機構38は複数のブロックの形で組織さ
れ、各ブロックは2つの記憶場所を含んでいる。各々の
記憶場所は1つの情報ワード、すなわち一度に母線13を
通して転送されうる情報量を記憶する。特定の一実施態
様においては、1情報ワードは4バイト又は32の2進数
の情報に相当する。こうして各ブロックは8バイトの情
報を記憶することができる。
第5図と関連づけて以下にさらに詳しく記述されてい
るように、キャッシュ記憶機構35は、仮想アドレス変換
回路により生成された物理アドレスがキャッシュ記憶機
構35内の1アドレスにいつ相当するかを見極めるヒット
/ミス論理回路262を含んでいる。原始レジスタ257から
の仮想アドレスの最低位部分、すなわち1実施態様にお
いてはVA SRCE(8:3)信号は、データ記憶域内の1ブロ
ック及び結びつけられたタグ41入力を選択するためマル
チプレクサ264を通して結合されている。ヒット/ミス
論理回路262は次に、結びつけられたタグ41の入力の中
味が変換された物理アドレスに一致するか否かを決定す
る。このような一致がある場合、ヒット/ミス論理は断
定されたHIT信号を生成し、この信号は母線インターフ
ェイスユニット33に伝送される。母線インターフェイス
ユニット33は断定HIT信号を受けとらない場合、従来の
方法でアドレッシングされた場所の内容を検索するため
母線13を通して1つのオペレーションを使用可能な状態
にする。HIT信号が断定された場合、母線インターフェ
イスユニット33は母線13を通してのオペレーションを使
用可能にせず、その代りにキャッシュデータ記憶域38か
らのデータが内部IDAL母線34を通じてマルチプレクサ26
3を通って伝送されうるようにする。一般にかかるデー
タはデータ経路36に伝送される。
当業者にとっては明白であるように、キャッシュ記憶
機構35内の1ブロックに記憶された情報は、記憶装置11
から受けとられたとき、記憶装置11内に記憶された情報
のコピーである。キャッシュ記憶機構35内の各々のブロ
ックには、その情報をコピーした元の記憶装置11内の場
所を識別するため母線インターフェイス回路36により作
成された内容をもつ結びつけられた1つのタグ41があ
る。さらに、各々のブロックには、そのブロックの内容
がそのタグの識別する場所の事実コピー内にあるか否
か、すなわちそのブロックの内容が失効したものである
か否かを示すため、母線インターフェイス回路によりリ
セット又は消去される失効フラグ42が含まれている。
キャッシュ記憶機構35の一実施態様においてデータ記
憶域38、タグ41及びフラグ42は動的記憶機構である。再
生カウンタ262は、母線インターフェイスユニット33の
制御の下で、再生アドレスを生成し、このアドレスは動
的記憶機構を再生するためマルチプレクサ264を通して
結合させられる。
1つの命令には、データ経路36内のレジスタ内のオペ
ランドの場所を識別するか又は仮想アドレス空間内のオ
ペランドの場所を示すアドレスを識別する単数又は複数
のオペランド規制子が含まれている可能性がある。例え
ば、1980年11月25日付でW.S.Strecher他に対し発行され
た「可変長の命令を実行するための中央演算処理装置」
についての米国特許第4,236,206号を参照されたい。プ
ロセッサ制御回路40はデータ経路と共に各々のオペラン
ド規制子を復号してオペランドの場所を識別し、次にこ
れらを識別された場所から得るべく作業を進める。オペ
ランド規制子はそれ自体そのオペランドを含んでいるこ
とがあり(すなわちオペランド規制子は「リテラル」で
あることができる)、又オペランド規制子は、オペラン
ドを含んでいるものとしてデータ経路のレジスタ(図示
されておらず)の1つを識別することもできる。
代替的には、オペランドは、プログラムの仮想記憶空
間内の1つの場所にあってもよく、オペランド規制子は
この場所の識別方法を示していてもよい。オペランドが
仮想記憶空間にある場合、制御回路40は記憶域管理回路
37が仮想アドレスを物理アドレスに変換できるようにす
る。オペランドの物理アドレスが得られた後、母線イン
ターフェイス33がそのオペランドを得る。これはまずそ
のオペランドがキャッシュ記憶機構35内にあるか否かを
決定する。オペランドがキャッシュ記憶機構内にある場
合、母線インターフェイスはそのオペランドをデータ経
路36へ転送する。一方オペランドがキャッシュ記憶機構
35内にない場合、母線インターフェイス回路33は記憶機
構11に母線13を通して読取り要求を転送しそのオペラン
ドを検索する。全てのオペランドが得られた後、データ
経路36は命令により要求されたオペレーションを行な
う。
オペランド規制子は又、処理済のデータが記憶される
べき場所も識別する。制御回路40及び記憶域管理回路37
は、物理アドレスを決定するため上述のものと同じ方法
で用いられる。処理済のデータを記憶機構11内で記憶し
なければならない場合、母線インターフェイス33は必要
とされる書込みオペレーションを母線13を通して行な
う。さらに物理アドレスがキャッシュ35内の適当なタグ
に担当する場合、母線インターフェイス33はデータがキ
ャッシュ35内に記憶されうるようにする。
母線インターフェイスユニット33には、母線13を通し
てのデータの転送を制御する状態マシン270ならびに、
内部IDAL母線34を通してのデータの転送を制御するIDAL
状態マシン271が含まれている。母線インターフェイス
ユニットはEPP論理回路272をも制御し、一方この回路27
2は浮動小数点プロセッサ31との通信を制御する。母線
インターフェイスユニット33は以下に、第6図と関連づ
けてさらに詳しく説明されている。
母線13を通してのオペレーション 母線13は、それに接続されているさまざまなユニット
間の情報を表わす信号を転送するための数多くのライン
(回線)を含んでいる。特に母線13には、DATデータ及
びADRSアドレス信号を搬送するDAL(31:0)データアド
レスライン50が含まれている。CPU10、限定的にいうと
プロセッサ30が1つの転送を開始させそれをその転送の
ための母線マスターとする場合、プロセッサ30はまずDA
L(31:0)データアドレスライン50を通してADRSアドレ
ス信号を伝送し、転送オペレーションが読みとりオペレ
ーションであるか書込みオペレーションであるかを示す
TR TYPE(2:0)転送タイプの指令信号をライン52を通し
て同時に伝送する。ADRSアドレス信号及びTR TYPE(2:
0)転送タイプ指令信号がおさまることのできるだけの
短かい時間の後、プロセッサ30は次にライン51上でADRS
STRアドレスストローブ信号を断定する。
ADRS STRアドレスストローブ信号が断定されると、母
線13に接続されているその他のユニットは全てADRSアド
レス及びTR TYPE(2:0)転送タイプ指令信号を受けとり
復号する。このときADRSアドレス信号により識別されて
いる場所を含むユニットが、転送のための応答するユニ
ットすなわち子装置(スレーブ)である。転送オペレー
ションが書込みオペレーションであるADRSアドレス信号
が記憶機構11内の場所を識別している場合、書込みバッ
ファー23が子装置である。プロセッサ30がADRS RTRアド
レスストローブ信号を断定してから選択された時間だけ
経過した後、プロセッサ30はADRSアドレス信号及びTR T
YPE(2:0)転送タイプ指令信号をそれぞれのラインから
除去する。
転送されたTR TYPE(2:0)転送タイプ指令信号が書込
みオペレーションを規定している場合、マスターユニッ
トはライン50を通してデータ信号を伝送し、次にライン
53上でDATA STRデータストローブ信号を断定する。子装
置はこのとき、伝送されたデータを受けとりこれを記憶
する。データが記憶されると、アドレッシングされたユ
ニットは、オペレーションがエラー無く完了した場合に
はライン54上でRDY作動可能信号を、又記憶オペレーシ
ョン中エラーが発生した場合にはライン55上でERRエラ
ー信号を断定する。
一方、伝送されたTR TYPE(2:0)転送タイプ指令信号
が読みとりオペレーションを規定している場合、子装置
はアドレス信号により識別された場所からデータを検索
し、これらをDAL(31:0)データアドレスライン50を通
して伝送し、ライン54を通して断定されたRDY作動可能
信号を伝送する。これに応えて、プロセッサ30はデータ
を受けとり、断定されたDATA STRデータストローブ信号
をライン53を通して伝送する。
読みとりオペレーション又は書込みオペレーションの
いずれかにおいて、子装置がRDY作動可能信号又は転送
中にエラーが発生した場合にはERRエラー信号を断定し
た後、プロセッサ30はDATA STRデータストローブ信号を
否定する。それから子装置はRDY作動可能信号又はERRエ
ラー信号を否定し、次にプロセッサ30がADRS STRアドレ
スストローブ信号を否定して転送を完了する。
プロセッサ30以外の、母線13に接続されたユニット
は、母線マスターを構成し、それを通して記憶装置11と
の転送を開始させることができる。入出力サブシステム
12特にその入出力制御装置22は母線マスターになること
ができる。母線マスターとなるために、入出力制御装置
22はライン56を通してDMR直接記憶要求信号を断定す
る。次にプロセッサ30は、ライン57上でDMG直接記憶許
諾信号を断定し、この信号は入出力制御装置22により受
けとられる。この時点で入出力制御装置は、プロセッサ
30に関して以上に記されているものと同じ方法で記憶機
構との転送を開始させる。入出力制御装置は、転送を完
了するまで、DMR直接記憶要求信号を断定された状態に
維持する。こうして入出力制御装置が数多くの転送を要
求する場合、この装置は、転送が完了するまでDMR直接
記憶要求信号を断定された状態に保つことができる。DM
R直接記憶要求信号が断定されている間プロセッサ30は
機能停止状態にある、すなわちプロセッサは母線13のさ
まざまなライン上で信号を監視するがそれ以外いかなる
命令も実行しない。
システムに多数の入出力サブシステム12が含まれてい
る場合、母線マスターとなるべき入出力制御装置22にな
る別々の要求信号はシステム制御装置に伝送され、この
システム制御装置がDMR直接記憶要求信号を断定し、DMG
直接記憶許諾信号の状態を監視する。プロセッサ30がDM
G直接記憶許諾信号を断定したとき、システム制御装置
は入出力装置22の1つを、何らかの優先順位任意決定方
法に従って母線マスターになれる状態にする。
母線13は又、状態信号及び制御信号を搬送するその他
のラインも数多くもっている。ライン60は、システム内
のオペレーションを同期化するのに用いられるCLKクロ
ック信号を搬送する。母線13上のさまざまな信号は、CL
Kクロック信号に呼応してタイミングされている。
ライン61は、2つの機能をもつCCTLキャッシュ制御信
号を搬送する。1986年9月12日に提出されたPaul Rnbin
feld各義の「デジタルデータ処理システムのためのキャ
ッシュ無効化プロトコル」についての米国特許同時係属
出願明細書第908,825号に記されているように、CCTLキ
ャッシュ制御信号は例えば、入出力制御装置が母線マス
ターであり記憶機構11に対する書込みオペレーションを
行なっている場合、この制御装置20により断定される。
入出力制御装置22は、DALデータアドレスライン50上でA
DRSアドレス信号を、ライン52上でTR TYPE転送タイプ信
号を伝送している間、そしてライン51上でADRS STRアド
レスストローブ信号を断定している間、CCTL信号を断定
する。CCTLキャッシュ制御信号が断定され、TR TYPE転
送タイプ信号が記憶機構11への書込みオペレーションを
指示している場合、母線インターフェイス33は、キャッ
シュ入力全てのタグ41の内容をチェックする。母線13の
DALデータアドレスライン50上のADRS信号がタグ41の内
容と一致する場合、母線インターフェイス33はそのキャ
ッシュブロックのためのS失効フラグ42をリセットす
る。
CCTLキャッシュ制御信号も又、読みとりオペレーショ
ン中に要求されたキャッシュ35内にプロセッサがデータ
を記憶しないようにするため、記憶機構11により断定さ
れる。これは、例えば、記憶機構がマルチポート記憶機
構である場合すなわち、それが各々別々の母線を通して
記憶機構11をアクセスする複数のプロセッサにより共用
されており、検索されているデータがこれらのプロセッ
サ全てが使用できる1組のアドレス可能な記憶場所から
のものである場合に、用いることができる。かかるデー
タをキャッシュ35の中に記憶させることは望ましくな
い。これは、他のプロセッサが共用場所の内容を更新す
る可能性があるからである。又更新は母線13を通して行
なわれないので、プロセッサ30により検知されえない。
キャッシュからのこのようなデータをプロセッサ20が使
用した場合、これは記憶機構内の該当する場所の内容と
一致しない可能性がある。このCCTLキャッシュ制御信号
の使用に関連して、記憶機構11は、DALデータアドレス
ライン50を通してそのデータ伝送と同時にCCTLキャッシ
ュ制御信号を断定し、データを除去する時点までこのCC
TLキャッシュ制御信号を断定された状態に維持する。
母線13には又CCR WRT BUF消去・書込み・緩衝信号を
搬送するライン62も含まれている。CLR WRT BUF消去書
込み緩衝信号は、他の方法ではプロセッサ30外部で検出
可能とならないプロセッサ30内部の或る種の条件に呼応
してプロセッサ30により断定される。例えば、プロセッ
サ30は、プロセス文脈を切替えさせる命令を実行してい
るとき或いは業務中断ルーチン又は例外ルーチンを実行
し始めたとき、CLR WRT BUF消去書込み緩衝信号を断定
する。CLR WRT BUF消去書込み緩衝信号は、命令実行中
プロセッサ制御回路40により生成されるマイクロ命令内
のフィールドにより制御される。
CLR WRT BUF消去書込み緩衝信号が断定されると、書
込みバッファ23は、それが記憶機構11内に記憶されるべ
きデータを含んでいるか否かを見極める。含んでいない
場合には、何もしない。しかし書込みバッファ23に記憶
機構11内に記憶すべきデータが含まれている場合には、
このバッファはDMR直接記憶要求信号を断定し、その残
りのデータを記憶機構11内に記憶する試みを続ける。断
定されたDMR直接記憶要求信号に応えて、プロセッサはD
MG直接記憶許諾信号を断定するがこの信号は書込みバッ
ファ23により無視される。又プロセッサは機能停止もす
る。書込みバッファ23は、含まれているデータが全て記
憶機構11内に適切に記憶されてしまうまでDMR直接記憶
要求信号を断定された状態に維持する。記憶中にいかな
るエラーも発生しない場合、書込みバッファ23はDMR直
接記憶要求信号を否定しプロセッサ30が続行できるよう
にする。
記憶機構11への書込み中エラーが発生した場合、書込
みバッファ23はプロセッサに対してエラー信号を送り、
プロセッサ30が現行の文脈中のエラーを見つけ出し修正
するルーチンを処理することができるようにする。エラ
ーが検出される前にプロセッサが文脈を切替えできる状
態にある場合、当初データを生成した文脈を見極めるこ
とは困難となる。エラーの回復は、文脈が識別できる場
合簡単になる。従って、書込みバッファ23は、現行の文
脈からのデータの全てが記憶機構内に適切に記憶される
までプロセッサが文脈を切替えできないようにする。
浮動小数点プロセッサ31での転送 プロセッサ30は、(1)第2A図と関連づけて以下に説
明されているように、実行すべきオペレーションを指示
するため浮動少数点プロセッサ31に浮動小数点命令の命
令コードを転送するため、(2)第2B図及び第2C図と関
連づけて説明されているように処理のため浮動小数点プ
ロセッサ31にオペランドデータが転送されうるようにす
るため、そして(3)第2D図と関連づけして説明されて
いるように浮動小数点プロセッサ31から処理済データを
得るため、浮動小数点プロセッサ31にも接続されてい
る。プロセッサ30及び浮動小数点プロセッサ31は、CP S
TA(1:0)浮動小数点状態信号を搬送するライン70及びC
P DAT(5:0)浮動点データ信号を搬送するライン71とい
う2つのラインセットにより相互接続されている。浮動
小数点プロセッサ31は又、DALデータアドレスライン5
0、CLK信号を受けとるためのライン60、ADRS STRアドレ
スストローブ信号を受けとるためのライン51、RDY作動
可能信号を受けとるためのライン54、ERRエラー信号を
受けとるためのライン55及びDMG直接記憶許諾信号を受
けとるためのライン57を含む、母線13の複数のラインに
も接続されている。CP STA(1:0)浮動小数点状態信号
及びCP DAT(5:0)浮動小数点データ信号は、ライン60
上のCLK信号と同期的に伝送される。
遊び(あき)状態にある間、浮動小数点プロセッサ31
はライン60上のCLK信号と同期的に、ライン70及び71上
の信号の状態をサンプリングする。ライン71のうち少な
くとも1本が断定されたレベル信号を搬送していると
き、浮動小数点プロセッサ31はこれらのライン上の信号
及びライン70上の信号をラッチングする。第2A図を参照
すると、プロセッサ30が浮動小数点プロセッサ31に命令
を伝送する場合、プロセッサ30は、その命令の命令コー
ドの少なくとも一部分を、CLKクロック信号の選ばれた
数の軽い連続音により規定される間隔の間、ライン71を
通してCP DAT(5:0)浮動小数点データ信号として、浮
動小数点プロセッサ31へ伝送する。この間隔中、CLKク
ロック信号の連続音の1つと同期的に、浮動小数点プロ
セッサ31は信号をラッチングし記憶する。この間隔が終
了した時点で、プロセッサ30はライン70及び71から信号
を除去する。
ライン71を介して送られるCP DAT(5:00)浮動小数点
データ信号は、実行されるべき浮動小数点演算を識別す
るのに十分であり、且つ該演算において使用されるオペ
ランドの数をも識別する。ライン71を経由する情報の伝
達と同時に、他の情報がCP STA(1:00)浮動小数点状況
信号としてライン70を介して送られるが、これは浮動小
数点処理に関する他の情報を提供するものである。即
ち、浮動小数点オペランドはデータ・タイプと呼ばれる
幾つかのフォーマットで符号化することが出来、該オペ
ランドのフォーマットに関する情報はライン70を介して
CP STA(1:00)浮動小数点状況信号として送られる。一
実施例においては、オペランドのフォーマットに関する
情報のうちの一部も演算情報と共にライン71を介して送
られる。
演算コードを受信すると、浮動小数点演算処理装置31
はそれを復号して、実行するべき演算と所要のオペラン
ドの数とを判定する。次に、演算処理装置30(演算コー
ド送信に応答)と浮動小数点演算処理装置31(演算コー
ド受信に応答)とは、オペランドがDALデータアドレス
ライン50を介して送られる状態となる。データ・タイプ
情報は浮動小数点演算処理装置31に該オペランドの各々
のフォーマットを判定するために使われる。或るオペラ
ンドフォーマットに関しては、DALデータアドレスライ
ン50を経由する一回の伝送に納まるより多数のビットが
或るオペランドフォーマットに必要とされるので、単一
のオペランドを転送するために複数回の転送が必要とな
る。そこで、データ・タイプ情報は、各オペランドを転
送するのに必要なDALデータアドレスライン50経由の転
送回数も示す。
オペランドは、三つのソース、即ち、メモリー11(第
1図)、キャッシュ35、又はデータ経路36中の演算処理
装置のレジスター(第3A図に示す)のいずれかに格納さ
れる。単一の演算に要する色々なオペランドもこれら三
つのソースのいずれかに格納する事が出来る。しかし、
単一のオペランドを転送するのにDALデータアドレスラ
イン50経由の転送を複数回行なう必要がある場合には、
その転送は普通は全て単一のソースに対して為される。
第2B図は、メモリーからオペランドを回収するべく送信
される信号の状態を示し、第2C図はキャッシュ35又はデ
ータ経路36中のレジスターからオペランドを転送するた
めに送信される信号を示す。即ち、第2B図及び第2C図は
DALアドレスライン50経由で転送を一回行なう信号の状
態を示しているのであり、単一のオペランドのために複
数回の転送を要することがあることを理解するべきであ
る。
第2B図を参照する。若しオペランドがメモリー11にあ
れば、演算処理装置30はその回収をメモリー11から開始
する。即ち、演算処理装置30はADRSアドレス信号をDAL
データアドレスライン50に出力して上記の如くに読み出
し動作を実行し、ADRS STRアドレスストローブ信号を表
明する。その短時間後、演算処理装置30はCP STA(1:0
0)浮動小数点状況信号を二進値0を有するライン70に
出力する、即ち、両方のCP STA(1:00)浮動小数点状況
信号を否定する。更に、演算処理装置30は、CP DAT(5:
00)浮動小数点データ信号をライン70に送信し、そこで
CP DAT(5:4)浮動小数点データ信号は、DALデータアド
レスライン50を介して送信されるデータのうちのどれほ
どの量が該オペランドで使用されるかを示すアドレスア
ライメントコードを包含している。該オペランドがDAL
(5:0)データアドレスライン上の短リテラルであればC
P DAT(0)浮動小数点データ信号が主張され、そうで
なければCP DAT(1)浮動小数点データ信号が主張され
る。
浮動小数点処理装置31は第2A図と関連して上記した手
順で既に演算情報を受信しているので、該装置はオペラ
ンドを受信する状態である。主張されたCP DAT(5:0)
浮動小数点データ信号は、浮動小数点演算処理装置31に
対して、バス13の選択されたライン、特にADRS STRアド
レスストローブ信号を運ぶライン51上の信号をサンプリ
ングする様に指示する。浮動小数点演算処理装置31は、
ADRS STRアドレスストローブ信号を使用して、オペラン
ドがメモリー11から回収されていることを判定する。若
し、それが主張されたCP DAT(5:0)浮動小数点データ
信号を受信する時にADRS STRアドレスストローブ信号が
主張されると、浮動小数点演算処理装置31は、メモリー
11によるライン54上のRDYレディー信号の主張に応答し
てDALデータアドレスライン50上のデータ信号をラッチ
する。演算処理装置30はDAT STRデータストローブ信号
をもって応答して転送を完了させる。
若しメモリー11が主張されたRDYレディー信号の代わ
りに主張されたERRエラー信号を伴う回収要求に応答す
るならば、浮動小数点演算処理装置31はDALデータアド
レスライン50上の送信データをラッチしないことが理解
されるであろう。演算処理装置30は、要求されることの
ある再試行等のエラー回復動作が要求されたならばそれ
を実行し、第2B図に示した動作を繰り返す。
第2C図は、オペランドがキャッシュ35にあるにして
も、或はデータ経路36中のレジスターにあるにしても、
オペランドを演算処理装置30から浮動小数点演算処理装
置31への転送を理解するのに有益なタイミング図である
(第3A図と関連させて後述する)。いずれの場合にも、
該演算処理装置はDALデータアドレスライン50上のデー
タ信号と、第2B図と関連して上記したのと同じ符号づけ
を有するCP DAT(5:0)浮動小数点データ信号とを置
き、CP STA(1:00)浮動小数点状況信号の両方を否定す
る。これらの信号は、演算処理装置30により、選択され
た数のCLKクロック信号の期間中、維持される。その期
間中、浮動小数点演算処理装置31はDALデータアドレス
ライン50上の信号をラッチしている。一オペランドの全
体を転送するためにDALデータアドレスライン50経由の
複数転送が必要な場合には、第2C図に示されているシー
ケンスが反復される。
オペランドのデータタイプが、オペランド全体を転送
するためにDALデータアドレスライン50経由の多重転送
を必要とする様なデータタイプであれば、演算処理装置
30、メモリー11及び浮動小数点演算処理装置31は、オペ
ランド全体が転送されるまで第2B図及び第2C図に示され
ている動作を反復する。
第2B図に示されている動作シーケンスは、下記の相違
点を除いて、第2C図に示されている動作シーケンスと同
様であることが理解されるであろう。CP DAT(5:00)浮
動小数点データ信号が主張された時ADRS STRアドレスス
トローブ信号がライン51上で主張されたならば、浮動小
数点演算処理装置31は、主張されたRDYレディー信号
を、オペランド(又はオペランドの一部分)がその時DA
Lデータアドレスライン50上にあることの表示として利
用する。しかし、CP DAT(5:00)浮動小数点データ信号
が主張された時にADRS STRアドレスストローブ信号が
主張されなければ、浮動小数点演算処理装置31は、CP D
AT(5:00)浮動小数点データ信号の主張を、オペランド
(又はオペランドの一部分)がその時DALデータアドレ
スライン50上にあることの表示として利用する。両方の
場合において、浮動小数点演算処理装置31は、第1の場
合にはRDYレディー信号の受信後に、第2の場合には主
張されたCO DAT(5:00)浮動小数点データ信号の受信後
に、ライン60上のCLKクロック信号と同期してDALデータ
アドレスライン50上の信号をラッチする。
オペランドが転送された後、演算処理装置30及び浮動
小数点演算処理装置31は、浮動小数点演算処理装置31が
結果を送信するべく処理された時演算処理装置30がそれ
を受信する様に処理される状態になる。第2D図は、処理
されたデータを演算処理装置30へ転送するために演算処
理装置30及び浮動小数点演算処理装置31に利用される動
作シーケンスを詳細に示すタイミング図である。処理さ
れたデータは、結果が負であったかゼロであったかを示
すと共に結果に関する他の選択された事実を示す状態コ
ードと、浮動小数点演算処理装置31により実行された計
算の値を表わすデータ信号との両方から成る。
第2D図を参照する。初めに演算処理装置30はライン70
及び71を介して信号コードを送信して、処理されたデー
タを受信出来る状態にあることを示す。一実施例におい
ては、CP STA(1:00)浮動小数点状況信号は両方とも否
定され、CP DAT(3)浮動小数点データ信号は主張され
他は否定される。その後、浮動小数点演算処理装置31は
ライン70及び71を介して送信出来る。
浮動小数点演算処理装置31は、処理されたデータを転
送出来る状態の時、状態コードを表わすCP DAT(5:0)
浮動小数点データ信号と同時に、その効果に対するコー
ドを表わすCP STA(1:00)浮動小数点状況信号を送信す
る。浮動小数点演算処理装置31は、選択された数のCLK
クロック信号の期間中これらの信号を維持し、その後デ
ータ信号をDALデータアドレスライン50上に出力すると
共に、その効果に対するコードをライン70及び71に出力
する。処理されたデータ信号を転送するためにDALデー
タアドレスライン50経由の複数転送が必要である時に
は、浮動小数点演算処理装置31はCLKクロック信号と同
期してそれらを転送する。
浮動小数点演算処理装置31がオペランドを処理してい
る間、結果を演算処理装置30に送信する前に、演算処理
装置30は、入出力サブシステム12がメモリー11との間で
転送を行なうことを許すDMGダイレクトメモリー許諾信
号を主張する事が出来る。演算処理装置30が処理された
データを受信出来る状態であることを該演算処理装置が
表示した後、浮動小数点演算処理装置31はライン57の状
態を監視する。浮動小数点演算処理装置31が処理された
データを戻せる状態である時にDMGダイレクトメモリー
許諾信号がライン57に主張されると、浮動小数点演算処
理装置31は、処理されたデータを戻すことを、DMG信号
が否定された後まで遅延させる。
また、例えばメモリー11からオペランドを検索してい
る時にエラーが発生すると、演算処理装置30は、浮動小
数点演算処理装置31から処理済データを受信したい旨を
示さない。演算処理装置30は浮動小数点演算処理装置31
の動作を打ち切らない;むしろ、演算処理装置30が新し
い演算コードを浮動小数点演算処理装置31に送ると、浮
動小数点演算処理装置31はその演算コードで動作する。
演算処理装置30が処理済データを受信出来る状態である
ことを示す、演算処理装置30からライン70及び71を介し
て送信されるCP STA(1:00)浮動小数点状況信号とCP D
AT(5:00)浮動小数点データ信号とは、浮動小数点演算
処理装置31がそれらを区別し得る様にするため、如何な
る演算コードにも対応していては成らないことが分かる
であろう。
データ経路36 演算処理装置30のデータ経路36を第3A図及び第3B図と
関連させて説明する。第3A図を参照すると、データ経路
36は、GP0ないしGP14で示した15個の汎用レジスターの
組と、TEMP0ないしTEMP15で示した16個の一時レジスタ
ー81組と、W0ないしW7として示した8個の作業レジスタ
ー82の組とを含む複数組のレジスターを含んでいる。ま
た、データ経路36は算術論理ユニット83を含んでおり、
このユニットは、ALU制御回路84からのALU CTRL制御信
号の制御下で、幾つかの出所からのデータに算術演算及
び論理演算を行なう。ALU制御回路84は、下記の通りに
制御回路40(第2図)から提供されるALU OP SEL演算選
択信号によって制御される(第3C図)。算術論理ユニッ
ト83において使われるデータは、レジスター80、81及び
82から、乗算及び除算と関連して使用されるQレジスタ
ー(図示せず)から、演算処理装置30、メモリー11又は
所要のデータがカーシュ内にある場合にはカーシュ35内
の色々なレジスターから、並びに当該技術分野において
周知されている様に該データ処理システム内の他の出所
から、提供される。
算術論理ユニット83は、処理するべきデータを二つの
入力端子、即ちA IN入力端子及びB IN入力端子、を通し
て受信し、制御マイクロワードからのALU CTRL制御信号
に従って該データを処理し、処理済データをW OUTライ
ト出力端子を通して送信する。入力データの出所は全て
ワイヤードOR構成でA IN及びB IN入力端子に接続されて
いる。制御回路40(第1図)からの制御マイクロワード
は、A IN及びB IN入力端子に実際に送信されるべきデー
タの出所と、処理済デターが格納される格納場所とを決
定する。即ち、一実施例においては、A IN入力端子への
データの出所は、組80、81及び82内のレジスターの全て
と、演算処理装置内の選択された雑多なレジスターと、
メモリー11又はキャッシュ35を含む。一方、B IN入力端
子へのデータの出所は、組82のレジスターと、選択され
た他の雑多な演算処理装置レジスターとのみを含む。処
理済データは、若しそうでなければデータの出所となる
かも知れない如何なる場所にも書き込む事が出来る。
従って、専用レジスター80は二組の制御信号、即ち一
組のA EN GPR“A"イネーブル汎用レジスター制御信号
と、一組のW EN GPRライトイネーブル汎用レジスター制
御信号とを受信する。演算論理ユニット83のA IN入力が
汎用レジスターの内容を受信するべき場合には、その汎
用レジスターの内容が算術論理ユニット83のA IN入力端
子に送信されることを可能にするA EN GPR“A"イネーブ
ル汎用レジスター制御信号のうちの対応する一つが主張
される。同様に、算術論理ユニット83の出力が汎用レジ
スター80の一つにロードされるべき場合には、その汎用
レジスターに対応する一つのW EN GPRライトイネーブル
汎用レジスター制御信号が主張される。
一時レジスターの組81の作業レシスターの組82とは同
様の制御信号を受信する。即ち、一時レジスターの組81
は、選択された一時レジスターの内容が算術論理ユニッ
ト83のA IN入力端子へ送られることを可能にするための
一組のA EN TEMP“A"イネーブル一時制御信号を受信す
る。また、一組のW EN TEMPライトイネーブル一時制御
信号は、算術論理ユニット83のW OUT出力端子からの処
理済データが一時レジスターの組81内の選択された一時
レジスターに格納されることを可能にする。
作業レジスターの組82は、選択された作業レジスター
の内容がA IN及びB IN入力端子にそれぞれ転送されるこ
とを可能にするための一組のA EN WR“A"及びA EN WR
“B"イネーブル作業レジスター制御信号を受信する。ま
た、作業レジスターの組82は、算術論理ユニット83から
の処理済データが選択された作業レジスターに格納され
ることを可能にするための一組のW EN WRライトイネー
ブル作業レジスター制御信号を受信する。算術論理ユニ
ット83のA IN及びB IN入力端子及び処理済データを格納
することの出来る格納場所へのデータの他の出所のため
に同様の制御信号(図示せず)が発生される。
第3B図は、第3A図に示した色々なレジスター制御信号
と、図示しない他の制御信号とを発生させる回路の論理
図である。初めに、制御マイクロワードは、算術論理ユ
ニット83のA IN及びB IN入力端子へ転送される信号の出
所を制御する信号と、W OUT出力端子からの信号の宛先
を制御する信号とを定義する三つのフィールドを含んで
いる。即ち、制御信号マイクロワードは、A SEL(5:0)
“A"選択制御信号と、B SEL(3:0)“B"選択制御信号、
及びDEST(1:0)宛先(即ち、ライト)選択制御信号と
を定義するフィールドを含む。
制御回路40(第1図)は、新しい指令の処理を開始す
る時NEW INST新指令信号を主張し、各オペランド・スペ
シファイアーの復号を開始する時にはNXT SPCネクスト
・スペシファイアー信号を主張する。第3B図を参照する
に、制御回路40からのNEW INST新指令信号に応答して、
カウンタ85が初期化される。オペランド・スペシファイ
アーが復号される毎に、制御回路はNXT SPCネクスト・
スペシファイアー信号を主張し、該カウンタのカウント
動作を可能にする。カウンタ85は、復号されているオペ
ランド・スペシファイアーを識別する二進化信号SNスペ
シファイアー数を発生させる。
該SNスペシファイアー数信号に応答して、二つのデコ
ーダ86及び87がそれぞれ出力信号WX EN WSN(Xはカウ
ンタ85から信号が発生される順に0、2、4、7、3、
1である)及びWX EN WSN+1(Xは1、3、5、0、
4、2である)を発生させる。一般に、オペランドは、
デジタルデータ処理システムで算術演算又は論理演算が
為される前にデジタルデータ処理システム以外のどこか
から作業レジスター82内に転送され、WX EN WSN及びWX
EN WSN+1信号は、オペランドがそれぞれの作業レジス
ターにロードされる順番に関連する。しかし、一作業レ
ジスターが提供し得るより多いスペースをデータ項目が
必要とする場合には、その一部はWX EN WSN信号により
特定される作業レジスターにロードされ、残りはWX EN
WSN+1で特定される作業レジスターにロードされる。
例えば、或る指令を実行している際に各オペランドが
単一の作業レジスターに納まるならば、第1オペランド
は作業レジスター82のレジスター0に転送され、第2オ
ペランドはレジスター2に、第3オペランドはレジスタ
ー4に転送されるなど、デコーダ86により特定される順
序で転送される。本書記載の特定の実施例では最大6個
のオペランドが指令実行に使用される。若し各オペラン
ドが二つの作業レジスターを必要とするならば、第1オ
ペランドはデコーダ86により決定されるレジスター0
と、デコーダ87により決定されるレジスター1とに転送
される。
デコーダ90はA SEL(5:00)“A"選択制御信号を受信
し、該制御信号の符号付けに応答して数個のA EN XXイ
ネーブリング信号(XXはGPR0-14、TEMP0-TEMP15、W0-W
7、WSN、WSN+1、及びOTHERを指す。ここで“OTHER"
は、前述のQレジスターを含む、演算処理装置30内の他
の選択されたレジスターに関する)を発生させる。同様
に、デコーダ91はB SEL(3:0)“B"選択制御信号を受信
し、該制御信号の符号づけに応じて数個のB EN XXイネ
ーブリング信号(XXはW0-W7、WSN、WSN+1、及びOTHER
を指す。ここでOTHERは演算処理装置30内の選択された
他のレジスターに関する)をそれぞれの出力信号ライン
に発生させる。
A EN WSNイネーブリング信号は、デコーダ90からのWX
EN WSNイネーブルライトスペシフィアー数信号をゲー
ト制御する一組のゲート・ドライバー100に中継され、
それらが、デコーダ90からのA EN WX信号(Xは0、
2、4、7、3及び1である)を運ぶそれぞれの信号ラ
インに中継されることを許す。斯くして、若しA SEL
(5:00)“A"選択信号に応答してデコーダ90がA EN WSN
イネーブル作業レジスタースペシフィアー数信号を主張
すれば、ドライバー100は、その時デコーダ86により主
張されているW X EN WSN信号を運ぶ信号ライン付勢す
る。ゲート・ドライバー101は、A EN WSN+1信号によ
り制御され、デコーダ87により発生されたWX EN WSN+
1信号に対して同じことを行なう。また、ゲート・ドラ
イバー102及び103は、B EN WSN及びB EN WSN+1イネー
ブリングにより制御され、B EN W0-B EN W7と関連してW
X EN WSN及びWX EN WSN+1信号に対して同じことを行
なう。
また、デコーダ90及び91及びドライバー10-103からの
出力信号はラッチ92及び93に中継される。ラッチ92及び
93は、A LTH HOLD及びB LTH HOLDラッチホールド信号が
否定される時には入力信号の状態をそれぞれの出力端子
に中継し、A LTH HOLD及びB LTH HOLDラッチホールド信
号が主張される時にはそれぞれの信号ラインの状態をラ
ッチする。制御回路40は、それぞれの信号ライン上の信
号が色々なW EN XXライトイネーブリング信号を発生さ
せるのに使用するために安定となった時A LTH HOLD及び
B LTH HOLDラッチホールド信号を主張するので、制御回
路は新しい制御マイクロインストラクションを発生させ
使用する事が出来ることとなり、さもなければデコーダ
90及び91の出力を変化させ信号ライン上の信号を変化さ
せる。
ラッチ92及び93にラッチされた信号はマルチプレクサ
104の入力端子のそれぞれの組に中継される。また、マ
ルチプレクサ104は、デコーダ86からのWX EN WSN信号を
受信する入力端子の第3の組と、否定されるレベルの信
号を受信する入力端子の第4の組とを有する。選択され
た入力端子の組が制御回路40からのDEST(1:0)宛先信
号を受信し、該DEST(1:0)宛先信号は制御マイクロイ
ンストラクションから由来する。二つのDEST(1:0)宛
先信号は4組の入力信号のうちから出力に中継されるべ
き一組を選択し、所要のW EN XX(XXはGPR、TEMP、WR、
及びOTHERを指す)ライトイネーブリング信号を提供す
る。従って、二つのDEST(1:0)宛先信号に応じてライ
トイネーブリング信号が選択されるが、これは、さもな
ければ処理済データの多数の宛先を選択するのに必要と
されるより遥かに少ない信号である。
上記した如く、算術論理ユニット83(第3A図)によっ
て為される演算はALU制御回路84からのALU CTRL信号に
より制御され、該回路84は、演算処理装置30の制御回路
40(第1B図)からのALU OP SEL演算選択信号により制御
される。第3C図を参照するに、ALU制御回路84は、ALU O
P SEL演算選択信号に応答してALU CTRL CODE制御コード
信号を発生させるプログラマブル・論理アレイ回路から
成るデコーダ85を含む。また、デコーダ86は、ALU OP S
EL演算選択信号を受信して、ALU OP SEL演算選択信号の
符号づけに応じてMUL乗算信号又はDIV除算信号を発生さ
せる。
背景として、算術論理回路83は直接に乗算又は除算を
行なわないので、一つの特別の実施例では、プログラム
指令により特定された時には既知の順次加算シフト乗算
アルゴリズムの実施により乗算を行なう。同実施例は、
プログラム指令により特定された時には、既知の順次シ
フト−減算/加算・非復元型除算アルゴリズムの実施に
より除算を行なう。
該乗算アルゴリズムにおいては、制御回路40は、算術
論理ユニット83が加算又は通過演算(通過演算において
は、該算術論理ユニットの一入力端子のデータ信号が出
力端子に送られる)を行なうことを可能にする一連のAU
L OP SEL演算選択信号を発生させ、その結果は前述のQ
レジスター(図示せず)に格納される。該除算アルゴリ
ズムにおいては、ALU OP SEL演算選択信号は、算術論理
ユニット83が加算又は減算を行なうことを可能にし、そ
の結果もQレジスターに格納される。
どの演算が為されるべきか、即ち、乗算プログラム指
令に対して加算又は通過演算を行なうべきか、除算プロ
グラム指令に対して加算又は減算を行なうべきか、とい
うことは、シリーズ中の先の演算の結果の一部に基づ
く。
先の演算の結果が決定された後までの、制御回路40
(第1B図)によるALU OP SEL演算選択信号の発生の遅延
を防止するために、ALU制御回路84は、ALU OP SEL演算
選択信号がMUL又はDIV演算を特定するならばALU CTRL制
御信号のうちの少なくともいくつかを発生させる回路を
包含している。デコーダ85はこれらの信号のうちのいく
つかを発生させて、それらをALU CTRL CODE制御コード
信号として送信し、該信号はマルチプレクサ88の一入力
に中継され、その出力信号は、算術論理ユニット83を制
御するALU CTRL制御信号を構成する。
マルチプレクサ88の第2入力はPRESET CTRL CODEプリ
セット制御コード信号を受信する。先の段落に関して、
乗算及び除算が共に加算ステップを含むので、PRESET C
TRL CODEプリセット制御コード信号は加算演算を特定す
る。若しALU OP SEL信号がMUL演算を特定するならば、A
LU CTRL CODEコード信号は算術論理ユニットの通過機能
を特定する。一方、若しALU OP SEL演算選択信号がDIV
除算を特定するならば、ALU CTRL CODE制御コード信号
は減算を特定する。
第2デコーダ86も制御回路40(第1B図)からALU OP S
EL演算選択信号を受信し、それらがMUL乗算を特定する
時にはMUL乗算信号を主張し、それらがDIV除算を特定す
ることにはDIV除算信号を主張する。MUL乗算及びDIV除
算信号は、マルチプレクサ制御回路87を制御し、該回路
87は、当該技術分野において既知の如くに、為されるべ
き演算を決定する先の結果の一部分を表わすRESULTS信
号を他の回路から受信する。該RESULTS信号、及びデコ
ーダ86からのMUL乗算及びDIV除算信号に応答して、マル
チプレクサ制御回路87は、マルチプレクサ88を制御する
MUX SELマルチプレクサ選択信号を発生させる。
詳しく述べると、若しデコーダ86がMUL乗算信号を発
生させ且つRESULTS信号が加算を実行するべき旨を表わ
しているならば、マルチプレクサ制御回路87はMUX SEL
マルチプレクサ選択信号を発生させるが、該信号は、PR
ESET CTRL CODEプリセット制御コード信号を算術論理ユ
ニット83に中継して該ユニットが加算を行なうことを可
能にする。同様に、若しデコーダ86がDIV除算信号を発
生させ且つRESULTS信号が加算を実行するべき旨を表わ
しているならば、PRESET CTRL CODEプリセット制御コー
ド信号を算術論理ユニット83に中継して該ユニットが加
算を実行することを可能にするMUX SELマルチプレクサ
選択信号が発生させられる。
一方、(1)デコーダ86がMUL乗算信号を発生させ且
つRESULTS信号が通過演算を実行するべき旨を示してい
るか、又は(2)デコーダ86がDIV除算信号を発生させ
且つRESULTS信号が減算を実行するべき旨を示していれ
ば、MUX SELマルチプレクサ選択信号は、マルチプレク
サ88がデコーダ85からのALU CTRL CODE信号を、算術論
理ユニット83を制御するALU CTRL信号としてその出力に
中継することを可能にする。デコーダ86がMUL乗算信号
もDIV除算信号も発生させない時にも、MUL SELマルチプ
レクサ選択信号は、マルチプレクサ88がデコーダ85から
のALU CTRL CODE信号を算術論理ユニット83を制御する
ためのALU CTRL制御信号としてその出力に中継すること
を可能にする。
第3C図に示されている回路は、デコーダ86、マルチプ
レクサ88及びマルチプレクサ制御回路87の適切な選択に
より、先の演算の結果に完全に又は部分的に依存する他
の算術論理ユニット演算と関連して使用することも出来
るものであることが理解されよう。制御回路40は次の演
算のためのALU OP SEL演算選択信号を発生させる前に演
算の結果が決定されるまで待っている必要がないので、
該回路は、算術論理演算間の時間を短縮することを容易
にするものである。
並進用突き合わせ検証回路 メモリー管理回路37のバッファ260 CPU10(第1図)を含むシステムにおいて、各プログ
ラムがメモリースペース全体が割り当てられていると考
えられて仮想メモリー構成が使われているが、それはメ
モリー11が提供する物理的メモリースペースより大きい
ことがある。演算処理装置30が仮想メモリースペース内
の特定の場所にアクセスしなければならない時、仮想の
メモリースペースの所要の部分は必要に応じて物理的メ
モリー11内にシフトされまた該メモリー内から外へシフ
トされ、物理的メモリー11内に無い仮想メモリースペー
スは大量記憶装置(代表的にはディスク格納ユニット)
に格納される。
演算処理装置30の一部、即ちメモリー管理回路37は、
メモリー11内に格納されている並進ページテーブル(図
示せず)上の記入項目を使って、“仮想上のアドレス”
と称する仮想メモリースペース内のアドレスと、物理的
メモリー11内の物理的アドレスとの間で並進を行なわせ
る。仮想メモリーを備えたシステムにおける仮想アドレ
スから物理的アドレスへの並進の手順は周知されている
ので、ここでは説明しない。
仮想アドレスから物理的アドレスへの並進を高速化す
るために、メモリー管理回路37は、並進と関連して最近
に使用された選択された数のページテーブル項目を格納
する並進バッファ260を含む。並進バッファ260の回路は
ブロック図の形で第4A図に示されており、並進バッファ
260のより詳しい論理図は第4B−1図及び第4B−2図に
示されている。
第4A図を参照するに、並進バッファ260は、仮想アド
レスの高位部分を格納する複数の項目を有する内容アド
レス可能メモリー110と、ヒットバッファ111と、ページ
フレーム数格納回路112とを含んでいる。仮想アドレス
の高位部分は仮想メモリースペースにおける“ページ”
を特定するが、ページは所定数の連続する格納場所を有
する。ページフレーム数格納回路は内容アドレス可能メ
モリーと同数の項目を包含している。ページフレーム数
回路の各項目は、内容アドレス可能メモリーの一項目と
関連しており、内容アドレス可能メモリー内の仮想アド
レスの高位部分に対応する物理的アドレスの高位部分又
はページフレーム数を格納する。一実施例においては、
内容アドレス可能メモリー及びページフレーム数格納回
路は共に28個の項目を包含する。
並進バッファ260は保護論理回路113も含んでおり、こ
の回路も28個の項目を含み、その各々が内容アドレス可
能メモリーの一つの項目と関連している。保護論理回路
の各項目は、内容アドレス可能メモリー110内の対応す
る項目の内容によって特定される格納場所の内容に対す
るプログラムのアクセス権を表わす復号された保護コー
ドを格納する。
また、並進バッファ260は、4組のフラグ、即ち、「N
UL最後に使われなかったフラグ」の組114、「TB.V並進
バッファ260妥当フラグ」の組115、「PTE.Vページテー
ブル項目妥当フラグ」の組116、及び「PTE.Mページテー
ブル項目修正フラグ」の組117と、を有する。内容アド
レス可能メモリー110内の各項目は、組114の「NUL最後
に使われなかったフラグ」の一つ、組115の「TB.V並進
バッファ260妥当フラグ」の一つ、組116の「PTE.Vペー
ジテーブル項目妥当フラグ」の一つ、及び組117の「PT
E.Mページテーブル項目修正フラグ」の一つと関連して
いる。「NUL最後に使われなかったフラグ」の組114及び
「TB.V並進バッファ260妥当フラグ」の組115は、並進バ
ッファの動作を制御するために使われる。特に、NLUフ
ラグの組114は、新しいページテーブル項目がメモリー1
1から受信された時などにおける並進バッファ260内の項
目の置換と関連して使用される。直前に使われなかった
並進バッファ260項目のフラグがセットされ、それを新
しい項目と置換する事が出来る。「TB.V並進バッファ26
0妥当フラグ」は、内容アドレス可能メモリー110及びペ
ージフレーム数回路112内の対応する項目が妥当である
こと、即ちそれらを使用し得ること、を示す。
残りのフラグは、メモリー11から検索されるページテ
ーブル項目の一部を形成する・「PTE.Vページテーブル
項目妥当フラグ」116は、対応するページテーブル項目
が妥当で使用し得るか否かを示す。「PTE.Mページテー
ブル項目修正フラグ」117は、対応するページが修正さ
れたか否かを示す;若し或るページが、物理的メモリー
11内の場所が仮想アドレススペース内の他のページのた
めに使われた時に修正されていなければ、それはディス
ク又はテープに格納されない。
演算処理装置30(第1図)は、特定の仮想アドレスを
使ってメモリーにアクセスする時、最初に、並進バッフ
ァ260がその仮想アドレスの高位部分に対応する項目を
内容アドレス可能メモリー110内に有するか否かを判定
する。A VA SRCE仮想アドレスソース信号は、仮想アド
レスの高位部分を表わすが、該信号は内容アドレス可能
メモリー110に送られる。若し内容アドレス可能メモリ
ー110の或る項目がVA SRCE仮想アドレスソース信号に対
応し、且つ「TB.V並進バッファ260妥当フラグ」の組115
内の関連するフラグがセットされた状態となっていて該
項目が妥当であることを示していれば、PET HIT(27:
0)ページテーブル項目ヒット信号のうちの対応する一
つがライン113に主張される。ヒットバッファ111はPTE
HIT(27:0)ページテーブル項目ヒット信号を緩衝し
て、それらを内部タイミング信号に応答して調時する。
若しPTE HIT(27:0)ページテーブル項目ヒット信号の
一つが適切な時に主張されれば、対応するHIT SEL(27:
0)ヒット選択信号が主張される。HIT SEL(27:0)ヒッ
ト選択信号のうちの選択された一つは、ページフレーム
数格納回路112の28個の項目のうちの対応する一つが内
部バス34に転送されることを可能にする。
並進バッファ260は、保護論理回路113も含んでおり、
該回路113は、28項目を含み、その各々は、ページフレ
ーム数格納回路112の対応する項目のページフレーム数
により特定されるページの内容へのプログラムのアクセ
ス権を表わすビットを、復号された形で、格納する。各
ペーシテーブル項目は、ページフレーム数回路112に格
納されているページフレーム数に加えて、演算処理装置
30が動作している、読み出し又は書き込み動作のために
該ページにアクセス出来る最低動作保護レベルモードを
特定する保護フィルードを包含している。デコーダ120
は、該保護フィールドを受信して、復号済保護フィール
ドビットを発生させ、該ビットは、内容アドレス可能メ
モリー110及びページフレーム数回路112の対応する項目
が第4A図に示した並進バッファ260にロードされる時に
保護論理回路に格納される。
詳しく述べると、一実施例は(特権の低下する順に)
核(K)、管理(E)、監視(S)及びユーザー(U)
と称される四つの動作保護レベルモードを設ける。演算
処理装置30が動作特権レベルモードで作動している時に
読み出し又は書き込み動作で或るページにアクセス出来
るならば、演算処理装置30がより高い動作特権レベルモ
ードで動作している時に同じ読み出し又は書き込み動作
のためにアクセスする事が出来る。その実施例では、保
護論理回路113へ格納されるべき、ページテーブル項目
の符号化された保護値と、デコーダ回路120により生成
された対応する復号済ビットの値とは、次の通りであ
る。: 複合された値は8ビットのコードを表わしており、左
側の4ビットは、関連するページフレーム数により特定
される場所から読み出しを行なうことの出来る動作特権
レベルモードを表わし、右側のビットは関連するページ
フレーム数により特定される場所に書き込みを行なうこ
との出来る動作特権レベルモードを表わしていることが
理解されるであろう。各4ビットのグループの中で、ビ
ットは動作特権レベルモードの一つに関連づけられてい
る。詳しく述べると、各4ビットのグループ内で、各ビ
ットは、左から右へ、特権が低下してゆく動作特権レベ
ルモードに関連づけられている。
第4A図に示されている並進バッファ260が仮想アドレ
スを物理的アドレスへ並進ないし翻訳するのに使われて
いる時、VA SRCE仮想アドレスソース信号の内容アドレ
ス可能メモリーへの送信と同時に、他のデコーダ121
は、CUR MODE現行特権レベルモード信号、若し動作が読
み出し動作ならば主張RDリード信号、又は若し動作が書
き込み動作であれば主張WRTライト信号を受信する。CUR
MODE現行モード信号は、演算処理装置30が動作してい
る現行の保護レベル動作モードを特定する。
これに応じて、デコーダ121は現行動作保護レベルモ
ードと共に現行の読み出し又は書き込み動作を特定する
8個のP CODE(7:0)保護コード信号の一つを対応する
信号ライン122上に主張する。即ち、下記の通りに、P C
ODE(7:0)保護コード信号の四つの高位信号の各々は、
読み出し動作と関連して四つの動作保護レベルモードと
関連しており、四つの低位信号は書き込み動作と関連し
て四つの動作保護レベルモードの一つと関連している。
保護論理回路はP CODE(7:0)信号を保護論理113の内
容と比較する。若し主張されたP CODE(7:0)保護コー
ド信号が、保護論理113の項目に格納されている復号済
保護フィールド内の少なくとも一組のビットに対応する
ならば、ACCESS(27:0)アクセス信号の一つが、該項目
と関連するライン123の一つの上に主張される。一方、
若し主張されたP CODE(7:0)保護コード信号が一項目
内の復号済保護フィールドの少なくとも一組のビットに
対応しなければ、いずれのACCESS(27:0)アクセス信号
も主張されない。
ACCESS(27:0)アクセス信号は、対応するHIT SEL(2
7:0)ヒット選択信号とAND論理演算されてNO STALL(2
7:0)信号を発生させるが、その各々は並進バッファの
項目の一つと関連している。演算処理装置30は、NO STA
LL(27:0)信号を使って、並進バッファ260が所要のペ
ージフレーム数を包含しているか否か判定し、更に、若
し包含していれば、該演算処理装置が不十分な動作特権
レベルモードでメモリー11の或るページに対して読み出
し又は書き込み動作を行なおうとしているのか否か判定
する。若しNO STALL(27:0)信号の少なくとも一つが主
張されれば、並進バッファ260項目は所要のページフレ
ーム数を包含しており、演算処理装置30は所要の動作特
権レベルモードを持っている。
第4B−1図及び4B−2図は、第4A図に示された並進バ
ッファ260の色々な回路の一つの項目の部分の詳細な論
理図である。詳しく述べると、内容アドレス可能メモリ
ー110、ページフレーム数回路112、及び保護論理113は
複数の同一の論理記憶セルを含んでおり、各セルは関連
する高位仮想アドレス、ページフレーム数、及び復号済
保護フィールドの一つのビットを格納する。該セルは同
一であるので、回路110、112及び113の各々から唯一の
セルのみを第4B−1図及び第4B−2図に示す。
第4B−1図を参照するに、内容アドレス可能メモリー
110は、演算処理装置30内の回路251(第1B図)からVA S
RCE高位仮想アドレスソース信号の一つ、即ちVA SRCE
(Y)信号を受信するライン132に接続されたCAMセル13
1を含む。回路251は、下記の点を除いてVA SRCE(Y)
信号とほぼ相補的なVA SRCE(Y)COMP信号をライン132
A上に提供する。CAMセル131を含む項目内の他のCAMセル
は他のVA SRCE信号を並列に受信し、該VA SRCE信号の全
ては、内容アドレス可能メモリー110(第4A図)に送信
される仮想アドレスの高位部分全体を構成する。内容ア
ドレス可能メモリー110内の全項目はVA SRCE仮想アドレ
スソース信号を同時に受信する。
VA SRCE仮想アドレスソース信号は、二つの目的のう
ちの一つのために、即ち、並進バッファの項目に書き込
みをするために、又はアドレス並進又は翻訳を得るため
に、内容アドレス可能メモリー110に向けることが出来
る。並進バッファの項目に書き込みをしている間、演算
処理装置30内の他の回路は、仮想アドレスの高位ビット
をVA SRCE仮想アドレスソース信号として送信し、書き
込まれるべき並進バッファ206項目と関連するTBE WRT並
進バッファ260項目書き込み信号を主張する。これに応
じて、セル131の通過トランジスタ133及び133Aがオン状
態となり、ライン132及び132A上の信号を、インバータ1
34及び135から成るフリップフロップへ中継する。若し
ライン132上のアドレスビットが主張されれば(且つそ
のライン132A上の補数ビットが否定されれば)、インバ
ータ134の出力は低レベルでインバータ135の出力は高レ
ベルである。若しライン132上のアドレスビットが否定
されれば、インバータ134の出力は高レベルであり、イ
ンバータ135の出力は低レベルである。
ページフレーム番号回路は、各々セル番号を含むエン
トリー番号も含み、その一つのセル140は第4B−1図に
描かれる。TBE WRT変換バッファ260書込み信号が、変換
バッファ260エントリーへの書込み動作を示して、入力
されれば、パストランジスタ142はオンして、プロセッ
サ30内の他の回路からのライン143上のPFN(Z)ページ
フレーム番号(Z)信号がインバータ144及び145よりな
るフリップフロップへ供給される。PFN(Z)信号の状
態に応じたインバータ144及び145からの信号状態は、イ
ンバータ134及び135からの信号状態と同様である。PFN
(Z)ページフレーム番号(Z)信号は、セル141を含
むエントリー内に記憶された1ビットのページフレーム
番号である。
同様に、保護ロジックは、各々複数のセルを含む複数
のエントリーを含み、その内セル151が第4B−2図に描
かれる。TBE WRT変換バッファ260書込み信号が入力され
れば、パストランジスタ152はオンし、デコーダ回路120
からのPROT DEC(W)復号保護コード信号がインバータ
154及び155よりなるフリップフロップへ供給される。PR
OT DEC(W)復号保護信号の状態に応じたインバータ15
4及び155の状態は、インバータ134及び135からの信号状
態と同様である。
PTE.V及びPTE.Mページテーブルエントリーバリッド及
び修飾フラッグ116及び117は、各々同様の構造であるセ
ル161及び171を含む。フラッグ116はパストランジスタ1
62を含み、これは入力されたTBE WRT変換バッファ260エ
ントリー書込み信号によりオンされた時、プロセッサ30
内の他の回路からのPTE.V WRTページテーブルエントリ
ーバリッド書込み信号をインバータ164及び165からなる
フリップフロップに記憶させるために供給する。また、
フラッグ117はパストランジスタ172を含み、これは入力
されたTBE WRT変換バッファエントリー書込み信号によ
りオンされた時、PTE.M WRTページテーブルエントリー
修飾書込み信号をインバータ174及び175からなるフリッ
プフロップに記憶させるために供給する。
NLUフラッグ114(第4A図)は変換動作には関与せず、
第4B−1図及び第4B−2図には描かれない。TB.V変換バ
ッファ260バリッドフラッグは、PTE.Vページテーブルエ
ントリーフラッグと同様の構造で、関連するものであ
り、これ以上議論されることはない。
上述の如く、第4B−1図及び第4B−2図に描かれた回
路も、仮想アドレスの物理的アドレスへの変換に関連し
て使用される。以下において、仮想アドレスの高次部分
はセル131(第4B−1図)を含むエントリーに記憶さ
れ、対応するページフレーム番号がセル141を含むエン
トリーに記憶され、デコーダ151からの対応する復号保
護フイールドビットはセル151を含むセルに記憶され、
対応するPTE.Vページテーブルエントリーフラッグがペ
ージテーブルエントリーが有効であることを示すように
調整されることとされる。
第4B−1図を参照して、変換の直前において、プリチ
ャージ電圧がライン143、PTE HIT(X)ページテーブル
エントリー信号を伝送するライン181及びACCESS(X)
アクセス信号を伝送する(第4A図のライン123に含まれ
る)ライン183に供給され、両ラインは変換バッファ内
で連結される。プリチャージ時間の間、仮想アドレスソ
ース回路251(第1B図)からのVA SRCE(Y)信号及びVA
SRCE(Y)COMP信号の両方は、(低電圧状態におい
て)打ち消されて、トランジスタ136及び138をオフし、
プリチャージ動作の実行を許可する。また、低電圧は、
エントリーにも連結されるHIT SEL(X)ヒットセレク
ト信号を伝送するライン182に供給される。ライン181は
連想記憶メモリ110の一つのエントリー内の全てのセル1
31に接続され、ライン182はページフレーム番号回路112
の連結されたエントリー内の全てのセル141に接続さ
れ、ライン183は保護ロジック回路113の連結されたエン
トリー内の全てのセル151に接続される。
ラインがプリチャージされた後、プロセッサ30内の他
の回路はVA SRCE仮想アドレスソース信号を連想記憶メ
モリ110(第4A図)へ伝送する。セル131は、ライン132
上の信号状態とインバータ134及び135の状態とを比較す
るトランジスタ136から139よりなり、エントリーが書込
まれた時に既にラッチされたライン132上の信号状態を
示すコンパレータを含む。即ち、インバータ134及び135
よりなるフリップフロップによってラッチされたVA SRC
E(Y)仮想アドレスソース信号が既に入力されていた
ならば、インバータ134の出力はローとなり、インバー
タ135の出力はハイとなる。このため、インバータ134は
トランジスタ139をオフし、インバータ135はトランジス
タ137をオンする。VA SRCE(Y)信号が現在入力される
ならば、トランジスタ138はオンし、インバータ140はト
ランジスタ136をオフする。トランジスタ136及び139が
オフされているため、ライン181及び接地間には電流経
路は無い。このため、ラインは、プリチャージ電圧レベ
ルのままとなる。
同様に、インバータ134及び135よりなるフリップフロ
ップによってラッチされたVA SRCE(Y)仮想アドレス
ソース信号が既に打ち消されていたならば、インバータ
134の出力はハイとなり、インバータ135の出力はローと
なる。このため、インバータ134はトランジスタ139をオ
ンし、インバータ135はトランジスタ137をオフする。変
換の間VA SRCE(Y)信号が現在打ち消されるならば、
トランジスタ138はオフし、インバータ140はトランジス
タ136をオンする。トランジスタ137及び138がオフされ
ているため、ライン181及び接地間には電流経路は無
い。この状態では、ライン181もまた、プリチャージ電
圧レベルのままとなる。
インバータ134及び135よりなるフリップフロップによ
ってラッチされたVA SRCE(Y)仮想アドレスソース信
号が既に入力されていたならば、トランジスタ139はオ
フとなり、トランジスタ137はオンとなる。変換中、VA
SRCE(Y)信号が現在打ち消されているならば、トラン
ジスタ138はオフとなり、トランジスタ136はオンとな
る。これにより、電流経路がトランジスタ136及び137を
介してライン181及び接地間に存在し、それでライン181
上の電圧が接地電圧レベルに低減される。もし以前にラ
ッチされたVA SRCE(Y)仮想アドレスソース信号が打
ち消され、変換中に入力されているならば、電流経路が
トランジスタ138及び139を介してライン181及び接地間
に存在し、そのためライン181上の電圧はまた接地電圧
レベルに低減される。
従って、もし変換中のVA SCRE(Y)仮想アドレスソ
ース信号の状態がエントリー書込み時のものと同一であ
るならば、セル131はライン181を接地電圧レベルから分
離して、プリチャージ電圧レベルに保つ。即ち、セル13
1において2状態が同一ならば、セルはPTE HIT(X)ペ
ージテーブルエントリーヒット信号が入力されるのを許
可する。他方、2状態が異なれば、ライン181は低電圧
レベルに引き下げられる。即ち、PTE HIT(X)ページ
テーブルエントリーヒット信号が打ち消される。連想記
憶メモリ110のエントリー内の全てのセル131がライン18
1に接続されているならば、入力されるPTE HIT(X)ペ
ージテーブルエントリーヒット信号のために、状態はそ
れらの全てにマッチしなければならない。
PTE HIT(X)信号が入力されると、ヒットバッファ1
11内のトランジスタ184はオンされる。PH2フェース2ク
ロック信号が次ぎに入力される時、トランジスタ185も
オンされ、効果的にライン183は正電圧供給Vddに接続
される。入力されたHIT SEL(X)ヒットセレクト信号
は、ページフレーム番号回路112内のセル141中のトラン
ジスタ186をオンして、セル141に記憶されたページフレ
ーム番号のビット状態を示すバッファトランジスタ187
の出力をライン143に供給する。出力は、アンプ190によ
って増幅されてバス34の一ラインに供給される。
バッファトランジスタ187の出力は、セル141に記憶さ
れたページフレーム番号のビット状態を示す。即ち、ビ
ットが打ち消されれば、インバータ144はトランジスタ1
87をオンする。HIT SEL(X)ヒットセレクト信号がオ
ンされているトランジスタ187に入力される時、電流経
路はライン143からトランジスタ186及び187を介して接
地側に形成され、PFN(Y)ページフレーム番号(ビッ
トy)信号を無効とする。他方、以前に記憶されたビッ
トが入力されると、インバータ144はトランジスタ187を
オフし、その結果、例えトランジスタ186がオンして
も、プリチャージライン143は高電圧レベルに維持さ
れ、PFN(Y)信号は入力される。
一時的に、VA SRCE仮想アドレスソース信号の連想記
憶メモリへの伝送に伴って、デコーダ121は、P CODE
(7:0)保護コード信号を保護ロジック113へ伝送する。
上記の如く、一実施例においてP CODE(7:0)保護コー
ド信号の内の一つが入力されて、プロセッサ及び起こる
べき(書込み又は読出し)処理の電流保護レベルモード
を確定する。他のP CODE(7:0)保護コード信号は無視
される。
第4B−2図を参照して、保護ロジック113内のセル151
は、セルから伝送されるP CODE(Z)保護コード信号に
よって制御されるトランジスタ156、及びインバータ154
及び155からなるフリップフロップによって制御される
トランジスタ157を含む。2つのトランジスタ156及び15
7は、エントリーと連結するACCESS(X)アクセス信号
を伝送するライン183間に直列に接続される。
トランジスタ157の状態、即ち、それがオン又はオフ
されているかは、インバータ154の出力により、この出
力はまたエントリーが最後に書込まれた時のPROT DEC
(W)保護復号信号の状態に応じている。即ち、PROT D
EC(W)保護復号信号が入力されると、インバータ154
からの出力信号は打ち消され、トランジスタ157はオフ
される。他方、PROT DEC(W)保護復号信号が打ち消さ
れると、インバータ154からの出力信号が入力され、ト
ランジスタ157はオンされる。
同様に、トランジスタ156の状態はP CODE(Z)保護
コード信号の状態に応ずる。P CODE(Z)保護コード信
号が入力されると、トランジスタ156はオンし、一方、
その信号が打ち消されると、トランジスタ156はオフす
る。
トランジスタ156及び157は、ライン183の状態を制御
し、これにより、伝送されたACCESS(X)信号の入力及
び打ち消された状態を制御する。もし両方のトランジス
タ156及び157がオンされると、セル151を介して電流経
路がライン183及び接地間に存在し、従って、ACCESS
(X)信号が打ち消される。他方、トランジスタ156又
は157の一方がオフされると、ライン183及び接地間には
セル151を介する電流経路が存在しない。保護ロジック1
13内のエントリー中の他のセルを介する電流経路が存在
しないと、ACCESS(X)信号は入力される。
セル151は基本的に、インバータ154及び155からなる
フリップフロップによって以前にラッチされ、以前に書
込まれたPROT DEC(W)復号保護信号とアクセス要求中
にデコーダ121によつて供給されたP CODE(Z)信号間
の比較を行う。特に、デコーダ121からのP CODE(Z)
信号が入力され、デコーダ120からの以前にラッチされ
たPROT DEC(W)復号保護信号が無視される場合のみ
に、セル151はACCESS(X)信号を無視し、これによ
り、プロセッサ30が十分に高い特権レベルで動作してい
ないことを示す。
HIT SEL(X)ヒットセレクト信号およびACCESS
(X)信号はANDゲート190に供給される。もしHIT SEL
(X)ヒットセレクト信号及びACCESS(X)信号の両方
が入力されれば、ANDゲート190は変換バッファ260用のN
O STALL(X)信号を発生して、プロセッサ30は、セッ
ト115内のエントリーのTB.V変換バッファ260バリッドフ
ラッグ及びセット116内のPTE.Vページテーブルエントリ
ーバリッドフラッグが下記のように調整されることを示
す。他方、NO STALL信号が入力されないと、プロセッサ
30内の他の回路は正確な動作を行う。特に、HIT SEL
(X)ヒットセレクト信号が入力されないと、他の回路
はメモリ11(第1図)からページテーブルエントリーを
得て、変換を行う。一時的に、メモリ11から得られたペ
ージテーブルエントリーは、NLU最後に使用されないフ
ラッグ114を使用して、変換バッファ260(第4A図)内の
エントリーへ書込まれる。
他方、ACCESS(X)信号が打ち消されると、インバー
タ191は入力信号をANDゲート192の一方の入力側に供給
する。対応するHIT SEL(X)ヒットセレクト信号が入
力されて、連想記憶メモリ110内の一致を示すと、ANDゲ
ート192は動作してACC VIOL(X)アクセス侵害信号を
入力して、プロセッサ30は要求されたアクセス動作を行
うための要求オペレーティング保護レベルモードを有さ
ないことを示す。プロセッサは、アクセス侵害に応じて
従来のリカバリー動作を行うことが出来る。
記載された如く、NO STALL(X)信号が入力される
時、プロセッサ30はまた、TB.V変換バッファ260バリッ
ドフラッグ115及びPTE.Vページテーブルエントリーバリ
ッドフラッグ116(第4A図)の状態も使用する。フラッ
グの構造が類似しているので、PTE.Vページテーブルエ
ントリーバリッドフラッグ116についてのみ詳細に記載
する。第4B−2図を参照して、変換バッファ260内のペ
ージテーブルエントリーが有効であるならば、変換バッ
ファ260エントリーが書込まれた時、PTE V WRTページテ
ーブルエントリーバリッド書込み信号が入力され、これ
により、インバータ164及び165よりなるフリップフロッ
プをセットし、それでPTE.Vページテーブルエントリー
バリッドフラッグをセットする。その状態において、イ
ンバータ164の入力は高電圧レベルであり、その出力は
低電圧レベルである。
この状態において、インバータ166はトランジスタ167
を調整中に維持する。変換バッファ260エントリーと連
動する入力されたHIT SEL(X)ヒットセレクト信号
は、ライン169及び接地間にトランジスタ167と直列に接
続された他のトランジスタ168をオンする。これによ
り、セル161において両方のトランジスタ167及び168が
オンされると、接地レベル信号はライン169に供給され
る。インバータ170は、その信号を高入力PTE V OUTペー
ジテーブルエントリーバリッド出力信号に補足する。
ライン169は、変換バッファ260(第4A図)内の全ての
エントリー中の全てのセル161内のトランジスタ168に対
応するトランジスタに共通に接続される。これにより、
HIT SEL(X)信号が変換バッファ260エントリー内のい
くつかに入力され、PTE.Vフラッグがその変換バッファ2
60エントリーにセットされて、両トランジスタ167及び1
68がオンされると、接地レベル信号がライン169に入力
される。
他方、PTE.Vページテーブルエントリーバリッドフラ
ッグがクリアである、即ち、以前に書込まれたPTE V WR
Tページテーブルエントリーバリッド書込み信号が無視
されると、トランジスタ167はオフされ、これにより、
ライン169は接地から隔離される。ライン169が変換動作
に先立ってプリチャージされると、インバータ170から
のPTE V OUTページテーブルエントリー出力信号は打ち
消される。
PTE.Mページテーブルエントリー修飾フラッグ117は、
PTE.Vページテーブルエントリーバリッドフラッグ116と
同様に構成され、その動作も同様である。しかし、PTE.
Mフラッグは、メモリ11内のページが書込まれる時にの
み入力されるPTE M WRTページテーブルエントリー修飾
書込み信号に応じて調整される。セル171(第4B−2
図)は、PTE.Mページテーブルエントリーフラッグ117の
一つの一実施例を示す。
ページフレーム番号が回路112(第4A図)によって伝
送され、NO STALL信号が発生された後、プロセッサは、
トランジスタ185(第4B−1図)をオフしてPH4クロック
信号を入力し、トランジスタ193をオンするPH2クロック
信号を否定する。トランジスタ193は接地レベル信号を
ライン182に供給して、入力されるHIT SEL(X)信号を
否定する。その後、プロセッサはPH4クロック信号を否
定し、変換バッファ260(第4A図)は他の仮想アドレス
入力可能となる。
仮想アドレスの物理的アドレスへの変換に必要なペー
ジフレーム番号の選択及び伝送と同時に、アクセスする
ために、新たな変換バッファ260はプロセッサが十分な
オペレーティング特権レベルモードで動作しているかど
うかの決定を可能とする。従来の公知の変換バッファで
は、保護フィールドのエンコードされた内容は、ページ
フレーム番号と共に変換バッファから伝送され、その時
に、プロセッサが作動するのに必要なオペレーティング
特権レベルモードを有しているかどうかの決定がなされ
た。プロセッサがアクセスするのに必要なオペレーティ
ング特権レベルモードで動作していなければ、このこと
がプロセッサのアクセス侵害の認知を遅らせていた。
キャッシュロジック 上記の如く、プロセッサ30は、最も最近メモリ11に入
力された少なくともいくつかのデータのコピーを記憶す
るキャッシュメモリ35(第1B図)を含む。その時のデー
タがメモリ11のアドレス位置から発生される時、プロセ
ッサ30は、先ずキャッシュメモリ35がそのアドレス位置
のデータのコピーを含むかどうかを決定する。第5図
は、キャッシュが確定されたデータを含むかどうかを決
定し、また、バスインターフェースユニット33の制御の
下、データをインターナルIDALバス34へ伝送するキャッ
シュメモリ35内の回路の機能ブロック図を示す。
第5図を参照して、キャッシュ35は、一の特定の実施
例において、フラッグセット42A、42B、タッグセット41
A、41B及びデータ記憶エリア38A、38Bに分割される64R
のエントリーを各々含む2個のデータ記憶セット39A及
び39Bを含む。タッグセット41A及び41Bの各エントリー
はまた、各々のタッグセットに記憶されるタッグ情報の
保全性を検査するパリティビットを含む。データ記憶エ
リア38A及び38Bの各エントリーは2ワード、又は8ビッ
トのデータを記憶し、その一ワードは高次ワードで、他
のワードは低次ワードよりなる。
キャッシュメモリ35は、2方向セット連想キャッシュ
として構成され、そこでアドレスの低次部分はデータ記
憶セット39A及び39Bの各々の64個のエントリーの内の一
つを示す。キャッシュ35内のデータ記憶セット39A及び3
9Bの内の一つのエントリーがメモリ11からのデータと共
に書込まれる時、物理的アドレスの低次部分はデータが
書込まれるデータ記憶セット内のエントリーを確定し、
物理的アドレスの高次部分は、パリティビットと共に、
タッグセット41A又は41Bに記憶される。
ソースレジスタ257(第1B図)内のレジスタ300におい
て、仮想アドレスは、記載された実施例では、高次部分
をなすビット(31:9)及び低次部分をなすビット(8:
0)を伴った32ビットよりなる。高次部分はVA SRCE(3
1:9)仮想アドレスソース信号として、ページフレーム
番号を発生してそれをキャッシュメモリ35内のページフ
レーム番号レジスタ302へ伝送する変換ロジック301へ伝
送される。ロジック301は、第4A図、第4B−1図及び第4
B−2図と関連して上述された変換バッファ260よりな
り、それはまた仮想アドレスの高次部分からページフレ
ーム番号を発生する他の従来のメカニズムよりなる。仮
想アドレスのビット(8:0)は、アドレス変換中は変化
しない。
仮想アドレスの低次部分のビット(8:3)は、VA SRCE
(8:3)仮想アドレスソース信号として、レジスタ300か
らデータ記憶セット39A及び39Bへ伝送される。VA SRCE
(8:3)仮想アドレスソース信号は、両方のデータ記憶
セット内の64個のエントリーの内の一つを確定する。VA
SRCE(8:3)仮想アドレスソース信号の入力に応じて、
確定されたエントリーの内容は、各データ記憶セットか
ら伝送される。
即ち、データ記憶セットA内の選択されたエントリー
の内容は、VALID SET A及びTAG+PARITY SET A信号とし
て、コンパレータ303に伝送される。確定されたエント
リーの高次ワードはHIGH A信号としてマルチプレクサー
304へ伝送される。マルチプレクサーは、レジスタ300の
ビット(2)に対応するVA SRCE(2)仮想アドレスソ
ース信号によって制御される。VA SRCE(2)仮想アド
レスソース信号に応じて、マルチプレクサー304は、入
力信号の一つをDATA SET A信号としてゲートドライバー
310へ供給する。
同様の信号は、データ記憶セット39Bからコンパレー
タ305及びマルチプレクサー306へ、VA SRCE(8:3)仮想
アドレスソース信号によってそこで確定されたエントリ
ーに基づいて、伝送される。マルチプレクサー306はま
た、VA SRCE(2)仮想アドレスソース信号によって制
御されて、データ記憶エリア38BからのHIGH B又はLOW B
入力信号の内の一つを、DATA SET B信号としてゲートド
ライバー311へ供給する。
レジスタ302内のページフレーム番号もコンパレータ3
03及び305に伝送される。ページフレーム番号も、また
コンパレータ303及び305に伝送されるPARパリティ信号
を発生するパリティ発生器307へ伝送される。レジスタ3
02からのページフレーム番号及びパリティ発生器307か
らのPARパリティ信号がTAG+PARITY SET A信号に対応
し、フラッグセット41AからのVALID SET A信号が入力さ
れると、コンパレータ303はSET A HIT信号を入力する。
同様に、レジスタ302からのページフレーム番号及びパ
リティ発生器307からのPARパリティ信号がTAG+PARITY
SET B信号に対応し、フラッグセット41BからのVALID SE
T B信号が入力されると、コンパレータ305はSET B HIT
信号を入力する。
SET A HIT及びSET B HIT信号が、そのSET A HIT及びS
ET B HIT信号の内の一方が入力されると、入力HIT信号
を発生するORゲート312へ供給される。HIT信号はバスイ
ンターフェースユニット33へ伝送され、キャッシュメモ
リ35がレジスタ300内の仮想アドレスによって確定され
たデータを含むことを示す。それに対応して、バスイン
ターフェースユニット33は、IDAL CACHE XMITインター
ナルバスキャッシュ伝送信号を入力する。
コンパレータ303からのSET A HIT信号は、入力時、AN
Dゲート313の入力も励磁する。IDAL CACHE XMITインタ
ーナルバスキャッシュ伝送信号が入力されると、ゲート
ドライバー310は、マルチプレクサー304からのDATA SET
A信号をインターナルIDALバス34へ供給する。同様に、
コンパレータ305からのSET B HIT信号は、入力時、AND
ゲート314の入力も励磁し、IDAL CACHE XMITインターナ
ルバスキャッシュ伝送信号が入力されると、ゲートドラ
イバー311は、マルチプレクサー306からのDATA SET B信
号をインターナルIDALバス34へ供給する。
第5図に示されたキャッシュメモリ35の配置には、種
々の利点がある。第一に、第5図に示されたキャッシュ
メモリ35が2方向セット連想キャッシュである間、第5
図の各セットに示された如く、追加セット用の追加回路
を具備するのみで、それは非常に簡単にn方向(「n」
は整数)セット連想キャッシュに拡張される。また、仮
想アドレスの物理的アドレスへの変換中、同時に高次ビ
ット(31:9)の変換が行われてページフレーム番号を発
生する時、初期において一定に保たれる仮想アドレスの
ビット(8:3)に基づいてデータ記憶セット39A及び39B
にアクセスすることにより、ビット又はミスの決定を非
常に迅速に行うことが出来る。必要とされるデータがキ
ャッシュメモリ35内にある場合、データはそこから迅速
に得られ、それがない場合、バスインターフェースユニ
ット33は、ページフレーム番号が発生された直後にデー
タ用修正動作を初期化出来る。
バスインターフェース回路33 プロセッサ30の一実施例におけるバスインタフェース
回路33が第6図に示される。第6図を参照して、バスイ
ンタフェース回路33は、バス13(第1A図)を制御するス
テートマシーン270及びインターナルIDALバス34の動作
を制御する第2のステートマシーン271を含む。2つの
ステートマシーン270及び271は、下記の如く、ステート
マシーン270にバス13の動作が必要であることを示す種
々のフラッグ及び制御信号と、ステーマシーンによって
供給されて動作の完了をステートマシーン271に示す応
答信号とを除いて、独立して動作する。
インターナルIDALバス34を制御するステートマシーン
271は、一般に制御ロジック273によって示されるプロセ
ッサ30内のソース、一般にバス13のピン274によって示
されるバス13上の種々のターミナル、及び制御回路40
(第1B図)よりのマイクロ命令からの入力信号を入力す
る。ステートマシーン271は、フローティングポイント
プロセッサ31と共に転送を制御する論理回路272と、キ
ャッシュ及びアドレス入力マルチプレクサー264(第1B
図)の機能を制御する種々の信号とを含む、プロセッサ
30内の制御数の回路へ出力信号を伝送する。また、ステ
ートマシーン271の出力信号はフラッグ(図示せず)を
含むロジック276も制御し、これは、RD REQ読出要求信
号の状態によって示されて、読出し処理がペンディング
中であることを示し、WRT REQ書込要求信号の状態によ
って示される如く、書込み処理がペンディング中である
ことを示し、BRDCST REQ通信要求信号の状態によって示
される如く、プロセッサ30からフローティングポイント
プロセッサ31へのオペランド転送がペンディング中であ
ることを示す。
制御ロジック276は、オペレーティングシステムの制
御の下、読出処理中にバス13(第1A図)から入力された
或情報がキャッシュ35(第1B図)に記憶されるべきもの
であるかどうかも決定出来る。例えば、オペレーティン
グシステムは、それがキャッシュ35において読み出す全
ての情報を記憶するようにプロセッサ35を調整する。ま
た、オペレーティングシステムはキャッシュ35へのプロ
セッサ命令の記憶は許可せず、キャッシュで処理される
べきデータの記憶のみを許可する。しかしながら、一般
に、オペレーティングシステムは種々の制御レジスタか
ら入力された情報の、キャッシュ35内の第1A図に示され
るシステムの他の部分への記憶を許可しないだろう。
制御ロジック276は、バス13より入力される情報のキ
ャッシングを制御するようにCACHE ACCキャッシュ可能
アクセス信号を調整する。
上記の如く、プロセッサ30の外部ユニットは、転送が
ライン61(第1A図)上のCCTLキャッシュ制御信号の手段
によってキャッシュされるべきものであるかどうかも制
御する。
ステートマシーン271は、他の制御ロジック(図示せ
ず)を直接又は間接に介して、ラッチ250から252への書
込みデータ及び読出及び書込アドレスのローディングも
制御し、かつピン274上の信号状態に基づいて入力デー
タラッチ254からの読出データの転送も制御する。
バス13からの転送を制御するステートマシーン270
は、バスピン274からの信号と同様にRD REQ読出要求、W
RT REQ書込要求、及びBRDCST REQ通信要求信号を入力
し、かつバス13を構成する種々の信号状態を制御する論
理回路277へ伝送されるべき信号を発生する。また、ス
テートマシーン270は、制御ロジック280へ伝送される信
号を発生し、またバス13のDALデータ/アドレスライン5
0への信号供給及び信号入力が許可されるようにラッチ2
50、251、252、254及びマルチプレクサー253(第1B図)
の動作を制御する。読出処理が完了した後、ステートマ
シーン270は、制御ロジック276にRD REQ読出要求信号の
打ち消しを可能とさせるCLR RD FLAGSクリア読出フラッ
グ信号も入力する。
この背景の下、第6図に示されるバス制御回路33の動
作が説明される。書込処理中、制御回路40により可能と
される如く、DMA OR WRT PND(DMA又は書込みペンディ
ング)信号が制御ロジック273によって入力されていな
いならば、ステートマシーン271は先ず書込みアドレス
ラッチ251(第1B図)へ書き込まれるべきアドレスの位
置をロードして、その位置がキャッシュ35(第1B図)内
にキャッシュされるかどうかを決定する。DMA OR WRT P
ND信号が入力されれば、第1A図に示されたシステムの他
のユニットがバス13を使用するか、又はステートマシー
ン271は書込みアドレス及びデータが、バス13を介して
転送されなかったラッチ251及び250(第1B図)へ各々ロ
ードされるのを可能とした。
DMA OR WRT PND(DMA又は書込みペンディング)信号
が制御ロジック273によって入力されていないならば、
書き込まれるべき位置がキャッシュされるかどうかの決
定がなされる。もし位置がキャッシュされれば、その位
置に対応するキャッシュ35内のエントリーは、新たなデ
ータでアップデートされなければならない。位置がキャ
ッシュされるかどうかを決定するために、ステートマシ
ーン271は、読み出されるべきキャッシュを可能とするC
HACHE FTN(1:0)キャッシュ機能信号及びマルチプレク
サー264が仮想アドレス変換回路37によって発生された
物理的アドレスを使用出来るようにするCHACHE ADRS
(1:0)信号を発生する。この動作中、IDAL CHACHE XMI
Tキャッシュ伝送信号(第5図)は、インターナルデー
タバス34へ供給されるべきキャッシュからのデータを禁
止するように、拒否される。位置がキャッシュされれ
ば、HIT信号がANDゲート312(第5図)に入力され、こ
のことが制御ロジック273からのMISS信号の状態に反映
される。
MISS信号が入力されないと、書き込まれるべき位置は
キャッシュされる。否定されたMISS信号に応じて、ステ
ートマシーン271は、キャッシュ書込み動作を可能とす
るCHACHE FTN(1:0)キャッシュ機能信号及びマルチプ
レクサー264が仮想アドレス変換回路37によって発生さ
れた物理的アドレスを使用出来るようにするCHACHE ADR
S(1:0)信号を発生する。これと同時に、キャッシュエ
ントリーに書き込まれたデータは書込データラッチ250
(第1B図)に記憶され、制御ロジック内のフラッグは入
力されたWR REQ書込要求信号を発生するように調整され
る。この動作中、MBOX STALL信号は、仮想アドレス変換
回路の動作を不可能とするよう入力される。
他方、MISS信号が入力されると、書込み位置がキャッ
シュされる。入力MISS信号に応じて、ステートマシーン
は、書込データの書込データラッチ250(第1B図)での
ラッチを可能とし、かつWRT REQ信号の制御ロジック276
による入力を可能とする。また、CHACHE ADRS(1:0)キ
ャッシュアドレス信号は、リフレッシュカウンター262
(第1B図)をインクリメントさせ、かつマルチプレクサ
ー264がフラッグ42へアドレスを供給して、タッグ41及
びデータ記憶38(第1B図)にそれらをリフレッシュさせ
るのを可能とするように、調整される。この動作の間、
仮想アドレス変換回路が他の物理的アドレスを製造する
のを防止するよう動作するのを不可能とするように、MB
OX STALL信号も入力される。
書込処理が完了した後、DMA OR WRT PND(DMA又は書
き込みペンディング)信号が拒否される。このことによ
り、他のアドレス及び書込みデータがラッチ250及び251
(第1B図)へロードされる。リフレッシュ動作もまた可
能とされる。
読出処理中にステートマシーン271によって実行又は
可能とされる動作は、要求された情報が命令又はデータ
か、及び要求情報がキャッシュ35(第1B図)内にあった
か否かによる。アドレスにより確定された位置がキャッ
シュされる場合、及びキャッシュエントリーを使用不可
能とするタッグ41A、41B又はデータ38A、38B(第5図)
の一方にパリティエラーが無い場合、情報はキャッシュ
内にある。命令を撤回するために読出処理が要求され、
この場合、制御ロジック273はIB REQ命令バッファ要求
信号を入力する。さもなければ、制御回路40はRD読出し
信号を入力する。要求情報がキャッシュ35内に無けれ
ば、制御ロジック273もREAD MISS信号を入力する。READ
MISS信号は、第5図に示されたHIT信号の完了を示す。
制御回路40から入力されたRD読出信号又はIB REQ命令
バッファ要求信号の入力に応じて、ステートマシーン27
1は、キャッシュ読出しを可能とするCHACHE FTN(1:0)
キャッシュ機能信号及びマルチプレクサー264(第1B
図)が仮想アドレス変換回路37からのアドレスを使用出
来るようにするCHACHE ADRS(1:0)信号を発生する。同
時に、ステートマシーン271は、読出しアドレスラッチ2
52にロードされるべき仮想アドレス変換ロジックからの
アドレスを可能とするARM ADRS ATRアームアドレススト
ローブ信号を入力する。その動作がIB REQ信号に応じて
いたならば、制御ロジックのフラッグセットを可能と
し、PREV IB REQ前命令バッファ要求信号の入力を可能
とするINIT IB REQ初期命令バッファ要求信号もステー
トマシーン271は入力する。情報がキャッシュ35内にあ
れば、ステートマシーン271は、情報がキャッシュ35か
ら、第5図と関連して上記した如く、オペレーションタ
ーミネートへ供給されるのを許可する。
情報がキャッシュ35内に無い場合、及びDMA OR WRT P
ND(DMA又は書き込みペンディング)信号が入力される
場合、ステートマシーン271は、プロセッサ30をストー
ルするSTALL MBOX STALL信号の両方及びリフレッシュ動
作を許可するCACHE ADRS(1:0)信号を入力する。この
ストールにより、読出処理が実行される前に書込処理が
完了する。
DMA OR WRT PND(DMA又は書き込みペンディング)信
号が拒否される場合、読出処理が進む。ステートマシー
ン271は、RD REQ読出要求信号の制御ロジック276への入
力を可能とする。ステートマシーン271は、その後、CAC
HEABLE、CCTLキャッシュ制御、RDYレディ及びERRエラー
信号を監視して、読出処理の最後を決定する。もしCACH
EABLE又はCCTLキャッシュ制御信号が情報はキャッシュ
されるべきではないことを示すならば、バス13を介して
一つの転送がある。他方、もし情報がキャッシュされる
べきであるならば、2つの転送が要求され、キャッシュ
エントリー(第5図)において、一方は低ワード用、他
方は高ワード用となる。
もし転送がキャッシュされるべきであれば、RDYレデ
ィ信号の入力時、もしDAL PAR ERRパリティエラー信号
が入力されず、入力情報にはパリティエラーが無いこと
が示されれば、ステートマシーン271はマルチプレクサ
ー264(第1B図)がキャッシュ35内のエントリーを選択
するために仮想アドレス変換回路からのアドレスを使用
出来るものとし、情報を選択された高又は低ワードの内
の一方にロードされ得るものとする。情報がロードされ
るべきキャッシュ35内のワードは、VA(2)仮想アドレ
スビット(第5図参照)の状態に応ずる。情報は、その
後、データ経路36(第1B図)に供給される。
DAL PAR ERRパリティエラー信号が入力される場合、
又はERRエラー信号がライン55(第1A図)に入力され、
トランスファー内に稼働する他のユニットによるエラー
レスポンスを示す場合、処理は、PREV IB REQ前命令バ
ッファ要求信号が入力されるかどうかによる。そうであ
るならば、制御回路40(第1B図)は、入力されたIB FIL
L ERR命令バッファフィルエラー信号によって促され
て、それが正確な動作を行うことを許可する。PREV IB
REQ前命令バッファ要求信号が入力されなければ、STALL
及びMBOX STALL信号は入力されてプロセッサ30をストー
ルし、TRAP REQトラップ要求信号が入力されて、これに
よりプロセッサ制御回路40は選択されたリカバリー動作
を許可する。
入力情報がキャッシュされる場合、及びデータが入力
されるにつれてERRエラー信号はDAL PAR ERRパリティエ
ラー信号が入力される場合、ステートマシーン271は第
2のワードをキャッシュ35に入力して記憶させることを
可能とする。第2のワードが適切に入力されると、それ
は上記の如くキャッシュ35内に記憶される。ステートマ
シーン271は、マルチプレクサー264に仮想アドレス変換
回路37からのアドレスの使用を可能とするCACHE ADRS
(1:0)キャッシュアドレス信号、及び第2ワードのキ
ャッシュエントリーへの記憶を可能とするCACHE FTN
(1:0)キャッシュ機能信号を発生する。ステートマシ
ーン271は、しかるに、情報のデータ経路36への転送を
可能としない。
他方、ERRエラー信号又はDAL PAR ERRパリティエラー
信号が入力されると、MBOX STALL信号が入力されて仮想
アドレス変換回路37をストールし、第1ワードが書き込
まれるキャッシュ内のエントリーが無効にマークされ
る。同時に、CACHE ADRS(1:0)は、マルチプレクサー2
64がキャッシュ35の内容をリフレッシュし、カウンター
をインクリメントするためにリフレッシュカウンター26
2からのリフレッシュアドレスを使用するように、調整
される。
ステートマシーン271は、ステートマシーン271が情報
のキャッシュ35への書き込み及び読み出しを可能としな
いならば、リフレッシュ動作の実行を可能とする。処理
の発生を可能とするために、ステートマシーン271は、
マルチプレクサー264がリフレッシュカウンター262から
のリフレッシュアドレス信号を使用して、従来の方法で
記憶回路38、41及び42(第1B図)の内容をリフレッシュ
することを可能とするCACHE ADRS信号を発生させる。
ステートマシーン271はまた、キャッシュ35内のエン
トリーが、制御ロジック273からのDMA INV REQ無効要求
信号に応じて、無効とされるのを可能とする。第1B図と
関連して上記した如く、入力CCTLキャッシュ制御信号及
び入力ADRS STRアドレスストローブ信号の両者が第1A図
に示したシステム内の他のユニットによって入力される
時、その両信号の一致に応じてこの信号が発生される。
他のユニットがメモリ11と共にDMR(直接メモリアクセ
ス)動作を行う時、これが起こり、それによりDMG直接
メモリグラント信号が入力される。もし他のユニットが
キャッシュ35によりキャッシュされるメモリ11内の位置
へデータを転送するならば、キャッシュエントリーは無
効としてマークされる。第1B図を参照して、DMG及びADR
S STRアドレスストローブ信号の一致に応じて、ANDゲー
ト401は入力データラッチ254に、この場合はアドレス信
号である信号をDALデータ/アドレスライン50上へのラ
ッチを可能とする。
DMA INV REQ無効要求信号に応じて、ステートマシー
ン271は、最初に、キャッシュからのデータがインター
ナルバス34上へ供給されるのを許可することなしに、入
力データラッチ254内のアドレスを使用してキャッシュ3
5の読出動作の実行を行う。もし、MISS信号が入力され
れば、位置はキャッシュされず、更に何も起こらない。
しかし、もしMISS信号が否定されると、入力データ・
ラッチ254中のアドレスによって識別されるロケーショ
ンはキャッシングされ、そして状態マシンは、キャッシ
ュ無効化動作を開始する。この時、状態マシンは、無効
化動作を可能にするキャッシュ・ファンクション信号CA
CHE FTN(1:0)及び無効化に際して、マルチプレクサ26
4が入力データ・ラッチの内容を使用することを可能に
するキャッシュ・アドレス信号CACHE ADRS(1:0)を発
生させる。
状態マシン270は、バス13からのキャッシュ制御信号C
CTL、直接メモリ・リクエスト信号DMR、レディ信号RDY
およびエラー信号ERR、制御ロジック276からの読出しリ
クエスト信号RD REQ、書込みリクエスト信号WRT REQ、
ブロードキャスト・リクエスト信号BRDCST、およびキャ
ッシング可能アクセス信号CACHE ACC、ならびに直接メ
モリ・アクセス禁止信号INH DMAおよびアーム読出しリ
クエスト信号ARM RD REQに反応して動作する。もし状態
マシン270が、第1図に示すシステム内の別のユニット
がバス13を介しての転送を希望していることを示す表明
された直接メモリ・リクエスト信号DMRを受信してさら
に、DMA禁止信号INH DMAまたはブロードキャスト・リク
エスト信号BRDCST REQが表明されない限りは、このマシ
ンは、直接メモリ認可ディスエイブル信号DIS DMGを否
定し、次にこの否定された信号は、制御ロジック277が
直接メモリ認可信号DMGを表明することを可能にする。
この表明された直接メモリ認可DMGは、別のユニットが
バス13を介して転送を実行することを可能にする。さら
にそのうえ、状態マシン270は、DATA IN信号を表明する
が、この信号は、これらのラインを条件付けするため
に、DAL制御ロジック280によって、システム内の他の装
置がDALデータ/アドレス・ライン50を使用できるよう
にする。状態マシン270はさらにTRI-STATE STR信号を表
明するが、この信号は、制御ロジック277が、他の装置
がデータ・ストローブ信号DATA STR、アドレス・ストロ
ーブ信号ADRS STRおよび転送タイプ信号TR TYPEを使用
することを可能にする。
そうする代わりに、もしシステム内の他のどの装置も
バス13を介して転送することがない場合には、状態マシ
ン270が、制御ロジック276からのRD REQ信号、WRT REQ
信号、およびブロードキャスト・リクエスト信号BRDCST
REQ信号に反応してバス13上での転送を可能にしてもよ
い。もし書込みリクエスト信号WRT REQが表明され、そ
れぞれラッチ251およびラッチ250(第1B図を参照)内の
書込みアドレスおよび書込みデータが示された場合、仮
にDMR信号が表明されていなければ、状態マシン270は、
マルチプレクサ253が、ラッチ251からの書込みアドレス
をDALデータ/アドレス・ライン50上に結合することを
可能にするDAL CONT(1:0)(DAL内容)信号を発生させ
る。同時に、状態マシン270はアドレス・ストローブ・
エネイブル信号ADRSS STR ENを表明するが、すると次に
この信号は、制御ロジック277がアドレス・ストローブ
信号ADRS STRを表明することを可能にする。
次に、状態マシン270は、(DAL内容)信号DAL CONT
(1:0)を発生するが、この信号によつマルチプレクサ2
53は、書込みデータ・ラッチ250の内容をDALデータ/ア
ドレス・ライン50上に結合することが可能になる。状態
マシン270は同時に、データ・ストローブ・エネイブル
信号DATA STR ENを表明するが、この信号によって制御
ロジック277は、データ・ストローブ信号DATA STRを表
明することが可能になる。この後で、状態マシンは、レ
ディ信号RDYまたはエラー信号ERRが表明されるまで待ち
状態にとどまる。もし表明されたRDY信号が受信された
場合、この動作はアドレス・ストローブ・エネイブル信
号ADRS STR ENおよびデータ・ストローブ・エネイブル
信号DATA STR ENを否定して終了するが、これらの信号
によって次に、制御ロジック277は、それぞれアドレス
・ストローブ信号ADRS STRおよびデータ・ストローブ信
号DATA STRを否定することが可能になり、さらに制御ロ
ジック276はWRT REQ信号を否定することが可能になる。
一方、もし表明されたエラー信号ERRが受信された場
合には、状態マシン270は再試行を試みて、ラッチ250か
らのデータ信号をDALデータ/アドレス・ライン50上に
結合することをマルチプレクサ253に可能にするDAL CON
T(1:0)(DAL内容)信号を発生する。
もしレディ信号RDYおよびエラー信号ERRの双方が証明
された場合には、再試行の信号が送られ、転送が再度試
みられる。
もし他の動作がなにも起こっていない場合には、状態
マシン270は、DAL CONT(1:0)(DAL内容)信号を発生
し、この信号によってマルチプレクサ253は、読出しア
ドレス・ラッチ252の内容をDALデータ/アドレス・ライ
ン50上に結合することが可能になる。これによって状態
マシン270は、他の信号および条件によって読出し動作
の発生が許される時には、読出し動作を迅速に開始でき
る。読出し動作の間、読出しリクエスト信号RD REQが表
明されると、状態マシン270はアドレス・ストローブ・
エネイブル信号ADRS STR ENを表明し、次にこの信号に
よって制御ロジック277は、アドレス・ストローブ信号A
DRS STRを表面することが可能になる。状態マシン270は
次に、データ・イン信号DATA INを表明し、この信号に
よって制御ロジツク280は、システム内の他の装置がDAL
データ/アドレス・ライン50を使用できるようにこれら
のラインを条件付けすることが可能になる。同時に、状
態マシンは、データ・ストローブ・エネイブル信号DATA
STR ENを表明し、次にこの信号によって、制御ロジッ
ク277は、データ・ストローブ信号DATA STRを表明する
ことが可能になる。
次の動作は、キャッシング可能アスセス信号CACHE AC
Cが制御ロジック276によって表明されるか否かに依る。
もしこの信号が表明されれば、検索されたデータはキャ
ッシング可能であり、従って2ワードがバス13を介して
読出される。一方、もしキャッシング可能アクセス信号
CACHE ACCが表明されないときには、検索されたデータ
はキャッシング不可能であり、たった1ワードがバス13
を介して読出される。キャッシング可能アクセス信号CH
ACHE ACCが表明されない場合には、状態マシン270は読
出しデータ・ラッチ信号RD DATA LATを表明するが、こ
の信号は、表明されると、入力ラッチ254(第1B図を参
照)が、DALデータ/アドレス・ライン50上の信号を受
信することが可能になる。その後で読出しデータ・ラッ
チ信号RD DATA LATが否定されると、信号は入力ラッチ
によってラッチされる。もしエラー信号ERRが否定され
そして読出しフラグ・クリア信号CLR RD FLAGSが表明さ
れると、状態マシン270は表明されたレディ信号RDYに反
応して読出しデータ・ラッチ信号RD DATA LATを否定す
る。表明されたCLR RD REQ信号に反応して、制御ロジッ
ク276は読出しリクエスト信号RD REQを否定する。
一方、もしキャッシング可能アクセス信号CACHE ACC
が表明されると、上記のように読出し動作が実行され
る。データが入力データ・ラッチ中にラッチされた時に
もしキャッシュ制御信号CCTLが表明されてない場合、第
2の動作も実行される。一方、もしキャッシュ制御信号
CCTLが表明され、転送に携わっている他の装置がデータ
のキャッシングを防止していることが表示される場合に
は、第2の動作は実行されない。
状態マシン270が直接メモリ・リクエスト信号DMRの他
の装置からの受信に反応して直接メモリ認可信号DMGを
表明することを禁止するために、状態マシン271は、直
接メモリ・アクセス禁止信号INH DMAを用いる。直接メ
モリ・アクセス禁止信号INH DMAは或る転送中に、浮動
小数点プロセッサ31によって表明される(第1A図を参
照)。
制御回路40からの読出しブロードキャスト信号RD BRD
CSTおよび基本的ブロードキャスト信号BASIC BRDCST
は、状態マシン271が、キャッシュ35からまたはデータ
・パス36(data path 36)中のレジスタ255からの浮動
小数点・オペランドの情報を転送することを可能にす
る。制御ロジック276もまた、ブロードキャスト・リク
エスト信号BRDCST REQ信号を表明することが可能にな
り、次に、状態マシン270が、この情報を上記のように
転送することを可能にする。状態マシン271はまた、浮
動小数点プロセッサ・ペンディング信号FPP PNDを表明
するフラグを設定するように制御ロジック273をエネイ
ブルする。状態マシン271は、浮動小数点プロセッサ31
からの浮動小数点演算の結果を受信できる状態にあるこ
とをFPPインタフェース回路272に示すために、浮動小数
点プロセッサ信号SIG FPPを表明する。条件コードが上
述したようにレディ状態にある場合、インタフェース回
路272はCP OK信号を表明し、そして、結果データがレデ
ィ状態にある場合、レディ信号CP RDYを表明する。レデ
ィ信号CP RDYに反応して、状態マシン271は、状態マシ
ン270が結果データを受信することを可能にする。もし
浮動小数点プロセッサ31が、エラー発生信号を送ると、
インタフェース回路272はエラー信号CP ERRを表明す
る。CP OK、CP RDYまたはERR信号に反応して、状態マシ
ン271は、浮動小数点プロセッサ・ペンディング信号を
制御するフラグがリセットされるようにし、これによっ
てこの信号を否定する。
バス・インタフェース回路33は多くの恩典を与える。
第1に、個々が異なった動作を制御しそしてフラグを介
して通信している2つの状態マシン270および271を使用
することによって、回路がかなり単純化される。
さらに、状態マシン271によってキャッシュ35のリフ
レッシュ動作が可能となり、これによってダイナミック
記憶素子をその中で使用することができる。こうするこ
とによって、キャッシュの物理的な寸法が縮小された
り、または、過去の場合においてそうであったように、
同じ面積でより多くの容量をもつキャッシュ記憶装置を
設けることが容易となる。
またさらに、バス・インタフェース回路33は、キャッ
シング可能なデータの検索において、最初に、プログラ
ムにとって必要なデータを検索し、次にキャッシュのエ
ントリにおける記憶装置のための他のワードを検索する
ことは評価されるだろう。先行のシステムにおいては、
データのワードはメモリ内に記憶されている順序で検索
され、従って、最初のデータ・ワードがプログラムが今
すぐに必要とするものであるとは限らなかった。これに
よって、第2番目のワードが検索されるまで、処理の再
開が遅れた。
さらにそのうえ、インタフェース回路33は、書込み動
作を保留(ペンディング)にしたままで、読出しアドレ
スが発生されそして読出しアドレス・ラッチ252にラッ
チされる程度にまで、読出し動作の開始を可能にする。
読出し動作は、保留の書込み動作が完了するまで完了さ
れないが、しかし書込み動作が完了したら、読出しアド
レスは即座に送信することが可能である。
最後に、バス・インタフェース回路はまた、読出し動
作また書込み動作がプロセッサ30中に設定されているか
どうかに関わらず、第1A図に示すシステム中の他の装置
によって実行された直接メモリ・アクセス動作によっ
て、キャッシュのエントリを無効することを可能にす
る。すなわち、書込みデータおよび書込みアドレスがそ
れぞれのラッチ251および250中にラッチされ(第1B図を
参照)さらに読出しアドレスがラッチ252中にラッチさ
れている状態で、キャッシュ・エントリを無効にする動
作を、入力ラッチ254中に受信されたDMAアドレスに反応
して発生させることが可能である。このことによって、
無効化プロセスが単純化される。
上記の説明は、本発明による特定の実施例に限られた
ものであった。しかし、本発明の長所の幾分かまたは全
部を達成してさらに、本発明にたいして変更および適正
を施し得ることが明かであろう。従って、請求の範囲の
目的は、本発明の真正の精神およびその範囲内に収まる
全てのこのような変更および修正を保護することであ
る。
フロントページの続き (72)発明者 スープニック ロバート エム アメリカ合衆国 マサチューセッツ州 01741 カーライル ヒールド ロード 601 (56)参考文献 特開 昭56−82947(JP,A) 特開 昭60−247739(JP,A) 特開 昭58−80740(JP,A)

Claims (6)

    (57)【特許請求の範囲】
  1. 【請求項1】デジタルデータ処理システムに使用される
    処理装置であって、この処理装置はソースデータ信号に
    処理を成して、マイクロ制御信号に応答して処理された
    データ信号を与え、前記処理装置が、 A.ソースデータ信号を与えるための複数のソースデータ
    手段、 B.第1入力端子手段、第2入力端子手段、出力端子手段
    及び第1及び第2入力端子手段におけるデータ信号に選
    択された操作を成す処理手段を含み、出力端子手段に処
    理されたデータ信号を発生する算術論理手段、 C.前記ソースデータ手段及び前記第1入力端子手段に接
    続され、前記ソースデータ手段の内の第1ソースデータ
    手段を識別する第1ソー制御信号に応答して前記第1ソ
    ースデータ手段から前記第1入力端子手段にソースデー
    タ信号を転送するための第1ソースデータ選択手段、 D.前記ソースデータ手段及び前記第2入力端子手段に接
    続され、前記ソースデータ手段の内の第2ソースデータ
    手段を識別する第2ソース制御信号に応答してソースデ
    ータ信号を前記第2ソースデータ手段から前記第2入力
    端子手段に転送するための第2ソースデータ選択手段、 E.前記ソースデータ手段の各々及び前記出力端子手段に
    接続され、宛先制御信号に応答して処理済データ信号を
    前記ソースデータ手段の選択された一つへ転送する宛先
    データ選択手段、及び F.i 前記ソースデータ選択手段に接続され、前記マイ
    クロ制御信号に応答して前記第1ソースデータ制御信号
    及び前記第2ソース制御信号を発生するソース制御信号
    発生手段、及び ii 前記ソース制御手段及び前記宛先データ選択手段に
    接続され、前記第1及び第2ソース制御信号及び前記マ
    イクロ制御信号に応答して前記第1ソースデータ手段又
    は前記第2ソースデータ手段の一つを識別する宛先制御
    信号を発生し、前記宛先データ選択手段に、前記処理済
    データ信号を前記ソースデータ手段の識別された1つに
    転送させる宛先制御手段を含む制御手段から成ることを
    特徴とする 前記処理装置。
  2. 【請求項2】前記宛先制御装置が、前記第1ソース制御
    信号を受信するための第1入力手段、前記第2ソース制
    御信号を受信するための第2入力手段、宛先制御信号を
    転送するための出力手段、及び前記マイクロ制御信号に
    応答して前記第1ソース制御信号又は前記第2ソース制
    御信号の一つを宛先制御信号として前記出力手段に結合
    するための選択手段を含むマルチプレクサから成ること
    を特徴とする請求項1記載の処理装置。
  3. 【請求項3】前記ソース制御信号発生手段が、前記第1
    及び第2ソース制御信号を各々発生するための第1及び
    第2ソース制御信号発生手段を含み、前記第1及び第2
    ソース制御信号発生手段の各々が、対応するマイクロ制
    御信号を受信し、これに応答して対応する第1及び第2
    ソース制御信号を発生するためのデコーダ手段を含むこ
    とを特徴とする請求項2記載の処理装置。
  4. 【請求項4】前記第1及び第2ソース制御信号発生手段
    の各々が、前記マイクロ制御信号を受信し、これに応答
    して第1及び第2ソース制御信号を発生するデコーダ、
    及び前記対応するデコーダに接続され、前記第1及び第
    2ソース制御信号をラッチするためのラッチを含むこと
    を特徴とする請求項3記載の処理装置。
  5. 【請求項5】前記処理装置は、複数のレジスタを更に含
    み、前記制御手段が、前記レジスタの一つを各々識別す
    る複数の状態を有するカウンタ手段を更に含み、前記第
    1及び第2ソース制御信号発生手段の各々が、前記カウ
    ンタ手段の出力を、第1及び第2ソース制御信号とし
    て、前記対応するラッチに結合するための付勢可能な駆
    動手段を更に含み、前記対応するデコーダが選択された
    マイクロ制御信号に応答して前記駆動手段を付勢するイ
    ネーブル信号を発生することを特徴とする請求項4記載
    の処理装置。
  6. 【請求項6】デジタルデータ処理システムに使用される
    処理装置であって、この処理装置がソースデータ信号に
    操作を施してマイクロ制御信号に応答して処理済データ
    信号を提供し、この処理装置が、 A.複数のレジスタを含み、ソースデータ信号を与えるた
    めの複数のソースデータ手段、 B.第1入力端子手段、第2入力端子手段、出力端子手
    段、及び第1及び第2入力端子におけるデータ信号に選
    択された操作を成す処理手段を含み、出力端子手段に処
    理済データ信号を発生する算術論理手段、 C.前記ソースデータ手段及び前記第1入力端子に接続さ
    れ、前記ソースデータ手段の内の第1ソースデータ手段
    を識別する第1ソー制御信号に応答して前記第1ソース
    データ手段から前記第1入力端子手段へソースデータ信
    号を転送するための第1ソースデータ選択手段、 D.前記ソースデータ手段及び前記第2入力端子手段に接
    続され、前記ソースデータ手段の内の第2ソースデータ
    手段を識別する第2ソース制御信号に応答して前記第2
    ソースデータ手段から前記第2入力端子手段へソースデ
    ータ信号を転送するための第2ソースデータ選択手段、 E.前記ソースデータ手段の各々及び前記出力端子手段に
    接続され、宛先制御信号に応答して処理済データ信号を
    前記ソースデータ手段の選択された一つへ転送する宛先
    データ選択手段、及び F.i 前記レジスタの一つを各々識別する複数の状態を
    有するカウンタ手段、 ii 前記ソースデータ選択手段に接続され、前記マイク
    ロ制御信号に応答して前記第1ソース制御信号及び前記
    第2ソース制御信号を発生する第1及び第2ソース制御
    信号発生手段であって、前記第1及び第2ソース制御信
    号発生手段が各々、前記マイクロ制御信号を受信して、
    これに応答して前記第1及び第2ソース制御信号を発生
    するデコーダ、及び前記各デコーダに接続され、前記第
    1及び第2ソース制御信号をラッチするラッチを含み、
    前記第1及び第2ソース制御信号発生手段の各々が、前
    記カウンタ手段の出力を第1又は第2ソース制御信号と
    して前記対応するラッチに結合するための付勢駆動手段
    を含み、前記各デコーダは選択されたマイクロ制御信号
    に応答してイネーブル信号を発生して前記駆動手段を付
    勢する、ソース制御手段、及び iii 前記第1ソース制御信号を受信するための第1入
    力手段、前記第2ソース制御信号を受信するための第2
    入力手段、宛先制御信号を転送するための出力手段、及
    び前記マイクロ制御信号に応答して前記第1ソース制御
    信号又は第2ソース制御信号の一つを選択し、この選択
    されたソース制御信号を、前記宛先制御信号として前記
    出力手段に結合し、前記宛先データ選択手段に、前記処
    理済データ信号を、前記第1ソース制御信号又は前記第
    2ソース制御信号の前記選択された一つによって識別さ
    れるソースデータ手段に転送させる選択手段を含むマル
    チプレクサから構成される宛先制御手段から成る、 制御手段を有する処理装置。
JP63502144A 1987-02-24 1988-02-09 デジタルデータ処理システムに使用される処理装置 Expired - Fee Related JP2756546B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US1764387A 1987-02-24 1987-02-24
US17,643 1987-02-24
US017,643 1987-02-24

Publications (2)

Publication Number Publication Date
JPH01502941A JPH01502941A (ja) 1989-10-05
JP2756546B2 true JP2756546B2 (ja) 1998-05-25

Family

ID=21783739

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63502144A Expired - Fee Related JP2756546B2 (ja) 1987-02-24 1988-02-09 デジタルデータ処理システムに使用される処理装置

Country Status (5)

Country Link
EP (1) EP0418220B1 (ja)
JP (1) JP2756546B2 (ja)
CA (1) CA1300275C (ja)
DE (1) DE3854925T2 (ja)
WO (1) WO1988006758A2 (ja)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1426748A (en) * 1973-06-05 1976-03-03 Burroughs Corp Small micro-programme data processing system employing multi- syllable micro instructions
DE2440390B2 (de) * 1974-08-23 1976-10-07 Philips Patentverwaltung Gmbh, 2000 Hamburg Elektronischer rechner
US4236206A (en) * 1978-10-25 1980-11-25 Digital Equipment Corporation Central processor unit for executing instructions of variable length
JPS5682947A (en) * 1979-12-11 1981-07-07 Matsushita Electric Ind Co Ltd Data processor
JPS5880740A (ja) * 1981-11-09 1983-05-14 Nec Corp マイクロプログラム制御装置
JPS60247739A (ja) * 1984-05-24 1985-12-07 Nec Corp マイクロプログラム制御装置

Also Published As

Publication number Publication date
WO1988006758A2 (en) 1988-09-07
EP0418220A1 (en) 1991-03-27
DE3854925D1 (de) 1996-02-29
DE3854925T2 (de) 1996-11-07
EP0418220B1 (en) 1996-01-17
WO1988006758A3 (en) 1989-10-05
CA1300275C (en) 1992-05-05
JPH01502941A (ja) 1989-10-05

Similar Documents

Publication Publication Date Title
US4831520A (en) Bus interface circuit for digital data processor
US4851991A (en) Central processor unit for digital data processing system including write buffer management mechanism
US4926323A (en) Streamlined instruction processor
US4831581A (en) Central processor unit for digital data processing system including cache management mechanism
US6138208A (en) Multiple level cache memory with overlapped L1 and L2 memory access
US5091845A (en) System for controlling the storage of information in a cache memory
JP3204323B2 (ja) キャッシュメモリ内蔵マイクロプロセッサ
US5119484A (en) Selections between alternate control word and current instruction generated control word for alu in respond to alu output and current instruction
JPH0342745A (ja) 複数キャッシュ・メモリ・アクセス方法
US5226170A (en) Interface between processor and special instruction processor in digital data processing system
JPH02239331A (ja) データ処理システム及びその命令実行を促進する方法
JPH03225542A (ja) データ記憶方法及びビットエンコードデータの処理回路
KR920004401B1 (ko) 디지탈 데이타 프로세싱 시스템내의 프로세서와 특수명령 프로세서간의 인터페이스
JP2756546B2 (ja) デジタルデータ処理システムに使用される処理装置
US5276892A (en) Destination control logic for arithmetic and logic unit for digital data processor
JP2001256109A (ja) 統合キャッシュポートの制御方法および装置
US4737908A (en) Buffer memory control system
JPH0353657B2 (ja)
EP0302926B1 (en) Control signal generation circuit for arithmetic and logic unit for digital processor
WO1988006763A1 (en) Central processor unit for digital data processing system including virtual to physical address translation circuit
JPH06124235A (ja) キャッシュ制御方式

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees