JPS6215899B2 - - Google Patents
Info
- Publication number
- JPS6215899B2 JPS6215899B2 JP58216378A JP21637883A JPS6215899B2 JP S6215899 B2 JPS6215899 B2 JP S6215899B2 JP 58216378 A JP58216378 A JP 58216378A JP 21637883 A JP21637883 A JP 21637883A JP S6215899 B2 JPS6215899 B2 JP S6215899B2
- Authority
- JP
- Japan
- Prior art keywords
- channel
- input
- command
- bus
- register
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/12—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
- G06F13/124—Program 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/126—Program 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)
- Bus Control (AREA)
- Communication Control (AREA)
Description
[技術分野]
本発明は一般にデータ処理装置、特にデータ処
理システムのチヤネル・サブシステムの構成要素
に関する。 [背景技術] チヤネル・サブシステムはデータ処理システム
のありふれた部分であつて周知のものであるが、
本発明にかかわるその特徴及び用語を復習してお
く事は有用であろう。単純なシステムにおいて
は、単一の計算機関がI/Oサブシステムの資源
及び動作を直接制御する命令並びに中央処理装置
の資源のみを使用する命令から成る命令系列を実
行する。しかし本発明を使用する型のシステムで
は、中央処理装置はI/O動作の一部のみを実行
し、いくつかの処理装置がI/O動作の別々の部
分を処理する。それらの処理装置の1つはI/O
処理装置又はIOPと呼ばれ、さらにチヤネル処理
装置又はCPと呼ばれるいくつかの処理装置が存
在する。CPは処理装置メモリに対する実際のデ
ータ転送を処理し、それらはI/O装置制御装置
に送られる副指令を形成する事によつてコマンド
を実行する。IOPは中央処理装置との通信、I/
Oジヨブのスケジユール等の、I/O動作のうち
一般的な部分を処理する。IOPは、中央処理装置
によつて用意された制御ブロツクの受け取り及び
IOPの代りに中央処理装置によつて処理されるス
テータス条件の報告等の動作に関して中央処理装
置と通信する。 IOP及びCPは相互間でも通信を行なうが、本
発明はそれらの通信における改善を与えるもので
ある。IOPはI/Oジヨブが行なわれなければな
らない時に特定のCPに信号を送り、CPはジヨブ
が終了した時及び何らかの他の一般的な動作が
IOPによつて実行されるべき時にIOPに信号を送
る。公知の先行技術において、これらの通信は
IOPとCPとの間を走る信号配線上又はIOP及び
CPを処理装置メモリに接続している既存のデー
タ・パス上で行なわれていた。 [発明の目的] 本発明の目的は多数のチヤネル例えば64個のチ
ヤネルを有するデータ処理システムを提供する事
である。多数のチヤネルがあれば、処理装置メモ
リとI/Oサブシステムとの間で高いレートでデ
ータ転送が行なわれるが、本発明は処理装置メモ
リとI/Oサブシステムとの間の他のトラフイツ
ク、特にIOPとCPとの間の通信を減少させる事
を目的とする。別の観点から述べると、本発明の
システムは、メモリ・バスがIOPとCPとの間又
はCP間の通信にも用いられているようなシステ
ムよりも多くのチヤネルを取り扱えるように構成
される。本発明によれば、処理装置メモリ・バス
が完全に使用されている状態を保ちながらさらに
メモリ・バス上に負荷を加える事なくIOPとCP
との間で他のメツセージを転送できるようなバツ
フアが与えられる。 [発明の概要] これから説明するシステムにおいて、CPは、
CPの多数の狭いバスと中央処理装置メモリ・シ
ステムの単一の広いバスとの間に漏斗状に配列さ
れた一連のバツフア・メモリ段を経由して中央処
理装置メモリに接続される。バツフアの最上段及
びそれに付随する装置は1次データ段(PDS)と
呼ばれ、その直下の段には2次データ段(SDS)
と呼ばれる2つのユニツトが存在する。PDSは
IOPと中央処理装置メモリとの間の接続も与えて
いる。 本発明のシステムはIOPとCPとの間の通信の
ためのチヤネル通信機構(CC)を提供する。CC
中の配列は各CP毎にワード位置を有する。IOP
又はCPは、一般データ部(好ましくは3バイ
ト)、所定フイールド部(好ましくは2バイト)
及び制御情報部(好ましくは2バイト)を含む所
定形式のメツセージによつて配列にアクセスす
る。制御部はメツセージの発信元又は宛先のCP
を識別するフイールドを含む。配列は、配列の特
定のワード位置がいずれの方向のIOPと特定の
CPとの間の通信にも使えるようにCP識別フイー
ルドに従つて配列をアドレス指定するための論理
回路を含む。 またメツセージ制御フイールドは、このシステ
ムで有用ないくつかの通信オプシヨンの1つを示
すバイトも有する。配列は、これらのビツトをデ
コードし、配列を使用しない動作と共に配列に1
回以上の取り出し及び/又は記憶動作を行なつて
所定の動作を実行する論理回路を有する。配列を
使用しない動作には、チヤネルに信号を送る動
作、いくつかのビツト・テスト動作が含まれる。
これらの動作及び配列に関連する部品は以下の明
細書中に詳細に説明されている。 [良好な実施例の説明] a 序 本章のb節は本明細書中で使われるいくつかの
用語の用語解である。c節及び第1図は良好な実
施例のシステムの一般的特徴を説明する。d節及
び第2A図は基本読取動作について述べ、I/O
サブシステムの構成要素間で転送される通信メツ
セージの形式を説明し、CCAの通常の構成要素
のあるものを導入する。e節及び第2B図は配列
の通常の特徴の説明を終え、通常のメモリ書込動
作によく似た基本書込動作を説明する。f節及び
g節並びに第2C図及び第2D図は、システムの
他の構成要素について、それらがCCA内並びに
CCA及びIOP及びSDSの間でどのようにして情報
の流れを制御するかを説明する。h節及びi節は
これらの基本動作及び関連のあるCCA動作を実
行するハードウエアについて説明する。j節及び
k節は1つ又はいくつかの基本動作より成る動作
について説明する。 b 用語 チヤネル通信機構(CC)は、通常の記憶セル
配列及びデータのユニツトをアクセスするための
通常のアドレシング回路を含む通常のメモリを含
んでいる。このメモリはチヤネル通信機構配列
(CCA)と呼ばれる。メモリ・アクセス動作は読
取及び書込又は取り出し及び記憶と呼ばれる。メ
モリ記憶又は取り出し動作でアクセスされるデー
タのユニツトはメモリ・ワードと呼ばれる。メモ
リはCCIR及びCCOR(それぞれチヤネル通信入
力レジスタ及びチヤネル通信出力レジスタ)と呼
ばれる入力レジスタ及び出力レジスタを有する。
メモリ・ワードはその使われ方に依存して「チヤ
ネル・エントリ」又は「ベクトル」とも呼ばれ
る。チヤネル・エントリはデータ・フイールド及
び制御フイードを有する。それらの制御フイール
ドの1つは「CCAコマンド」と呼ばれる。チヤ
ネル・エントリのデータ・フイールドは、CCA
コマンドとは区別すべき「チヤネル・コマンド」
フイールドを有する。データ・フイールドの他の
内容は本発明にとつて重要ではなく、その内容を
一般的に示すために「データ」という用語が用い
られる。本発明は、CCAに送られたコマンドで
定義される。(CCA動作と呼ばれる)より複雑な
動作を行なうように組み合される(読取等の)
「基本動作」を用いて部分的に説明する。用語を
単純化するために、特定のレジスタ長及び特定の
論理変数を下記の説明で用いる。 c CC及びそれに関連するシステム―第1図 CCはPDSの一部である。第1図は処理装置の
主記憶をIOP並びにSDS1及び2に接続するPDS
の構成要素を示している。IOP及びSDSもCCAを
経由する通信のためのこれらの経路を使用する。 CPのあるものはSDS1を経由してPDSに接続
される。SDS1からPDSへの信号線12上の入力
はスイツチング回路13を経由して、主記憶用制
御装置に至る入力バスに接続される。回路13は
同様にSDS2からのバス15及びIOPからのバス
16を入力バス14に接続する。同様にスイツチ
ング回路17,18及び19は、主記憶からの出
力バス20を、IOP並びにSDS1及びSDS2への
各出力バス21,22及び23に結合するように
接続されている。 CCは入力バス14と出力バス21,22及び
23との間に接続され、入力バスの分岐24上の
メツセージを受け取り、分岐25からスイツチン
グ回路17,18及び19を経由して出力バス2
1,22及び23に出力を供給する。これらのバ
スは全て同一の幅を有し、それは好ましくは8バ
イトである。但しバス25は5バイト幅である。
CCはさらに後述する2バイト幅の付加的バス2
6を有する。 第1図で、スイツチング回路13は漏斗状の機
能ブロツクのように描かれている。通常そうであ
るように、この機能ブロツクはANDゲート及び
ORゲートの配列によつて実現される。ANDゲー
ト配列は、単一のバスに接続されるバス12,1
5,16の数(3)及びバス上のビツト数(64)の寸
法を有する。バス14の各ビツト位置毎に1つの
ORゲートが存在し、各ORゲートは対応する
ANDゲートをバス14の信号線に接続する。こ
の型の回路は広く用いられており周知のものであ
る。 CCAは配列28、入力レジスタ(CCIR)29
及び出力レジスタ(CCOR)30を含むメモリ2
7より成る。CCIR29は入力バス24からのメ
ツセージを受け取るように接続され、CCOR30
は分岐25を経由して出力バスに出力を供給する
ように接続されている。回路13を通る接続は優
先順位システムによつて制御される。このシステ
ムはCCIR29(又は図示していない他の回路)
へのアクセスを許諾し、アクセスを許諾した
IOP,SDS1又はSDS2を識別する情報を記憶す
る。CCAを読取るためのある動作において、こ
の記憶された識別情報が、レジスタ30の内容を
スイツチング回路17,18及び19のうち適当
なものを経由して出力するために使用される。入
力レジスタ29の幅は前述の他のバスの幅と同じ
であり、好ましくは8バイトである。配列及びそ
の出力レジスタ30は幅が狭く、好ましくは5バ
イトであり、出力バスの所定のバイト位置は使用
されないか又はCCA動作に関して未定義であ
る。ゲートの集合32はCCIR又はCCORの選択
されたフイールドをCCA又はCCの他の回路に転
送する。第1図の他の回路34〜37については
後述する。 d 基本動作―読取―第2A図 ある配列ワードはチヤネル・エントリであり、
またあるものはベクトルである。第2A図は
CCIR又はCCOR中のCCAメツセージの全てのバ
イトを示している。これはそれらのバイトがチヤ
ネル・エントリ上の基本読取動作において重要だ
からである。ベクトルに関するより簡単なデータ
形式はこの節の後で説明する。チヤネル・エント
リとCCAのベクトルとの間の関係は後に第4図
の説明中で述べる。 CCIRは配列及びCCORよりも3バイト長い。
CCORのバイト位置0〜4は読取り動作時に配列
のバイト位置0〜4から生じる。配列のバイト位
置0〜2は書込み動作時にCCIRのバイト位置0
〜2から生じる。配列のバイト位置3及び4は書
込み動作時にCCIRのバイト位置6及び7から生
じる。 配列及びCCORのチヤネル・エントリ・バイト
0〜4にはデータ・フイールドが存在する。
(CCIRのバイト0〜3は基本読取動作において
重要ではなく、第2A図では示されていない)こ
のフイールドは、それが(本発明にとつて一般に
重要ではないが)種々の方式で特別なビツトの意
味が与えられ得る事を示すために「データ」と呼
ばれる。 配列及びCCORのバイト3及び4は、IOP及び
複数のCPの間で情報を転送するため、特にステ
ータスをIOPに転送するため又はIOPからCP
(CCORのバイト3)に命令を転送するため又は
装置アドレスをいずれかの方向に(CCORのバイ
ト4)に転送するためのデータ・フイールドとし
て使用される。(装置アドレスはサブチヤネルを
一意的に指定するために通常チヤネルIDと組み
合される) CCIRワードのバイト4は、CCAにCCA動作の
1つを実行するように知らせるCCAコマンドで
ある。例えばあるCCA動作は基本読取動作の実
行を要求する。CCIRワードのバイト5はチヤネ
ルIDであり、この例ではそれは配列のエントリ
を読取つているチヤネルか又はIOPが読取つてい
るチヤネル・エントリを識別する。各CPはいず
れの方向でも通信できるように配列中に1つのエ
ントリを有しており、チヤネルIDは(第e節に
詳細に説明されているように)基本読取動作及び
他のメモリ・アクセス動作のためのメモリ・アド
レスとして使用される。(他の動作については後
述する) 読取動作のためのアドレスはCCIRのバイト5
から配列のアドレス回路に転送され、配列から読
取られたチヤネル・エントリはCCORの30の対応
する位置及びバス上に転送される。ゲートはバス
上の情報をIOP又は要求を行なつているチヤネル
ルに転送するように制御される。読取動作の出力
は第1図のゲート17,18,19の対応するも
のを経由して転送される。従つて基本読取動作は
データ・フイールドの意味を除けば通常のもので
ある。 e 基本動作:無条件書込―第2B図 基本書込動作は、入力レジスタCCIRとメモリ
記憶バイト位置との間にバイト位置の置換が存在
する点を除けば、通常のものである。第2A図の
ように、CCIRのバイト位置4及び5は動作を制
御するために使われる。入力ワードの3つのデー
タ・バイト位置は、第2A図に示されているのと
同じCCIRの位置にある。しかしながら配列及び
CCORのバイト4及び5はCCIRのバイト位置6
及び7で始まり、メツセージが配列に記憶される
時これらの位置の単純な置換が存在する。 f 基本動作:読取後のセツト/リセツト(ベク
トル動作)―第2C図 第2C図は、ワードをCCORにロードする基本
読取動作の後にメモリ・ワードの所定のビツトを
変化させる基本動作に関するデータのフローを示
す。第2C図のデータ・フローにおいて、CCIR
のバイト4及び5は第2A図のように先行する読
取動作のためにCCAコマンド及びチヤネルIDを
保持するが、バイト5はバス41に対する32ビツ
トのマスクを形成する回路40にも供給される。
CCORの32ビツトのデータ・フイールド及び回路
40からの32ビツトのマスクは、CCORにフイー
ルドバツクされるバス43上の32ビツトの出力を
発生するゲート回路42に送られる。 このデータ経路はベクトル・ビツトを1にセツ
ト又は0にリセツトするために使われる。チヤネ
ルIDは、既に述べたようにビツト位置を識別す
るために解読される。アドレスされたビツトは1
又は0にセツトされ、ベクトルの他のビツトは不
変である。 g 他のビツト動作 1つの基本動作において、バイト3がチヤネ
ル・エントリ中の非ゼロ・ビツトに関してテスト
される。 h 基本動作:シグナル・チヤネル―第1図 バス26は2バイト幅であつて、1バイトはチ
ヤネルを識別し1バイトの符号はCCにおいて行
なわれる動作を示す。各チヤネルはそのアドレス
を読取り、符号を解読する手段を有する。それら
の手段はあれふれたものであつて、容易に理解で
る。 i CCAアドレツシング―第3図 第3図は、既出のメモリ配列及びCCIRのバイ
ト5並びにCCIRのバイト5への及びアドレス・
ビツト及び制御ビツトの他の源への相互接続を示
す。メモリは128のワード位置を有するように描
かれており、これは7ビツトのアドレスを必要と
する。これらのビツトのうち6個はチヤネルID
バイトのビツト5〜0に由来し、これは32本のチ
ヤネル及びCCAにおけるそのエントリを一意的
に識別する。第3図のビツト2は定数0であつ
て、CCAメモリ配列中の連続でないチヤネル・
エントリを生ずる。7番目のアドレス・ビツト
(アドレスのビツト6)は配列の上半分のチヤネ
ル・エントリをアドレスする場合は0であり配列
の下半分のチヤネル・エントリの場合は1であ
る。ビツト6は後述する論理回路から形成される
(又はIOP又はSDSによつて形成されアドレスの
ビツト位置にロードされる)。CCA配列の下半分
の4つの位置は2つのベクトルのために使われ、
ベクトルは4つの半ベクトルとして記憶される。
4つの半ベクトルの位置は1110100〜1110101及び
1111100〜1111101(10進表示116,117,124,
125)である。128のワード配列中で、60のワード
位置は不使用である。 図面には、チヤネル・エントリ、割り込みベク
トル又はビジー・ベクトルをアクセスするための
適当なアドレス・ビツトを供給する4個のゲート
50,51,52及び53が示されている。ゲー
トは各アドレス・ビツト及び適当なエネーブル信
号に関するANDゲートより成る。ゲート50は
32のチヤネル・エントリのうち1つをアドレスす
るための00000〜111011の範囲の6ビツト・アド
レスを形成する。第3図のアドレス・ビツト2は
定数0である。信号線54に供給されるアドレ
ス・ビツト6が0の時、CCA配列の上半分の32
本のチヤネルがアクセスされる。同様に、ゲート
51はCCA配列の下半分の32のチヤネル・エン
トリに関するCCAアドレスを形成する。 64ビツトのベクトルは各々32ビツトの2個の半
ベクトルとして記憶される。各ベクトルの第1の
半分又は下半分はチヤネル0〜31(10進数)に
関するビツトを有し、第2の又は上の半ベクトル
はチヤネル32〜63(10進数)に関するビツト
を有する。割込みベクトル又はビジー・ベクトル
のアクセスの場合、アドレス・ビツト5〜0が
CCIRのバイト4の中のコマンドに基いてCCA制
御回路34(第1図)で形成される。アドレス・
ビツト0は、ベクトル・アクセスがIOP,SDS0
又はSDS1のどれによつて要求されているかによ
つて決定される。もしSDS0が割込み又はビジ
ー・ベクトル・アクセスを要求するならば、アド
レス・ビツト1は0である。もしSDS1がベクト
ル・アクセスを要求するならば、アドレス・ビツ
ト0は1である。IOPの場合、アドレス・ビツト
0は変化されずに通過する。ゲート52及び53
は各々割込みベクトル及びビジー・ベクトルに関
するアドレス回路を示している。第3図のゲート
52はANDゲートであつて、CCA制御回路から
のエネーブル線及びアドレス・ビツトに対する論
理積を出力する。割込みベクトルの場合、生成さ
れるアドレスは下位の割込みベクトルについては
1110100、上位の割込みベクトルについては
1110101である。同様にビジー・ベクトルの場合
(ゲート53)、アドレスは下位については
1111100、上位については1111101である。 CCIRワードのバイト4のコマンドは特定のチ
ヤネル・エントリに対応する半ベクトル中の独得
のビツト位置に対するアクセスを要求する半ベク
トル基本動作の形に解読される。以前に説明した
ように、それは第1図に示したCCA制御回路3
4中の回路を経て特定の半ベクトル位置を指示す
るCCIRコマンド・バイト4の解読である。半ベ
クトル(割込み又はビジー)がCCORに置かれた
後、1つのベクトル・ビツト位置を選択するため
に必要な32のベクトル・マスクの1つを形成する
ために5つの付加的なアドレス・ビツトが必要と
される。第3図の回路36に示すように、CCIR
バイト5のビツト5〜3及びチヤネルIDの1〜
0は、ベクトル・マスクを形成するために5つの
アドレス・ビツトとして使われる。例として、チ
ヤネル35がビジーかどうかを見るテストを考え
る。CCIRのコマンド・バイト4は、基本ベクト
ル動作を記述しCCAメモリ配列中の半ベクトル
位置を指示する。この例において、上位ビジー・
ベクトル位置が選択される。CCIRバイト5のビ
ツト5〜3及び1〜0のチヤネルIDフイールド
は000及び11であり、これはビジー・ベクトル・
マスクを形成し上位半ビジー・ベクトルの(通常
の2進計数系列00000〜11111の)4番目のビツト
位置を選択する。この場合、4番目のビツト位置
はチヤネル35に対応する「ビジー・ビツト」で
ある。 j 実現:CCAコマンド・デコーダ回路―第4
図 第4図はCCIRのコマンド・バイト、及びビツ
ト位置32〜39の各々からの信号線を示してい
る。ビツト32及び39は使用されず、単に他の
ビツト位置に対する基準として図面中に示されて
いる。6個のビツト位置33〜38は一部デコー
ドされ一部符号化された形式でコマンドを形成し
ている。ビツト33及び34は符号化されておら
ず、各々取り出し操作及び記憶操作を識別する。
従来行なわれているように、それらのビツトを非
符号化形式で与える事により、それらはメモリ・
アクセス・サイクルを開始する動作に関してより
早く利用可能となる。これらの信号は、従来行な
われているように、メモリに送られる。またビツ
ト33及び34はコマンド・デコーダ回路にも与
えられ、そこでビツト35〜38の修飾ビツトと
して作用する。 説明を単純化するために、「取り出し」コマン
ド及び「記憶」コマンドに関して別個の機能ブロ
ツクが示されている。(g節の記載から明らかな
ように、読取及びテストが先行する取り出し動作
は取り出し型動作と呼ばれる)アドレス・デコー
ダなどの一般の場合、n入力のデコーダは、各々
入力変数の組み合せの特定の1つが生じた時に出
力を発生するANDゲートを2のn乗個有してい
る。図面の装置では、可能な符号のうち僅かのも
のしか使用されず、しかも各ANDゲートは取り
出しビツト33又は記憶ビツト34からのエネー
ブル入力を受け取る。 デコーダの代表的な出力が第4図に示されてい
る。例えば符号―010000―は、無条件書込動作が
行なわれる事を示す信号線上の信号を生じさせ
る。本明細書の次節はこれらの動作について説明
し、後続する節はデコーダの出力を基本動作の系
列に変換する装置について説明する。 k CC動作 下記の表1は書込動作と呼ばれるCCA動作及
びそのコマンド符号を示し、CCA動作を構成す
る基本動作を列挙している。既に述べた様に、
CCA書込動作のいくつかは基本読取動作を含
む。 シーケンサはデコーダ・コマンドを受け取り、
基本動作の1つを実行させるように信号線上に信
号を発生する。あるCCコマンドは単一の基本動
作によつて実行され、あるものは基本動作の系列
によつて実行される。選択された基本動作の系列
をステツプする回路はシーケンサと呼ばれ、シー
ケンサは種々の形のものが知られている。例えば
シーケンサはカウンタ、カウンタをステツプする
クロツク、並びにコマンド及びカウンタ計数値に
応答して特定の出力線をエネーブルする論理回路
から構成できる。シーケンサの詳細は下記の動作
説明から明らかであろう。8ビツトのコマンドは
次のようにビツト32〜39に分割される。即
ち、32(不使用)、33(取り出し(CCA読取
り))、34(記憶)、35,36及び37(取り
出し/記憶(CCA書込み)修飾ビツト)、38
(不使用)並びに39(これはこのバイトをCCA
コマンド・バイトとして識別する)である。表2
は同様にCCA読取り動作を示す。これらの基本
動作の系列を実行するために、ありふれた順序制
御装置が設けられる。通常、この装置は、CCA
コマンド・デコーダの出力に対応する所定の順序
で回路をエネーブルするステツピング回路から構
成される。 CC動作は表1に掲げた名称及び符号によつて
識別される。また表1は、コマンドを識別するた
めに他の表中で使用される参照文字A〜Pも掲げ
ている。ビツト32及び39は各コマンド中では
使用されず、且つビツト38もコマンドK〜Pで
は使用されない事に注意されたい。コマンドA〜
Jは書込コマンドと呼ばれ、ビツト33,34=
01が書込動作を指示する。またコマンドK〜Pは
読取コマンドと呼ばれ、ビツト33,34=10が
読取動作を指示する。 表2,3及び4はCC動作及びその各々を構成
している基本動作を掲げている。また、これらの
表は、それらの基本動作が説明されている図面に
対する参照も有している。表2及び3において、
Xは列見出しのCC動作が行見出しの基本動作を
含む事を意味する。例えば表2でCC動作A〜F
は各々、第2a図で説明した基本読取動作を含
む。基本動作は、それらが実行される順序で掲げ
られている。例えば表2で、CC動作B(CCA無
条件書込及びチヤネル信号)は2つのステツプ即
ちCCA読取及びチヤネル信号を含む。表2は書
込動作A〜Jを、表3は読取動作K〜Nを示して
いる。チヤネル・エントリ読取の基本動作は両方
の表に現われている事に注意されたい。表4は、
他のCC動作中に存在しない基本動作のみを含む
CC動作を示している。
理システムのチヤネル・サブシステムの構成要素
に関する。 [背景技術] チヤネル・サブシステムはデータ処理システム
のありふれた部分であつて周知のものであるが、
本発明にかかわるその特徴及び用語を復習してお
く事は有用であろう。単純なシステムにおいて
は、単一の計算機関がI/Oサブシステムの資源
及び動作を直接制御する命令並びに中央処理装置
の資源のみを使用する命令から成る命令系列を実
行する。しかし本発明を使用する型のシステムで
は、中央処理装置はI/O動作の一部のみを実行
し、いくつかの処理装置がI/O動作の別々の部
分を処理する。それらの処理装置の1つはI/O
処理装置又はIOPと呼ばれ、さらにチヤネル処理
装置又はCPと呼ばれるいくつかの処理装置が存
在する。CPは処理装置メモリに対する実際のデ
ータ転送を処理し、それらはI/O装置制御装置
に送られる副指令を形成する事によつてコマンド
を実行する。IOPは中央処理装置との通信、I/
Oジヨブのスケジユール等の、I/O動作のうち
一般的な部分を処理する。IOPは、中央処理装置
によつて用意された制御ブロツクの受け取り及び
IOPの代りに中央処理装置によつて処理されるス
テータス条件の報告等の動作に関して中央処理装
置と通信する。 IOP及びCPは相互間でも通信を行なうが、本
発明はそれらの通信における改善を与えるもので
ある。IOPはI/Oジヨブが行なわれなければな
らない時に特定のCPに信号を送り、CPはジヨブ
が終了した時及び何らかの他の一般的な動作が
IOPによつて実行されるべき時にIOPに信号を送
る。公知の先行技術において、これらの通信は
IOPとCPとの間を走る信号配線上又はIOP及び
CPを処理装置メモリに接続している既存のデー
タ・パス上で行なわれていた。 [発明の目的] 本発明の目的は多数のチヤネル例えば64個のチ
ヤネルを有するデータ処理システムを提供する事
である。多数のチヤネルがあれば、処理装置メモ
リとI/Oサブシステムとの間で高いレートでデ
ータ転送が行なわれるが、本発明は処理装置メモ
リとI/Oサブシステムとの間の他のトラフイツ
ク、特にIOPとCPとの間の通信を減少させる事
を目的とする。別の観点から述べると、本発明の
システムは、メモリ・バスがIOPとCPとの間又
はCP間の通信にも用いられているようなシステ
ムよりも多くのチヤネルを取り扱えるように構成
される。本発明によれば、処理装置メモリ・バス
が完全に使用されている状態を保ちながらさらに
メモリ・バス上に負荷を加える事なくIOPとCP
との間で他のメツセージを転送できるようなバツ
フアが与えられる。 [発明の概要] これから説明するシステムにおいて、CPは、
CPの多数の狭いバスと中央処理装置メモリ・シ
ステムの単一の広いバスとの間に漏斗状に配列さ
れた一連のバツフア・メモリ段を経由して中央処
理装置メモリに接続される。バツフアの最上段及
びそれに付随する装置は1次データ段(PDS)と
呼ばれ、その直下の段には2次データ段(SDS)
と呼ばれる2つのユニツトが存在する。PDSは
IOPと中央処理装置メモリとの間の接続も与えて
いる。 本発明のシステムはIOPとCPとの間の通信の
ためのチヤネル通信機構(CC)を提供する。CC
中の配列は各CP毎にワード位置を有する。IOP
又はCPは、一般データ部(好ましくは3バイ
ト)、所定フイールド部(好ましくは2バイト)
及び制御情報部(好ましくは2バイト)を含む所
定形式のメツセージによつて配列にアクセスす
る。制御部はメツセージの発信元又は宛先のCP
を識別するフイールドを含む。配列は、配列の特
定のワード位置がいずれの方向のIOPと特定の
CPとの間の通信にも使えるようにCP識別フイー
ルドに従つて配列をアドレス指定するための論理
回路を含む。 またメツセージ制御フイールドは、このシステ
ムで有用ないくつかの通信オプシヨンの1つを示
すバイトも有する。配列は、これらのビツトをデ
コードし、配列を使用しない動作と共に配列に1
回以上の取り出し及び/又は記憶動作を行なつて
所定の動作を実行する論理回路を有する。配列を
使用しない動作には、チヤネルに信号を送る動
作、いくつかのビツト・テスト動作が含まれる。
これらの動作及び配列に関連する部品は以下の明
細書中に詳細に説明されている。 [良好な実施例の説明] a 序 本章のb節は本明細書中で使われるいくつかの
用語の用語解である。c節及び第1図は良好な実
施例のシステムの一般的特徴を説明する。d節及
び第2A図は基本読取動作について述べ、I/O
サブシステムの構成要素間で転送される通信メツ
セージの形式を説明し、CCAの通常の構成要素
のあるものを導入する。e節及び第2B図は配列
の通常の特徴の説明を終え、通常のメモリ書込動
作によく似た基本書込動作を説明する。f節及び
g節並びに第2C図及び第2D図は、システムの
他の構成要素について、それらがCCA内並びに
CCA及びIOP及びSDSの間でどのようにして情報
の流れを制御するかを説明する。h節及びi節は
これらの基本動作及び関連のあるCCA動作を実
行するハードウエアについて説明する。j節及び
k節は1つ又はいくつかの基本動作より成る動作
について説明する。 b 用語 チヤネル通信機構(CC)は、通常の記憶セル
配列及びデータのユニツトをアクセスするための
通常のアドレシング回路を含む通常のメモリを含
んでいる。このメモリはチヤネル通信機構配列
(CCA)と呼ばれる。メモリ・アクセス動作は読
取及び書込又は取り出し及び記憶と呼ばれる。メ
モリ記憶又は取り出し動作でアクセスされるデー
タのユニツトはメモリ・ワードと呼ばれる。メモ
リはCCIR及びCCOR(それぞれチヤネル通信入
力レジスタ及びチヤネル通信出力レジスタ)と呼
ばれる入力レジスタ及び出力レジスタを有する。
メモリ・ワードはその使われ方に依存して「チヤ
ネル・エントリ」又は「ベクトル」とも呼ばれ
る。チヤネル・エントリはデータ・フイールド及
び制御フイードを有する。それらの制御フイール
ドの1つは「CCAコマンド」と呼ばれる。チヤ
ネル・エントリのデータ・フイールドは、CCA
コマンドとは区別すべき「チヤネル・コマンド」
フイールドを有する。データ・フイールドの他の
内容は本発明にとつて重要ではなく、その内容を
一般的に示すために「データ」という用語が用い
られる。本発明は、CCAに送られたコマンドで
定義される。(CCA動作と呼ばれる)より複雑な
動作を行なうように組み合される(読取等の)
「基本動作」を用いて部分的に説明する。用語を
単純化するために、特定のレジスタ長及び特定の
論理変数を下記の説明で用いる。 c CC及びそれに関連するシステム―第1図 CCはPDSの一部である。第1図は処理装置の
主記憶をIOP並びにSDS1及び2に接続するPDS
の構成要素を示している。IOP及びSDSもCCAを
経由する通信のためのこれらの経路を使用する。 CPのあるものはSDS1を経由してPDSに接続
される。SDS1からPDSへの信号線12上の入力
はスイツチング回路13を経由して、主記憶用制
御装置に至る入力バスに接続される。回路13は
同様にSDS2からのバス15及びIOPからのバス
16を入力バス14に接続する。同様にスイツチ
ング回路17,18及び19は、主記憶からの出
力バス20を、IOP並びにSDS1及びSDS2への
各出力バス21,22及び23に結合するように
接続されている。 CCは入力バス14と出力バス21,22及び
23との間に接続され、入力バスの分岐24上の
メツセージを受け取り、分岐25からスイツチン
グ回路17,18及び19を経由して出力バス2
1,22及び23に出力を供給する。これらのバ
スは全て同一の幅を有し、それは好ましくは8バ
イトである。但しバス25は5バイト幅である。
CCはさらに後述する2バイト幅の付加的バス2
6を有する。 第1図で、スイツチング回路13は漏斗状の機
能ブロツクのように描かれている。通常そうであ
るように、この機能ブロツクはANDゲート及び
ORゲートの配列によつて実現される。ANDゲー
ト配列は、単一のバスに接続されるバス12,1
5,16の数(3)及びバス上のビツト数(64)の寸
法を有する。バス14の各ビツト位置毎に1つの
ORゲートが存在し、各ORゲートは対応する
ANDゲートをバス14の信号線に接続する。こ
の型の回路は広く用いられており周知のものであ
る。 CCAは配列28、入力レジスタ(CCIR)29
及び出力レジスタ(CCOR)30を含むメモリ2
7より成る。CCIR29は入力バス24からのメ
ツセージを受け取るように接続され、CCOR30
は分岐25を経由して出力バスに出力を供給する
ように接続されている。回路13を通る接続は優
先順位システムによつて制御される。このシステ
ムはCCIR29(又は図示していない他の回路)
へのアクセスを許諾し、アクセスを許諾した
IOP,SDS1又はSDS2を識別する情報を記憶す
る。CCAを読取るためのある動作において、こ
の記憶された識別情報が、レジスタ30の内容を
スイツチング回路17,18及び19のうち適当
なものを経由して出力するために使用される。入
力レジスタ29の幅は前述の他のバスの幅と同じ
であり、好ましくは8バイトである。配列及びそ
の出力レジスタ30は幅が狭く、好ましくは5バ
イトであり、出力バスの所定のバイト位置は使用
されないか又はCCA動作に関して未定義であ
る。ゲートの集合32はCCIR又はCCORの選択
されたフイールドをCCA又はCCの他の回路に転
送する。第1図の他の回路34〜37については
後述する。 d 基本動作―読取―第2A図 ある配列ワードはチヤネル・エントリであり、
またあるものはベクトルである。第2A図は
CCIR又はCCOR中のCCAメツセージの全てのバ
イトを示している。これはそれらのバイトがチヤ
ネル・エントリ上の基本読取動作において重要だ
からである。ベクトルに関するより簡単なデータ
形式はこの節の後で説明する。チヤネル・エント
リとCCAのベクトルとの間の関係は後に第4図
の説明中で述べる。 CCIRは配列及びCCORよりも3バイト長い。
CCORのバイト位置0〜4は読取り動作時に配列
のバイト位置0〜4から生じる。配列のバイト位
置0〜2は書込み動作時にCCIRのバイト位置0
〜2から生じる。配列のバイト位置3及び4は書
込み動作時にCCIRのバイト位置6及び7から生
じる。 配列及びCCORのチヤネル・エントリ・バイト
0〜4にはデータ・フイールドが存在する。
(CCIRのバイト0〜3は基本読取動作において
重要ではなく、第2A図では示されていない)こ
のフイールドは、それが(本発明にとつて一般に
重要ではないが)種々の方式で特別なビツトの意
味が与えられ得る事を示すために「データ」と呼
ばれる。 配列及びCCORのバイト3及び4は、IOP及び
複数のCPの間で情報を転送するため、特にステ
ータスをIOPに転送するため又はIOPからCP
(CCORのバイト3)に命令を転送するため又は
装置アドレスをいずれかの方向に(CCORのバイ
ト4)に転送するためのデータ・フイールドとし
て使用される。(装置アドレスはサブチヤネルを
一意的に指定するために通常チヤネルIDと組み
合される) CCIRワードのバイト4は、CCAにCCA動作の
1つを実行するように知らせるCCAコマンドで
ある。例えばあるCCA動作は基本読取動作の実
行を要求する。CCIRワードのバイト5はチヤネ
ルIDであり、この例ではそれは配列のエントリ
を読取つているチヤネルか又はIOPが読取つてい
るチヤネル・エントリを識別する。各CPはいず
れの方向でも通信できるように配列中に1つのエ
ントリを有しており、チヤネルIDは(第e節に
詳細に説明されているように)基本読取動作及び
他のメモリ・アクセス動作のためのメモリ・アド
レスとして使用される。(他の動作については後
述する) 読取動作のためのアドレスはCCIRのバイト5
から配列のアドレス回路に転送され、配列から読
取られたチヤネル・エントリはCCORの30の対応
する位置及びバス上に転送される。ゲートはバス
上の情報をIOP又は要求を行なつているチヤネル
ルに転送するように制御される。読取動作の出力
は第1図のゲート17,18,19の対応するも
のを経由して転送される。従つて基本読取動作は
データ・フイールドの意味を除けば通常のもので
ある。 e 基本動作:無条件書込―第2B図 基本書込動作は、入力レジスタCCIRとメモリ
記憶バイト位置との間にバイト位置の置換が存在
する点を除けば、通常のものである。第2A図の
ように、CCIRのバイト位置4及び5は動作を制
御するために使われる。入力ワードの3つのデー
タ・バイト位置は、第2A図に示されているのと
同じCCIRの位置にある。しかしながら配列及び
CCORのバイト4及び5はCCIRのバイト位置6
及び7で始まり、メツセージが配列に記憶される
時これらの位置の単純な置換が存在する。 f 基本動作:読取後のセツト/リセツト(ベク
トル動作)―第2C図 第2C図は、ワードをCCORにロードする基本
読取動作の後にメモリ・ワードの所定のビツトを
変化させる基本動作に関するデータのフローを示
す。第2C図のデータ・フローにおいて、CCIR
のバイト4及び5は第2A図のように先行する読
取動作のためにCCAコマンド及びチヤネルIDを
保持するが、バイト5はバス41に対する32ビツ
トのマスクを形成する回路40にも供給される。
CCORの32ビツトのデータ・フイールド及び回路
40からの32ビツトのマスクは、CCORにフイー
ルドバツクされるバス43上の32ビツトの出力を
発生するゲート回路42に送られる。 このデータ経路はベクトル・ビツトを1にセツ
ト又は0にリセツトするために使われる。チヤネ
ルIDは、既に述べたようにビツト位置を識別す
るために解読される。アドレスされたビツトは1
又は0にセツトされ、ベクトルの他のビツトは不
変である。 g 他のビツト動作 1つの基本動作において、バイト3がチヤネ
ル・エントリ中の非ゼロ・ビツトに関してテスト
される。 h 基本動作:シグナル・チヤネル―第1図 バス26は2バイト幅であつて、1バイトはチ
ヤネルを識別し1バイトの符号はCCにおいて行
なわれる動作を示す。各チヤネルはそのアドレス
を読取り、符号を解読する手段を有する。それら
の手段はあれふれたものであつて、容易に理解で
る。 i CCAアドレツシング―第3図 第3図は、既出のメモリ配列及びCCIRのバイ
ト5並びにCCIRのバイト5への及びアドレス・
ビツト及び制御ビツトの他の源への相互接続を示
す。メモリは128のワード位置を有するように描
かれており、これは7ビツトのアドレスを必要と
する。これらのビツトのうち6個はチヤネルID
バイトのビツト5〜0に由来し、これは32本のチ
ヤネル及びCCAにおけるそのエントリを一意的
に識別する。第3図のビツト2は定数0であつ
て、CCAメモリ配列中の連続でないチヤネル・
エントリを生ずる。7番目のアドレス・ビツト
(アドレスのビツト6)は配列の上半分のチヤネ
ル・エントリをアドレスする場合は0であり配列
の下半分のチヤネル・エントリの場合は1であ
る。ビツト6は後述する論理回路から形成される
(又はIOP又はSDSによつて形成されアドレスの
ビツト位置にロードされる)。CCA配列の下半分
の4つの位置は2つのベクトルのために使われ、
ベクトルは4つの半ベクトルとして記憶される。
4つの半ベクトルの位置は1110100〜1110101及び
1111100〜1111101(10進表示116,117,124,
125)である。128のワード配列中で、60のワード
位置は不使用である。 図面には、チヤネル・エントリ、割り込みベク
トル又はビジー・ベクトルをアクセスするための
適当なアドレス・ビツトを供給する4個のゲート
50,51,52及び53が示されている。ゲー
トは各アドレス・ビツト及び適当なエネーブル信
号に関するANDゲートより成る。ゲート50は
32のチヤネル・エントリのうち1つをアドレスす
るための00000〜111011の範囲の6ビツト・アド
レスを形成する。第3図のアドレス・ビツト2は
定数0である。信号線54に供給されるアドレ
ス・ビツト6が0の時、CCA配列の上半分の32
本のチヤネルがアクセスされる。同様に、ゲート
51はCCA配列の下半分の32のチヤネル・エン
トリに関するCCAアドレスを形成する。 64ビツトのベクトルは各々32ビツトの2個の半
ベクトルとして記憶される。各ベクトルの第1の
半分又は下半分はチヤネル0〜31(10進数)に
関するビツトを有し、第2の又は上の半ベクトル
はチヤネル32〜63(10進数)に関するビツト
を有する。割込みベクトル又はビジー・ベクトル
のアクセスの場合、アドレス・ビツト5〜0が
CCIRのバイト4の中のコマンドに基いてCCA制
御回路34(第1図)で形成される。アドレス・
ビツト0は、ベクトル・アクセスがIOP,SDS0
又はSDS1のどれによつて要求されているかによ
つて決定される。もしSDS0が割込み又はビジ
ー・ベクトル・アクセスを要求するならば、アド
レス・ビツト1は0である。もしSDS1がベクト
ル・アクセスを要求するならば、アドレス・ビツ
ト0は1である。IOPの場合、アドレス・ビツト
0は変化されずに通過する。ゲート52及び53
は各々割込みベクトル及びビジー・ベクトルに関
するアドレス回路を示している。第3図のゲート
52はANDゲートであつて、CCA制御回路から
のエネーブル線及びアドレス・ビツトに対する論
理積を出力する。割込みベクトルの場合、生成さ
れるアドレスは下位の割込みベクトルについては
1110100、上位の割込みベクトルについては
1110101である。同様にビジー・ベクトルの場合
(ゲート53)、アドレスは下位については
1111100、上位については1111101である。 CCIRワードのバイト4のコマンドは特定のチ
ヤネル・エントリに対応する半ベクトル中の独得
のビツト位置に対するアクセスを要求する半ベク
トル基本動作の形に解読される。以前に説明した
ように、それは第1図に示したCCA制御回路3
4中の回路を経て特定の半ベクトル位置を指示す
るCCIRコマンド・バイト4の解読である。半ベ
クトル(割込み又はビジー)がCCORに置かれた
後、1つのベクトル・ビツト位置を選択するため
に必要な32のベクトル・マスクの1つを形成する
ために5つの付加的なアドレス・ビツトが必要と
される。第3図の回路36に示すように、CCIR
バイト5のビツト5〜3及びチヤネルIDの1〜
0は、ベクトル・マスクを形成するために5つの
アドレス・ビツトとして使われる。例として、チ
ヤネル35がビジーかどうかを見るテストを考え
る。CCIRのコマンド・バイト4は、基本ベクト
ル動作を記述しCCAメモリ配列中の半ベクトル
位置を指示する。この例において、上位ビジー・
ベクトル位置が選択される。CCIRバイト5のビ
ツト5〜3及び1〜0のチヤネルIDフイールド
は000及び11であり、これはビジー・ベクトル・
マスクを形成し上位半ビジー・ベクトルの(通常
の2進計数系列00000〜11111の)4番目のビツト
位置を選択する。この場合、4番目のビツト位置
はチヤネル35に対応する「ビジー・ビツト」で
ある。 j 実現:CCAコマンド・デコーダ回路―第4
図 第4図はCCIRのコマンド・バイト、及びビツ
ト位置32〜39の各々からの信号線を示してい
る。ビツト32及び39は使用されず、単に他の
ビツト位置に対する基準として図面中に示されて
いる。6個のビツト位置33〜38は一部デコー
ドされ一部符号化された形式でコマンドを形成し
ている。ビツト33及び34は符号化されておら
ず、各々取り出し操作及び記憶操作を識別する。
従来行なわれているように、それらのビツトを非
符号化形式で与える事により、それらはメモリ・
アクセス・サイクルを開始する動作に関してより
早く利用可能となる。これらの信号は、従来行な
われているように、メモリに送られる。またビツ
ト33及び34はコマンド・デコーダ回路にも与
えられ、そこでビツト35〜38の修飾ビツトと
して作用する。 説明を単純化するために、「取り出し」コマン
ド及び「記憶」コマンドに関して別個の機能ブロ
ツクが示されている。(g節の記載から明らかな
ように、読取及びテストが先行する取り出し動作
は取り出し型動作と呼ばれる)アドレス・デコー
ダなどの一般の場合、n入力のデコーダは、各々
入力変数の組み合せの特定の1つが生じた時に出
力を発生するANDゲートを2のn乗個有してい
る。図面の装置では、可能な符号のうち僅かのも
のしか使用されず、しかも各ANDゲートは取り
出しビツト33又は記憶ビツト34からのエネー
ブル入力を受け取る。 デコーダの代表的な出力が第4図に示されてい
る。例えば符号―010000―は、無条件書込動作が
行なわれる事を示す信号線上の信号を生じさせ
る。本明細書の次節はこれらの動作について説明
し、後続する節はデコーダの出力を基本動作の系
列に変換する装置について説明する。 k CC動作 下記の表1は書込動作と呼ばれるCCA動作及
びそのコマンド符号を示し、CCA動作を構成す
る基本動作を列挙している。既に述べた様に、
CCA書込動作のいくつかは基本読取動作を含
む。 シーケンサはデコーダ・コマンドを受け取り、
基本動作の1つを実行させるように信号線上に信
号を発生する。あるCCコマンドは単一の基本動
作によつて実行され、あるものは基本動作の系列
によつて実行される。選択された基本動作の系列
をステツプする回路はシーケンサと呼ばれ、シー
ケンサは種々の形のものが知られている。例えば
シーケンサはカウンタ、カウンタをステツプする
クロツク、並びにコマンド及びカウンタ計数値に
応答して特定の出力線をエネーブルする論理回路
から構成できる。シーケンサの詳細は下記の動作
説明から明らかであろう。8ビツトのコマンドは
次のようにビツト32〜39に分割される。即
ち、32(不使用)、33(取り出し(CCA読取
り))、34(記憶)、35,36及び37(取り
出し/記憶(CCA書込み)修飾ビツト)、38
(不使用)並びに39(これはこのバイトをCCA
コマンド・バイトとして識別する)である。表2
は同様にCCA読取り動作を示す。これらの基本
動作の系列を実行するために、ありふれた順序制
御装置が設けられる。通常、この装置は、CCA
コマンド・デコーダの出力に対応する所定の順序
で回路をエネーブルするステツピング回路から構
成される。 CC動作は表1に掲げた名称及び符号によつて
識別される。また表1は、コマンドを識別するた
めに他の表中で使用される参照文字A〜Pも掲げ
ている。ビツト32及び39は各コマンド中では
使用されず、且つビツト38もコマンドK〜Pで
は使用されない事に注意されたい。コマンドA〜
Jは書込コマンドと呼ばれ、ビツト33,34=
01が書込動作を指示する。またコマンドK〜Pは
読取コマンドと呼ばれ、ビツト33,34=10が
読取動作を指示する。 表2,3及び4はCC動作及びその各々を構成
している基本動作を掲げている。また、これらの
表は、それらの基本動作が説明されている図面に
対する参照も有している。表2及び3において、
Xは列見出しのCC動作が行見出しの基本動作を
含む事を意味する。例えば表2でCC動作A〜F
は各々、第2a図で説明した基本読取動作を含
む。基本動作は、それらが実行される順序で掲げ
られている。例えば表2で、CC動作B(CCA無
条件書込及びチヤネル信号)は2つのステツプ即
ちCCA読取及びチヤネル信号を含む。表2は書
込動作A〜Jを、表3は読取動作K〜Nを示して
いる。チヤネル・エントリ読取の基本動作は両方
の表に現われている事に注意されたい。表4は、
他のCC動作中に存在しない基本動作のみを含む
CC動作を示している。
【表】
【表】
【表】
【表】
コマンド・バイト・リセツト X X
表 4 基本動作 CC動作 ビジー・ベクトル読取 O 割込ベクトル読取 P ビジー・ベクトル・リセツト I 割込ベクトル・リセツト J I CC動作―例 IOPがCCA書込及びチヤネル信号コマンド(表
1のコマンドD)を出すものと想定する。第2B
図に示すように、CCIRにロードされるメツセー
ジはチヤネルのIDを含み、バイト0〜2は配列
にロードされ後にチヤネルによつて取り出される
メツセージを含む。表2の列Dの系列が示すよう
に、チヤネル・エントリが第2A図のように読取
られコマンド・バイトが第2C図のようにテスト
される。もしコマンド・バイトが全0であれば、
CCIRからのエントりはアドレス指定された配列
位置に入れられる。次にバス26上の2バイトの
メツセージは、指定されたチヤネルにこのメツセ
ージにアクセスする事をを知らせるためにそのチ
ヤネルに送られる。もしコマンド・バイトが全0
でなければ、動作はチヤネル・エントりを書込む
事なく終了し、その事実をIOPに知らせる適当な
応答がIOPに送られる。 後のある時刻に、チヤネルは「チヤネル・エン
トリ読取及びコマンド・リセツト」コマンド(表
3の列L)を出す。CCは第2A図の読取り動作
を実行し、メツセージを第1図のバス25に載
せ、アドレスされたチヤネルに与える。コマン
ド・バイトは全部0にセツトされる。通常チヤネ
ルへのメツセージはチヤネル動作を開始させる。
チヤネルが動作を開始する時、チヤネルは、「ビ
ジー・ベクトル・セツト」のコマンド(表2の列
G)を出す。CCはビジー・ベクトルの適当な半
分を読取り、第2C図に説明されているようにチ
ヤネルIDを用いて1バイトを論理1にセツトす
る。(チヤネルが動作を完了する時、チヤネルは
後に説明するようにビジー・ビツトをリセツトす
る。) 同じチヤネルを用いて他の動作を始めるため
に、IOPは「ビジー・ベクトル読取」コマンド
(表4の参照文字O)を出す。もしチヤネルがビ
ジーでなければ、IOPは既に述べたように別の動
作を開始できる。もしチヤネルがビジーであれ
ば、IOPはこの動作を実行するためにビジーでな
いチヤネルを選択してもよいし、またチヤネルが
ビジーでなくなるまで待機してもよい。 チヤネルは、動作を完了した時、「CCA書込及
び割込ベクトル・ビツト・セツト及びビジー・ビ
ツト・リセツト」(表2の列F)コマンドを出
す。このメツセージのバイト0〜2は割込みに関
係した情報を含み得る。バイト6はステータス・
ビツトである。この動作が起きる時、割込み信号
がIOPに送られる。チヤネルからのこのコマンド
に応答して、CCはチヤネル・エントリを読取
り、バイト3が全0かどうかのテストを行なう。
もしバイト3が全部0ビツトであれば、チヤネル
からのメツセージは配列のチヤネル・エントリ位
置に書込まれ、割込みビツトはセツトされ、ビジ
ー・ビツトはリセツトされる。これらの動作は、
表2の列Fに示した順序で行なわれる。もしコマ
ンド・バイトが全部0ではなければ、チヤネルは
その事を知らされ、それらの動作は起きない。 後に、割込み信号に応答して、IOPは「割込み
ベクトル読取」コマンド(表2のP)を出す。
IOPはCCから32ビツトの割込みベクトルを受け
取り、どのチヤネルが割込みを要求しているかを
判定するテストを行なう。IOPは、「チヤネル・
エントリ読取及び割込みベクトル・リセツト及び
コマンド・リセツト」コマンド(表3の列N)に
よつて割込みをクリアする。 m チヤネル間通信―第2D図 これまで、チヤネルからIOPへ又はIOPからチ
ヤネルへの通信について説明してきた。しかし
CCはチヤネル間の通信のためにも使用できる。
それらの動作は、IOPによつてのみ実行されてい
た動作を送信側のチヤネルが実行するという観点
から理解できる。この動作に関して、送信側チヤ
ネルがCCIRにロードするメツセージは、バイト
位置0に受信側チヤネルのチヤネルIDを有す
る。通常1つのチヤネルが他のチヤネルに関する
CCA中の以前のメツセージに重ね書きする事は
望ましくないであろう。そしてチヤネルからチヤ
ネルへの書込動作は「CCA書込及びチヤネル信
号」の動作(表2の列D)と同一である。送信側
チヤネルのチヤネルIDのアドレスはCCIRのビツ
ト・バイト位置5に含まれている。もしチヤネ
ル・エントリがより早期に読取られなかつたメツ
セージを含む事によつて書込動作が完了しなかつ
たならば、送信側チヤネルはそのバイト5のチヤ
ネルIDによつてその事を知らされる。
表 4 基本動作 CC動作 ビジー・ベクトル読取 O 割込ベクトル読取 P ビジー・ベクトル・リセツト I 割込ベクトル・リセツト J I CC動作―例 IOPがCCA書込及びチヤネル信号コマンド(表
1のコマンドD)を出すものと想定する。第2B
図に示すように、CCIRにロードされるメツセー
ジはチヤネルのIDを含み、バイト0〜2は配列
にロードされ後にチヤネルによつて取り出される
メツセージを含む。表2の列Dの系列が示すよう
に、チヤネル・エントリが第2A図のように読取
られコマンド・バイトが第2C図のようにテスト
される。もしコマンド・バイトが全0であれば、
CCIRからのエントりはアドレス指定された配列
位置に入れられる。次にバス26上の2バイトの
メツセージは、指定されたチヤネルにこのメツセ
ージにアクセスする事をを知らせるためにそのチ
ヤネルに送られる。もしコマンド・バイトが全0
でなければ、動作はチヤネル・エントりを書込む
事なく終了し、その事実をIOPに知らせる適当な
応答がIOPに送られる。 後のある時刻に、チヤネルは「チヤネル・エン
トリ読取及びコマンド・リセツト」コマンド(表
3の列L)を出す。CCは第2A図の読取り動作
を実行し、メツセージを第1図のバス25に載
せ、アドレスされたチヤネルに与える。コマン
ド・バイトは全部0にセツトされる。通常チヤネ
ルへのメツセージはチヤネル動作を開始させる。
チヤネルが動作を開始する時、チヤネルは、「ビ
ジー・ベクトル・セツト」のコマンド(表2の列
G)を出す。CCはビジー・ベクトルの適当な半
分を読取り、第2C図に説明されているようにチ
ヤネルIDを用いて1バイトを論理1にセツトす
る。(チヤネルが動作を完了する時、チヤネルは
後に説明するようにビジー・ビツトをリセツトす
る。) 同じチヤネルを用いて他の動作を始めるため
に、IOPは「ビジー・ベクトル読取」コマンド
(表4の参照文字O)を出す。もしチヤネルがビ
ジーでなければ、IOPは既に述べたように別の動
作を開始できる。もしチヤネルがビジーであれ
ば、IOPはこの動作を実行するためにビジーでな
いチヤネルを選択してもよいし、またチヤネルが
ビジーでなくなるまで待機してもよい。 チヤネルは、動作を完了した時、「CCA書込及
び割込ベクトル・ビツト・セツト及びビジー・ビ
ツト・リセツト」(表2の列F)コマンドを出
す。このメツセージのバイト0〜2は割込みに関
係した情報を含み得る。バイト6はステータス・
ビツトである。この動作が起きる時、割込み信号
がIOPに送られる。チヤネルからのこのコマンド
に応答して、CCはチヤネル・エントリを読取
り、バイト3が全0かどうかのテストを行なう。
もしバイト3が全部0ビツトであれば、チヤネル
からのメツセージは配列のチヤネル・エントリ位
置に書込まれ、割込みビツトはセツトされ、ビジ
ー・ビツトはリセツトされる。これらの動作は、
表2の列Fに示した順序で行なわれる。もしコマ
ンド・バイトが全部0ではなければ、チヤネルは
その事を知らされ、それらの動作は起きない。 後に、割込み信号に応答して、IOPは「割込み
ベクトル読取」コマンド(表2のP)を出す。
IOPはCCから32ビツトの割込みベクトルを受け
取り、どのチヤネルが割込みを要求しているかを
判定するテストを行なう。IOPは、「チヤネル・
エントリ読取及び割込みベクトル・リセツト及び
コマンド・リセツト」コマンド(表3の列N)に
よつて割込みをクリアする。 m チヤネル間通信―第2D図 これまで、チヤネルからIOPへ又はIOPからチ
ヤネルへの通信について説明してきた。しかし
CCはチヤネル間の通信のためにも使用できる。
それらの動作は、IOPによつてのみ実行されてい
た動作を送信側のチヤネルが実行するという観点
から理解できる。この動作に関して、送信側チヤ
ネルがCCIRにロードするメツセージは、バイト
位置0に受信側チヤネルのチヤネルIDを有す
る。通常1つのチヤネルが他のチヤネルに関する
CCA中の以前のメツセージに重ね書きする事は
望ましくないであろう。そしてチヤネルからチヤ
ネルへの書込動作は「CCA書込及びチヤネル信
号」の動作(表2の列D)と同一である。送信側
チヤネルのチヤネルIDのアドレスはCCIRのビツ
ト・バイト位置5に含まれている。もしチヤネ
ル・エントリがより早期に読取られなかつたメツ
セージを含む事によつて書込動作が完了しなかつ
たならば、送信側チヤネルはそのバイト5のチヤ
ネルIDによつてその事を知らされる。
第1図はアレイを使用する要素に対するチヤネ
ルのブロツク図、第2A図乃至第2D図はチヤネ
ル通信配列を移動されるメツセージの形式並びに
いくつかの基本動作に関するコマンド及びデータ
の流れを示す図、第3図はCCAに関するアドレ
シング回路を示すブロツク図、第4図はCCAに
関する制御の一部を形成するコマンド・デコーダ
の図である。
ルのブロツク図、第2A図乃至第2D図はチヤネ
ル通信配列を移動されるメツセージの形式並びに
いくつかの基本動作に関するコマンド及びデータ
の流れを示す図、第3図はCCAに関するアドレ
シング回路を示すブロツク図、第4図はCCAに
関する制御の一部を形成するコマンド・デコーダ
の図である。
Claims (1)
- 【特許請求の範囲】 1 入出力装置と主記憶装置との間でデータを転
送する複数のチヤネル装置と、上記チヤネル装置
の動作を制御する入出力処理装置と、上記複数の
チヤネル装置又は上記入出力処理装置からの信号
を主記憶装置バスに供給する第1のバスと、主記
憶装置バスからの信号を上記複数のチヤネル装置
及び上記入出力処理装置に供給する第2のバスと
を含むチヤネル・サブシステムにおける、上記複
数のチヤネル装置及び上記入出力処理装置の間の
通信に用いられるチヤネル通信機構であつて、 上記各チヤネルに対応する記憶位置を有し、入
力レジスタ及び出力レジスタ、上記記憶位置をア
クセスするアドレス手段、並びに記憶及び取り出
し動作を行なう手段を備えた記憶配列と、 上記入力レジスタを上記第1のバスに接続する
手段及び上記出力レジスタを上記第2のバスに接
続する手段と、 上記入力レジスタの第1の所定位置のデータを
上記アドレス手段に供給する手段と、 上記入力レジスタの第2の所定位置のデータを
上記通信機能に対するコマンドとして解釈し実行
する手段であつて、上記コマンドにより書込動作
が指示される時は上記入力レジスタの第3の所定
部分を上記記憶配列の上記記憶位置に記憶し、上
記コマンドにより読取動作が指示される時は上記
記憶配列の上記記憶位置から上記出力レジスタに
データを取り出す手段と、 上記複数のチヤネル装置又は入出力処理装置の
1つが上記複数のチヤネル装置又は入出力処理装
置の他のものにメツセージを送る時は、上記入力
レジスタの上記第1の所定位置にチヤネル装置の
識別情報を、上記第2の所定位置に書込動作を指
示するコマンドを、そして上記第3の所定位置に
送信すべきデータをそれぞれ有するメツセージを
上記入力レジスタに供給し、上記複数のチヤネル
装置又は入出力処理装置の上記他のものが上記送
信データを受け取る時は、上記入力レジスタの上
記第1の所定位置にチヤネル装置の識別情報を、
上記第2の所定位置に読取動作を指示するコマン
ドをそれぞれ有するメツセージを上記入力レジス
タに供給する上記チヤネル装置又は入出力処理装
置中の手段とを含むチヤネル通信機構。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US06/465,952 US4604709A (en) | 1983-02-14 | 1983-02-14 | Channel communicator |
| US465952 | 1983-02-14 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS59148920A JPS59148920A (ja) | 1984-08-25 |
| JPS6215899B2 true JPS6215899B2 (ja) | 1987-04-09 |
Family
ID=23849837
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP58216378A Granted JPS59148920A (ja) | 1983-02-14 | 1983-11-18 | チヤネル通信機構 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US4604709A (ja) |
| EP (1) | EP0118669B1 (ja) |
| JP (1) | JPS59148920A (ja) |
| DE (1) | DE3485606D1 (ja) |
Families Citing this family (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4754399A (en) * | 1983-12-28 | 1988-06-28 | Hitachi, Ltd. | Data transfer control system for controlling data transfer between a buffer memory and input/output devices |
| JPS6336461A (ja) * | 1986-07-31 | 1988-02-17 | Pfu Ltd | 汎用チャネル制御方式 |
| JPH0724013B2 (ja) * | 1986-09-10 | 1995-03-15 | 株式会社日立製作所 | ベクトルプロセツサ |
| US5086498A (en) * | 1987-01-23 | 1992-02-04 | Hitachi, Ltd. | Parallel computer with asynchronous communication facility |
| CN1067291C (zh) * | 1992-11-06 | 2001-06-20 | 帕尔公司 | 过滤器 |
| JP2972501B2 (ja) * | 1993-09-20 | 1999-11-08 | 富士通株式会社 | I/oサブシステム及びi/oサブシステムにおける排他制御方法 |
| KR100453821B1 (ko) * | 2002-10-09 | 2004-10-20 | 한국전자통신연구원 | 마이크로 컨트롤러를 위한 데이터 버스 시스템 |
| US7437490B2 (en) * | 2005-05-27 | 2008-10-14 | International Business Machines Corporation | Channel communication array queues in hardware system area |
| US7941570B2 (en) * | 2008-02-14 | 2011-05-10 | International Business Machines Corporation | Bi-directional data transfer within a single I/O operation |
Family Cites Families (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3702462A (en) * | 1967-10-26 | 1972-11-07 | Delaware Sds Inc | Computer input-output system |
| US3693161A (en) * | 1970-07-09 | 1972-09-19 | Burroughs Corp | Apparatus for interrogating the availability of a communication path to a peripheral device |
| US3936803A (en) * | 1973-11-19 | 1976-02-03 | Amdahl Corporation | Data processing system having a common channel unit with circulating fields |
| US4020466A (en) * | 1974-07-05 | 1977-04-26 | Ibm Corporation | Memory hierarchy system with journaling and copy back |
| US4056843A (en) * | 1976-06-07 | 1977-11-01 | Amdahl Corporation | Data processing system having a plurality of channel processors |
| US4133030A (en) * | 1977-01-19 | 1979-01-02 | Honeywell Information Systems Inc. | Control system providing for the transfer of data in a communications processing system employing channel dedicated control blocks |
| US4115854A (en) * | 1977-03-28 | 1978-09-19 | International Business Machines Corporation | Channel bus controller |
| US4156932A (en) * | 1977-07-05 | 1979-05-29 | Honeywell Information Systems Inc. | Programmable communications controller |
| JPS586173B2 (ja) * | 1978-01-20 | 1983-02-03 | 株式会社日立製作所 | チャネル制御方式 |
| US4437157A (en) * | 1978-07-20 | 1984-03-13 | Sperry Corporation | Dynamic subchannel allocation |
| US4298959A (en) * | 1979-11-23 | 1981-11-03 | United Technologies Corporation | Digital information transfer system (DITS) receiver |
| US4426679A (en) * | 1980-09-29 | 1984-01-17 | Honeywell Information Systems Inc. | Communication multiplexer using a random access memory for storing an acknowledge response to an input/output command from a central processor |
-
1983
- 1983-02-14 US US06/465,952 patent/US4604709A/en not_active Expired - Lifetime
- 1983-11-18 JP JP58216378A patent/JPS59148920A/ja active Granted
-
1984
- 1984-01-17 DE DE8484100445T patent/DE3485606D1/de not_active Expired - Lifetime
- 1984-01-17 EP EP84100445A patent/EP0118669B1/en not_active Expired
Also Published As
| Publication number | Publication date |
|---|---|
| EP0118669A2 (en) | 1984-09-19 |
| EP0118669B1 (en) | 1992-03-25 |
| DE3485606D1 (de) | 1992-04-30 |
| EP0118669A3 (en) | 1988-04-27 |
| JPS59148920A (ja) | 1984-08-25 |
| US4604709A (en) | 1986-08-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0120889B1 (en) | Direct memory access peripheral unit controller | |
| US4458313A (en) | Memory access control system | |
| US3702462A (en) | Computer input-output system | |
| US4821177A (en) | Apparatus for controlling system accesses having multiple command level conditional rotational multiple port servicing priority hierarchy | |
| US3573741A (en) | Control unit for input/output devices | |
| US5214759A (en) | Multiprocessors including means for communicating with each other through shared memory | |
| US4658350A (en) | Extended addressing apparatus and method for direct storage access devices | |
| IE54146B1 (en) | Information processor with initial programme loading | |
| US3704453A (en) | Catenated files | |
| US4546430A (en) | Control unit busy queuing | |
| JPH06236344A (ja) | 複数データ転送要求間の仲裁方法と装置 | |
| US4922416A (en) | Interface device end message storing with register and interrupt service registers for directing segmented message transfer between intelligent switch and microcomputer | |
| JPS6215899B2 (ja) | ||
| US3936803A (en) | Data processing system having a common channel unit with circulating fields | |
| JPH04363746A (ja) | Dma機能を有するマイクロコンピュータシステム | |
| JPH033253B2 (ja) | ||
| EP0331487B1 (en) | Data transfer control system | |
| US3846759A (en) | Data processing arrangements | |
| JPS6242306B2 (ja) | ||
| JPS5932029A (ja) | 交換可能インタフエ−ス回路構成 | |
| JPS6162961A (ja) | 入出力機器 | |
| JPH07141256A (ja) | メモリへのデータの疑似整合転送の方法と装置 | |
| GB1591427A (en) | Circuit for rearranging word bits | |
| JPH0736806A (ja) | Dma方式 | |
| SU1029175A2 (ru) | Селекторный канал |