JPH07311716A - コンピュータシステム、コンピュータシステムに周辺装置をインタフェースさせるための並列ポート回路、およびその動作方法 - Google Patents

コンピュータシステム、コンピュータシステムに周辺装置をインタフェースさせるための並列ポート回路、およびその動作方法

Info

Publication number
JPH07311716A
JPH07311716A JP7080451A JP8045195A JPH07311716A JP H07311716 A JPH07311716 A JP H07311716A JP 7080451 A JP7080451 A JP 7080451A JP 8045195 A JP8045195 A JP 8045195A JP H07311716 A JPH07311716 A JP H07311716A
Authority
JP
Japan
Prior art keywords
parallel port
computer system
control unit
data
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.)
Granted
Application number
JP7080451A
Other languages
English (en)
Other versions
JP3628372B2 (ja
Inventor
Michael T Wisor
マイケル・ティ・ワイザー
Scott C Johnson
スコット・シィ・ジョンソン
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.)
Advanced Micro Devices Inc
Original Assignee
Advanced Micro Devices Inc
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 Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Publication of JPH07311716A publication Critical patent/JPH07311716A/ja
Application granted granted Critical
Publication of JP3628372B2 publication Critical patent/JP3628372B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0745Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in an input/output transactions management context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0772Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Bus Control (AREA)
  • Information Transfer Systems (AREA)
  • Communication Control (AREA)

Abstract

(57)【要約】 【目的】 周辺装置との通信場外時にもハングアップし
ない並列ポート回路を提供する。 【構成】 並列ポート回路104は、コンピュータシス
テム100のバス106からの書込データを受信できる
データバッファ122と、バス106でのポート104
への書込サイクルに応答して書込データをバッファ12
2にラッチさせ、さらに周辺装置108にハンドシェイ
ク信号を発生して書込データがバッファ122にあるこ
とを示す制御ユニット120と、制御ユニット120に
結合され、ハンドシェイク信号のアサート後に所定期間
をカウントするタイムアウトカウンタ124とを含み、
所定の期間内の書込データ受信を示す肯定応答信号を周
辺装置108がアサートできなければ制御ユニット12
0はバス106に制御信号をアサートしてコンピュータ
システム100を書き込みサイクルから解放する。

Description

【発明の詳細な説明】
【0001】
【発明の分野】この発明はコンピュータシステムに関す
る。より特定的にはこの発明はコンピュータシステム内
で用いられる並列ポート回路に関する。
【0002】
【関連技術の説明】並列ポートは、プリンタのような外
部周辺装置へデータを転送する便利でかつ高速な機構を
可能にするために、コンピュータシステム内で広く用い
られている。並列ポートは通常は、プロセッサによって
実行される書込サイクルに応答して予め定められるアド
レス位置にデータを書込まれるデータラッチを含む。一
旦このデータが並列ポートのラッチ内に記憶されると、
並列ポートに関連する制御ユニットはデータを外部周辺
装置に転送させる。外部周辺装置はデータの受信を確認
する応答をし、制御回路は応答してプロセッサにレディ
信号を返してプロセッサを現在の書込サイクルから解放
する。
【0003】並列ポートは外部周辺装置からデータを受
信するのにさらに用いられてもよい。この状況では、周
辺装置は通常、それがデータを転送できる状態にあるこ
とを示すために、マイクロプロセッサへ並列ポート割込
をアサートする。マイクロプロセッサは応答して並列ポ
ートに書込サイクルを実行し、周辺装置は、有効なデー
タが並列ポートに現在与えられていることを示すため
に、肯定応答信号をアサートする。
【0004】外部装置への通信リンクが切断されるかま
たは通信が失敗した場合には、現在実現されている並列
ポート機構内には回復不可能な障害が起こるかもしれな
い。プロセッサが並列ポートに書込または読出サイクル
を実行して、周辺装置が、書込データを受取ったことま
たは読出データを与えたことを示す肯定応答信号を返さ
ない場合には、コンピュータシステムは「ハング」す
る。言い換えれば、コンピュータシステムは周辺装置が
肯定信号を与えるのを無限に待つことになる。一旦この
ような状況が生じると、コンピュータシステムは通常は
プロセッサを解放するためにリセットまたは再スタート
されなければならない。
【0005】
【発明の概要】上述の問題は、この発明に従うアボート
機構を有する並列ポート回路を含むコンピュータシステ
ムによって大部分解決される。1つの実施例においてコ
ンピュータシステムは、プロセッサと、周辺装置へまた
は周辺装置からデータを転送するよう構成される並列ポ
ートとを含んで設けられる。並列ポートは、プロセッサ
が並列ポートに書込サイクルを実行するときにシステム
バスで転送されるデータを受信するためのデータバッフ
ァを含む。並列ポートに関連する制御ユニットはシステ
ムバスのアドレス信号をデコードしてデータバッファ内
でデータを選択的にラッチし、ハンドシェイク信号(つ
まり、データストローブ信号およびRd/Wr制御信
号)を発生して書込データが現在データバッファに含ま
れることを周辺装置に示す。周辺装置はこの結果データ
を受信して制御ユニットに肯定応答信号を与える。この
後制御ユニットはレディ信号を発生してデータが既に周
辺装置に書込まれたことをプロセッサに示す。データが
並列ポートにおいて利用可能であることを示すハンドシ
ェイク信号を制御ユニットが周辺装置にアサートした
後、周辺装置が予め定められるタイムアウト期間内に肯
定応答信号を返したかどうかを判断するために、タイム
アウトカウンタが制御ユニットに結合される。タイムア
ウト期間が満了し、周辺装置が肯定応答信号を返さない
場合には、システムバスにレディ信号をアサートするこ
とによって制御ユニットはプロセッサを現在のサイクル
から解放する。制御ユニットは、障害が起こったことを
示すために、状態レジスタ内にエラーフラグをさらにア
サートする。エラーフラグのアサーションに応答して、
制御ユニットは、プロセッサに障害を効果的に警告する
割込信号をアサートする。この後プロセッサは、割込処
理ルーチンからのコードを実行し、その中でその障害が
並列ポートに関連していたかどうかを判断するために状
態レジスタを読むだろう。プログラミングに柔軟性を与
えるために、並列ポートは、マスク不可割込または並列
ポート割込がエラーフラグのアサーションに応答してア
サートされるかどうかを制御する構成レジスタをさらに
伴なう。タイムアウトカウンタは並列ポートの読出サイ
クル中に同様に用いられて、周辺装置が予め定められる
タイムアウト期間内にデータの読出を肯定応答したかど
うかを判断する。並列ポート動作の完了でのエラーフラ
グの状態を判断するのにポーリング技術をさらに用いる
こともできる。
【0006】広く言うと、この発明は周辺装置をコンピ
ュータシステムにインタフェースさせるための並列ポー
ト回路を目的とする。並列ポート回路は、コンピュータ
システムのバスから書込データを受信することのできる
データバッファと、データバッファに結合され、コンピ
ュータシステムのバス上の書込サイクルに応答して書込
データをデータバッファ内にラッチさせることのできる
制御ユニットとを備える。制御ユニットは周辺装置にハ
ンドシェイク信号をさらに発生して、書込データがデー
タバッファに含まれることを示すことができる。並列ポ
ート回路は、制御ユニットに結合され、ハンドシェイク
信号のアサーションの後予め定められる時間期間をカウ
ントすることのできる、タイムアウトカウンタをさらに
含む。周辺装置が、予め定められる時間期間内に書込デ
ータを受信したことを示す肯定応答信号をアサートでき
ない場合には、制御ユニットはコンピュータシステムの
バス上で制御信号をアサートしてコンピュータシステム
を書込サイクルから解放する。
【0007】この発明は、処理ユニットと、周辺装置
と、バスを介して処理ユニットに結合され、かつ周辺装
置に結合される並列ポート回路とを含むコンピュータシ
ステムをさらに目的とする。並列ポート回路は、コンピ
ュータシステムのバスから書込データを受信することの
できるデータバッファと、データバッファに結合され、
処理ユニットによって実行される並列ポートへの書込サ
イクルに応答して書込データをデータバッファ内にラッ
チさせることのできる、制御ユニットとを含む。制御ユ
ニットは、周辺装置にハンドシェイク信号をさらに発生
して、書込データがデータバッファによって含まれるこ
とを示すことができる。並列ポート回路は、制御ユニッ
トに結合され、ハンドシェイク信号のアサーションの後
予め定められる時間期間をカウントすることのできる、
タイムアウトカウンタをさらに含む。周辺装置が予め定
められる時間期間内に書込データを受信したことを示す
肯定応答信号をアサートできない場合には、制御ユニッ
トはコンピュータシステムのバス上に制御信号をアサー
トして処理ユニットを書込サイクルから解放する。
【0008】最後にこの発明は、処理ユニットと周辺装
置とを含むコンピュータシステムの並列ポートを動作さ
せるための方法を目的とする。方法は、コンピュータシ
ステムのバス上で書込サイクルを実行するステップと、
書込サイクルに応答して並列ポートのデータバッファ内
にデータをラッチするステップと、周辺装置にデータス
トローブ信号を与えるステップとを含む。方法はさら
に、予め定められる時間期間のカウントダウンを開始す
るステップと、周辺装置からの肯定応答信号を待つステ
ップと、肯定応答信号が予め定められる時間期間内に周
辺装置から与えられない場合にはバス上に制御信号をア
サートして処理ユニットを書込サイクルから解放するス
テップとを含む。
【0009】この発明の他の目的および利点は、以下の
詳細な説明を読み、添付の図面を参照すると明らかとな
る。
【0010】この発明は様々な修正および代替形式が可
能であるが、その特定の実施例を図面における例示の形
によって示し、詳細にここに記載するものである。しか
しながら、図面およびその詳細な説明はこの発明を開示
される特定の形式に限定することを意図するものではな
く、逆に、前掲の特許請求の範囲に定義されるようなこ
の発明の精神および範囲内に入るすべての修正物、均等
物、および代替物を包含することを意図するものである
ことが理解されるはずである。
【0011】
【実施例の詳細な説明】ここで図面を参照すると、図1
は、システムバス106を介してシステムメモリ103
と並列ポート104とに結合されるマイクロプロセッサ
(CPU)102を含むコンピュータシステム100の
ブロック図である。並列ポート104は周辺装置108
にさらに結合される。
【0012】マイクロプロセッサ102は予め定められ
る命令セットを実現するデータ処理ユニットである。例
示の処理ユニットは特に80386型および80486
型マイクロプロセッサを含む。システムバス106はた
とえばPCI標準構成バスを示すが、他のバス構成が用
いられてもよいことは当然である。さらに、並列ポート
104は1つまたはそれより多いバスインタフェースユ
ニットを介してマイクロプロセッサ102に結合されて
もよく、マイクロプロセッサ102は集積プロセッサで
あってもよいことは当然である。
【0013】並列ポート104は双方向バス122とタ
イムアウトカウンタ124とに結合される制御ユニット
120を含む。構成レジスタ126と状態レジスタ12
8が制御ユニット120にさらに結合される。双方向バ
ッファ122はシステムバス106と周辺装置108と
の間でデータを選択的にバッファリングするために設け
られる。双方向バッファ122は単純なラッチ回路でも
って実現されてもよい。
【0014】制御ユニット120は、並列ポート104
への書込または読出動作がたとえばマイクロプロセッサ
102によって実行中であるかどうかを判断するため
に、システムバス106をモニタする。並列ポート10
4はコンピュータシステム100のI/O空間内の予め
定められるアドレス位置にマッピングされるが、並列ポ
ート104はコンピュータシステム100のメモリ空間
内に代替的にマッピングされてもよいことが理解される
だろう。制御ユニット120は特定の転送を実行するよ
うに、双方向バッファ122内でのデータのラッチング
をさらに制御し、周辺装置108との適当なハンドシェ
イク信号を発生する。これについては以下により詳細に
説明する。
【0015】コンピュータシステム100の動作中、マ
イクロプロセッサ102が並列ポート104にI/O書
込サイクルを実行すると、制御ユニット120はそのサ
イクルを検知して、システムバス106上の対応するデ
ータを双方向バッファ122にラッチさせる。書込デー
タはシステムメモリ103を出所としてもよいことに注
目されたい。図2は、並列ポート104へのそのような
I/O書込サイクル中のデータ転送と選択された制御信
号のアサーションとを示す。制御ユニット120は双方
向バッファ122にデータをラッチさせた後、有効デー
タが双方向バッファ122において現在利用可能である
ことを示すために、周辺装置108へ書込ストローブ信
号をアサートする。現在のサイクルが書込動作であるこ
とを示すために、制御ユニット120はさらに読出/書
込(Rd/Wr)制御信号をローにアサートする。通信
リンクが正しく動作している場合には、周辺装置108
は双方向バッファ122からデータを受信して、応答し
て制御ユニット120によって受信される肯定応答信号
ACKをアサートする。制御ユニット120はこの結果
システムバス106でレディ信号RDYをアサートし
て、周辺装置108がデータを受取ったことをマイクロ
プロセッサ102に示す。動作のこの部分は従来からあ
るものである。
【0016】制御ユニット120が書込ストローブをア
サートすると、タイムアウトカウンタ124は予め定め
られるタイムアウト期間のカウントを開始する。1つの
実施例においては、このタイムアウト期間は、1つのバ
イトの転送につき10マイクロ秒、1つの語の転送につ
き20マイクロ秒、および倍長語転送につき40マイク
ロ秒に設定されるが、システムによっては他のタイムア
ウト長が設定されてもよいことを理解されたい。通信リ
ンクが正しく動作している場合には、周辺装置108は
この予め定められるタイムアウト期間内に肯定応答信号
ACKをアサートする。結果として、タイムアウトカウ
ンタ124が満了しない限り、タイムアウトカウンタ1
24に応答して、制御ユニット120がこれ以上の動作
をすることはない。
【0017】一方、通信リンクが切断されるか、または
通信障害が生じて、周辺装置108から制御ユニット1
20によって肯定応答信号ACKが受信されない場合に
は、タイムアウトカウンタ124のタイムアウト期間は
満了する。図3を参照すると、このことによってタイム
アウトカウンタ124からのタイムアウト信号のアサー
ションが起こり、そしてそれは制御ユニット120によ
って受取られる。制御ユニット120は状態レジスタ1
28内でエラービットを応答してセットし、マイクロプ
ロセッサ102を現在のサイクルから解放するようシス
テムバス106上にレディ信号RDYをアサートする。
制御ユニット120は、マイクロプロセッサ102に与
えられるマスク不可割込(NMI)または並列ポート割
込(INT)のいずれかを付加的にアサートする。マイ
クロプロセッサ102は従って、指定される割込処理ル
ーチンにジャンプし、その中である命令が状態レジスタ
128を読むために実行されてそれにより並列ポート通
信内で生じたエラーを判断するであろう。システムプロ
グラマまたはユーザに通信障害が発生した理由を判断さ
せてシステムの現在の状態を表示するために、ソフトウ
ェアを介してさらなる診断を実現することもできる。制
御ユニット120がレディ信号RDYをアサートするた
め、システムは「ハング」せず、マイクロプロセッサ1
02によるさらなる処理がシステムをリセットすること
なしに可能であることに注目されたい。
【0018】通信障害が発生し、および状態レジスタ1
28のエラービットがセットされたときに制御ユニット
120がマスク不可割込(NMI)または並列ポート割
込(INT)をアサートするかどうかを制御するため
に、並列ポート104に関連して構成レジスタ126が
設けられる。構成レジスタ126内に記憶される構成値
に依って、制御ユニット120は状態レジスタ128の
エラービットのセットに応答してマスク不可割込(NM
I)または並列ポート割込(INT)のいずれかをアサ
ートする。したがって、システムによっては、指定され
る処理ルーチン(NMIまたはINT処理ルーチン)は
エラーに関するユーザ情報を検知し分析して与えるよう
構成されるだろう。並列ポート通信の障害でどの割込
(NMIまたはINT)がアサートされるかをシステム
プログラマに設定させることによって、柔軟性のあるシ
ステムプログラミングが提供されるであろう。
【0019】並列ポート読出操作が起こるときのコンピ
ュータシステム100の動作は書込動作に関する前述の
動作と同様である。周辺装置108がマイクロプロセッ
サ102によって読出されるべく利用可能なデータを有
する場合、並列ポート割込が周辺装置108によってア
サートされる。周辺装置108からデータを読出すよ
う、マイクロプロセッサ102は応答してシステムバス
106上で読出サイクルを実行する。読出サイクルに応
答して、制御ユニット120はデータストローブ信号を
アサートし、かつRd/Wr信号をハイにアサートす
る。これらのハンドシェイク信号は周辺装置108によ
って受信され、周辺装置108は応答して双方向バッフ
ァ122にデータを与え、かつ同時に肯定応答信号AC
Kをアサートする。制御ユニット120はそれからデー
タを双方向バッファ122内にラッチさせ、データをシ
ステムバス106に送る。制御ユニット120はレディ
信号を同時にアサートして、有効データがシステムバス
106上で利用可能であることを示す。通信障害が起こ
らなかった場合には、レディ信号RDYがタイムアウト
カウンタ124によって設定されるタイムアウト期間内
に制御ユニット120によってアサートされる。タイム
アウトカウンタ124はデータストローブ信号のアサー
ションに応答してタイムアウト期間のカウントダウンを
再び開始することに注目されたい。
【0020】通信リンクが切断されるかまたは通信障害
が生じた場合には、肯定応答信号ACKは周辺装置10
8によって返されないであろう。したがって、タイムア
ウトカウンタ124のタイムアウト期間が満了し、した
がって状態レジスタ128内のエラービットがセットさ
れる。応答して、制御ユニット120は構成レジスタ1
26に基づいてマスク不可割込(NMI)または並列ポ
ート割込(INT)のいずれかを再びアサートし、マイ
クロプロセッサを現在のサイクルから解放するようレデ
ィ信号RDYをアサートする。この後マイクロプロセッ
サ102はマスク不可割込処理ルーチンまたは並列ポー
ト処理ルーチンのいずれかからのコードを実行し、その
中でエラーが並列ポート104内で生じたことを判断す
るために状態レジスタ128が読出されてもよい。
【0021】制御ユニット120は、たとえばシステム
バス106から書込まれる32ビット語が4つの別個の
8ビット転送を介して周辺装置108に転送されるよ
う、双方向バッファ122内でデータをパージングして
もよい。このような転送は図4に示され、そこでは、バ
イト3−バイト0から構成される32ビット語が双方向
バッファ122に書込まれ、その後、周辺装置108へ
の4つの別個のデータ転送サイクルの間に1バイトずつ
周辺装置108へ転送される。公知の技術を用いてこの
ようなデータ転送を行なうのにマルチプレクサ回路(図
示せず)が用いられてもよい。簡潔かつ明瞭に示すため
に図4の図面からはコンピュータシステム100の一部
を省略してある。
【0022】通信障害が生じているにもかかわらず制御
ユニット120によってレディ信号がアサートされたた
め、並列ポート104を介してマイクロプロセッサ10
2によって読出されたデータは無効であるかもしれない
ということに注目されたい。したがって、割込処理ルー
チンは、読出されたデータを無効であると識別し、エラ
ーの原因が修正された後で書込サイクルを再実行するよ
う構成されるだろう。さらに、マイクロプロセッサ10
2が割込処理ルーチンにジャンプする前にさらなる書込
または読出サイクルが実行された場合には、制御ユニッ
ト120はマイクロプロセッサ102をこの後に記載さ
れる方法で各サイクルから解放させることに注目された
い。
【0023】コンピュータシステム100に従うと、周
辺装置がデータの特定の転送を確認する応答をしたかど
うかを検知するためのタイムアウトカウンタを用いる並
列ポートが設けられる。周辺装置からの肯定応答が全く
ない状態でタイムアウトカウンタのタイムアウト期間が
満了した場合には、マイクロプロセッサへレディ信号を
戻すことによって並列ポートサイクルは効果的にアボー
トされ、それによってプロセッサを現在のサイクルから
解放する。状態レジスタのエラービットがさらにセット
される。この後、マスク不可割込または並列ポート割込
のアサーションでエラーモードに入る。この結果、コン
ピュータシステムは「ハング」せず、リセットされる必
要がない。エラーが検知された後、状態レジスタのエラ
ービットはリセットされる。
【0024】次に図5を参照すると、コンピュータシス
テム500のブロック図がこの発明の別の実施例に従っ
て図示される。図1の回路部分に対応する回路部分は同
一の参照番号を付与される。マイクロプロセッサ102
はCPUローカルバス504を介してPCIブリッジ5
02に結合される。PCIブリッジ502はPCIバス
506を介して並列ポート回路104にさらに結合され
る。
【0025】並列ポート104は図1を参照して上に記
載されるそれと同様に動作する。1つの実施例において
は、構成レジスタ126内に記憶される構成値に依っ
て、並列ポート104は2つの異なるモードのうちの1
つで動作するであろう。第1のモードでは、周辺装置1
08からデータを読出す、またはそれにデータを書込む
並列ポート動作が実行され、タイムアウトカウンタ12
4のタイムアウトが起こると(つまり、周辺装置108
がサイクルを確認する応答ができない場合には)、制御
ユニット120によってPCIバス506上でPCIア
ボートサイクルが実行される。当業者には公知であるよ
うに、PCIアボートサイクルは、PCISTOP♯信
号をアサートし、PCI DEVSEL♯信号をデアサ
ートすることによって、制御ユニット120によって開
始されることができる。PCIサイクルをアボートする
ことに加えて、制御ユニット120はエラーが生じたこ
とを示すためにマスク不可割込信号をさらにアサートす
る。
【0026】(構成レジスタ126内の構成値によって
定められるような)並列ポート104の第2の動作モー
ドでは、並列ポート動作中にタイムアウトが生じると、
制御ユニット120は状態レジスタ128内のエラービ
ットをセットさせる。制御ユニット120はさらに、
(肯定応答信号が周辺装置108から受信されなかった
としても)通常はPCI TRDY♯信号をアサートす
ることによってPCIバスサイクル506を終結させ
る。PCI TRDY♯信号のアサーションによって、
PCIブリッジ502はCPUローカルバス504上
で、マイクロプロセッサ102を現在のサイクルから解
放する対応するレディ信号をアサートする。エラーの発
生を示すために、制御ユニット120は並列ポート割込
信号をさらにアサートする。続いてマイクロプロセッサ
102が、並列ポート障害が起こったことを判断するた
めに状態レジスタ128を読出す。
【0027】このように図5の実施例では、構成レジス
タ126内の構成値に依って、制御ユニット120はタ
イムアウトが生じるとPCIサイクルをアボートしてマ
スク不可割込信号をアサートするか、またはPCIバス
506上でレディ信号TRDY♯信号をアサートしてマ
イクロプロセッサ102を現在のサイクルから解放し並
列ポート割込信号をアサートする。柔軟なプログラミン
グの可能性および機能性がこれによりサポートされる。
【0028】図1および図5の両方の実施例では、タイ
ムアウトが生じた後で並列ポート104への次の読出ま
たは書込サイクルが開始されると、制御ユニット120
はPCIサイクルを正常に終結するが、(書込のため
の)任意の書込データを破棄させるか、または(読出の
ために)すべてのビットがローに駆動された状態でデー
タバスを駆動させることに注目されたい。この後、割込
処理ルーチンに入ると、並列ポートエラーの発生が検知
される。
【0029】一旦上述の開示が十分に理解されれば、数
多くの変形および修正が当業者にとって明らかとなるで
あろう。たとえば、タイムアウトカウンタ124によっ
て設定されるタイムアウト期間はシステムごとに変更し
てもよく、タイムアウト期間はプログラマブルであって
もよいことに注目されたい。さらに、エラーが生じたか
どうかを判断するのに、特定の並列ポート動作の後でマ
イクロプロセッサ102が状態レジスタ128を読出す
ポーリング技術が用いられてもよいことに注目された
い。このようなポーリング技術が用いられれば、タイム
アウトに応答するマスク不可割込または並列ポート割込
のいずれのアサーションも不必要となるであろう。前掲
の特許請求の範囲はすべてのそのような変形および修正
を包含すると解釈されることが意図されるものである。
【図面の簡単な説明】
【図1】この発明に従うタイムアウトカウンタを含む並
列ポートを用いるコンピュータシステムのブロック図で
ある。
【図2】外部周辺装置への書込サイクルに関連するデー
タおよび選択される信号の流れを示すブロック図であ
る。
【図3】タイムアウトが生じた際にアサートされる、選
択される制御信号を示すブロック図である。
【図4】並列ポートへ書込まれる32ビット語の、周辺
装置に転送される4つの8ビットのバイトのデータへの
パージングを示すブロック図である。
【図5】この発明の別の実施例に従うタイムアウトカウ
ンタを含む並列ポート回路を利用するコンピュータシス
テムのブロック図である。
【符号の説明】
104 並列ポート回路 120 制御ユニット 122 双方向バッファ 124 タイムアウトカウンタ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 マイケル・ティ・ワイザー アメリカ合衆国、78729 テキサス州、オ ースティン、コッパー・クリーク、9815、 ナンバー・922 (72)発明者 スコット・シィ・ジョンソン アメリカ合衆国、78741 テキサス州、オ ースティン、パーカー・レーン、3111、ナ ンバー・311

Claims (19)

    【特許請求の範囲】
  1. 【請求項1】 コンピュータシステムに周辺装置をイン
    タフェースさせるための並列ポート回路であって、 前記コンピュータシステムのバスから書込データを受信
    することのできるデータバッファと、 前記データバッファに接続され、前記コンピュータシス
    テムの前記バス上での前記並列ポートへの書込サイクル
    に応答して前記書込データを前記データバッファ内にラ
    ッチさせる、制御ユニットとを含み、前記制御ユニット
    はさらに、前記周辺装置へハンドシェイク信号を発生し
    て、前記書込データが前記データバッファに含まれるこ
    とを示すことができ、さらに、 前記制御ユニットに結合され、前記ハンドシェイク信号
    の前記アサーションの後、予め定められる時間期間をカ
    ウントすることのできる、タイムアウトカウンタを含
    み、 前記予め定められる時間期間内に前記書込データを受信
    したことを示す肯定応答信号を前記周辺装置がアサート
    できない場合には、前記コンピュータシステムを前記書
    込サイクルから解放するよう前記制御ユニットは前記コ
    ンピュータシステムの前記バス上に制御信号をアサート
    する、コンピュータシステムに周辺装置をインタフェー
    スさせるための並列ポート回路。
  2. 【請求項2】 前記タイムアウトカウンタの前記予め定
    められる時間期間が満了した場合には、前記制御ユニッ
    トはプロセッサに割込信号をさらにアサートする、請求
    項1に記載の並列ポート回路。
  3. 【請求項3】 エラービットを含む状態レジスタをさら
    に備え、前記周辺装置が前記予め定められる時間期間内
    に前記肯定応答信号をアサートできない場合には前記制
    御ユニットは前記エラービットをセットすることができ
    る、請求項1に記載の並列ポート回路。
  4. 【請求項4】 前記制御ユニットに結合される構成レジ
    スタをさらに備え、前記構成レジスタは、前記タイムア
    ウトカウンタの前記予め定められる時間期間の満了に応
    答してマスク不可割込または並列ポート割込がアサート
    されるかどうかを制御するよう、構成値を記憶すること
    ができる、請求項1に記載の並列ポート回路。
  5. 【請求項5】 前記ハンドシェイク信号はデータストロ
    ーブ信号を含む、請求項1に記載の並列ポート回路。
  6. 【請求項6】 前記データバッファはラッチ回路を含
    む、請求項1に記載の並列ポート回路。
  7. 【請求項7】 前記タイムアウトカウンタの前記予め定
    められる時間期間はプログラマブルである、請求項1に
    記載の並列ポート回路。
  8. 【請求項8】 前記データバッファは、双方向バッファ
    であり、前記周辺装置から読出データを受信することの
    できる、請求項1に記載の並列ポート回路。
  9. 【請求項9】 処理ユニットと、 周辺装置と、 前記処理ユニットにバスを介して結合されかつ前記周辺
    装置に結合される並列ポート回路とを含み、前記並列ポ
    ート回路は、 コンピュータシステムの前記バスから書込データを受信
    することのできるデータバッファと、 前記データバッファに接続され、前記処理ユニットによ
    って実行される前記並列ポート回路への書込サイクルに
    応答して前記書込データを前記データバッファ内にラッ
    チさせることのできる、制御ユニットとを含み、前記制
    御ユニットは、前記周辺装置にハンドシェイク信号をさ
    らに発生して、前記書込データが前記データバッファに
    含まれることを示すことができ、さらに、 前記制御ユニットに結合され、前記ハンドシェイク信号
    の前記アサーションの後、予め定められる時間期間をカ
    ウントすることのできる、タイムアウトカウンタを含
    み、 前記予め定められる時間期間内に前記書込データを受取
    ったことを示す肯定応答信号を前記周辺装置がアサート
    できない場合には、前記制御ユニットは、前記処理ユニ
    ットを前記書込サイクルから解放するよう、前記コンピ
    ュータシステムの前記バス上に制御信号をアサートす
    る、コンピュータシステム。
  10. 【請求項10】 前記タイムアウトカウンタの前記予め
    定められる時間期間が満了した場合には、前記制御ユニ
    ットは前記処理ユニットに割込信号をさらにアサートす
    る、請求項9に記載のコンピュータシステム。
  11. 【請求項11】 エラービットを含む状態レジスタをさ
    らに備え、前記周辺装置が前記予め定められる時間期間
    内に前記肯定応答信号をアサートできない場合には前記
    制御ユニットは前記エラービットをセットすることがで
    きる、請求項9に記載のコンピュータシステム。
  12. 【請求項12】 前記制御ユニットに結合される構成レ
    ジスタをさらに備え、前記構成レジスタは、前記タイム
    アウトカウンタの前記予め定められる時間期間の満了に
    応答してマスク不可割込または並列ポート割込がアサー
    トされるかどうかを制御するよう、構成値を記憶するこ
    とができる、請求項9に記載のコンピュータシステム。
  13. 【請求項13】 前記ハンドシェイク信号はデータスト
    ローブ信号を含む、請求項9に記載のコンピュータシス
    テム。
  14. 【請求項14】 前記データバッファはラッチ回路を含
    む、請求項9に記載のコンピュータシステム。
  15. 【請求項15】 前記タイムアウトカウンタの前記予め
    定められる時間期間はプログラマブルである、請求項9
    に記載のコンピュータシステム。
  16. 【請求項16】 前記データバッファは、双方向バッフ
    ァであり、前記周辺装置から読出データを受信すること
    のできる、請求項9に記載のコンピュータシステム。
  17. 【請求項17】 処理ユニットと周辺装置とを含むコン
    ピュータシステムの並列ポートを動作させるための方法
    であって、前記方法は、 前記コンピュータシステムのバス上で書込サイクルを実
    行するステップと、 前記書込サイクルに応答して前記並列ポートのデータバ
    ッファ内にデータをラッチするステップと、 前記周辺装置にデータストローブ信号を与えるステップ
    と、 予め定められる時間期間のカウントダウンを開始するス
    テップと、 前記周辺装置からの肯定応答信号を待つステップと、さ
    らに、 前記予め定められる時間期間内に前記周辺装置から前記
    肯定応答信号が与えられない場合には、前記処理ユニッ
    トを前記書込サイクルから解放するよう前記バス上に制
    御信号をアサートするステップとを含む、処理ユニット
    と周辺装置とを含むコンピュータシステムの並列ポート
    を動作させるための方法。
  18. 【請求項18】 前記予め定められる時間期間内に前記
    周辺装置から前記肯定応答信号が与えられない場合に
    は、状態レジスタ内のエラービットをセットするステッ
    プをさらに含む、請求項17に記載のコンピュータシス
    テムの並列ポートを動作させるための方法。
  19. 【請求項19】 前記予め定められる時間期間内に前記
    周辺装置から前記肯定応答信号が与えられない場合に
    は、前記マイクロプロセッサに割込信号をアサートする
    ステップをさらに含む、請求項17に記載のコンピュー
    タシステムの並列ポートを動作させるための方法。
JP08045195A 1994-04-06 1995-04-05 コンピュータシステム、コンピュータシステムに周辺装置をインタフェースさせるための並列ポート回路、およびその動作方法 Expired - Fee Related JP3628372B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US22364394A 1994-04-06 1994-04-06
US223643 1998-12-30

Publications (2)

Publication Number Publication Date
JPH07311716A true JPH07311716A (ja) 1995-11-28
JP3628372B2 JP3628372B2 (ja) 2005-03-09

Family

ID=22837419

Family Applications (1)

Application Number Title Priority Date Filing Date
JP08045195A Expired - Fee Related JP3628372B2 (ja) 1994-04-06 1995-04-05 コンピュータシステム、コンピュータシステムに周辺装置をインタフェースさせるための並列ポート回路、およびその動作方法

Country Status (5)

Country Link
US (1) US5666559A (ja)
EP (1) EP0676696B1 (ja)
JP (1) JP3628372B2 (ja)
AT (1) ATE176063T1 (ja)
DE (1) DE69507360T2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012048519A (ja) * 2010-08-27 2012-03-08 Research Organization Of Information & Systems Lsi演算装置及びその故障検出方法
US8527682B2 (en) 2008-08-22 2013-09-03 Mitsubishi Electric Corporation Bus controller, bus communication system, and bus control method

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2740238B1 (fr) * 1995-10-19 1997-12-05 Sgs Thomson Microelectronics Cellule integrable ddc dediee a un microprocesseur
US5768619A (en) * 1996-02-16 1998-06-16 Advanced Micro Devices, Inc. Method and system for enabling and disabling functions in a peripheral device for a processor system
US6000043A (en) * 1996-06-28 1999-12-07 Intel Corporation Method and apparatus for management of peripheral devices coupled to a bus
US6122256A (en) * 1997-08-18 2000-09-19 International Business Machines Corporation Fail-safe communications network for use in system power control
JP3638769B2 (ja) * 1997-12-01 2005-04-13 株式会社ルネサステクノロジ 通信制御装置
US6085278A (en) * 1998-06-02 2000-07-04 Adaptec, Inc. Communications interface adapter for a computer system including posting of system interrupt status
US6449709B1 (en) 1998-06-02 2002-09-10 Adaptec, Inc. Fast stack save and restore system and method
US6256753B1 (en) * 1998-06-30 2001-07-03 Sun Microsystems, Inc. Bus error handling in a computer system
US6189117B1 (en) 1998-08-18 2001-02-13 International Business Machines Corporation Error handling between a processor and a system managed by the processor
US6470463B1 (en) * 1999-03-29 2002-10-22 Inventec Corporation Method and apparatus for testing integrity of data transfer of a hardware
EP1257917A4 (en) * 1999-04-07 2004-11-10 Cradle Technologies GLOBAL BUS-SYNCHRONOUS CONFIRMATION OF A TRANSACTION WITH DETECTION OF THE ERROR OF A REPLY
US6701398B1 (en) 1999-04-07 2004-03-02 Cradle Technologies, Inc. Global bus synchronous transaction acknowledge with nonresponse detection
KR100429267B1 (ko) * 2001-11-27 2004-04-29 엘지전자 주식회사 외부기기 전송 인식 오류 처리장치와 방법
US7200781B2 (en) * 2003-05-14 2007-04-03 Hewlett-Packard Development Company, L.P. Detecting and diagnosing a malfunctioning host coupled to a communications bus
US7676621B2 (en) 2003-09-12 2010-03-09 Hewlett-Packard Development Company, L.P. Communications bus transceiver
WO2005104727A2 (en) * 2004-04-28 2005-11-10 Emc Corporation Proactive transfer ready resource management in storage area networks
US7484058B2 (en) * 2004-04-28 2009-01-27 Emc Corporation Reactive deadlock management in storage area networks
US7308617B2 (en) 2004-06-17 2007-12-11 International Business Machines Corporation Apparatus, system, and method for automatically freeing a server resource locked awaiting a failed acknowledgement from a client
TWI311705B (en) * 2005-05-23 2009-07-01 Via Tech Inc Peripheral component interconnect express and changing method of link power states thereof
US7747897B2 (en) * 2005-11-18 2010-06-29 Intel Corporation Method and apparatus for lockstep processing on a fixed-latency interconnect
US7739404B2 (en) * 2006-05-03 2010-06-15 Avaya Inc. Scalable methods for distributing routing information to border gateway protocol (BGP) devices
DE102010003538A1 (de) * 2010-03-31 2011-10-06 Robert Bosch Gmbh Verfahren zur Überprüfung von Signal- und Modulaktivitäten in einem Timermodul und Timermodul
EP2829986B1 (en) * 2013-05-20 2017-07-12 Huawei Technologies Co., Ltd. Computer system, access method and apparatus for peripheral component interconnect express endpoint devices
US9165531B2 (en) 2013-05-27 2015-10-20 Google Technology Holdings LLC System for detecting display driver error when failing to receive a synchronization signal and method thereof
US9843436B2 (en) * 2015-06-27 2017-12-12 Intel Corporation Flexible interconnect architecture

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4069510A (en) * 1974-10-30 1978-01-17 Motorola, Inc. Interrupt status register for interface adaptor chip
US4159516A (en) * 1976-03-23 1979-06-26 Texas Instruments Incorporated Input/output controller having selectable timing and maskable interrupt generation
US4535404A (en) * 1982-04-29 1985-08-13 Honeywell Information Systems Inc. Method and apparatus for addressing a peripheral interface by mapping into memory address space
JPS60178561A (ja) * 1984-02-24 1985-09-12 Sharp Corp 標準デイジタル・インタ−フエイス装置
US4872110A (en) * 1987-09-03 1989-10-03 Bull Hn Information Systems Inc. Storage of input/output command timeout and acknowledge responses
US5075874A (en) * 1989-04-10 1991-12-24 Eastman Kodak Company Communications interface for computer output printer
US5159684A (en) * 1989-05-24 1992-10-27 Pitney Bowes Inc. Data communication interface integrated circuit with data-echoing and non-echoing communication modes
US5325529A (en) * 1990-05-18 1994-06-28 Compaq Computer Corporation External boot information loading of a personal computer

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8527682B2 (en) 2008-08-22 2013-09-03 Mitsubishi Electric Corporation Bus controller, bus communication system, and bus control method
JP2012048519A (ja) * 2010-08-27 2012-03-08 Research Organization Of Information & Systems Lsi演算装置及びその故障検出方法

Also Published As

Publication number Publication date
US5666559A (en) 1997-09-09
EP0676696B1 (en) 1999-01-20
ATE176063T1 (de) 1999-02-15
DE69507360D1 (de) 1999-03-04
EP0676696A1 (en) 1995-10-11
JP3628372B2 (ja) 2005-03-09
DE69507360T2 (de) 1999-06-17

Similar Documents

Publication Publication Date Title
JP3628372B2 (ja) コンピュータシステム、コンピュータシステムに周辺装置をインタフェースさせるための並列ポート回路、およびその動作方法
JP2579435B2 (ja) マルチプル・バス・システムにおけるエラー検知及び回復機構とその方法
US6223299B1 (en) Enhanced error handling for I/O load/store operations to a PCI device via bad parity or zero byte enables
US5898861A (en) Transparent keyboard hot plug
US5790895A (en) Modem sharing
US5802269A (en) Method and apparatus for power management of distributed direct memory access (DDMA) devices
US5918028A (en) Apparatus and method for smart host bus adapter for personal computer cards
US5491793A (en) Debug support in a processor chip
US5325490A (en) Method and apparatus for replacement of an original microprocessor with a replacement microprocessor in a computer system having a numeric processor extension
EP0795157A1 (en) Bridge between two buses
US6678838B1 (en) Method to track master contribution information in a write buffer
US6584573B1 (en) Placing a computer system into a sleeping state
US8370556B2 (en) Multi-core data processor
US6625683B1 (en) Automatic early PCI transaction retry
US6012114A (en) System for preventing software of a computer system from interacting with a connector to avoid data corruption due to surprise removal of a circuit card
JP2000076178A (ja) ブロック・モ―ドで動作する装置間の、通信リンクによるバ―スト・モ―ド・デ―タ転送の自動化制御
US5931930A (en) Processor that indicates system bus ownership in an upgradable multiprocessor computer system
EP0278263B1 (en) Multiple bus DMA controller
KR970002400B1 (ko) 다중프로세서 인터럽트 요청기에서의 인터럽트 송신 및 완료 제어방법(Control scheme of interrupt go and done in a multiprocessor interrupt requester)
JPH1069454A (ja) コンピュータ・システム・バス上でスレーブdmaエミュレーションを行う装置
KR20000032809A (ko) 단일 신호 인터럽트 방식의 프로세서를 위한인터럽트 응답 제어기 및 그 제어 방법
JPH04148430A (ja) エミュレータにおけるタイムアウト制御方式
JPH05210623A (ja) マイクロプロセッサ及びデータ処理装置
JPS62295159A (ja) デ−タ転送方式
JPH0232446A (ja) バス制御方式

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040420

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040427

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20040726

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20040729

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041020

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20041116

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041208

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071217

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081217

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091217

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees