JPH03211650A - I/oインタフェース制御方法 - Google Patents
I/oインタフェース制御方法Info
- Publication number
- JPH03211650A JPH03211650A JP767690A JP767690A JPH03211650A JP H03211650 A JPH03211650 A JP H03211650A JP 767690 A JP767690 A JP 767690A JP 767690 A JP767690 A JP 767690A JP H03211650 A JPH03211650 A JP H03211650A
- Authority
- JP
- Japan
- Prior art keywords
- command
- channel
- controller
- input
- status
- 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
Links
- 238000000034 method Methods 0.000 claims description 17
- 238000004891 communication Methods 0.000 abstract description 14
- NZNMSOFKMUBTKW-UHFFFAOYSA-N Cyclohexanecarboxylic acid Natural products OC(=O)C1CCCCC1 NZNMSOFKMUBTKW-UHFFFAOYSA-N 0.000 description 5
- AFVLVVWMAFSXCK-VMPITWQZSA-N alpha-cyano-4-hydroxycinnamic acid Chemical compound OC(=O)C(\C#N)=C\C1=CC=C(O)C=C1 AFVLVVWMAFSXCK-VMPITWQZSA-N 0.000 description 5
- 230000000694 effects Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 2
- 239000013256 coordination polymer Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔概要〕
CPUと主記憶装置とチャネルとコントローラと入出力
装置とを有する計算機システムにおけるチャネルとコン
トローラ間のI10インタフェース制御制御に関し。
装置とを有する計算機システムにおけるチャネルとコン
トローラ間のI10インタフェース制御制御に関し。
チャネルがセレクション・シーケンスを行わずに入出力
命令を処理することにより、コントローラが処理中でも
影響されることなく、短時間にCPUを入出力命令から
解放できるようにすることを目的とし。
命令を処理することにより、コントローラが処理中でも
影響されることなく、短時間にCPUを入出力命令から
解放できるようにすることを目的とし。
チャネルとコントローラとがアクセスできる記憶装置を
備え、チャネルは、I10ステータスの管理と参照とを
行い、前記記憶装置上にコマンドをキューイングし、コ
ントローラがコマンドを受信可能なとき、キューイング
したコマンドの処理をコントローラに要求して、入出力
命令を実行するように構成する。
備え、チャネルは、I10ステータスの管理と参照とを
行い、前記記憶装置上にコマンドをキューイングし、コ
ントローラがコマンドを受信可能なとき、キューイング
したコマンドの処理をコントローラに要求して、入出力
命令を実行するように構成する。
本発明は、CPUと主記憶装置とチャネルとコントロー
ラと入出力装置とを有する計夏機システムにおけるチャ
ネルとコントローラ間のI10インタフェース制御制御
に関する。
ラと入出力装置とを有する計夏機システムにおけるチャ
ネルとコントローラ間のI10インタフェース制御制御
に関する。
近年のCPUの処理速度の向上に伴い、一般命令と入出
力命令の処理速度の差が大きくなり、CPUは入出力命
令からの早期解放が要求されている。そのためには、チ
ャネルにおける入出力命令の処理時間短縮が必要である
。
力命令の処理速度の差が大きくなり、CPUは入出力命
令からの早期解放が要求されている。そのためには、チ
ャネルにおける入出力命令の処理時間短縮が必要である
。
第9図は従来技術の例を示す。
CPUl0.主記憶装置11および各チャネル13は、
システムバス12に接続されている。チャネル13とコ
ントローラ20とは、タグ線TAGおよびバス&IBU
Sにより、制御信号およびデータの授受を行う、コント
ローラ20の配下に入出力装置(Ilo)21が接続さ
れる。
システムバス12に接続されている。チャネル13とコ
ントローラ20とは、タグ線TAGおよびバス&IBU
Sにより、制御信号およびデータの授受を行う、コント
ローラ20の配下に入出力装置(Ilo)21が接続さ
れる。
このような従来のタグバスによるI’10インタフェー
スでは、セレクション・シーケンスによって2 I10
ステータスのチェンクとコマンドの送出を行っていた。
スでは、セレクション・シーケンスによって2 I10
ステータスのチェンクとコマンドの送出を行っていた。
ところが、セレクション・シーケンスが5タグバスによ
るチャネル13−コントローラ20間の応答シーケンス
のため、かなりの時間がかかり、また、スキューとコン
トローラ20の処理速度に1 セレクション・シーケン
ス時間が影響されていた。
るチャネル13−コントローラ20間の応答シーケンス
のため、かなりの時間がかかり、また、スキューとコン
トローラ20の処理速度に1 セレクション・シーケン
ス時間が影響されていた。
また、インタフェースが解放されていても、コントロー
ラ20が何らかの処理中の場合、チャネル13からのセ
レクション・シーケンス開始がコントローラ20側で待
たされていた。
ラ20が何らかの処理中の場合、チャネル13からのセ
レクション・シーケンス開始がコントローラ20側で待
たされていた。
[発明が解決しようとする課題]
したがって、CPUl0ば、チャネル13のセレクショ
ン・シーケンスが終わるまで、入出力命令から解放され
ず、かなりの時間待つといった問題があった。すなわち
、チャネル13はセレクション処理終了後、CPUl0
にコンデイション・コードを返すが、それまでの時間が
長くかかるという問題があった。
ン・シーケンスが終わるまで、入出力命令から解放され
ず、かなりの時間待つといった問題があった。すなわち
、チャネル13はセレクション処理終了後、CPUl0
にコンデイション・コードを返すが、それまでの時間が
長くかかるという問題があった。
本発明は上記問題点の解決を図り、チャネルがセレクシ
ョン・シーケンスを行わずに入出力命令を処理すること
により、コントローラが処理中でも影響されることなく
、短時間にCPUを入出力命令から解放できるようにす
ることを目的としている。
ョン・シーケンスを行わずに入出力命令を処理すること
により、コントローラが処理中でも影響されることなく
、短時間にCPUを入出力命令から解放できるようにす
ることを目的としている。
第1図は本発明の構成例を示す。
第1図において、10は命令をフェッチして実行するC
PU、11はプログラムやデータが格納される主記憶袋
!、12はシステムバス、13はチャネル、14はマイ
クロプログラム等が格納されている制御メモリ(C5)
、15はI10ステータス領域、16はコマンド・ポイ
ンタ、17はコミュニケーションメモリ(CM)、1s
はチャネル・リクエスト領域、19はコマンド領域、2
0は配下のIloを制<8するコントローラ、21はデ
ータの入出力を行う入出力袋f(Ilo)を表す。
PU、11はプログラムやデータが格納される主記憶袋
!、12はシステムバス、13はチャネル、14はマイ
クロプログラム等が格納されている制御メモリ(C5)
、15はI10ステータス領域、16はコマンド・ポイ
ンタ、17はコミュニケーションメモリ(CM)、1s
はチャネル・リクエスト領域、19はコマンド領域、2
0は配下のIloを制<8するコントローラ、21はデ
ータの入出力を行う入出力袋f(Ilo)を表す。
本発明では、チャネル13とコントローラ20との間に
1両者が共にアクセス可能な記憶装置であるコミュニケ
ーションメモリ17が設けられている。
1両者が共にアクセス可能な記憶装置であるコミュニケ
ーションメモリ17が設けられている。
チャネル13は、内部にI10ステータス領域15を持
ち、これによりIloの状態 (^vaflable/Working)の管理と参照
を行う。
ち、これによりIloの状態 (^vaflable/Working)の管理と参照
を行う。
コミュニケーションメモリ17には、コマンド領域19
があり、チャネル13はここにコマンドをキューイング
する。コマンド・ポインタ16は。
があり、チャネル13はここにコマンドをキューイング
する。コマンド・ポインタ16は。
チャネル13がコマンド領域19内にキューイングして
未だコントローラ20に送出していないコマンドを示す
ポインタである。チャネル・リクエスト領域18は、チ
ャネル13がコマンド領域19内にキューイングしてコ
ントローラ20に処理を要求するコマンドを示すポイン
タと処理要求ビットを持つ。
未だコントローラ20に送出していないコマンドを示す
ポインタである。チャネル・リクエスト領域18は、チ
ャネル13がコマンド領域19内にキューイングしてコ
ントローラ20に処理を要求するコマンドを示すポイン
タと処理要求ビットを持つ。
チャネル13は、入出力命令実行時に自分が管理するI
10ステータス領域15を参照し、コミュニケーション
メモリ17のコマンド領域19にコマンドをキューイン
グする。そして、コントローラ20がコマンドを受信可
能なとき、チャネル・リクエスト領域18を介して、コ
マンドの処理をコントローラ20に要求する。
10ステータス領域15を参照し、コミュニケーション
メモリ17のコマンド領域19にコマンドをキューイン
グする。そして、コントローラ20がコマンドを受信可
能なとき、チャネル・リクエスト領域18を介して、コ
マンドの処理をコントローラ20に要求する。
本発明では、チャネル13が、CPtJloが発行した
入出力命令を実行するとき、I10ステータス領域15
を参照し、 I / O−Workingならば、コ
ンデイション・コード(以下、CCという)とステータ
ス(=BSY)をCPUl0に返し、I/ O=Ava
ilableならば、コマンドをコマンド領域19内に
キューイングしてコマンド・ポインタ16のQNPを+
IL、CC(=O)とステータス(=OO)をCPtJ
loに返す。
入出力命令を実行するとき、I10ステータス領域15
を参照し、 I / O−Workingならば、コ
ンデイション・コード(以下、CCという)とステータ
ス(=BSY)をCPUl0に返し、I/ O=Ava
ilableならば、コマンドをコマンド領域19内に
キューイングしてコマンド・ポインタ16のQNPを+
IL、CC(=O)とステータス(=OO)をCPtJ
loに返す。
コマンド領域19内に、未だコントローラ20に送出し
ていないコマンドがあり(QSP≠QNP)、チャネル
・リクエスト領域18のCHREQピント=oなら、チ
ャフル13は、コマンドポインタ16にCHREQビッ
ト−1を付加して。
ていないコマンドがあり(QSP≠QNP)、チャネル
・リクエスト領域18のCHREQピント=oなら、チ
ャフル13は、コマンドポインタ16にCHREQビッ
ト−1を付加して。
チャネル・リクエスト領域18に書き込み、コントロー
ラ20にコマンド処理を要求し、コマンド・ポインタ1
6を(QSP +−QNP)と更新する。
ラ20にコマンド処理を要求し、コマンド・ポインタ1
6を(QSP +−QNP)と更新する。
コントローラ20は、チャネル・リクエスト領域1 B
(DCHREQビットがlftらば、CHQSPとCH
QNPで示された範囲のコマンド領域19内のコマンド
を処理する。
(DCHREQビットがlftらば、CHQSPとCH
QNPで示された範囲のコマンド領域19内のコマンド
を処理する。
したがって、チャネル13はセレクシヨン・シーケンス
を行わずに、I10ステータスの参照とコマンドの書き
込みとポインタ更新を行うことで。
を行わずに、I10ステータスの参照とコマンドの書き
込みとポインタ更新を行うことで。
CPUl0にCCとステータスを返すため、短時間でC
PUI Oを入出力命令から解放できる。また、チャネ
ル13からコントローラ20へのコマンド処理要求割込
み回数が、コマンドN個に対して51〜N回になるため
、コントローラ20の処理効率が向上する。
PUI Oを入出力命令から解放できる。また、チャネ
ル13からコントローラ20へのコマンド処理要求割込
み回数が、コマンドN個に対して51〜N回になるため
、コントローラ20の処理効率が向上する。
[実施例〕
第2図は本発明の一実施例に係る制御メモリのマツプ、
第3図は第2図に示すチャネルコモンの構造、第4図は
第2図に示す制御メモリにおけるサブチャネル領域の構
造、第5図は本発明の一実施例に係るコミュニケーショ
ンメモリのマツプ。
第3図は第2図に示すチャネルコモンの構造、第4図は
第2図に示す制御メモリにおけるサブチャネル領域の構
造、第5図は本発明の一実施例に係るコミュニケーショ
ンメモリのマツプ。
第6図は第5図に示すコミュニケーションメモリの内部
構造、第7図は本発明の一実施例によるチャネル処理フ
ロー、第8図は本発明の一実施例によるコントローラ処
理フローを示す。
構造、第7図は本発明の一実施例によるチャネル処理フ
ロー、第8図は本発明の一実施例によるコントローラ処
理フローを示す。
本実施例では、チャネル13が持つ制御メモリ14は、
2BX16KWの大きさを持ち、第2図に示すように用
いられている。
2BX16KWの大きさを持ち、第2図に示すように用
いられている。
ワード・アドレスで0番地からI FFF番地までがチ
ャネルマイクロプログラムの格納領域である0次の20
00番地から2OFF番地までのチャネルコモンが、チ
ャネル共通の情報領域であって、第3図に示すデータ構
造になっている。
ャネルマイクロプログラムの格納領域である0次の20
00番地から2OFF番地までのチャネルコモンが、チ
ャネル共通の情報領域であって、第3図に示すデータ構
造になっている。
チャネルコモンには、第3図に示すように、チャネルス
テータス、CHRQMピッl−、CMDQピント、QS
P、QNPがある。
テータス、CHRQMピッl−、CMDQピント、QS
P、QNPがある。
CHRQMビントハ、コミュニケーションメモリ17に
キューイングしたコマンドを、コントローラ20に送出
したことを示すビットである。CMDQビットは、キュ
ーイングして未だコントローラ20に送出していないコ
マンドがあることを示すビットである。
キューイングしたコマンドを、コントローラ20に送出
したことを示すビットである。CMDQビットは、キュ
ーイングして未だコントローラ20に送出していないコ
マンドがあることを示すビットである。
QSPはコマンド・キューの先頭を指すポインタであり
、QNPは登録した一連のコマンド・キューの次の空き
エントリを示すポインタである。
、QNPは登録した一連のコマンド・キューの次の空き
エントリを示すポインタである。
第1図に示すコマンド領域19は、ラップアラウンドで
使用されるようになっている。
使用されるようになっている。
第2図に示す制御メモリ14の3000番地から3 F
FF番地までの領域は、各サブチャネル用に割り当てら
れており、第4図に示すような構造になっている。
FF番地までの領域は、各サブチャネル用に割り当てら
れており、第4図に示すような構造になっている。
このサブチャネル領域には、サブチャネルステータスと
、デバイスビジーを示すDVBSYビットと、CCWや
CCWA等の格納領域が設けられている。
、デバイスビジーを示すDVBSYビットと、CCWや
CCWA等の格納領域が設けられている。
コミュニケーションメモリ17は1本実施例では32K
Bの大きさを持ち、第5図に示すようなマツプ構成にな
っている。
Bの大きさを持ち、第5図に示すようなマツプ構成にな
っている。
その内部構造は、第6図に示す(イ)〜(チ)とおりで
ある。
ある。
第6図(イ)に示すCHRAは、第1図に示すチャネル
・リクエスト頭載18に相当し、コマンドの処理要求を
示すチャネル・リクエストのCHREQビットと、制御
メモリ14におけるコマンド・ポインタ16に対応する
CHQSP、CHQNPのポインタ領域とを有する。
・リクエスト頭載18に相当し、コマンドの処理要求を
示すチャネル・リクエストのCHREQビットと、制御
メモリ14におけるコマンド・ポインタ16に対応する
CHQSP、CHQNPのポインタ領域とを有する。
第6図(ロ)〜(ニ)は、第1図に示すコマンド頭載1
9に相当するCHCAを示し、これにはの3つのタイプ
がある。図中のtJAは入出力装置の機番である。
9に相当するCHCAを示し、これにはの3つのタイプ
がある。図中のtJAは入出力装置の機番である。
第1のタイプは、第6図(ロ)に示すセレクションのタ
イプであり、5LCTピントが1である。
イプであり、5LCTピントが1である。
このとき、コマンドCMDが通知される。第2のタイプ
は、第6図(ハ)に示すステータス転送の通知を示すタ
イプである。ACKSピントが1である。第3のタイプ
は5データ転送の通知を示すタイプである。このとき、
残りのバイトカウントBCが通知される。
は、第6図(ハ)に示すステータス転送の通知を示すタ
イプである。ACKSピントが1である。第3のタイプ
は5データ転送の通知を示すタイプである。このとき、
残りのバイトカウントBCが通知される。
第5図に示すDVRAには、第6図(ホ)に示すように
、コントローラ20側からの要求を示すデバイスリクエ
ストのDVREQビットがある。
、コントローラ20側からの要求を示すデバイスリクエ
ストのDVREQビットがある。
DVCAは、第6図(へ)〜(チ)に示すように、3つ
のタイプで用いられる。
のタイプで用いられる。
第1のタイプは、第6図(へ)に示すステータス転送要
求のタイプで、SRQビットが1である。
求のタイプで、SRQビットが1である。
このとき装置のステータスが[)VSTSで通知される
。第2のタイプは、第6図(ト)に示すデータ転送要求
のタイプで、DRQビットが1である。
。第2のタイプは、第6図(ト)に示すデータ転送要求
のタイプで、DRQビットが1である。
バイトカウントBCやデータのアドレスDBAが通知さ
れる。第3のタイプは、第6図(チ)に示すコマンド完
了を示すタイプで、DVCMPビ。
れる。第3のタイプは、第6図(チ)に示すコマンド完
了を示すタイプで、DVCMPビ。
トが1である。
第7図は、第1図に示すチャふル13のマイクロプログ
ラムによる処理フローを示している。
ラムによる処理フローを示している。
[A]fa) チャネル13に対する要求がないとき
。
。
すなわち入出力命令も、デバイスからの要求DVREQ
もないとき、IDLE LOOPで要求を待つ、CP
Ul0から入出力(510)命令が出されたならば[C
]に示す処理へ移る(ステップ71)。
もないとき、IDLE LOOPで要求を待つ、CP
Ul0から入出力(510)命令が出されたならば[C
]に示す処理へ移る(ステップ71)。
デバイス(コントローラ20側)からの要求があれば1
次の処理へ移る(ステップ72)。
次の処理へ移る(ステップ72)。
[有])デバイスからの要求がある場合、コマンドの完
了DVCMPかどうかを調べる。DVCMPビットが1
のとき、処理(e)へ移る(ステップ73)。
了DVCMPかどうかを調べる。DVCMPビットが1
のとき、処理(e)へ移る(ステップ73)。
DVCMPビットが0のとき、DRQビットのオン/オ
フにより、ステータス処理が必要かデータ転送処理が必
要かを判定する(ステップ74)。
フにより、ステータス処理が必要かデータ転送処理が必
要かを判定する(ステップ74)。
(C) ステータス処理が必要なとき、その処理を行
う(ステップ75)。ステータスにデバイスエンドDY
Eが表示されていれば(ステップ76)、そのサブチャ
ネルのDVBSYをリセットする(ステップ77)。
う(ステップ75)。ステータスにデバイスエンドDY
Eが表示されていれば(ステップ76)、そのサブチャ
ネルのDVBSYをリセットする(ステップ77)。
DVREQをリセットする(ステップ78)。
第6図(ハ)に示すタイプ2のコマンドを。
CHCAにおけるQNPのポイントする位置にキューイ
ングする(ステップ79)、そして2QNPをインクリ
メントしくステップ701)。
ングする(ステップ79)、そして2QNPをインクリ
メントしくステップ701)。
チャネルコモンにあるCMDQビットをセットする(ス
テップ702)。その後、[B]へ移る。
テップ702)。その後、[B]へ移る。
(6)DRQが1ならば(ステップ74)、データ転送
処理を行う(ステップ703)、DVREQビットをリ
セットしくステップ704)、第6図(ニ)に示すタイ
プ3のコマンドを、CHCAにおけるQNPのポイント
する位置にキューイングする(ステップ705)、そし
て、QNPをインクリメントしくステップ706)。
処理を行う(ステップ703)、DVREQビットをリ
セットしくステップ704)、第6図(ニ)に示すタイ
プ3のコマンドを、CHCAにおけるQNPのポイント
する位置にキューイングする(ステップ705)、そし
て、QNPをインクリメントしくステップ706)。
チャネルコモンにあるCMDQビットをセントする(ス
テップ707)、その後、[B]へ移る。
テップ707)、その後、[B]へ移る。
(e) コマンド完了の場合には、CHRQMビット
をリセットする(ステップ708)。またDVREQビ
ットもリセットする(ステップ709)、次に、CMD
Qビットを調べ、0であれば、 [A]のIDLE
LOOPへ移り、1であれば、[B]の処理へ移る(ス
テップ710)。
をリセットする(ステップ708)。またDVREQビ
ットもリセットする(ステップ709)、次に、CMD
Qビットを調べ、0であれば、 [A]のIDLE
LOOPへ移り、1であれば、[B]の処理へ移る(ス
テップ710)。
[B](f) CHCAにキューイングしたコマンド
をコントローラに送出しfig−どうかをCHRQMビ
ットによって調べる。CHRQMビットが1であれば、
[A]のIDLE LOOPへ移る(ステップ711
)、0であれば1次の処理を行う。
をコントローラに送出しfig−どうかをCHRQMビ
ットによって調べる。CHRQMビットが1であれば、
[A]のIDLE LOOPへ移る(ステップ711
)、0であれば1次の処理を行う。
チャネルリクエストCHREQをセットし。
QSP、QNPをそれぞれCHQSP、CHQNPにコ
ピーする(ステップ712)。次にQNPをQSPにセ
ットしくステップ713)CMDQビットをリセットす
る(ステップ714)、その後、CHRQMビットをセ
ントしくステップ715)、[A]のIDLE LO
OPへ戻る。
ピーする(ステップ712)。次にQNPをQSPにセ
ットしくステップ713)CMDQビットをリセットす
る(ステップ714)、その後、CHRQMビットをセ
ントしくステップ715)、[A]のIDLE LO
OPへ戻る。
[C][g) 命令をデコードし、入出力(S I
O)命令であれば、以下の処理を行う(ステップ720
)。
O)命令であれば、以下の処理を行う(ステップ720
)。
入出力機番UAを調べ(ステップ721)。
実装されていなければ、コンデイション・コード(CC
)−3をCPUI Oに返却しくステップ729)、[
A]のIDLE LOOPへ戻る。
)−3をCPUI Oに返却しくステップ729)、[
A]のIDLE LOOPへ戻る。
実装されていれば、サブチャネルが使用可能(Avai
lable)かどうかを調べる(ステップ722 )
、 Availableでなければ、CC=2をCPU
10に返却し、[A]のIDLE LOOPへ戻る(
ステップ730)。
lable)かどうかを調べる(ステップ722 )
、 Availableでなければ、CC=2をCPU
10に返却し、[A]のIDLE LOOPへ戻る(
ステップ730)。
次にDVBSYビットを調べ、デバイスがビジー状態か
どうかをチエツクする(ステップ723)。ビジーであ
れば、CC=lをCPUl0に返却し、FA]のIDL
E LOOPへ戻る(ステップ731)。
どうかをチエツクする(ステップ723)。ビジーであ
れば、CC=lをCPUl0に返却し、FA]のIDL
E LOOPへ戻る(ステップ731)。
それ以外であれば、第6図(ロ)に示すタイプ1のコマ
ンドを、CHCAにおけるQNPのポイントする位置に
キューイングする(ステップ724)、そして、QNP
をインクリメントしくステップ725)、チャネルコモ
ンにあるCMDQビットをセットする(ステップ726
)。
ンドを、CHCAにおけるQNPのポイントする位置に
キューイングする(ステップ724)、そして、QNP
をインクリメントしくステップ725)、チャネルコモ
ンにあるCMDQビットをセットする(ステップ726
)。
そして、DVBSYビットをセットしくステップ727
) 、デバイスステータスDSB=00゜CC=Oと
して、CPUl0に通知する(ステップ728)。その
後、[B]へ移る。
) 、デバイスステータスDSB=00゜CC=Oと
して、CPUl0に通知する(ステップ728)。その
後、[B]へ移る。
コントローラ20では3以上の処理によってコミュニケ
ーションメモリ17のコマンド領域19にキューイング
されたコマンドを、チャネル・リフニスBiJ[域18
の情報に基づいて読み出し、処理する。
ーションメモリ17のコマンド領域19にキューイング
されたコマンドを、チャネル・リフニスBiJ[域18
の情報に基づいて読み出し、処理する。
第8図は、そのコントローラ20の処理フローを示して
いる。
いる。
[A](萄 IDLE LOOPでは、チャネル・リ
フニス)CHREQかI10処理要求を待つ(ステ、プ
801.802)。チャネル・リフニス)CHREQが
1であれば(ステップ801)、[B]へ移る。I10
処理要求であれば(ステップ802)、以下の処理を行
う。
フニス)CHREQかI10処理要求を待つ(ステ、プ
801.802)。チャネル・リフニス)CHREQが
1であれば(ステップ801)、[B]へ移る。I10
処理要求であれば(ステップ802)、以下の処理を行
う。
(blI/O処理要求がWrite系のとき(ステップ
803)、残りバイトカウントを受は取り(ステップ8
04)、第6図(ト)に示すタイプ2のDVCAに対す
る設定を行う(ステップ805)、その後、デバイスリ
クエストDVREQをセットしくステップ806)、[
A]のIDLE LOOPへ戻る。
803)、残りバイトカウントを受は取り(ステップ8
04)、第6図(ト)に示すタイプ2のDVCAに対す
る設定を行う(ステップ805)、その後、デバイスリ
クエストDVREQをセットしくステップ806)、[
A]のIDLE LOOPへ戻る。
(C) I10処理要求がRead系のとき(ステッ
プ807)、残りバイトカウントを受は取り(ステップ
808)、受信したデータをデータバッファDBに設定
する(ステップ809)。
プ807)、残りバイトカウントを受は取り(ステップ
808)、受信したデータをデータバッファDBに設定
する(ステップ809)。
そして、第6図(ト)に示すタイプ2のDVCAに対す
る設定を行う(ステップ81O)。その後、デバイスリ
クエストDVREQをセットしくステップ811)、[
A]のIDLE LooPへ戻る。
る設定を行う(ステップ81O)。その後、デバイスリ
クエストDVREQをセットしくステップ811)、[
A]のIDLE LooPへ戻る。
(d)I10処理要求が5tatus要求のとき(ステ
ップ812) 、ステータス情報を受は取り(ステップ
813)、第6図(へ)に示すタイプlのDVCAに対
する設定を行う(ステップ814)、その後9デバイス
リクエストDVREQをセットしくステップ815)、
[A]のIDLE LOOPへ戻る。
ップ812) 、ステータス情報を受は取り(ステップ
813)、第6図(へ)に示すタイプlのDVCAに対
する設定を行う(ステップ814)、その後9デバイス
リクエストDVREQをセットしくステップ815)、
[A]のIDLE LOOPへ戻る。
[B ] (e) チャネル・リクエストCHREQ
があれば、コミユニケージタンメモリ17からCHRA
、CHCAを読む(ステップ820)。そして、CHQ
SPをインクリメントする(ステップ821)。CHQ
SPとCHQNPが等しければ(ステップ822)、C
HREQをリセットしくステップ823)、第6図(チ
)に示すタイプ3(コマンド完了)のDVCAに対する
設定を行う(ステップ824)。それから、デバイスリ
クエストDVREQをセットする(ステップ825)。
があれば、コミユニケージタンメモリ17からCHRA
、CHCAを読む(ステップ820)。そして、CHQ
SPをインクリメントする(ステップ821)。CHQ
SPとCHQNPが等しければ(ステップ822)、C
HREQをリセットしくステップ823)、第6図(チ
)に示すタイプ3(コマンド完了)のDVCAに対する
設定を行う(ステップ824)。それから、デバイスリ
クエストDVREQをセットする(ステップ825)。
(f) 次に5LCTビツトを参照しく826)、
このビットが1であれば、入出力装置21へのコマンド
の転送を行う、すなわち、Writeコマンド(ステッ
プ840)、Controlrマント(ステップ843
)に対しては、入出力装置21にWrite系のコマン
ドを送る(ステップ846)。Readコマンド(ステ
ップ841)、Read BWコマンド(ステップ゛
842)、5enceコマンド(ステップ844)、5
enca I10コマンド(ステップ845)に対し
ては、入出力装置21にRead系のコマンドを送る(
ステップ847)やその後、 [A]のIDLE L
OOPに戻る。
このビットが1であれば、入出力装置21へのコマンド
の転送を行う、すなわち、Writeコマンド(ステッ
プ840)、Controlrマント(ステップ843
)に対しては、入出力装置21にWrite系のコマン
ドを送る(ステップ846)。Readコマンド(ステ
ップ841)、Read BWコマンド(ステップ゛
842)、5enceコマンド(ステップ844)、5
enca I10コマンド(ステップ845)に対し
ては、入出力装置21にRead系のコマンドを送る(
ステップ847)やその後、 [A]のIDLE L
OOPに戻る。
(8) 5LCTピントがOのとき、ACKDピントが
1であれば(ステップ827)、Write系であるか
どうかにより(ステップ829)。
1であれば(ステップ827)、Write系であるか
どうかにより(ステップ829)。
データを入出力装置21に転送しくステップ830)、
転送終了であれば(ステップ831)。
転送終了であれば(ステップ831)。
その旨を入出力装置21に通知する(ステップ832)
、その後、[A]のIDLE LOOPに戻る。
、その後、[A]のIDLE LOOPに戻る。
以上のように、コントローラ20は、チャネル・リクエ
スト領域18のCHREQビットが1であれば、CHQ
SPからCHQNPの前までのコマンド領域19に格納
されたコマンドを、逐次取り出して処理し、その処理結
果を、第5図に示すDVRA、DVCAでチャネル13
へ通知する。
スト領域18のCHREQビットが1であれば、CHQ
SPからCHQNPの前までのコマンド領域19に格納
されたコマンドを、逐次取り出して処理し、その処理結
果を、第5図に示すDVRA、DVCAでチャネル13
へ通知する。
以上説明したように1本発明によれば、チャネルがI1
0ステータスの管理を行い、コマンドをコミュニケーシ
ョンメモリ上にキューイングすることにより、チャネル
はセレクション・シーケンスを行わずに、処理を進める
ことができるようになる。したがって、コントローラが
処理中でも影響されることなく、短時間でCPUを入出
力命令から解放できるようになる。また、コントローラ
ではチャネルからのコマンド処理要求の割込み回数が減
るので、コントローラの処理効率が向上することになり
、システムの性能が向上する。
0ステータスの管理を行い、コマンドをコミュニケーシ
ョンメモリ上にキューイングすることにより、チャネル
はセレクション・シーケンスを行わずに、処理を進める
ことができるようになる。したがって、コントローラが
処理中でも影響されることなく、短時間でCPUを入出
力命令から解放できるようになる。また、コントローラ
ではチャネルからのコマンド処理要求の割込み回数が減
るので、コントローラの処理効率が向上することになり
、システムの性能が向上する。
第1図は本発明の構成例。
第2図は本発明の一実施例に係る制御メモリのマツプ。
第3図は第2図に示すチャネルコモンの構造。
第4図は第2図に示す制御メモリにおけるサブチャネル
領域の構造。 第5図は本発明の一実施例に係るコミュニケーションメ
モリのマツプ。 第6図は第5図に示すコミユニケージぢンメモリの内部
構造。 第7図は本発明の一実施例によるチャネル処理フロー 第8図は本発明の一実施例によるコントローラ処理フロ
ー 第9図は従来技術の例を示す。 図中、10はCPU、11は主記憶装置、12はシステ
ムバス、13はチャネル、14は制御メモリ、15はI
10ステータス領域、16はコマンド・ポインタ、17
はコミュニケーションメモリ、18はチャネル・リクエ
スト領域、19はコマンド領域、20はコントローラ、
21は入出力装置を表す。
領域の構造。 第5図は本発明の一実施例に係るコミュニケーションメ
モリのマツプ。 第6図は第5図に示すコミユニケージぢンメモリの内部
構造。 第7図は本発明の一実施例によるチャネル処理フロー 第8図は本発明の一実施例によるコントローラ処理フロ
ー 第9図は従来技術の例を示す。 図中、10はCPU、11は主記憶装置、12はシステ
ムバス、13はチャネル、14は制御メモリ、15はI
10ステータス領域、16はコマンド・ポインタ、17
はコミュニケーションメモリ、18はチャネル・リクエ
スト領域、19はコマンド領域、20はコントローラ、
21は入出力装置を表す。
Claims (1)
- 【特許請求の範囲】 CPU(10)と、主記憶装置(11)と、チャネル(
13)と、コントローラ(20)と、入出力装置(21
)とを有する計算機システムにおいて、 前記チャネル(13)と前記コントローラ(20)とが
アクセスできる記憶装置(17)を備え、 チャネル(13)は、I/Oステータスの管理と参照と
を行い、前記記憶装置(17)上にコマンドをキューイ
ングし、コントローラ(20)がコマンドを受信可能な
とき、キューイングしたコマンドの処理をコントローラ
(20)に要求して、入出力命令を実行するようにした
ことを特徴とするI/Oインタフェース制御方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP767690A JP2823624B2 (ja) | 1990-01-17 | 1990-01-17 | I/oインタフェース制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP767690A JP2823624B2 (ja) | 1990-01-17 | 1990-01-17 | I/oインタフェース制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH03211650A true JPH03211650A (ja) | 1991-09-17 |
JP2823624B2 JP2823624B2 (ja) | 1998-11-11 |
Family
ID=11672398
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP767690A Expired - Fee Related JP2823624B2 (ja) | 1990-01-17 | 1990-01-17 | I/oインタフェース制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2823624B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019088428A1 (ko) * | 2017-11-01 | 2019-05-09 | 주식회사 휴먼웰니스 | 인조모발 및 이의 제조방법 |
-
1990
- 1990-01-17 JP JP767690A patent/JP2823624B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019088428A1 (ko) * | 2017-11-01 | 2019-05-09 | 주식회사 휴먼웰니스 | 인조모발 및 이의 제조방법 |
Also Published As
Publication number | Publication date |
---|---|
JP2823624B2 (ja) | 1998-11-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6317799B1 (en) | Destination controlled remote DMA engine | |
US8683126B2 (en) | Optimal use of buffer space by a storage controller which writes retrieved data directly to a memory | |
US8108571B1 (en) | Multithreaded DMA controller | |
US5940866A (en) | Information handling system having a local address queue for local storage of command blocks transferred from a host processing side | |
JPH09160861A (ja) | ローカル・プロセッサの介入なしにコマンド・ブロックをローカル処理サイドに転送するための情報処理システム | |
US5905911A (en) | Data transfer system which determines a size of data being transferred between a memory and an input/output device | |
US20040186931A1 (en) | Transferring data using direct memory access | |
US7130932B1 (en) | Method and apparatus for increasing the performance of communications between a host processor and a SATA or ATA device | |
CN115033188B (zh) | 一种基于zns固态硬盘的存储硬件加速模块系统 | |
US7844752B2 (en) | Method, apparatus and program storage device for enabling multiple asynchronous direct memory access task executions | |
JP2007079789A (ja) | 計算機システム及びイベント処理方法 | |
CN111290983A (zh) | Usb传输设备及传输方法 | |
US20060242258A1 (en) | File sharing system, file sharing program, management server and client terminal | |
US6640274B1 (en) | Method and apparatus for reducing the disk drive data transfer interrupt service latency penalty | |
US7376762B2 (en) | Systems and methods for direct memory access | |
JPH03211650A (ja) | I/oインタフェース制御方法 | |
US7689991B2 (en) | Bus management techniques | |
US6145043A (en) | Boolean and movement accelerator | |
JP2901882B2 (ja) | 計算機システムおよび入出力命令の発行方法 | |
KR102000721B1 (ko) | 컴퓨팅 디바이스, 코프로세서와 비휘발성 메모리 사이의 데이터 이동 방법 및 이를 포함하는 프로그램 | |
CN116601616A (zh) | 一种数据处理装置、方法及相关设备 | |
JP2002123420A (ja) | メモリアクセス装置 | |
WO2022224409A1 (ja) | アクセラレータ制御システム、アクセラレータ制御方法およびアクセラレータ制御プログラム | |
JPS6223904B2 (ja) | ||
JPH09218859A (ja) | マルチプロセッサ制御システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |