JP2924232B2 - コマンドチェック装置 - Google Patents
コマンドチェック装置Info
- Publication number
- JP2924232B2 JP2924232B2 JP3051026A JP5102691A JP2924232B2 JP 2924232 B2 JP2924232 B2 JP 2924232B2 JP 3051026 A JP3051026 A JP 3051026A JP 5102691 A JP5102691 A JP 5102691A JP 2924232 B2 JP2924232 B2 JP 2924232B2
- Authority
- JP
- Japan
- Prior art keywords
- command
- byte
- address
- cpu
- buffer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Debugging And Monitoring (AREA)
Description
【0001】
【産業上の利用分野】本発明は、コンピュータの周辺機
器を接続するときに使用されるプロトコルコントローラ
におけるコマンドチェック装置に関する。
器を接続するときに使用されるプロトコルコントローラ
におけるコマンドチェック装置に関する。
【0002】
【従来の技術】プロトコルコントローラは、コンピュー
タの周辺機器を接続するときに使用されている。このよ
うに周辺機器を接続した場合、機器の間で命令(コマン
ド)の伝送が行われている。このようにコマンドの伝送
を行う場合、コマンドのチェックが必要である。
タの周辺機器を接続するときに使用されている。このよ
うに周辺機器を接続した場合、機器の間で命令(コマン
ド)の伝送が行われている。このようにコマンドの伝送
を行う場合、コマンドのチェックが必要である。
【0003】従来のコマンドチェックは、SCSI(Sma
ll Computer System Interface)プロトコルコントロー
ラが、この機能を備えていなかったので、CPUのプロ
グラムで行っていた。SCSIコマンドのビットパター
ンには、将来の機能拡張時に使用するために予約してお
く領域があり、この領域の各ビットはプロトコルの規定
上すべて“0”でなければならない。予約領域のいずれ
かのビットに“1”があれば、プロトコルを違反したこ
とになり、ターゲットは、エラーを示すステータスを返
す。
ll Computer System Interface)プロトコルコントロー
ラが、この機能を備えていなかったので、CPUのプロ
グラムで行っていた。SCSIコマンドのビットパター
ンには、将来の機能拡張時に使用するために予約してお
く領域があり、この領域の各ビットはプロトコルの規定
上すべて“0”でなければならない。予約領域のいずれ
かのビットに“1”があれば、プロトコルを違反したこ
とになり、ターゲットは、エラーを示すステータスを返
す。
【0004】図2は、従来のコマンドチェックの方法を
実現するためのシステムを示すブロック図である。図2
において、ターゲットTには中央演算処理装置(CP
U)1及びSCSIプロトコルコントローラ2を備えて
いる。CPU1は、プログラムを内蔵しており、このプ
ログラムを実行する。このCPU1は、SCSIプロト
コルコントローラ2に接続されている。SCSIプロト
コルコントローラ2にはバッファ3が設けられている。
また、SCSIプロトコルコントローラ2は、SCSI
4を介してイニイエータ5につながっている。
実現するためのシステムを示すブロック図である。図2
において、ターゲットTには中央演算処理装置(CP
U)1及びSCSIプロトコルコントローラ2を備えて
いる。CPU1は、プログラムを内蔵しており、このプ
ログラムを実行する。このCPU1は、SCSIプロト
コルコントローラ2に接続されている。SCSIプロト
コルコントローラ2にはバッファ3が設けられている。
また、SCSIプロトコルコントローラ2は、SCSI
4を介してイニイエータ5につながっている。
【0005】このように構成されたシステムでは、SC
SIプロトコルコントローラ2がイニシエータ5からコ
マンドを受け取ってバッファ3に格納したとき、CPU
1のプログラムが当該コマンドの予約領域のビットをチ
ェックし、前記ビットに“1”があれば転送フェーズを
ステータスフェーズに切り換え、エラーを示すステータ
スを転送し、かつコマンド終了を示すメッセージを転送
していた。
SIプロトコルコントローラ2がイニシエータ5からコ
マンドを受け取ってバッファ3に格納したとき、CPU
1のプログラムが当該コマンドの予約領域のビットをチ
ェックし、前記ビットに“1”があれば転送フェーズを
ステータスフェーズに切り換え、エラーを示すステータ
スを転送し、かつコマンド終了を示すメッセージを転送
していた。
【0006】
【発明が解決しようとする課題】しかしながら、上記従
来のコマンドチェック方法では、CPUのプログラムで
チェックを行っているので、処理時間が長くなるという
欠点があり、かつプログラムにコマンドチェックルーチ
ンを組み込まなければならず開発期間が長くなり、プロ
グラム容量が増えるという欠点もあった。
来のコマンドチェック方法では、CPUのプログラムで
チェックを行っているので、処理時間が長くなるという
欠点があり、かつプログラムにコマンドチェックルーチ
ンを組み込まなければならず開発期間が長くなり、プロ
グラム容量が増えるという欠点もあった。
【0007】そこで、本発明の目的は、コマンドチェッ
クの処理時間を短縮化できるコマンドチェック装置を提
供することにある。
クの処理時間を短縮化できるコマンドチェック装置を提
供することにある。
【0008】
【課題を解決するための手段】本発明は、プロトコル制
御を行うプロトコルコントローラ、及び所定の処理を行
う中央処理装置を含むターゲットと、このターゲットに
インターフェースを介して接続されたイニシエータから
なる装置において、上記中央処理装置からの指令により
あらかじめ各コマンドの予約領域のビットパターンを書
き込めるメモリと、上記イニシエータから発行されたコ
マンドを格納するバッファと、コマンドの1バイト目の
値から上記メモリ上のアドレスを算出する手段と、バッ
ファの内容と上記メモリ上のアドレスで示された内容を
1バイトずつ比較する比較手段とを備え、この比較手段
は受け取ったコマンドの予約領域のいずれかのビットに
所定論理値があるときに、エラーを示すステータスを出
力するものである。
御を行うプロトコルコントローラ、及び所定の処理を行
う中央処理装置を含むターゲットと、このターゲットに
インターフェースを介して接続されたイニシエータから
なる装置において、上記中央処理装置からの指令により
あらかじめ各コマンドの予約領域のビットパターンを書
き込めるメモリと、上記イニシエータから発行されたコ
マンドを格納するバッファと、コマンドの1バイト目の
値から上記メモリ上のアドレスを算出する手段と、バッ
ファの内容と上記メモリ上のアドレスで示された内容を
1バイトずつ比較する比較手段とを備え、この比較手段
は受け取ったコマンドの予約領域のいずれかのビットに
所定論理値があるときに、エラーを示すステータスを出
力するものである。
【0009】
【作用】中央処理装置は、プログラムによりターゲット
のメモリに、あらかじめコマンドごとの予約領域のビッ
トパターンを書き込んでおくか、あるいはメモリをリー
ドオンリメモリで構成し、製造時にコマンドごとの予約
領域のビットパターンを書き込んでおく。ついで、ター
ゲットがイニシエータからコマンドを受け取り、バッフ
ァに当該コマンドを格納する。ついで、このコマンドの
1バイト目の値から最初アドレスを算出して、このバッ
ファの最初アドレスの内容を読み出し、また内蔵メモリ
の内容を先頭バイトからデータを読み出して、それぞれ
1バイトずつ、クロック回路に同期して、それらのデー
タを比較手段に入力する。比較手段は、上記各データ内
に所定の論理値があったときに、エラー信号を出力す
る。
のメモリに、あらかじめコマンドごとの予約領域のビッ
トパターンを書き込んでおくか、あるいはメモリをリー
ドオンリメモリで構成し、製造時にコマンドごとの予約
領域のビットパターンを書き込んでおく。ついで、ター
ゲットがイニシエータからコマンドを受け取り、バッフ
ァに当該コマンドを格納する。ついで、このコマンドの
1バイト目の値から最初アドレスを算出して、このバッ
ファの最初アドレスの内容を読み出し、また内蔵メモリ
の内容を先頭バイトからデータを読み出して、それぞれ
1バイトずつ、クロック回路に同期して、それらのデー
タを比較手段に入力する。比較手段は、上記各データ内
に所定の論理値があったときに、エラー信号を出力す
る。
【0010】ここで、エラー信号が出力されたときは、
転送フェーズをステータスフェーズに切り換え、エラー
を示すステータスをイニシエータに転送し、その後転送
フェーズをメッセージフェーズに切り換え、メッセージ
を転送する。かつ、エラー信号が発生したことを、中央
処理装置に報告する。
転送フェーズをステータスフェーズに切り換え、エラー
を示すステータスをイニシエータに転送し、その後転送
フェーズをメッセージフェーズに切り換え、メッセージ
を転送する。かつ、エラー信号が発生したことを、中央
処理装置に報告する。
【0011】
【実施例】以下、本発明を図示の実施例に基づいて説明
する。
する。
【0012】図1は、本発明のコマンドチェック装置の
実施例を含むシステムのブロック図である。 図1にお
いて、ターゲット10は、SCSI20を介してイニシ
エータ30に接続されている。ターゲット10は、プロ
グラム内蔵のCPU11と、SCSIプロトコルコント
ローラ12とから構成されている。CPU11には、S
CSIプロトコルコントローラ12が接続されている。
このSCSIプロトコルコントローラ12には、SCS
I20が接続されている。SCSIプロトコルコントロ
ーラ12は、バッファ13と、ステータス/メッセージ
転送回路14と、メモリ15と、アドレス切換え回路1
6と、アドレス発生回路17と、クロック発生回路18
と、1バイト分(8個)のアンド回路19とを備えてい
る。
実施例を含むシステムのブロック図である。 図1にお
いて、ターゲット10は、SCSI20を介してイニシ
エータ30に接続されている。ターゲット10は、プロ
グラム内蔵のCPU11と、SCSIプロトコルコント
ローラ12とから構成されている。CPU11には、S
CSIプロトコルコントローラ12が接続されている。
このSCSIプロトコルコントローラ12には、SCS
I20が接続されている。SCSIプロトコルコントロ
ーラ12は、バッファ13と、ステータス/メッセージ
転送回路14と、メモリ15と、アドレス切換え回路1
6と、アドレス発生回路17と、クロック発生回路18
と、1バイト分(8個)のアンド回路19とを備えてい
る。
【0013】このように構成された実施例の動作を説明
する。SCSIコマンドは、最大256個(1バイト目
が0x00〜0xFF)であり、また長さは6バイト以
上である。コマンドの2バイト目〜6バイト目の予約領
域をチェックするため、CPU11は、コマンド0x0
0からコマンド0xFFの順に、0x00を設定した1
バイト目と、2バイト目〜6バイト目の予約領域のビッ
トパターン(合計256個×6バイト=1536バイ
ト)を用意しておく。CPU11は、プログラムに従っ
て動作し、アドレス切換え回路16をCPU11側に
し、かつCPU11からのアドレスに従って、メモリ1
5にあらかじめコマンドごとの予約領域のビットパター
ンを書き込んでおく。SCSIプロトコルコントローラ
12がイニシエータ30からコマンドを受け取ってバッ
ファ13に格納したとき、バッファ13に格納されたコ
マンドの1バイト目がアドレス発生回路17に供給され
る。アドレス発生回路17は、コマンド1バイト目の値
に6バイトを乗じた値を最初アドレスとして発生し出力
する。アドレス切換え回路16は、CPU11がメモリ
15に書き込んだ後、アドレス発生回路17側に切り換
わっており、アドレス発生回路17からのアドレスを出
力する。このとき、バッファ13とメモリ15とから、
それぞれ1バイト分のデータがアンド回路19に向けて
出力される。この2個のデータはアンド回路19におい
て論理積(アンド)がとられ、それらのデータの各ビッ
トのうち1個でも“1”があれば出力信号“1”が出力
れ、これがエラー信号としてCPU11及びステータス
/メッセージ転送回路14に出力される。なお、クロッ
ク発生回路18から出力されるクロックは、受け取った
コマンドの各バイトを、1バイト目から6バイト目まで
1バイトずつチェックするため、バッファ13とアドレ
ス発生回路17にアドレスインクリメントのためのタイ
ミングを供給する。例えばコマンド0x03で、2バイ
ト目の上位4ビットが予約領域の場合、メモリ上の(6
×3=)18バイト目から、 0x00、0xF0、0x00、0x00 の6バイトのデータをあらかじめ書き込んでおく。 バッ
ファにコマンド0x03を受け取りしだい、1バイト目
から6バイト目までを、1バイトずつチェックし、受け
取ったコマンドの2バイト目上位4バイトのいずれかに
“1”があれば、2バイト目のチェック時にアンド回路
が、エラーを示す“1”を出力することになる。
する。SCSIコマンドは、最大256個(1バイト目
が0x00〜0xFF)であり、また長さは6バイト以
上である。コマンドの2バイト目〜6バイト目の予約領
域をチェックするため、CPU11は、コマンド0x0
0からコマンド0xFFの順に、0x00を設定した1
バイト目と、2バイト目〜6バイト目の予約領域のビッ
トパターン(合計256個×6バイト=1536バイ
ト)を用意しておく。CPU11は、プログラムに従っ
て動作し、アドレス切換え回路16をCPU11側に
し、かつCPU11からのアドレスに従って、メモリ1
5にあらかじめコマンドごとの予約領域のビットパター
ンを書き込んでおく。SCSIプロトコルコントローラ
12がイニシエータ30からコマンドを受け取ってバッ
ファ13に格納したとき、バッファ13に格納されたコ
マンドの1バイト目がアドレス発生回路17に供給され
る。アドレス発生回路17は、コマンド1バイト目の値
に6バイトを乗じた値を最初アドレスとして発生し出力
する。アドレス切換え回路16は、CPU11がメモリ
15に書き込んだ後、アドレス発生回路17側に切り換
わっており、アドレス発生回路17からのアドレスを出
力する。このとき、バッファ13とメモリ15とから、
それぞれ1バイト分のデータがアンド回路19に向けて
出力される。この2個のデータはアンド回路19におい
て論理積(アンド)がとられ、それらのデータの各ビッ
トのうち1個でも“1”があれば出力信号“1”が出力
れ、これがエラー信号としてCPU11及びステータス
/メッセージ転送回路14に出力される。なお、クロッ
ク発生回路18から出力されるクロックは、受け取った
コマンドの各バイトを、1バイト目から6バイト目まで
1バイトずつチェックするため、バッファ13とアドレ
ス発生回路17にアドレスインクリメントのためのタイ
ミングを供給する。例えばコマンド0x03で、2バイ
ト目の上位4ビットが予約領域の場合、メモリ上の(6
×3=)18バイト目から、 0x00、0xF0、0x00、0x00 の6バイトのデータをあらかじめ書き込んでおく。 バッ
ファにコマンド0x03を受け取りしだい、1バイト目
から6バイト目までを、1バイトずつチェックし、受け
取ったコマンドの2バイト目上位4バイトのいずれかに
“1”があれば、2バイト目のチェック時にアンド回路
が、エラーを示す“1”を出力することになる。
【0014】そして、エラーの時は、ステータス/メッ
セージ転送回路14は、フェーズをステータスフェーズ
に切り換え、エラーを示すステータスをイニシエータ3
0に転送し、その後転送フェーズをメッセージフェーズ
に切り換え、メッセージを転送する。
セージ転送回路14は、フェーズをステータスフェーズ
に切り換え、エラーを示すステータスをイニシエータ3
0に転送し、その後転送フェーズをメッセージフェーズ
に切り換え、メッセージを転送する。
【0015】上記実施例によれば、バッファ13からの
データ及びメモリ15からのデータをアンド回路19で
アンドをとり、その内の一ビットでも“1”があればエ
ラーとするようにしてコマンドチェックを行うので、処
理時間が短くなってコマンドのスループットが上昇する
ことになる。また、CPU11に内蔵するプログラムに
コマンドチェックルーチンを組み込む必要がなくなるの
で、プログラムの開発期間を短縮でき、しかもプログラ
ム容量を減少させることができる。その結果、CPUの
負荷が軽くなるので、CPUを他の処理に割り当てるこ
とができる。
データ及びメモリ15からのデータをアンド回路19で
アンドをとり、その内の一ビットでも“1”があればエ
ラーとするようにしてコマンドチェックを行うので、処
理時間が短くなってコマンドのスループットが上昇する
ことになる。また、CPU11に内蔵するプログラムに
コマンドチェックルーチンを組み込む必要がなくなるの
で、プログラムの開発期間を短縮でき、しかもプログラ
ム容量を減少させることができる。その結果、CPUの
負荷が軽くなるので、CPUを他の処理に割り当てるこ
とができる。
【0016】
【発明の効果】上記実施例により明らかなように、本発
明によると、回路によりコマンドチェックを行うので、
処理時間が短くなり、かつコマンドのスループットが上
昇するという利点がある。
明によると、回路によりコマンドチェックを行うので、
処理時間が短くなり、かつコマンドのスループットが上
昇するという利点がある。
【0017】また、本発明によれば、プログラムにコマ
ンドチェックルーチンを組み込む必要がなくなるので、
開発期間を短縮でき、プログラム容量を減少できる。
ンドチェックルーチンを組み込む必要がなくなるので、
開発期間を短縮でき、プログラム容量を減少できる。
【0018】さらに、本発明によれば、結果的にCPU
の負荷が軽くなるので、CPUをその他の処理に割り当
てることができる。
の負荷が軽くなるので、CPUをその他の処理に割り当
てることができる。
【図1】図1は、本発明の一実施例におるコマンドチェ
ック装置を示すブロック図
ック装置を示すブロック図
【図2】図2は、従来装置を示すブロック図
10 ターゲット 11 CPU 12 SCSIプロトコルコントローラ 13 バッファ 14 ステータス/メッセージ転送回路 15 メモリ 16 アドレス切換え回路 17 アドレス発生回路 18 クロック発生回路 19 アンド回路 20 SCSI 30 イニシエータ
Claims (1)
- 【請求項1】 プロトコル制御を行うプロトコルコント
ローラ、及び所定の処理を行う中央処理装置を含むター
ゲットと、このターゲットにインターフェースを介して
接続されたイニシエータからなる装置において、上記中
央処理装置からの指令によりあらかじめ各コマンドの予
約領域のビットパターンを書き込めるメモリと、上記イ
ニシエータから発行されたコマンドを格納するバッファ
と、コマンドの1バイト目の値から上記メモリ上のアド
レスを算出する手段と、バッファの内容と上記メモリ上
のアドレスで示された内容を1バイトずつ比較する比較
手段とを備え、この比較手段は受け取ったコマンドの予
約領域のいずれかのビットに規定外の値があるときに、
エラーを示すステータスを出力するコマンドチェック装
置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3051026A JP2924232B2 (ja) | 1991-03-15 | 1991-03-15 | コマンドチェック装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3051026A JP2924232B2 (ja) | 1991-03-15 | 1991-03-15 | コマンドチェック装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH04286043A JPH04286043A (ja) | 1992-10-12 |
JP2924232B2 true JP2924232B2 (ja) | 1999-07-26 |
Family
ID=12875299
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP3051026A Expired - Fee Related JP2924232B2 (ja) | 1991-03-15 | 1991-03-15 | コマンドチェック装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2924232B2 (ja) |
-
1991
- 1991-03-15 JP JP3051026A patent/JP2924232B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH04286043A (ja) | 1992-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4144562A (en) | System and method for increasing microprocessor output data rate | |
CN112543925B (zh) | 用于使用专用低延迟链路的多个硬件加速器的统一地址空间 | |
EP0319185B1 (en) | Method and apparatus for checking a state machine | |
EP0427023B1 (en) | Data transmission control apparatus for parallel processing system | |
JP2924232B2 (ja) | コマンドチェック装置 | |
US5603057A (en) | System for initiating data transfer between input/output devices having separate address spaces in accordance with initializing information in two address packages | |
JP3261665B2 (ja) | データ転送方法及びデータ処理システム | |
JP3265026B2 (ja) | 入出力データ交換方式 | |
JPH02245959A (ja) | 入出力制御装置におけるデータ転送方式 | |
JP2743780B2 (ja) | 分散処理装置 | |
JPS6010379A (ja) | デ−タ処理システムのデ−タ転送方式 | |
JP3294305B2 (ja) | 遠隔監視制御システムのデータ処理方式 | |
JPH0282849A (ja) | 可変通信方式によるインターフェース | |
JPS63228855A (ja) | 通信制御装置 | |
JP3299147B2 (ja) | キャッシュ制御回路 | |
JP3102443B2 (ja) | データ入力装置 | |
JP2747154B2 (ja) | 入出力処理装置 | |
JPS6130300B2 (ja) | ||
JPS6243408Y2 (ja) | ||
JPS6378257A (ja) | 入出力制御装置 | |
JPH0315217B2 (ja) | ||
JPH0329021A (ja) | プリンタサーバ | |
JPH01123551A (ja) | 調歩データ受信方式 | |
JPH0642227B2 (ja) | デ−タ転送装置 | |
JPS61199104A (ja) | メモリ多重化型プログラマブルコントローラ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |