JPS60256866A - デ−タ処理システム - Google Patents

デ−タ処理システム

Info

Publication number
JPS60256866A
JPS60256866A JP60006056A JP605685A JPS60256866A JP S60256866 A JPS60256866 A JP S60256866A JP 60006056 A JP60006056 A JP 60006056A JP 605685 A JP605685 A JP 605685A JP S60256866 A JPS60256866 A JP S60256866A
Authority
JP
Japan
Prior art keywords
register
tag
data
cpu
instruction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP60006056A
Other languages
English (en)
Other versions
JPH0640307B2 (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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPS60256866A publication Critical patent/JPS60256866A/ja
Publication of JPH0640307B2 publication Critical patent/JPH0640307B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
    • G06F13/423Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus with synchronous protocol
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/122Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware performs an I/O function other than control of data transfer

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)
  • Bus Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はデータ処理システム、特にCP、Uと主記憶装
置および他のI/○゛装置との間に主I/Oバスを有す
るデータ処理システムに係る。
〔開示の概要〕
本発明は、CPUと、CPUからデータを受取ったりC
PUヘデータを供給したりする主記憶装置のような少な
くとも1つの外部装置と、CPUと外部装置の間のデー
タ転送のためのI/Oバスとを有する通常のデータ処理
システムで実施される。本発明の装置は、前記の外部装
置、例えば主記憶装置へ(からの)転送と、種々のCP
U動作および計算機能を実施するためCPUで定型的に
実施されるレジスタ間データ転送とをオーバラップして
実行する。即ち、CPUは、同期されたサイクルタイム
の間にI/Oバスにより前記外部装置へ(から)データ
を転送する装置と、複数のレジスタならびにレジスタ間
データ転送の手段を含むローカル記憶装置とを含む。制
御装置は、レジスタ間データ転送を制御し、前記転送が
、外部記憶装置へ(から)のデータ転送に一致するサイ
クルタイムの間に実行されるようにする。このように、
cpu内のレジスタ間データ転送は主記憶装置との間の
I/Oバスを介したデータ転送とオーバラップされる。
本発明の装置は、いくつかのレジスタ間転送が外部記憶
装置へ(からの)のデータ転送に要する時間の間に実行
できるように動作できる。更に、レジスタ間転送とI/
Oバス転送の間のデータ従属状態を動的に決定できる手
段も設けられる。
〔従来技術〕
現今のマイクロプロセッサ技術を含むデータ処理技術で
は、主■/○バスすなわち、CPUと、主記憶装置およ
び種々の、例えばディスク、ディスプレイまたはプリン
タのようなI/O装置のような外部装置との間のチャネ
ルでパイプライン方式を用いることは周知の手段である
。このようなパイプライン方式は、I/Oバスでオーバ
ラップしたトランザクションを必要とする、すなわち、
種々のI/O装置もしくは主記憶装置との間の複数のデ
ータ転送が主I/Oバスでオーバラップすることかある
。換言すれば、■/○バスを単一のトランザクションに
固定する必要がなく、第1のトランザクションが開始さ
れ、それが終了する前に、I/Oバスを必要とする第2
、第3の転送トランザクションが開始されることがある
。このようなパイプライン動作を説明する代表的な特許
として米国特許第3447135号、同第413088
5号、同第4232366号、同第412882号、お
よび同第3997896号がある。
従来の技術では、このようなデータ転送をオーバラップ
し、外部の装置によるI/Oバスを介したデータ処理動
作をスピードアップする必要性は認識されてはいたが、
このような外部における転送と、CPU自身の内で起き
る記憶転送とのオーバラツプは殆ど考慮されていなかつ
たようであるる、CPUは、その動作および計算機能を
実行す9る際、CPUにあるローカル記憶装置内で広範
囲なレジスタ間転送を実施しなければならない。現今の
マイクロプロセッサ技術では、このようなローカル記憶
装置は慣例的に複数のRAMレジスタを含み、これらの
レジスタには、外部の主記憶装置から取出されたデータ
が、CPUで処理されている間、一時的に記憶される。
このようなデータの処理では通常、CPU内での多数の
レジスタ間転送が必要である。このようなレジスタ間転
送は、比較的短かい期間に行なわれ、通常、lCPUタ
イムサイクルの実効スループットで終了する。それに対
して、I/Oバスを介した主記憶装置または他の■/○
装置との間の転送に要する時間はずっと長く、通常、3
またはそれ以上のCPUサイクルタイムで終了する。従
来の非常に多くのデータ処理システムでは、CPUでキ
ャッシュ記憶装置を用い、I/Oバスから主記憶装置ま
たは他の■/○装置への相当数のデータ転送トランザク
ションを、それらデータをCPUで使用する以前の期間
に実行し、CPUに関連したキャッシュ記憶装置でバッ
ファできるようにするのが普通である。
このようなキャッシュ記憶装置を利用するシステムでは
、データを記憶装置または他のI/O装置から転送する
のに比較的長い時間を要しても、CPU動作または計算
を実行する主記憶装置から要求された命令または他のデ
ータの大部分が、CPUのキャッシュ記憶装置に前もっ
て記憶され、即時使用可能な状態であるので、問題は生
じなかったかもしれない。
〔発明が解決しようとする問題点〕
マイクロプロセッサの進歩により、種々のマイクロプロ
セッサ回路を形成する半導体基板の寸法から得られる空
間の技術的な限界により、CPUのキャッシュ記憶装置
の寸法を大幅に縮小する傾向が見られる。そのため、キ
ャッシュ記憶装置のための空間を不要なものとすると共
にマイクロプロセッサに必要な高い動作速度をどのよう
に維持するかが問題である。
〔問題点を解決するための手段〕
本発明は、CPUの計算および他の動作に必要なレジス
タ間データ転送を、CPUと主記憶装置または他のI/
O装置との間のデータ転送と同時に、またはオーバラッ
プして実行する装置を設けることにより、CPUのキャ
ッシュ記憶装置を取除くか、または大幅に縮小し、マイ
クロプロセッサの高い処理速度を維持するものである。
本発明のデータ処理システムは、CPUと、データをC
PUから(へ)要求(供給)する主記憶装置のような、
少くとも1つの外部装置と、CPUと外部装置の間のデ
ータ転送のためのI/Oバスとを含む。このCPUは、
同期されたCPUタイムサイクルの間にI/Oバスを介
して主記憶装置または他の外部装置へ(から)データを
転送する手段を含む。更に、CPUは、複数のレジスタ
を含むローカル記憶装置と、このようなローカル記憶装
置でレジスタ間データ転送を行なう手段と、レジスタ間
データ転送を、外部装置へ(から)の転送に一致したサ
イクルタイムの間に実行するように制御する制御手段と
を含む。
CPUと外部装置の間の転送データと、前記レジスタ間
転送データの間には、しばしばデータ従属状態があるか
ら、制御手段は更に、このデータ従属状態を動的に決定
する手段を含む。
本発明を実施する場合、データ従属状態を動的に決定す
るため、外部記憶装置へ(から)データを転送する手段
は、データ転送コマンドを生成する手段と、データを転
送する(される)ことになっている前記ローカル記憶手
段においてレジスタを割当てる手段と、割当てられたレ
ジスタを識別するタグを記憶する手段とを含む。更に本
発明のデータ処理システムは、次のデータ転送コマンド
およびレジスタ間転送コマンドを、記憶されているタグ
と比較する手段も含む。
〔作用〕
本発明の装置は、CPUと主記憶装置または他のI/O
装置との間のデータ転送と同時に、またはオーバラップ
して、CPUにおけるレジスタ間データ転送を実行する
〔実施例)、、( 第1図は本発明を実施するのに使用できる装置の概要ブ
ロック図を示す。本発明に関連する素子はCPUl0に
含まれていて、記憶コントローラ13により、■/○バ
ス11すなわちチャネルを介して主記憶装置12と通信
し、かつI/Oバスコントローラ]4を介して、ディス
ケットドライブ、プリンタまたはディスプレイ(図示せ
ず)のような種々のI/O装置と通信する。CPUl0
は従来のどのマイクロプロセッサを用いても実現できる
。本発明の詳細な説明する前に、本発明に関連する範囲
内でCPUの概略の動作を説明する。
CPUの動作により実行される命令(インストラクショ
ン)は、通常の方法で記憶装置から取出され、命令バッ
ファ15に一時的に記憶される。後に説明するように1
、命令マルチプレクサ16は命令を分解し、ある部分は
制御ロジック17に送られてCPU動作を(オペレーシ
ョン)制御し、ある部分はCPUにローカル記憶手段を
与えるレジスタアレイ18にある種々のレジスタに送ら
れる。データは、レジスタアレイ18から種々の計算動
作を実行できるA’L’U/シフタ21を介して、また
はレジスタ22、バス23および■/○バス11を介し
て主記憶装置12へ転送できる。主記憶装置12からの
データは、後に詳細に説明するように、I/Oバス11
、バス24、およびフォーマツタ25を介してCPUl
0のレジスタアレイ18に転送できる。更に、データは
ALU/シフタ21から、ALU出力レジスタ26とバ
ス27を介してレジスタアレイ18にリターンできる。
CPU1’O内の非常に多数のトランザクションはレジ
スタアレイ18のレジスタの内容の処理に関連する。こ
れらの動作はレジスタ間データ転送と呼ばれる。その他
の転送は、■/○バス11を介して主記憶装置12また
はI/Oバスコントローラ14へ(から)行なわれる。
I/Oバス11を介して主記憶装置12またはI/O装
置へ(から)の転送は、レジスタ間転送よりもかなり長
い時間を要する。ちなみに、cPUIOの動作はクロッ
ク28の制御による同期動作である。クロック28から
周期的な出力がクロック29に送出され、CPUIC)
の主要なすべての素子ならびに記憶コントローラ13お
よびI10バスコントローラ14に供給され、データ処
理システム全体がクロック28によって決められたCP
Uサイクルタイムに同期する。クロック28は、標準的
なCPUサイクルタイムの生成すなわち同期動作のため
の通常の回路である。このようす動作では、CPUl0
のレジスタアレイ18におけるレジスタ間データ転送は
1.CPUサイクルのオーダーで行なわれるが、主記憶
装置12またはI/O装置へ(から)の転送にかかわる
トランザクションは、3またはそれ以上のCPUサイク
ルタイムを要する。
次に第1図のCPUl0における関連するロジックの動
作、ならびに第2図にタグロジックの詳細を、レジスタ
間転送ならびにI/Oバス11による主記憶査12へ(
から)の転送の両者にかかわるトランザクションについ
て説明する。
命令は、既にCPUl0にあるものでも、又は、主記憶
装置12から取出されたものでも、命令バッファ15に
記憶される。命令は、第7図に示された形式を有するレ
ジスタ間転送のものもあり、又は、第8図に示された形
式を有する、主記憶装置または他のI/O装置へ(から
)転送するためのものもある。最初に、第7図の形式の
レジスタ間転送命令について説明する。命令マルチプレ
クサ16は命令を次のように分割する。すなわち、実行
される命令のタイプを表わす○Pコード31を制御ロジ
ック17に送り、制御ロジック32(第1図)を介して
実行命令を送ることにより、その機能の実行を制御する
。−例として加算(ADD)機能について説明する。第
7図の命令の2つのセクション33.34は、割算に必
要な起点レジスタR3、R4の内容を示す。第7図の最
後のセクション35は宛先レジスタR3を示す。このよ
うに、第7図の命令では、レジスタR3とレジスタR4
の内容の和がレジスタR3に格納される。従って、信号
は線33A、34A(第1図)を介して供給され、第1
および第2の起点レジスタ、すなわちレジスタR3、R
4の内容が読取られる。制御レジスタ32は、OPコー
ド31から〔・の読取による加算機能を含む。このOP
コード(加算)は、制御レジスタ32から出力された実
行制御・によりALU/シフタ21に入力37を介して
供給され、ALU/シフタ21により、第1および第2
の起点レジスタ、すなわちレジスタR3、R4の内容が
六入力レジスタ35、B入力レジスタ36にラッチされ
、ALU/シフタ21に供給される。この時点で取出し
フェーズは終了する。
次の実行フェーズにおいて、制御レジスタ32の制御情
報、すなわち加算機能が、実行すにき動作を制御するの
に使用される。前述のように、制御レジスタ32からの
制御コードは、入力37を介してALU/シフタ21に
供給される。ALU/シフタ21の動作は通常の方法で
実行され、その結果はALU出力レジスタ26にラッチ
される。
次のフェーズ(再書込みと呼ばれることがある)におい
て、ALU/シフタ21の動作結果が再書込みされる、
すなわちバス27を介して宛先レジスタ−この場合は宛
先レジスタを入力する線49で指示されたR3−に転送
される。
これらの動作、すなわち取出し、実行および再書込みの
動作の各々は、単一のCPUサイクルタイムで実行され
る。前述の説明は単一の命令の実行に関するものである
が、連続する命令の場合は、それぞれの命令がオーバー
ラツプして実行され、第1の命令が実行フェーズのとき
、第2の命令は取出しフェーズにあり、第1の命令は実
行フェーズ、第3の命令は取出しフェーズにあることが
ある。従って、3つの命令がオーバラップするから。
レジスタ間転送にかかわる通常のCPU内部の動作が終
了するのに、3CPUサイクルタイムかかるが、CPU
の実際のスループットは1サイクル当り完全に1動作で
ある。
主記憶へ(から)の転送にかかわるトランザクションは
、CPUに関する限り同様に実行される。
これは第8図に示された主記憶転送命令によって制御さ
れる。この命令は命令マルチプレクサ16によって分割
され、そのOPコートは制御ロジック17を介して制御
レジスタ32に送られ、記憶命令のタイプ、すなわち(
主記憶装置への)書込み、またはロード(主記憶装置か
らの読出し)のどちらかを指示する。このOPコードは
、前述のように、入力37を介してALU/シフタ21
に送られる。主記憶転送命令のセクション39(第8図
)は、レジスタアレイ18のレジスタR2の内容の主記
憶装置12への書込み、または、ロード命令の場合は、
主記憶装置12がら続出されたデータをロードする宛先
レジスタを指示する。従って、取出しフェーズが終了す
ると、書込み動作で、主記憶装置12に書込まれるデー
タはB入力レジスタ36にラッチされる。また、取出し
フェーズの終了と同時に、主記憶転送命令の主記憶アド
レスセクション40(第8図)の内容が六入力レジスタ
35にラッチされる。次の実行フェーズにおいて、B入
力レジスタ36の内容、すなわち書込まれるデータはレ
ジスタ22(記憶データレジスタ)に転送され、ALU
/シフタ21は、A1、入力レジスタ35の内容から記
憶アドレスを計算し、この記憶アドレスをレジスタ41
(記憶アドレスレジスタ)に送る。次の再書込みフェー
ズにおいて、レジスタ22の記憶データの内容とレジス
タ41の記憶アドレスの内容は、I/Oバス11を介し
て記憶コントローラ13に転送される。
従って、CPUl0から記憶コントローラ13へのデー
タ転送は3CPUサイクルタイムかかっている。記憶コ
ントローラ13に関する主記憶装置12の動作により、
書込み動作で主記憶装置12ヘデータを書込み、または
ロード動作で主記憶装置12からCPUl0のレジスタ
アレイ18の指定されたレジスタへデータを再読取りす
るのに、更に3CPUサイクルタイムかかる。
後に詳細に説明するように、本発明の装置の実施例では
、主記憶装置12へ(がら)の2つの転送が相互にオー
バラップできるのは、主記憶装置12へ(から)の転送
を終了するのに6CPUサイクルタイムかかるからであ
り、これらの転送の2つがオーバラップすることにより
、実効スループットは、3CPUサイクルタイムで、主
記憶装置12へ(から)の1つの転送を行なう。前述の
;・也・・ ように、CPUl0の内部レジスタ間転送の実効スルー
プットはIC,PUサイクルタイムで1つのレジスタ間
転送を行なうので、装置の実効スループットは、主記憶
装置12へ(から)の1つの転送が実行されている間に
、CPUl0の中で3つのレジスタ間転送を同時に実行
できる。
前述のように、本発明の装置は、データの従属状態を動
的に決定し、前の動作が終了して次の動作に必要なデー
タを十分に供給できるかどうかを決定できる。この状態
の例は、一連の動作で、ある命令の実行が、前に開始さ
れたオーバラップする命令−次の命令に必要なデータを
供給する−の終了前に要求される場合に生じることがあ
る。これは主記憶転送命令(第8図)−ロード命令−で
生じセクション39は、レジスタアレイI8で、主記憶
装置12から読取られたデータをロードする宛先レジス
タを指示する。従って、次の命令に必要なデータが、前
のオーバラップしている命令がまだ終了していないため
に、まだ宛先レジスタに取込まれていない場合、前の命
令が終了するまで、次の命令の実行をホールドオフ、す
なわち待機させなければならない。この機能は、第1図
のタグロジック42(そ、の詳細は第2図に示す)によ
り実行する。次に、このタグロジック機能について第1
図と第2図により説明する。
第2図に示すタグロジックは2つのタグレジスタを有す
る。これらのレジスタは、レジスタアレイ18にあるレ
ジスタを追跡するとともに宛先レジスタとして作用し、
主記憶装置12から転送されてレジスタアレイ18中の
指定されたレジスターそれぞれタグlレジスタまたはタ
グlレジスタにより識別される−へのロードを追跡する
従って、マルチプレックスされた後、記憶アドレス(第
8図)を決定するのに使用される第1および第2起点レ
ジスタの内容が、線33Aおよび34A(第1図)を介
してレジスタアレイ18に供給され、更に線45および
46を介して、第2図に示されたタグロジックにも供給
される。この入力は、後述の手順でホールドオフを決定
するのに用いられる。同様に、セクション39(第8図
)で指示された宛先レジスタの内容は、線47を介して
タグロジック(第2図)に送られる。宛先しジスタの番
号は、タグOまたはタグルジスタのどちらが使用可能か
により、タグOレジスタ43またはタグルジスタ44に
畳込まれる。とにかく、本実施例では、タグOおよびタ
グ1の2つのレジスタしか使用できないから、主記憶装
置12からの2つのロード転送しかオーバラップしない
、すなわち同時に実行されないであろう。しかしながら
、そのようなロード命令の場合、実行フェーズの間に、
制御ロジック17は、制御レジスタ32から実行制御線
(第1図)を介して、フォーマットデータを、タグOま
たはタグルジスタに、それぞれ線50または51により
供給する。タグ0またはタグルジスタのFMT部分に書
込まれるフォーマットデータは、主記憶装置12からロ
ートされるデータを適切にフォーマットするのに使用さ
れる。フォーマット(FMT)データは、主記憶装置1
2から受取ったデータのどの部分を1、)タグ0または
タグルジスタによって指定された、レジスタアレイ18
の中の適切なレジスタにロードすべきかを指示する。タ
グ0レジスタ43は関連する比較器52.53および5
4を有し、線45〜47を介した第1および第2の起点
レジスタならびに宛先レジスタの内容と、タグ0レジス
タ43に書込まれた宛先レジスタの内容とが比較される
。同様に、タグルジスタ44は関連する比較器55.5
6および57を有し、線45〜47からの入力と、タグ
ルジスタ44の内容とが比較される。
次に、第1図および第2図に示されたロジックにより第
3図〜第6図の流れ図で、タグロジックにかかわる一連
の動作を、少なくとも1つのオーバラップされた実行中
の命令がレジスタアレイ18の中の1つのレジスタへの
ロードを必要とする状態に関連して説明する。第3図の
流れ図において、ロード命令の実行中に、ステップ60
で。
(0または1の)タグレジスタが使用可能かどうかの決
定を行なう。若し、どれも使用可能なら、ステップ61
に分岐し、該ロード命令はタグ0ま1.Iたはタグルジ
スタが使用可能になるまで待機する。他方、若し、ある
レジスタが使用可能なら、ステップ62で、タグ0レジ
スタが、レジスタアレイ18にある同じ宛先レジスタへ
のロードを指定しまだ終了していない、前のロード命令
で既に使用されているかどうかについて決定する。若し
、既に使用されているなら、ステップ63で、タグ0に
かかわるすべての前の命令は取消される。タグ0にかか
わる前の命令の取消しの後、または若しタグ0レジスタ
が宛先レジスタに指定されていなければ、ステップ64
で、タグルジスタがレジスタ18にある同じ宛先レジス
タへのロードを指定し、まだ終了していない、前のロー
ド命令で既に使用されているかどうかについて決定する
若し、既に使用されているなら、ステップ65で、タグ
lにかかわるすべての前の命令は、取消される。タグl
にかかわる前の命令の取消しの後、または若しタグルジ
スタが宛先レジスタに指定されていなければ、ステップ
66で、タグOレジスタが使用可能かどうかについて決
定する。若し、使用可能なら、ステップ67で、タグO
レジスタは現在の命令の宛先レジスタ番号を保管するの
に割振られ、フォーマット情報を線50(第2図)を介
してタグレジスタ0に送る。他方、若し、タグ0レジス
タが使用可能ではないなら、タグルジスタが使用可能で
あるに違いない。従って、タグルジスタは現在の命令の
宛先レジスタに割振られ、フォーマットデータが線51
を介して供給される。ステップ60〜68に示したタグ
動作は、線72および73を介してタグOおよびタグル
ジスタと通信するタグ制御ロジック70の制御により実
行される。
タグ0レジスタ43の出力は線72を介してマルチプレ
クサ(MUX)71に送られ、タグルジスタ44の出力
は線73を介してマルチプレクサ71に送られる。マル
チプレクサ7】でマルチプレクサされた出力は線74を
介してレジスタアレイ18に送られ、レジスタアレイj
8に宛先レジスタのアドレスが供給される。従って、線
24を介して主記憶装置12から送られたデータはレジ
スタアレイ18にロードされる。線75および76を介
して、タグ0レジスタ43およびタグ】レジスタ44か
らフォーマット制御データ(FMT)がマルチプレクサ
77に送られ、マルチプレクサ77の出力は線78を介
してフォーマツタ25に供給され、指定されたレジスタ
にロードすべきデータのフォーマットを指示する。
第6図において、主記憶装置12からデータとともに送
られるタグ、特にタグOまたはタグルジスタを指示する
タグの復号に関する手順を説明する。主記憶装置12か
らバス24を介して送られたデータは、タグデコードロ
ジック80によりモニタされ、タグが主記憶装置12か
ら取出された命令を表わす幾つかの通常のタグの1つか
、またはタグO、タグ1の対の1つかどうかが決定され
る。若し、タグが命令を表わすなら、タグデコードロジ
ック80は、その命令を線83を介して命令バッファ1
5にロードすることを、a81により命令にバッファ1
5に知らせる。他方、前記タグがタグOまたはタグ1の
場合は、タグデコードロジック80は第6図に示した手
順を実行し゛、タグがタグOかまたはタグ1のどちらを
表わすかを決定する。最初に、ステップ85で、タグが
タグ0レジスタを表わすかどうかを決定する。若しタグ
0を表わすなら、ステップ86で、更にタグ0が取消さ
れているかどうかを決定する。タグは関゛連レジスタが
重ね書きされている場合は取消されているので、そのタ
グに関連したロードはもはや有効ではない。よって、若
し、タグが取消されていないなら、ステップ87で、レ
ジスタアレイ18の、タグ0レジスタで指示されたレジ
スタにデータがロードされる。すなわち、タグデコード
ロジック80から線82(第1図)を介してタグロジッ
ク42へ信号が送られ、第2図のタグ制御ロジック70
によりタグ0レジスタ43の内容が線72を介してマル
チプレクサ71に送られ、タグ。
レジスタに書込まれている適切な宛先レジスタのアドレ
スが線74がらレジスタアレイ18に供給1される。同
様に、タグ0レジスタのフォーマットデータが線75、
マルチプレクサ77および線、1′、(、号 8を介してフォーマツタ25に送られ必要なフォーマッ
ト制御を行なう。第6図のステップ87の動作の後、ま
たはステップ86でタグOが取消されていると決定され
た場合は、ステップ88で、タグOレジスタは使用可能
な状態にセットされる。
ステップ85で、主記憶装置12からのデータに関連し
たタグがタグ0ではないと決定された場合、ステップ9
0で、前記タグがタグ1であるかどうかを決定する。ス
テップ91.92および93は、タグ0をタグ1に置換
える以外は、ステップ86.87および88と同じ動作
を実行する。
次に、第4図と第2図により、レジスタ間転送ならびに
主記憶装置およびI/O装置へ(から)の転送を含むす
べての命令の比較ロジックにより実行される比較機能に
ついて説明する。最初に、第4図のステップ100で、
どちらの起点レジスタがタグ0レジスタに等しいかどう
かを決定する。
一致した場合は、タグ0で指示されたレジスタの内容に
データの従属状態があることを表わし、ステップ101
で、システムは待機状態に入る。この比較動作は第2図
の比較器52および53で行なわれる。比較器52また
は53における比較により線102または103に生じ
た出力は、ORゲート104に送られ、ORゲート10
4のホールドオフ出力は線105を介して制御ロジック
17に供給され、システムを待機状態にする。
若し、ステップ100で、どの起点レジスタもタグ0レ
ジスタに等しくないなら、ステップ106で、前述の手
順がタグルジスタ44(第2図)に関し、比較器55お
よび56を用いて反復される。
ステップ106の比較が一致する場合は、ステップ10
7で、タグルジスタで指示されたレジスタの内容が最終
的に主記憶装置からの転送によりロードされるまで待機
すなわちホールドオフが生じる。
第2図で、第4図の手順に関して説明したように、一定
の命令で起点レジスタを比較する外に、線47を介して
送られた命令の宛先レジスタも。
比較器54および57によりタグOレジスタ43゜およ
びタグルジスタ44とそれぞれ比較され、タグOレジス
タを取消す出力を制御ロジック17への線109に生じ
るか、またはタグルジスタを取消す出力を制御ロジック
17への線110に生じる。この手順は第5図の流れ図
に示す。第5図と第2図に関連して示された取消し手順
は、次のコマンドが前のコマンドにかかわる転送が終了
する前に、前のコマンドによって指示された宛先レジス
タにデータを転送する状態もカバーする。
この場合、前のコマンドで割当てられた宛先は取消され
るので、事実上、前のコマンドは取消される。
〔発明の効果〕
本発明の装置により、外部装置、例えば主記憶装置へ(
から)のデータ転送と、CPU内のレジスタ間データ転
送をオーバラップして実行できる。
【図面の簡単な説明】
第1図は本発明にかかわるCPU装置の概要論う環ブロ
ック図、第2図は第1図のタグロジックの詳細を示す論
理ブロック図、第3図は本発明にかかわるロード命令の
タグ動作の流れ図、第4図は本発明にかかわるホールド
オフ比較動作の流れ図、第5図は本発明の宛先比較動作
の流れ図、第6図は本発明のタグ転送動作の流れ図、第
7図はレジスタ間転送命令の形式図、第8図は主記憶転
送命令の形式図である。 10・・・・CPU、11・・・・I/Oバス、12・
・・・主記憶装置、13・・・・記憶コントローラ、1
4・・・・I/Oパスコン1〜ローラ、15・・・・命
令バッファ、1G・・・・命令マルチレクサ、I7・・
・・制御ロジック、18・・・・レジスタアレイ、21
・・・・AL’U/シフタ、22・・・・レジスタ、2
3.24・・・・バス、25・・・・フォーマツタ、2
6・・・・ALU出力レジスタ、27・・・・バス、2
8・・・・クロツタ、29・・・・クロック線、32・
・・・制御レジスタ、35・・・・六入力レジスタ、+
36・・・・B入力レジスタ、42・・・・タグロジッ
ク、43・・・・タグOレジスタ、44・・・・タグル
ジスタ、52〜57・・・・比較器、70・・・・タグ
制御ロジック、71,77・・・・マルチプレクサ。 揃始 終了 第4図 本−ルトオフ比較勧イ〜の流れ図 殉始 奪ト了 第5図 砲先比較動作の流れ図 内珀 中トエ y−s第6図 レジスタIt1七埴題空冷の形式2 第7図 主記憶転送命命の形氏図 第8図

Claims (1)

  1. 【特許請求の範囲】 CPUと、前記CPUからデータを要求し又は前記CP
    Uヘデータを供給する少くとも1つの外部装置と、前記
    CPUおよび前記外部装置の間で前記データを転送する
    I/Oバスとを含むデータ処理システムにおいて、 同期されたCPUサイクルタイムの間に前記バスを介し
    て前記CPUと前記外部装置との間の両方向データ転送
    を行なう装置と、 複数のレジスタを含むローカル記憶装置と、前記ローカ
    ル記憶装置内のレジスタ間データ転送を行なう装置と、 前記レジスタ間データ転送を、前記CPUと前記外部装
    置との間の前記両方向データ転送に一致するサイクルタ
    イムの間に実行するように制御する制御装置と を含むことを特徴とするデータ処理システム。
JP60006056A 1984-05-31 1985-01-18 デ−タ処理システム Expired - Lifetime JPH0640307B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/615,984 US4630195A (en) 1984-05-31 1984-05-31 Data processing system with CPU register to register data transfers overlapped with data transfer to and from main storage
US615984 1984-05-31

Publications (2)

Publication Number Publication Date
JPS60256866A true JPS60256866A (ja) 1985-12-18
JPH0640307B2 JPH0640307B2 (ja) 1994-05-25

Family

ID=24467573

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60006056A Expired - Lifetime JPH0640307B2 (ja) 1984-05-31 1985-01-18 デ−タ処理システム

Country Status (6)

Country Link
US (1) US4630195A (ja)
EP (1) EP0163148B1 (ja)
JP (1) JPH0640307B2 (ja)
CA (1) CA1225748A (ja)
DE (1) DE3580396D1 (ja)
MY (1) MY100954A (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4766564A (en) * 1984-08-13 1988-08-23 International Business Machines Corporation Dual putaway/bypass busses for multiple arithmetic units
JPS63170736A (ja) * 1987-01-09 1988-07-14 Toshiba Corp マイクロプロセツサ
US5001624A (en) * 1987-02-13 1991-03-19 Harrell Hoffman Processor controlled DMA controller for transferring instruction and data from memory to coprocessor
CA1327080C (en) * 1987-05-26 1994-02-15 Yoshiko Yamaguchi Reduced instruction set computer (risc) type microprocessor
EP0386151B1 (en) * 1987-11-10 1996-06-19 Echelon Corporation Multiprocessor intelligent cell for a network
US5034882A (en) * 1987-11-10 1991-07-23 Echelon Corporation Multiprocessor intelligent cell for a network which provides sensing, bidirectional communications and control
US5291615A (en) * 1988-08-11 1994-03-01 Kabushiki Kaisha Toshiba Instruction pipeline microprocessor
US5218711A (en) * 1989-05-15 1993-06-08 Mitsubishi Denki Kabushiki Kaisha Microprocessor having program counter registers for its coprocessors
JPH0314025A (ja) * 1989-06-13 1991-01-22 Nec Corp 命令実行制御方式
US5179672A (en) * 1990-06-19 1993-01-12 International Business Machines Corporation Apparatus and method for modeling parallel processing of instructions using sequential execution hardware
US5287512A (en) * 1990-08-06 1994-02-15 Ncr Corporation Computer memory system and method for cleaning data elements
EP0474253B1 (en) * 1990-09-07 1998-12-02 Nec Corporation Register circuit for copying contents of one register into another register
JP2665081B2 (ja) * 1991-07-08 1997-10-22 三菱電機株式会社 マイクロコンピュータのレジスタ間データ転送方式
US5363495A (en) * 1991-08-26 1994-11-08 International Business Machines Corporation Data processing system with multiple execution units capable of executing instructions out of sequence
US5530835A (en) * 1991-09-18 1996-06-25 Ncr Corporation Computer memory data merging technique for computers with write-back caches
JPH05113929A (ja) * 1991-10-22 1993-05-07 Mitsubishi Electric Corp マイクロコンピユータ
JPH0820949B2 (ja) * 1991-11-26 1996-03-04 松下電器産業株式会社 情報処理装置
US5502821A (en) * 1992-06-29 1996-03-26 Xerox Corporation Method of determining devices requesting the transfer of data signals on a bus
JP2549256B2 (ja) * 1992-12-01 1996-10-30 インターナショナル・ビジネス・マシーンズ・コーポレイション 浮動小数点プロセッサへデータを転送する方法及び装置
US5467473A (en) * 1993-01-08 1995-11-14 International Business Machines Corporation Out of order instruction load and store comparison
CA2123442A1 (en) * 1993-09-20 1995-03-21 David S. Ray Multiple execution unit dispatch with instruction dependency
JP2752592B2 (ja) * 1994-12-28 1998-05-18 日本ヒューレット・パッカード株式会社 マイクロプロセッサ、マイクロプロセッサ−デバッグツール間信号伝送方法及びトレース方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5412237A (en) * 1972-10-02 1979-01-29 Rca Corp Electronic controller
JPS5743247A (en) * 1980-08-28 1982-03-11 Nec Corp Information processing equipment

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3401376A (en) * 1965-11-26 1968-09-10 Burroughs Corp Central processor
US3447135A (en) * 1966-08-18 1969-05-27 Ibm Peripheral data exchange
US3588829A (en) * 1968-11-14 1971-06-28 Ibm Integrated memory system with block transfer to a buffer store
US3967247A (en) * 1974-11-11 1976-06-29 Sperry Rand Corporation Storage interface unit
US3997896A (en) * 1975-06-30 1976-12-14 Honeywell Information Systems, Inc. Data processing system providing split bus cycle operation
JPS5263038A (en) * 1975-10-01 1977-05-25 Hitachi Ltd Data processing device
JPS5247638A (en) * 1975-10-15 1977-04-15 Toshiba Corp Information processing device
US4063078A (en) * 1976-06-30 1977-12-13 International Business Machines Corporation Clock generation network for level sensitive logic system
US4130885A (en) * 1976-08-19 1978-12-19 Massachusetts Institute Of Technology Packet memory system for processing many independent memory transactions concurrently
US4128882A (en) * 1976-08-19 1978-12-05 Massachusetts Institute Of Technology Packet memory system with hierarchical structure
US4232366A (en) * 1978-10-25 1980-11-04 Digital Equipment Corporation Bus for a data processing system with overlapped sequences
DE3151937C1 (de) * 1981-12-30 1983-04-14 Siemens AG, 1000 Berlin und 8000 München Kanalsteuerung für Multiplexkanäle eines Ein-/Ausgabewerkes einer Datenverarbeitungsanlage

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5412237A (en) * 1972-10-02 1979-01-29 Rca Corp Electronic controller
JPS5743247A (en) * 1980-08-28 1982-03-11 Nec Corp Information processing equipment

Also Published As

Publication number Publication date
JPH0640307B2 (ja) 1994-05-25
US4630195A (en) 1986-12-16
DE3580396D1 (de) 1990-12-13
CA1225748A (en) 1987-08-18
EP0163148B1 (en) 1990-11-07
EP0163148A3 (en) 1987-12-23
EP0163148A2 (en) 1985-12-04
MY100954A (en) 1991-06-15

Similar Documents

Publication Publication Date Title
JPS60256866A (ja) デ−タ処理システム
USRE34052E (en) Data processing system with CPU register to register data transfers overlapped with data transfer to and from main storage
JPS5975365A (ja) ベクトル処理装置
US5287483A (en) Prefetched operand storing system for an information processor
JP3061106B2 (ja) バスブリッジおよびそれを備えた計算機システム
JPH01303529A (ja) データ処理装置
KR100241970B1 (ko) 파이프라인 처리를 수행하는 데이터 처리 장치
JPH02742B2 (ja)
JPH0793101A (ja) データバックアップ装置
JPH0877143A (ja) ベクトルデータ処理装置
JP2814683B2 (ja) 命令処理装置
JP2716254B2 (ja) リストベクトル処理装置
JPS622335A (ja) フアイル装置のバツクアツプ処理方式
JPS60207942A (ja) 記憶コントロ−ラおよび記憶装置検査装置
JPS61131047A (ja) パイプライン制御方式
JP2953451B2 (ja) 割り込み処理方法
JPS60176144A (ja) レジスタフアイル装置
JPS5832428B2 (ja) マルチプロセツサ制御方式
JP2798492B2 (ja) リストベクトル処理装置
JPS6391756A (ja) 記憶装置の部分書き込み命令処理方式
JPS62202254A (ja) 論理装置に対する連続デ−タ転送方式
JPH01284940A (ja) メモリ制御装置
JPS58137024A (ja) 周辺機器制御装置
JPS6343782B2 (ja)
JPS6343783B2 (ja)

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term