JP2507227B2 - デ―タ・フロ―・コントロ―ラ - Google Patents

デ―タ・フロ―・コントロ―ラ

Info

Publication number
JP2507227B2
JP2507227B2 JP5184939A JP18493993A JP2507227B2 JP 2507227 B2 JP2507227 B2 JP 2507227B2 JP 5184939 A JP5184939 A JP 5184939A JP 18493993 A JP18493993 A JP 18493993A JP 2507227 B2 JP2507227 B2 JP 2507227B2
Authority
JP
Japan
Prior art keywords
data
controller
interface circuit
peripheral
peripheral device
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 - Lifetime
Application number
JP5184939A
Other languages
English (en)
Other versions
JPH06187470A (ja
Inventor
ドン・スティーブン・キーナー
グレゴリィ・ジェイ・モーア
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH06187470A publication Critical patent/JPH06187470A/ja
Application granted granted Critical
Publication of JP2507227B2 publication Critical patent/JP2507227B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Bus Control (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はパーソナル・コンピュー
タ、詳細にいえば、固定または取外し可能媒体電磁記憶
装置などの記憶メモリ装置とのデータ転送を制御するた
めに小型コンピュータ・システム・インタフェース(S
CSI)コントローラを使用するパーソナル・コンピュ
ータに関する。
【0002】
【従来の技術】総括的にパーソナル・コンピュータ・シ
ステム、特にIBMパーソナル・コンピュータは今日の
社会の多くの分野でコンピュータの能力を提供するため
に広く使用されている。パーソナル・コンピュータは通
常、デスク・トップ・コンピュータ、床置きコンピュー
タ、あるいはポータブル・マイクロ・コンピュータと定
義され、単一のシステム・プロセッサならびに関連する
揮発性及び不揮発性メモリを有するシステム装置、表示
装置、キーボード、1台または複数台のディスケット駆
動機構、固定ディスク記憶装置、及びオプションのプリ
ンタからなっている。これらのシステムの傑出した特徴
の1つはこれらの構成要素を電気的に接続するためにマ
ザーボードないし母板を使用していることである。これ
らのシステムは主として独立したコンピューティング能
力を単一のユーザに与えるように設計されており、個人
または小企業が購入するために廉価な価格が付けられて
いる。このようなパーソナル・コンピュータ・システム
の例としては、IBMパーソナル・コンピュータATな
らびにIBMパーソナル・システム/2モデル25、3
0、L40SX、50、55、56、57、65、7
0、80、90及び95が挙げられる。
【0003】これらのシステムは2つの一般的なファミ
リーに分類される。第1のファミリーは通常ファミリー
Iモデルと呼ばれるもので、ATコンピュータ及びその
他の「IBMコンパチブル」マシーンによって具体化さ
れているバス・アーキテクチャを使用している。第2の
ファミリーはファミリーIIモデルと呼ばれるものであ
って、IBMパーソナル・システム/2モデル50ない
し95によって具体化されているIBMのマイクロチャ
ネル・バス・アーキテクチャを使用している。ファミリ
ーIモデルは通常、一般的なインテル8088または8
086マイクロプロセッサをシステム・プロセッサとし
て使用している。これらのプロセッサは1メガバイトの
メモリにアドレスする能力を有している。ファミリーI
Iモデルは通常、高速なインテル80286、8038
6及び80486マイクロプロセッサを使用しており、
これらのプロセッサは低速なインテル8086マイクロ
プロセッサをエミュレートするためのリアル・モード、
あるいはいくつかのモデルのためにアドレッシング範囲
を1メガバイトから4ギガバイトまで拡張するプロテク
ト・モードで作動することができる。要するに、802
86、80386及び80486プロセッサのリアル・
モード機能は、8086および8088マイクロプロセ
ッサに合わせて作成されたソフトウェアとのハードウェ
ア互換性を提供する。
【0004】パーソナル・コンピュータの開発が進歩す
るにしたがって、構成部品などの拡張性を高められるよ
うにする目的で、このような装置のメーカ及びユーザの
間にある種の標準を確立することが提案されている。あ
る程度広く受け入れられているこのような標準の1つ
に、記憶メモリ装置との間のデータ通信のための小型コ
ンピュータ・システム・インタフェース(SCSI)標
準がある。本明細書において、「記憶メモリ装置」と
は、固定または取外し可能媒体電磁記憶装置(ハード・
ディスク駆動機構またはフロッピィ・ディスク駆動機構
ともいわれる)、電子光記憶装置、磁気テープ記憶装
置、及びその他の記憶装置に重点をおいた、データをデ
ィジタル形式で格納することのできるすべての装置を含
むものと広く定義する。SCSIコントローラ(本明細
書においては、「データ・フロー・コントローラ」とも
呼ぶ)は本発明以前に周知であり、また使用されている
ものであって、当業者にはなじみのあるものであろう。
【0005】
【発明が解決しようとする課題】従来のパーソナル・コ
ンピュータ・システムにおいては、SCSIコントロー
ラは通常、アクセサリまたは入出力(I/O)バスを介
してシステムがアクセスするオプションまたはアクセサ
リ装置として構成されていた。最近では、SCSIコン
トローラを単一の超大規模集積回路(VLSI)デバイ
スとして、あるいは特定用途向け集積回路(ASIC)
チップとして提供したり、あるいはこのコントローラを
ローカル・プロセッサ・バスと直結することが考えられ
ている。このようなコントローラを設ける目的は、迅速
なデータ転送によってパフォーマンスを高めることであ
る。
【0006】記憶コントローラを有する従来のシステム
において、コントローラは通常、システム・マイクロプ
ロセッサによって制御される分離した状態機械のグルー
プからなっている。このようなシステムにおいて、SC
SI転送に関してシステムを稼動する「インテリジェン
ス」はシステム・マイクロプロセッサであって、SCS
Iコントローラ(あるいは、コントローラ・チップ・セ
ット)は処理待ちのコマンドについて関知していない
し、さらには発生するSCSI転送の次の段階について
さえ関知していない。システム・コントローラは転送の
制御に実際にたずさわるものであるが、他のシステム操
作にもきわめて頻繁にかかわり、ハードウェア論理回路
の速度に比較してきわめて低速である。これによって、
SCSIサブシステムのパフォーマンスが低下する。
【0007】
【課題を解決するための手段】上記の議論を念頭におい
て、本発明はシステム・プロセッサからの援助を必要と
せずに、「正規の」SCSIトランザクションを処理で
き、しかもシステム・プロセッサからの援助を必要とせ
ずに、複数のSCSIコマンド記述(本明細書において
は、「スレッド」と呼ぶ)を格納し、処理できるデータ
・フロー記憶コントローラを提供する。本発明のこれら
の特徴を実現するに当たり、SCSIコマンド情報を本
明細書でスレッドと呼ぶ要素に格納するが、これらのス
レッドはコントローラが希望するSCSI動作を達成す
るのに必要なすべての情報を含んでいる。コマンドを起
動するために、スレッドに必要な情報をロードし、スタ
ート・ビットをセットする。
【0008】本発明のその他の特徴は、複数のスレッド
をロードし、使用可能とすることができることである。
以下で説明する実施例において、好ましい数は8であっ
て、本明細書で説明するSCSIシステムがデータ転送
の処理を拡張する機能を説明する。
【0009】
【実施例】本発明の好ましい実施例を示す添付図面を参
照して、本発明を以下で詳細に説明するが、以下の説明
を始めるに当たり、当分野の技術者が本明細書で説明す
る発明を改変し、しかもなお本発明の好ましい結果を達
成できることを理解すべきである。したがって、以下の
説明を範囲が広く、当分野の技術者を対象とする開示を
教示するものであって、本発明を限定するものではない
ものと理解すべきである。
【0010】添付図面を詳細に参照すると、本発明を具
体化するマイクロコンピュータが総括的に10(図1)
で示されている。コンピュータ10は関連する表示装置
11、キーボード12及びプリンタまたはプロッタ14
を含んでいることができる。コンピュータ10は図2に
示すように、カバー15を有しており、これはシャーシ
19と協働して、ディジタル・データを処理し、格納す
るための電動データ処理及び格納構成部品を受け入れる
閉鎖され、シールドされた容積を画定する。これらの構
成要素のうち少なくともいくつかは多層母板ないしマザ
ーボード20に取り付けられ、母板はシャーシ19に取
り付けられ、上記の構成要素及びフロッピィ・ディスク
駆動機構、各種形態の直接アクセス記憶装置、アクセサ
リ・カードまたはボードなどのその他の関連する要素を
含むコンピュータ10の構成要素を電気的に相互接続す
るための手段をもたらす。
【0011】シャーシ19はベース・パネル及びリア・
パネル(図2)を有しており、磁気ディスクまたは光デ
ィスク用のディスク駆動機構、テープ・バックアップ駆
動機構などのデータ記憶装置を受け入れるための少なく
とも1つの未使用のベイを画定する。図示の形態におい
て、上部ベイ22は第1のサイズの周辺駆動機構(3.
5インチ駆動機構と呼ばれるものなど)を受け入れるよ
うになされている。フロッピィ・ディスク駆動機構、挿
入されたディスケットを受け入れ、ディスケットを使用
して、周知のように、データを受け取り、格納し、引き
渡すことのできる取外し可能媒体直接アクセス記憶装置
が、上部ベイ22に設けられる。
【0012】上記の構造を本発明に関連させる前に、パ
ーソナル・コンピュータ・システム10の一般的な作動
をまとめることが検討に値しよう。図3を参照すると、
母板20に取り付けられた構成要素ならびにパーソナル
・コンピュータ・システムのI/Oスロット及びその他
のハードウェアへの母板の接続を含む、本発明によるシ
ステム10などのコンピュータ・システムの各種の構成
要素を示すパーソナル・コンピュータ・システムのブロ
ック線図が示されている。母板には、システム・プロセ
ッサ32が接続されている。任意適当なマイクロプロセ
ッサをCPU32として使用することができるが、適切
なマイクロプロセッサの1つはIBMが製造している4
86SLCである。CPU32は高速なCPUローカル
・バス34によって、バス・インタフェース制御ユニッ
ト35、本図ではシングル・インライン・メモリ・モジ
ュール(SIMM)として示されている揮発性ランダム
・アクセス・メモリ(RAM)、ならびにCPU32に
対する基本入出力操作用の命令が格納されているBIO
S ROM38に接続されている。BIOS ROM3
8はI/O装置とマイクロプロセッサ32のオペレーテ
ィング・システムの間をインタフェースするために使用
されるBIOSを含んでいる。ROM38に格納されて
いる命令をRAM36にコピーし、BIOSの実行時間
を少なくすることができる。
【0013】本発明を以下において図3のシステム・ブ
ロック図を特に参照して説明するが、以下の説明を始め
るに当たり、本発明による装置及び方法を他のハードウ
ェア構成の母板とともに使用することも目的としている
ことを理解すべきである。たとえば、システム・プロセ
ッサはインテル80286または80386マイクロプ
ロセッサであってもよい。
【0014】図3を参照すると、CPUローカル・バス
34(データ、アドレス及び制御用の構成要素からな
る)は数値計算補助プロセッサ39及び以下で詳細に説
明する小型コンピュータ・システム・インタフェース
(SCSI)データ・フロー・コントローラ40とのマ
イクロプロセッサ32の接続も行う。SCSIコントロ
ーラ40は、コンピュータ設計及び操作の分野における
技術者に周知のように、SCSIバス41によって各種
の適切な外部装置と接続されている、あるいはこれと接
続可能である。SCSIコントローラ40は固定または
取外し可能媒体電磁記憶装置(ハード・ディスク駆動機
構及びフロッピィ・ディスク駆動機構とも呼ばれる)、
電子光記憶装置、磁気テープ記憶装置及びその他の記憶
装置などの記憶メモリ装置を制御する際の記憶コントロ
ーラとして機能する。このような装置の1つを図3の4
2に略示する。本図では、ローカル・プロセッサ・バス
34と直結された装置として示されているが、SCSI
コントローラ40を以下で説明するI/Oバス44を介
して接続されるオプション装置として設けることも、本
発明は意図している。関連している特定のシステム構成
によっては、I/Oバスによるこのような接続が本発明
の実施に好ましいものであったり、もしくはこれに利用
できる唯一の接続であったりする。
【0015】バス・インタフェース・コントローラ(B
IC)35はCPUのローカル・バス34をI/Oバス
44と結合している。バス44によって、BIC35
に、I/O装置やメモリ(図示せず)にさらに接続され
るマイクロ・チャネル・アダプタ・カード45を受け入
れるための複数のI/Oスロットを有するマイクロ・チ
ャネル・バスなどのオプション機構バスが結合されてい
る。I/Oバス44は、アドレス、データ、および制御
用の構成要素を含んでいる。
【0016】I/Oバス44に沿って、グラフィック情
報(48で示す)を格納し、また画像情報(49で示
す)を格納するためのビデオRAM(VRAM)と関連
付けられたビデオ信号プロセッサ46などの各種のI/
O構成要素が結合されている。プロセッサ46との間で
交換されるビデオ信号はディジタル・アナログ変換器
(DAC)50を介して、モニタまたはその他の表示装
置に渡される。また、VSP46を、ビデオ・レコーダ
/プレーヤ、カメラなどの形態を取る本明細書において
自然イメージ入出力と呼ぶものに直結するようになされ
ている。I/Oバス44にはディジタル信号プロセッサ
(DSP)51も結合されており、このDSP51はこ
れによる信号の処理のためにソフトウェア命令及びこの
ような処理に関与するデータを格納するために利用でき
る関連した命令RAM52及びデータRAM54を有し
ている。DSP51はオーディオ・コントローラ55を
設けることによってオーディオ入力及び出力を処理し、
またアナログ・インタフェース・コントローラ56を設
けることによってその他の信号の処理を行う。最後に、
入力及び出力をフロッピィ・ディスク駆動機構、プリン
タまたはプロッタ14、キーボード12、マウスすなわ
ちポインティング・デバイス(図示せず)を含む周知の
周辺装置と、シリアル・ポートによって交換する関連す
る電気的に消去可能なプログラマブル読取り専用メモリ
(EEPROM)を備えた入出力コントローラ58に、
I/Oバス44が結合されている。
【0017】図4を参照すると、データ・フロー・コン
トローラ40(ブロック線図で示されている)は、CP
U32及びRAM36と信号を交換するための第1イン
タフェース回路60、ならびにSCSI装置と信号を交
換するためのものであり、かつSCSI装置とRAM3
6の間でデータを受け渡すために第1インタフェース回
路60に作動上相互接続されている第2インタフェース
回路61を有している。第1インタフェース回路はシス
テム・インタフェースとも呼ばれ、I/Oバス44また
はローカル・プロセッサ・バス34のいずれかに接続さ
れいることが好ましい。第2インタフェース回路はコン
トローラ・コアとも呼ばれ、関連する記憶装置との間の
データ転送を行うSCSIバスに接続されていることが
好ましい。第2インタフェース回路61はSCSI装置
に対して出されたコマンドの複数のシーケンス(「スレ
ッド」)の内容及び状況を示すデータを格納するため
の、少なくとも1つのレジスタ62を有している。
【0018】データ・フロー・コントローラ40には第
1及び第2インタフェース回路60、61を通るデータ
及びSCSI装置とRAM36の間のデータの流れを制
御するためのコントローラ・プロセッサ64が設けられ
ている。コントローラ・プロセッサはシステムCPU3
2から出された命令を受け取るため第1インタフェース
回路60と作動的に接続され、SCSI装置とのデータ
の交換を指示するコマンドのシーケンスをSCSI装置
に対して出すため第2インタフェース回路61と作動的
に接続されている8032装置であることが好ましい。
第3インタフェース回路65には、第1インタフェース
回路60、第2インタフェース回路61、ならびにコン
トローラ・プロセッサ64が作動的に接続されており、
複数の命令のうち、レジスタ62に格納されている状況
表示データによって、実行すべきコマンドを制御する次
の命令であると示されている命令を、コントローラ・プ
ロセッサ64に渡す。
【0019】データ・フロー・コントローラ40はさら
に第1及び第2インタフェース回路60、61の間でデ
ータを渡すためにこれらの間に作動的に接続されたデー
タFIFOレジスタ66を有している。データ・フロー
・コントローラはCPU32から出された命令を第1及
び第3インタフェース回路60、65の間で渡すために
これらの間に作動的に接続され、かつ、コントローラ・
プロセッサ64による処理を目的とした命令FIFOレ
ジスタ68も有している。データ・フロー・コントロー
ラ40はさらに、CPU32から受け取った命令をコマ
ンドに復号し、SCSIバス41によって接続されたS
CSI装置によって実行するために、第2及び第3イン
タフェース回路61、65の間に作動的に接続された状
態復号機械69を有している。
【0020】コントローラ・プロセッサ64及び第1イ
ンタフェース回路60は協働して、SCSIバス41に
よって接続された対応する複数のSCSI装置によるコ
マンドの複数のシーケンスの並行実行を可能とする。
【0021】本発明の作動環境において、SCSIコン
トローラは第2及び第3インタフェース回路61、65
内の8つのレジスタを使用して、CPU32とコントロ
ーラ・プロセッサ64の間のインタフェースを制御す
る。8つのレジスタは4つのコマンド・インタフェース
・レジスタを含んでおり、これらのインタフェース・レ
ジスタを介して、32ビット即時コマンドないしサブシ
ステム制御ブロックに対するアドレスをコントローラ・
プロセッサ64に渡すことができる。これらの4つのレ
ジスタのうち3つは、CPU32に関しては読み書きレ
ジスタであり、コントローラ・プロセッサ64に関して
は読取り専用レジスタであり、後の1つは両プロセッサ
に関して読み書きレジスタである。他の4つのレジスタ
は割込み及び基本状況データを渡すために使用される。
これらのうち2つは一方のプロセッサに対しては読み書
きレジスタであり、他方のプロセッサに対しては読取り
専用レジスタであり、後の2つはこれとは逆の働きをす
る。アテンション・レジスタ及び基本制御レジスタはC
PU32に関して読み書きレジスタであり、割込み状況
レジスタ及び基本状況レジスタはコントローラ・プロセ
ッサ64に関して読み書きレジスタである。
【0022】作動環境は第3インタフェース回路65の
12のレジスタを使用して、SCSI機能を遂行する際
のコントローラ・プロセッサ64の作動を制御する。こ
れらのレジスタはサブシステム制御ブロック(SCB)
転送に関連した9つのレジスタと、より一般的な機能を
もたらす3つの汎用レジスタを含んでいる。チャネル・
アドレス・ビット、チャネル転送長、チャネル制御及び
データに関するSCBレジスタはコントローラ・プロセ
ッサ64に関して読み書きレジスタであり、FIFOバ
イト・カウント・レジスタは読取り専用である。SCB
転送の概念及び編成は本開示の範囲外のものであるか
ら、詳細については、入手可能な周知の刊行物を参照さ
れたい。
【0023】本発明の重要な特徴によれば、第2インタ
フェース回路61は、コントローラ40によって実行さ
れる操作の順序に関連したデータを受け取り、格納する
ための少なくとも1つ、好ましくは複数のレジスタを有
している。この(あるいは、これらの)レジスタは本明
細書では「スレッド・レジスタ」と呼ばれるものであ
り、SCSI機能を実行するに必須のスレッド状況及び
制御情報をもたらす。単なる例として、スレッド状況レ
ジスタは複数のビットを使用して、スレッドを起動しな
ければならないこと、アービトレーションを行って、目
標装置を選択しなければならないこと、スレッドを他の
(おそらくは、特定の)スレッドの完了後などの特定の
順序で実行しなければならないこと、SCSIコマンド
が完了したこと、コマンドの実行にエラーがあったこ
と、分散/収集操作が必要なこと、スレッド化操作(ア
ービトレーション、目標装置の選択、メッセージの外部
へのディスパッチ、及びコマンド処理)の開始部分が実
行されたこと、ならびにコントローラが特定のスレッド
を実行しているSCSIバスで現在活動状態であること
を示すことができる。第2のスレッド状況レジスタを設
け、検出され、第1のスレッド状況レジスタに登録され
た異常状態を示す修飾ビットを保持することができる。
1つまたは2つの目標情報レジスタを設けて、特定のス
レッドに対する特定の目標装置を示す情報を保持するこ
ともできる。
【0024】作動時に、SCSI装置との特定の交換が
必要であると、CPU32が識別した場合、適切なデー
タがコントローラ40にディスパッチされ、スレッド・
レジスタに格納され、転送操作がコントローラ・プロセ
ッサ64によって引き継がれる。指定の交換の完了時
に、コントローラ・プロセッサは割込みをCPU32に
通知し、他の適切なデータの転送処理を可能とする。さ
らに、上述のように、複数のスレッド・レジスタのセッ
トを設け、CPU32が一連のスレッドを連続的にロー
ドできるようにすることもできる。それ故、CPU30
に対して示された割込みの各々において、コントローラ
40はスレッド・レジスタ(のセット)が新しい命令の
伝送に利用できることを示している。複数のスレッドを
使用可能とした場合、CPU32及びコントローラ・プ
ロセッサ64の両方が最適なレベルで作動でき、システ
ムとサポートしているSCSI装置の間に高いデータ転
送速度を維持することができる。
【図面の簡単な説明】
【図1】本発明を具体化するパーソナル・コンピュータ
の斜視図である。
【図2】シャーシ、カバー、及び母板を含んでいる図1
のパーソナル・コンピュータのいくつかの要素の分解図
であり、これらの要素の間のいくつかの関係を示す図で
ある。
【図3】図1及び図2のパーソナル・コンピュータのい
くつかの構成要素の略図である。
【図4】図1ないし図3のパーソナル・コンピュータの
記憶コントローラに組み込まれるいくつかの機構構成要
素の略図である。
【符号の説明】
10 マイクロコンピュータ 11 表示装置 12 キーボード 14 プリンタまたはプロッタ 15 カバー 19 シャーシ 20 母板 22 上部ベイ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 グレゴリィ・ジェイ・モーア アメリカ合衆国 33433 フロリダ州 ボカ・ラトン ハンツマン・ピーエル 8371

Claims (9)

    (57)【特許請求の範囲】
  1. 【請求項1】小型コンピュータ・システム・インタフェ
    ース(SCSI)周辺装置、システム・ランダム・アク
    セス・メモリ(RAM)、及び該周辺装置とメモリの間
    のデータの交換のためにデータを出すシステム中央演算
    処理装置(CPU)とを有するパーソナル・コンピュー
    タで使用するデータ・フロー・コントローラにおいて、 信号を前記CPU及びRAMと交換するための第1イン
    タフェース回路と、 信号を前記周辺装置と交換するための、該周辺装置とR
    AMの間でデータを渡すために前記第1インタフェース
    回路に接続されている第2インタフェース回路であっ
    て、前記周辺装置に対して出されたコマンドの複数のシ
    ーケンスの状況を示すデータを格納するためのレジスタ
    を含んでいる第2インタフェース回路と、 前記第1及び第2インタフェース回路を通るデータなら
    びに前記周辺装置とRAMの間のデータの流れを制御す
    るためのコントローラ・プロセッサであって、前記CP
    Uから出された命令を受け取るために前記第1インタフ
    ェース回路に接続され、前記周辺装置に対して、該周辺
    装置とのデータの交換を指示するコマンドのシーケンス
    を出すために前記第2インタフェース回路に作動的に相
    互接続されているコントローラ・プロセッサと、 前記第1インタフェース回路、前記第2インタフェース
    回路、及び前記コントローラ・プロセッサに接続され、
    複数の命令のうち、前記レジスタに格納されている状況
    表示データによって実行すべきコマンドを制御する次の
    命令であると示されている命令を前記コントロール・プ
    ロセッサに渡す第3インタフェース回路とからなる前記
    データ・フロー・コントローラ。
  2. 【請求項2】前記第1及び第2インタフェース回路の間
    でデータを渡すために、これらの間に接続されているデ
    ータFIFOレジスタをさらに含んでいる請求項1記載
    のコントローラ。
  3. 【請求項3】前記CPUから出された命令を前記第1及
    び第3インタフェース回路の間で渡すために、これらの
    間に接続され、かつ、前記コントローラ・プロセッサに
    よる処理を目的とした命令FIFOレジスタをさらに含
    んでいる請求項1記載のコントローラ。
  4. 【請求項4】前記CPUから受け取った命令をコマンド
    に復号し、前記周辺装置によって実行するために、前記
    第2及び第3インタフェース回路の間に接続された状態
    復号機械をさらに含んでいる請求項1記載のコントロー
    ラ。
  5. 【請求項5】前記周辺装置が複数のときに、前記コント
    ローラ・プロセッサ及び前記第1インタフェース回路が
    協働して、対応する複数の前記周辺装置によるコマンド
    の複数のシーケンスの並行実行を可能とする請求項1記
    載のコントローラ。
  6. 【請求項6】小型コンピュータ・システム・インタフェ
    ース(SCSI)周辺装置と、 システム・ランダム・アクセス・メモリ(RAM)と、 前記周辺装置と前記メモリとの間のデータの交換のため
    の命令を出すために、該周辺装置とRAMに接続された
    システム中央演算処理装置(CPU)と、 データ・フロー・コントローラとからなり、 該データ・フロー・コントローラが信号を前記CPU及
    びRAMと交換するための第1インタフェース回路と、 信号を前記周辺装置と交換するための、該周辺装置とR
    AMの間でデータを渡すために前記第1インタフェース
    回路に接続されている第2インタフェース回路であっ
    て、前記周辺装置に対して出されたコマンドの複数のシ
    ーケンスの状況を示すデータを格納するためのレジスタ
    を含んでいる第2インタフェース回路と、 前記第1及び第2インタフェース回路を通るデータなら
    びに前記周辺装置とRAMの間のデータの流れを制御す
    るためのコントローラ・プロセッサであって、前記CP
    Uから出された命令を受け取るために前記第1インタフ
    ェース回路に接続され、前記周辺装置に対して、該周辺
    装置とのデータの交換を指示するコマンドのシーケンス
    を出すために前記第2インタフェース回路に相互接続さ
    れているコントローラ・プロセッサと、 前記第1インタフェース回路、前記第2インタフェース
    回路、及び前記コントローラ・プロセッサに接続され、
    複数の命令のうち、前記レジスタに格納されている状況
    表示データによって実行すべきコマンドを制御する次の
    命令であると示されている命令を前記コントロール・プ
    ロセッサに渡す第3インタフェース回路を有しているパ
    ーソナル・コンピュータ・システム。
  7. 【請求項7】前記データ・フロー・コントローラが前記
    第1及び第2インタフェース回路の間でデータを渡すた
    めに、これらの間に接続されているデータFIFOレジ
    スタをさらに有している請求項6記載のパーソナル・コ
    ンピュータ。
  8. 【請求項8】前記データ・フロー・コントローラが前記
    CPUから出された命令を前記第1及び前記第3インタ
    フェース回路の間で渡すために、これらの間に接続さ
    れ、かつ、前記コントローラ・プロセッサによる処理を
    目的とした命令FIFOレジスタをさらに有している請
    求項6記載のパーソナル・コンピュータ。
  9. 【請求項9】前記周辺装置が複数のときに、前記コント
    ローラ・プロセッサ及び前記第1インタフェース回路が
    協働して、対応する複数の前記周辺装置によるコマンド
    の複数のシーケンスの並行実行を可能とする請求項6記
    載のパーソナル・コンピュータ。
JP5184939A 1992-09-15 1993-07-27 デ―タ・フロ―・コントロ―ラ Expired - Lifetime JP2507227B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US945306 1992-09-15
US07/945,306 US5371861A (en) 1992-09-15 1992-09-15 Personal computer with small computer system interface (SCSI) data flow storage controller capable of storing and processing multiple command descriptions ("threads")

Publications (2)

Publication Number Publication Date
JPH06187470A JPH06187470A (ja) 1994-07-08
JP2507227B2 true JP2507227B2 (ja) 1996-06-12

Family

ID=25482941

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5184939A Expired - Lifetime JP2507227B2 (ja) 1992-09-15 1993-07-27 デ―タ・フロ―・コントロ―ラ

Country Status (2)

Country Link
US (1) US5371861A (ja)
JP (1) JP2507227B2 (ja)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL100127A0 (en) * 1991-03-11 1992-08-18 Future Domain Corp Scsi controller
CA2065989C (en) * 1991-06-07 1998-03-31 Don Steven Keener Personal computer data flow control
JPH05265947A (ja) * 1992-02-19 1993-10-15 Nec Corp Scsiコントローラ
US5659690A (en) * 1992-10-15 1997-08-19 Adaptec, Inc. Programmably configurable host adapter integrated circuit including a RISC processor
US5404437A (en) * 1992-11-10 1995-04-04 Sigma Designs, Inc. Mixing of computer graphics and animation sequences
US5515107A (en) * 1994-03-30 1996-05-07 Sigma Designs, Incorporated Method of encoding a stream of motion picture data
US5598576A (en) * 1994-03-30 1997-01-28 Sigma Designs, Incorporated Audio output device having digital signal processor for responding to commands issued by processor by emulating designated functions according to common command interface
US5528309A (en) 1994-06-28 1996-06-18 Sigma Designs, Incorporated Analog video chromakey mixer
US5884093A (en) * 1994-09-02 1999-03-16 Rock Solid Systems, Inc. Hard disk cache for CD-ROM and other slow access time devices
AU3723395A (en) * 1994-09-14 1996-03-29 Micropolis Corporation Method of pre-caching data utilizing thread lists and multimedia editing system using such pre-caching
US5790881A (en) * 1995-02-07 1998-08-04 Sigma Designs, Inc. Computer system including coprocessor devices simulating memory interfaces
US5940866A (en) * 1995-12-13 1999-08-17 International Business Machines Corporation Information handling system having a local address queue for local storage of command blocks transferred from a host processing side
US5719511A (en) * 1996-01-31 1998-02-17 Sigma Designs, Inc. Circuit for generating an output signal synchronized to an input signal
US5862398A (en) * 1996-05-15 1999-01-19 Philips Electronics North America Corporation Compiler generating swizzled instructions usable in a simplified cache layout
US6128726A (en) * 1996-06-04 2000-10-03 Sigma Designs, Inc. Accurate high speed digital signal processor
US5818468A (en) * 1996-06-04 1998-10-06 Sigma Designs, Inc. Decoding video signals at high speed using a memory buffer
US6247040B1 (en) 1996-09-30 2001-06-12 Lsi Logic Corporation Method and structure for automated switching between multiple contexts in a storage subsystem target device
US6081849A (en) * 1996-10-01 2000-06-27 Lsi Logic Corporation Method and structure for switching multiple contexts in storage subsystem target device
US6006344A (en) * 1997-01-21 1999-12-21 Dell Usa, L.P., A Texas Limited Partnership Keyboard controlled diagnostic system
US7181548B2 (en) 1998-10-30 2007-02-20 Lsi Logic Corporation Command queueing engine
US6564271B2 (en) 1999-06-09 2003-05-13 Qlogic Corporation Method and apparatus for automatically transferring I/O blocks between a host system and a host adapter
US7154886B2 (en) 2002-07-22 2006-12-26 Qlogic Corporation Method and system for primary blade selection in a multi-module fiber channel switch
US7397768B1 (en) 2002-09-11 2008-07-08 Qlogic, Corporation Zone management in a multi-module fibre channel switch
US7319669B1 (en) 2002-11-22 2008-01-15 Qlogic, Corporation Method and system for controlling packet flow in networks
US7646767B2 (en) 2003-07-21 2010-01-12 Qlogic, Corporation Method and system for programmable data dependant network routing
US7234101B1 (en) 2003-08-27 2007-06-19 Qlogic, Corporation Method and system for providing data integrity in storage systems
US7219263B1 (en) 2003-10-29 2007-05-15 Qlogic, Corporation Method and system for minimizing memory corruption
US20050240727A1 (en) * 2004-04-23 2005-10-27 Shishir Shah Method and system for managing storage area networks
US7930377B2 (en) 2004-04-23 2011-04-19 Qlogic, Corporation Method and system for using boot servers in networks
US7669190B2 (en) 2004-05-18 2010-02-23 Qlogic, Corporation Method and system for efficiently recording processor events in host bus adapters
US7577772B2 (en) 2004-09-08 2009-08-18 Qlogic, Corporation Method and system for optimizing DMA channel selection
US20060064531A1 (en) * 2004-09-23 2006-03-23 Alston Jerald K Method and system for optimizing data transfer in networks
US7676611B2 (en) 2004-10-01 2010-03-09 Qlogic, Corporation Method and system for processing out of orders frames
US7380030B2 (en) 2004-10-01 2008-05-27 Qlogic, Corp. Method and system for using an in-line credit extender with a host bus adapter
US7398335B2 (en) * 2004-11-22 2008-07-08 Qlogic, Corporation Method and system for DMA optimization in host bus adapters
US7164425B2 (en) * 2004-12-21 2007-01-16 Qlogic Corporation Method and system for high speed network application
US7392437B2 (en) * 2005-01-20 2008-06-24 Qlogic, Corporation Method and system for testing host bus adapters
US7281077B2 (en) * 2005-04-06 2007-10-09 Qlogic, Corporation Elastic buffer module for PCI express devices
US7231480B2 (en) * 2005-04-06 2007-06-12 Qlogic, Corporation Method and system for receiver detection in PCI-Express devices
US7461195B1 (en) 2006-03-17 2008-12-02 Qlogic, Corporation Method and system for dynamically adjusting data transfer rates in PCI-express devices
US7930459B2 (en) * 2007-09-28 2011-04-19 Intel Corporation Coherent input output device

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4783705A (en) * 1986-02-27 1988-11-08 Quantum Corporation High capacity disk file with embedded sector servo and SCSI interface
US4905184A (en) * 1987-09-21 1990-02-27 Unisys Corporation Address control system for segmented buffer memory
US4965801A (en) * 1987-09-28 1990-10-23 Ncr Corporation Architectural arrangement for a SCSI disk controller integrated circuit
US5179667A (en) * 1988-09-14 1993-01-12 Silicon Graphics, Inc. Synchronized DRAM control apparatus using two different clock rates
US5280601A (en) * 1990-03-02 1994-01-18 Seagate Technology, Inc. Buffer memory control system for a magnetic disc controller
US5233692A (en) * 1990-04-06 1993-08-03 Micro Technology, Inc. Enhanced interface permitting multiple-byte parallel transfers of control information and data on a small computer system interface (SCSI) communication bus and a mass storage system incorporating the enhanced interface
US5241630A (en) * 1990-11-13 1993-08-31 Compaq Computer Corp. Device controller with a separate command path between a host and the device and a separate data path including a first in, first out memory between the host and the device
US5307491A (en) * 1991-02-12 1994-04-26 International Business Machines Corporation Layered SCSI device driver with error handling circuit providing sense data from device directly to the driver on the occurrence of an error
US5287476A (en) * 1991-06-07 1994-02-15 International Business Machines Corp. Personal computer system with storage controller controlling data transfer
US5274783A (en) * 1991-06-28 1993-12-28 Digital Equipment Corporation SCSI interface employing bus extender and auxiliary bus
US5293590A (en) * 1992-04-06 1994-03-08 International Business Machines Corp. Personal computer with interface controller

Also Published As

Publication number Publication date
US5371861A (en) 1994-12-06
JPH06187470A (ja) 1994-07-08

Similar Documents

Publication Publication Date Title
JP2507227B2 (ja) デ―タ・フロ―・コントロ―ラ
US5299315A (en) Personal computer with programmable threshold FIFO registers for data transfer
AU660667B2 (en) A computer system
JPH03660B2 (ja)
US6016549A (en) Peripheral unit having at least two sequencer circuits configured to control data transfers for power saving
US5317707A (en) Expanded memory interface for supporting expanded, conventional or extended memory for communication between an application processor and an external processor
JPH0644094A (ja) 代替システム制御装置のエラーを検出するコンピュータ・システム
JPH06168200A (ja) パーソナル・コンピュータ・システム
JP2538739B2 (ja) パ―ソナルコンピュ―タシステム
US5485585A (en) Personal computer with alternate system controller and register for identifying active system controller
KR950008229B1 (ko) 퍼스널 컴퓨터 시스템
JP3751527B2 (ja) 代替マスタ用の縦型コネクタを備えたデータ処理システム
US5293590A (en) Personal computer with interface controller
US5524267A (en) Digital I/O bus controller circuit with auto-incrementing, auto-decrementing and non-incrementing/decrementing access data ports
JPH05173954A (ja) パーソナルコンピュータシステム
AU661842B2 (en) Personal computer with processor reset control
JP2982839B2 (ja) パーソナルコンピュータシステム
EP0516324A1 (en) Personal computer with alternate system controller
CA2065992A1 (en) Personal computer with enhanced memory access and method
EP0516323A1 (en) Personal computer systems
JPH05128055A (ja) 代替システム制御装置用の装備を有したパーソナル・コンピユータ・システム
JPH0628311A (ja) 代替システムコントローラサブシステムを備えたパーソナルコンピュータ