JPS63238631A - I/oプロセツサ用の実行装置 - Google Patents

I/oプロセツサ用の実行装置

Info

Publication number
JPS63238631A
JPS63238631A JP62317620A JP31762087A JPS63238631A JP S63238631 A JPS63238631 A JP S63238631A JP 62317620 A JP62317620 A JP 62317620A JP 31762087 A JP31762087 A JP 31762087A JP S63238631 A JPS63238631 A JP S63238631A
Authority
JP
Japan
Prior art keywords
register
sequencer
task
bit
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
JP62317620A
Other languages
English (en)
Other versions
JP2741594B2 (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.)
Intel Corp
Original Assignee
Intel 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 Intel Corp filed Critical Intel Corp
Publication of JPS63238631A publication Critical patent/JPS63238631A/ja
Application granted granted Critical
Publication of JP2741594B2 publication Critical patent/JP2741594B2/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/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/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
    • 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/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
    • G06F13/126Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine and has means for transferring I/O instructions and statuses between control unit and main processor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はデータ処理装置に関するものであり、更に詳し
くいえば計算サブシステムとI/Oサブシステムの間の
データの流れを制御する命令を実行する装置に関するも
のである。
〔背景技術およびその問題点〕
未決の米国特許出願SN 921,313は、2種類の
バスをどのようにして結合するかという基本的なI/O
問題を取扱っている。I/Oバスにおいては、種々の周
辺装置により発生されたある範囲のデータ速度を有する
種々の装置がバスにより取扱われる。ある譚の装置では
、忙しくない期間の後で非常に忙しい期間が続き、忙し
くない期間と非常に忙しい期間の間の移シ変わシが急で
あるという問題も生じている。その問題は、プロセッサ
バスシーケンサト、I/Oバスシーケンサ、実行装置と
を設けることにより解決される。それらのプロセッサバ
スシーケンサとVOバスシーケンサおよび実行装置は非
同期で動作し、共通のレジスタファイルメモリを用いる
未決の米国特許出願SN 046,633は、I/Oバ
スシーケンサについてのものでるる。エルバスシーケン
サはI/Oバスとレジスタファイルへ接続される。レジ
スタは一様にアドレスされ、実行装置とシステムバスシ
ーケンサおよびI/Oバスシーケンサによシ共用される
ようになっている。レジスタファイルは複数のマルチボ
ートレジスタセットで構成される。
本発明は、前記米国特許出願に記載されている装置の残
シを制御する実行装置に関するものである。最近のVL
SI技術においては、高い性能を達成するために考慮せ
ねばならないクロック速度と、チップ面積と、消費電力
とが制限されている。それらの制限は、装置を並列に設
計することによシ対処でき、実行装置の場合には、この
ことはいくつかのタスクを1度に取扱う能力を意味する
〔目 的〕
したがって、本発明の目的は、マルチタスク動作を支持
する実行装置を得ることによ、91/Oチヤネルプロセ
ツサにおける並列構成を達成することである。
〔問題点を解決する九めの手段〕
簡単にいえば、この目的は、プロセッサで実行されてい
るタスクの間をレジスタセット記述子をメツセージの形
で通すことによシ、それらのタスクの間にレジスタセッ
トを割当てる手段を有するプログラムされたプロセッサ
を含む実行装置を設けることによυ本発明に従って達成
される。
本発明の1つの面に従って、タスクがレジスタセット(
バッファ)をサーバーの間で通せるようにするためにレ
ジスタセットロッキングが設けられる。サーバーは複数
のタスクまたはバスシーケンサの1つとすることができ
、あるサーバーはレジスタセットに作用するエージェン
トである。
レジスタファイルをレジスタセットに区分することによ
り各タスクがいくつかのセットを持つことができるとい
う利点を本発明は有する。そうすると、あるセットはプ
ライベート状態のデータを含むことができ、かつある特
定のタスクに常に割当てられ、他のセットはバッファま
たはメツセージとして使用でき、かつタスクの間を通す
ことができる。
レジスタセットロンキングは、マルチタスクが同じレジ
スタセットを同時に取扱うことができないようにしなが
ら、タスクがレジスタセットを共用できる(たとえばパ
イプラインされたアルゴリズムのために)という利点を
有する。
〔実施例〕
以下、図面を参照して本発明の詳細な説明する。
実行装置(P2xecution Unit (EU)
)まず第1図を参照する。実行装置/Oけ、チャネルプ
ロセッサ(cp)を通じてのデータの転送を管理するプ
ログラムを実行する。実行装置はマルチタスクを行う。
このマルチタスクはデータ転送の制御と、ローカルバス
上の計算サブシステム(CS)およびI/Oバス上のI
/Oサブシステムに対するインターフェイス動作のよう
な背景機能とを簡単にする。
アドレス空間(Address 5paces)EUは
5つのローカルアドレス空間、すなわち、命令空間と、
全体的なレジスタ空間と、CSデータ空間と、I/O空
間と、ローカルアドス空間とを有する。
命令空間(Instruction 5pace)EU
の命令空間は64に命令である。下側部分の1.5には
オンチップROMであって、CPの核を構成する共通の
副機能を含む。上側の部分は場所1.5Kから64Kま
で拡がり、CSメモリから動的にキャッシュサレル。
全てのタスクは同じ64に命令空間を共用する。
物理的にはCPはCSメモリ内にロックされる1つの固
定された命令領域を有する。全てのタスクの符号はその
領域の内側になければならない。その領域はCSメモリ
のアドレス空間内の4にバイト境界に位置する。固定さ
れた符号の場所はシステムメモリ内のCPへ与えられる
全体的なレジスタ空間(General rsgist
sr 5pace)各タスクはそれの全体的なレジスタ
空間内の32個の33ビツトの全体的レジスタ(33番
目のビットはタグ用である)までアクセスできる。その
空間はレジスタセットと呼ばれる8個の4語群に編成さ
れる。各レジスタセットはレジスタセットポインタ(第
2図)を介して間接的にアクセスされる。全体的なレジ
スタ空間内のデータはバイト、半語(16ビツト)また
は語として取扱うととができ、全てのデータはそれの自
然の境界上に整列せねばならない。
CSデータ空間(C8data 5pace)計算サブ
システム(CS)データ空間は4ギガバイト長までとす
ることができる。その空間はACCESS命令によりア
クセスできる。そのACCESS命令は物理的アドレス
を構成するためにレジスタファイル16内のエントリイ
を用いる。ACCESS命令は全体的レジスタとCSメ
モリの間のデータ転送を行う。
vO中空間I/O 5pace)C PのVOパス側のアドレス空間は直線的にアドレスでき
、16メガバイト長までの大きさとすることができる。
アドレス空間はACCESS命令を用いてアクセスする
こともできる。この命令はアドレス計算のためにレジス
タファイル内のレジスタを用い、全体的なレジスタとI
/O装置の間でデータ転送を行う。
ローカルレジスタ空間(Local register
 5pace)ローカルアドレス空間によシ、 m−マイクロコード、たとえば命令キャッシュのアドレ
ス表エントリイにより通常はアクセスされない特殊なc
pレジスタと、 一一別のやり方ではアクセスできないCP格納領域、た
とえばタスクフレームレジスタと、を含めたいくつかの
種類の記憶装置のアクセスを行う。
ローカルアドレス空間内のレジスタはACCE:5SL
OCAL命令を用いてアクセスされる。
レジスタ7アイA/ (Register File)
CPはレジスタファイルに含まれている1組のオンチッ
プ汎用レジスタを有する。レジスタファイル16は12
8個の33ビツト場所を含むRAMである。それらの1
28個のレジスタは32個の4語レジスタセットとして
編成される。
それらのレジスタセットと、レジスタセット内のデータ
は各タスクのレジスタセットポインタを介して間接的に
アクセスされる。したがって、レジスタは物理的にでは
なくて論理的にアドレスされる。適切である場合にはレ
ジスタは個々に(bytegranularity) 
 指定される。命令は、半語オペランドおよび語オペラ
ンドが適切な境界上に配置されると仮定する。
レジスタセットポインタ(Reglster set 
pointers)次に第2図を参照する。物理的レジ
スタセットアドレスをタスクのレジスタセットポインタ
の1つにロードすることにより、レジスタセットを動的
または静的にタスクへ割当てることができる。
レジスタセットポインタは論理的アドレス(命令中で用
いられる)と物理的レジスタセットアドレスの間でマツ
ピングを行う機構を構成する。各タスクは8個のレジス
タセットポインタを有する。
それらのポインタはローカル空間内でアクセスできる。
それらの書式(フォーマット)が第2図に示されている
。1番下の6個のビットは(0〜6)は第1図のレジス
タファイル16内のレジスタセットの物理的アドレスを
含む。1番上の3つのビット(6〜8)はアクセス制御
のために用いられる。
シーケンサ(第1図の12または14)がレジスタセッ
トで動作している問題を有していた時に誤υビットがセ
ットされる。たとえば、ローカルバスシーケンサ14が
16バイトヲレジスJセツトにロードするものと仮定さ
れ、何らかの理由で9バイトだけをロードできるものと
すると、シーケンサは誤シビットをセットしてからレジ
スタセットを宛先のタスクへ送る。誤シビットがセット
されたレジスタセットをタスクがあるレジスタセットを
アクセスしようとしているものとすると、ハードウェア
がコンテキストレベルの誤りを生ずる。
妥当(valid)ビットは、レジスタセットポインタ
が妥当ビットなアドレスを含み、後で説明する除外機構
(exclusion mechanism)において
も用いられる。
妥当ビットがセットされていないレジスタセットをアク
セスすることをタスクが試みる時にブロックビットがセ
ットされる。このビットは、どのレジスタセットにタス
クがブロックされているかを・・−ドウエアに指示する
。ブロックされたレジスタセットポインタが更新され、
妥当ビットがセットされると、そのレジスタセットのた
めのブロックビットがセットされるならばそのタスクは
ブロックを解除される。
MO■POINTER命令によシレジスタセットポイン
タをロードし、格納することができるようにする。この
命令は、メツセージをベースとするレジスタセットのパ
ッシングを行う時に主として用いられる。
レジスタセットロッキング(Register set
 locking)この明細書においては用語「タスク
」と「サーバー」をないまぜにして使用するものとする
「サーバー」はレジスタセットに作用する[エージェン
ト(agent) Jとここでは定義する。サーバーは
8個のタスクの1つまたはバスシーケンサとすることが
できる。
妥当ビットがリセットされているレジスタセットボイ/
りを介してレジスタセットをアクセスしようと試みるど
のサーバーもブロックする。この機構は、それ自体の間
でレジスタセットを通すタスクに対するレジスタセット
のアクセスを制御するために設けられる。
1つのタスクから別のタスクへレジスタセットを論理的
に送る命令によシ妥当ビットはセットされ、リセットさ
れる。送シ手の側のタスクのレジスタセットポインタ妥
当ビットはリセットされ、宛先のタスクのレジスタセッ
トポインタ妥当ビットはセットされる。妥当ビットはA
CCESS命令によってもリセットされ、バスシーケン
サからのレジスタセット応答によってセットされて、E
Uとシーケンサの間でレジスタセット同期を行う。
スタックオペレーション(Stack 0perati
ons)ハードウェアは8個の各タスク(0〜7)に対
するスタックをサポートする。スタックはタスクの論理
レジスタ空間内に配置される。スタックは、タスクのタ
スクファイル1/ジスタ25内に配置されているスタッ
クポインタを介してアクセスされる。タスクファイルレ
ジスメについては前記未決の米国特許出願SN 921
313に詳しく記載されている。スタックポインタは、
レジスタファイル中の半語を指す論理アドレスを含む。
スタックにおけるあらゆるエントリイは半語である。呼
出し命令が実行されると、スタックポインタは減少させ
られ、プログラムカウンタ(pc)がそのスタックに押
しめげられる。復帰が起るとスタックポインタは増加さ
せられる。スタックはタスクの全論理的1/ジスタ空間
にわたって及ぶことができる。ポインタが論理的アドレ
スの範囲をこえて増加または減少させられたとすると、
スタックはタスクの論理的空間内でラップアラウンドす
る。
スタックは、誤シハンドラーアドレスのよりな16ビツ
ト値を保持する九めに使用できる。Pu5h命令とPo
p命令がレジスタファイルとスタックの間でデータを動
かして、スタックボイ/りを適切に更新する。
典型的には、タスクのレジスタ空間の高い方の端部(す
なわち、論理的レジスタセット7の最後の半N)を指す
念めにスタックポインタは初期設定される。
スタックアーキテクチャには、呼出しスタックのトップ
エントリイの内容のコピーを含むスタックの1番上のレ
ジスタが含まれる。このレジスタはスタックに対するキ
ャッシュとして作用する復帰命令の性能を最適にする。
命令セットアーキテクチャ(Instruetion 
5etArchitecture) 命令のEU上セツト下記の群に区分される。
−一レジスタオペレーション命令 一一流れ制御命令 m−メモリおよびI/Oアクセス命令 −一タスク制御命令 m−タスク間通信命令 m−その他の命令 これら命令群について以下に説明する。
−レジスタオペレーション命令(Reglster 0
perationInstructions)” レジスタオペレーション命令はレジスタオペランドの取
扱いにおいてALU22を用いる全ての命令を含む。そ
れらの命令はソースオペランドと宛先オペランドでオペ
レーションを行い、結果を宛先に置く。全てのオペレー
ションは8ビツト量、16ビツト量および32ビツト5
で実行できる。
算術演W、 (ARITIINETICOP)・・・・
・この命令はそれのオペランドに対して算術演算を実行
する。それらの演算には加算、減算、乗算、比、左桁移
動および右桁移動が含まれる。はとんどの演算は符号付
きまたは符号無しの算術設定フラッグまたは算術非設定
フラッグを用いて実行できる。
論理演算(LOGICAL OP)・・・・・この命令
はそれのオペランドに対して論理演算を行う。それらの
演算にはAND 、 OR、XOR等が含まれる。
ビット演算(BIT OP)・・・・・ この命令は2
つの機能を行う。第1の機能は任意の種類のオペランド
内の任意の1つのビットをテストし、セットし、クリヤ
する性能である。第2の機能はビットに対して分割でき
ないテストおよびセット動作を行い、したがって臨界領
域を実現する2進セマフオを与える性能である。
回転(ROTATE)・・・・・この命令は32ビツト
宛先オペランドを希望のビット位置数だけ回転させる。
ソースオペランドはビット位置の数を含み、命令は左回
転と右回転を指定する。
ロードリテラル(LOAD LITERAL)・・・・
・この命令は16ビツトまたは32ビツト宛先オペラン
ドに16ビツト値をロードする。
″流れ制御命令(Flow Control In5t
ructions)”流れ制御命令は命令の流れを分岐
させる命令である。
分岐および呼出しくBRANCHandCALL)・・
・・・それらの命令の目標アドレスがその命令中に符号
化される。分岐または呼出しは条件付きであるように指
定でき、その場合にはオペレーションフラッグが適正に
セットされた時のみ分岐が行われる。
呼出し命令は復帰アドレスをタスクの呼出しスタックに
ブツシュオンもさせる。
ケース(CASE )・・・・・この命令の目標アト1
/スは実行時に計算される。この命令はベースアト1/
スを含み、オペランドがそのアドレスからのオフセット
を指定する。ケース命令は常に分岐をとる。
復帰(RETURN)・・・・・この命令はタスクの呼
出しスタックの1番上に含まれているアドレスまで分岐
させる。復帰命令は呼出しスタックをポツプする。
デバッグからの復帰・・・・・この命令は、復帰が実行
された時にICEモードがリセットされることを除き、
復帰命令と同じである。
例外(EXCEPTION)  ・・・・・この命令は
cpの例外機構をインボークするために用いられる。タ
スクはこの命令を用いてコンテキストレベル例外を上げ
ることができる。この命令はタスクをソフトウェアが定
めた誤シ分岐アドレスへ分岐させる。誤シハンドラーへ
の分岐は呼出しとして実現されるから、復帰アドレスを
呼出しスタックにブツシュオンする。
デバッグブレーク(DEBUG BREAK)・・・・
・この命令はICEモードに入るためのプログラマのや
り方である。この命令は条件付きと無条件の2つのモー
ドを有する。無条件デバッグブレークは常にプロセッサ
レベルを誤シにし、CPはICEモードに入る。条件付
デバッグブレーキは、 TRACK ENABLEフラ
ッグがセットされた時に、CPをICEモードに入らせ
る。
″ACCESS命令°′ タスクは、それのレジスタファイルとメモリの間で(ロ
ーカルバスまたはI/Oバスを介して)、データをAC
CESS命令を用いて動かす。この命令は1〜16バイ
トのデータを動かす。送る方のタスクハ、オペレーショ
ンが終った時にどのタスクに通知すべきかを指定できる
。宛先タスクは、レジスタセットを基にした同期または
メツセージを基にした同期を用いて通知できる。
ACCESS命令の供給の変化(supply var
iant)が、I/O側を動くブロックのために用いら
れる。
ACCESS命令の定義 書式:一一一一一一一一一−−−−−−−−−−−一一
一−−−−−−−−−−−8−−MLPISSSSSS
SIDDDDDDDフィールド記述: I DDDDDD   −フル語パラメータreg、、
整列された語 l5SSSSS   −8ビットリテラル変位またはレ
ジスタに含まれるフル語変位 L     −リテラル変位を示す P     −物理的アドレッシングを示す(アドレス
計算なし):物理アドレス として変位オペランドが用いられ、 パラメータレジスタのBBBBB フ ィールドが無視される M     一応答の種類−レジスタはマツノくをセッ
トしく0)、またはマイクロボ ー十をセットする(1)。このビッ トはローカルバスに対するアクセ スに対して無視される。
S     −供給命令(aupply 1nstru
ction)を示す(1=供給、0−アクセス)。
供給はI/O側に対するアクセスに 対してのみ用いることができる。
Sがアサートされるものとすると P、Lもアサートせねばならない。
パラメータレジスタ書式:一一一−−−−−−−−−−
−−−−一一一一一一−−−−−−−−−■14)りi
!’lRRBBBBm EEEE    −バスシーケンサチャネル(0〜9は
1掬パスチャネル、14〜15は ローカルバスチャネル) MFFFRRR−応答を受けるレジスタセットに対する
論理ポインタ(MFFF =フレ ームld(M−0は私のタスクを意味 する)。RRR=レジスタセット) BBBBB    −ベースアドレスを含むレジスタ語
に対するポインタ LLLL    −アクセスの長さく#ノ(イト−1)
CCCC−5pecビツトまたは指令ビットAAAAA
AA   −現在のタスクフレーム中のデータブロック
の論理アドレス(第1の バイトのアドレス) ローカルバスアクセスgpeeビットは下記のようにし
て符号化される。
CWP Rオペレーション −/O0書込み −000読出し −/O1RF#書込み −001RMW読出し −1/Oブリフェッチ書込み(ブリフェッチ設定)−0
/Oプリフェッチ続出し 1−−一    上記のいずれか、キャ7ユ可能/O1
1   要求解除 C−キャッシュ可能−これは、言及されているデータを
CPの外部のキャッシュ内に配置できることを示す。
W−書込み。
P−ブリフェッチ−これは、ノくス拡張器ユニット(B
XU)  (またはCPUの外部の他の部品)のブリフ
ェッチチャネルを与えるノくス拡張器ユニットのブリフ
ェッチチャネルを使用できることを示す。
R−RMW−読出し修正書込み。
工ん指令ビットの符号化は、与えられたVOパス・アプ
リケーションに対して、I/OシーケンサPLAのプロ
グラマにより定められる。
ACCESSCC上指定されたバスシーケンサユニット
に要求させ、それによシCPと、付属されたバス上のエ
ージェントの間に要求/応答チャネルを作成する。レジ
スタファイル中のデータブロックの場所と長さが、AC
CESSCC上パラメータレジスタ中に示される。デー
タブロック場所は論理レジスタアト1/スであって、ハ
ードウェアによシ物理的アドレスに翻訳されてからバス
シーケンサへ送られる。
それが翻訳されると、レジスタセットマツパ−中の論理
レジスタセットポインタ24が無効にされる。というの
は、バスシーケンサは今はレジスタセットを制御するか
らである。パラメータレジスタはI7ジスタフアイル中
のペースレジスタのアドレスモ含む。ベースはペース/
オフセット・アドレッシングのために用いられ、メモリ
中のどのページすなわちセグメントをアドレスすべきか
を示す。パラメータレジスタのインデックスフィールド
は!功す−ビス表27″!!たはLBシーケンサ中への
インデックスであって、I/Oバス上の利用できる/O
個のIAチャネルの1つ、またはローカルバス上の3つ
のシステムメモリチャネルを示す。
EEF、Eフィールドは下記のようにして符号される。
EEE 0000  I淘す−ビス表0行 /O01  Iルサービス表9行 /O/O  潜在的なIACチャネル /O11留保 11〇−留保 11/O   LBシーケンサ(システムメモリ、キャ
ッシュ可能)1111   LBシーケンサ(システム
メモリ)アトL/ス変位(dlsplacement)
はl5SSSSS  レジスタ内に配置され、またはそ
れは命令(Issssssx)中に含まれている8ビツ
トリテラルである。その変位は、物理的アドレスを得る
ためにセグメントのベース(語アドレスBBBBBでレ
ジスタファイルから得た)に加えられる。パラメータレ
ジスタ中のCCCCフィールドは実行すべきアクセスオ
ペレーションの種類(読出し、書込み、rfflW等)
を一層十分に指定する。
パラメータレジスタは応答と、応答で妥当にされる論理
レジスタセット(その受けるタスクに属する)を受ける
タスクのフレームIDと、指定されたデータも含む。
2種類の応答機構をプログラマは利用できる。
一方の機構が物理的データポインタを応答タスクノ指定
された論理レジスタセットポインタに書込むと同時に、
そのポインタを妥当にする。この[レジスタセットマツ
パ−への応答j 機?11については以下に説明する。
応答データの物理レジスタアドレスが、応答タスクの指
定された論理レジスタセットポインタに明確に書込まれ
る。指定された応答タスクがレジスタセットへのフルア
クセスが与えられるように妥当にされる。したがって、
レジスタセットの制御を、アクセスを求めたタスクから
、アクセスが行われた時にレジスタセットに対する他の
処理を実行する別のタスクへ送ることができる。このよ
うにして、各タスクがレジスタセット内のデータを取扱
い、それからそのデータをバスシーケンサまたは別のタ
スクへ送るように、タスクのパイプラインを構成できる
シーケンサが誤シその他の異常な状態に遭遇すると、レ
ジスタセットポインタの誤シビットが応答の一部として
アサートされる。
第2の応答機構は応答メツセージを示された応答タスク
のマイクロボートへ送シ、メツセージを引渡すことがで
きるようになるまで、バスシーケンサにむけるメツセー
ジをバック了する。引渡されたメツセージは物理的デー
タアドレスと論理しジスタセットアドレスを含む。
マイクロボートへ送られた応答メツセージは第3図に示
すようにして書式化される。
最初の応答計画で利用できる同じタスクパイプライン機
構をここでも利用できる。パイプラインが実現できない
とすると、現在のタスクを(MF’FF=0・・・・・
にセットすることによシ)応答タスクとしてもちろん指
定でき、その場合には応答論理レジスタセットは論理デ
ータポインタにおけるのと同じであると仮定される( 
AAAAAAA )。いいかえると、パラメータレジス
タのFFFフィールドとRRRフィールドは、M−0で
あれば、無視される。
ACCESS命令の特殊なバージョンが、レジスタセッ
トをvOサービス表テライン単に供給するアクセスのた
めに実現され、アドレス計算(「供給レジスタセット」
アクセス)を必要としない。このバージョンは命令中の
「S」ビット(供給変形(supply varian
t)  Kよシ指示される。それは、ペースレジス3ま
たはどのようなアドレス計算もなしに実行される。
ACCESS命令の「P」ビットによシ簡単な物理的ア
ドレッシングが可能にされる。可能にされると、ペース
/オフセット計算は実行されない。その代シに、物理的
アドレスは変位オペランドから直接とられる。
ACCESS命令が実行される時は、レジスタセットの
境界を横切る試みは検出されない。しかし、ハードウェ
アはレジスタセット境界を横切らず、レジスタセット内
をラップアラウンドする。
命令またはパラメータレジスタを介してアクセスされた
誤シレジスタセットは命令を誤らせる。
誤ったI/O表ラインは供給命令を誤らせる。
無効(invalid)のレジスタセットはタスクをブ
ロックする。また、指定されたサービス表エントリイま
たはLBババス列が一杯であれば現在のタスクがブロッ
クする。ラインまたは行列を利用できるようになると、
タスクはブロックを解除され、実行はACCESS命令
を再びとる。
ACCESS命令の「供給レジスタセット」の態様がセ
ットされたとすると、アドレスは供給する必要は危い。
変位とパラメータレジスタの少くとも一方における間接
的なやシ方で余分のサイクルが1つ加えられることにな
る。ローカルバスの仲裁のために任意の数の付加サイク
ルを送るととができる。そのローカルバスはアクセス要
求ヲバスシーケンサへ送る。その仲裁が必要な理由は、
非同期事象もバスで送られるからである(すなわち、ア
クセス応答)。
“タスク制御命令(Task Control In5
tructlons)”タスク制御命令によりタスクの
状態の点検および制御を行える。
セット状態(SET 5TATUS)・・・・・この命
令によシ、タスクフレーム中のスケジュール可能なビッ
トと誤シモードピットをセットまたはリセットできる。
オペレーションが誤りモードビットをセットしたとする
と、選択され之タスクはソフトウェアにより生じさせら
れた誤り分岐アドレスへの分岐も行う。
発信命令と受信命令によりタスク自体の間の通信を行う
ことができるようにされる。メツセージをマイクロボー
トへ送ることによ多通信は行われる。
他の命令” 次に、他の命令について簡単に説明する。
N0P−NOP・・・・・・・・・この命令はオペレー
ションの実行と、状態の変更を行わない。この命令は1
サイクルで常に実行する。
PUST(・・・・・この命令は値分スタック上にブツ
シュする。値ハレジスタファイルからのリテラル値また
は16ビツト値とすることができる。
POP・・・・・この命令はスタックからのトップエン
トリイをポツプする。
ACCESS TAGS  ・・・・・この命令はレジ
スタファイル中のタグビットを取扱うために用いられる
。レジスタセット中の4個のタグビット(すなわち、レ
ジスタセット中の4語の33番目のビット)を、命令で
指定されているバイトから(へ)ロード(すなわち格納
)できる。
TIMEROP・・・・・タイマOP命令はタスクのタ
イマの動作を制御する。この命令はタイマのローディン
グ、スタート、ストップおよび格納の諸機能を行う。こ
の命令は、タイマが時間切れとなるまで、(希望によっ
て)タスクをブロックさせることもできる。
MOVEPOINTER・・・・・この命令はタスクの
レジスタセットポインタとレジスタファイルの間でデー
タを動かす。この命令はメツセージを基にした同期にお
いて主として用いられる。
ACCESS LOCAL・・・・・この命令によシブ
凸グラマは相互接続およびローカルレジスタ空間に対し
てアクセスできる。この命令によりローカルレジスタと
レジスタファイルの間でデータを動かすことができる。
TEST RESOURE・・・・・この命令はバイト
中の最上位の1のインデックスを見つける。そのバイト
で実行される「テストリソース」は最初に利用できるリ
ソースに対応する値を戻す。それはリソース割当にとっ
て有用である。その場合にはバイト中のビットはあるリ
ソースを利用できることを意味する。
LOAD CACT(E・・・・・この命令によりキャ
ッシュ中のラインをプレロードできるようにされる。プ
ログラマはキャッシュ内にあるべきアドレスを指定し、
そのアドレスを含むラインが7エツチされる。
指定されたアドレスを含むラインは希望によりロックで
き、またはロックを解除できる。
READ lN5TRUCTION  ・・・・・この
命令は命令をレジスタファイルにロードさせる。プログ
ラマは命令アドレスおよび32ビツト宛先レジスタを指
定し、そのアドレスにおける命令がレジスタファイル中
に置かれる。これによfi、ROMおよびキャッシュ内
の命令および外部命令が取扱われる。こitは部品のテ
ストに有用である。
アドレッシングモード はとんどのCP命令はソースと宛先の2つのオペランド
を持つように構成される。全てのオペランドは1/ジス
タフアイルから来る。全てのレジスタオペランドは間接
的にアクセスでき°る。
命令はl5SSSSSSまたはIDDDDDDD  の
形であるオペランド指定子を含む。それらのオペランド
指定子は、リテラル、直接リテラルまたは間接リテラル
の3つのやシ方のうちの1つでオペランドを参照できる
。命令がリテラルオペランドを指定したとすると、オペ
ランド指定子は8ビツトリテラルとして用いられる。
直接オペランドはI−0を有し、フィールドの残シバ論
理アドレスとして解される。語寸法のオペランド(4バ
イト)を用いる命令は、0に等しいオペランド指定子の
1番下の2ビツトを持たなければならない。半語オペラ
ンドはOに等しい1番下のビットを有しなければならな
い。
命令が間接オペランドI−1を有する時は、命令中のオ
ペランドは、オペランドの論理アドレスであるレジスタ
ファイル中の半語を指す。レジスタファイル中の論理ア
ドレスの書式を第4図に示す。
フル語オペランドを使用するだけである成る命令は、半
語ポインタである間接アドレスを許すから、形がl5S
SSSOOではなくてl5SSSSSOであるオペラン
ド指定子を有する。
間接的に用いられる論理アドレスは、Mビット(第4図
に示されているビット7)が1であると、整列させられ
た半語で常になければ々らない。Mビットが0であれば
半語の上半分は無視され、現在のタスクのレジスタセッ
トポインタが用いられる。その他の場合には、アドレス
を分解する時にどのタスクのレジスタセットポインタを
用いるかをFFFビットは示す。RRRビットはどのレ
ジスタセットポインタを用いるかを示し、下の4ビツト
がレジスタセット内のバイトアドレスを与える。
命令キャッシュオペレーション \第1図に示さrている命令キャッシュ20は256個
の命令を保持する。その命令キャッシュは完全に関連す
るアートレスマツピングを行う。そのアドレスマツピン
グは32個のアドレスブロックを有し、1ブロック当り
2ラインで、1ライン当シ4命令で6る。各命令は28
ビット幅であるが、主メモリにおいては、各命令はOが
先にくる32ビット語で置かれる。
CSメモリ中のセグメントとキャッシュの間の゛最初の
結合が行われた時は、命令千ヤツシュの管理はタスクに
とって明らかである。タスクがキャッシュミスを有する
と、命令を含んでいるラインがCSメモリからフェッチ
されるまでタスクはブロックされる。この時間中に他の
タスクを実行でキル。キャッシュラインがフェッチされ
るとタスクのブロックは解除される。
ブリフェッチ 「アドレスブロック内のタグされたブリフェッチ」 と呼ばれるやり方を用いてキャッシュラインはブリフェ
ッチされる。このことは、最初のラインがひとたびアク
セスされ九時に、アドレスブロック中の2番目のライン
が直ちにブリフェッチされることを意味する。
キャッシュ要求行列が一杯である時はグリフ1ツチは起
らない。
ラインロッキング ある用途の符号がキャッシュ内に完全にあって、それの
実行の前と実行中に常に利用できることをそれらの用途
が求めることがある。時間的に厳しい転送ループがそれ
の例である。
LOAD CACHE命令によシプログラマは、特定の
命令を含んでいるラインをロードすること、および希望
によってはそれをキャッシュにロックすることができる
ようにされる。ラインを解除するために同じ命令が用い
られる。ロックされたラインは交換されない。
ローカルバスシーケンサおよヒI/Oバスシーケンサ 他の装置と通信するためにローカルバスシーケンサ(L
BS)14とI/Oバスシーケンサ(IO8)12の2
個のモジュールがある(第1図)。それらのバスシーケ
ンサによう計算サブシステA(C8)トVOサブシステ
ムとの通信が容易となる。
転送を行うために下記のステップが行われる(注:3番
目と4番目のステップは下記とは逆の順序で行うことも
できる)。
1、  EUはACCESS命令を実行する。これによ
り1つのシーケンサに対して要求が発せられる。そのシ
ーケンサが要求を受けることができるまでタスクをブロ
ックできる。
2) シーケンサは要求されたオペレーションを行う。
そうすると、データがレジスタファイルとの間で転送さ
れる結果となるのが普通である。
3゜終了をシーケンサが合図するまでブロックする命令
をタスクは実行する。このタスクはその要求を出したタ
スクのこともあれば、そうでないこともある。
4、 シーケンサはオペレーションの終了を合図する。
5、 タスクはロックを解除し、同期命令で実行を再開
する。
上記のACCESS命令は、l0812とLBS14に
対して要求を行うEUの乗物である。第5図は典型的な
ACCESS命令40とパラメータレジスメ42)およ
びシーケンサが必要とする情報がどのようにして発生さ
れるかを示すものである。ACCESS命令は、ループ
/すがデータ転送を行えるように、必要な情報をいずれ
かのシーケンサへ与える。与えられる情報は下記の通シ
である。
−シーケンサ符号 一応答法 一供給変形(IO8に対してのみ) −長さ 一指令 一応答タスク 一応答レジスタセット 一物理アドレス(LBSに対して32ビツト、IO8に
対して24ビツト) 一データポインタ 「シーケンサ符号」は、どのシーケンサに対してアクセ
スが行われるかを知らせる。θ〜9の符号はVOササ−
ス表中のラインを指定する。符号14.15はLBSに
対するものであって、下記に定義する。
「応答法」ビットは、要求の終了をどのようにして合図
するかをシーケンサに知らせる。「供給ピッ) JはI
O8によってのみ用いられる( IBSによつては無視
される)。アクセスがブロック転送の一部であることを
それはIO8に知らせる。
「長さ」は、転送においてどれだけのバイトを動かすか
を知らせる。「指令」は、何をなすかを想定するかをシ
ーケンサに知らせる。「応答レジスタセット」は、応答
タスク中のどのレジスタセットに応答すべきかを知らせ
る。「物理的アドレス」は、転送が開始されるCPのい
ずれかの側の場所である。「データポインタ」は、デー
タの第1のバイトのレジスタファイル物理的アドレスで
ある。
上記情報はパラメータと、ACCESS命令のフィール
ドとから発生される。その命令は、シーケンサにとって
必要な情報のいくらかを保持する32ビツトパラメータ
レジスタに対するポインタを含む。
上記情報の初の6つの部分は命令またはパラメータレジ
スタから直接くる。パラメータレジスタ中の論理バイト
をとり、それをレジスタセットマツパ−を通って送って
、レジスタファイルの物理的アドレスを発生することに
よシデータポインタは発生される。
シーケンサが必要とする32ビツトの物理的アドレスは
3種類のやシ方で発生できる。第5図は、32ビツトア
ドレスに32ピツトの変位を加えることにより物理的ア
ドレスが発生される様子を示す。変位レジスタに対する
ポインタは命令中にあり、ベースアドレスに対するポイ
ンタはパラメータレジスタ中にある。
32ビット変位レジスタに対するポインタをリテラル値
として交互に用いることによシ物理的アドレスを発生す
ることもできる。このBビットリテラル値は32ビツト
ベースアドレスに加えられて、255tでの正のリテラ
ル変位を行えるように゛する。
第3のやシ方は直接物理的アドレッシングである。パラ
メータレジスタ中のベースポインタは無視され、変位レ
ジスタ中の32ビツト値または8ビツトリテラルが物理
的アドレスとして用いられる。
物理的アドレスを発生するやり友はACCES S命令
中のビットによシ選択される。あるシーケンサがアクセ
ス要求を受けることができないとすると、アクセス命令
はブロックし、シーケンサが要求を受けることができる
時に再び試みる。
ACCES S命令は、タスクがシーケンサへ進むこと
を論理レジスタセットに常にロックさせる。これによシ
タスフとシーケンサが同時にレジスタセットで動作する
ことが阻止される。
EUm期のためのバスシーケンサ バスシーケンサとEUの間の転送を同期させるのに、レ
ジスタセットロッキングとマイクロポートメツセージの
2つの方法がある。希望の方法の選択は、特定のバスオ
ペレーションのためのACCESS命令を出すEU符号
によシ行われる。供給変形は方法を変更できないから、
特定のデータ法がレジスタセットロッキングまたはマイ
クロポートメツセージを用いるか、両方とも用いない。
メツセージをベースとする同期 この方法を選択した時は、シーケンサはマイクロポート
メツセージを目標タスクへ送る。その目標タスクは、 
ACCESS命令を実行するタスクにより指定される。
メツセージは第6図に示されているシーケンサ書式で送
られる。
メツセージは16ビツト長であって、上位のビットは常
に0である。メツセージの下位バイトの下の6ピツトは
、転送に含まれてい友レジスタセットの物理的アドレス
を含む。レジスタセットの物理的アドレスの上のビット
(バイト中のど、ット6)は異常な終端ビットを含む。
シーケンサのオペレーションが異常に終らせられていれ
ば、そのビットはシーケンサによってセットされる。下
側バイトにおいてはトップのビット(ビット7)け常に
1である。次の4ビツト(8〜11)はどのシーケンサ
チャネルからメツセージが来るかを識別する。次の3ビ
ツト(12〜14)は、シーク/すが応答レジスタセッ
トとして送られた値を含む。
プログラブがACCESS命令を実行する時にそのプロ
グラマはこのフィールドの値を指定するから、応答レジ
スタセット以外の情報を希望によシ送ることができる。
メツセージはポインタを動かす命令に適合するように設
計される。その命令を受けた直後に置くことによシ、転
送にちょうど関与したレジスタセットを目標タスクの論
理空間内にマツプできる。
レジスタセットをペースとする同期 この種の同期が求められる時は、シーケンサは含まれて
いるレジスタセットの物理的アドレスを「応答タスク」
の「応答レジスタセット」ポインタに書込む。「応答レ
ジスタセット」と「応答タスク」は、要求が開始された
時に、シーケンサに対して指定される。それがレジスタ
セットポインタに書込むと、アクセスが異常に終ったの
であれば、それはそのポインタへの異常終了ビットのセ
ットも行う。全ての場合に、レジスタセットポインタは
それの妥当ビットを有する(すなわち、l/レジスタセ
ットロックを解除される)。
ローカルバスシーケンサ CPのシステム側との間の全ての通信および転送ハロー
カルバスシーケンサ(LBS)を経由して行われる。こ
れはEUとキャッシュの両方で用いられる。
LBS要求のキューイング EUとキャッシュによるLBSの使用を制御する機構は
いくつかある。
システムメモリに対するアクセス要求はLBSによ多処
理される。それらの要求は低優先度の行列と、高優先度
の行列との2つの行列の一方に置かれる。プログラマは
、 ACCESS命令を実行する時に、チャネル番号を
与えることによシいずれかの行列を指定する。低優先度
の行列(または低優先度行列??)はチャネル14であ
り、高優先度の行列はチャネル15である。それらの各
行列は深゛さ2であり、それぞれの名称が意味するよう
に、高優先度の行列中のどの要求も低優先度行列の中の
要求よりも先にサービスされる。
アクセス要求以外に、LBSはキャッシュを満す要求も
取扱うから、他の2つの行列とは別のキャッシュ要求行
列も与える。キャッシュ行列の深さは3である。キャッ
シュ行列とアクセス行列の間のサービス順位はラウント
ロピンである、すなわち、アクセス要求行列からの要求
がサービスされ、それからキャッシュ行列からの要求が
サービスされ、次にアクセス行列からの要求が再びサー
ビスされる、等というようにしてサービスされる。
キャッシュから来る要求はキャッシュミスまたはライン
プリフェッチによシ発生される。要求がキャッシュから
くると、その要求はキャッシュ要求行列中に並べられる
。この行列の深さは3であって、各エントリイはキャッ
シュラインを満すために要求を保持できる。要求がキャ
ッシュミスによるものとすると、そのミスを生じたタス
クはブロックされ、それのキャッシュブロックされたビ
ットがセットされる。キャッシュ要求が終るとそのタス
クのブロックは解除される。
キャッシュ要求行列が一杯で、タスクがキャッシュミス
を経験したとすると、タスクはブロックされ、「キャッ
シュ行列がブロックされた」ビットがセットされる。い
ずれかキャッシュ行列が一杯にされたとすると、その行
列は利用できるようになって、ブロックされてスロット
を待っていた全てのタスクのブロックは解除される。そ
れから、並へられているキャッシュ要求を得るためにそ
のタスクは再びキャッシュミスを起させる。キャッシュ
要求行列が一杯であればブリフェッチは行われない。
データ整列制約 計算サブシステムメモリアクセスの実行にはいくつかの
制約がある。計算サブシステムメモリ空間内の16バイ
ト境界を横切るメモリ要求は許されない。また、その要
求に関連する全てのデータは1つのレジスタセットから
来なければならず、または1つのレジスタセットに置か
なければならない。
LBSJ−介して読出され、゛または書込まれる全ての
バイトは、それらのバイトがレジスタファイル内にある
時と同様に、メモリ内で整列せねばならない。このこと
は、メモリ内の物理的アドレスの下位2ビツトと、レジ
スタのアドレスの下位2ビツトが同じでなければならな
いことを意味する。
LBSおよびACCESS命令 シーケンサ符号14または15を有するACCESS命
令はLBSへ送られる。14は低優先度チャネルに対す
る符号であり、15は高優先度チャネルに対する符号で
ある。
エージェント間通信(IAC)受信 IO8は、CPがIACを受けるととができるようにす
るために設定できる特殊なIAC要求線を有する。その
線は、IACがいつ到達し、応答タスクにどのようにし
て応答するかについてどのタスクへ通知するか(常にタ
スク7)についての情報を含む。
IAC要求腺は他のros線とは別であり、IACピン
がトリガされた時にタスク70マイクロボートに応答す
るためにハードワイヤされる。IACチャネルは常にイ
ネイブルされ、かつ妥当である。
IACが受けられると、タスクTはそれのマイクロボー
トを介して通知される。
【図面の簡単な説明】
第1図は本発明が実施されているI/Oチャネルの機能
ブロック図、第2図はレジスタセットポインタを用いる
アドレス・インダイレクションを示す線図、第3図はマ
イクロケートへ与えられる応答メツセージの書式の線図
、第4図はレジスタファイル中の論理アドレスの書式の
線図、第5図はACCES S命令オペレーションを示
す線図、第6図はシーケンサメツセージの書式の線図で
ある。 /O・・・・実行装置、14・・・・ローカルバスシー
ケンサ、16・・・・レジスタファイル、18・・・・
ROM120・・・・命令キャッシュ、22・・・・A
Lυ。

Claims (6)

    【特許請求の範囲】
  1. (1)レジスタファイルと、I/Oバスシーケンサおよ
    びローカルシーケンサと、命令を復号する手段とを含む
    I/Oプロセッサであつて、前記命令の1つはACCE
    SS命令であり、そのACCESS命令はいくつかのフ
    ィールドを有し、それらのフィールドの1つは、いくつ
    かのフィールドで構成されたパラメータレジスタに対す
    るポインタであるI/Oプロセッサに使用する実行装置
    において; 前記シーケンサの1つを識別するシーケンサ符号と、 アドレスすべきメモリ内の場所を識別する論理バイト手
    段と、 前記ACCESS命令に対応する命令を受けることを命
    じられた、前記レジスタファイル中のレジスタセットに
    対する応答レジスタセットポインタと、データを受ける
    前記レジスタファイル内のデータブロックの場所と長さ
    を指定する長さ手段とを格納する位置を含む前記パラメ
    ータレジスタフィールドを格納する手段と; 前記パラメータレジスタに対する前記ポインタを格納す
    る手段を含む命令レジスタと、 を備えることを特徴とするI/Oプロセッサに使用する
    実行装置。
  2. (2)特許請求の範囲第1項記載の装置であつて、前記
    論理バイトは妥当ビットを含み、前記I/Oプロセッサ
    は、前記レジスタファイルと前記実行装置へ接続された
    レジスタセットマッパーを更に含み、前記実行装置は、 データポインタを発生するために前記パラメータレジス
    タへ接続され、前記パラメータレジスタ中の前記論理バ
    イトをとり、その論理バイトを前記レジスタセットマッ
    パーを通じて送つてレジスタファイルの物理的アドレス
    を発生する手段と、前記バスシーケンサが対応するレジ
    スタセットを制御できるように、前記論理バイトの前記
    妥当ビットが前記レジスタセットマッパーにより翻訳さ
    れた時に前記妥当ビットをターンオフする手段と、 を更に備えることを特徴とする装置。
  3. (3)特許請求の範囲第2項記載の装置であつて、前記
    実行装置は、 応答データの物理的レジスタアドレスを、前記パラメー
    タレジスタ内の前記応答レジスタセットポインタであつ
    て、応答タスクに対応する前記応答レジスタセットポイ
    ンタにより指定された論理レジスタセットポインタに書
    込む手段と、 前記指定された応答タスクが応答レジスタセットに対す
    るフルACCESSを与えられるように、前記論理ポイ
    ンタの妥当ビットをセットする手段と、を更に備えるこ
    とを特徴とする装置。
  4. (4)特許請求の範囲第1項記載の装置であつて、前記
    論理バイトは妥当ビットとブロックビットを含み、前記
    実行装置は、 妥当ビットがセットされていないレジスタセットを前記
    ACCESS命令がアクセスすることを試みるという条
    件で前記ブロックビットをセットする手段と、 前記ACCESS命令を実行しているタスクが、ブロッ
    クビットと妥当ビットがセットされているレジスタセッ
    トをアクセスすることを試みるという条件で前記ブロッ
    クビットをリセットする手段と、を更に備えることを特
    徴とする装置。
  5. (5)特許請求の範囲第1項記載の装置であつて、前記
    I/Oバスシーケンサはハードワイヤされたインターエ
    イジェント通信(IAC)要求線を含み、どのシーケン
    サに対してアクセスが行われるかを指定する前記シーケ
    ンサ符号は前記IACのシーケンサ符号であり、前記シ
    ーケンサ符号は所定の数(符号アクセス)にセットされ
    、 前記IAC線は、IACが到達した時を知らせるタスク
    について、および応答タスクにどのようにして応答する
    かについての情報を含み、その情報は「行われたビット
    」を含み、 前記IAC線の前記「行われた」ビットを読出し、およ
    び書込むための手段と、 通知が完了するまで前記線を「行われた」としてマーク
    する手段を含み、応答タスクを通知する手段と、 を含むことを特徴とする装置。
  6. (6)I/Oサービス表とローカルバスシーケンサを含
    むI/Oシーケンサへ接続されて、そのI/Oシーケン
    サを制御する実行装置において、(前記I/Oシーケン
    サがそのI/Oシーケンサに接続されているI/Oバス
    を介してデータ転送を行うことができるように)前記I
    /Oシーケンサへ必要な情報を与え、または(前記ロー
    カルバスシーケンサがそのローカルバスシーケンサへ接
    続されているローカルバスを介してデータ転送を行うこ
    とができるように)前記ローカルバスシーケンサへ必要
    な情報をACCESS命令が与える前記実行装置におい
    て、前記与えられる情報は、 どのシーケンサに対してアクセスが行われるかを示すシ
    ーケンサ符号と、 前記I/Oサービス表内の線または前記ローカルバス上
    のメモリチャネルを指定する符号と、要求の終了をどの
    ようにして信号するかをシーケンサに指定する応答法ビ
    ットと、 アクセスがブロック転送の一部であることを前記I/O
    シーケンサに指示する供給ビットと、転送において動か
    すバイトの数を指定する長さフィールドと、 実行すべきオペレーションをシーケンサに知らせる指令
    フィールドと、 応答すべきタスクを指定する応答タスクフィールドと、 応答タスク中のどのレジスタセットに応答すべきかを指
    定する応答レジスタセットフィールドと、転送が始まる
    場所を指定する物理的アドレスと、データの最初のバイ
    トのレジスタフィールド物理的アドレスを指すデータポ
    インタと、 を含み、前記命令は、シーケンサにとつて必要な情報の
    いくらかを保持するパラメータレジスタに対するポイン
    タを含むことを特徴とする装置。
JP62317620A 1986-12-17 1987-12-17 I/oプロセツサ用の実行装置 Expired - Lifetime JP2741594B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US942608 1986-12-17
US06/942,608 US4853849A (en) 1986-12-17 1986-12-17 Multi-tasking register set mapping system which changes a register set pointer block bit during access instruction

Publications (2)

Publication Number Publication Date
JPS63238631A true JPS63238631A (ja) 1988-10-04
JP2741594B2 JP2741594B2 (ja) 1998-04-22

Family

ID=25478349

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62317620A Expired - Lifetime JP2741594B2 (ja) 1986-12-17 1987-12-17 I/oプロセツサ用の実行装置

Country Status (3)

Country Link
US (1) US4853849A (ja)
JP (1) JP2741594B2 (ja)
DE (1) DE3741850A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02253440A (ja) * 1989-03-28 1990-10-12 Matsushita Electric Ind Co Ltd 時分割マルチタスク実行装置

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5293594A (en) * 1986-05-24 1994-03-08 Hitachi, Ltd. Data processing system having a plurality of register groups and a logical or circuit for addressing one register of one of the register groups
US5307494A (en) * 1987-08-05 1994-04-26 Fuji Xerox Co., Ltd. File name length augmentation method
JPH0353328A (ja) * 1989-07-20 1991-03-07 Hitachi Ltd レジスタ退避回復方法ならびに処理装置
US5390304A (en) * 1990-09-28 1995-02-14 Texas Instruments, Incorporated Method and apparatus for processing block instructions in a data processor
JP2665081B2 (ja) * 1991-07-08 1997-10-22 三菱電機株式会社 マイクロコンピュータのレジスタ間データ転送方式
CA2078913A1 (en) * 1991-12-12 1993-06-13 John J. Reilly Interprocessor communication system and method for multiprocessor circuitry
US5379392A (en) * 1991-12-17 1995-01-03 Unisys Corporation Method of and apparatus for rapidly loading addressing registers
US5414821A (en) * 1991-12-17 1995-05-09 Unisys Corporation Method of and apparatus for rapidly loading addressing environment by checking and loading multiple registers using a specialized instruction
US5325496A (en) * 1991-12-24 1994-06-28 Intel Corporation Selectable pointer validation in a computer system
US5522051A (en) * 1992-07-29 1996-05-28 Intel Corporation Method and apparatus for stack manipulation in a pipelined processor
US6073231A (en) * 1993-10-18 2000-06-06 Via-Cyrix, Inc. Pipelined processor with microcontrol of register translation hardware
US5666556A (en) * 1993-12-30 1997-09-09 Intel Corporation Method and apparatus for redirecting register access requests wherein the register set is separate from a central processing unit
WO1995032466A1 (en) * 1994-05-19 1995-11-30 Vlsi Technology, Inc. Flexible register mapping scheme
US5734817A (en) * 1995-03-01 1998-03-31 Unisys Corporation Method for making a data base available to a user program during data base recovery
US6356918B1 (en) 1995-07-26 2002-03-12 International Business Machines Corporation Method and system for managing registers in a data processing system supports out-of-order and speculative instruction execution
US5761740A (en) * 1995-11-30 1998-06-02 Unisys Corporation Method of and apparatus for rapidly loading addressing registers
JPH1011352A (ja) * 1996-06-19 1998-01-16 Hitachi Ltd データ処理装置およびそのレジスタアドレス変換方法
US5893928A (en) * 1997-01-21 1999-04-13 Ford Motor Company Data movement apparatus and method
US6697935B1 (en) 1997-10-23 2004-02-24 International Business Machines Corporation Method and apparatus for selecting thread switch events in a multithreaded processor
US6567839B1 (en) 1997-10-23 2003-05-20 International Business Machines Corporation Thread switch control in a multithreaded processor system
US6105051A (en) * 1997-10-23 2000-08-15 International Business Machines Corporation Apparatus and method to guarantee forward progress in execution of threads in a multithreaded processor
US6076157A (en) * 1997-10-23 2000-06-13 International Business Machines Corporation Method and apparatus to force a thread switch in a multithreaded processor
US6212544B1 (en) 1997-10-23 2001-04-03 International Business Machines Corporation Altering thread priorities in a multithreaded processor
US6061775A (en) * 1997-12-12 2000-05-09 Advanced Micro Devices, Inc. Apparatus and method for predicting a first microcode instruction of a cache line and using predecode instruction data to identify instruction boundaries and types
US5890006A (en) * 1997-12-12 1999-03-30 Advanced Micro Devices, Inc. Apparatus for extracting instruction specific bytes from an instruction
US6134650A (en) * 1997-12-12 2000-10-17 Advanced Micro Devices, Inc. Apparatus and method for predicting a first scanned instruction as microcode instruction prior to scanning predecode data
US6134653A (en) * 1998-04-22 2000-10-17 Transwitch Corp. RISC processor architecture with high performance context switching in which one context can be loaded by a co-processor while another context is being accessed by an arithmetic logic unit
JP3763518B2 (ja) * 2001-05-29 2006-04-05 インターナショナル・ビジネス・マシーンズ・コーポレーション コンパイラ、そのコンパイル方法およびプログラム
US9626294B2 (en) * 2012-10-03 2017-04-18 International Business Machines Corporation Performance-driven cache line memory access

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5498134A (en) * 1978-01-20 1979-08-02 Toshiba Corp Input/output control system
JPS57768A (en) * 1980-06-04 1982-01-05 Hitachi Ltd Message transmission and reception system between processor
JPS57106938A (en) * 1980-12-24 1982-07-03 Fujitsu Ltd Continuous processing system for undefined-length data
JPS5894038A (ja) * 1981-11-30 1983-06-04 Nec Corp 電子計算機
JPS6194166A (ja) * 1984-10-16 1986-05-13 Fujitsu Ltd ダイレクトメモリアクセスにおけるアドレス変換回路

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3651482A (en) * 1968-04-03 1972-03-21 Honeywell Inc Interlocking data subprocessors
US3760365A (en) * 1971-12-30 1973-09-18 Ibm Multiprocessing computing system with task assignment at the instruction level
FR2253428A5 (ja) * 1973-11-30 1975-06-27 Honeywell Bull Soc Ind
US4099229A (en) * 1977-02-14 1978-07-04 The United States Of America As Represented By The Secretary Of The Navy Variable architecture digital computer
JPS5443644A (en) * 1977-09-13 1979-04-06 Fujitsu Ltd Processing system for deadlock automatic release at exclusive control time
US4320453A (en) * 1978-11-02 1982-03-16 Digital House, Ltd. Dual sequencer microprocessor
US4493020A (en) * 1980-05-06 1985-01-08 Burroughs Corporation Microprogrammed digital data processor employing microinstruction tasking and dynamic register allocation
US4460061A (en) * 1982-08-30 1984-07-17 Pennwalt Corporation Apparatus for increasing directivity of a sound source
US4511964A (en) * 1982-11-12 1985-04-16 Hewlett-Packard Company Dynamic physical memory mapping and management of independent programming environments
US4661900A (en) * 1983-04-25 1987-04-28 Cray Research, Inc. Flexible chaining in vector processor with selective use of vector registers as operand and result registers
GB8329509D0 (en) * 1983-11-04 1983-12-07 Inmos Ltd Computer
JPS6151243A (ja) * 1984-08-20 1986-03-13 Toshiba Corp レジスタ式演算処理装置
US4727510A (en) * 1985-05-24 1988-02-23 Unisys Corporation System for addressing a multibank memory system
US4777588A (en) * 1985-08-30 1988-10-11 Advanced Micro Devices, Inc. General-purpose register file optimized for intraprocedural register allocation, procedure calls, and multitasking performance
US4794515A (en) * 1986-01-17 1988-12-27 International Business Machines Corporation Protection of data in a multiprogramming data processing system
US4791566A (en) * 1987-03-27 1988-12-13 Digital Equipment Corporation Terminal device session management protocol

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5498134A (en) * 1978-01-20 1979-08-02 Toshiba Corp Input/output control system
JPS57768A (en) * 1980-06-04 1982-01-05 Hitachi Ltd Message transmission and reception system between processor
JPS57106938A (en) * 1980-12-24 1982-07-03 Fujitsu Ltd Continuous processing system for undefined-length data
JPS5894038A (ja) * 1981-11-30 1983-06-04 Nec Corp 電子計算機
JPS6194166A (ja) * 1984-10-16 1986-05-13 Fujitsu Ltd ダイレクトメモリアクセスにおけるアドレス変換回路

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02253440A (ja) * 1989-03-28 1990-10-12 Matsushita Electric Ind Co Ltd 時分割マルチタスク実行装置

Also Published As

Publication number Publication date
US4853849A (en) 1989-08-01
JP2741594B2 (ja) 1998-04-22
DE3741850A1 (de) 1988-06-30

Similar Documents

Publication Publication Date Title
JPS63238631A (ja) I/oプロセツサ用の実行装置
US6430657B1 (en) Computer system that provides atomicity by using a tlb to indicate whether an exportable instruction should be executed using cache coherency or by exporting the exportable instruction, and emulates instructions specifying a bus lock
KR101455011B1 (ko) 메시지 시그널 인터럽션을 i/o 어댑터 이벤트 통지로 변환
US4829425A (en) Memory-based interagent communication mechanism
US8521964B2 (en) Reducing interprocessor communications pursuant to updating of a storage key
EP2601586B1 (en) Using extended asynchronous data mover indirect data address words
TWI764082B (zh) 用於經引導中斷虛擬化之中斷信號之方法、電腦系統及電腦程式產品
US20120203984A1 (en) Page invalidation processing with setting of storage key to predefined value
TWI731554B (zh) 用於多層虛擬化之經引導中斷
US8806179B2 (en) Non-quiescing key setting facility
JPH08278886A (ja) データ処理システムでの拡張システム管理操作のための方法およびシステム
JPH0236969B2 (ja)
US5742843A (en) Control system for access between processing elements in a parallel computer
CN113439267A (zh) 具有应变方案的定向中断虚拟化
JPH01131949A (ja) 処理依頼機能を持つ並列計算機
EP3924817A1 (en) Directed interrupt virtualization
US8918601B2 (en) Deferred page clearing in a multiprocessor computer system
US8407701B2 (en) Facilitating quiesce operations within a logically partitioned computer system
CN113424150A (zh) 具有运行指示符的定向中断虚拟化
US7624237B2 (en) Compare, swap and store facility with no external serialization
BR112014017828B1 (pt) Uso de uma facilidade de interrupção de faixa de aviso por um programa
JP4130465B2 (ja) メモリ転送処理サイズが異なるプロセッサに関してアトミックな処理を実行するための技術
US20060149940A1 (en) Implementation to save and restore processor registers on a context switch
US4991083A (en) Method and system for extending address space for vector processing
KR101507665B1 (ko) 통신 환경의 격리된 메모리 공간사이에서의 통신 개선 방법

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term