JPS60110064A - 非同期緩衝通信インタフエ−ス - Google Patents

非同期緩衝通信インタフエ−ス

Info

Publication number
JPS60110064A
JPS60110064A JP15853084A JP15853084A JPS60110064A JP S60110064 A JPS60110064 A JP S60110064A JP 15853084 A JP15853084 A JP 15853084A JP 15853084 A JP15853084 A JP 15853084A JP S60110064 A JPS60110064 A JP S60110064A
Authority
JP
Japan
Prior art keywords
data
output
computer
buffer
input
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.)
Pending
Application number
JP15853084A
Other languages
English (en)
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.)
Tektronix Inc
Original Assignee
Tektronix 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 Tektronix Inc filed Critical Tektronix Inc
Publication of JPS60110064A publication Critical patent/JPS60110064A/ja
Pending legal-status Critical Current

Links

Classifications

    • 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/122Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware performs an I/O function other than control of data transfer

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Communication Control (AREA)
  • Information Transfer Systems (AREA)
  • Computer And Data Communications (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 産業上の利用分野 本発明は、デジタル・コンピュータ及び1 (flit
以上の入力/出力装置間の通信を容易にする入力/出力
インタフェース、特にデジタル・コンピュータと商速キ
ーボードを((fiえたグラフインク・り−ミナルの如
き人力/出力装置との間の非同期通信を制御する非同期
緩衝通信インタフェースに関する。
背景技術とその問題点 通信インタフェースは、コンピュータが1個以上の出力
装置に転送したデータの流れ、及び1個以上の入力装置
からコンピュータに転送したデータの流れを制御して、
デジタル・コンピュータの入力/出力動作を容易にする
代表的には、コンピュータは出力データを通信インタフ
ェースに転送するようにプログラムされる。そしてこの
インクフェースは、出力装置が動作する比較的血速なデ
ータ転送レートにより、制御された方法でデータを出力
装置に転送する。よって、データが出力装置に転送され
る間、最適なすべてのデータ転送プロトコルを確実にす
るためのタスクからコンピュータは開放される。
コンピュータから出力装置へデータを転送するコンピュ
ータ・プログラミングでは、通信インタフェースが出力
装置にデータを転送する「使用中」状態に既にあるかを
′111断するチェックを通常、コンピュータが先ず行
なう。通信インタフェースが1使用中」の場合、通信イ
ンタフェースが新しいデータを取込めるかを再びチェッ
クする前に、コンピュータはある最小時間だけ待たなけ
ればならない。通信インタフェースが「自由」な場合、
データ用文字を通信インタフェースに転送すると、この
インタフェースは「使用中」状態となり、コンピュータ
の動作とは独立して、データ用文字を出力装置に転送す
る。超高速出力装置が達成できるデータ転送レートでさ
えも、コンピュータが達成できるデータ転送レートと比
較して相対的に遅いので、31TiイAインタフエース
は比較的長時間1−使用中1状態にある。J1ンピュー
タが出力装置に転送11■能なデータを更に有している
場合、通信インタフェースが「使用中」状態から1自由
」状態に戻るまで、:lンピュータは待機しなL)れば
ならない。この待機により、いくつかの超高速出力装置
(例えば19,200ボー・データ転送レートで動作可
能なグラフィック・ターミナル)がそれらの最i1:I
+状態で動作するのが妨害される。
本発明は、通信インクフェースが[使用中]状態から「
自由」状態に戻るまでコンピュータが待機し、出力装置
に転送する新たなデータが取込み[+J能になるまでの
時間を大幅に減らず。本発明による1lYl信インタフ
エースは、従来の出力装置がデータを取込むよりも非常
に速く、コンピュータからの1..022個のデータ用
文字を取込む。通信インタフェース内の出力バッファは
データを一時的に記憶する。新たなデータを転送するま
でにコンピュータが待機すべき時間が最小になるように
、高i1!電子ハードウェアがコンピュータから一時出
力蓄積バソファへのデータ転送を扱う。次に通信インク
フェースは、出力装置が達成できる比較的低速のデータ
転送レートで、かつデータ出力動作を開始したコンピュ
ータの動作と独立して、一時出力IJIf積バッファか
ら出力装置i61にデータを転送する。
人力装置からコンピュータにデータを転送する場合も、
同様なデータ転送の障害がある。例えば、人力装置がコ
ンピュータ入力用のデータ用文字の流れを通信インタフ
ェースに431給するとき、コンピュータ(オ人カタス
ク以外のタスクを実行中である。=17ピユータが新た
な人力データを取込む準備ができず、このデータを失な
った場合、このデータをコンピュータへ典転送すること
が必要となる。
本発明によるiJ旧Hインタフェースは更に一時入力酌
積バソファを備えており、このバッファは入力装置ii
4+から受りた最+l]i 2,048個の入力データ
用文字を一時的に#積し、その後コンピュータに高速転
送する。よって、ごlンピークに入力するため比較的大
きなデータのブロックを形成する。この点は、JffJ
 1lli速出力装?げにデータを出力する如くコンピ
ータに市いfJ荷がかかる際に、比較的高速の入力装置
から人力を受ける場合に利点となる。通信インタフェー
スは、コンピュータの動作と独立して、入力データを受
け、人力蓄積バッファに一時的にff1Jaするので、
入力データを失なう可能性を最少にする。
発明のIll的 したがって本発明の目的の1つば、コンピュータのデー
タ出力を高速にアキュムレートし、このご1ンビユータ
のIIV11作から独立して、そのデータを一時的に蓄
積した後に比較的低速のlll力装置に転送する出力バ
ッファ・ストレージを備えた非同期緩f!i innn
nフィンタフエース供にある。
本発明の他の目的は、コンピュータの動作から独立して
、入力装置から受けたデータをアキュムレートし、その
データを一時的に蓄積した後にコンピュータに高速転送
する大カバソファ・ストレージを備えた通信インタフェ
ースのfil供にある。
発明の概男! 本発明は、ホスト・コンピュータ及び入力/出力装置間
のデータ転送を制御する通信インタフェースを提供する
。この通信インタフェースは、プ1’:Iグラマプル(
プログラム可能な)制御手段と、このプログラマブル制
御手段でアドレス指定可能2fデータ蓄積手段とを備え
ている。プログラマブル制御手段は、ホスト・コンピュ
ータからデータ預積手段内の出カバソファへのデータ転
送を制御する。プログラマブル制御手段は、ホスト・コ
ンピュータの動作から独立して、出カバソファから11
1力装置への次の転送も制御する。更にプログラマブル
制御手段は、ホスト・コンピュータの動作と独立して、
人力装置からデータ蓄積手段内の入力バッファへのデー
タ転送を制御し、続いてこの人カバソファからホスト・
コンピュータへのデータ転送を制御する。
出力バッファ4:i 、データ蓄積手段内に複数の逐次
アドレス指定「1能なデータ蓄積ロケーション(記憶場
所)を備えている。ポスト・コンピュータから受けたデ
ータを、出カバソファの次に引き続き利用口1能なデー
タ附積mlケーションに直接許積する。プログラマブル
制御手段は、データを読取ったり、P1込んだりしない
。この動作はむしろ、ポスト・コンピュータから受けた
データを蓄積するレジスタと、プログラマブル制御手段
からデータ蓄積手段へのデータ転送を禁止すると共にレ
ジスタからデータ蓄積手段へのデータ転送をイネーブル
(付勢)する手段上を設けて、実現する。よってデータ
はレジスタから、プログラマブル制御手段によりアドレ
ス指定されたデータ蓄積手段のデータ蓄積ロケーション
に直接転送される。
通信インタフェースは更に、ポスト・コンピュータから
受けたデータ用文字を81数するカウンタと、出カバソ
ファの所定数のデータ蓄積ロケーションがデータを受け
るのが可能なときに、カウンタをリセソ1−する手段と
を備えている。次にカウンタのオーバーフローを用いて
、出カバソファのデータ蓄積ロケーションがデータを受
取れないことをボス)・・コンピュータtこ知らセる。
カウンタをリセソ1−するごとにより、出カバソファの
データWi 4’+’J r−1ケーシミンがデータを
受をれることをホス)・・コンピュータに知らせる。
好適には、i+D信イフィンタフエースに、プし+グラ
マプル制御手段により制御可能で、出力ハッファの次に
逐次利用可能なデータ蓄積ロケーションのアドレスを蓄
積するアドレス蓄積手段と、プログラマブル制御手段か
らアドレス蓄積手段の蓄積用の増分したアドレスを受け
、この増分したアドレスが出力バソソアの最終データm
mrzケーションのアドレスを紹えた場合、増分したア
ドレスを出カバソファの第1データ蓄積ロケーシヨンの
アドレスに変更するデジタル回路手段とを備えている。
1111信インタフエースは更に、プログラマブル制御
手段により出力バッファから出力装置に転送された連続
データ用文字における転送間のホスト・:Iンピュータ
が特定した時間遅延を測るタイマを018えている。ポ
スト・コンピュータが特定したように、プログラマブル
制御手段による出カバソファから出力装置へのデータ転
送レート(速度)を特定するようにプログラムするプロ
グラマブル・タイマを史に設けてもよい。
好ii’iにはl/レジスタ更に設け、ホスト・コンビ
ュータへの人力となるデータを蓄積してもよい。
プログラマブル制御手段は、大力バッファからレジスタ
にデータを転送して、入カバソファからホスト・コンピ
ュータへのデータ転送を制御し、次にデータをレジスタ
から引出してもよいことをホスj・・:Iンピュータに
知らせる。
特定の好適な実施例において、通信インタフェースは、
ホスト・コンピュータ、複数の第1入力装置、及び複数
の第2出力装置間のデータ転送の制fallを容易にす
る。この場合、データ蓄積手段は複数の出力ハッファを
含んでおり、1個の出力ハソソアが各出力装置にり・1
応する。プログラマブル制御11手段は、ポスト・コン
ピュータから出カバソファへのデータ転送を制御し、こ
の出カバソファから対応する出力装置へデータを引続き
転送するのを制御する。同様に、複数の入カバソファを
設&J、入カバソファの各々を各人力装置に対応させて
−lq°もよい。プロ(グラマプル制御手段は、入力装
置から対応する大力バッファへのデータ転送を制御し、
更に入カバソファからホスト・コンピュータへのデータ
転送を制御する。
実施例 ■、前」き これらか述べる好適な実施例は、デジタル・イタ1゛ブ
メンI−・コーポレイション(DEC)1Jpop−1
1(商標)デジタル・コンピュータと最1〕I4個の独
立した全2 f4’f R5232Cコンパチブル人力
/出力装置との間のデータ転送を制御するクワト (4
チヤンネル)非同期緩衝通信インタフェースである。
好適な実施例の通信インタフェースを、「プしIグラマ
プル制御手段」、即ちマイクロプロセッサにより制御す
る。以後、用語[ポスト・コンピューター1はDEC製
FDP−11(商標)コンピュータを指し、このコンピ
ュータからの出力データを出力装置に転送し、入力装置
からの入力データをこのコンピュータに転送する。用語
[マイク1:Jプロセソーリ・」はもっばらプログラマ
ブル制御手段を指し、この手段は好適な通信インタフェ
ースの動作を制御する。
1(al、ポスト・コンピュータから出力装置へのデー
タ転送 ホスi−・コンピュータから出力装置゛へ2段階で、1
度に1文字ずつデータを転送する。第1段階では、マイ
クロプロセッサの制御−1・で動作する特別目的の電子
ハードウェアにより、ポスト・コンピュータから通信イ
ンタフェースに設けられた一時出力給槓パソファにデー
タを晶速ニ転送する。第2段階において、ホスト・コン
ピュータの動作から独立し、出力装置が達成できる比較
的低速のデータ転送レートで、1度に1文字ずつ、出カ
バソファに一時的に蓄積されたデータを出力装置に転送
する。
ポスト・コンピュータから出力装置1にデータを転送す
る従来動作は、中間動作を伴なって行なっており、この
中間動作において、マイクロプロセッサはポスト・コン
ピュータが供給したデータを読取り、その後このデータ
を適当な出力バッファ・データ蓄積ロケーションに書込
んだ。しかし、この方法は比較的時間がかがる。
本発明の好適な実施例においては、」1述の特別1」的
の電子ハードウェアが、マイクロプロセッサリ・によの
データを読取ったり書込んだりする必要がなく、ポスト
・コンピュータがm給したデータを[11カバツフアに
直接蓄積するのを容易にする。
通信インタフェースが出力用の他のデータ用文字を自由
に取込めるまでのポスト・コンピュータの動作サイクル
数を減らして、ホスト・コンピュータの動作時間の利用
を最も効果的にする。
1+I11.入力装置からボスト・コンピュータ’S 
(7) データ転送 データはまた、2段階で、1度に1文字ずつ、入力装置
からホスI・・コンピュータに転送する。
第1段階において、入力装置が達成できる比較的低速の
データ転送レートで、ホスト・コンピュータの動作から
独立して、入力装置から受けたデータを通信インタフェ
ース上に設けた人力ftf積バッファに一時的に蓄積す
る。第2段階において、ホスト・コンピュータが入力デ
ータを自由に取込めるとき、1度に1文字ずつ、−待人
力蓄積バッファからポスト・コンピュータにデータを重
連転送する。
この第1データ入力段階は、ホスト・コンピュータの動
作と独立して通行するので、ホスト・コンピュータがそ
のデータを取込むには忙し過ぎても、人力データを失な
う1J能111は除かれる。
■、ン゛11ツク図の概吐 第1図は本発明による通信インタフェースの好適な実施
例のブロック図であり、この通信インタフェースは、ホ
スト・コンピュータ(図ボ廿ず)及び最高4個の出力装
置間、並びにホスI−・コンピュータ及び最高4個の入
力装置if間において非同期データ転送を同時に制御で
きる。
よって、この通信インタフェースは、4 (11i+の
データ出力チャンネル及64個のデータ入力チャンネル
を備えている。
マイクロプロセッサ(24)が通信インタフェースの動
作を制御する。I’iPROM (電子的にプログラム
弓部なリード・オンリ・メモリ) (38)番:1.マ
イクロプロセッサ(24)が実行する一連の動作を定義
するファームウェア・プログラムを記憶する。スタティ
ックRAM (ランダム”・アクセス・メモリ) (2
6)ば1アドレス蓄積手段」として働き、一時入力及び
出力蓄積バッファに対するアドレス・ポインタのテーブ
ルを保持している。一時人力及び出力蓄積バッファは「
データ蓄積手段」、即ちダイナミックRAM(54)内
にあり、RAM制御器(40)がこのRAM(54)を
制御し、リフレッシュする。
独立した一時(循環)出力蓄積バッファ(0UTBII
F) (28)を、4つの出力チャンネルの各々毎にR
AM(5/I)内に設ける。同様に、独立した一時(循
環)入力蓄積バッファ (INBUF )(48)を各
入力チャンネル毎にRAM(54)内に設ける。出力蓄
積バッファ (28)の各々は、2.048(+61の
逐次アドレス指定可能な1バイトの蓄積ロケーションを
備えている。出カバソファI目Vロケー゛ジョンは1対
で用いて、データ用文字及び「属性コード」を蓄積する
。この属性コートば後述する如く、データ用文字を出力
装置に転送する際の状態を制御する。よって、各出カバ
ソファは1バイトの蓄積ロケーションを1 、024対
含んでいる。しかし、 1 、022対の給積I:Iケ
ーションのみが各バッファに実際に利用される。これは
、バッファ・ポインタ・アドレス比較動作に時間がかか
るのを避ける。もしそうでなければ、特定のバッファ内
の最も古いデータ用文字を新しく受けたデータ用文字に
より重ね書きするかを決定するのに、この比較動作がめ
られる。よって、各出カバソファの蓄積容量は、1 、
022デ一タ用文字プラス1 、022属性コードであ
る。属性コードにより、特定の出カバソファ内に蓄積さ
れた各データ用文字は、実際には同じ出力バッファ内に
蓄積された次のデータ文字から分離しているが、それに
もかがわら]゛出カバソファは1 、022(1111
の「逐次アドレス指定IIf能な」データ蓄積ロケーシ
ョンを備えている。各人カバソファは2.’048個の
逐次アドレス(1↑定可能なデータ蓄積ロケーションを
イiηえている(即ち、各入力へソフッは最大2,04
8個のデータ用文字を蓄積する)。
各々が4個の入力/出力チャンネル対を制御するノft
 rIii 411&Iの通信インタフェースを単一の
ホスト・コンピュータと共に用いてもよい。スイッチ(
47) (第1図及び第5図)を設定して、ポスト・コ
ンピュータがアドレス指定可能な411^(のコードの
1り61個により、4個のインタフェースの各ルを識別
してもよい。
n(al、±スト・コンピュータから出力装置へのデ二
久転疋 通信作動riJ能(TI?IIY)フラグを各出力チャ
ンネル用に維持し、通信インクフェースが特定のチャン
ネルを介して出力用の新たなデータ用文字を取込み可能
なときを、ポスト・コンピュータに知ら丑る。ハードウ
ェアTl1DYフラグは、ホスト・コンピュータの直接
割込みを容易にする。
割込みが禁止されてホスト・コンピュータがデータを出
力している場合、送信制御/状態レジスタ(TC511
) (1,2)に保持されたTI?DYフラグをポスト
・コンピュータが間合わせる。
ホスト・コンピュータは、ポスト・コンピュータ・バス
(IEi)を介してデータ用文字を通信インタフェース
tこ供給する。8ビツトのデータ用文字を一時(ハード
ウェア)保持レジスタ(転送データ・レジスタ’I (
TBIIF) (1B)に蓄積する。またホスト・コン
ピュータは、データ用文字を転送すべき出力装置に用い
る出力チャンネルを識別するアドレス情報を、アドレス
・デコーダ(20)に供給する。この情報をデコードし
た後、アドレス・デコーダ(20)は、マイクロプロセ
ッサ(24)の動作を中断させる割込み制御器(22)
をトリガする。次にマイクロプロセッサ(24)は、R
AM(26)内に記憶されたアドレス・ポインタ・テー
ブルから、次に逐次利用する可能なデータ蓄積ロケーシ
ョンを示すアドレスを得る。出力蓄積バッファに28)
のこのデータ蓄積ロケーションは、データ用文字が転送
されるべき出力装置に関連する。次に後述する如く、転
送データ・レジスタ(1日)からデータ用文字がマイク
ロプロセッサ・バス(30)を介して適当な出力蓄積バ
ッファ (28)に直接転送される。
マイクロプロセッサ・(24)は、非同期通信インタフ
ェース・アダフ゛り(ACTA) (42)及びライン
・1ライハ(44)の援助の丁に、従来方法で出力M8
Vバッファ (28)から関連した出力語:6“にデー
タを転送するのを制御する。1個のインタフェース・ア
ダプタを各人力/出力チャンネル対に割当て、各出力チ
ャンネルにライン・ドライバ(44)を設ける。
カウンタ(TCOUNT) (32)を4個の出力チャ
ンネル毎に設け、後述の如く出力蓄積バッファ(28)
がオーバーフローしないのを確実にする。
また後述する如く、連続したデータ用文字の時間遅廷し
た出力用の各出力チャンネル毎にプログラマブル・タイ
マ(PTM)(34)を設ける。
史に各チャンネル毎にプログラマブル・クロック発生器
(PCG)(36)を設け、後述の如くチャンネル・デ
ータ転送レートを制御する。
n (hl 、人力装置からホスト・コンピュータへノ
テ]外入女 ライン・レシーバ(46) (各人力チャンネル毎に]
(ll++)は人力装置からの直夕11人カデータを関
連したインタフェース・アダプタ(42)に伝達する。
このインタフェース・アダプタ(42)は、人力データ
を並列形式に変換し、次にマイクr:Iプロセソザ(2
4)の動作に割込みをかける。
マイクロプロセッサ(24)は受信したインクフェース
・アダプタ(42)からの入力データ用文字を、データ
受信する出力装置に関連する任意の人力蓄積バッファ 
(48)に転送する。次にマイクロプロセッサ(24)
は、入力蓄積バッファ(48)に一時的に蓄積されたデ
ータ用文字を、1度に1文字ずつ(バー(・′ウェア)
受信バッファ (1lnUP) (49)に転送する。
各入力チャンネル/n丁に独立したレシーバ・へソファ
・レジスタを設ける。
受信作動可能(R1?DY)フラグを各入力チャンネル
毎に保持して、新たなデータ用文字が関連した受信バッ
ファ (49)から読取られるのを待っていることをポ
スト・コンピュータに知らせる。RI? rl’Iフラ
グは、ホスト・コンピュータの直接’i’j’l込のを
容易にする。割込みがディスエーブル(禁lト)されて
ポスト・コンピュータカデータを人力し°ζいる場合、
このホスト・コンピュータは受信制御/状態レジスタ(
RC5I?) 0ωに保持された四DYフラグを間合わ
せる。
T[(C1,(−±ンネル状態及び制御本発明の好適な
実施例の通信インタフェースは、この通信インタフェー
スがザービスする4個の人力/出力チャンネルの各々の
動作特性のポスト・二tンビュータによるソフトウェア
制御を容易にする。チャンネル(又はボート)状態レジ
スタ(PSTAT ) (14)及びボート制御レジス
タ(PCTIl)を各人力/出力チャンネル対毎に設け
る。適当なボート状態レジスタ(14)を間合わせるご
とにより、ポスト・コンピュータは、特定の人力/出力
チャンネルの現在の動作特性を把IMする。同様にポス
ト・コンピュータは、j!i当な二I−Fを特定のボー
ト制御レジスタに蓄積して、特定の入力/出力チャンネ
ルの現在の動作時411を変更する。
ホスト・コンピュータが把1屋及び/又は制御するチャ
ンネル特性は、大幅に自由であり、例えば、チャンネル
・データ転送レート及び1フラグド入力モード」機能を
含んでいる。ごのIフラグド入力モード」では、関連し
た人力蓄41ツバソファ(48)が一杯の場合、特定の
入力装置による入力データ転送を終了する。ポスト・:
rンビュータ及びマイクロプロセッサ(24)のfli
適なプログラミングにより、これら特性の設定を変更し
て、通信インタフェースが動作しなければならない特定
の環境に適合するようにしてJ)A:、い。よって、第
1図のブロック図の説明においては、これら特性につい
てN’(−細に述べていない。
本発明による通信インタフェースは、マイク11−)’
 mlセソザ(24)の動作をプログラムする特別1−
1的のマイクロ回路ハードウェア及びファームウェア(
即ちコンピュータ・プ11グラム)の1!ハし」により
、データ転送1す1作を行なう。マイクロ回li8及び
ファームウェア間の相LI−作用を次にN’DIIIに
説明する。
III (III 、レジスタ及びマイクロプロセッサ
割込み各人力/出力チャンネル対に関して、7個の16
ビツト・レジスタを通信インクフェースに設置る。ボス
I〜・二1ンピュータカくアドレス・デコーダ(8(i
) (本発明の好適な実施例におけるマイクロブ「Jセ
ッサ及びEPROMマイクロ回1洛の回路図をンr<ず
第2図参照のこと)を介してアドレス指定弓部なごれら
レジスタを用いて、ホスト・コンピュータ及び1lTI
信インタフ工−ス間で、データ用文字、チャンネル制御
及び状態情報を伝達する。7 (17rlのレジスタの
内の6(11、即ち、受信制御/状態レジスク00、送
信制御/状態レジスタ(12)、ボート状態レジスタ(
14)、転送データ・レジスタ(18)、受信バッファ
(49)及びボート制御レジスタについては既に述べた
第7番[」のレジスタは、後述する如くホスト・二Jン
ピュータからのデータ属性コードを通信インタフェース
に伝達するのに用いるデータ属憧lルジスタである。
1iバ性レジスタ、ボート制御レジスタ及び送信制御/
状態レジスタの各々は、データ出力動作に関連する。後
述する如<Jデータ出力動作には3つの形式がある。即
ち、通電データ用文字の出力(送信制御/状態レジスタ
(12)に関連)データ属性二I−ドの出力(属性レジ
スタに関連)、及びチャンネル制御情報の出力(ボート
制御レジスタに関連)である。特定の出力チャンネルに
関連して、任慈の時間に出力動作の形式は1つしか生じ
ないので、送信制御/状態レジスタが保持するアドレス
を用いて、属性レジスタ及びボート制御レジスタを維持
する。後述する如く、l/レジスタビット4及び5をセ
ソl−して、これら3個のレジスフ形式を区別する。
一時保持レジスタは、データ出力動作期間のみ用いる。
反対に、ボート状態レジスタを用いて、状態情報をホス
ト・コンピュータに入力する。よっ′ζ、入力及び出力
動作は所定の入力/出力チャン不ル対に同時に生しない
ので、一時保持レジスタ内に保持されたアドレスを用い
て、ボート状態レジスタを保持する。
レジスタを次のように構成する。
受(M1m完J’ (RRrlY) −−−−−−−−
−−−−−−−: :、 HIH1ij受信機割込みイ
ネーブル(l?TNTIE ) −−−−’ :1;i
 i i割当てなし −−−−−−−−−−−−−−−
−−−−−−−・−−一一一=−−−−−−−−[;:
::割当てなし一−−−−−−−−−−−−−−−−−
−−−−一−−−−−−−−−−−−−−−−−−−;
111:割当′(なし −=−−−−−−−一−−−−
−−−−−−−−−−−−−−−−−−−−−一−−シ
1::::す 浬1当てなし−−−−−−−−−−−−−−−−−−−
−−−−m−・−−−−−−−−−−−−−−一−−−
−−−−・::割当てなし一一−−−−−−−−−−−
−−−−−−−−−−一−=−−−−−一−−−−−一
−−一−−−−−−−;i連1!1j゛ζなし一−−−
−−−−−−−−−−−−−−−−一−−−−−−−−
−−−−−−−−一−−−−−−−−−゛i(ヱ1− 
へl太ヅ用り愼 15へ・)3:割当てなし 7 :これは、ホスト・コンピュータに人力するため、
データ用文字を関連した受 信バッファ (49)に転送するときに、設定されるR
RnYフラグである。これは、ポスト・コンピュータが
受信バ・ノファの内容を読取ったときクリアれさる。
6 :このビットが設定されると、RRDYフラグが設
定される毎にホスト・コンピュ ータ割込み要求が発生ずる。これはホ スト・プログラムによりクリアされる。
5〜’ O: Jfり当てなし 受信データ 与と・4廻と 説明及び動作 15〜8;割当てなし 7〜0;ごれらのビットはホスト・プログラムにより読
取るべきデータ用文字を含ん でいる。関連した受信制御/状態レジ スタ内にRRDYフラグが設定された場合のみ、データ
は無効である。
ビ・・1・5と同じ状態−−−−−−−−−−一−−・
−一−−−−−−−−−−・−−−−−−・11111
割当てなし一−−−−−−−−−−−−−−−−一一−
−−−−−−−−−−−−−−−−−−−−−−−−一
−−1:[1割当7なし一−−−−−−−−−−−−−
−−−−−−−−1−一−−−−−−1−1−−−−一
−1−1−0−111害り当7なし一−−−−−−−−
−−−−−−−、−2−1−1−−−一−−6−一−−
−−1−−−−−−−−−1暑1割当°ζなし一−−−
−−−−−−−−−−−−−−−−−−−−−−−−−
−−−−−一一−−−−−−−−−−−−−−−−一−
−−1ビット 説明及び動作 15〜8:割当てなし 7 :これは、ホス)ロコンピュータカ一時保持レジス
タ(18)を介してデータを出力しているごとを示すT
RrlYフラグである。
6 :このビットが設定されると、TRrlYフラグが
設定されるときはホスト・コンピ ュータ割込み要求が発生する。これは ホスト・プログラムによりクリアされ る。
5.4:これら2つのビットを市いて、このレジスタが
送信制御/状態レジスタ、属 性レジスタ又はボート制御レジスタと して解釈されることを示す。これが送 信制御/状態レジスタとして解釈され る場合、両方のビットは同じでなけれ ばならない(共にセット又はクリア)。
3へ・0:割当てなし ボート制御レジスタ(PCTR) 要求ピッl−7−〜−−−−・−一−−−−−−−−−
−−−−−−−−一−−−−−・・・・・・・・要求ビ
ット6 −−−−−−−−−−−−−一−−・−−−−
−一−−−−−−−−・ ・ ・ ・ ・ ・ ・クリ
アー−−一一−一−−−−−−−−−−−−−−−−−
−−−−−−−−−−−−−−−−一−−一部;:::
:セソ+−−−−−−−−−−−−−−−−−−−−−
−−−−−−−−−−−−−−−−−−−−−−−−−
−−: ::’、i要求ピッ13 −一−−−・−−−
−−−−−−−−−−−−−−−−−−−−−−−−−
−−−−一−−・:::要求ビット2−−−−−−−−
−−−−−−−−−−−−−−−−・−−一−−−−−
−−−−−−−−−−・ ・ ・要求ビット1 −−−
−−−−−−−−−−−−−−−−−−−・・−−一−
−−−−−−−−−−−−−・−−−−・・要求ビット
o −−−−−−−−−−−−−−−−−−−−−−−
−−−−−−−−−−−−−−・−一−−・ビット 祝
明及び動作 15〜8二割当てなし 7 :バッファ制御要求ビット 6 :バッファ制御要求ビット 5.4:これがボート制御レジスタとして解釈される場
合、ビット5はクリアされ、 ビット4はセットされなければならな い。
3〜0:バッファ制御要求ヒソ1−0正確な要求プロト
コル用プログラミング部分内の 「−ボート制御要求」を参照のこと。
バッファ制御要求ビットの適当な設定により特定される
バッファ制御要求コードの概要を示す資料へを参照のこ
と。
繰返い+11序の開始−−−−−−−−−−−−−−−
−−一−−−−−−−シi::i:::繰返し順序の終
了−−−−−−一−−−−−−−−−−−−−−−−−
一−−−;:IIIIIセット −−−−−−−−−−
−−−−−−−−−一一−−−−−−−−−−−−−−
−−−−−一−−−−−−1:1ii1クリアー−−一
一一−−−−−−−−〜−−−−−−−−−一−−−−
−−−−−−−−−−−−一一−−−−二::::デー
タ111力禁1に−−−−−=−−−−−−−−−−−
−−−一−−−−−−−−−−−−−・−・−[:iI
遅延ユニット 見ヱーし 説明及び動作 15〜8二割当てなし 7 :セソ(・時、これは出カバ・ノファ繰返し順序の
第1文字を示す。
ら :七ソト時、これは出カバソファ繰返し力1自序の
最終文字を示す。
5.4:これが属性レジスタとして解釈される場合、ビ
ン1−5をセットし、ビット4をクリアしなければなら
ない。
3 ;ごのビットがゼットされると、文字はターミナル
に出力されない。
2〜0;これら3つのビットは、次の文字が出力される
前に要求された遅延を示す。
ピッl−7,6及び2〜0に関連した動作の詳細につい
ては資料へを参照のこと。
割当てなし 転送されたデータ (リ−内己社及−び動作 15〜1+−割当てなし 7〜0:これらのビットは、出カバソファへ、そして出
力装置に転送されるデータ用 文字である。
クリアー°−′−−−−−゛−−−−゛−°−−−−−
−′−−−−−−−−゛−−一−−′:::i:::2
811’ (”、l・I?l・(j e奸)”−゛−′
−°−゛−−−−−−−°”1冒冒1データ・オーバラ
ンーーーーーーーーーーー−一−−−−−−−−−−−
−−−−−”;;i::フレーミング・1工:ラ一 −
−−一−−−−−−−−−−−−−−−−−−−−−一
一一一′−L 11割当′ζなし一−−−−−−−=−
−−−−−−−一一一−−−−−−−−−−−−−−−
−−−−−−−−一−−−[;用1割当てなし゛−−−
−−−−°−−−−−“−゛−−−−−−−−−−−パ
−”−−−−−−−−−−一“−−−−−“II割当′
ζなし一−−−−−−−−−−−−−−−−−−一−−
−−−−−−−−−−−−−−−−−一−−=−−−−
−−−−・−=1割当°ζなし一−−−−−−−−−−
−−−−−−一−−−−−−−−−−−−−−−−一・
−一−−−−−−−−−−−−−−−−−−;ビ・、ト
 説明及び動作 15〜8:酋I当てなし 7 :クリアされると、このビ、、トは、ターミナル入
力状態がビット4〜6に反映 されることを示す。またセントされる と、このビットは、ボート制御要求状 態がビット4〜6に反映されることを 示す。
6 ]セットされると、このビットは、2つの連続した
I’ CTRL Clを入力装置から受けることを示す
5 :セントされると、このビットは入カバソファ又は
インタフェース・アダプタ がオーバフローしたことを示す。
4 :セットされると、このビットば停止ビットを期待
したように受信できなかっ たので、不適当に形成された文字を受 けたごとを示す。これは、通常、出力 装置から RI?EAKコードを受けたことを怠味する
3〜0:割当てなし ’Nf!I当てられたピッ1−に関する動作の説明は資
料Aを参照のこと。
ボーI・状態レジスタ(PSTAT )アドレス連1当
゛ζなし 。
セ・・1・−・−−−−−−一一一−−−−−−・−−
−−−−一−−−−−−−−−−−−−−−[1iii
;:1状態 1111 割当′ζなし一−−−−−−−−−−−−−−−−−−
−−−一一−−−−−−−−−−−−−−−−一−−−
−−−j;1;割当てなし−−−−−−−−−−・−−
−−−−一−・−−−−−−−−−一一一一−−・−−
−−−−−一−=−−−−j11押1当てなし一−−−
−−−−−−−−−−−−−−−−−一−−−−−−−
−−−−−−−−−−−−−−一−−−−−−−−−:
1割当てなし一−−−−−−−−−−−−−−−−一・
−−一−−−−−−−−−−−−=−−−−−−−−−
−−−−−−−一−−−−ニー<−、江 説明及び動作 15〜)(二割当てなし 7 二セントされると、このピッ1−は、ボート制御要
求状態がビット4〜6に反映 されることをネオ。クリアされると、 このビットは、ターミナル入力状態で ビット4〜6に1又1吹されることを示す。
6〜4:戻り状態ビット・コートについて資料Aを参照
のこと。
3〜0:割当てなし 受信制御/状態レジスタθ0)及び送信制御/状態レジ
スタ(12)は、マルチプレクサ(58)及び(6〔Q
 (本発明の好適な実施例におけるメモリ・アドレス及
びデータ制御マイクロ回路の荊略図をボず第5図参照)
によりアドレス指定される。マルチプレクサ(58)は
その出力ライン用に、適当なチャンネルのTRIIYフ
ラグ(後述の如くカウンタ(32)に維持されている)
又は1? 11 n Vフラグ(ラッチ(70)に維持
されている)をi対訳する。マルチプレクサ(66)は
その出力ライン用に適当なチャンネル・レシーバ又は転
送イネーブル・フラグ(ラッチ(62)内に維持されて
いる)を選択する。ポスト・コンピュータがアドレス指
定可能な16ビツト・レジスタ(14)を用いて、ボー
ト状態レジスタ(14)とする。同様に1対の]6ビツ
ト・レジスタが受信バッファ (49)となり、単一の
フリップ・フロップが転送データ・レジスタ(18)と
なる。後述の如< 、iin信インタフェース内に設け
られた特別なハードウェアが転送データ・レジスタ(1
8)に保持されるデータ用文字を受ける適当な1Bカバ
ソフア涜積ロケーシヨンを直接決定するのを容易にし、
かつその蓄積「1ケーシヨンにデータ用文字を直接転送
するのを容易にするので、各出力チャンネル毎に独立し
た転送データ・レジスタを設ける必要がない。
マイクロプロセッサ(24) (第2図)の第1割込め
要求(FTRn)機能を用いて、転送データ・レジスタ
(18)からのデータ用文字又は属性二1−ドを出力蓄
積バッファ (28)に転送すると共に、受信へソファ
(49)からのデータ用文字をホスト・コンピュータに
転送する。FIRQ割込みを用いて、ホスト・コンピュ
ータが転送データ・レジスタ(18)を介して通信イン
タフェースに転送するチャンネル制御情報を処理する。
フィクロプロセッサ(24)の割込め要求(IRQ)t
m能を用いて、出力苗積バッファ(28)からのデータ
用文字を関連した出力装置に転送するか、入力装置から
のデータ用文字を関連した入力凸積バッファ (48)
に転送する。
マイクロプロセッサ(24)の動作をプログ°ラムする
ファームフェア内に含まれた自己試験ルーチンが、マイ
クロプロセッサ(24)のマスク不filな割込み(N
MI)機能を利用する。
III (Ill 、マイクロプロセッサ・ファームウ
ェアこの明8III書の資料Aは、本発明の好適な実施
例におけるマイクロプロセッサ(24)の動作をブII
Iグラムしたファームウェアのソース・コードのリスト
である。
資料Aに含まれた1−メインライン」ルーチンは、割込
のが行なわれない間、連続的に走る。
メインライン・ルーチンの各階段は異なる入力/出力チ
ャンネル対を処理する。よって、メインライン・ルーチ
ンの4段階が4 (11i1のチャンネル対のすべてを
処理するのに必要である。メインライン・ルーチンは、
人力蓄積バッファ (48)から受信バッファ(49)
へのデータ転送及び出力#積バッファ (28)から関
連した出力装置へのデータ転送を開始する。
資II!l Aは、−ヒ述したFIRQ及びIRQ割込
のを処理するためのFIRQ及びIRQ割込みサービス
・ルーチンを更に含んでいる。
また資料Aは、通信インタフェース内のメモリ装置、タ
イマ及び入力/出力ボートがilE常かを試験するため
に設けた多(の自己試験及び診1折ルーチンを含んでい
る。
多くの説明的二1メントを含む資料へから当業、イには
ファームウェア・プログラミングが理IWできよう。
II (C1、ボスト・二1ンビュータから出力装ji
91へのデータ転送 フィクロプロセッサ(24)は送信制御/状態レジスフ
(12)に維持されているT l? n Yフラグを用
い、関連した出力チャンネルを介してデータ用文字を出
力することを、ホスト・コンピュータに知らせる。ホス
ト・:コンピュータ1.:1その割込めをイネーブル又
はディスエーブルされて動作する。(送信制御/状態レ
ジスタ(12)は、各チャンネル対に転送割込みイネー
ブル フラグをり!に含んでいる。)ポスト・コンピュ
ータ割込みがイネーブルされた場合、4つのTRDYフ
ラグの仕慈のものがセットされると、ポスト・コンビー
フーータの動作ムこ割込みを受ける。
;11す込めがかかると、ポスト・コンピュータはこの
ポスト・コンピノ、−夕動作の制御を適当な割込めサー
ビス・ルーチンに転送する。このルーチン41、割込み
を起こしたTRI)Yフラグに関連したチャンネルに出
力するのにデータが利用可能かを’I’11断し、利用
可能ならば、データ用文字をそのチャンネルに出力する
。ポスト・コンピュータ割込みがディスエーブルされた
ならば、ポスト・コンピュータは周期的に送信制御/状
態レジスフ(12)内に保持されたTl1rlYフラグ
を検査して、データ用文字を特定のチャンネルに出力す
るか否かを判断しなければならない。
ホスト・コンピュータはそのデータ・ラインn 00〜
DO7によりデータを出力する。意図したデータ用の特
定の1lTI fFtインタフェース、出力チャンネル
及びレジスタを識別するアドレス指定情報を、ポスト・
コンピュータがそのアドレス・ラインへ〇1〜八17に
出力する。ライン・レシーバ(50) (第5図)を介
してアドレス情報をアドレス・デコーダ(20)に伝達
する。このデ二1−ダ(20)は、情報をデコートして
データ出力動作の3つの可能形式の1つを識別するよう
にプログラムされている。これら3つの形式とは次の通
りである。
1、通常データ用文字の出力 2、データ属性情報の出力 3、 チャンネル制御情報の出力 ITIfcl(i)、通常データ用文字の出力アドレス
・デコーダ(20)がitl當デーデー文字出力動作を
検出すると、その出力線TRUl’A及びTnlll’
nは共にL高」にセントされる。データ及びアドレス情
報を供給した後、ホスト・コンピュータはMSYNスト
ローブ・パルスを発生して、データ及びアドレス・ライ
ン十の情報が安定し、レジスタにラッチされたことを示
す。MSYNストローブ・パルスによりトランシーバ(
84)から転送データ・レジスタ(18)にデータ用文
字をラッチする。同時に、アドレス・デコーダ(20)
のT旧+11八及びT B U II 8出力がフリッ
プ・フロップ(56) (本発明の好適な実施例におけ
る入力/出力制御マイクロ11旧俗の回路図を示す第4
図参照)にラッチされる。このフリップ・フロップ(5
6)は、ライン0UT11 、八TTII及びPORT
I1に3つの0■能なデータ出力動作のどれが進行中か
を独特に識別する3つの信号の1つを出力する。
通常データ用文字出力動作が進行中ならば、011TI
Iラインεま1(1である。属性コード出力fltl+
作が進行中ならば、ATT11ラインが1低」である。
また、チャンネル制御情報出力動作が進は中ならば、P
ORTiiORTiミラインある。
フリップ・フロップ(56)のouTtt 、^TTI
 1及びPORTI I出力信号を割込み制御器(22
)に供給する。これら信号を割込み制御器(22)にラ
ッチするごとにより、割込み制御器(22)のIRQ出
カシカライン低」となり、マイクロブ1:1セツサ(2
4)にFTI?口割込み要求を知らせる。
次にマイクロプロセツサ(24) 4;I:制御を適当
なファームウェアFIR口割込みサービス・ルーチンに
転送する。
割込み制御器(22)を便利に利用して、rrRQJ形
式の割込み要求を発生させる。しかし好適な実施例にお
いて、I’ PIl?QJ形式の割込み要求が発生ずる
ように割込み制御器(22)を適合させる。 FPF?
OM (38) (第2図参照)番1、IRQ及びpH
l(1割込み号−ビス・ルーチンに対するポインタのテ
ーブルを記憶している。IRQ割込みサービス・ルーチ
ン・アドレスのテーブルの基本アドレスの一ト位4ビッ
トを、割込み制御器(22) (第4し1)に都合よく
直接供給し、適当なIRQ割込みサービス・ルーチンの
アドレスを含むロケーションにおけるテーブルをボずよ
・うにこれらアドレス・ビットをオフセットする。
1ノ1他的オア・ゲート(64)は、更に予備的なオフ
セットをこれらアドレス・ヒツトに行ない、割込み11
i11宿1器(22)に(J4給された基本アドレスが
、IRQ割込みサービス・ルーチンのアドレスのチーフ
ルの初めではなく、F[RQ割込みサービス・ルーチン
のアドレスのテーブルの初めをボずようにする。よって
、割込み制御器(22)絹−フイクロブロセソサ(24
)に、i所当なFIRO占り込みサービス・ルーチンの
アドレスを示すベクトルをイJ(給する。
マイクロプロセッサ(24)はFTRQ割込みをサービ
スするYill、備ができたごとを示すので、割込み制
御器(22)のS T l? I!T C11出カライ
ンが「低」になり、フリップ・フロップ(68) (本
発明の好適2に実施例にお&JるRAM及びRAM制御
マイクロ回路を示す第3図を参照)をセントする。
セットされると、フリップ・フロップ(68)はFIR
O割込みが進行中であることを示す。
1ぐAM(26)は、出力蓄積バッファ(28)の各々
における次に利用可能な逐次蓄積ロケーション、関連し
た出力装置’iilにまだ出力されない各出力蓄積バッ
ファ(28)内の1最古の」データ用文字のロケーショ
ン、及び各人力ffi Xfiバッファ (,110に
対応するポインタを示すアドレスのテーブルを記憶して
いる。マイクロプロセッサ(24)により制御が転嫁し
たマイクロプロセラ4ノー・ファームウェアFIR口割
込めサービス・ルーチンは、RAM(26)から、転送
データ・レジスタ(Ill)に保持されたデータ用文字
を受けるべき次に利用可能な逐次蓄積ロケーションの出
カバソファ・アドレスを得る。RAM(26)の八6及
び^7アドレス・ラインは、jJrl信インタインタフ
エースビスする4つの出力チャンネルのどれがデータ用
文字を受けるのかを示す2ビット信号を受ける。よっ°
ζ、RAM(26)内の適当な出力チャンネル・アドレ
ス・ポインタ・テーブルに即時のオフセットを行なう。
マイクロプロセッサ(24)は次に、アドレス指定され
た出カバソファ・ロケーションにデータ用文字を書込も
うと試める。しかし、マイクロプロセッサ・ハス−にの
マイクロプロセッサ(24)からのテ゛−タを制御する
8進バス・トランシーバ(72)(第2図参照)は、F
IIIO割込みが継続期間中、ディスエーブルされる。
よって、マイクロプロ七ソー1.I・(24)はデータ
用文字を出力バッファに71込もうとするが、実際には
、その文字は出カバソファに1七込まれない。代わりに
、転送データ・レジスタ(18)がイネーブルされ、そ
このデータ用文字がマイクロプロセツサ・バスを介して
、マイクロプロセッサ(24)がアドレス指5j二する
出カバソファ蓄積ロケーションに直接転送される。」−
述したハードウェアにより、転送データ・レジスタ(1
8)からのデータ用文字を適当な出カバソファ蓄積ロケ
ーションに転送する際に、中間の読出し/凋込め動作の
必要がない。よって、4つの出力チャンネルをサービス
4−るのに、単一のフリップ・フロップ(18)と単一
のr’IRQ割込みサービス・ルーチンで十分である。
マイクロプロセッサ・ファームウェアFIRQ割込めサ
ービス・ルーチンは次に出カバソファ・ア1−“レス・
ポインタを2だけ増分させるので、ポインタは、用カバ
ソファ内の次に逐次使用可能なデータ蓄杷ロケーション
をポす。(上述の如く、各データ用文字を記憶した出カ
バソファに属性ご1−トを蓄積する。よって、各データ
用文字に2つの出カバソファ蓄積ロケーションを使うの
で、ポインタを7だけ増分しなければならない。)増分
したポインタをRAM’(26)に配置するには、2回
の居込み動作が必要である(アト1/スが16ビツトj
長で、1度に8ビツトしか居込めないため)。アドレス
・ポインタの上(〜>8ビツトをRAM(26)に1!
;込む前に、出カバソファの最後に利用可能な逐次〃f
積ロケーシjンのアドレスを超えてポインタが増分した
場合、8進バス・ドライバ(74)がアドレス・ポイン
タを調整して、出カバソファの初めを示す。
これは、出力蓄積バッファ (28)がマイクロフ゛r
:Iセッサ(24)のアドレス空間の既知の位置に配置
されているからである。好適な実施例において、8進バ
ス・ドライバ(74)は、RAM(2fi)にIll込
まれる前に、アドレス・ポインタの1位8ビツトの代わ
りにrlOccIXXXj(2進)を用いる。文字1’
 CCJは通信インクフェースにサービスされる現在の
出力チャンネルの数を恕味し、文字r’ X X X 
Jはアドレス下3ビットを意味し、変化しない。
アドレス・ポインタの下8ビットは[そのままで、I 
RAM (26)に書、込む。下8ビットが書込まれる
ので、フリップ・フロップ(6日)はクリアされて、F
r1lQ割込みの完了を示す。アンド・ゲート(76)
 、(78)及びナンド・ゲート(80)が完r信号を
発生ずる。特に、フリップ・フロップ(68)がセット
され(即ちFIR口割込みが継続中)、データ出力動作
が継続中で(即ちR/Wラインが1低」)、情報がRA
M(26>に居込まれている(即ちラインRAMが「低
」)のとき、アンド・ゲー1−(76)の出力は「高」
である。アンド・ゲー1− (76)の出力をアンド・
ゲート(78)に供給する。アンド・ゲート(78)の
他の入力は、マイクロプロセッサ・71ルス・ラインの
ビットOを反転したものである。よって、マイクロプロ
セッサ(24)がアドレス指定したロケーションが偶数
ならば、アンド・ゲート(78)の出力は「商」である
。マイクロプロセッサ(2vl)でストローブされるナ
ンド・ゲート(80)にアンド・ゲー1− (78)の
出力を供給するので、フリップ・フロップ(68)がオ
フに変化し、次にアンド・ゲー1− (76)がオフに
変化して、フリップ・フロップ(68)がリセットされ
るのを防止する。
出力蓄積バッファ(28)は循環型であり、好適な実施
例におい°ζは、各々がタイナミソクRAM(54)内
の連続したアドレス空間の2,048バイトから成る。
スタティックRAM(26)内に蓄積されたアドレス・
ポインタ・テーブルは、各出カバソファ内の次に逐次利
用可能な蓄積ロケーションのアドレス(即ちバッファ「
開始」アトlメス)、及び特定の出カバソファに関連し
たチャンネルによりサービスされる出力装置にまだ出力
していない各出力バッファに蓄積された1最古の」デー
タ用文字のアドレス(即ちバッファ1終Y」アドレス)
のポインタを含む。
出カバソファに蓄積された文字が関連した出力装置に転
送される毎に、1−終了」アドレス・ポインタは2だけ
増分されるので、出カバソファ・データ蓄積ロケーショ
ンは新たなデータ用文字を取込めることを示す。
上述の如く、ポインタ・アドレスが出カバソファの最終
データ蓄積ロケーションのアドレスを超えて増分した場
合、8進バス・ドライバ(74)は、RAM(26)に
蓄積された出カバソファ・アドレス・ポインタがバッフ
ァの初めを不ずように「ラップアラウンド」するのを確
実にする。しかし、出力装置にまだ転送されていないデ
ータを記憶するバッファ蓄積ロケーション内に新しいデ
ータを蓄積することにより、出カバソファがオーバフロ
ーしないように注意しなければならない。これを、リッ
プル・カウンタ(32) (第5図)の助けにより行な
う。
RAM(26)に蓄積された出力バッファの1開始」及
び「終了」アドレス・ポインタを比校するごとにより、
マイクロプロセッサ(24)の動作を制御するファーム
ウェアは、特定の出カバソファが少なくとも128(I
Illの付加データ用文字を蓄積する充分な余裕がある
かを判11iしてもよい。このバッファが1281固の
付加データ用文字のための余裕がある場合、このバッフ
ァに関連したリップル・カウンタをクリアする。そうで
なければ、(データ用文字を転送データ・レジスタ(1
8)に蓄積する毎に、デ、コーグ(82)によりクロッ
クされる)カウンタは、計数を持続する。計数が128
に達すると、カウジタはオーバフローする。このカウン
タの出力がTRDYフラグを構成し、このフラグは、カ
ウンタがオーバフローするとクリアされ、付加データ用
文字を関連した出力≠ヤンネルに転送すべきでないこと
をホスト・コンピュータに知らせる。関連した出カバソ
ファの少なくとも 128個のロケーションが自由にな
るまで、マイクロッ”ロセ・ノサ(24)の動作を制御
するファームフェアはカウンタ (32)をクリアしな
い(よって、TRIIYフラグを立てるごとにより、新
たなデータを関連したチャンネルに出力してもよいこと
をホスト・コンピュータに知らせる)。
マイクロプロセッサ(24)は、従来のIRQファーム
ウェア割込みサービス・ルーチンによるルーチン形式で
、出力蓄積バッファ(2日)からのデータを関連した出
力装置に転送する。特に、マイクロプロセッサ(24)
はRAM(54)(出カバソファが設けられている)か
らのデータ用文字を、このデータ用文字を受けるべき出
力装置に関連したインタフェース・アダプタ(42)に
転送する。8進バス・トランシーバ(88) (第3図
)はRAM(54)の出力駆動能力を+Biめる。イン
タフェース・アダプタ(42)は、データをII323
2Cレベルに変換するライン・ドライバ(44)を介し
て出力装置に連続的に転送するために、データ用文字を
並列形式から直列形式に変換する。
Ir1fcl (ii ) 、データ属性情報の出力ホ
ス]−・コンピュータが出力する各データ用文字には、
1バイトの属性コードが先行している。データ用文字を
出力装置に転送する前に、マイクロプロセッサのファー
J2ウェアが属性コードを解読し、適当な動作を行なう
。代表的な属1!1には、例えば、次のデータ用文字を
出力装置に転送する簡に、マイクロプロセッサ(24)
がある選択された時間だげ待たな&Jればならないごと
を定める時間遅延コード、特定のデータ用文字を出力装
置に繰返し転送しなければならないことを示すデータ繰
返しコード等がある。
資料Aは本発明の好適な実施例で用いる属性コー1−を
i′を述している。
アドレス・デコーダ(20)はそのT II II F
 R出力ラインを「高」にし、 TB[IFA出カシカ
ライン低−1にして、データ属性書込み動作力組本続中
であることを示す。転送データ・レジスタ(18)は属
111コードを通當のデータ用文字の如くラッチする。
フリップ・フロップ(56)のATTII出力を1低」
にセソ]・シて、属性書込み動作が継続中であることを
割込み制御器(22)に知らせる。
割込み制御器(22)は、マイクロプロセッサ(24)
にFIIIQ割込みを行ない、それをベクトル・アドレ
スと共に適当なFIRQ割込みサービス・ルーチンにイ
」(給する。FIR[1割込みサービス・)1/−チン
は、属性二ノー1を受けるべき出カッ<・ソファ・ロケ
ーションのアドレスをRAM(26)から得、そして、
」一連の如く転送データ・レジスタ(1B)からの直接
転送により、そのロケーション内に属4+1ご+−)を
凸積する。
属性コードが出カバソファ内に蓄積された後は、RAM
(26)内の出カッ\・ソファ・アドレス・ポインタは
更新されない。その理由は、ホスト・コンピュータが属
性コードに関連したデータ用文字を転送する前に、属性
コードを転送するからである。よっ′(、ホスト・コン
ピュータからデータ用文字を受けた後に出力)\・ソフ
ァに蓄積するまでは、RAM(26)内の出カッ\・ソ
ファ・ア1ルス・ポインタを更新してはいけなし)。
FIRQ割込みの完Yを知らせるため、FIRQ割込め
サービス・ルーチンはRAM(26)の偶数アドレス・
スクラッチ・「lケーションにダミー書込め動作を行な
い、アンド・ゲー) (76) 。
(78)及びナンド・ゲート(80)にまり子連の如く
フリップ・フロップ(68)をリセットし、FIRO割
込み状態をクリアする。
マイクロプロセッサ・ファームウェアによりブ1コグラ
マブル・タイマ(34) (第4141)を用いて、属
性コードが特定した任意のデータ出力の遅延時間を計る
。属1!1゛コードにおいて、特定された遅延J!−ド
をタイマにロードして、タイ−7を開始させる。タイマ
が中断したとき、マイクロプロセッサ(24)の動作が
割込みを受け、次のデータ用文字を出力する。
III (cl (iii ) 、チャンネル制礁情濯
p町匁データ出力動作の第3の形式は、ポスト・コンビ
ュータによるチャンネル制御情報の転送である。マイク
ロプロセッサ・ファームフェアがこのI’Nt報に割り
込みをか&J、次に、適当な形式の特定チャンネルの特
性を81iJ整する。制御される代表的なチャンネル特
111:に、チャンネル・データ転送レーI・(好適な
実施例においては、150ボー及び10.2(10ボー
の間で可変)、入力及び/又(,1出カバソフアの内容
をクリアする能力、関連した人力蓄積バッファ(48)
が一杯の場合に人力装置のデータ転送を終了させる「フ
ラグド人力」機能を含むことができる。資料Aは好適な
実施例において制御されるチャンネル特性をA’F述し
ている。
7トレス・デコーダ(20)はその出力ラインT B 
tl )ンBを[イ氏」にし、T[lUF八を「高」に
セット−M(ポスト−:+ンピュータがチャンネルHi
ll 御情報を転送していることを知らせる。ホスト・
:コンピュータが転送したチャンネル制御情報の1ハイ
I・が転送データ・レジスター(1B)にラッチされる
。」二連の如く、フリップ・フロップ(56)はそのP
ORTi 1出カラインを1低」にセン1へするので、
チャンネル制御データ出力動作が継続中であることを割
込み制御器(22)に知らせる。割込島制御器(22)
は次にベクトル化されたFIRQ割込みを行ない、それ
によってマイクロブI′:1セソザ(24)の制御を適
当なファームウェア割込めサービス・ルーチンはFII
IQハードウェアをディスエーブルしくよって史にFI
I?Q割込めをディスエーブルし)、転送データ・レジ
スタ(18)の内容を直接読取ってチャンネル制御情報
を得、その情報をデコートし、ファームウェア・プログ
ラミングが定義したように適当なチャンネル制御命令を
実行する。FTRQハードウェアが111びイネーブル
され、割込めサービス・ルーチンが終了する。
ブ[1グラマプル・タイマ(36)は、連続データ用文
字の遅延した出力をイネーブルするタイマ(34)と同
じ装置である。タイマが出力した矩形波の周波数を制御
する適当なコート (ボート制御レジスタを介してホス
ト・コンピュータが供給する)をタイマ(36)にロー
ドする。この矩形波を用いて関連したインタフェース・
アダプタ(42)をクロックして、特定の入力/出力子
・センネルにより転送するデータのレートを決定する。
TII fd+ 、人力装置からホスト・コンピュータ
へのデータ入力 本発明の好適な実施例の1lll信インタフエースは、
最lr+; 4個の入力装置をサービスする。人力装置
ffは的列形式の人力データを、ライン・レシーバ(4
6) (各入力チャンネル毎にN11rl)を介しく供
給する。これらライン・レシーバ(46)は、II32
32CレベルからTTL電圧レベルに変換し、このデー
タを関連したインタフェース・アダプタ(42)に転送
する。受信を行なうインタフェース・アダプタは、直列
入力データを並列形式に変換し、IRQ割込み信号を発
生して、マイク「Jプロセッサ(24)の動作に割込み
をかける。マイクロプロセッサ(24)は次にインタフ
ェース・アダプタ(42)の各々を間合せ、4個の装置
のどれが割込のを行なったかを判断するく即ら、どのチ
ャンネルがデータ用文字を受けたか全判断する)。この
判断が行なわれると、−マイク1:2プロセッサ(24
)は、入力文字を受けるべき次に逐次利用可能な大カバ
ソファ蓄積ロケーションのアドレスをRAM(26)か
ら得、その人力文字をそのアIレスに蓄積し、次にRA
 M (26)のアドレス・ポインタを増分する。
人力バッファが一杯の場合、そのデータ用文字を捨゛C
1関連したボート状態レジスタ(14)のビット5をポ
スト・コンピュータの間合せ用にセットして、データ用
文′字を失なったことをホスト・コンピュータに伝える
通常、マイクロプロセッサ(24)は人力バッファ・ア
ドレス・ポインタを越験して、ホスト・二1ンビュータ
に転送されるのを待っているデータが入力蓄積バッファ
(48)内に存在するかを刊tljiする。空の人カバ
ソファが検出されない場合、ポスト・コンピュータにま
だ転送されていないバッファ内の1゛最古の」データ用
文字をそのバッファから取出し、関連した受信バッファ
(49)に書込む。受信バッファ(49)は2 (11
+1のマイクロ回路レジスタから構成され、これらの1
/ジスタは4つの人力チャンネルの各々に1個が割当て
られる4個の8ビツト・レジスタとl「る。受信バッフ
ァ(49)を介してホスト・コンピュータに入力データ
を供給することにより、人力データが待っていることを
ポスト・コンピュータが知、らされたとき、蓄積バッフ
ァから入力文字を(qるためにホスト・コンピュータが
待機しなくともよいことを確実にする。ホスト・コンピ
ュータは受信バッファ (49)からのデータ用文字を
双方向性トランシーバ(84)を介して速やかに受け取
るので、データ入力動作を行なう時間が最少になる。
データ用文字を特定の受信バッファ(49)に蓄積する
と、関連したRIIDYフラグをセットして、データ用
文字が受信バッファ(49)で待機しており、ポスト・
コンピュータがそこから読取れることをポスト・:1ン
ビユータに知らせる。
ホスト・コンピュータ受信割込みが特定の入力チャンネ
ル用にイネーブルされると、そのチャンネル用にI?I
?DYフラグをセットして、ポスト・コンビュータに自
動的に割込みをかける。そして、このボスI−・コンピ
ュータは、受信バッファ (49)からのデータ用文字
を読取る適当な割込めサービス・ルーチンに制御を引継
ぐ。ホスト・コンピュータ受信割込みがディスエーブル
されると、ホスレコンピュータは、受(i ?il制御
/状態レジスタ0ωに保持されているl?l?nYフラ
グを周期的に試験し、受信バッファ (49)内でデー
タ用文字がホスト・コンビュータに入力されるのを待機
しているかを判断しなければならない。
アドレス・デコーダ(2o)は、ボスト・コンビ上−夕
が供!した受信バッファ・!/レジスタアドレスを判断
して、ポスト・コンピュータが受信バッファ(49)か
らデータ用文字を読取ったかを判断する。檜1がる判断
により、デコーダ(20)は、クヮド・ランチ(7o)
で構成される4 1111のランチの1つをクリアし”
で、関連したI?l?nYフラグをクリアする。ランチ
(/10)の4つの出力ラインは、各人カチートンネル
毎のRRDYフラグを反転している。
アトルス・デニ1−ダ(2o)はそのR旧IFR出カラ
インを1低」にセットして、ホスト・コンピュータが受
信バッフy (49)からのデータ用文字を読取ったこ
とを知らせる。ps−jmR信号がフリップ・フT、1
ツブ(56) (第4図)のPINT入力をl +l’
li 、1にし、次に2/4ライン・デコーダ(60)
をイネーブルする。このデコーダ(6o)は最初に受け
た人力文字の特定のチャンネルを表わす4つの信号の内
の1つを割込み制御器(22)に供給する。割込み制御
器(22)は次に目R口割込のを発生して、マイクロプ
ロセツサ(24)を)内当なファームウェア割込みサー
ビス・ルーチンで制御する。このルーチンは、RAM(
26)の偶数アドレスに維持されたファームウェア?i
i製pl?nvフラグをクリアする。よって、−ヒ」本
の如くフリップ・フロップ(68)をリセットさ−トる
ごとにより、複製1?RDYフラグの更新は、17+1
1(]’J・−ビス・モードを終了させる。
本発明の好適な実施例の通信インタフェース内のマイク
ロ回路及び他の電子素子の素子名は第2ヌ1〜第6図に
示す。なお、第6図は従来のホスト・コンピュータ割込
み制御回路なので、その説明は省帖する。
資料Bは、本発明の好適な実施例におけるアドレス・デ
コーダ(20) (フィールド・プログラマブルROM
パンチ・マイクロ回路)の動作をプ「1グラマプルする
マイクロコートのリストである。
小梁4fには明らかな如<、−1−、述の好適な実施例
は、本発明を実現するこめの1例を示すのめである。当
業者に、は、本発明の目的を実現するために代りのマイ
クロ回路構成でも可能なことが理解できよう。同様に、
マイクロプロセツサ(2,1)の動作をプログラムする
ファームウェア7を、任意の特定の環境に適応する多く
の方法に適用さ−Uてもよい。よって、上述の本発明の
好適な実施例は本発明を限定するものではない。
発明の効果 十−i!lsの如く本発明によれば、データ蓄積手段を
設けるごとにより、ポスト・コンピュータを待機させな
いので、このホスト・コンピュータと入力/出力装置間
のデータ転送を旺速に行なうことができる。
【図面の簡単な説明】
第1図は本発明の好適な実施例のブロック図、第2図は
第1図のマイクロプロセツサ及びERIIOMマイクロ
回路部分の回路図、i第3A図及び第3B図Cat第1
図のRAM及びRAM制御マイクロ回路部分の回路図、
第4A図及び第4B図は第1図の人力/出力制御マイク
ロ回路部分の回路図、第5Δ図及び第513図は第1図
のメモリ・アドレス及びデータ、lil制御マイクロ回
路部分のlr!l路図、第6し1仁1、f81図のボス
イ・コンピュータ割込み制御マイク+:+ li+ll
洛の回+zR図である。なお、第3A図は第3B図の−
1−側となって一体となり、第4A図及び第5A図は夫
々第4′h図及び第5Bし1の左側となって一体となる
。 図におい′(、(24)はプログラム0J能な制御手段
、(54)はデータ蓄41+J手段である。 月孔続ネ1(i−TTE書 く方式) 昭和59年12月251] ’14+許庁IZ、官 志 賀 学 bば、1、事件の
表ボ 昭和59年 特 許 願 第158530号j(、補I
I−を)lる宿 “11件との関係 特許出願人 4、代理人 〔;、袖山により増加する発明の数 7、袖山の対象 明細−41の発明の詳細な説明の欄−
)・及び図面。 2(、袖山の内容 (1)明細書中、第63頁〜149頁の1質利八」を削
除する。 (2)同、第150頁〜151頁の1資料B」を削除す
る。 (3)図面を別紙のとおり訂正する。 以」二

Claims (1)

    【特許請求の範囲】
  1. ポスト・コンピュータ並びに入力装置及び出力装置の少
    なくとも一方の間のデータ転送を制御する119倍イン
    タフェースにおいて、プログラム可能な制御手段と、該
    制御手段によりアドレス指定されるデータ蓄積手段とを
    具え、上記制御手段は、上記ポスト・コンピュータ及び
    上記データ蓄積手段の間のデータ転送を制御すると共に
    、上記データ蓄積手段並びに上記人力装置及び出力装置
    の少なくとも一方の間のデータ転送を上記ポスト・コン
    ピュータの動作から独立して制御することを特徴とする
    非同期緩衝通信インタフェース。
JP15853084A 1983-08-04 1984-07-28 非同期緩衝通信インタフエ−ス Pending JPS60110064A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US52039583A 1983-08-04 1983-08-04
US520395 1983-08-04

Publications (1)

Publication Number Publication Date
JPS60110064A true JPS60110064A (ja) 1985-06-15

Family

ID=24072422

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15853084A Pending JPS60110064A (ja) 1983-08-04 1984-07-28 非同期緩衝通信インタフエ−ス

Country Status (3)

Country Link
EP (1) EP0134115A2 (ja)
JP (1) JPS60110064A (ja)
CA (1) CA1219957A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6468146A (en) * 1987-08-13 1989-03-14 Digital Equipment Corp Communication protocol

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0778781B2 (ja) * 1986-06-02 1995-08-23 株式会社日立製作所 情報転送方法
EP0267974B1 (en) * 1986-11-14 1992-02-19 International Business Machines Corporation Control interface for transferring data between a data processing unit and input/output devices

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5040047A (ja) * 1973-08-14 1975-04-12
JPS51149733A (en) * 1975-06-17 1976-12-22 Toshiba Corp Data processing system
JPS54145447A (en) * 1978-05-06 1979-11-13 Toshiba Corp Input-output control system
JPS55143635A (en) * 1979-04-24 1980-11-10 Nec Corp Input-output controller
JPS5659339A (en) * 1979-10-17 1981-05-22 Mitsubishi Electric Corp Input/output control unit

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5040047A (ja) * 1973-08-14 1975-04-12
JPS51149733A (en) * 1975-06-17 1976-12-22 Toshiba Corp Data processing system
JPS54145447A (en) * 1978-05-06 1979-11-13 Toshiba Corp Input-output control system
JPS55143635A (en) * 1979-04-24 1980-11-10 Nec Corp Input-output controller
JPS5659339A (en) * 1979-10-17 1981-05-22 Mitsubishi Electric Corp Input/output control unit

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6468146A (en) * 1987-08-13 1989-03-14 Digital Equipment Corp Communication protocol

Also Published As

Publication number Publication date
CA1219957A (en) 1987-03-31
EP0134115A2 (en) 1985-03-13

Similar Documents

Publication Publication Date Title
TWI257550B (en) Method and apparatus for local and distributed data memory access (""DMA"") control
US6061687A (en) Linked lists of transfer descriptors scheduled at intervals
US5133062A (en) RAM buffer controller for providing simulated first-in-first-out (FIFO) buffers in a random access memory
JP2539614B2 (ja) ポインタアドレスを発生するための装置および方法
US5717870A (en) Serial port controller for preventing repetitive interrupt signals
US20050273564A1 (en) Memory controller
JPS5810235A (ja) インタ−フエイス回路
JPH04336729A (ja) 汎用アダプタ
JPH04218861A (ja) 多重クラスタ信号プロセッサ
JPH0865334A (ja) マルチメディア通信装置及び方法
JPH0219954A (ja) データ処理システム及びデータ通信バス・システム
JPH04233055A (ja) 端末装置サーバアーキテクチャ
JPS59501762A (ja) 直接メモリアクセス・インタ−フエイス装置
EP1288785B1 (en) Method and interface for improved efficiency in performing bus-to-bus read data transfers
TWI226547B (en) Bus system and bus interface for connection to a bus
TW202029000A (zh) 介面轉接電路
US6581116B1 (en) Method and apparatus for high performance transmission of ordered packets on a bus within a data processing system
US20040199706A1 (en) Apparatus for use in a computer systems
JPS60110064A (ja) 非同期緩衝通信インタフエ−ス
DK170081B1 (da) Dataoverføringskredsløb
US7284077B2 (en) Peripheral interface system having dedicated communication channels
US5293495A (en) Method of addressing devices and transferring data on a bus
TW322546B (ja)
US8151015B2 (en) Systems and methods for effecting DMA data transfers
US6178462B1 (en) Protocol for using a PCI interface for connecting networks