JPH077377B2 - ストローブ信号の分離タイミングを保証するための装置および方法 - Google Patents

ストローブ信号の分離タイミングを保証するための装置および方法

Info

Publication number
JPH077377B2
JPH077377B2 JP2275077A JP27507790A JPH077377B2 JP H077377 B2 JPH077377 B2 JP H077377B2 JP 2275077 A JP2275077 A JP 2275077A JP 27507790 A JP27507790 A JP 27507790A JP H077377 B2 JPH077377 B2 JP H077377B2
Authority
JP
Japan
Prior art keywords
command
signal
peripheral device
interface
mpu
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
Application number
JP2275077A
Other languages
English (en)
Other versions
JPH03160548A (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 JPH03160548A publication Critical patent/JPH03160548A/ja
Publication of JPH077377B2 publication Critical patent/JPH077377B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • 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/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
    • G06F13/4226Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus with asynchronous protocol

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Information Transfer Systems (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Communication Control (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、コンピュータシステムの設計、より詳しく
は、中央処理装置と、入出力装置および記憶装置などの
周辺装置とのインタフェーシングに関する。
〔従来の技術〕
コンピュータシステムでは、通常、マイクロプロセッサ
(MPU)などの中央処理装置と、周辺装置との間の通信
は、データ転送サイクルに関係して行われる。MPUと周
辺装置とのインタフェースをとる際には、タイミングが
重要な検討事項である。2つの決定的なタイミングパラ
メータの例は、読取りおよび書込みアクセス時間であ
る。これらは、内部アドレスデコーダが正しいバイトを
メモリに位置づけるために必要とする時間である。これ
らのアクセス時間に適応するために、公称転送サイクル
の待ち状態部分を作ることが公知である。また、一般
に、個々の周辺装置が利用可能な必要なアクセス時間を
持てるように、転送サイクルに付加的な待ち時間を挿入
するために、MPUと周辺装置間のハンドシェークプロト
コルが使用されている。そのために、ほとんどのMPU
は、非活動状態にある時に、連続状態の一定の最大数ま
で転送サイクルに待ち状態を加える働きをするREADY入
力を含んでいる。
他のタイミングパラメータは、当然、転送サイクルにお
けるMPUと周辺装置間のデータ転送に関係している。し
かし、従来、これらの他のタイミングパラメータは大部
分、特別の考慮を必要としていなかった。それらが通
常、転送サイクルの公称時間間隔と同じ大きさの程度で
はなかったからである。従って、これらのパラメータの
侵害を防止するために特別の注意を必要としていなかっ
た。
しかし、周辺装置が、転送サイクルと同じ大きさの程度
であるタイミングパラメータによって特徴づけられるよ
うな、特殊な状況が存在する。例えば、IBMパーソナル
コンピュータ/2のモデル50、60または80のビデオサブシ
ステムでは、ディジタル/アナログコンバータ(DAC)
は、ディジタル/アナログ変換が行われる前に8ビット
ピクセル値が6ビットの赤色、緑色および青色成分に変
換されるようにするカラールックアップテーブル(CLU
T)を含んでおり、可能な256Kの色のうち最大256色を表
示することを可能にしている。CLUTは、一定の入出力
(I/O)アドレスに対して書込み/読取りコマンドを実
行することによってMPUとの間で読み書きできる。ビデ
オDACのタイミングパラメータの1つは、先行する読取
り/書込みストローブ信号の立下がり区間の後、どれほ
ど早く読取り/書込みストローブ信号の立上がり区間が
生じることができるかに関して制限を加える。このタイ
ミングパラメータは、ピクセルの流れとシステムクロッ
クとの間の非同期関係に関連している。読取り/書込み
コマンドにおいてピクセルの流れが混乱されないように
するために、このタイミングパラメータは、1信号の立
下がり区間とその次の信号の立上がり区間との最小の分
離として、最大6ピクセル(ドット)クロック(例え
ば、480ナノ秒)を必要とする。
〔発明が解決しようとする課題〕
ますます高速化するマイクロプロセッサによって、命令
/転送サイクル時間は急激に短縮されている。こうした
高まるマイクロプロセッサの速度によって、前述のビデ
オDACなどの周辺装置のタイミングパラメータは、ソフ
トウェア上の遅延が連続する転送サイクル間に挿入され
ない限り、侵害される。しかし、こうしたソフトウェア
上の遅延は、マシン速度が増大し続け、オペレーティン
グシステムがより高速化するにつれて、有効であり続け
るとは思われない。
本発明の第1の目的は、現用のソフトウェアと、そのソ
フトウェアについて本来設計されたハードウェアのシス
テムクロックよりも著しく高速で進行するシステムクロ
ックを有する新しいハードウェアとの間の互換正を保証
することである。また、これに関連する目的は、中央処
理装置(CPU)と周辺装置との相対速度に関する考慮を
要せずにプログラムできるコンピュータシステムを提供
することである。
本発明の第2の目的は、コンピュータシステムのCPU
が、低速の周辺装置と信頼をもって通信することを保証
しながら、その最高速度で作動することを可能にするこ
とである。
本発明の第3の目的は、CPUと周辺装置との間の通信速
度を、その装置のタイミングパラメータ(コマンド予充
電時間など)を侵害せずに最適化することである。さら
にこれに関連する目的は、周辺装置のタイミングパラメ
ータの侵害を防止するために必要な場合にのみ、CPUの
命令サイクルを減速させるコンピュータシステムの装置
を提供することである。
本発明の第4の目的は、CPUの公称命令サイクルを、低
速のCPUまたはプログラムによる遅延を有するソフトウ
ェアに対して性能上の不利益を負わせずに、選択的に延
長することである。
〔課題を解決するための手段〕
前述の目的に従って、中央処理装置(CPU)からの信号
を受信するための1以上の入力を有する周辺装置におい
て、本発明は、いずれの2の連続信号が必ず既定の時間
間隔で分離されるような入力に周辺装置への信号を波形
整形するための、CPUから独立した装置および方法を提
供する。信号を分離することによって、第2の信号は、
第1の信号の処理が完了するまで受信されず、それによ
り周辺装置の仕様はその入力への連続信号の発生によっ
て侵害されないようになる。入力信号を波形整形するこ
とによって、既定の時間間隔内にCPUにより生成された
周辺装置への第2の信号は、効果的に遅延され、既定の
時間間隔の終了後に周辺装置によって受信される。第2
の信号の遅延された受信を考慮するために、本発明の装
置はまた、既定の時間間隔中のCPUによる周辺装置への
信号の提示を感知し、それに応答して、周辺装置による
信号の遅延された受信に適応するために第2の信号に関
する命令/転送サイクルを延長するように周辺装置に命
令するCPUのための信号を生成することも行う。上述の
ようにして、CPUは、周辺装置で恐らく未知の状態を生
じさせる実際条件の発生(すなわち、近すぎる連続信
号)に応答してのみ減速される。
好ましくは、本発明の装置および方法は、第2の信号に
関する命令/転送サイクルを、周辺装置によって受信さ
れている信号の遅延にほぼ等しい量だけ延長する。これ
に関して、遅延はシステムクロックに対して非同期であ
るので、延長されたサイクルもやはり非同期である。
さらに詳しくいえば、本発明は、CPUと周辺装置との間
のインタフェースであって、CPUからの読取り/書込み
ストローブ信号を受信し、その信号を計測された方法
で、すなわち連続する信号が最小限の既定の時間間隔で
分離されて、周辺装置に渡すためのゲートを有すること
を特徴とするインタフェースを提供する。ゲートは、こ
の機能を、ゲートを通って周辺装置への第1の読取り/
書込みストローブ信号の通過後の既定の時間の間ゲート
を使用禁止にする第1群の回路と協同して行う。インタ
フェースの第2群の回路は、ゲートが使用禁止にされて
いる時間における第2の読取り/書込みストローブ信号
を感知し、それに応答して、第2の読取り/書込みスト
ローブ信号に関する命令/転送サイクルを延長するよう
にMPUに命令するための待機信号をCPUに送る。
本発明の装置および方法は、周辺装置のタイミングパラ
メータが侵害されないように、必要な場合かつ必要な量
だけ命令/転送サイクルを延長する。命令および/また
は転送サイクルの信頼できる完了を保証しながら、本発
明はまた、CPUがその最高速度で実行することを可能と
し、必要な場合にのみ、サイクルの実行を減速させる。
タイミングパラメータが信号されないように要求される
場合にのみサイクルが延長されるので、低速のCPUには
いかなる性能上の不利益も負わされない。同様に、プロ
グラムによる遅延を含むソフトウェアも不利益を受けな
い。
好ましい実施例において、出願人は、本発明をパーソナ
ルコンピュータのビデオサブシステムで利用する。より
詳しくは、以下に図示し詳細に説明する好ましい実施例
は、パーソナルコンピュータのマイクロプロセッサ(MP
U)とビデオディジタル/アナログコンバータ(CAC)と
の間にインタフェースを付与するために、ビデオサブシ
ステムのビデオインタフェースにおいて本発明を具体化
している。前述のように、ビデオDACのタイミングパラ
メータは、第1の読取り/書込みストローブ信号の立下
がり区間と、その次の読取り/書込みストローブ信号の
立上がり区間との間に最小限の分離時間を要求する。こ
の好ましい実施例において本発明は、パラメータの侵害
を避けるために必要な場合にビデオDACとMPUとの間で転
送サイクルを延長しながら、このパラメータが満たされ
ることを保証する。
出願人は以下でビデオシステムにおいてその発明を説明
するが、本発明がさらに広範な用途を有しており、ビデ
オサブシステムのみに限定されないものであることは、
コンピュータシステム、特に周辺装置とCPU間のインタ
フェースの設計当業者にとって理解評価されるであろ
う。
〔実施例〕
まず、第1図、第2A図および第2B図について説明する。
コンピュータシステムは、ビデオインタフェース11、ビ
ットマップメモリ13、ビデオディジタル/アナログコン
バータ(DAC)15および、当然ながら、カラー陰極線管
(CRT)17などのラスタ走査表示装置を有する例示的な
ビデオサブシステムを組み入れて示されている。従来の
方法では、システム制御マイクロプロセッサ(MPU)19
となっている中央処理装置は、トライステートシステム
バス21によってビデオサブシステムと通信する。このト
ライステートシステムバス21は、公知の設計のバスイン
タフェース23によってビデオサブシステムに接続されて
いる。バスインタフェース23からは、アドレスバス25お
よびデータバス27がそれぞれ、さらに制御線29がビデオ
インタフェース11およびビデオDAC15に付与されてい
る。ビデオインタフェース11およびビデオDAC15内に
は、以下に詳述するようにMPU19によって読み書きされ
るレジスタがある。
ビデオDAC15は、走査シーケンス用のピクセル値を格納
するビットマップメモリ13から得られる一連のピクセル
値に応答して、カラーCRT17への各カラー入力について
の電気信号値を生成するカラーグラフィックスコントロ
ーラである。ビデオDAC15は、ピクセルクロック(PIXEL
CK)によって決定されるピクセル周波数でビデオイン
タフェース11を介してビットマップメモリ13から8ビッ
トピクセルバス33で8ビットピクセル値P0〜P7を受信す
るように配列されている、カラールックアップテーブル
(CLUT)31を含んでいる。CLUT31および1群のディジタ
ル/アナログコンバータ(DAC)35は、そのピクセル値
を、カラーCRT17の赤色、青色および緑色電子銃にそれ
ぞれ接続されている出力線37、39および41のアナログ電
気信号に変換する。CLUT31は、ビットマップメモリ13か
ら受信された各ピクセル値についてのカラー値を探索す
るために使用されるRAMメモリを含んでいる。言い換え
れば、ピクセルの内容は、ビデオDAC15のDAC35を直接駆
動するのではなく、CLUT31に格納されたカラーデータに
ついてのアドレスである。MPU19は、ビットマップメモ
リ13に含まれる256の可能なピクセル値のそれぞれにつ
いてCLUT31に格納されたカラー値を制御する。
ピクセルデータからのアナログカラー信号の生成につい
て詳述すれば、ビデオDAC15のCLUT31は、256のアドレス
可能位置を有しており、そのそれぞれがカラー値を表す
18ビットワードを保持している。ピクセル値は、ピクセ
ルクロックによって決定されるピクセル周波数でピクセ
ルバス33に出力される。各ピクセス値は、ピクセルラッ
チ42に格納され、CLUT31の256カラー値位置へのアドレ
スとして使用される、8ビットピクセルワードである。
各ピクセル値は、18ビット長データ値をCLUT31からデコ
ーダ45へのバス43に出力させる。この18ビットデータ値
は、それぞれが赤、青、力の輝度値を表す6ビット3組
から成っており、デコーダ45を経てDAC35の対応するDAC
に入力される。従って、データ値の18ビットは、赤、
青、緑のカラー輝度値の262,144通りの組合せのいずれ
かを指示することができる。このようにして、各ピクセ
ル値は、CLUT31に保持された256のカラー値の一つを選
択する。ビデオDAC15のタイミングジェネレータ47は、
アナログ出力信号が同一のピクセル周波数で線37、39お
よび41に出力されるようにCLUT31、デコーダ45およびDA
C35のタイミング動作を制御する。また、ビデオインタ
フェース11からの従来のBLANK信号は、DAC35に対して、
CRTのラスタのリトレース中に各自の出力をゼロにさせ
る。
使用できる色の可能な組合せの数を十分に活用するため
に、MPU19は、MPUインタフェース49を用いて、データバ
ス27を介してFLUT31の1以上の記憶場所に異なるカラー
値を書き込むことができる。このようにして、CLUT31の
256の記憶場所は、MPU19およびMPUインタフェース49を
用いて、各組合せが262,144の異なる色の組合せの一つ
である、赤、青、緑の256通りの異なる組合せを選択す
ることができるカラーパレットを形成するために使用で
きる。MPU19はまた、CLUT31から異なるカラー値を読み
取ることもできる。このようにして、一つのパレットは
瞬時に別のパレットに置き換えられ、その後第1のパレ
ットが復元されるということも可能である。このような
パレットデータの転送は、通常、画面イメージの制御が
実行中のプログラム間で転送される際に、マルチタスキ
ング環境で生じる。必ずしもすべての現在利用可能なビ
デオDACがCLUT31からの読取り能力を備えているわけで
はない。この点、出願人は、CLUTとの間でデータの読取
りおよび書込みの両方が可能であることから、INMOSコ
ーポレーション(P.O.Box 16000,Colorado Springs,Col
orado 80936)製のIMS−G 171ビデオDACを採用した。
高ピクセル周波数で動作させるために、前記のINMOS製
ビデオDACの高速サイクル時間は、CLUT31のアドレスデ
コーディングおよびCLUTのメモリセルとの間でのデータ
の読み書きがそれぞれ、2ピクセルクロックサイクルで
の多段動作として完了するように、パイプライン化デー
タアクセス技法を用いて得られている。図示されたビデ
オDAC15において、MPUインタフェース49は、ビデオDAC
とMPU19との間の通信を容易にし、パイプラインピクセ
ルクロックに対して全体的に非同期となっている。
INMOS製ビデオDACの内部では、第2B図に図示したよう
に、ビットマップメモリ13からのピクセルバス33をCLUT
31に接続する8ビットアドレスバス51は、CLUTとMPU19
との間の読み書き転送サイクルのための8ビットアドレ
スを与える、MPUインタフェース49からのアドレスバス5
3と結合されている。アドレスバス51のピクセル値に応
答して、CLUT31は、アクセスされたメモリセルの記憶状
態を判断する。または、バス53のアドレスによって識別
されるCLUT31のメモリセルは、MPUインタフェース49を
介してMPU19によって読み書きされることもできる。
メモリセルとの間のアドレスの読み書きについて詳述す
れば、ビデオDAC15のMPU19およびMPUインタフェース49
は、データバス27(第1図)およびビデオインタフェー
ス11によって通信を行う。ビデオインタフェース11は、
第1図に示すステータス制御線S0およびS1、コマンド制
御線CMD、RESET制御線などの従来の制御線を受信し、ビ
デオDAC15のMPUインタフェース49にそれぞれ送られる読
取りストローブ信号DACIORおよび書込みストローブ信号
DACIOWを送信する。
DACIOWストローブ信号コマンドが生成されると、MPUイ
ンタフェース49は、データバス27の8のデータ線D0〜D7
で、アドレス位置および、赤、青、緑のカラー値を表す
4の連続する8ビットバイトを受信する。この4バイト
が内部レジスタ(図示せず)にロードされると、MPUイ
ンタフェース49は、新しいパイプライン化ピクセルサイ
クルの開始時に、指示されたアドレスで書込み動作が実
行されるようにカラーデータの転送を制御する。
さらに詳しく言えば、CLUT31に格納された色を変更する
ことは、読取りおよび/または書込み転送サイクルが多
数の転送サイクルを含むことを必要とする多段プロセス
である。最初に、ビデオDAC15が書込みモードにある(S
0+S1=IOW=0)間に、開始ピクセルアドレスが指定さ
れなければならない。MPUインタフェース49は、アドレ
スバス25の2最下位ビット55によって識別されるピクセ
ルアドレスレジスタにそのアドレスを格納する。赤、
青、緑のカラー定義データに関する後続の3の個別デー
タワードは、やはりビット55によって識別されるカラー
値レジスタに集められ、18ビットワードに結合される。
その後、MPUインタフェース49は、そのアドレスレジス
タのデータをアドレスバスに出すことによって変更され
るメモリセルを指定し、その18ビット結合ワードを、ピ
クセルクロックと同期させて18ビットデータバス57に転
送する。
第3A図から第3D図は、MPU19がCLUT31との関でデータを
読み書きする際に生じ得る4通りの可能なタイミング状
況を示す。第3A図および第3B図は、いずれかの後続する
転送サイクルの読取り/書込みストローブ信号が続く書
込み命令を示し、第3C図および第3D図は、読取り命令に
ついての同様の図を示す。詳しくは、第3A図では、書込
み命令は、4の書込み転送サイクルから成り、MPU19と
ビデオDAC15との間のいずれかの形式の転送サイクルか
らの書込みストローブ信号が続いている。第3B図では、
書込み命令はいずれかの形式の読取り転送サイクルから
の読取りストローブ信号が続いている。同様に、第3C図
の読取り命令は、1書込み転送サイクルおよび3の読取
り転送サイクルから成り、MPU19とビデオDAC15との間の
いずれかの形式の転送サイクルが続いており、第3D図
は、読取り命令を伴ういずれかの形式の書込み転送サイ
クルを示す。最後に、第3E図は、読取りまたは書込みい
ずれかの命令におけるデータバス27のデータ線D0〜D7の
ステータスを示す。アドレスデータは、読取りおよび書
込み命令についての書込みサイクルである、第1の転送
サイクルにおいてMPU19によりデータ線D0〜D7に転送さ
れる。次に、カラーデータが3連続バイトでデータ線D0
〜D7上に続く。この3のカラーバイトのそれぞれは、最
初の書込み転送サイクルを伴う3の書込みまたは読取り
転送サイクルに関係する。カラーバイトは、読取りまた
は書込み命令が実行中であるかどうかに応じて、MPU19
またはビデオDAC15のいずれかによってデータ線に置か
れる。
第3A図について詳しく説明する。ビデオDAC15への4の
書込み転送サイクルは、CLUTのアドレス位置をMPUイン
タフェース49のピクセルアドレスレジスタ(図示せず)
に書き込ませ、赤、緑、青の3組のカラーデータをカラ
ー値レジスタ(図示せず)に書き込ませる。表1からわ
かるように、第3A図の書込み命令における各書込み信号
の立下がり区間は、後続の書込みストローブ信号の立上
がり区間とWHWL1の量だけ分離されていなければならな
い。表1は、この量が3ピクセルクロック間隔以上でな
ければならないことを示している。このタイミング条件
は、CRT画像を乱さずに、カラーCRT17へのピクセル情報
の流れに関して非同期である転送サイクルの実行を可能
にする。第3A図はまた、青カラーデータの書込み信号の
立上がり区間と、いずれかの後続する命令の書込み信号
の立下がり区間との間のタイミングパラメータを示して
いる。このタイミングパラメータは、WHWL2と指示され
ており、表1に示すように、6ピクセルクロックサイク
ル以上でなければならない。
第3A図と同様に、第3B図は、CLUT31に対する書込み命令
を実行ための一連の書込みストローブ信号を示す。ただ
し、第3A図と異なり、新しいカラーデータをCLUT31に転
送するための最後の書込み信号の立上がり区間は、ビデ
オDAC15に対するいずれかの形式の後続命令における読
取りストローブ信号の立下がり区間が続いている。この
最後の書込みストローブ信号の立上がり区間と読取りス
トローブ信号の立下がり区間との間には最小限の時間間
隔があり、第3B図ではWHRL1と指示されている。表1か
ら、このタイミングパラメータは6ピクセルクロックサ
イクル以上でなければならないことがわかる。
第3C図は、CLUT31からメモリセル位置を読み取るための
読取り命令の4転送サイクルに関係する一連の書込みお
よび読取り信号を示している。3の異なるタイミングパ
ラメータが示されている。初めに、読み取られるアドレ
スの書込み信号と、赤カラーデータの第1の読取りスト
ローブ信号との間の分離WHRL2は、表1に示す通り3ピ
クセルクロックサイクルである。カラーデータを読み取
るための読取り信号間の分離RHRL1は、3ピクセルクロ
ックパルスである。最後に、最後のカラー読取り信号の
立下がり区間とビデオDAC15に対するいずれかの形式の
後続命令からの読取りストローブ信号の立下がり区間と
の間の最小時間は、RHRL2で指示されており、表1によ
れば、6ピクセルクロックサイクルの最小値を持つ。
第3D図は、第3C図に示したビデオDAC15に対する同様の
読取り命令を示している。ただし、最後のカラー読取り
ストローブ信号の立下がり区間に続くタイミングパラメ
ータRHWLは、最後のカラー読取り信号の立下がり区間の
後のいずれかの書込みストローブ信号の立上がり区間
が、表1に示す通り、6ピクセルクロックサイクル以上
で分離されなければならないことを示している。
ビデオインタフェース11についてみれば、その主要構成
要素を含む第2A図に示されている。設計は、大部分、従
来通りであり、IBMパーソナルシステム/2モデル50およ
び60にみられるIBMビデオグラフィックスアレイ(VGA)
とほぼ同一である。このビデオインタフェースは、図示
の通り、CRTコントローラ61、シーケンス63、グラフィ
ックスコントローラ65、属性コントローラ67および、ア
ドレスデコーダ68と制御論理69といった5の主要構成要
素を有している。CRTコントローラ61は、水平および垂
直同期タイミング(HSYNC、VSYNCおよびBLANK)ならび
に、ビットマップメモリ13のダイナミックRAMへのアド
レスバス72によるリフレッシュアドレッシングを行う。
当業において公知の方法によって、ビットマップメモリ
13は、4のビットプレーンマップ0〜3に分割される。
MAP0は青色ビットプレーン、MAP1は緑色ビットプレー
ン、MAP2は赤色ビットプレーン、MAP3は輝度ビットプレ
ーンである。ビットマップメモリ13との間の読み書きの
ために、マルチプレクサ(MUX)74によってアドレスバ
ス25からデータが読み取られ、マップ0〜3へのアドレ
スバス76および78に送られる。または、通常アクティブ
表示時間において、CRTコントローラ61からのアドレス
データがバス72およびMUX74を介してアドレスバス76お
よび78に送られる。
シーケンス63は、ビットマップメモリ13の基本メモリタ
イミングおよび、再生メモリフェッチを制御するための
ピクセルクロックを生成する。これはまた、表示メモリ
サイクル間に周期的に専用のMPUサイクルを挿入するこ
とにより、アクティブ表示間隔において、MPU19がビッ
トマップメモリ13にアクセスできるようにしている。
グラフィックコントローラ65は、ビットマップメモリ13
に含まれるビデオデータと、1)アクティブ表示時間に
おいては属性コントローラ67との、2)ビットマップメ
モリ13に対する読取り/書込み命令の実行中にはMPU19
との間のインタフェースである。表示時間中には、デー
タバス71、73、75および77からのビデオデータ(MAP0、
MAP1、MAP2およびMAP3)は、グラフィックスコントロー
ラ65にラッチされ、データバス79によって属性コントロ
ーラ67に送られる。MPU19がビデオデータを読み書きす
る場合、グラフィックスコントローラ65は、データがビ
ットマップメモリ13またはシステムデータバス21に到達
する前に、データについて論理演算を行う。属性コント
ローラ67は、グラフィックスコントローラ65を介してビ
ットマップメモリ13からのデータを取り込み、CRT17の
表示画面での表示のためにデータをフォーマットする。
入力データは、8ビット出力ディジタルカラー値または
ピクセルに変換され、前述の通りCLUT31へのアドレスと
して使用される場合、ビデオDAC15へピクセルデータP0
〜P7を送る8ビットピクセルバス33に送り出される。
MPU19がビデオDAC15との間で読み書きするために、DAC
アドレスはアドレスデコーダ68でデコードされ、DAC A
DDRESS信号が制御論理69およびインタフェース83に供給
される。読取り/書込み信号を生成し、データの流れを
制御するために、制御線29の制御信号は制御論理69でビ
デオインタフェース11によって受信される。従来の方法
では、読取り信号IORまたは書込み信号IOWは、線S0およ
びS1上のステータスストローブ信号、線CMD上のコマン
ドストローブ信号などの制御線の信号に応答して、ビデ
オインタフェース11によって生成される。
前述のIBM VGAなどの現用のビデオインタフェースで
は、IOWおよびIOR信号は、ビデオDAC15の読取りおよび
書込み入力に直接入力される。しかし、第3A図〜第3D図
および表1に関連して述べたように、ビデオDAC15への
連続する読取り/書込みストローブ信号は、1信号の立
上がり区間が次の信号の立下がり区間にどれだけ接近し
て続いているかに関する一定のタイミング条件を満たさ
なければならない。一般に、これらのタイミング条件
は、先行する読取り/書込みストローブ信号の受信後に
読取り/書込みストローブ信号を受信するために装置が
要求する時間である、ビデオDAC15の予充電時間に関係
している。これらのタイミング要求は、これまで、少な
くとも数マシンサイクルが読取り/書込み命令における
連続する転送サイクルを分離するようにソフトウェア上
の遅延を挿入することによって満たされてきた。しか
し、こうしたソフトウェア上の遅延は、増大し続けるプ
ロセッサ速度を考慮して移植性を保証しておらず、実
際、そのようなソフトウェア上の遅延された読取り/書
込み命令が高速のコンピュータシステムおよび/または
高性能オペレーティングシステムによって実行される場
合、必要なタイミング分離を維持できないと思われる。
本発明に従えば、ビデオインタフェース11の制御論理69
は、制御回路とビデオDAC15への読取り/書込み入力と
の間に置かれた、ビデオDAC15が読取り/書込みストロ
ーブ信号を受信した後に既定の時間だけその入力をマス
クするためのインタフェース回路83によって補完されて
いる。この入力をマスクすることによって、本発明は、
第3図および表1のタイミングパラメータが侵害されな
いことを保証する。ビデオDAC15への2の読取り/書込
みストローブ信号(IORまたはIOW)が、第1の読取り/
書込みストローブ信号の受信後にビデオDACへの読取り
/書込み入力がマスクされている間に生成された場合、
本発明に従ったインタフェース回路83は制御論理69にDA
C WAIT信号を送信する。このDAC WAIT信号に応答し
て、制御論理69は、従来の方法でMPU19のREADY入力に接
続されているREADY線を解除し、それによってその信号
をイナクティブにさせ、MPUに第2の読取り/書込みス
トローブ信号に関係する転送サイクルに待ち状態を挿入
させる。
第4A図〜第4C図について説明する。例示する命令は、3
の転送サイクルから成って示されている。本発明に従え
ば、第2の転送サイクルが第1の転送サイクルに近すぎ
て続いた場合、第2の転送サイクルは、その転送サイク
ルの公称時間間隔T1に対し延長された時間間隔で実行さ
れる。「公称転送サイクル」という語は、転送を実行す
るために必要な最小数のマシンサイクルだけを有する転
送サイクルについての近似時間間隔を定義するものであ
る。第4A図〜第4C図に図示した各転送サイクルの後に、
公称時間間隔T1とともに受け取られた場合に、命令を受
信する周辺装置によって要求される応答時間に対応する
近似時間間隔T2を示すための斜線領域がある。例えば、
第3A図〜第3E図に示されたタイミングパラメータを有す
るビデオDAC15では、時間間隔T2は、読取り/書込みス
トローブ信号の終了が転送サイクルの終了にほぼ一致す
ると仮定して、1読取り/書込みストローブ信号の終了
と次の読取り/書込みストローブ信号の開始との間にビ
デオDACが予充電するための必要な時間である。MPU19
は、第4A図〜第4C図の第1の転送サイクルのそれぞれに
よって略示されたように、公称転送サイクルT1の終了時
に別の転送サイクル(無関係な命令の場合もある)を実
行するために開放されているが、周辺装置の有効転送サ
イクルは、周辺装置がその応答を完了するために時間T2
を必要とするので、T1+T2である。
命令の転送サイクル全部がそれぞれ、第4A図の命令によ
って提示されたような比較的大きい時間間隔で分離され
た場合、各転送サイクルは公称転送サイクルで特徴づけ
られ、それによってMPU19はその最適速度で命令を実行
できる。連続する転送サイクルが第4B図の第1および第
2の転送サイクルのように接近した間隔となっている場
合、MPU19は、周辺装置が命令に応答するための十分な
時間を持てるようにするために第2の転送サイクルを延
長することによって事実上減速される。特に第4B図で
は、第2の転送サイクルは、第1の転送サイクルの終了
後、時間X後(XはT2未満である)に開始する。周辺装
置が第1の転送サイクルに応答するために必要とする十
分な時間T3を持てるように、本発明は、既定の時間読取
り/書込み入力をマスクすることによって第2の転送サ
イクルを効果的に遅らせ、また、この遅延を補償するた
めに第2の転送サイクルを延長する。
第4B図の延長サイクルと同様、第4C図の命令における第
2の転送サイクルは、ほとんど第1の公称転送サイクル
の完了直後に開始するので、延長される。本発明に従え
ば、延長転送サイクルは、転送サイクルの第1の部分に
おける実行での遅延を補償するために必要な量だけ延長
される。従って、延長転送サイクルには、最小数の待ち
状態マシンサイクルしか挿入されない。そのため、シス
テムのスループットは本発明によってほとんど影響を受
けない。第4B図および第4C図の第2の転送サイクルおよ
び延長転送サイクルの例では、第4B図の第2の転送サイ
クルな必要な遅延(T2−X)にほぼ等しいマシンサイク
ル数だけ遅延されるにすぎず、第4C図の第2の転送サイ
クルの場合、挿入マシンサイクル数は全時間間隔T2であ
る遅延にほほ一致する。
最後に、第4A図〜第4C図の例示的な命令における考えら
れる連続の転送サイクルを示すために、第4B図および第
4C図の第3の転送サイクルは、第2の転送サイクルおよ
び延長転送サイクルに対して異なる間隔の関係をもって
示されている。詳しくいえば、第4B図の命令の第3の転
送サイクルは、第2および延長転送サイクルの終了後に
時間間隔T2よりも大きい間隔が続いているので、公称時
間間隔によって特徴づけられる。第4B図の命令の第3の
転送サイクルと対照的に、第4C図の命令の第3の転送サ
イクルは、第2および延長転送サイクルの後の時間間隔
T2終了前に開始している。従って、第4C図の命令の第3
の転送サイクルは、第4B図および第4C図の第2の転送サ
イクルと同様に延長される。詳しくいえば、第3の転送
サイクルは、第2の延長された転送サイクルの終了後、
時間間隔Z(ZはT2未満である)後に開始する。第3の
転送サイクルの実行における遅延に適応するために、転
送サイクルは、時間間隔T2−Zにほぼ等しいマシンサイ
クル数だけ延長される。
タイミングパラメータT2は、サイクル自体ではなく、連
続する転送サイクルの連続する読取り/書込み信号を分
離することを目的としているので、低速なCPUも実際
に、サイクルと後続するサイクルの間隔にかかわらず連
続する読取り/書込み信号間に希望の分離時間T2をもた
らす公称転送サイクルを持てることが理解されよう。こ
うしたCPUについて、本発明は、時間T2が転送サイクル
の終了ではなく信号の立下がり区間から計測されるので
あり、サイクルは延長されないために、いかなる不利益
も負わせるものではない。しかし、上述のように、読取
り/書込みストローブ信号の開始および終了は、第4A図
〜第4C図での例示のために、サイクルの開始および終了
に一致するものと仮定してある。
第4A図〜第4C図での略示的な転送サイクルの詳細な検討
からわかるように、命令の全時間間隔は、命令の転送サ
イクル間のオーバラップの厳密な性質にかかわらず、3
(T3)である。具体的にいえば、延長転送サイクルは、
公称転送サイクルT1にオーバラップ時間間隔(第4B図お
よび第4C図におけるT2−X、T2またはT2−Z)を加えた
ものにほぼ等しい。遅延を補償するために必要な程度だ
けサイクルを延長することにより、全命令時間間隔はほ
とんど影響されない。しかし、延長転送サイクルに立下
がり時間間隔T2を加えたものは、前述のように、延長転
送サイクルがシステムクロックに対して非同期であるの
で、公称転送サイクルに立下がり時間間隔T2を加えた時
間間隔T3にほぼ等しいだけである。図面を参照すれば、
第4B図の第2のサイクルは延長され、T1+(T2−X)ま
たはT3−Xにほぼ等しい時間間隔T4を含んでいる。第4C
図の第2のサイクルはT1+T2またはT3にほぼ等しい延長
時間間隔T5を含み、同図の第3サイクルは延長され、T1
+(T2−Z)またはT3−Zにほぼ等しい時間間隔T6を含
んでいる。
従来の方法では、MPU19は、READY信号が再びアクティブ
になるまで待ち状態マシンサイクルを実行することによ
ってREADY線の非活動状態に対応する。これに関して、
第5図の流れ図を説明する。MPU19のマイクロコード
は、ステップAで、この場合ビデオDAC15への読取り/
書込み命令である命令をフェッチする。公称転送サイク
ルは、READY線がイナクティブになっていない限り、ス
テップB、CおよびDに従って実行される。READY線が
イナクティブになると、MPU19はステップEで待ち状態
サイクルを実行し、その後、公称転送サイクルの実行に
復帰する。MPU19は、READY線がアクティブに復帰するま
で、ステップBおよびEのループを実行し続ける。
本発明のインタフェース83(第2A図)の好ましい実施例
の詳細回路図である第6図について説明する。機能上、
インタフェース83は、ビデオDAC15への読取り/書込み
信号IOR/IOWの通過を計測するためのゲート85を含んで
いる。ゲータ85を通るIOR/IOW信号を計測することによ
り、これらの信号はそれぞれ、読取り/書込み信号DACI
OR/DACIOWに波形整形される。ゲート85は2のORゲート8
7および89を含んでいる。ORゲート87および89を選択的
に使用禁止にするための手段91は、バイナリカウンタ9
3、ANDゲート95および97によって与えられている。ORゲ
ート87または89のいずれかの出力で読取り/書込みスト
ローブ信号が検出されると、MASK DAY R/WR線がアク
ティブになり、それによってORゲート87および89を使用
禁止にし、それ以降の読取り/書込みストローブ信号の
通過を防ぐ。
NANDゲート101、D型フリップフロップ103、105および1
07を有するサンプリング・遅延回路99は、読取り/書込
みストローブ信号(IOR/IOW)がビデオDAC15によって受
信された時を指示する信号DAC WAITを出力する。このD
AC WAIT信号は、ANDゲート109を含む待ち状態ジェネレ
ータおよび制御論理69に渡される。連続する読取り/書
込みストローブ信号IOR/IOWが表1の時間間隔よりも大
きい既定の時間間隔で分離されてORゲート87または89に
送られた場合、待ち状態ジェネレータのANDゲート109は
使用禁止のままであり、DAC WAIT信号は、制御論理69
さらに、READY信号としてMPU19に渡されない。しかし、
2の連続する読取り/書込み信号が既定の時間間隔で分
離されていない場合、回路111によってオーバラップが
検出され、ANDゲート109は使用可能となり、DAC WAIT
信号は制御論理69に渡され、この信号はさらに、そのRE
ADY入力にREADY信号としてMPU19に送られる。
ANDゲート109が使用禁止の場合、その出力はローレベル
である。従来の方法では、このローレベルのDAC WAIT
信号は、ビデオDAC15がアドレス指定されている時に、
制御論理69の出力でアクティブのREADY信号に変換す
る。これに関して、制御論理69は、第6図に示すような
ビデオサブシステムの他の装置からの待機信号入力を受
信する。制御論理69の公知の論理は、現在の転送サイク
ルでアドレス指定されている装置のための待機信号だけ
がREADY線を通過することを許可する。
第6図のインタフェースの詳細な動作を第7図のタイミ
ング図に関係して以下に説明する。
PIXEL CLOCK(PX CK)はバイナリカウンタ93のクロッ
ク入力CKによって受信される。ビデオDAC15がアドレス
指定されていない場合、ANDゲート95の出力はイナクテ
ィブであり、従ってバイナリカウンタ93のリセット(RS
T)への否定入力はアクティブに保たれ、カウンタの出
力はリセット状態に保たれる。このリセット状態では、
8番目のカウントを指示する否定出力(8)はANDゲー
ト97を使用可能にする。
バイナリカウンタ93は、リセット状態を解除されている
と、ピクセルクロックパルスをカウントする。8番目の
クロックパルスがカウントされると、ANDゲート97は、
アクティブの8出力が図示されたように反転され、AND
ゲート97への入力のいずれかに論理値ゼロを与えるの
で、事実上使用禁止にされる。
上述のバイナリカウンタ93の動作に留意すれば、転送サ
イクルが開始されると、アドレスデコーダ68(第2A図)
からのDAC ADDRESS信号はアクティブ(ローレベル)に
なる。ORゲート87および89のそれぞれは、各自の3の入
力のいずれかでDAC ADDRESS信号を受信する。第2の入
力はANDゲート97からのMASK DAC R/WR信号を受信す
る。つまり、その後、読取り/書込みストローブ信号IO
R/IOWはアクティブ(ローレベル)になる。転送サイク
ルの開始の前は、最後のサイクルから既定の時間間隔を
越える時間が経過しているとすれば、MASK DAC R/WR
信号はイナクティブ(ローレベル)である。ビデオDAC1
5とMPU19間の転送サイクルにおいて、ORゲート87および
89のいずれかは、3入力全部をローレベルにさせ、AND
ゲート95へのローレベル入力を生じることになる。AND
ゲート95でのローレベルは、バイナリカウンタ93へのRS
T入力をアクティブにし、それによりカウンタをリセッ
トさせ、PIXEL CLOCKからのパルスをカウントしないよ
うにさせる。
ANDゲート95のローレベル入力によって、ANDゲート95次
に、第7図に示すようにANDゲート97がMASK DAC R/WR
信号をイナクティブに設定するように、ANDゲート97に
ローレベル入力を供給する。DAC ADDRESS信号(第7図
には図示せず)は本質的に完全な転送サイクルを続け、
それによりバイナリカウンタ93、ANDゲート95および9
7、ORゲート87および89のタイミングがIOW/IORストロー
ブ信号により制御されるように考慮することができる。
これに関して、IORまたはIOW信号がイナクティブになる
と、論理値1またはハイレベルがANDゲート95への3入
力全部に再び生じる。このハイレベル信号は、バイナリ
カウンタ93のRST入力を使用禁止にし、カウンタがPIXEL
CLOCKからのパルスをカウントできるようにする。AND
ゲート95のハイレベル出力はまた、ANDゲート97を使用
可能にし、バイナリカウンタ93の否定8出力からの出力
を通過させる。リセットから、バイナリカウンタ93の否
定8出力は、初めに論理値1の状態にある。従って、AN
Dゲート97がIOR/IOW信号がイナクティブになった結果使
用可能となると、ANDゲート97は、MASK DAC R/WR線に
否定8出力線の論理値1を通過させる。MASK DAC R/W
R線のアクティブ信号は、ORゲート87および89を使用禁
止にするために有効である。それらの出力が、この線が
アクティブである間だけIOR、IOWおよびDAC ADDRESS線
にある信号にかかわらず、ハイレベルのままであるから
である。
MASK DAC R/WR線はアクティブのままであり、バイナ
リカウンタ93が第7図で数字を付けられたピクセルパル
スで指示されているようにピクセルクロックパルスをカ
ウントしている間にORゲート87および89は使用禁止にさ
れる。8番目のピクセルパルスがカウントされると、カ
ウンタ93の否定8出力はローレベルになり、それによっ
てANDゲート97を使用禁止にし、MASK DAC R/WR線をイ
ナクティブにさせる。この時、ORゲート87および89は、
ビデオDACがアドレス指定されていれば(すなわち、DAC
ADDRESS線がアクティブである)、再びIORおよびIOW
信号を通過させることができる。
ビデオDAC15へのDACIOW/DACIORストローブ信号の終了
後、ORゲート87および89を既定の時間使用禁止にするこ
とによって、インタフェースは、連続する読取り/書込
みストローブ信号のビデオDAC15への転送を計測し、そ
れにより読取り/書込みストローブ信号は常に既定の時
間間隔以上で分離される。既定の時間間隔は、バイナリ
カウンタ93のデータ入力Dに結合された論理値1を計時
するようにピクセルクロックパルスに応答するバイナリ
カウンタ93によって生成される。
第7図のタイミング図についてさらに詳述すれば、2の
連続する転送サイクルの問題となる信号が示されてい
る。第1および第2の転送サイクルは、第4C図で第1お
よび第2のサイクルとして略示した形式におおよそ関連
した時間であり、第1の転送サイクルは公称長さの転送
サイクル(T1)、第2の転送サイクルは延長されており
(T5)、第1の転送サイクルのほぼ直後に続いている。
本発明に従えば、DACIOR/DACIOW信号が第1の転送サイ
クルの終了時にイナクティブになった後、MASK DAC R
/WR信号は、既定の8ピクセルクロックパルスの間アク
ティブになる。この既定の時間中に、IOW/IOR信号は第
2のサイクルについてアクティブになる。しかし、ゲー
ト87および89は使用禁止にされ、DACIOW/DACIORは生成
されない。その代わり、8番目のピクセルパルスがバイ
ナリカウンタ93によってカウントされた後にMASK DAC
R/WR信号がイナクティブになるまで遅延される。第7
図の波形の詳細な検討からわかるように、第2のIOW/IO
R信号は、表1のいずれのタイミングパラメータも侵害
しない量によって分離されたDACIOW/DACIOR信号に効果
的に波形整形される。
第2の転送サイクルの読取り/書込みコマンドのビデオ
DAC15への遅延転送を補償するために、待ち状態ジェネ
レータはREADY線をイナクティブにさせ、それにより、
第5図の流れ図に関して説明したように、MPU19がその
転送サイクルに待ち状態マシンサイクルを挿入するによ
うさせる。ORゲート87および89が使用可能になり、IOR/
IOWストローブ信号がDACIOR/DACIOWとしてビデオDAC15
に渡されるとただちに、READY信号はアクティブ状態に
復帰し(第7図参照)、MPU19は公称転送サイクルのマ
シンサイクルの実行に戻る。このようにして、第2の転
送サイクルは、IOR/IOWストローブ信号に負わされた遅
延にほぼ一致する量だけ延長される。これに関して注意
すべき点は、IOR/IOWストローブ信号はサイクルの開始
時と同時にアクティブになるわけではないので、第7図
のT5は必ずしも第4C図で示したようにT1+T2にほぼ等し
くならないということである。
READY信号をイナクティブにし、それによりMPU19に転送
サイクルに待ち状態マシンサイクルを挿入させるため
に、サンプリング・遅延回路99によってアクティブのDA
C WAIT信号が生成されなければならない。しかし、ア
クティブのDAC WAIT信号は、ANDゲート109が使用可能
でなければ、READY信号をイナクティブにするための制
御論理69に渡されない。ANDゲート109は、ラッチ111の
Q出力のアクティブ信号によって使用可能になる。ラッ
チ111のQ出力は、ラッチのクロック入力(CK)のロー
レベル信号に応答してラッチのデータ入力(D)からハ
イレベル信号が渡されるとアクティブになる。CK入力は
CMD制御信号を受信する。各転送サイクルの開始におい
て、このCMD線は、第7図に示すように、イナクティブ
またはローレベルである。ラッチ111のCK入力のローレ
ベル入力に応答して、ANDゲート113の出力の信号は、ラ
ッチ111のデータ入力DからQ出力に渡され、CK入力が
ローレベルである間は、データ入力の信号はQ出力に渡
される。CMD線が転送サイクル中にアクティブになる
と、ラッチ111のQ出力はデータ入力Dから渡された最
後の信号を保持する。
MASK DAC R/WR信号がイナクティブになり、DACIOR/DA
CIOWストローブ信号が第2の転送サイクルで生成される
と、CMD線はアクティブになり、フリップフロップ103を
リセット状態から解除する。CMD線は、ANDゲート114に
よってフリップフロップ103の否定入力(RST)に渡され
る。ANDゲート114は、通常、その第2の入力が後述する
ように通常はハイレベルであるRESETコマンド線である
ので、使用可能となっている。コマンド(CMD)線がイ
ナクティブである場合、フリップフロップ103はそのD
入力からのデータを自由に計時する。これに関して、NA
NDゲート101は、フリップフロップ103のQ出力がハイレ
ベルであるので使用可能であり、この出力はNANDゲート
101への入力の1つである。NANDゲート101への他方の入
力は、DACIOR/DACIOW信号が存在する場合にローレベル
になるANDゲート95の出力からのものである。従って、C
MD信号によってリセット状態から解除されている場合、
フリップフロップ103は、ビデオDAC15へのアクティブの
読取り/書込み信号の存在を検出するために、DACIOR/D
ACIOW線を効果的にサンプリングする。DACIOR/DACIOW線
は、例えば、25 MHzが可能であるTIME BASEの周波数
でサンプリングされる。
CMD信号の存在によるD型フリップフロップ103の解除
は、転送サイクルが進行中であることを指示する。CMD
線がアクティブになった後にDACIOR/DACIOW線にアクテ
ィブの読取り/書込み信号が出ていない場合、ANDゲー
ト95の出力はハイレベルになる。このハイレベル信号
は、TIME BASEの連続パルスでフリップフロップ103の
Q出力について計時され、その後D型フリップフロップ
105および107のQ出力について計時される。D型フリッ
プフロップ107の出力はDAC WAIT信号であり、これは、
DACIOR/DACIOW線のフリップフロップ103でのサンプリン
グと遅延関係でアクティブになる。この遅延は、DACIOR
/DACIOWが最小限必要な長さを持てるようにすることを
目的としている。
ラッチ11およびANDゲート113は、2の連続する転送サイ
クルが、2の連続する読取り/書込みストローブ信号の
既定の最小分離時間を侵害するアクティブ信号をIOR/IO
W線に生成した場合を検出するための回路116を含んでい
る。最小タイミングが侵害されない場合、ANDゲート113
の出力はローレベルであり、CMD線がイナクティブであ
る場合、ANDゲートのローレベル出力はラッチのデータ
入力DからQ出力に渡され、それによりANDゲート109を
使用禁止にさせ、アクティブのDAC WAIT信号の通過を
防ぐ。しかし、最小タイミングが侵害された場合、AND
ゲート113の出力はハイレベルであり、このハイレベル
信号は、CMD線が第7図に示すように第2のサイクルな
開始時にイナクティブである場合ラッチ111のQ出力に
渡される。Q出力は、CMD線が再びイナクティブになる
まで、ANDゲート113からのハイレベル出力を保持する。
第7図を参照すれば、ENABLEの波形は、ラッチ111のQ
出力に出る信号と一致する。図からわかるように、ENAB
LE信号は、第2の転送サイクル全体についてハイレベル
となり、それによりANDゲート109はそのサイクルにおい
て生成されたいずれのアクティブのDAC WAIT信号も通
過させる。制御論理69に渡されたアクティブのDAC WAI
T信号に応答して、READY信号は、第7図のREADY信号の
波形で示したように、イナクティブになる。第2のサイ
クルとは対照的に、第1のサイクルは、いずれかの読取
り/書込み転送サイクル後十分してから開始したと仮定
できる。従って、ANDゲートは、サイクル全体の間使用
禁止のままであり、DAC WAIT信号が制御論理69に通過
しないようにさせている。
ANDゲート113の入力についてみれば、DAC ADDRESS線な
らびにコマンド線S0ならびS1は、事実上、MASK DAC R
/WR信号をラッチ111へ通過させるためのゲートを選択的
に使用可能または使用禁止にするように作動する。DAC
ADDRESS、S0およびS1線は、転送サイクルの開始時に
アクティブの信号を送り、信号がすべてアクティブであ
る場合、それらは第2の転送サイクルがビデオDAC15に
対して指示されたことを示す。この指示に応答して、MA
SK DAC R/WR線の状態はANDゲート113の出力の状態を
制御する。第2の転送サイクルがMASK DAC R/WR線の
信号によって計測された時間間隔の終了以前に始まった
場合、ANDゲート113への3入力はすべてハイレベルにな
り、ANDゲート113の出力もハイレベルになる。転送サイ
クルの開始において、CMD線がイナクティブであると、A
NDゲート113の出力のハイレベル信号はラッチ111のQ出
力に渡される。前述のように、ラッチ111のQ出力にハ
イレベル信号が存在すると、ANDゲート109はアクティブ
のDAC WAIT信号を制御論理69に通過させる。ステータ
ス線S0およびS1両方の状態を指示するANDゲート113への
信号入力を供給するために、EXCLUSIVE−ORゲート115が
利用されている。これに関して、第7図のSTATUS波形
は、EXCLUSIVE−ORゲート115の出力に出る信号に一致す
る。最後に、RESET線は、電源投入などの一定の状況で
インタフェース83を初期化するために備わっている。RE
SET線のアクティブローは、バイナリカウンタ93および
D型フリップフロップ103をリセットし、DAC WAIT線を
イナクティブの初期状態にさせる。
〔発明の効果〕
上述の詳細な説明から、本発明は、周辺装置の現用のソ
フトウェアと、そのソフトウェア用に本来設計されたシ
ステムよりも著しく高速で作動する新しい中央処理装置
との間の互換性を保証するシステムを提供するものであ
る。例えば、ビデオDACにおけるカラーパレットに対す
る読取り/書込み命令は、タイミングパラメータを維持
されるようにする際に、ソフトウェア上の遅延(無動作
サイクルまたは飛越し命令など)を挿入せずにプログラ
ムすることができる。タイミングパラメータが侵害され
ないようにすると同時に、ビデオインタフェース11のイ
ンタフェース83はまた、MPU19が可能な限り高速で(公
称サイクル)命令を実行させ、また、タイミングパラメ
ータを侵害することを防ぐために必要な場合にのみシス
テムを減速させる(延長サイクル)。これに関して、イ
ンタフェース83は、読取り/書込みストローブ信号を先
行する読取り/書込みストローブ信号に対する間隔を調
整するために波形整形しなければならない場合にのみ、
転送サイクルに待ち状態マシンサイクルを挿入させるの
で、低速のシステムが本発明によって不利益を受けるこ
とはない。
【図面の簡単な説明】 第1図は、本発明を採り入れたコンピュータシステムの
例示的なビデオサブシステムのブロック図、 第2A図および第2B図は、第1図に示すビデオサブシステ
ムの2の主要構成要素である、ビデオインタフェースお
よびビデオディジタル/アナログコンバータ(DAC)の
ブロック図、 第3A図〜第3E図は、ビデオDACとの間でカラーデータを
読取り/書込みするための命令における連続する読取り
/書込みストローブ信号間のタイミング関係を示すタイ
ミング図、 第4A図〜第4C図は、制御マイクロプロセッサ(MPU)の
形式での中央処理装置と、本発明に従ったビデオサブシ
ステムとの間の転送サイクルの3通りの可能な連続を示
す略タイミング図、 第5図は、本発明に関係してMPUにより利用されるマイ
クロプログラミングを示す流れ図、 第6図は、好ましい実施例に従って本発明を実施するた
めの第2A図のビデオインタフェースに組み込まれたイン
タフェースの回路図、 第7図は、CPUとビデオサブシステム間の2の連続する
転送サイクルについて第6図の回路における各種重要な
入出力線の状態を示すタイミング図である。 11……ビデオインタフェース、61……CRTコントロー
ラ、63……シーケンサ、65……グラフィックスコントロ
ーラ、67……属性コントローラ、68……アドレスデコー
ダ、69……制御論理、72……マルチプレクサ、33……ピ
クセルバス、83……インタフェース、13……ビットマッ
プメモリ、15……ビデオDAC、31……カラールックアッ
プテーブル、35……DAC、42……ピクセルラッチ、47…
…タイミングジェネレータ、49……MPUインタフェー
ス、17……CRT表示装置、19……制御マイクロプロセッ
サ、21……システムバス、23……バスインタフェース、
25……アドレスバス、27……データバス、29……制御
線、83……インタフェース。

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】マイクロプロセッサ(MPU)と周辺装置と
    の間でのデータ転送の信頼性を保証し、かつ、入出力の
    処理効率を最適化するコンピュータシステムにおいて、 前記コンピュータシステムは、 (a)高速転送が可能なシステムバスに接続され、第1
    のクロック信号により動作する前記MPUと、 (b)前記MPUからのリード又はライトというコマンド
    信号に応答して、前記MPUから前記周辺装置への第1の
    コマンド信号が出されてから、次に続く第2のコマンド
    信号が出されるまで所定の最小時間幅が必要な前記周辺
    装置と、 (c)前記MPUと前記周辺装置の間を制御し、前記第1
    のクロック信号とは非同期の第2のクロック信号により
    動作する周辺装置インタフェースと、 を有し、 前記周辺装置インタフェースは、 (i)前記第1のコマンド信号を受け取ってからの経過
    時間を測定し、前記経過時間が前記周辺装置の前記最小
    時間幅より大きいかを、判断するタイミング回路と、 (ii)前記第2のコマンド信号が、前記最小時間幅を保
    証するように前記最小時間幅以下の前記MPUよる前記第
    2のコマンド信号を遅延させるために前記MPUに信号を
    出力する同期回路と、 (iii)前記システムバスを、前記周辺装置インタフェ
    ースに接続するバス・インタフェースと、 (iv)前記MPUからの前記第1のコマンド信号を前記タ
    イミング回路が受けた場合に、前記タイミング回路が前
    記周辺装置への前記第1のコマンド信号を出力し、前記
    タイミング回路が、前記最小時間幅と等しい遅延を行う
    間、前記周辺装置への前記第1のコマンド信号を禁止
    し、前記遅延後に、前記周辺装置への前記第2のコマン
    ド信号を出力するゲート回路と、 を有するコンピュータシステム。
  2. 【請求項2】前記周辺装置用のクロック信号が、前記第
    2のクロック信号である、請求項1に記載のコンピュー
    タシステム。
  3. 【請求項3】前記タイミング回路が、前記第2のクロッ
    クでカウントするカウンタ回路を含む請求項2に記載の
    コンピュータシステム。
  4. 【請求項4】前記周辺装置が、ディスプレイ端末である
    請求項3に記載のコンピュータシステム。
  5. 【請求項5】前記第2のクロック信号が、前記ディスプ
    レイ端末のピクセルクロックである請求項4に記載のコ
    ンピュータシステム。
  6. 【請求項6】第1のクロック信号により動作するコマン
    ド発生手段と、該コマンド発生手段に接続され所定の最
    小コマンド応答時間を有する周辺装置とを具備するコン
    ピュータシステムにおいて、前記周辺装置に適した間隔
    で前記周辺装置への連続したコマンドの入力を保証し、
    かつ、前記周辺装置と前記コマンド発生手段の処理効率
    を高める方法であって、 前記方法は、 (a)前記コマンド発生手段からの前記周辺装置への第
    1のコマンドを、前記コマンド発生手段と前記周辺装置
    との間のインタフェースに送出するステップと、 (b)前記第1のコマンドを、前記インタフェースから
    前記周辺装置へ転送するステップと、 (c)前記第1のクロック信号とは非同期の第2のクロ
    ックを有するタイミング回路を用いて、前記最小コマン
    ド応答時間の間、前記インタフェースにより前記周辺装
    置への入力を禁止するステップと、 (d)前記最小コマンド応答時間内に、前記第1のコマ
    ンドに続く第2のコマンドを、前記コマンド発生手段か
    ら前記インタフェースに送出するステップと、 (e)前記最小コマンド応答時間の終了後に、前記イン
    タフェースから前記コマンド発生手段へのレディ(READ
    Y)信号を送出するステップと、 (f)前記コマンド発生手段が前記インタフェースから
    前記レディ信号を受け取るまで、前記コマンド発生手段
    からの前記第2のコマンドの終了を一時的に遅延させる
    ウエイト・ステートを追加するステップと を含む方法。
  7. 【請求項7】前記方法が、さらに、 (g)前記第1のコマンドの前記最小コマンド応答時間
    の終了後に、前記第2のコマンドが前記周辺装置により
    受け取られるステップ、 を含む請求項6に記載の方法。
  8. 【請求項8】前記最小コマンド応答時間が、ビデオ用DA
    Cの前記第1のコマンドに対するリード又はライトスト
    ローブの終了から、前記第2のコマンドの開始の間のプ
    リチャージ時間である、請求項7に記載の方法。
  9. 【請求項9】前記周辺装置用のクロック信号が、前記第
    2のクロック信号である、請求項8に記載の方法。
JP2275077A 1989-11-13 1990-10-12 ストローブ信号の分離タイミングを保証するための装置および方法 Expired - Fee Related JPH077377B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US43705989A 1989-11-13 1989-11-13
US437059 1989-11-13

Publications (2)

Publication Number Publication Date
JPH03160548A JPH03160548A (ja) 1991-07-10
JPH077377B2 true JPH077377B2 (ja) 1995-01-30

Family

ID=23734893

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2275077A Expired - Fee Related JPH077377B2 (ja) 1989-11-13 1990-10-12 ストローブ信号の分離タイミングを保証するための装置および方法

Country Status (15)

Country Link
US (1) US5388250A (ja)
EP (1) EP0428293B1 (ja)
JP (1) JPH077377B2 (ja)
KR (1) KR940005346B1 (ja)
CN (1) CN1020812C (ja)
AU (1) AU640695B2 (ja)
CA (1) CA2023998A1 (ja)
DE (1) DE69031206T2 (ja)
FI (1) FI905611A0 (ja)
MY (1) MY107731A (ja)
NO (1) NO904908L (ja)
NZ (1) NZ235802A (ja)
PT (1) PT95850A (ja)
SG (1) SG43746A1 (ja)
TW (1) TW230244B (ja)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5481675A (en) * 1992-05-12 1996-01-02 International Business Machines Corporation Asynchronous serial communication system for delaying with software dwell time a receiving computer's acknowledgement in order for the transmitting computer to see the acknowledgement
KR950008661B1 (ko) * 1993-05-20 1995-08-04 현대전자산업주식회사 버스 다중화 회로
US5537582A (en) * 1993-05-21 1996-07-16 Draeger; Jeffrey S. Bus interface circuitry for synchronizing central processors running at multiple clock frequencies to other computer system circuitry
US5553275A (en) * 1993-07-13 1996-09-03 Intel Corporation Method and apparatus for synchronously detecting phase relationships between a high-frequency clock and a low-frequency clock
JP2551338B2 (ja) * 1993-07-23 1996-11-06 日本電気株式会社 情報処理装置
US5821784A (en) * 1995-12-29 1998-10-13 Intel Corporation Method and apparatus for generating 2/N mode bus clock signals
US5802132A (en) * 1995-12-29 1998-09-01 Intel Corporation Apparatus for generating bus clock signals with a 1/N characteristic in a 2/N mode clocking scheme
US5834956A (en) 1995-12-29 1998-11-10 Intel Corporation Core clock correction in a 2/N mode clocking scheme
US5862373A (en) * 1996-09-06 1999-01-19 Intel Corporation Pad cells for a 2/N mode clocking scheme
US5826067A (en) * 1996-09-06 1998-10-20 Intel Corporation Method and apparatus for preventing logic glitches in a 2/n clocking scheme
US5999995A (en) * 1996-12-27 1999-12-07 Oki Data Corporation Systems for adjusting a transfer rate between a host and a peripheral based on a calculation of the processing rate of the host
US6343352B1 (en) 1997-10-10 2002-01-29 Rambus Inc. Method and apparatus for two step memory write operations
US6401167B1 (en) * 1997-10-10 2002-06-04 Rambus Incorporated High performance cost optimized memory
US6055587A (en) * 1998-03-27 2000-04-25 Adaptec, Inc, Integrated circuit SCSI I/O cell having signal assertion edge triggered timed glitch filter that defines a strobe masking period to protect the contents of data latches
US6087867A (en) * 1998-05-29 2000-07-11 Lsi Logic Corporation Transaction control circuit for synchronizing transactions across asynchronous clock domains
EP0978788A1 (en) * 1998-08-04 2000-02-09 Texas Instruments France Improvements in or relating to direct memory access data transfers
EP0978787A1 (en) * 1998-08-04 2000-02-09 Texas Instruments France Improvements in or relating to transferring data between asynchronous device
NZ514418A (en) * 1999-04-01 2003-11-28 Heeling Sports Ltd Heeling apparatus and method, with roller in heel portion of shoe
US6529570B1 (en) * 1999-09-30 2003-03-04 Silicon Graphics, Inc. Data synchronizer for a multiple rate clock source and method thereof
US7096377B2 (en) * 2002-03-27 2006-08-22 Intel Corporation Method and apparatus for setting timing parameters
US20070121398A1 (en) * 2005-11-29 2007-05-31 Bellows Mark D Memory controller capable of handling precharge-to-precharge restrictions
TWI506443B (zh) * 2012-12-27 2015-11-01 Mediatek Inc 處理器與週邊裝置之間的媒介週邊介面及其通信方法
CN109298248B (zh) * 2018-11-12 2020-12-01 中电科仪器仪表有限公司 一种基于fpga的复杂脉冲调制序列测量电路及方法

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3587044A (en) * 1969-07-14 1971-06-22 Ibm Digital communication system
US3623017A (en) * 1969-10-22 1971-11-23 Sperry Rand Corp Dual clocking arrangement for a digital computer
US4050096A (en) * 1974-10-30 1977-09-20 Motorola, Inc. Pulse expanding system for microprocessor systems with slow memory
US4050097A (en) * 1976-09-27 1977-09-20 Honeywell Information Systems, Inc. Synchronization technique for data transfers over an asynchronous common bus network coupling data processing apparatus
US4144562A (en) * 1977-06-23 1979-03-13 Ncr Corporation System and method for increasing microprocessor output data rate
US4143418A (en) * 1977-09-21 1979-03-06 Sperry Rand Corporation Control device and method for reading a data character from a computer at a fast rate and transmitting the character at a slow rate on a communication line
US4164787A (en) * 1977-11-09 1979-08-14 Bell Telephone Laboratories, Incorporated Multiple microprocessor intercommunication arrangement
DE2812242C2 (de) * 1978-03-21 1987-01-15 Robert Bosch Gmbh, 7000 Stuttgart Verfahren zur Ablaufsteuerung
US4262331A (en) * 1978-10-30 1981-04-14 Ibm Corporation Self-adaptive computer load control
US4539635A (en) * 1980-02-11 1985-09-03 At&T Bell Laboratories Pipelined digital processor arranged for conditional operation
US4494196A (en) * 1981-05-19 1985-01-15 Wang Laboratories, Inc. Controller for peripheral data storage units
US4476527A (en) * 1981-12-10 1984-10-09 Data General Corporation Synchronous data bus with automatically variable data rate
US4517641A (en) * 1982-04-30 1985-05-14 International Business Machines Corporation Lookahead I/O device control subsystem
US4807109A (en) * 1983-11-25 1989-02-21 Intel Corporation High speed synchronous/asynchronous local bus and data transfer method
JPS61255392A (ja) * 1985-05-09 1986-11-13 横河電機株式会社 カラ−画像表示装置
FR2586118B1 (fr) * 1985-08-06 1990-01-05 Bull Sems Procede d'echange de donnees entre un microprocesseur et une memoire et dispositif permettant la mise en oeuvre du procede
JPS6243764A (ja) * 1985-08-21 1987-02-25 Nec Corp バス・ステ−ト制御回路
JP2520872B2 (ja) * 1985-12-10 1996-07-31 オリンパス光学工業株式会社 画像表示装置
US4769632A (en) * 1986-02-10 1988-09-06 Inmos Limited Color graphics control system
US4888684A (en) * 1986-03-28 1989-12-19 Tandem Computers Incorporated Multiprocessor bus protocol
JPH0619760B2 (ja) * 1986-04-23 1994-03-16 日本電気株式会社 情報処理装置
JPS6354655A (ja) * 1986-08-25 1988-03-09 Hitachi Ltd バスタイミング制御回路
AU596459B2 (en) * 1986-10-17 1990-05-03 Fujitsu Limited Data transfer system having transfer discrimination circuit
JPS63155340A (ja) * 1986-12-19 1988-06-28 Fujitsu Ltd 記憶装置の読出し方式
US4851995A (en) * 1987-06-19 1989-07-25 International Business Machines Corporation Programmable variable-cycle clock circuit for skew-tolerant array processor architecture
US5151986A (en) * 1987-08-27 1992-09-29 Motorola, Inc. Microcomputer with on-board chip selects and programmable bus stretching
US5125084A (en) * 1988-05-26 1992-06-23 Ibm Corporation Control of pipelined operation in a microcomputer system employing dynamic bus sizing with 80386 processor and 82385 cache controller
US5040109A (en) * 1988-07-20 1991-08-13 Digital Equipment Corporation Efficient protocol for communicating between asychronous devices
US5060239A (en) * 1989-05-12 1991-10-22 Alcatel Na Network Systems Corp. Transfer strobe time delay selector and method for performing same

Also Published As

Publication number Publication date
KR910010302A (ko) 1991-06-29
DE69031206D1 (de) 1997-09-11
MY107731A (en) 1996-05-30
EP0428293A2 (en) 1991-05-22
EP0428293B1 (en) 1997-08-06
CN1020812C (zh) 1993-05-19
JPH03160548A (ja) 1991-07-10
NO904908L (no) 1991-05-14
US5388250A (en) 1995-02-07
KR940005346B1 (ko) 1994-06-17
CN1051801A (zh) 1991-05-29
EP0428293A3 (en) 1992-02-19
NO904908D0 (no) 1990-11-12
AU6464190A (en) 1991-05-16
NZ235802A (en) 1994-02-25
TW230244B (ja) 1994-09-11
SG43746A1 (en) 1997-11-14
PT95850A (pt) 1992-07-31
DE69031206T2 (de) 1998-02-12
AU640695B2 (en) 1993-09-02
FI905611A0 (fi) 1990-11-13
CA2023998A1 (en) 1991-05-14

Similar Documents

Publication Publication Date Title
JPH077377B2 (ja) ストローブ信号の分離タイミングを保証するための装置および方法
US6154824A (en) Multifunctional access devices, systems and methods
EP1217602B1 (en) Updating image frames in a display device comprising a frame buffer
US6356987B1 (en) Microprocessing device having programmable wait states
EP0426329A1 (en) Combined synchronous and asynchronous memory controller
EP0772119A2 (en) Automatic graphics operation
US5696923A (en) Graphics processor writing to shadow register at predetermined address simultaneously with writing to control register
US5594926A (en) Hard disk accelerating system for computer
US7197590B2 (en) Method and apparatus for connecting LPC bus and serial flash memory
JPH08255107A (ja) ディスプレイコントローラ
JPH09237130A (ja) コンピュータシステム及び同システムにおけるクロック停止信号制御方法
US6728813B1 (en) Method and apparatus for converting non-burst write cycles to burst write cycles across a bus bridge
JPH08180012A (ja) コンピュータシステム
JPS5984292A (ja) Crtデイスプレイ制御装置
JP2002278919A (ja) 表示制御方法及び装置
US7325085B2 (en) Motherboard and control method thereof
JP2634893B2 (ja) シングルチップマイクロコンピュータ
JPS6085691A (ja) デイジタル画像信号の処理装置
JP3310287B2 (ja) プリンタ・プロセッサ
JP2003122701A (ja) インターフェース及び入出力デバイス
JPS59189433A (ja) ダイレクトメモリアクセスによるデ−タ消去方式
JP2000250523A (ja) 計算機システム及び計算機システムにおける情報読出方法
JPS6024582A (ja) 漢字キヤラクタ・ゼネレ−タの読み出し回路
JPH0343631B2 (ja)
JPH0772890B2 (ja) キヤプチヤ機構を有するマイクロプロセツサ

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees