JPS61288247A - 多重ポ−ト通信装置 - Google Patents

多重ポ−ト通信装置

Info

Publication number
JPS61288247A
JPS61288247A JP61136402A JP13640286A JPS61288247A JP S61288247 A JPS61288247 A JP S61288247A JP 61136402 A JP61136402 A JP 61136402A JP 13640286 A JP13640286 A JP 13640286A JP S61288247 A JPS61288247 A JP S61288247A
Authority
JP
Japan
Prior art keywords
interrupt
dma
data
processor
bus
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
JP61136402A
Other languages
English (en)
Other versions
JPH0450622B2 (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 JPS61288247A publication Critical patent/JPS61288247A/ja
Publication of JPH0450622B2 publication Critical patent/JPH0450622B2/ja
Granted 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/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/32Handling requests for interconnection or transfer for access to input/output bus using combination of interrupt and burst mode transfer
    • G06F13/34Handling requests for interconnection or transfer for access to input/output bus using combination of interrupt and burst mode transfer with priority control

Landscapes

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

Abstract

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

Description

【発明の詳細な説明】 A、産業上の利用分野 本発明は複数のポートを有する多重ポート通信システム
に関し、さらに詳しくいえば、多重多様なポートをサー
ビスできる多重ポート通信技術に関する。
B、従来技術および問題点 先行技術では、様々な通信制御装置が知られている。I
BMモデル3705通信制御装置およびIBMモデル3
710通信制御装置がその例である。かかる装置は、そ
れに接続された大量の通信ポートを一つまたは複数の標
準プロトコルによりサービスすることができるが、その
ポートに対して一律に、割り込みデータ転送モード、走
査式データ転送モードまたはDMAデータ転送モードの
いずれか1つしか利用しない。この設計思想は、高速ネ
ットワークや一律な構成のネットワークに対して効率的
である。ところが所与の端末装置やプロトコルに対して
効率的なサービスモードは、それに最適な形式以外の別
の形式の通信リンク上でのサービスに利用された場合は
全く効果がないか又は少なくとも余り望ましくないこと
があるので、使用する端末装置の型や通信プロトコルが
多種多様であるようなネットワークには、上記の設計思
想は有用でない。
また1通信制御装置とそれに接続された通信ポートまた
は通信ラインの間のインターフェースに様々なプロトコ
ル・コンバータやアダプタが利用されている。それらは
、通常は、ユーザに関する限り通信システムを特定の端
末プロトコルおよび通信技術に対してトランスペアレン
トなものにする目的であるプロトコルまたはフォーマッ
トを別のものに変換するためのみ用いられる専用の手段
である。かかる装置はよく機能するが1通常は1つのプ
ロトコルともう一つのプロトコルの間の単−変換機能用
に設計されているので適用範囲が限られている。
C0問題点を解決するための手段 したがって本発明は、多種多様なプロトコルを有するポ
ートを効率よくサービスできる通信システムを提供する
ことを目的としている。
この目的を達成するため本発明の多重ポート通信アダプ
タは、(a)複数のポートにそれぞれ接続され、通信プ
ロトコルの変換を行う複数のボートインターフェース手
段と、(b)各ポートに対応してそれぞれ設定された複
数の通信プロトコル変換命令を記憶するメモリと、(C
)データ転送要求を発したポートインターフェース手段
に対応する通信プロトコル変換命令を選択する手段と。
(d)この選択された通信プロトコル変換命令を実行す
るプロセッサと、を具備することを特徴とする。
以下、本発明の作用を実施例と共に説明する。
D、実施例 Di、  ・1例の 會 はじめに本発明の実施例の概要を述べる。
本実施例は多重ボート通信コントローラおよびプロ1−
コルコンバータを有する通信アダプタである。この通信
アダプタは個々の通信ボートのデータサービス特性を定
めるためユーザによりプログラムすることができる取外
し可能なプログラミングカートリッジを利用する。その
ポートのデータサービス特性は、ポート、メモリおよび
ホストシステムの相互間の情報変換を管理するプロセッ
サにより解釈される。DMAモードまたは割込み駆動式
メモリアクセスモードのオペレーションはインバウンド
およびアウトバウンドの通信チャネルの各々に対して個
別的に選択することができる。
各ポートで用いられる通信プロトコルはいかなるタイプ
のものでもよい。通信速度は自動的に認識され各ポート
に対して整合させることができる。
後で詳しく説明するように、DMAデータ転送及び割込
みデータ転送のサービス要求を調停する要求処理装置に
より、データサービスを要求したポートに対して最適の
モードでデータ転送をサービスすることができる。
本実施例では、各ポートごとに次のようなデータサービ
スモードを選択的にプログラムすることができる。すな
わち、プロセッサの介入を極力減らしたDMAモードの
高速のブロック転送もしくはキャラクタ転送、又はプロ
セッサとメモリとの各キャラクタの授受の先立ってキャ
ラクタを個別的に受は取ってチェックすることができる
ようなキャラクタ割込みモードの転送である。以上の如
く、本通信アダプタによれば、多種多様な通信プロトコ
ル及び多種多様なデータ転送モードを各ポートごとに設
定し、どのポートから要求があったかに応じて、そのポ
ートに適した通信プロトコル及びデータ転送翫モードを
選択することで、最適の通信システムを構成することが
可能となる。
上記要求処理装置は、競合する優先順位最高のサービス
要求を選択し、ユーザによりプログラムされた所与のポ
ートにサービスを提供するための命令に応じて、そのプ
ロトコルと競合に勝った特写のポートのニーズに適した
最適のモードのデータ転送サービスが実現されるよう制
御通信経路を構成する。サービス要求オペレーションと
データ転送モード選択し、専用のデータ転送プロセッサ
により行われる。このプロセッサは、制御/データ・バ
スならびにアドレス・バスを介してメインRAMおよび
主プロセツサとインターフェースされる内部RAMを含
んでいる。一方、主プロセツサは、必要なプロトコル変
換、データの待ち行列化またはブロッキング、およびデ
ータ転送機構や競合するサービス要求間の調停に特に関
係しないその他の通信関連サービスを実行する。上記専
用のプロセッサを別個に設けることにより、メイン・シ
ステムの主プロセツサおよびメモリはそのタスクの負担
から解放されるので主プロセツサは各種のポート・イン
ターフェースとその要求を管理する関連の「ハウスキー
ピング」の雑用にかかわらずに済む。したがって主プロ
セツサをデータ変換またはプロトコル変換およびメツセ
ージのブロック化等のオペレーションに最大限に利用で
きる。
さらにその全体的スループットを増加させるために、上
記専用のプロセッサにおいて制御タスクをパイプライン
化することができる。
この設計では、要求処理装置は、10個のポート(それ
ぞれ1個ずつの受信チャネルおよび送信チャネルを有す
るので20個のチャネル)に対するサービス要求を処理
する。各ポート・インターフェースで使用するドライバ
・レシーバは、それぞれ2個のポートまたは4個のチャ
ネルを取り扱うことができる標準的汎用同期/非同期送
受信モジュール(以下USARTともいう)である、要
求処理装置は、24ビツト・アドレス・レジスタを備え
ており、また局所的なRAMの形をとる20個の各チャ
ネル用の個別の16ビツト・バイト・カウント・レジス
タを備えているにれらの各レジスタは、制御ブロックの
一部であり、サービスの形式、通信速度、および個々の
ポート中の各チャネルに関連するその他の機能に関連す
る構成パラメータおよび制御パラメータをそこにプログ
ラム記憶式に記憶することができる。したがって。
要求処理装置により各チャネルごとに選択的に直接メモ
リ・アクセス(DMA)モードまたはキャラクタサービ
ス割り込み駆動モード(割り込みモード)でポートとメ
インRAMとの間のデータ転送を処理することができる
。DMAモードでは、tJsARTと多重ボート通信ア
ダプタのメインRAMとの間でのキャラクタ転送は要求
処理装置の制御下で行われる。一方、割り込みモードで
は、USARTとメイン・RAMの間でのキャラクタの
転送は、主プロセツサ自体によって制御され、主プロセ
ツサはキャラクタ毎に例えば情報を正確に受信したかど
うかをチェックすることができる。
要求処理装置に独自の内部RAMを設けたことも本実施
例の特徴である6 以下、詳細に説明する前に本発明の幾つかの実施例を簡
単に列挙しておく。
(イ)下記の(a)ないしくe)の手段を具備する多重
ポート通信アダプタ。
(a)データ・バス及びアドレス・バスが接続されてい
るプロセッサ (b)DMAデータ転送要求および割り込みデータ転送
要求を調停し制御する要求処理装置 (c)各ポートにそれぞれ接続されるポート・インター
フェース手段 (d)上記プロセッサおよび上記要求処理装置に接続さ
れる割り込み制御論理手段 (e)上記データ・バスおよびアドレス・バスに接続さ
れている記憶手段 ここで上記ポート・インターフェース手段は、信号の送
受信のため通信リンクに接続され、上記要求処理装置に
データ転送サービス要求信号を与える手段を具備し、上
記要求処理装置は、上記データ・バスおよびアドレス・
バスを介して上記プロセッサに接続されており、上記要
求処理装置が、上記データ転送サービス要求を調停し、
そのポートを識別し、その中から現在要求を出している
優先順位最高のポートのサービス要求を選択し、それに
応じて、上記プロセッサから受は取ったモード情報に基
づいて割り込み要求またはDMA要求を出す(上記モー
ド情報はポートごとにあらかじめ設定されたもので、要
求のタイプを示す情報である)ことを特徴とする。
(ロ)下記の(a)ないしくd)の手段を具備する多重
ポート通信アダプタ (a)複数の汎用同期/非同期送受装置(以下USAR
Tという) (b)上記各USARTに接続されているサービス要求
信号手段 (c)上記複数のサービス要求信号手段が接続されてい
る要求処理装置 (d)プロセッサ、メモリ、ならびにデータ・バスおよ
びアドレス・バス(要求の優先順位及びそれにより選択
された要求のタイプに応じて、上記プロセッサ、上記U
SART、および上記メモリ間でデータが通信される) (ハ)下記の(a)ないしくb)を具備する多重ポート
通信アダプタ (a)複数のポートにそれぞれ接続され、通信プロトコ
ルの変換を行うため少なくとも信号レベル変換手段を具
備する複数のポートインターフェース手段 (b)上記各ポートに対応してそれぞれ設定された通信
プロトコル変換命令を記憶するメモリ (c)ポートインターフェース手段からのデータ転送要
求を受は取ってこれらを調停しその中から優先順位最高
のものを選んで、該選択されたデータ転送要求を発した
ポートインターフェース手段に対応する通信プロトコル
変換命令のメモリアドレスを発生する手段 (d)上記手段により発生されるメモリアドレスに応答
して通信プロトコル変換命令を実行するプロセッサ ここで上記ポートインターフェース手段はさらに次のも
のを含む。
通信プロトコル変換命令に基づく制御信号により制御さ
れる汎用の同期/非同期式送受信装置。
ここで上記(イ)ないしくハ)の多重ポート通信アダプ
タはさらに次のものを含む。
(i)上記データ・バスに接続されたプログラム可能な
タイマと、(it)上記タイマを用いて、上記複数のポ
ートインターフェースの1つから発せられる少なくとも
2つの連続するサービス要求の時間間隔を測定する手段
と、から成る伝送速度測定手段 ここで上記が要求処理装置は次のものを含む。
(i)DMAモードプロセッサ (it)割込みモードプロセッサ (fit)上記各ポートインターフェース通信手段から
の要求を上記DMAモードプロセッサ又は割込みモード
プロセッサのいずれに処理させるかを選択する手段 D2.プロゲラムロ な 重ポー ゛ アダプタ本節で
説明する全体的な構成は、プログラム記憶式に調節可能
なプロトコル・アダプタおよびポート・インターフェー
スを含む通信コントローラ(以下、「多重ポート通信ア
ダプタ」という)である。これは、マイクロプロセッサ
をベースとするマシンであり、プロトコル変換、データ
ブロック化、エラー処理、エラー回復、システム通信制
御等の様々な機能をプログラム記憶式に制御することが
できるものである。この多重ポート通信アダプタは、複
数のDMA要求および複数の割り込み要求の競合を調停
する要求処理装置(以下、「DIACJという)を含む
、さらに、この多重ポート通信アダプタにインターフェ
ース制御論理を付加することにより無走査式(scan
less)の他の通信コントローラを介してホスト・シ
ステムとの相互接続が可能となる。
この多重ポート通信アダプタは、それぞれ送信チャネル
と受信チャネルとを備えた10個のポート(すなわち合
計20本のチャネル)に関してポ−トごとにDMA要求
および割り込み要求の個別的調停機能を備えている。そ
の他に、送信モードまたは受信モードで同じ10個のポ
ートおよび20本のチャネルにDMA/割り込み要求信
号手段が設けられている。各チャネルに対するキャラク
タサービスモードも、プログラム制御下で選択できる。
これは、プロセッサに割り込むことなく直接メモリ・ア
クセスによって、同期式/非同期式送受信モジュール(
以下、rUSARTJという)の受信バッファと、プロ
グラム記憶式に調節できる多重ボート通信アダプタに含
まれているRAMとの間のキャラクタ転送で可能となる
。別法として、受信または送信されたキャラクタをDM
Aによって転送することができ1割り込みがプロセッサ
に提示される。もう一つの別法では、DMAを使わず、
その代りに割り込みがプロセッサに提示され、プロセッ
サが割り込みサービス・ルーチンを呼び出して、所与の
受信側USARTまたは送信側USARTにUSART
のバッファの読取りまたは書込みのためのメモリマツプ
式入出力オペレーションをサービスするようにプロセッ
サに指示する。
このアーキテクチャには融通性があるので、プログラマ
はハードウェア・パフォーマンスが最大になるように各
通信チャネルごとにオペレーションをカストマイズする
ことができる。たとえば、所与のポートを調歩式プロト
コルで動作させる場合、プログラマは、各キャラクタを
受は取ったとき多重ポート通信アダプタのプロセッサが
割り込まれる受信モードで所与のそのポートのオペレー
ションを選択することができる。一方、同じポートの送
信チャネルは、DMAモードおよび調歩式プロトコルで
動作するようにプログラミングすることができる。すな
わち、チャネルごとにプログラムすることができる。し
たがって、プロセッサ中のプログラムによって、受信し
た各キャラクタの妥当性、正確さ、パリティなどを検査
することができ、訂正されたアウトバウンド・メツセー
ジは、メツセージ全体が送信されるまでプロセッサに割
り込むことなく直接に送信できる。
もう一つの例として、5DLCプロトコルでは送受信両
方のチャネルで高速のブロック転送を使用しているので
、5DLCプロトコルに基づくポートを送受信面チャネ
ルに対しDMAモードでサービスすることもできる。
一般に、データ転送手段、すなわち20本のチャネルの
いずれかを介するプロトコルおよびメモリ・アクセスの
方法は、プログラム記憶式命令によってメモリマツプ式
入出力キャラクタサービス割り込みモードまたは直接メ
モリ・アクセスモードのいずれも選択できる。直接メモ
リ・アクセスモードを選択した場合、さらに、DMAに
よって転送される各キャラクタに関する割り込みをプロ
セッサに提示すべきかどうかもプログラムで選択できる
。DMAオペレーションは、ある時間にあるキャラクタ
をUSART (汎用同期/非同期送受信モジュール)
からRAMにまたはメモリからUSARTに転送するよ
うに指示するDIACによって制御される。
たとえばDMAモードのオペレーションを呼び出したと
仮定すると、USARTはその受信バッファ中においで
あるキャラクタを受は取ったとき、DMA受信要求を活
動化し、送信バッファが空のときDMA送信要求を活動
化する。プログラムがDIACをどのように構成したか
に応じて、DMA要求は、DIACによって、DMA要
求、割り込み要求またはその双方の要求として処理され
る。
すなわち、各通信ポート上の受信チャネルと送信チャネ
ルは、メモリマツプ式入出力コマンドの実行によって別
のキャラクタまたはキャラクタブロックを転送するよう
プロセッサに合図するために、DMAデータ転送または
割り込み方式転送を使って動作するように構成できる。
所与のチャネルがDMAモードで動作する場合、そのチ
ャネルに対する起点アドレスとバイト・カウントをセッ
トアツプするようにプログラムを構成する。次にDIA
Cは、受信バイト・カウントがゼロになったとき、また
は送信バイト・カウントがゼロになったとき1割り込み
によってプロセッサにこれを合図する。あるメツセージ
に関するファイルキャラクタの終りを受信すると、上流
のUSARTが割り込みによってプロセッサに、メツセ
ージの送信または受信が完了したことを合図する。デー
タ・ブロックの全体が下流のUSARTで組み立てられ
ると、DMAプロセッサはプロセッサから通知を受けて
、プロセッサが指定したメモリのバッファ・アドレスか
ら上流送信をスタートする。DIACは、プロセッサか
らのメモリマツプ式入出力オペレーションによってセッ
トアツプされる。
D2.1.データゞれ全体の  1 第1図(すなわち第1A図および第1B図)に移って1
次に受信チャネル10本と、送信チャネル10本からな
る20本までのチャネルからのサービス要求を処理する
多重ポート通信アダプタの構成について説明する。DI
AC3は、EIAドライバ・レシーバの存するポート1
からの20本までの送受信チャネルの各々のサービス要
求を処理する。ポート#1、ポート#2等のEIAドラ
イバ・レシーバ対で表される10個のポートの各々に、
受信チャネルと送信チャネルが1本ずつある。複数個の
USART2が、ポート1でEIAドライバ・レシーバ
に接続されている。各USART2は、2個のポートを
処理し、したがって2個のドライバ・レシーバ対を処理
できる。DIAC3は後でより詳しく説明するように2
0本の各チャネル用に、24ビツト・アドレス・レジス
タと16ビツト・バイト・カウント・レジスタを備えて
いる。レジスタは、後で説明するようにDIAC3の内
部に含まれる局所的なメモリの形をとる。
各チャネルは、制御プログラムによってDMAモードま
たはキャラクタサービス割込みモードで選択的に動作で
きる。DMAモードでは、所与のUSART2とRAM
6の間でのキャラクタ転送は、DIAC3の制御下で行
われる。キャラクタサービスモードでは、USARTと
RAM6の間でのキャラクタ転送は、プロセッサ5で制
御される。プロセッサ5は、どんな形もとれるが、良好
な実施例では、モトローラMC68000マイクロプロ
セツサを使用したので、ここでは実例としてこれを使う
ことにする。
初期設定は、システム・リセット機能から始まり、次に
プロセッサ5で動作する制御プログラムを使って、各チ
ャネルのオペレーションをプログラマの選択に応じてD
MAモードまたはキャラクタサービス割り込みモードで
初期設定する。DMAモードで動作する構成の各チャネ
ルでは、そのチャネルのアドレス・レジスタを起点アド
レスにセット・アップし、そのチャネルのバイト・カウ
ント・レジスタにバイト・カウントを与えるために、制
御プログラムをコード化しなければならない。これらの
レジスタは、上記のようにll0AC3の内部に含まれ
るDIAC3の局所的なメモリの一部分である。これに
ついては、後でより詳しく説明する。
所与のチャネルのバイト・カウント・レジスタが受信オ
ペレーションまたは送信オペレーションでOまで減分さ
れると、第1図のレベル4割り込み線LVL4で示され
るようにレベル4の割り込みがDIAC:3によって発
生される。次に、プロセッサ5が、レベル4の割り込み
肯定応答サイクルを実行し1割り込み制御論理4にレベ
ル4割り込み肯定応答信号を出させる。同時に、DIA
C3が割り込み肯定応答信号に応答して、そのバイト・
カウントがOまで増分された特定のチャネルを識別する
ため、システム・データ・バス上に一意的なベクトル値
を置く。これによって、プロセッサ5中の制御プログラ
ムがDIAC3で発生されたベクトル値にもとづいて、
特定のチャネルにサービスできるようになる。このベク
トル値でRAM6中の起点アドレスが識別されるので、
各ポートで所与のタイプのチャネルオペレーションに対
して、様々な事前プログラム式制御ルーチンおよびサー
ビス・ルーチンを選択的に実現できる。
このため、インバウンドキャラクタまたはアウトバウン
ドキャラクタに対する適当な処理ルーチンを選択するこ
とによって、たとえば調歩式もしくは5DLCから2進
テ一プ同期式もしくは調歩式へのプロトコル交換又はそ
の逆のプロトコル変換のように、同期式相互間、非同期
式相互間および同期式、非同期式相互間のプロトコル変
換が容易にできるようになる。
キャラクタサービス割り込みモードで動作するチャネル
は、USART2がその特定チャネルに関するキャラク
タサービスを要求する毎に、DIAC3によってレベル
3の割り込みを生成させる。
次にプロセッサ5がレベル3の割り込み肯定応答サイク
ルを実行し、割り込み制御論理回路4にレベル3割り込
み肯定応答信号を出させる。それに応答して、DIAC
3が、そのときキャラクタサビスが要求されている特定
チャネルを識別するため、システム・データ・バス上に
一意的なベクトル値を載せる。これによってプロセッサ
5の制御プログラムが、DIAC3により生成されるベ
クトル値にもとづいてそのチャネルにサービスできるよ
うになる。
D2.2.   オペレーションのデータゞれ第1図に
示すように、各ポート毎にEIAレシーバ・ドライバ対
が存在する。この回路構成では。
調歩式通信ラインなどを使ってモデムまたは直接付加信
号からデータ信号を受は取り、EIA  R8−232
G電圧レベルからTTL電圧レベルにデータを変換する
。USART2は、逐次データを受は取り、8ビツト・
バイトのデータを蓄積する。次にUSART2は所与の
受信チャネルに関するその要求線を活動化して、データ
・バイトが使用可能なことをDIAC3に指示する。D
IAC3は、要求をDMA要求として処理するようにあ
らかじめプログラミングすることもできるし、要求を割
り込み要求として処理するようにあらかじめプログラミ
ングすることもできる。
まず、DIAC3が所与のチャネルの要求をDMA要求
として処理するようにプログラミングされている場合に
ついて考察する。DIAC3に含まれているDMA要求
アービタ(後出)が、20本までのチャネルに関する要
求を受は取る。いずれかのチャネルがDMAデータ転送
に関するアクティブな要求をもっている場合、DIAC
はプロセッサ5に通じるDMAバス要求信号を活動化す
る。プロセッサ5がDMA許可信号を活動化し、DIA
C3は、自分がバス・マスターであることを示すDMA
バス許可肯定応答信号を出して応答する。これによりプ
ロセッサ5は、システム・バス上にデータを出せなくな
る。バス許可がアクテテイブな間に以前のマシンサイク
ルからのストローブがアクティブでなくなると、DIA
CからDMAバス許可肯定応答信号が出る6 所与のUSART2が、優先順位が最高の要求とみなさ
れる受信要求をもっている場合、DIACは、次のよう
にしてUSART2の受信データの転送を処理するよう
に構成される。DIACは、まず自分のRAM (以下
、内部RAMという)からDMAアドレスを取り出す、
これは、RAM6でUSART2の受信キャラクタデー
タが記憶される起点位置のアドレスである。DIAC3
は。
このアドレスを使ってシステム・アドレス・バスを活動
化する。DIAC3は、アドレスが偶数であればUSA
RTの1バイト幅のデータ・バスがシステムの上位バイ
ト・アドレス・バスに接続され、アドレスが奇数であれ
ばシステムの下位バイト・アドレス・バスに接続される
ように、バイト選択論理9を条件付ける。データはUS
ART2からRAM6に転送されるので、データをUS
ART2からRAM6に向けるようにバイト選択論理9
の方向制御情報がセットされる6次に、DIAC3はU
SART2に関する読取りオペレーションを実行する。
これによりUSARTはそのバッファの内容を、受信し
たデータ・バイトとしてデータ・バス上に載せる。次に
DIAC3はRAM6への書込みサイクルを実行する。
これによりUSART2からのデータがRAM6の以前
に与えられた選択されたアドレスに書き込まれる0次に
DIAC3は、その内部RAMに記憶されているDMA
アドレスを増分し、その中に記憶されているそのチャネ
ルに関するDMAバイト・カウントを減分する。これら
のアドレス・フィールドおよびバイト・カウント・フィ
ールドは、D、lAC3の内部RAMにおける所与のチ
ャネルに関する制御ブロックとして指定されているセク
ションに位置指定される。これについては後で説明する
USART2からRAM6へのデータ転送が完了すると
、DIAC:3はプロセッサ5へのDMAバス許可背定
応答信号を非活動化する。DIAC3中のDMA要求ア
ービタは、USART2からの要求信号を監視し続ける
処理されるUSARTが、待機中の優先順位が最高の要
求を待つと仮定したことに留意されたい。
優先順位を判定する手段についても後でより詳しく説明
するが、簡単にいえば、これはDIAC3との接続の物
理的な位置関係に基づくもので、現在の要求を有する最
高の数の要求線が最高の優先順位となるものである。
次に、DIAC:3がそのチャネルに関する所与のUS
ARTの受信要求をキャラクタサービス割り込み要求と
して処理するようにプログラミングされている場合につ
いて考察する。DIIC3に含まれる割り込み要求アー
ビタ(後出)は1割り込み要求用としてプログラミング
されている20本までのチャネルに関する要求を受は取
る。いずれかのチャネルがアクティブな割り込み要求を
待っている場合、DIAC3は割り込み制御論理4への
レベル3割り込み要求信号を活動化する。レベル3の割
り込み要求が、プロセッサ5へのアクティブな最高レベ
ルの割り込みになると、プロセッサ5はレベル3の割り
込みに関する割り込み肯定応答サイクルを実行する。レ
ベル3割り込み肯定応答信号は、割り込み制御論理4が
出し、DIAC3に送られる0次に、DIAC3はシス
テム・データ・バスに優先順位最高の割り込みチャネル
を直接指示するベクトル値を置く。次にそのUSART
のキャラクタサービス要求を処理するため、プロセッサ
5中で動作する制御プログラムが、RAM6、EPRO
M8またはEPROM8中の、そのコードが常駐する起
点位置に向けられる。次にプロセッサ5がUSART2
に関する読取りオペレーションを実行し、そのUSAR
Tのバッファからデータ・バイトを読み取る。次にプロ
セッサ5はこのデータ・バイトをRAMe中に記憶する
受信オペレーションにおけるデータ流れについて簡単に
説明したので、次に送信オペレーションにおけるデータ
流れについて説明する。
D2.3.j信オペレーションのデータ2れ所与のUS
ART2の送信バッファが空のとき、USART2は当
該のチャネルに関する送信オペレーションの要求線を活
動化する。前述の如く、DIAC:3は要求をDMA要
求として処理するようにあらかじめプログラミングする
こともできるし、要求をキャラクタサービス割り込み要
求として処理するようにプログラミングしておくことも
できる。
まず、DIAC3がチャネル要求をDMA要求として処
理するようにプログラミングされている場合を考察する
と、DIAC3に含まれるDMA要求アービタは、20
本までのチャネルの要求を受は取り、優先順位最高のチ
ャネルを選択する。
いずれかのチャネルがDMA転送に関してアクティブな
要求をもっている場合、DIAC3はプロセッサ5への
DMAバス要求信号を活動化する。
プロセッサ5は、DIAC3に戻るDMAバス許可信号
を活動化し、プロセッサ5の以前のマシンサイクルのス
トローブ期間がアクティブでなくなったとき、DIAC
3はDMAバス許可肯定応答信号を出して応答する。D
IAC3がDMAバス許可肯定応答信号を活動化すると
、DIACがバス・マスターであることが指示されるの
で、プロセッサ5はシステム・バスにデータを出さない
所与のUSART2の送信要求がたまたまそのとき待機
中の最高の優先順位をもつ場合、DIAC3は、そのU
SARTの送信データ転送オペレーションを処理するよ
うに構成される。DIAC3がその内部RAMからDM
Aアドレスを取り出し、このアドレスを使ってシステム
・アドレス・バスを活動化する。DMAアドレスは、R
AM6中でUSART2の送信されるキャラクタまたは
データが取り出されるところのアドレスである。
DIAC3はまた。提示されるアドレスが偶数であれば
所与のUSART2の1バイト幅のデータ・バスをシス
テムの上位バイトに接続し、アドレスが奇数であればシ
ステムの下位バイトに接続するように、バイト選択論理
9を活動化する。データはRAMからUSART2に転
送されるので、データをRAM6からUSART2に向
けるために。
バイト選択論理9の方向制御情報がセットされる。
次にDIAC:3はRAM6に対する読取りオペレーシ
ョンを実行し、転送される1データ・バイトをUSAR
T2のデータ・バスに向ける0次にDIAC:3はUS
ART2への書込みサイクルを実行する。これによりR
AM6からのデータはUSART2のバッファに書き込
まれる0次にDIAC3はDMAアドレスを増分し、そ
のチャネルに関するDMAバイト・カウントを減分し、
制御情報をDIACの内部RAM中にあるそのチャネル
に関する制御ブロックに記憶する。AM6からUSAR
T2へのデータの転送が完了すると、DIAC3はプロ
セッサ5へのDMAバス許可肯定応答信号を非活動化す
る。DIAC:に含まれているDMA要求アービタは、
今サービスされたものを含めてUSARTからの要求信
号を監視し続ける。
次に、DIAC3が所与のUSART2の送信チャネル
要求をキャラクタサービス割り込み要求として処理する
ようにプログラミングされている場合について考察する
。DIACa中の割り込み要求アービタは1割り込み要
求としてプログラミングされる20本までのチャネルに
関する要求を受は取る。いずれかのチャネルがアクティ
ブな割り込み要求をもついる場合、DIAC3は、割り
込み制御論理4へのレベル3の割り込み要求信号を活動
化する。レベル3の割り込み要求が、プロセッサ5に提
示されアクティブとなっている最高のレベルの割り込み
になると、プロセッサ5はレベル3の割り込み肯定応答
サイクルを実行する。
次に割り込み制御論理4によってレベル3割り込み肯定
応答信号が活動化され、DIAC3に提示される。DI
AC3がシステム・データ・バス上に優先順位最高の割
り込みチャネルを直接指示するベクトル値を載せる。次
にそのUSART2のキャラクタサービス要求を処理す
るコードをアクセスするため、プロセッサ5中で動作す
る制御プログラムは、バス上のアドレスで指定される位
置に直接向かう、プロセッサ5は、RAM5中で読取り
オペレーションを実行して、RAM6からデータ・バイ
トを得る。次にプロセッサ5は書込みオペレーションを
実行して、データ・バイトをUSART2の送信バッフ
ァに転送する。
以上の説明は、最も広範なものであり、良好な実施例と
して第1図に示した。プログラム記憶式に調節できる多
重ポート通信アダプタの全体的データ流れおよびアーキ
テクチャとして最も一般的なものである。各ポートで使
用される特定のプロトコルは、所与のポートからの要求
に応答してEPROM8などの記憶装置中のどのコード
・ルーチンがアクセスされるかによって決定される。各
チャネルごとにこれが割り当てられたとき、この選択を
行うのは、プロセッサ5で動作する制御プログラムであ
る。プログラマは、この選択をメニューまたはその他の
適当な提示手段で事前に行なうことができる。あるプロ
トコルから別のプロトコルへの変換は、ヘッダの生成、
バイト形式の変換、5DLCの制御フィールドとフラグ
・フィールド、2進デ一タ同期制御キャラクタおよび調
歩式制御キャラクタの生成、ならびにそれらをそのポー
トに割り当てられたプロトコルにもとづいて任意のポー
トでの送信または受信に適合できるよう適切な順序で提
示するために、EPROM8またはRAM6から適当な
コード列を呼び出すことによって同様に処理される。し
たがって、このアーキテクチャ構造を使うと、高い融通
性が得られ、特定のタイプのキャラクタサービスおよび
ポート・プロトコルを各チャネルごとに割り当てる際に
大幅な選択の自由が与えられる。先に指摘したように、
それは送信チャネルと受信チャネルで異なっていてもよ
い。このため、上記の論理によってさらに高い融通性が
得られ、したがってこのアーキテクチャによれば、多重
ポート通信アダプタを一律に調節することができる。
第2図には、第1図に示したシステムとの相互接続とし
て示されたものの一部分となっている追加的なデータ流
れ制御が示されている。マシン・チェック・レジスタ1
1には、後述するように様々なソースからくるビット・
エラー線1〜6が具備されている。マシン・チェック・
レジスタ11は、第1図の割り込み制御論理4に、レベ
ル7のマシン・チェック割り込みまたはバス・エラー割
り込みを発する。第1図の割り込み制御論理4からは、
レベル7の割り込み肯定応答が戻される。
マシン・チェック・レジスタ11は、システム・データ
・バスに接続される。これについては後で説明する。
アドレス比較、データ比較およびその他の諸機能を有す
る比較機能レジスタ12も、システム・データ・バスに
接続され、レベル6のアドレス/データ比較割り込みを
生成しくこの割り込みは第1図の割り込み制御論理4に
提示されるものである)それに対するレベル6の割り込
み肯定応答信号を受は取る。アドレスおよびデータを比
較する機能は、プログラムのデバッグのためプログラマ
がセット・アップできる。
プログラム記憶式のタイマ13がシステム・データ・バ
スに接続されているが、これには、レベル4のタイミン
グ割り込みを周期的に出すよう所定のタイミングパラメ
ータを書き込むことができる。プログラム記憶式タイマ
13は、開始カウントがロードされ、内部発振器によっ
て固定速度でそれを減分するカウンタを含んでいる。比
較回路がそのカウントがOまで減分されたことを検出し
、当業者には自明のように開始カウントの大きさと減分
速度にもとづいて周期的にレベル4の割り込みを行う。
レベル1の174秒タイムアウト割り込みを行うには、
固定式の174秒タイマ14が有用である。後でより詳
しく説明するように、このプログラム記憶式のタイマ1
3を使って、所与のチャネルでの遷移量時間を伝送速度
の目安として測定する。
マシン・チェック・レジスタ11、比較機能レジスタ1
2.タイマ13および1/4秒タイマ14は、マイクロ
プロセッサをベースとするシステムで一般に使用される
構成要素であり、したがってここでは詳しい説明は行わ
ない。
D2.4.  重ポード伊アダプタに する基プログラ
ム記憶式に調節できる多重ポート通信アダプタは、可能
な限り市販のコンポーネントを使うように設計されてい
る。多くのベンダーが類似の相当装置を供給しているの
で、これから挙げるリストは限定的なものではない0図
面に示す良好な実施例では、プロセッサ5は、モトロー
ラ社の68000マイクロプロセツサである。システム
制御論理回路および割り込み制御論理回路4は、高密度
VLS I回路である6その機能については、後で詳し
く説明する。
USART2は、アドヴアンスト・マイクロ・デバイス
社の8530二重ポート通信制御装置モジュールであり
、その名前が示すように、それぞれ2個のEIAドライ
バ・レシーバ・ポートを処理することができる。
電気的に消去可能なFROM (EEFROM)は、市
販の8に×8モジュールである。
消去可能FROM (EPROM)は、市販の32KX
8紫外線消去可能FROMである。
ダイナミックRAM6は、市販の64KX1モジユール
および64KX4モジユールである。EIA  R82
32Cインターフエース・ドライバ・レシーバは、各ベ
ンダーから市販されており、EIA  R8422イン
ターフエース・ドライバ・レシーバも使用できる。
以上の構成要素は、直接リンクまたはモデムを介してE
IAドライバ・レシーバのポートに接続できるエンドユ
ーザー装置から、別のポートを介して接続できるホスト
・コンピュータに至るデータ・バスを提供する。
先に指摘したように、ポート1は、5DLCプロトコル
、ASCI Iプロトコル、2進データ同−期プロトコ
ル、調歩式プロトコルまたは適当なその他のプロトコル
などのオペレーション用に構成でき、最高速度19,2
00bpsまでの速度で動作できる。内部クロック、モ
デム・クロックまたはデータ誘導クロックは、すべて提
供されるモジュールでサポートされる。最大伝送速度は
、EIAドライバ・レシーバの能力によって決まる6平
面状回路板を使って、マイクロプロセッサ、制御論理回
路、USARTモジュール、ダイナミックRAMモジュ
ール、およびE E F ROMを格納する6紫外線消
去可能EPROMは、後でより詳しく説明するように、
カストマの差し込み式カドーリッジに含まれる0図面に
は示してないが、適当な論理レベル電圧と読み書き電圧
を供給するための電源も回路板に含まれる。このシステ
ムのアーキテクチャは、次に説明するシステム可用性、
エラー検出、エラー分離、およびエラー回復の諸機能を
提供する。
プロセッサ5 モトローラMC68000マイクロプロセツサは、8M
Hzでブロック化される16ビツト双方向データ・バス
および23ビツト・アドレス・バス付きマシンである。
上側データ・ストローブ信号と下側データ・ストローブ
信号が、16メガバイト以上のメモリ・アドレス範囲を
提供する゛、プロセッサ5は、32ビツト・データ・レ
ジスタ8個、32ビツト・アドレス・レジスタ7個、ユ
ーザ用スタック・ポインタ、監視用スタック・ポインタ
、32ビツト・プログラム・カウンタおよび16ビツト
・ステータス・レジスタを提供する。
データ・レジスタは、8ビツト・バイト・データ、16
ビツト・ワード・データおよび32ビツト・ロングワー
ド・データのオペレーションに使用される。アドレス・
レジスタとシステム・スタック・ポインタは、ソフトウ
ェア・スタック・ポインタおよび基底アドレス・レジス
タとして使用できる。
各レジスタは、ワード・アドレスのオペレーションにも
ロングワード・アドレスのオペレーションにも使用でき
る。すべてのレジスタは、インデックス・レジスタとし
て使用できる。MC68000の完全な説明は、ベンダ
ーから入手できる。
システム制御論理回路 システム制御論理回路は、各サブシステムやモジュール
を互いに結合して、プロセッサ5.EPROM8.EE
PROM7.ダイナミックRAM6、およびUSART
2とのインターフェースを行うために必要なすべての機
能を実行する。
システム論理回路は、論理回路で使用されるCクロック
およびBクロック、プロセッサ・サイクル・クロック、
ならびにUSARTクロックのクロック生成機能を含ん
でいる。付勢されているとき1/4秒毎に割り込み制御
論理4へ割り込みを発する1/4秒タイマも含まれてい
る。タイマ割り込みが2秒以内に肯定応答されない場合
、マシン・チェック・レベル7の割り込みがセットされ
る。プロセッサのプログラムの実行にあたっては。
1/4秒タイマを周期284.4ミリ秒、解像度8.6
8マイクロ秒の経過時間インジケータとして利用される
また、プログラム記憶式タイマ13も含まれている。こ
のタイマは、プログラムで付勢されたとき選定した時間
で割り込み制御論理4に割り込みを発するようプログラ
ミングできる。プロセッサ5で動作するプログラムは、
このタイマで16ビツトの情報を読み取ることができる
システム初期設定論理回路は、リセット制御論理回路、
システム初期設定ラッチ、マシン作動不能う、フチ。E
PROM基本保証テスト・ラッチおよびインターフェー
ス付勢ラッチで構成されている。ブロック4の割り込み
制御論理は1割り込みレベル・エンコーダ、割り込み肯
定応答デコーダおよび割り込み禁止ラッチを含んでおり
、システム初期設定論理回路、プログラム記憶式タイマ
、174秒タイマおよびクロック生成回路と同じく、様
々なベンダから市販されている標準設計のものである。
これらすべてのものは標準設計であり、したがってここ
では詳しく示さないが、当業者にはこれらの構成要素の
使い方は自明であろう。
システム制御論理回路には、バス・エラー/マシンチェ
ック・レジスタも使用されている。パリティ生成・検査
装置、DIACチップ自体、ダイナミックRAMのイン
ターフェース論理回路、EPROMのインターフェース
論理回路、EEPROMのインターフェース論理回路、
メモリマツプ式入出力制御装置、USART2のインタ
ーフェース制御装置、操作盤制御論理回路および比較機
能レジスタも同様である。これらのうち、パリティ生成
検i装置、メモリ・インターフェース論理回路、メモリ
マツプ式入出力制御装置、USARTインターフェース
制御装置および操作盤制御論理回路は、すべて櫟準品で
あり、主として本システムの組み立てに使用する市販モ
ジュールの論理レベルとビン指定によって定める。しか
し、DIACチップは、独自であるので後で詳しく説明
する6次に、第2図に示したアドレスおよびデータの比
較およびその他の諸機能を、マシンチェック・レジスタ
11、比較機能レジスタ12.プログラム記憶式のタイ
マ13および1/4秒タイマ14と共に説明する。
図面には示してないクロック生成論理回路中のシステム
用基本クロックは、14.7456MHzの水晶式発振
器からなる。これはカウンタによって7.3728MH
zの周波数に分割され、プロセッサ5用の基本クロック
となる。論理システム制御クロックは同じ周波数および
カウント・ダウンされた3、6864MHzの周波数で
生成され、システム論理回路内のラッチオペレーション
を制御するためのC論理クロックとB論理クロックを提
供する。CクロックおよびBクロックは重なり合わず、
各論理回路の各種ラッチをクロックするのに使用される
。Bクロックは通常論理回路の出力信号のクロッキング
と関連するレジスタをラッチするのに使用される。Cク
ロックは、レジスタ・ラッチをシフトさせるための入力
をラッチし、一般に各論理回路への入力バイト信号のク
ロッキングと関連している。3.6864MHzのクロ
ックは、USARTをもクロックするために生成される
システム・タイマ。174秒タイマは、プロセッサ5か
らのメモリマツプ式入出力命令によって付勢または減勢
される。このタイマは、タイム・アウトしたとき、割り
込み制御論理4へのレベル1に割り込む。その後すべて
の割り込みの初期タイミング割り込みは、このタイマが
最初に付勢されたときに対するものとなる。初期割り込
みは、タイマが付勢されてから約174秒後に発生し、
その後の割り込みは、タイマが付勢されている限り1/
4秒間隔で発生する。システムは、2秒以内に割り込み
が肯定応答されなかったとき、レベル7のマシン・チェ
ック割り込みが割り込み制御論理4に送られるように設
計されている。プロセッサ5の制御プログラムは、メモ
リマツプ式入出力命令によってタイマ回路中のカウンタ
のビット5〜20を読み取るように設計されている。こ
のタイマがメモリマツプ式入出力命令によって読み取ら
れるとき、このカウントのビット5〜20は。
システム・データ・バスにビット0〜15として載せら
れる。
第2図では、1/4秒タイマは論理ブロックとしてしか
示してないが、発振器によって駆動されるカウンタなら
びにメモリマツプ式入出力命令を読み取りデータをデー
タ・バスに置くために必要なインターフェース・ラッチ
および制御装置は当業者には自明の技術である。
プログラム記憶式タイマ13は、カウント・モジュール
をプロセッサ5において動作する制御プログラムでプロ
グラム記憶式にセットできる点以外体、同様の設計であ
る。この制御プログラムは、メモリマツプ式入出力命令
を供給し、このタイマの16ビツトをプログラム記憶式
タイマ13からのシステム・データ・バスに載せること
によって。
その16ビツトを読み取ることもできる。
次に、システム全体の初期設定について簡単に説明する
。各種のラッチャレジスタが出てくるが、当業者なら理
解できるようにそれらは標準設計のものであり、その機
能や各種コンポーネントへの接続は全く標準のものでよ
いので、図面に示していない。
システムの初期設定は、電源投入リセットから始まる。
それによってプロセッサ5はシステムをステップ毎に動
作させるための基本保証テスト・プログラムを実行する
ために、ダイナミックRAM6またはEPROM8の固
定位置のアクセスを開始する。まずシステムリセットが
起こり1次にすべてのDMA要求、割り込み要求、レジ
スタおよびUSARTは、プログラムが各インターフエ
−スを付勢するまではゲートされない。
電源投入リセットでプロセスが始まる。システム制御論
理回路がプロセッサ5に対するリセット/停止信号を活
動化して、少くとも100ミリ秒間それをオフに保つ、
電源自体は、少くとも100ミリ秒間電源投入リセット
信号を出す、システム制御論理回路は、電源投入リセッ
ト中央くとも100ミリ秒間システム・リセット信号を
活動化する。
電源がオンのとき前述のカストマの差し込み式EFRO
Mカートリッジを差し込むことはできない、そうでない
ときは、後で説明するようにカートリッジを挿入するま
で、マシンはリセット状態に保たれる。電源がオンのと
きカートリッジを取り外すと、マシンはリセットされ、
カートリッジを再挿入するまでリセット状態に保たれる
電源からの電源投入リセットは、またダイナミックRA
M6の制御論理回路に短いリセット信号を出す。これに
よってそれよりも長い電源投入リセットがまだアクティ
ブなときに、RAM6は再生オペレーションを開始でき
る。短いリセット信号は、少くとも500ナノ秒の長さ
であり、当該技術ではDRAM制御リセットと呼ばれて
いる。
RAM6用のリセット・ラッチのソースはシステム制御
論理回路であり、電源投入リセットが起こると、ラッチ
・セットを実現する。これは、基本保証テスト・プログ
ラムでセットされ、マシンが[作動不能」のときリセッ
トされる。
第2図のマシン・チェック・レジスタ11に含まれるス
テータス・レジスタのビット7はこの条件を示す。マシ
ンの動作の準備が完了していないことを示す[マシン作
動不能」ラツ・チも設けられているが、図には示してな
い。このラッチを使用して、マシンが基本保証テスト・
モードにあることを示す、これは、電源投入リセット信
号、システム・リセット・メモリマツプ式入出力信号。
または特定のメモリマツプ式入出力命令によってオンに
なる。基本保証テスト・プログラムは、基本保証テスト
の最後のオペレーションとして、メモリマツプ式入出力
命令によってラッチをリセットする。
EPROM基本保証テスト・ラッチも論理回路中に設け
られているが、図には示してない、このラッチは電源投
入リセット信号によってセットされ、システム・リセッ
トのためのメモリマツプ式入出力またはEPROM基本
保証テスト・ラッチをオンにするためのメモリマツプ式
入出力命令によってリセットされる。またメモリマツプ
式入出力命令を使ってリセットすることもできる。プロ
セッサ5中で動作する基本保証テスト・プログラムは、
差込み式EPROMカートリッジのオペレーションが確
認されたとき、このラッチをリセットする。
システム初期設定ラッチ。システム初期設定ラッチも設
けられているが1図には示してない、電源からの電源投
入リセットまたはプロセッサ5からのメモリマツプ式入
出力によってマシンがリセットされると、プロセッサ5
は16進数000000で始まるその最初のアドレスの
アクセスを開始する。16進数oooooに対応するマ
ツピングされた開始アドレスがある。これはE P R
OM5中のシステム初期設定のための最初の命令が存在
する場所である。
割り込み制御論理。第1図のブロック4に示した割り込
み制御論理は、割り込み禁止ラッチを備えているが1図
には特に示してない。この割り込み禁止ラッチはバス・
エラーが起こると、DIAC3、プロセッサ5.および
割り込み制御論理回路4へのレベル7の割り込みに接続
されている。
第2図のマシン・チェック・レジスタ11から供給され
る信号によってセットされる1割り込み禁止ラッチをセ
ットすると、バス・エラーが検出された後プロセッサ5
への割り込みはブロックされる。これはモトローラ68
000がエラー発生時にアクティブな割り込みレベルで
のバス・エラー処理を実現するために必要である。割り
込み禁止ラッチ機能がないと、より高いレベルの割り込
みがバス・エラー例外処理に割り込むことが起こり得る
。その割り込みを処理すれば、モトローラ68000中
の例外処理コードによって割り込み禁止ラッチがリセッ
トされ、その後に新しい割り込みが可能になる。
割り込みレベル。割り込みレベルには次のようなものが
ある。バス・エラーは最高レベルの割り込みであり、プ
ロセッサ5がバス・マスターのときパリティ・エラーま
たはデータ転送肯定応答のタイムアウトが起こった場合
に、データ転送肯定応答の代りにプロセッサ5に対して
活動化される。
エラー・ビットがマシン・チェック・レジスタ11中で
セットされ、図に示すようにDIAC3へのエラー信号
が活動化される。このエラー信号はDIAC3からのD
MA/メモリマツプ式入出力インターフェースを減勢し
て、バス・エラー/マシン・チェック・レジスタ11が
Oにリセットされるまで、バス要求がプロセッサ5に発
せられないようにする。すなわちバス・エラーが発生し
たとき、プロセッサ中のエラー例外処理はアクティブな
どのレベルでも行われる。割り込み制御論理4は、バス
・エラーの発生後に割り込みが起こることを阻止し、プ
ロセッサ中で動作する例外処理コード・ルーチンによっ
て割り込み禁止ラッチを再度リセットしないと、新しい
割り込みは許されない。
レベル7の割り込み。レベル7ではいくつかの割り込み
が起こる。DIAC3がバス・マスターである場合にパ
リティ・エラーが検出されたとき。
またはデータ転送肯定応答のタイムアウトやDMAのタ
イムアウトが起こったとき、マシン・チェック割り込み
がセットされる。またプロセッサ5またはDIAC3が
バス・マスターであり、プログラム記憶式タイマ13ま
たは1/4秒タイマ14から1547割り込み非リセッ
ト」エラーが発生した場合にも、マシン・チェック割り
込みがセットされる。どちらの条件でもマシン・チェッ
ク・レジスタ11中でマシン・チェック割り込みがセッ
トされる。かかる割り込みは、プロセッサ5からのメモ
リマツプ式入出力命令によって、またはマシン・チェッ
ク・レジスタ11にOを書き込むことによってリセット
される。DMAおよびメモリマツプ式入出力インターフ
ェースは、前述のようにマシン・チェック・レジスタ1
1がリセットされるまで減勢されている。ユーザがテス
ト機能を外部で実現したい場合には、テスト・ツール割
り込みもレベル7に割り当てられる。
レベル6の割り込みは、比較機能レジスタ12からのア
ドレス比較又はデータ比較割り込みである。これにより
、割り込み発生の際に進行中のどんなレベルでもプロセ
ッサ5中でエラーを処理できるよう自動ベクトルが生成
される6 レベル5の割り込みは、データ遷移割り込みであり、後
で説明するように各ポート用のポート・インターフェー
ス制御装置10によって一意的なベクトル値が与えられ
る。
レベル4の割り込みは、タイマ機能を処理するために自
動ベクトルをセットするプログラム記憶式タイマ割り込
みであり、DIAC3の割り込みよりも優先順位が高い
。このタイマ割り込みは。
タイマ割り込み時定応答サイクル中にハードウェアによ
ってリセットされる。DIAC3の割り込みもレベル4
で起こる6割り込みを起こす可能性のある20本の各チ
ャネルに対して、一意的なベクトル値がDIAC3から
供給される。20本のうちのいずれかのチャネルのバイ
ト・カウントが0まで減分され、サービスが要求される
と、DIACが割り込む。
レベル3の割り込み、USART2のキャラクタサービ
ス割り込みにこのレベルが割り当てられている。20本
の各チャネルに対して、一意的なベクトル値がDIAC
:3から供給される。レベル3の割り込み肯定応答サイ
クル中にDIAC3は。
アクティブな割り込み要求によって優先順位最高のチャ
ネルに対応する一意的なベクトル値を与える。このベク
トル値で、プロセッサ5を特定チャネルに対して適切な
データ転送を実現できる適当なサービス・ルーチンに振
り向ける。
レベル2の割り込み、USART2およびポート・イン
ターフェース制御装置10のポート・インターフェース
用のレジスタにこのレベルが割り当てられている。US
ART2またはポート・インターフェース制御装置10
から構成される装置トル値は、割り込みの原因を示し、
どのポートが注目されているかを示す。
レベル1の割り込みは、174秒タイマであり、1/4
秒タイマのリセットおよび割り込み肯定応答を処理する
ためにプロセッサ5に自動ベクトルを供給する。
レベルOは、通常の背景状態に対する適用業務タスク・
レベルである。
割り込みベクトル値の生成はどんな方法でもよく、当業
者には周知のものである。ベクトル値は。
プロセッサ5が、供給されたベクトル値にもとづいて各
種の割り込みを処理するために開始アドレスとして使用
されるメモリ・アドレスである。
ここで第2図に戻って、マシン・チェック・レジスタ1
1についてやや詳しく考察する。
図に示した設計では、このレジスタ11は1バイト構成
になっている。エラーが検出されると、レジスタ11中
で一つのビットがセットされる。
プロセッサ5がバス・マスターであり、エラーがパリテ
ィ・エラーまたはデータ転送肯定応答タイムアウト・エ
ラーである場合、レジスタ11からのバス・エラー出力
信号で示されるバス・エラーがプロセッサ5に提示され
る。DIAC3がバス・マスターであり、エラーがパリ
ティ・エラー、データ転送肯定応答タイムアウト・エラ
ー、またはDMAタイム・アウト・エラーの場合は、レ
ジスタ11からの出力で示されるようにマシン・チェッ
ク割り込み(レベル7)がセットされる。プロセッサ5
またはDIAC,3がバス・マスターであり、タイマ割
り込み非リセット・エラーが発生した場合、マシン・チ
ェック割り込みもセットされる。DIAC3がバス・マ
スターであり、あるエラーが検出されると、DIAC3
へのエラー信号が活動化される。この設計では、マシン
・チェック・レジスタのビットがセットされると、DM
A機能がブロックされる6プロセツサ5中で動作するエ
ラー回復プログラムがすべてのOを書き込んでマシン・
チェック・レジスタのビット0〜3をリセットした後で
ないと、DMAオペレーションを進め、DICA3、U
SART2またはキャラクタサービスおよびポート・レ
ジスタ割り込みを受諾することはできない。また、バス
・エラーが検出されると割り込み禁止ラッチがセットさ
れる。
このラッチをプロセッサ5からのメモリマツプ式入出力
命令によってリセットした後でないと、割り込みを再び
マイクロプロセッサ5に提示することはできない。バイ
ト読み取りオペレーションでレジスタ11のビット0〜
5を読み取ることができ、またバイト書き込みオペレー
ションでメモリマツプ式入出力書き込みが実行できる。
バス・マシン・チェック・レジスタ11の各ビットは、
次のように定義される。
ビットOは、パリティ・エラー・ビットである。
RAM6またはEPROM8からの読み取りオペレーシ
ョンに対するパリティ・チェックが、このビットをセッ
トする。このエラーが発生したときにプロセッサ5とD
IAC3のどちらがバス・マスターであったかを示すた
め、ビット4がセットされる。
ビット1は、アクセス・エラーまたはデータ転送肯定応
答タイムアウト・エラーである。このビットは、DIA
C3によるRAM6の保護区域への書き込み試行、監視
データ・モードでない場合のプロセッサ5による保護R
AMスペースへの書き込み、DIAC3によるメモリマ
ツプ式入出カスペースへのアクセス、監視データ・モー
ドでないときDIAC3またはプロセッサ5によるEP
ROM8へのアクセス、設けられていない記憶スペース
への読み取りまたは書き込み、EPROM8への書き込
み、あるいは8マイクロ秒以内にプロセッサ5に戻らな
いデータ転送肯定応答など様々な条件のもとてセットさ
れ、さらにDIAC3がバス・マスターになり8マイク
ロ秒以内にそのストローブを非活動化しない場合にもセ
ットされる。これらのどの条件でもビット1がセットさ
れ、このレベルのエラー処理ルーチンが開始される。
ビット2は、タイマ割り込み非リセット・ビットである
。これはレベル7でマシン・チェック割り込みを発生さ
せる。
ビット3はDMAタイムアウト・ビットである。
これは、DIAC3がバス許可信号を受は取って、4マ
イクロ秒以内にバス許可肯定応答信号を戻さない場合に
セットされる。また、DIAC3がバス・マスターとな
り、2マイクロ秒以内にDMAオペレーションを実行し
ない場合にもセットされる。
ビット4は、上記のバス・マスター指示ビットである。
このビットは、DIAC6がバス・マスターであり、エ
ラーが検出されたときにセットされる。バス・エラーが
発生したときこのビットが既にセットされている場合、
それはセットされたままとなり、マシン・チェック割り
込みが処理される前にバス・エラーが発生したことを示
す。
ビット5は、アクセス形式指示ビットであり、このビッ
トがセットされたときオペレーションが読み取りオペレ
ーションであったこと、またはこのビットがセットされ
ていないとき書き込みオペレーションが試行されたこと
を示す。
ビット6は、この設計では使用しない。ビット7は実験
室での外部テスト・ツールとしてのみ使用されるテスト
・ツール割り込みである。
ソフトウェアのデバッグおよびエラー処理用に。
比較機能レジスタ12が設けられている。アドレス比較
レジスタ、データ比較レジスタおよび機能レジスタを含
むアドレス検出アダプタが存在するが、各レジスタはす
べて比較機能レジスタ12の内部に含まれている。比較
の一つが選択されたとき、レベル6で割り込みがなされ
る0機能レジスタの各ビットは、次のように定義される
ビット8がセットされ、下側データ・ストローブがアク
ティブのとき1選択された比較機能が付勢される6ビツ
ト9がセットされ、上側データ・ストローブがアクティ
ブな場合1選択された比較機能が付勢される。ビット1
0がセットされない場合、選択される比較機能は、プロ
セッサ5またはDMA用である。このビットがセットさ
れている場合、選択される比較機能はDMAオペレーシ
ョン専用である。ビット11は命令取り出し時の比較で
ある。ビット12はデータ取り出し時の比較であり、ビ
ット13はデータ記憶時の比較である。ビット14がセ
ットされると、データ・パターンの比較が開始され、指
定したアドレス比較中にデータ比較レジスタに含まれる
パターンがデータ・バスのものと比較される。指定され
たアドレス比較および指定されたデータ比較が行われる
場合にのみ、割り込みが発生する。
パリティの生成と検査、パリティ生成装置と検査装置は
標準品であり、ダイナミックRAM6およびEPROM
8に具備されるインターフェースに設けられるが1割り
込み制御論理4がこれらのインターフェース用のパリテ
ィ生成・検査装置を実現する。プロセッサ5またはDI
AC3がバス・マスターのとき、RAM6への書き込み
オペレーション中に各バイトごとに奇数パリティが生成
される。プロセッサ5またはDIAC3がバス・マスタ
ーのとき、RAM6およびEPROM8からの読み取り
オペレーション中に各バイトについて奇数パリティが検
査される。
メモリ・データ流れ、プロセッサ5とRAM6との間の
インターフェースは、16データ・ビットと2パリテイ
・ビットからなる18ビット幅のインターフェースであ
る。書き込みオペレーション中、単一バイトまたは2バ
イト幅のワードからなるデータがプロセッサ5から記憶
できる。DIAC3はUSART2からのデータを単一
バイトとして記憶する。プロセッサ命令がバイトオペレ
ーションを指定すると、プロセッサ5は内部の最下位ア
ドレス・ビットを使って、どのバイトが書き込まれるか
を決定し、そのバイトに対して上側または下側データ・
ストローブを出す。最下位アドレス・ビットがOの場合
のバイトオペレーションでは、上側データ・ストローブ
が出され、そのビットが1の場合は、下側データ・スト
ローブが出る。書き込みオペレーションがDIAC3か
らのDMA書き込みオペレーションのときは、システム
制御論理回路がDMAオペレーションに対する最下位ア
ドレス・ビットの状態をデコードし。
最下位ビットがOであれば上側データ・ストローブを、
またそのビットが1であれば下側データ・ストローブを
生成する。すなわち、バス許可肯定応答信号のステータ
スだけによって、各書き込みオペレーションでプロセッ
サ5とDIAC3のどちらがバス・マスターであったか
が決定できる。
先に示唆したように、プロセッサ5は監視データ・モー
ドのときだけ、メモリ中のメモリマツプ式入出カスペー
スにアクセスできる。DIAC3はプロセッサ5のメモ
リマツプ式入出カスペースにアクセスできないので、D
IAC3がメモリマツプ式入出カスペースにアクセスを
試みると、マシン・チェック・レジスタ11のビットが
1にセットされる。保護スペースへの違反書き込みを試
みた場合、書き込みオペレーションはブロックされ、ア
ドレス位置にあるデータは変更されない。
読み取りオペレーション。データはプロセッサ5によっ
て単一バイトまたは2バイト・ワードとして読み取るこ
とができる。DIAC3は、単一バイトのみを読み取る
。この場合も、内部の最下位アドレス・ビットを使って
、どのバイトが読み取られるかを決定し、プロセッサ5
がそのバイトに対するデータ・ストローブを出す。DI
AC:3で制御されるDMA読み取りオペレーションの
ときは、メモリ制御論理回路がデータの1バイトをデー
タ・バスに載せ、DIAC3が受信アドレス・カウンタ
中の最下位アドレス・ビットの状態にもとづいて上側ま
たは下側データ・バイトを選択する。
USARTインターフェース、第3図には所与のポート
に対するUSARTのインターフェースが示しである。
ポート用のEIAレシーバは、どのインターフェース線
信号が処理中であるかに応じて、2つのセクションに分
かれる。ポート・インターフェース制御装置10は、U
SART2がデータ・セット作動状態(D S R)お
よびリング・インジケータまたは受信データ(RD)な
どの受信信号を処理するのを助ける。
USART2は、受信データ、送信クロック。
受信クロック、送信可(CTS)および受信線信号検出
(RL S D)信号を受は取る。EIAレシーバ回路
は1例示として2ブロツクに分けであるだけであり、各
ポートのEIAインターフェース中のすべての標準受信
信号ピンを含んでいることを理解されたい。同様に送信
またはEIAドライバについては、ポート・インターフ
ェース制御装[10は、第3図に示すようにある種の信
号をEIAドライバに与え、USARTは必要な残りの
信号をドライバに与える。プロセッサ5およびDIAC
3の側からのポート・インターフェース制御装置10お
よびUSART2へのインターフェースは、システム・
データ・バス、システム・アドレス・バスおよび第3図
の左側に示す様々な要求線と制御線を介している。次に
それらについて少し詳しく説明する。
U S ART 2チップ選択信号は、第3図に示すよ
うにチップ付勢線を含んでいる。第1図に示すように5
個のUSARTが使われているので、異なる5本のチッ
プ選択線1−5が使用される。これらは第1図には示し
ておらず、2個のポートを処理するのにUSARTが1
個あればよいので。
第3図に1つだけ示しである。第2のポートに対するU
SARTの接続は、簡単のため第3図に示してない、プ
ロセッサ5がUSART2に対するメモリマツプ式入出
力機能を実行したい場合、システム制御論理回路が選択
された個別のUSART2の読み取りまたは書き込みオ
ペレーションのためにUSART2を選択するチップ付
勢線を活動化する。DIAC;3がDMAオペレーショ
ンを実行するときは、やはりシステム制御論理回路が選
択された付勢線を活動化する。第1図のDIAC3から
プロセッサ5へのバス許可肯定応答信号がアクティブの
ときは、DIAC3がUSARTチップ付勢線を制御す
る。
チャネルA/B選択線は、ポート付勢信号である。これ
は、USART2でサービスされる2本のチャネルのど
ちらを読み取りまたは書き込みオペレーションで処理す
るかを選択する分岐信号である。たとえば、その信号が
正のとき、USART2でサービスされる2本のうちの
チャネルAが選択される。信号が負のときは、チャネル
Bが選択される。第3図には前述のように1本のチャネ
ルしか示してない。プロセッサ5がバス・マスターであ
り、USART2を選択するためにメモリマツプ式入出
力機能を実行したいとき、システム・アドレス・ビット
2が第3図のA/B選択線にゲートされる。DMAオペ
レーションでは、DIAC3が選択すべきチャネルを識
別する信号を出すとき、この信号はDIACA/B信号
であり。
すなわち第3図のポートA/B信号である。簡単のため
、第3図でUSART2に接続されているものとして示
しである制御線は、第1図には示してないが、第3図か
られかるように第1図でもDIAC3から制御ラインが
出ていることを理解されたい。この場合も、DIAC3
からプロセッサ5へのバス許可肯定応答信号がアクティ
ブな場合、DIAC3がチャネル選択を制御する。
データ/制御選択信号も第3図のUSART2に供給さ
れる。これは1選択されたUSART2を使って行われ
るオペレーションのタイプを定義する分岐信号である。
正ならデータオペレーションを示し、負なら制御オペレ
ーションを示す、正の信号は、読み取りオペレーション
が実行されるとき受信データ・バッファが選択されるこ
とを示す。正の信号は、書き込みオペレーションが実行
されるとき送信データ・バッファが選択されることを示
す、負の信号は制御オペレーションを示すプロセッサ5
がバス・マスターの場合、システム・アドレス・ビット
1がデータ/制御線にゲートされる。DIAC:3がバ
ス・マスターの場合、そのオペレーションは、USAR
T中の受信データ・バッファの読み取りオペレーション
または送信データ・バッファの書き込みオペレーション
であると解釈される6バス許可肯定応答がアクティブで
ないとき、プロセッサ5がバス・マスターであり。
データ/制御選択はUSART選択オペ選択オペレーシ
ョンムシステムス・ビット1の状態によって直接制御さ
れる。
読み取りオペレーションの場合、第3図に示す読み取り
信号は、USART2が選択されてUSARTパス・ド
ライバを付勢するとき、読み取りオペレーションを示す
。USART2がそのとき割り込みを要求している中で
最高の優先順位を有するものであるとき、レベル2の割
り込み肯定応#サイクル中、この信号により1割り込み
ベクトルはUSART2からバス上にゲートされる。優
先順位はUSARTの位置によって決まる。読み取りと
書き込みが一致するときは、リセットと解釈される。
書き込みオペレーション。第3図に示したこの書き込み
信号は、USART2が選択されるとき書き込みオペレ
ーションを示す。先に説明した特別レベル2のUSAR
T割り込み要求は、ポート・インターフェース制御装置
10によって供給されるものとして示しである。この割
り込み要求信号は、いずれかのUSART2がアクティ
ブなレベル2の割り込み要求をもつとき1割り込み制御
論理4への分岐信号として活動化される。またレベル2
の割り込みサイクルに肯定応答するため、USARTの
レベル2の割り込み肯定応答I ACKがポート・イン
ターフェース制御装置10およびUSART2に供給さ
れる。IACKサイクル中、優先順位が敞高のUSAR
T2または待機中のレベル2の割り込みをもつポートの
ポート・インターフェース制御装置10は、システム制
御論理回路がUSART2の読み取り信号を活動化する
とき、USART2またはポート・インターフェース制
御装置10によってベクトル値をシステム・データ・バ
スの下位バイトに載せる。USART2からの割り込み
「付勢アウト」信号は、優先順位が次に低いUSART
割り込み「付勢イン」信号に接続されている。この相互
接続は第3図には示してないが、割り込みを有する優先
順位のより高い装置が優先順位のより低い装置から割り
込みを禁止するか、または割り込みがない場合それらの
装置を付勢するようなディジー・チェーンオペレーショ
ンを形成するのに使われる。USART5は、任意的に
最高の優先順位を割り当てられ。
ポート・レジスタは、レベル2の割り込みに関するチェ
ーンの最低末端に接続されている。割り込み付勢線また
はチップ付勢線が、DIAC3からUSART2に供給
される。この信号は、優先順位がより高い他のUSAR
T2が、サービス中または要求中の割り込みをもつこと
を示す。この信号は正でアクティブであり、上記の割り
込みディジー・チェーンを形成するのに使われる。優先
順位が最高のtJsART2は、その割り込み[付勢イ
ンJが+5ボルトの論理レベルに接続されている。優先
順位が最高のUSARTが待機中の割り込みをもつ場合
、上記のように、ディジー・チェーンに関する割り込み
「付勢アウト」相互接続を活動化しない。待機中の割り
込みをもたない場合。
このピンを活動化して、現在の割り込みに関して優先順
位が次に低いUSART2を付勢する。
システム・データ・バスのビットO−7も、USART
2およびボート・インターフェース制御装置10に接続
されている。ボート・インターフェース制御装置10の
ポート・レジスタも図には示してないが、このバスの下
位バイト位置に直接接続されている。USARTのイン
ターフェースでは、パリティは使用しない。しかし、こ
のデータ・バスは、16データ・ビットと2パリテイ・
ビットを含む18ビット幅の双方向分岐バスである。下
位バイトは、奇数アドレスをアドレスするとき使用され
、ビットO−7と下位パリティを含んでいる。ビット0
は、下位バイトの最下位ビットであり、ビット7は最上
位ビットである。上位バイトは、偶数アドレスをアドレ
スするとき使用され、ビット8〜15とデータ用の上位
パリティを含んでいる。ビット8は上位バイトの最下位
ビットであり、ビット15は最上位ビットである。
データ・バスは、正でアクティブである。プロセッサ5
からUSART2へのメモリマツプ式入出力書き込みオ
ペレーション中、データ・バスがプロセッサ5によって
ドライブされる。プロセッサ5からUSART2へのメ
モリマツプ式入出力読み取りオペレーション中、データ
・バスの下位バイトがUSART2でドライブされる。
レベル2の割り込みに関する割り込み肯定応答サイクル
中、USART2またはボート・インターフェース制御
装置10のデータ・レジスタが、割り込みベクトル値を
データ・バスの下位バイトに載せる。レベル5の割り込
みの割り込み肯定応答サイクル中、ポート・インターフ
ェース制御装置10が、その割り込みベクトル値をデー
タ・バスの下位バイトに載せる。
ボート・レジスタ。ポート・レジスタは、10個の各ポ
ートがEIA  R8232インタ一フエース信号なら
びにデータ遷移の検出、データ・セット・レディ遷移の
検出、リング・インジケータ遷移の検出、およびUSA
RT2で供給されない関連する割り込みベクトル値の生
成などの機能を提供するために、システム制御論理回路
に含まれている。これらのレジスタは、ボート・インタ
ーフェース制御装置10の形で実現されており、レジス
タ自体は図に示してないが、下記のビットを含んでいる
ビットOは、RA232インターフェース・レシーバか
らのデータ・セット・レディ信号である。
このビットは読み取り専用でもよい。ビット1は、EI
A  R8232インターフエースから受は取ったリン
グ・インジケータ・ビットであり、読み取り専用ビット
である。
ビット2は、EIA  R8232インターフエースに
向けられるテスト要求である。プロセッサ5はこのビッ
トを書き込んだり読み取ったりすることができ、それが
1にセットされると、インターフェースに対してテスト
要求が活動化される。
システム・リセットによって、このビットが0にセット
される。
ビット3は、データ速度選択信号である。この信号はE
IA  R8232インターフエースに向けられるもの
で、プロセッサ5により読み取りまたは書き込み可能で
ある。このビットが1にセットされると、EIA  R
8232インターフエースに対してデータ速度選択が活
動化され、システム・リセット信号によって、このビッ
トがOにセットされる。
ポート・レジスタのビット4は、データ端末レディ信号
である。この信号はEIA  R8232インターフエ
ースに向けられる。これも読み取りまたは書き込み可能
である。このビットが1のとき、EIAインターフェー
スに対してデータ端末レディ信号がアクティブである。
やはりシステム・リセットによって、このビットがリセ
ットされる′。
ビット5は、外部クロック制御ビットである。
このレジスタ・ビットは、EIA  R5232Cイン
ターフエースでの外部クロック信号のゲーティングを選
択するのに使われる。このビットも、プログラムで読み
取りおよび書き込むことができる。1にセットされると
、遷移クロックがEIAR5232インターフェースか
らUSART2の送信クロック・ピンの入力部にゲート
される。
このビットがOのとき、EIA  R8232インター
フエースのピン15からの送信クロックがゲート解除さ
れ1次にUSARTをその送信クロック・ピンにクロッ
クをもたらすようにプログラミングすることができる。
これによって、EIAR8232インターフェースにク
ロックを供給するような端末装置の直接接続が可能にな
る。ビット5も、システム・リセットによって0にセッ
トされる。
ビット6は、モデムの制御による遷移割り込みレディ信
号である。このビットがセットされると、データ・セッ
ト・レディ・ビットに遷移が起こったとき、またはリン
グ・インジケータ・ビットがオフからオンに変った場合
に、レベル2の割り込みがセットされる。このビットは
、プロセッサ5のプログラムで書き込みまたは読み取り
することができ、システム・リセットによってOにセッ
トされる。
ビット7はデータ遷移割り込み可能信号である。
このビットが1にセットされると、EIA  R823
2C受信データ線で遷移が起こったとき、レベル5の割
り込みがセットされる。このビットはプログラムで書き
込みまたは読み取ることができ。
リセットによってOにセットされる。
また、ポート・インターフェース制御装置1゜には、ス
テータス変更ポート・レジスタが含まれている。このレ
ジスタは、システム制御論理回路に供給できる受信デー
タ遷移、データ・セット・レディ遷移、およびリング・
インジケータのオフ・オン遷移によって起こる割り込み
のステータスを供給する。1バイト・レジスタは、ポー
ト・インターフェース制御装置10でサービスされる2
個のポートのステータスを与える。各ビットは1次の形
をとる。
ビットOは、ポートBに対する「データ・セット・レデ
ィJ  (DSR)オフ・オン遷移である。
ビット1は、ポートBの「データ・セット・レディ」オ
ン・オフ遷移であり、ビット3はポートBのデータ遷移
である。ビット4は、ポートAの[データ・セット・レ
ディ」オフ・オン遷移であり、ビット5はポートAのr
データ・セット・レディ」オン・オフ遷移である。ビッ
ト6はポートへのリング・インジケータ・オフ・オンー
移であり、ビット7はポートAのデータ遷移である。
プロセッサ5は、ポート・インターフェース制御装置1
0のレジスタを読み取りまたは書き込むことができ、レ
ジスタ中の選択されたビットを単独でリセットできるよ
うに、マスクオペレーションで各レジスタをリセットで
きる。プログラムは。
マスクの下で各ビットをリセットして、これらの遷移に
よって起こる割り込みをリセットしなければならない、
これによってそのレジスタに含まれるか又はレジスタが
実際にリセットされるときに起こる他の非同期割り込み
に影響を与えずに、ある割り込みをリセットすることが
可能になる。
これで第1図から第3図までに示した本実施例のオペレ
ーションと制御の詳細および既習の説明は終わる。この
設計の中心は、サービスとオペレーションに大きなフレ
キシビリティを与えるシステム制御論理回路およびDI
AC3である。本明細書の各所で指摘するように、第1
!lに示すように設けられた20本の各チャネル上での
データ転送手段は、プログラマが個別にメモリマツプ式
入出力キャラクタサービス割り込みモードまたは直接メ
モリ・アクセスモードのいずれをも選択することができ
る。DMAモードを選んだ場合、さらに次の選択レベル
を選んで、DMAによって転送される各キャラクタにつ
いてプロセッサに割り込みをかけるかどうか決定するこ
とができる。 DMAオペレーションは、DIAC3で
制御される。
DIAC3は、USART2からRAM6からUSAR
T2に一時に1つのキャラクタを転送するように指令す
る。USART2は、その受信バッファがあるキャラク
タを含むとき、受信DMA要求を活動化する。USAR
Tは、その送信バッファが空のとき、送信DMA要求を
活動化する。DMA要求は、プログラマがどのように構
成を選択したかに応じて、DIAC3によってDMA要
求。
割り込み要求またはその双方として処理される。
各ポートは、受信チャネルと送信チャネルをもっており
、これらのチャネルは、DMA転送モードまたは割り込
みモードで動作し、プロセッサ5にメモリマツプ式入出
力操作によってキャラクタを転送することを合図するよ
うに、個別に構成できる。チャネルがDMAモードで動
作するとき、制御プログラムはそのチャネルの起点アド
レスとバイト・カウントを開始する。DIAC3は、受
信バイト・カウントが0になったとき、または送信バイ
ト・カウントが0になったとき、割り込みによってプロ
セッサ5に合図する。ファイル・メツセージの終りを受
は取ると、上流のUSARTは。
終了割り込みによってプロセッサ5にメツセージが完了
したと合図する。データ・ブロック全体が下流USAR
Tで組み立てられたとき、プロセッサ5はDIAC3に
、RAMにおいて指定されたバッファ・アドレスから上
流送信を開始するように指令する。DIAC:3は、プ
ロセッサ5からのメモリマツプ式入出力オペレーション
によって制御されセットされる。
先に指摘したように、USARTは接続されているモデ
ムまたは局所接続されている端末装置とのプロトコル・
インターフェースを維持するが。
プロセッサ5中で動作する制御プログラムは、希望に応
じてプロトコル変換、集線およびデータオペレーション
機能を実行する。
D3.  重ポート通信システム 第4図(すなわち第4A図および第4B図)は。
多重ポート通信アダプタと無走査式(gcanless
)の通信コントローラ(以下、単に1通信コントローラ
」という)のシステム・バスとの接続を行うため付加的
なインターフェース制御論理を設けた本発明の実施例で
ある。これは、すなわち、多重ポート通信アダプタ、通
信コントローラ、およびこれらを接続するインターフェ
ース制御論理から成る多重ボート通信システムである。
この構成によれば、多重ポート通信アダプタを他の通信
コントローラのシステム・アドレス・バスおよびシステ
ム・データ・バスに接続することができる。これを制御
するプログラムはEPROM8およびRAM6に入って
いる。
通信コントローラは、16個までの接続インターフェー
スを有する。したがって複数の多重ポート通信アダプタ
をこれに接続すれば、システム全体ではさらに多くのボ
ートがサービスされる。たとえば、8ボ一ト式の多重ポ
ート通信アダプタを16個つなぐと、128個のボート
をサービスできる多重ポート通信システムが提供される
かくして本実施例は多重ポート通信アダプタのプロ1−
コル変換機能および集線機能の負担をなくした通信コン
トローラのための新しいアーキテクチャを提供する。
こうした新しいアーキテクチャにおいては、競合するD
MA要求および割り込み要求の調停、ポートのアクセス
に関するDMA制御と割り込み制御、および各チャネル
のモードの選択は、多重ポート通信アダプタで全て処理
することができる。
さらに、多重ポート通信アダプタのRAMまたは通信コ
ントローラのRAMから読み取りまたは書き込みをDI
ACに指令でき、いずれの機能も、プロセッサ5または
通信コントローラ中に常駐するプロセッサへの割り込み
を伴ってまたは伴わず  。
に実行することができる。すなわち、各受信チャネルお
よび送信チャネル毎に少くとも5種のキャラクタサービ
スモードをプログラム制御下で選択できるのである。プ
ログラムは、第4図に示すように通信コントローラに接
続するために必要なインターフェース制御論理15を含
めて構成されている多重ポート通信アダプタに常駐して
いる。
キャラクタサービスモードを列挙すると、プロセッサ5
の割り込みなしに単にDMAによりUSARTの受信バ
ッファから多重ポート通信アダプタのRAM (以下、
本節においては説明の都合上、多重ポート通信アダプタ
のRAMを特に[ローカルRAMJ 、通信コントロー
ラ側のRAMを特に「メインRAMJを区別する場合が
ある)6に転送すべき受信キャラクタに関する直接メモ
リアクセスモード、プロセッサ(以下、本節においては
説明の都合上、通信コントローラ側のプロセッサを特に
「主プロセツサ」という場合がある)の割り込みなしに
USARTの受信バッファから通信コントローラのRA
M (メインRAM)に転送すべき受信キャラクタに関
する直接メモリアクセスモード、プロセッサ5に割込み
指示を与えて且つDMAによりUSARTの受mバッフ
ァからローカルRAM6に転送すべき受信キャラクタに
関する直接メモリアクセスモードがある。この他1通信
コントローラの主プロセツサに割込みを与えて且つDM
AによってUSARTの受信バッファから通信コントロ
ーラのメインRAMに転送すべきキャラクタに関する直
接メモリアクセスモードがある。さらに、DMAを全く
使わず、プロセッサ5に割り込みを与えて割り込みサー
ビス・ルーチンを呼び出し、メモリマツプ式入出力オペ
レーションでUSARTにサービスしてUSARTの受
信バッファを読み取るモードもある0以上は、USAR
Tの受信チャネル用のものであるが、送信チャネルに対
してもこれらと同じモードがある(ただしデータの転送
の方向は以上に列記したものと逆になる)。
DIAC3によって高い融通性が得られるので、プログ
ラマはハードウェアから最大限のパフォーマンスが得ら
れるように128本の通信チャネルの各々のオペレーシ
ョンをカストマイズすることができる。たとえば、所与
のポートを調歩式で動作させる場合、プログラマは、そ
のポートの受信チャネルが各キャラクタを受は取ったと
きプロセッサ5に割り込むよう動作させることが選択で
きる。それによって、プロセッサ5が受信エラーを監視
し、必要ならキャラクタを一時に一つずつ新しいフォー
マットまたはプロトコルに変換することができる。同じ
ポートに関する送信チャネルを。
DMAモードで動作するようにプログラミングして、完
成したメツセージが送信されるまでプロセッサ5に割り
込むことなく、アウトバウンド・メツセージを直接送信
して、プロセッサのサイクル効率の高いアウトバウンド
高速オペレーションを実行することができる。この方法
により、どちらかのプロセッサに割り込みをかけて、ま
たはかけずに、プログラムによって20本の任意のチャ
ネルによるデータ転送をメモリマツプ式入出力また゛ 
 はDMAのいずれにも個別的に選択することができる
通常コントローラを含むデータ流れの構成通信ゴントロ
ーラを接続した多重ポート通信システムのデータ流れば
、基本的に今まで多重ポート通信アダプタについて説明
したものと同じであるが多重ポート通信システムではそ
の他に、データを多重ポート通信アダプタから通信コン
トローラ中のメインRAMに転送することができる。D
IAC3またはプロセッサ5が、そのローカルRAM6
または通信コントローラ中のメインRAMをアドレス指
定することができる。どちらのRAMにアドレスするか
の選択には、アドレス・ビット23を使う、多重ポート
通信アダプタのマシン・サイクル中でアドレス・ビット
23が活動化される場合、インターフェース制御論理1
5は、通信コントローラの調停回路へのDMA要求を活
動化する。通信コントローラの主プロセツサは、バス・
マスター権を優先順位順に多重ポート通信アダプタに与
え、インターフェース制御論理15が、通信コントロー
ラのメインRAMとの間での転送を指令する。データを
直接USART2から多重ポート通信アダプタのローカ
ルRAM6にまたはそのローカルRAMから通信コント
ローラのメインRAMにまたはメインRAMから転送さ
せる能力もある。データの転送は、またDIAC3また
はプロセッサ5の制御下で実行できる。以下の説明では
、多重ポート通信アダプタのことを単にアダプタという
6 システム・データ流れの開始 多重ボート通信システムにおける各アダプタは、通信コ
ントローラのメインRAMにそれぞれ通信域をもってい
る。通信域は、各アダプタ用の装置ステータス・ワード
(DSW)と装置制御ワード(DCW)を含んでいる。
メインRAM中でのDCWとDSWの位置は、通信コン
トローラのボート階層中でのアダプタの物理的位置によ
って決まる。通信コントローラがリセットされると、そ
れによって制御プログラムが動作して、導入されている
各アダプタ用のDSWとDCWを初期設定する。DCW
は1通信コントローラの主プロセツサのマイクロコード
によって作成され、アダプタのプロセッサ5によって読
み取られる。DCWは、コマンド・バイトとアウトバウ
ンドバッファアドレスと、インバウンドバッファアドレ
スと、コマンドによって変わるその他のフィールドとを
含んでいる。DSWはプロセッサ5中で動作するアダプ
タのマイクロプロセッサ・コードによって作成される。
プロセッサ5のステータス、データ受信の品質、現実行
シーケンス、およびデータ転送用に使われた最後のバッ
ファのアドレスを報告するフィールドは、プロセッサ5
によって作成される。
プロセッサ5が通信コントローラからの割り込みを検出
すると、DCWを制御ユニットのメインRAM中のそれ
に割り当てられた通信域からDMAによってそれ自体の
メモリまたはレジスタに転送し、次にコマンド・バイト
を間合わせる。
考えられる多数のコマンドのうちの一つは、初期プログ
ラム・ロード(IPL)コマンドである。
このコマンドは、通信コントローラのメインRAMから
のDMA転送を使って、アダプタにそのオペレーション
コードの初期設定と行わしめる。IPLコード用のメイ
ンRAMの起点アドレスは、初期設定時に通信コントロ
ーラのプロセッサで作成されるDSWに含まれる。
あるコマンドが実行されると、プロセッサ5は、DMA
転送によって通信コントローラのメインRAM中のその
関連するDSWに終了ステータスを書き込む。
要するに、通信コントローラの主プロセツサ中で動作す
るマイクロコードがDCWを作成し1次にプロセッサ5
に割り込む。プロセッサ5は、DMAオペレーションに
よってDCWを読み取る。
プロセッサ5のマイクロコードは、DMA書き込みオペ
レーションでDSWをメインRAMに書き込み、次に通
信コントローラの主プロセツサに割り込む。通信コント
ローラの主プロセツサは、そのメインRAMからDSW
を読み取る。したがって、プロセッサ5と通信コントロ
ーラの主プロセツサは、個々の各アダプタに割り当てら
れた通信域を介して互いに通信できる。
データ・バッファ データ・バッファはDCW中でアドレスされ、通信ユニ
ットのメインRAMに常駐している。これらのバッファ
は、DMA転送を使ってプロセッサ5からアドレスされ
る。バッファのサイズは、この設計では制御用接頭部を
含めて288データ・バイトに固定されている。それよ
りも大きなブロックを送信または受信する場合1通信コ
ントローラの主プロセツサへの要求によって、プロセッ
サ5に複数のバッファを設けることができる。各バッフ
ァの始めの接頭部フィールドは、所有タスク識別、順方
向ポインタ、データ開始オフセットおよびバイト・カウ
ントを含んでいる。順方向ポインタの内容が正の場合、
プロセッサ5が送信しなければならない(または受信で
きる)チェーン中の次のバッファのアドレスを供給する
。データ開始オフセットは、データがそのバッファの初
期アドレスないし先頭アドレス以外の所から始まること
ができるようにし、プロトコル変換の必要に応じてのラ
イン・プロトコル制御キャラクタの接頭部としてスペー
スを残す。
DCWコマンド プロセッサ5が通信コントローラからの割り込みを検出
すると、DCWの割り当てられた通信域からDMAによ
って転送し、コマンド・バイトを問い合わせなければな
らない。実行されるコマンドの例は1次の通りである。
書き込み。その最初のアドレスがDCW中に現われるよ
うなバッファの内容が、通信線に送出される。バイト数
は、バイト・データ・カウントで指定される。
読み取り。アダプタは受信するように条件付けられ、結
果として得られるデータがDCW中で識別されるバッフ
ァに記憶される。記憶されるバイト数は、データ・カウ
ントまたはブロック検出の終りのどちらか先に起こった
方によって制限される。
インターフェース制御論理 ここでは、第4図の直接メモリ・アクセス/メモリマツ
プ式入出力インターフェースと、アダプタを通信コント
ローラバスに接続するためのインターフェース制御論理
15について説明する。
通信コントローラのDMAバスは、そのメモリと接続さ
れているアダプタとの間に18ビツト(16データ・ビ
ット+2パリテイ・ビット)の双方向データ・バスを提
供する。このインターフェースではバイトまたはワード
(2バイト)転送をサポートする。
DMAデータ・バスの保全性は、データ・バスの、各バ
イトに関連してパリティ・ビットを使用することによっ
て保証される。正しいパリティは。
必ず奇数である(すなわち各バイトについてパリティ・
ビットおよびデータ・ビット“′1″の数が奇数でなけ
ればならない)。パリティの生成と検査の機能は、イン
ターフェース制御論理15に含まれている。
インターフェース制御論理と信号の説明インターフェー
ス制御論理15は、制御コントローラとの間で信号をゲ
ートするためのタイミングと制御を提供する。第14図
に示したインターフェース制御部90は1通信コントロ
ーラメインRAMとの間でのデータ転送中に下記のイン
ターフェース信号を制御するため、トライステート・ド
ライバ・レシーバ9にタイミングおよび方向制御を提供
する。
データ・バス信号 データ・バスは、18ビツト(16データ・ビット+2
パリテイ・ビット)双方向分岐バスである。下位バイト
は、奇数アドレスをアドレスする際に使い、ビット0−
7とデータの下位パリティ・ビットとを含んでいる。ビ
ットは下位バイトの最下位ビットであり、ビット74よ
最上位ビットである。」二位バイトは、偶数アドレス(
ワード・アドレスと同じアドレス)をアドレスする際に
使い、ビット8−15とデータの(上位パリティ・ビッ
トとを含んでいる。ビット8は上位バイトの最下位ビッ
トであり、ビット15は最上位ビットである。データ・
バスは正でアクティブである0通信コントローラからア
ダプタへのDMA読み取りオペレーション中またはメモ
リマツプ式入出力書き込みオペレーション中、データ・
バスは通信コントクーラによってドライブされる。また
、BMAオペレーションが進行中でないとき、データ・
バスは、テスト・ツール・アダプタで監視できるように
通信コントローラによってドライブされる。
アドレス・バス DMAアドレス・バスは、すべてのDMAオペレーショ
ンについてバス・マスクでドライブされる分岐バスであ
る。アドレス・バスは、メモリ・スペース中においてア
クセスされる位置のアドレスを含んでいる。アドレス・
バスは23ビツト・バスであり、A1がその最下位ビッ
ト、A23が最上位ビットである。アドレス・バスは、
正でアクティブである。23ビツト・アドレス・バスは
、上側データ・ストローブおよび下側データ・ストロー
ブと共に、単一バイト・アドレスまたはワード・アドレ
スを選択するのに使われる。データ・ストローブだけが
アクティブな場合、バイトオペレーションとなる。両方
のデータ・ストローブがアクティブなとき、ワード(2
バイト)オペレーションとなる。DMAオペレーション
が進行中でないとき、アドレス・バスは、テスト・ツー
ルで監視できるように通信コントローラによってドライ
ブされる。このバスも、通信コントローラからアダプタ
へのメモリマツプ式入出力制御オペレーションに通信コ
ントローラによってドライブされる。
制御バス書き込み信号 この分岐信号は、すべての入出力オペレーションについ
てデータ・バス上での転送方向を示すため、バス・マス
ターによってドライブされる。DMAオペレーション中
、この信号が活動化すると、データ転送がバス・マスタ
ーからメモリへの転送であることを示す。DMAオペレ
ーション中、この信号が活動化していないとき、データ
転送がメモリからバス・マスターへの転送であり、読み
取りオペレーションに関連するものであることを示す、
DMAオペレーションが進行中でない場合。
この信号は通信コントローラの制御下にある。通信コン
トローラは、書き込みオペレーションを実行する際にこ
の信号を活動化する。書き込み信号は、負でアクティブ
な信号である。
レベル1割り込み信号 レベル1割り込み信号は、通信コントローラへの待機中
のレベル1の割り込みをもつアダプタによってドライブ
される分岐信号である。アダプタは、データ割り込みま
たはアダプタのマシン・チェラグ割り込みをもつとき、
この信号を活動化する。レベル1割り込み信号は、負で
アクティブな信号である。
レベル6割り込み信号 レベル6割り込み信号は、通信コントローラへの待機中
のレベル6の割り込みをもつアダプタによってドライブ
される分岐信号である。制御割り込みをもつアダプタが
、この信号を活動化する。
レベル6割り込みは負でアクティブな信号である。
レベル1割り込み肯定応答信号(L I I ACK)
LIIACKは、プロセッサ5がアダプタからのレベル
1割り込みに対する割り込み背定応答サイクルを実行す
るとき、通信コントローラ中の主処理装置によって活動
化される分岐信号である。
LIIAC:には、負でアクティブな信号である。
レベル6割り込み肯定応答信号(L6IACK)L6I
ACKは、プロセッサ5がアダプタからのレベル6の割
り込みに対する割り込みを肯定応答サイクルを実行する
とき1通信コントローラ中の主処理装置によって活動化
される分岐信号である。L6IACKは負でアクティブ
な信号である。
バス要求7割り込み要求バス これは、各アダプタ位置に線が1本ずつ割り当てられた
。18個の信号のバスである。このバスは、バス要求お
よびアダプタ割り込みを処理できるように多重化されて
いる。通信コントローラ中の主プロセツサが、レベル1
の割り込みに対する割り込み肯定応答サイクルを実行す
るとき1通信コントローラのシステム論理が、アダプタ
に対するレベル1割り込み肯定応答(L I I AC
K)信号を活動化する。通信コントローラ中の主プロセ
ツサがレベル6の割り込みに対する割り込み肯定応答サ
イクルを実行するとき9通信コントローラのシステム論
理が、アダプタに対するレベル6割り込み肯定応答(L
6IACK)信号を活動化する。L2IACKがアクテ
ィブのとき、アダプタが通信コントローラに提示される
レベル6の割り込みをもつ場合、そのバス要求7割り込
み背定応答線を活動化する。LIIAC:にとL6IA
C,Kがアクティブでないとき、アダプタは、DMA要
求をもつ場合、その要求7割り込み肯定応答線を活動化
する。バス要求7割り込み肯定応答は、負でアクティブ
な信号である。
バス要求オペレーション、LIIACKとL6IACK
がアクティブでないとき、DMA要求をもつアダプタが
、そのバス要求7割り込み肯定応答線を活動化する。バ
ス要求7割り込み肯定応答線は、入出力オペレーション
のためにバスの制御を要求する任意の装置によってドラ
イブされる。
アダプタは、バス要求に対するそのバス要求7割り込み
肯定応答線を活動化するとき、それがバス・マスター権
を得るまでそれをアクティブに保たなければならない。
LIIACKまたはL6IACKがアクティブになる場
合、もしくはアダプタが滅勢される場合、バス要求を取
り下げなければならない。装置が滅勢されない限り、バ
ス要求を早期に取下げる必要はない。あるバス・マスタ
ーがそのバス・マスター権を得て、その最後のまたは唯
一の転送を行う準備ができているとき、そのバス要求信
号は、それがアドレス・ストローブを活勧化する前に滅
勢され安定でなければならない。
最後の転送を完了したバス・マスターは、進行中の転送
に対するアドレス・ストローブを滅勢するまで、そのバ
ス要求を再活動化する必要はない。
割り込み肯定応答オペレーション。通信コントローラの
主プロセツサがレベル1の割り込みに対する割り込み肯
定応答サイクルを実行しているとき、それらのアダプタ
に対するLIIACK線が活動化される。通信コントロ
ーラのプロセッサがレベル6の割り込みに対する割り込
み肯定応答サイクルを実行しているとき、それらのアダ
プタに対するL6IACK線が活動化される。LIIA
CK信号またはL6IACK信号が活動されると、アダ
プタにそのバス要求をバス要求7割り込み肯定応答バス
から取り除くように合図が出る。LIIACKがアクテ
ィブな場合1通信コントローラにレベル1の割り込みが
提示されたアダプタが、そのバス要求7割り込み肯定応
答線を活動化することになる。L6IACKがアクティ
ブな場合、通信コントローラにレベル6の割り込みが提
示されたアダプタが、そのバス要求7割り込み肯定応答
線を活動化することになる。割り込みは、通信コントロ
ーラの調停論理回路でコード化され、通信コントローラ
の主プロセツサに優先権を与えられた割り込みベクトル
値として提示される。生成されるベクトル値は、アダプ
タがLIIACKまたはL6IACK中にアクティブな
そのバス許可7割り込み受入れ信号を認識するとき、ア
ダプタがコード化された3本の割り込みタイプ線に載せ
るコードによって決まる。
バス許可7割り込み許可バス これは、各アダプタ位置に1本ずつ線が割り当てられた
18個の信号のバスである。このバスは。
バス許可を処理し、割り込み中のアダプタにその割り込
みが通信コントローラによって受は入れられていること
を合図できるように多重化されている。アダプタがLI
IACKまたはL6IACK中にアクティブなそのバス
許可7割り込み受入れ信号を認識するとき、アダプタは
、コード化された割り込みタイプの線を1通信コントロ
ーラに提示中の割り込みのタイプ(データ割り込み、ア
ダプタのマシン・チェック割り込みまたは制御割り込み
)に対応して活動化する。アダプタはまた、割り込み線
上に提示されている割り込みをリセットしなければなら
ない。バス許可7割り込み受は入れ信号は、負でアクテ
ィブな信号である。
バス許可オペレーション。この信号は、そのバス・マス
ター権をとるはずの装置のための通信コントローラのバ
ス調停論理回路でドライブされる。
バス・マスター権を要求している装置が複数個あるので
1本システムではどの装置にバスの制御を許すかを決定
する調停論理回路を設けである。たとえば、その位置に
もとづいて優先順位を決定するスター調停法を採用する
0位置1に導入されたアダプタが、優先順位の高いアダ
プタとなり、最後の位置に導入されたアダプタの優先順
位は最低となる。バス許可は、バス許可肯定応答および
アドレス・ストローブが活動化された後、またはバス許
可が受諾されなかったことが検出されるまで、一度活動
化されれば非活動化されない。バス許可は、アドレス・
ストローブが活動化された直後に非活動化される。これ
は、調停の解決およびバスの最大利用のために最大の時
間が得られるようにするためである。アダプタは、それ
がアクティブなバス要求をもつとき、バス許可が活動化
されたことを検出するまで、バス・マスターとしてバス
上のどの信号も活動化する必要がない。さらに、アドレ
ス・ストローブ、データ転送肯定応答およびバス許可肯
定応答は、次のバス・マスターがインターフェース上の
信号を活動化する前に以前のバス・マスターによって非
活動化されていなければならない。
割り込み受は入れオペレーション。LIIAC:Kまた
はL6IACKがアクティブなとき、通信コントローラ
の制御論理回路は、その割り込みが肯定応答されている
アダプタに対するバス許可7割り込み受は入れ信号を活
動化する。あるアダプタが、LIIACKまたはL6I
ACKがアクティブな間にアクティブであるそのバス許
可7割り込み受は入れ線を認識すると、そのアダプタは
、通信コントローラに提示されている割り込みのタイプ
(データ割り込み、アダプタのマシン・チェック割り込
みまたは制御割り込み)に対応するコード化された割り
込みタイプ線を活動化する。通信コントローラ中で各ア
ダプタからの3種の割り込みタイプに対応する一意的な
割り込みベクトル値が生成される。アダプタは、また割
り込み線上に提示された割り込みをリセットしなければ
ならない。
コード化割り込みのタイプ(ビットO〜2)これらの負
でアクティブな分岐信号は、その割り込みが肯定応答さ
れているアダプタによって通信コントローラに提示され
ている割り込みのタイプを示すようにコード化されてい
る。あるアダプタが、LIIACKまたはL6IACK
がアクティブな間にアクティブであるそのバス許可7割
り込み受は入れ線を認識すると、そのアダプタは。
通信コントローラに提示されている割り込みのタイプ(
データ書き込み、アダプタのマシン・チェック割り込み
、または制御割り込み)、に対応するコード化された割
り込みタイプ線を活動化する。
通信コントローラ中で、各アダプタからの3種の割り込
みタイプに対応する一意的な割り込みベクトル値が生成
される6アダプタはまた割り込み線上に提示された割り
込みをリセットしなければならない。
コード化割り込みのタイプ(ビットO〜2)これらの負
でアクティブな分岐信号は、その割り込みが肯定応答さ
れているアダプタによって通信コントローラに提示され
ている割り込みのタイプを示すようにコード化されてい
る。LIIACKまたはL6IACK中にバス許可7割
り込み受は入れ信号を受は取ったアダプタは、コード化
割り込みタイプ・ビットO11,2にそのコード化され
た割り込みタイプを載せる0割り込みのタイプは、デー
タ割り込み、アダプタのマシン・チェック割り込み、お
よびアダプタ制御割り込みである。通信コントローラ中
のシステム論理回路が、どのアダプタの割り込みが肯定
応答されているかおよび肯定応答中の割り込みのタイプ
にもとづいて一意的な割り込みベクトル数を生成する。
割り込みタイプのコード化は、次の通りである。
ビット2   ビット1   ビットo    割ツマ
z11(プ非アクティブ 非アクティブ 非アクティブ
 予約(無効コードイυ非アクティブ 非アクティブ 
 アクティブ 予約CI功コードイυ非アクティブ  
アクティブ 非アクティブ データ非アクティブ  ア
クティブ  アクティブ 制御アクティブ 非アクテイ
ブ非アクティブ アブブタマシンチェックアクティブ非
アクティブ  アクティブ予約アクティブ  アクティ
ブ非アクティブ 予 約アクティブ  アクティブ  
アクティブ予 約バス許可背定応答信号 バス許可肯定応答信号(BGACK)は、DMAオペレ
ーション中にバス・マスター権を得るために使用される
分岐信号である。バス許可肯定応答信号は、負でアクテ
ィブな信号である。
DMAオペレーション。バス許可肯定応答信号は、アク
ティブなバス要求をもちバス許可を受は取ったアダプタ
によって活動化される信号である。
アダプタは、許可を受は取った後、以前のバス。
マスターからのアドレス・ストーブ、DTACKおよび
BGACKが非活動化されてから自分のBGACKを活
動化する。バス許可肯定応答は、入出力オペレーション
の完了までアクティブに保たれなければならない。バス
・マスター権は、バス許可肯定応答が非活動化されると
終了する。
アドレス・ストローブ信号 アドレス・ストローブ信号は、DMAオペレーションを
実行するとき、バス・マスターによってドライブされる
分岐信号である。DMAオペレーションの場合、アドレ
ス・ストローブ信号は、そのアドレス・ストローブ信号
が活動化されてから非活動化されるまでアドレス・バス
信号が有効で安定となるように、ドライブされなければ
ならない。DMAオペレーションが進行中でないとき。
アドレス・ストローブは通信コントローラの制御下にあ
り、通信コントローラのメモリ・サイクル中通信コント
ローラによって活動化される。アドレス・ストローブ信
号は、負でアクティブな信号である。
上側データ・ストローブ信号 上側データ・ストローブ信号は、単一バイトオペレーシ
ョンが実行され、バイト上位(偶数アドレス)バイトで
あるとき、バス・マスターによってドライブされる。上
側データ・ストローブも下側データ・ストローブも、ワ
ードオペレーション用に活動化される。DMAオペレー
ションが進行中でないとき、上側データ・ストローブは
通信コントローラの制御下にあり、データの上位バイト
を読み取りまたは書き込みのメモリ・サイクル(通信コ
ントローラのメモリ・サイクル)中1通信コントローラ
によって活動化される。上側データ・ストローブは、負
でアクティブな信号である。
下側データ・ストローブ信号 下側データ・ストローブ信号は、単一バイトオペレーシ
ョンが実行され、バイトが下位(奇数アドレス)バイト
であるとき、バス・マスターによ妻てドライブされる。
下側データ・ストローブも上側データ・ストローブも、
ワードオペレーション用に活動化される。DMAオペレ
ーションが進行中でないとき、下側データ・ストローブ
は通信コントローラの制御下にあり、データの下位バイ
トを読み取りまたは書き込みのメモリ・サイクル中1通
信コントローラによって活動化される。下側データ・ス
トローブは、負でアクティブな信号である。
データ転送肯定応答信号 データ転送肯定応答信号は、入出力オペレーション中に
スレーブ装置(記憶制御装置、システムメモリマツプ式
入出力論理回路またはアドレスされたアダプタ)によっ
てドライブされる分岐信号である。これは、DMAオペ
レーション中のアダプタと通信コントローラのメモリ・
システムとの間での非同期オペレーション、および主プ
ロセツサのメモリマツプ式入出力オペレーション中の主
プロセツサとアダプタとの間での非同期オペレーション
を考慮したものである。書き込みオペレーションの場合
、データ転送肯定応答はスレーブ装置がインターフェー
ス上で情報を捕捉し、オペレーション進行可能であるこ
とを示す、読み取りオペレーションの場合、データ転送
肯定応答は、スレーブ装置がデータをデータ・バスに出
し、オペレーション進行可能であることを示す。DMA
オペレーション中、スレーブ装置は通信コントローラの
記憶制御装置であるから、データ転送肯定応答はこの記
憶制御装置より供給される。通信コントローラからアダ
プタへのメモリマツプ式入出力の読み取りサイクルまた
は書き込みサイクル中。
アドレスされるアダプタがスレーブ装置となるので1通
信コントローラにデータ転送肯定応答信号を供給しなけ
ればならない、データ転送肯定応答は一度活動化される
と、アドレス・ストローブがアクティブな間アクティブ
でなければならず、アドレス・ストローブが非活動化さ
れると非活動化しなければならない。データ転送肯定応
答信号は。
負でアクティブな信号である。
エラー信号 エラー信号は、記憶制御システム論理回路でドライブさ
れる分岐信号である。エラー信号は1次のうちの一つを
示す6 アダプタから受は取ったデータのパリティの誤まり。
導入されていない記憶装置への読み取りまたは書き込み
RO8への書き込み。
バス許可を受は取ったアダプタが2マイクロ秒以内にバ
ス許可肯定応答で応答しなかったことによるタイムアウ
ト条件。
アダプタがタイムアウト期間内にそのストローブを非活
動化しなかったことによるタイムアウト条件。
読み取りオペレーションで2重ビット・エラーが検出さ
れるか、またはバイト書き込みオペレーションに対する
読み取り一修正−書き込みサイクルの読み取り部分の間
に2重ビット・エラーが検出されたこと。
アダプタがRAMの記憶保護域への書き込みを試行する
か、または通信コントローラのメモリマツプ代入21′
、力域へのアクセスを試行する場合に生する記憶保護違
反。
エラー信号は、アクティブなバス・マスクによって入力
として単に検出されなければならない。
エラー信号を検出したバス・マスターは、それが通信コ
ントローラに対するインターフェース上で活動化した信
号を減勢しなければならない、エラー信号は、データ転
送肯定応答信号が活動化される前またはそれと同時に活
動化される。エラー信号は、負でアクティブな信号であ
る。
システム・リセット信号 システム・リセット信号は、下記のいずれかのタイプの
リセットが生ずるとき通信コントローラによって活動化
される負でアクティブな信号である。
電源投入リセット メモリマツプ式入出力によって実行されるリセット サービス・アダプタからのリセット 操作盤からのディスク・ダンプ・リセットプロセッサの
リセット命令の実行 システム・リセットは、アダプタがリセット・ソτスで
あるとき、サービス・アダプタ位置におけるそのアダプ
タをリセットしない。
メモリマツプ式入出力選択信号 これは、あるアダプタに対するメモリマツプ式入出力オ
ペレーション中に1通信コントローラの主プロセツサに
よって活動化される負でアクティブな信号である。アダ
プタは、どのアダプタが選択されまたどの機能が実行さ
れるのかを決定するためアダプタ選択信号がアクティブ
な間に、アドレス・バスの下位8ビツトを解読する。
受信オペレーション用インターフェース制御メインRA
Mから読み取られるDCWは、DMAデータ転送中にR
AMをアドレスするためアダプタが使用するアドレス情
報を含んでいる。そのデータ・バッファは、アダプタが
DMAオペレーション中にRAMに直接アドレスできる
ように、RAM中でマツピングされている。RAMは、
システム・アドレスのビット23がRAMアクセス中に
活動化されないようアドレス・スペースに位置指定され
ている。あるアダプタがDMA書き込みオペレーション
を実行するとき、そのアダプタは、アクティブなビット
23書き込みオペレーションを実行する。アクティブな
ビット23によるオペレーションでは、インターフェー
ス制御論理15のDMA要求ラッチがセットされる。こ
れで通信コントローラに対するDMAバス要求が活動化
される。通信コントローラの調停論理回路は、アダプタ
がアクティブなりMAババス求をもつ優先順位最高のア
ダプタとなったとき、そのアダプタに対するバス許可信
号を活動化する。バス要求からバス許可までの間は、ア
ダプタは書き込みサイクルに保たれ、そのアドレス・バ
ス、データ・バスおよび制御信号はアクティブに維持さ
れる。
アダプタがバス許可を挙は取ると、インターフェース制
御論理15はバス許可肯定応答信号を活動化し、続いて
次のことを行う。
アダプタのアドレス・バスはDMAアドレス・バスにゲ
ートされる。ただし、システムRAMへの正しいマツピ
ングを実行するためにビット23は非活動状態にされる
アダ°ブタの制御信号は、DMA制御信号にゲー。
トされ、プロセッサのタイミング仕様に合致するように
時間調整される。
これは書き込みオペレーションなので、アダプタのデー
タ・バスはDMAデータ・バスにゲートされる。
通信コントローラの記憶制御論理回路は、システムRA
Mへの書き込みオペレーションを実行し、RAMにデー
タが書き込まれるとき、アダプタに対するデータ転送肯
定応答信号を活動化する。
アダプタがデータ転送肯定応答信号を受は取ると、イン
ターフェース制御論理15はDMAインターフェースに
対する信号を逐次的に非活動化し、アダプタのプロセッ
サ5は書き込みオペレーションサイクルを完了する。
ブロックの終りを受は取るまでは、通信線からバイトを
受は取る毎に、このシーケンスが繰り返される。
送信オペレーション用インターフェース制御あるアダプ
タがDMA読み取りオペレーションを実行するとき、そ
のアダプタは、アクティブなビット23で読み取りオペ
レーションを実行する。
アクティブなビット23によるオペレーションでは、イ
ンターフェース制御論理15のDMA要求ラッチがセッ
トされる。これで通信コントローラに対するDMAバス
要求が活動化される。通信コントローラの調停論理回路
は、そのアダプタがアクティブなりMAババス求をもつ
優先順位最高のアダプタとなったとき、そのアダプタに
対するバス許可信号を活動化する。バス要求からバス許
可までの間は、アダプタは読み取りサイクルに保たれ、
そのアドレス・バス、データ・バスおよび制御信号はア
クティブに維持される。アダプタがバス許可を受は取る
と、インターフェース制御論理15はバス許可肯定応答
信号を活動化し、続いて次のことを行う。
アダプタのアドレス・バスはDMAアドレス・バスにゲ
ートされる。ただし、システムRAMへの正しいマツピ
ングを実行するためにビット23は非活動状態にされる
アダプタの制御信号は、DMA制御信号にゲートされ、
プロセッサのタイミング仕様に合致するように時間調整
される。
これは読み取りオペレーションなので、インターフェー
ス制御論理15は、DMAインターフェースからデータ
を受は取るように条件付けられる。
通信コントローラの記憶制御論理回路は、システムRA
Mに対する読み取りオペレーションを実行し、DMAイ
ンターフェース上でデータがアクティブのとき、アダプ
タに対するデータ転送肯定応答信号を活動化する。
アダプタがデータ転送肯定応答信号を受は取ると、イン
ターフェース制御論理15はDMAインターフェースに
対する信号を逐次的に非活動化し、アダプタのプロセッ
サは読み取りオペレーションサイクルを完了する。
DMA送信カウントがゼロになるまでは、通信線にバイ
トを送る毎にこのシーケンスが繰り返される。
以上の説明から、プログラム記憶式に調節できるプロト
コル・アダプタおよびポート・インターフェースを含む
多重ボート通信アダプタと無走査式の通信コントローラ
と組み合わせた構成は、いずれもDIAC3のユニーク
な構造とアーキテクチャおよび制御論理に大きく依存し
ていることが理解されよう、DIAC3は、比較的多数
のチャネルに対する直接メモリ・アクセスの調停と割り
込みの調停の両方を処理できる点でユニークである。D
MAモードおよび割り込みモードで多重ポート通信の機
能を実行できるアーキテクチャ構造は、これまでには知
られていない0本実施例は、各チャネル毎に最適のデー
タ転送モードをシステム環境条件の要求に合わせて個別
にプログラミングでき、プロセッサをベースとする通信
システム内部のUSART2などの複数の通信チャネル
装置との間でデータを転送するための改良された手段を
提供する。さらに、本実施例は、サービスされる実際の
装置に対する要件を最小限にして、データ転送を実現す
るための、ハードウェア効率の高いアーキテクチャを提
供する。
D4.DIAC3の DMA/割り込み制御装置すなわち本明細書ではDIA
C3と呼ぶ制御装置は、多重ボート通信アダプタにおけ
る最重要部分である0通信の分野で問題となるのは、受
信装置と送信装置との間でデータを転送するためのメカ
ニズムである。受信装置がプロセッサのメモリであり、
送信装置が入力バッファである場合、またはそのデータ
転送方向が逆の場合、データ・サービスの一般的な2つ
のデータ転送モードは、キャラクタ割り込みモードと直
接メモリ・アクセスモードである。
割り込みサービスモードでは、通信装置(典型的な場合
ではUSART)がデータキャラクタの送信または受信
の準備を完了すると、プロセッサに割り込む。プロセッ
サは、装置から提示される一意的な割り込みベクトルに
よって割り込みをかけた装置を識別した後1通常は最終
的にデータ転送オペレーションを実行せしめる割り込み
サービス・ルーチンに入る0通常は、RAMのバッファ
域との間でデータを転送することが望ましい。したがっ
て、割り込みをかけている装置が受信装置の場合、主プ
ロセツサは、その受信データをアクセスしてそれを適切
なRAM位置に書き込む、逆に送信装置の場合は、主プ
ロセツサは適切なRAM位置をアクセスして、データを
送信装置に転送する。この機構だと、システムの設計は
比較的簡単になるが、転送を行なうのに必要なプロセッ
サ・サイクル数の点からいうと非常に高価である。
データ転送を実現するために広く使用されているもう一
つの機構は、直接メモリ・アクセスモードである。この
モードでは、一般にDMAコントローラと呼ばれる専用
のプロセッサを使用する。
これは、要求されるバスの制御権を受は取り、データを
受信装置または送信装置とシステムのメインRAMとの
間で転送することにより、プロセッサが連続的に関与す
ることなく転送を実行する。
DMAコントローラは、主プロセツサに割り込む前にデ
ータ・ブロックを転送する。このモードは。
データ・ブロックの転送によって通信チャネルを処理す
る場合には勤率的であるが、システムの全体的な設計が
複雑となり、融通性が低くなる。さらに、市販のDMA
コントローラで処理できるチャネル数は、普通2本から
4と比較的少なく、本実施例の場合のように多数のチャ
ネルをDMAモードで処理する必要がある場合、その欠
点が目立ってくる。
以上のことから、所与のチャネルに対する最適のデータ
転送モードは、所与の時間にそのチャネルについて企図
される通信の種類に依存することが理解できるであろう
、たとえば、チャネル1が同期データ・リンク制御(S
DLC)プロトコルを使って通常は高いボーレートでデ
ータを送信する場合、DMAモードが望ましい、逆に、
別のチャネル、たとえばチャネル5が調歩式により比較
的低いボーレートでデータを受信するために専用のもの
となっている場合、そのチャネルをキャラクタ割り込み
モードでサービスするのが有利である。しかしながら、
所与のチャネルに対するデータ耘送用に選ばれる機構は
、システム全体のアーキテクチャのハードウェアで決ま
ってしまう、このため、各種の通信チャネル構成を処理
できるように設計されたシステムは、大きな制限が課さ
れる・6たとえば、ある適用業務で低速の調歩式装置を
処理できるように設計された通信ポートが、高速の5D
LC:型装置情報転送を処理するには全く適さないこと
がある。さらに、独自のハードウェアの修正を加えない
限り、所与のチャネルに対するデータ転送機構の動的再
構成が全く不可能なことがある。
DIIC3の良好な実施例で例示されるような直接メモ
リ・アクセス7割り込み制御装置が開発されたのは、こ
の専門的な難しい問題を解決するためであるにのアーキ
テクチャは、下記の一般特性をもつ単−NMO8VLS
Iチップに統合される。
DIAC3は、高性能のデータ転送機構を提供し、一時
に多数の通信チャネルを処理することができる。良好な
実施例では20本のチャネルが設けであるが、実際には
サービスできるチャネルの数にアーキテクチャ上の制限
はない。このアーキテクチャは、また各チャネルに対す
るデータ転送量を最適にすることができ、選択的に修正
できる。
さらに転送モードをいつまでも動的に再構成できる。そ
の上、インターフェースが簡単なため、このDIACの
アーキテクチャは、良好な実施例で述べられているよう
な現在考えているもの以外のプロセッサをベースとする
様々なシステムにも使用できる。このアーキテクチャは
、ハードウェアおよび相互接続を極力少なくして多数の
通信チャネルをサービスすることができる。当業者なら
理解できるように、これによりコストの大幅な節約がで
きる。第1図には、プログラム記憶式に調節できる多重
ポート通信アダプタ内部に常駐するDIAC:3も示し
である。DIAC3へのインターフェースは、下記のも
のからなる。
各通信チャネルからの個々の要求入力が、DIAC3に
接続される。図に示したケースでは、通信装置は、US
ARTと呼ばれる汎用非同期/同期送受信装置である。
ベンダ供給の上記のタイプの標準USARTを使用する
場合、各USARTは、2本の受信チャ′ネルと2本の
送信チャネルをサービスする。あるチャネルがデータキ
ャ゛ラクタの受信または送信を希望するとき、要求がU
SARTによって活動化される。もう一種のインターフ
ェースは、DMAオペレーション中にシステム・バスの
制御権を取得するのに使われるバス・アクセス制御であ
る。これらの制御線は、DMAバス要求信号、DMAバ
ス許可信号、およびDMAバス許可肯定応答信号からな
る1図に示したシステムでは、これらの信号は第1図の
プロセッサ5と直接通信する。付加的なインターフェー
ス信号は。
プロセッサ5にステータスを通信するための割り込み制
御と、データ転送オペレーション用のアドレス・データ
・バスおよび制御バスである。これらのインターフェー
スは極めて簡単なので、専用の制御論理回路に関して最
小の要件で、各種のプロセッサとUSARTに容易に収
容できる。
第1図に示した設計では、システムで使う5個のUSA
RT2は、それぞれ受信装置2個と送信装置2個および
各チャネル用の個別の要求線を備えている。第1図に示
すように、要求線はDIAC3に配線され、要求Oない
し要求19と記されている。この設計の規約によれば、
奇数番号の要求線は受信装置チャネルからくるものであ
り、偶数番号の要求線は送信装置チャネルからくる。D
IAC3により、DMAモードまたはキャラクタ割り込
みモードによるUSART2のチャネルとシステムの記
憶装置(RAM、EPROM、EEPROMまたはプロ
セッサ5)との間のデータ転送が容易になる。DIAC
3は、20本のチャネルのうちのどれに対してもいずれ
のデータ転送モードでもサービスできるように制御でき
る。主なオペレーションは、所与のチャネルがデータ転
送サービスを要求するとき、要求を提示することである
。次にDIAC3はそのチャネルについて指定されたデ
ータ転送モードにもとづいてその要求をサービスする。
D4.1.旦」」!q旦m航 第6図(すなわち第6八図ないし第6D図)は。
DIAC3の良好な実施例のブロック図を示したもので
ある。DIAC3は、独立した異なる2つの機能をもつ
ものと考えることができる。第゛1の機能は、DMA転
送モードでデータ転送を実行することである。もう一つ
の機能は、キャラクタ割り込みモード用である。第6図
に示すように、ブロック30〜35は、専用のDMAプ
ロセッサを構成する。ブロック36と37は、専用の割
り込みプロセッサを構成する。DIAC3は、メモリマ
ツプ式入出力デコーダ38とデータ・バスとこれら2台
の基本プロセッサとの間で共用されるシステム・インタ
ーフェース論理39を備えている。
入ってくる要求は、DMA要求アービタ30および割り
込み要求アービタ36によってただちに受は取ることが
できる。どちらのアービタもプログラム可能なレジスタ
を含んでいる。第7図(すなわち第7A図および第7B
図)のDMA付勢−レジスタ50および第12図のキャ
ラクタ割り込み付勢レジスタ69によりどのチャネルに
どのデータ転送モードでサービスするかを示す、あるチ
ャネルがある要求線を活動化し、DIAC3がそのチャ
ネルにDMAモードでサービスするようにプログラミン
グされている場合、第6図のブロック30〜35のDM
Aプロセッサがその転送を実行する。そのチャネルがそ
の要求線を活動化し、それがDIACS中でキャラクタ
割り込みモードをサービスするようにプログラミングさ
れている場合、第6図のブロックおよび37の割り込み
プロセッサがその転送をサービスする。
どのチャネルにどの転送モードでサービスするかの選択
は、プログラマによりなされ、第1図のEEPROM7
に記憶される。
DIAC3の制御レジスタのプログラミングは、初期設
定時に第1図のプロセッサ5によって行われる。プロセ
ッサ5はEPROM8から構成データを取り出し、プロ
セッサ5の入出カマツブでそれらのレジスタに割り当て
られている適切なメモリマツプ式入出力アドレスを使っ
て1割り込み付勢レジスタ69にそれを書き込む。割り
込み付勢レジスタ69の各ビットは、単一通信チャネル
O〜19にマツピングされている。DMA付勢レジスタ
中のあるビットがセットされると、DMAモードでサー
ビスされる対応するチャネルが付勢される。同様にキャ
ラクタ割り込み付勢レジスタ中のあるビットがセットさ
れると、割り込みモードでサービスされる対応するチャ
ネルが付勢される。
たとえば、DMA付勢レジスタ50でビット1゜5.7
でセットされた場合、チャネル1.5,7がDMAモー
ドでサービスされる。同様に割り込み付勢レジスタ69
でビット0.9.15がセットされた場合、それらのチ
ャネルが割り込みモードでサービスされる。所与のチャ
ネルで対応するビットがどちらもセットされていない場
合、そのチャネルは全くサービスされない。これは、様
々な用途を提供するが、その土なものは故障分離ルーチ
ン用である。
キャラクタ割り込みデータ転送モードの例キャラクタ割
り込みデータ転送モードは、割り込みデータ転送要求が
同時にあった場合にこれらを調停すること、プロセッサ
5に単−割り込みを提示すること、および所与のチャネ
ル上で転送するためサービス・ルーチン用のRAMの適
切な位置にプロセッサ5を向ける目的で、優先順位最高
の要求を出しているチャネルに対して一意的なベクトル
値を与えることの3つのオペレーションを有する。これ
らのオペレーションは、第6図および第12図に示した
良好な実施例では、次のようにして実現される。
要求は、各クロック期間に第12図のキャラクタ割り込
み要求レジスタ68で抽出される。アクティブな要求を
もち、対応するビットがキャラクタ割り込み付勢レジス
タ69中でセットされているチャネルが、待機中のキャ
ラクタ割り込み要求をもつものと解釈される。これらの
要求は、キャラクタ割り込みマスター付勢レジスタ70
がセットされている場合にキャラクタ割り込み要求ゲー
ト71を通過することができる。レジスタ70のキャラ
クタ割り込みマスター付勢ビットがリセットされた場合
は、どの要求もゲート71を通過できない。
たとえば、2本のチャネル5と14がキャラクタ割り込
みモードでサービスされるように構成されているものと
仮定する。すなわち1割り込み付勢レジスタ69のビッ
ト5とビット14がセットされており、第7図のDMA
付勢レジスタ50のビット5とビット14がリセットさ
れている。さらに、前述のように奇数チャネルが受信チ
ャネルであると仮定する。したがって、チャネル5はU
SART2からの受信チャネルであり、チャネル14は
USART4からの送信チャネルである。
さらに、両方のチャネルが同時にその要求を活動化し、
レジスタ70のキャラクタ割り込みマスク付勢ビットが
セットされているものと仮定する。
したがって、要求は、要求提示の次のクロック期間にキ
ャラクタ割り込み要求レジスタ68中にラッチされる。
2本のチャネルとも割り込みサービス用に付勢されるも
のであるから、割り込みラッチ73は、第12図に示す
ようにORゲート72の出力によってセットされる。こ
れによって割り込みをプロセッサ5に渡す割り込み制御
論理(第1図)へのキャラクタ割り込み線で活動化され
る。
第12図のキャラクタ割り込み要求レジスタ68に記憶
されている要求は、優先順位エンコーダ74に通じる要
求ゲートを通過する。優先順位エンコーダ74は、20
本の入力線をすべて受は取り、アクティブな要求をもつ
優先順位最高のチャネルを表す一意的な5ビツト・コー
ドを生成する。このコードは、要求番号の2進表現であ
る。
たとえば、要求Oに接続されているチャネルは、コード
oooooをもち、チャネル1に接続されている要求は
00001となる。これをチャネルの識別番号と呼ぶ、
優先順位のコード化は、DIAC3への要求線の物理的
接続にもとづいている。
大きな番号が割り当てられている要求はど、その優先順
位は高くなる。この例では、生成されるコードは2進数
14で、チャネル14が待機中の優先順位が最高の要求
であることを表す。プロセッサ5が提示されたキャラク
タ割り込みに対する割り込み肯定応答サイクルを実行す
るとき、第1図の割り込み制御論理4が第6図の割り込
みプロセッサおよび第6図のシステム・インターフェー
ス論理39に対するキャラクタ割り込み肯定応答信号を
活動化する。キャラクタIACK信号も第12図のキャ
ラクタ割り込み要求レジスタ68に印加される。
この信号からいくつかの効果が生じる。この信号は、第
12図の優先順位エンコーダ74の5つの識別番号ビッ
トを、データ・バスの下位5ビツト上にゲートさせる6
また1割り込みベクトル値レジスタ75に記憶されてい
る3つのビットを、システム・データ・バスの下位部の
上位3ビツト(ビット5.6.7)にゲートさせる。こ
れは、チャネル14に対する割り込みベクトル値を表す
さらに、キャラクタ割り込み肯定応答信号が活動化する
と1割り込み要求レジスタ68が凍結される。すなわち
、現在の状態でロックされる。
割り込み肯定応答サイクルは完了するまで、要求は要求
ゲート71中にはロードされない。このため、ベクトル
値はプロセッサ5による読み取り中にデータ・バス上で
変化することが防止される。
たとえば、チャネル15がこのサイクル中にその要求線
を活動化する場合、チャネル15の方がチャネル14よ
りも優先順位が高いので、データ・バス上にゲートされ
た5つの識別番号ビットが変化することになる。このよ
うにベクトル値がそのバス上で安定なとき、第6図のシ
ステム・インク−フェース論理39は、データ転送肯定
応答信号を活動化して、プロセッサ5に通知する。プロ
セッサ5はベクトル値を読み取り1次にこのサービスモ
ードでチャネル14にサービスするRAMのサービス・
ルーチンに分岐する。
サービス・ルーチン内部で、プロセッサ5は要求された
データ転送を実行する。チャネル14は   ゛送信チ
ャネルなので、データを送る必要があり。
送るべきデータをその通信線上で受は取らなければなら
ない。そのため、プロセッサ5は、チャネル14の送信
データが入っているRAM6またはEPROM8からデ
ータ・バイトを取り出し、それをチャネル14に関する
USART4の送信バッファに書き込む。データが一度
送信バツファに書き込まれると、チャネル14はその割
り込み要求を取り下げる。要求はIACサイクル以外の
各クロック期間で抽出されるから、それが第12図のキ
ャラクタ割り込み要求レジスタ68の対応するビットを
リセットする。
しかし、チャネル5はまだサービスされていないので、
その要求はアクティブなままであり、ORゲート72と
割り込みラッチ73によって割り込み線をアクティブに
保って、第1図の割り込み制御論理4に絶えず提示でき
るようにする。プロセッサ5でまた待機中の割り込みが
あるため、プロセッサ5は最終的に別のIACサイクル
を実行する。IACサイクル以前に優先順位のより高い
割り込みが活動化されていなかったと仮定すると、この
例で生成される次のベクトル値は、チャネル5に対する
ものである。チャネル5は受信チャネルなので、その要
求により、その通信線からデータ・バイトを受は取って
いることが示される。次にプロセッサ5はメモリマツプ
式入出力オペレーションを実行して、チャネル5を処理
するUSART2の受信バッファを読み取り、RAMe
中のそのチャネルのバッファ域にそれを書き込む0次に
チャネル5はその受信バッファが読み取られるとその要
求を取り下げる。この例では別のアクティブな要求がな
いため、プロセッサ5で待機中の割り込みが非活動化さ
れる6割り込みモードで構成されているすべてのチャネ
ルが、このやり方で処理される。
DMA転送モードの概要 DMA転送モードでは、受信状態、送信状態のいずれも
存在できる。受信オペレーションでは、USART2の
受信チャネルが、DIAC:3中でDMAモードでサー
ビスされるように構成される。
このようなチャネルからの要求は、通信線からのデータ
・バイトが蓄積されており、DMAモードでサービスを
受けなければならないことをDIAC3に示す、DMA
プロセッサは、適切なUSARTチャネル受信バッファ
の内容をRAM6の指定された位置に転送して、その要
求をサービスする。送信オペレーションでは、DMAモ
ードでサービスされるように構成されているUSART
送信チャネルは、その要求線を活動化することによって
、そのバッファが空であることを示す。次にDMAプロ
セッサはデータをRAM6の指定された位置から適切な
USARTチャネル2の送信バッファに転送する6 通常は、所与のチャネルについてデータ・ブロック全体
を転送するのが最も好ましいので、指定された数の転送
中はプロセッサ5の介入なく、上記のオペレーションを
進行することができる。しかし、転送が行われる前に、
DMAプロセッサは、どのチャネルがサービスされてい
るかということと、そのデータに対するRAMe中の起
点アドレスまたは宛先アドレスと、転送されるデータの
バイト数とを知らなければならない。チャネルの識別番
号は、要求線とUSARTチャネルの間の一対一のマツ
ピングから導かれる。
起点アドレス、宛先アドレスおよびバイト・カウント情
報は、第6図のDIAC3の内部RAM31に記憶され
ている。内部RAM31は、本DIACのアーキテクチ
ャおよび物理構造のユニークな一面を表わすもので、そ
れ自体物理的な制御ブロックに再分割されている。各チ
ャネルは、そのデータ転送モードの如何にかかわらず、
内部RAM31中に専用の制御ブロックをもつ。DIA
C3は20本のチャネルをサポートするので、その内部
RAM31内には20個の制御ブロックがある。各制御
ブロックは、起点アドレス/宛先アドレス・フィールド
とバイト・カウント・フィールドの2つの情報フィール
ドを含んでいる。
第9図は、内部RAM31内の制御ブロックの編成およ
びその各種通信チャネルとの対応関係を示したものであ
る。DMAモードでサービスされる各チャネルに対して
は、対応する制御ブロックが初期設定されていなければ
ならない。チャネルが受信装置として指定されている場
合、そのアドレス・フィールドは、RAM6中の入りデ
ータが記憶される開始アドレスを含んでいなければなら
ない。カウント・フィールドは、プロセッサ5に通知す
る前に、RAM6に転送されるバイトの数を含んでいな
ければならない。チャネルが送信装置の場合、アドレス
・フィールドは、データが読み取られて送信装置に渡さ
れる開始アドレスをRAM6に含んでいなければならな
い。カウント・フィールドは、どれだけのデータが送信
されるブロック中にあるかを示す。いずれのフィールド
も4バイトを含むが、DMAアドレス用には3バイトし
か使われず、バイト・カウント用には2バイトが使われ
る。余分のスペースは使用されないが、その編成はイン
プレメンテ−ジョン技術によって指定される。
これらの初期情報フィールドのソースは、カストマがプ
ログラミングするEPROM8の中にあり、そこからプ
ロセッサ5中で動作する制御プログラムによって取り出
されて保持される。プロセッサ5は記憶装置から情報を
取り出し、内部RAM31をアクセスするための適切な
メモリマツプ式入出力アドレスを使ってDIAC3の内
部RAM31にそれを書き込む。DIAC3におけるメ
モリマツプ式入出力デコーダ38はプロセッサ5による
内部RAM31の書き込み又は読み取りのための制御信
号を供給する。
プロセッサ5が、必要な内部RAM31の制御ブロック
を一度初期設定すると、DMA転送のための対応するチ
ャネルを付勢することができる。
プロセッサ5は、EPROM8またはRAM6からデー
タを取得して、適切なメモリマツプ式入出力アドレスを
使って第7図のDMA付勢レジスタ50にそれを書き込
む。次にプロセッサ5はDMAマスター付勢レジスタ5
をセットすることができ、DIAC3はそのチャネルに
関してDMA転送を行うために付勢される。
DMAデータ転送モードは、4つのオペレーションから
なる。第1に、DMA転送に対して同時に要求が発生し
た場合、これらを調停しなければならない。第2に、チ
ャネルの制御ブロックのアクセスおよび更新がある。第
3に、システム・バスに対する制御要求があり、最後に
DMAサイクルの実行がある。第6図のDMA要求アー
ビタ30がUSARTチャネルからの要求を受は取り、
どのチャネルをDMAモードでサービスするかを決定し
、要求が複数ある場合にはそれらの優先順位を決め、ど
のチャネルを最初にサービスするかを内部サイクル制御
装置33とDMAサイクル制御装置34に指示する。
内部サイクル制御装置33 (ICAC)は、第8図に
示しであるが、状態制御論理53.ウィンドウ・タイマ
54、内部RAM用のデータ・バッファ55および増減
論理56からなる。内部サイクル制御装置33は、要求
の抽出と調停を順序づけること、チャネルの内部RAM
31の制御ブロックの取り出しおよび更新を行うこと、
システム・バスに対するアクセスを要求することならび
にDMAサイクルがいつ開始されるかをDMAサイクル
制御装置34に指示することを担当する6DMAサイク
ル制御装置34 (DCC)は、第10図に示しである
が、状態制御論理57、DMAアドレス・レジスタ58
、バス・マスター・レジスタ59.バス・マスター・デ
コーダ60およびUSARTインターフェース・デコー
ダ61からなる。DMAサイクル制御装置34は、DM
Aサイクルの実際の実行を担当する。
DMAデータ転送方式の一般的データ流れと制御流れの
説明 第6図のDMA要求アービタ30は、USARTチャネ
ルからの要求を受は取って、DMAモードでサービスさ
れる優先順位最高の要求を出しているチャネルを識別す
る一意的なコードを生成し、このDMAチャネル要求識
別コードを内部サイクル制御装置33に渡す。次にDM
A要求アービタ30、内部サイクル制御装置33、およ
びDMAサイクル制御装置34が関与する一連の並行オ
ペレーションについて説明する。まず、内部サイクル制
御装置33がDMA要求アービタ30の生成した識別コ
ードを使ってDIACa内の内部RAM31のそのチャ
ネルの制御ブロックをアクセスし、そこから起点アドレ
スまたは宛先アドレスを取り出す。内部サイクル制御装
置33は、最終的にこのアドレスを適当な時間にDMA
サイクル制御装置34に渡して、アドレスを1だけ減分
しそれを元の位置に戻して記憶する。内部サイクル制御
装置33は1次にDMAバス要求信号を活動化して、シ
ステム・バスへのアクセスを要求する。
それと並行して、DMA要求アービタ30は。
要求を出しているチャネルが依然としてサービスを要求
しており、それがノイズ・スパイクではないことを確認
する。プロセッサ5は、DMAバス許可信号を活動化し
て、最終的にシステム・バスへのアクセスを許可する。
要求が有効であると確認された場合、DMAサイクル制
御装置34はそのアドレスと識別コードをそのレジスタ
にラッチして、DMAサイクルを開始する。その間に内
部サイクル制御装置33は、内部RAM31の対応する
制御ブロックからそのチャネルのバイト・カウントをア
クセスし、それを1だけ増分して、再び制御ブロックに
戻して記憶する。バイト・カウントがOまで減分された
ことが検出された場合、DMA割り込み制御論理35は
、第1図の割り込み制御論理4に割り込みを提示し、そ
の割り込みがプロセッサ5で処理されるまで、そのチャ
ネルに対する以後のサービスの使用を禁止する。
DMA要求アービタ30は複数のDMA要求を抽出した
場合は、別の識別コードを生成して、それを内部サイク
ル制御装置33に渡す。DMAサイクルの実行中、内部
サイクル制御装置33とDMA要求アービタ30は再度
上記のように動作する。内部サイクル制御装置33およ
びDMA要求アービタ30は、次のDMAサイクルの準
備のため、新しい起点アドレスと宛先アドレスを取り出
して、サービスすべき要求が有効なことを確認する。
すなわち、DMA要求アービタ30、内部サイクル制御
装置(以下工CCという)33およびDMAサイクル制
御装置(以下DCCという)34の間では、準備ステッ
プと実行ステップがパイプライン化されており、DCC
34が現サイクルを終了すると直ちに遅延なく次のサイ
クルに進行することができる。したがって必要な情報を
RAMにアクセスする際に待ち時間なしに、そのときア
クティブな要求をもつすべてのチャネルをサービスする
ことができる。
従来のDMAアクセス制御装置は、上述のRAMをベー
スとする情報を有するものではなく、チップ・スペース
を大量に要しかつ組み立てが高価なレジスタをベースと
するテーブルしか使っていなかったという点を考えれば
1本実施例のユニークな面が理解されよう。
所与のチャネルのバイト・カウントが0まで減分された
場合、ICC33はDMA割り込み制御論理35にその
ことを通知する。DMA割り込み制御論理35は、プロ
セッサ5に割り込みを提示し、チャネルの割り込みビッ
トが明示的にリセットされるまではそのチャネルに対す
る以後のサービスを禁止する。プロセッサ5がその割り
込みに肯定応答すると、DMA割り込み制御論理35は
バイト・カウントがOまで減分された優先順位最高のチ
ャネルに対して一意的なベクトル値を与える。これによ
ってプロセッサ5は、RAMe中の必要な処理を実行で
きる適切なサービス・ルーチンに向けられる。たとえば
、このチャネルに対する受信データ・ブロックにプロト
コル変換をインプレメントしなければならないと、プロ
グラマが希望することがある。複数のチャネルのバイト
・カウントがOまで減分されている場合、DMA割り込
み制御論理35はその割り込みをアクティブに保ち、個
々の割り込みビットがすべてリセットされるまで、ベク
トル値を提示し続ける。
DMAデータ転送の特定の例 たとえば任意的にチャネル6およびチャネル17を選ん
で2本のチャネルを介したDMA転送の次の例を考えて
みる。偶数番号のチャネルは、この設計では規約により
送信チャネルと指定され、奇数番号のチャネルは受信チ
ャネルであることを思い出すと、チャネル6はUSAR
T2からサービスされる送信チャネルであり、チャネル
17はUSART5からサービスを受ける受信チャネル
である。
DIAC3は、DMAオペレーションの開始前に適切に
初期設定しなければならない。プロセッサ5は、チャネ
ル6に対する送信情報の位置の起点アドレスを取り出し
て、チャネル6に対して指定されている内部RAM31
のメモリマツプ式入出力アドレスにそれを書き込むにの
情報は、その起点アドレスまたは宛先アドレス・フィー
ルドに書き込まれる。第6図のDIAC3のメモリマツ
プ大入出力デーコダ38は、そのメモリマツプ式入出力
アドレスがDIAC3のlRAM31を表していると判
断する。メモリマツプ式入出力デコーダは、内部RAM
データ選択装置32へのアドレス付勢信号、データ付勢
信号、および読取り/S込み付勢信号を活動化する。こ
れによって。
システム・データと、システム・アドレス・ビット2〜
5と、書込みモードにある読取り/書込み線を内部RA
M31に渡すことができる。データが内部RAM31の
入力で安定かつ有効なとき、メモリマツプ式入出力デコ
ーダ38はメモリマツプ式入出力選択信号を活動化する
。これによって1つの選択信号が内部RAM31に渡さ
れ、データが指定の位置に書き込まれる。
次にメモリマツプ式入出力デコーダ38は転送が起こっ
たことを示すデータ転送肯定応答信号を活動化する。プ
ロセッサ5はこの信号を受は取ってサイクルを終了させ
る0次にプロセッサ5はチャネル6に関するバイト・カ
ウントを取り出して、チャネル6に関連する内部RAM
31の制御ブロックのバイト・カウント・フィールドに
それを書き込む。
チャネル17についても同様のオペレーションが行われ
る。ただし、これは受信装置なので、アドレス・フィー
ルドはそのデータの宛先に対するポインタとなっている
。この宛先は、RAM6にある。
チャネル6の起点アドレスは10進数の2000であり
、そのバイト・カウントは20であると仮定する。チャ
ネル17の宛先アドレスは、10進数の1000であり
、バイト・カウントは1であると仮定する。
次に、プロセッサ5は、DMA転送のため第7図のDM
A付勢レジスタ50のビット6とビット17をセットし
て、チャネル6と17を選択的に付勢する。これは、メ
モリマツプ式入出力オペレーションによって遂行される
。そのアドレスはDIAC3のDMA付勢レジスタ50
専用である。
オペレーションの制御は、DIAC3のメモリマツプ式
入出力デコーダ38による。次にプロセッサ5は第7図
のDMAマスター付勢レジスタ51セツトして、DIA
C:3をDMA転送実行のために付勢する。
しかし、チャネルが実際にDMAオペレーションのため
に付勢される前に、DMAプロセッサは。
第6図のICC33の制御下で要求抽出モードに入って
いる。ICC:33は、チャネルの要求状態が第7図の
データ・セレクタ42を直接通過して、DMA要求レジ
スタ43によってラッチされるようにする。これは、I
CC,33にDMA要求抽出信号を活動化させることに
よって行われる0次にDMA要求抽出信号がアクティブ
な間中、DMA要求レジスタ43に各クロック期間ごと
に要求線の状態がロードされる。DMA要求レジスタ4
3の出力は、DMA要求ゲート44に渡される。DMA
要求ゲート44は、第7図のDMA付勢レジスタ50中
の対応するビットがセットされかつ第11図のDMA割
り込みレジスタ62中の対応するビットがセットされて
いない場合に、そのチャネルの要求が通過できるように
する。DMAマスター付勢レジスタ51がセットされて
いない場合は、どんな要求も通過できない。
DMA要求ゲート44の出力部にアクティブな信号があ
れば、それは待機中のDMA要求であると解釈される。
待機中のDMA要求は、優先順位に応じて個別に選択さ
れ、比較装置49.20人力のORゲート48および2
0−5線のエンコーダ45からなる3つの機能ブロック
に渡される。
比較装置49は、後で説明する特別な確認オペレーショ
ン中に使用される。ORゲート48は、アクティブなり
MA要求が1個存在するかそれとも複数個存在するかを
DMA要求存在信号によってICC33に通知するのに
使用する。エンコーダ45は、エンコーダ前述の優先順
位74と同じように動作する。すなわち最高の優先順位
が最高の物理的位置をもつ要求装置に応じたコード化を
行う65ビツトの識別コードが前述の物理位置コードで
ある。
IOC:33は、DMA要求存在信号を使って、DMA
転送を要求しているチャネルが1つなのかそれとも複数
なのかを判断する。しかし、後で考察するように複数の
DMA要求の方が単−DMA要求よりも効率的にサービ
スできるので、この信号は各クロック期間毎には抽出し
ない。すなわち複数のDMA要求が存在する確率を高め
るため、ICC33は信号を各クロック期tm毎には抽
出せず、所定の時間ウィンドウの間待つ。第8に示すウ
ィンドウ・タイマ54は、この目的で使われる。
このタイマは、その間に要求が抽出されるが、タイマ・
ウィンドウが満了するまで何の措置もとられないような
時間セグメントを生成する。したがって要求抽出モード
では+  ICC33の状態制御論理53がウィンドウ
・タイマ54をスタートさせ、DMA要求抽出信号をア
クティブに保つ。DMAウィンドウ・タイマ54の制御
時間が満了すると、ICC33はDMA要求抽出信号を
非活動化し、DMA要求レジスタ43の現状態が一時的
に凍結される。次にICC33はORゲート48で生成
されたDMA要求存在信号の状態を監視する。この信号
がアクティブでない場合は、ICC33は要求抽出モー
ドに戻ってウィンドウ・タイマ54を再び付勢して、D
MA要求レジスタ43を連続的にロードする。一方、D
MA要求存在信号がアクティブな場合は、ICC:33
はDMAサイクルの準備をする。始めの例では、どのチ
ャネルもまだDMAに対して付勢されていないので、D
MA要求存在信号はアクティブでないままであり、要求
線の状態の如何にかかわらず、DMA転送を禁止する。
しかしながら、メモリマツプ式入出力の初期設定のため
の上記の準備作業が一度行われると、DMA要求は付勢
され、サービスを受けることができる。
チャネル6と17がどちらも活動化された要求をもち、
それらがDMA要求レジスタ43中でラッチされている
という仮定に戻ると、ここでオペレーションが再開する
。DMA要求をレジスタ43にラッチしてからまもなく
、ウィンドウ・タイマ54の所定の期間が満了し、DM
A要求レジスタ43の状態が凍結される6チヤネル6と
17のどちらも、DMA転送に関して付勢されるので、
それらの要求はDMA要求ゲート44を通過する。
ここでチャネル17の物理的優先順位が最高なので、チ
ャネル17を表す単一5ビツト・コードが生成される。
これは20−5線式のエンコーダ45によって生成され
、それに応じてDMA要求信号がORゲート48で活動
化される。この信号が活動化されると、ICC33はD
MA処理モードになる。このモードでは異なるいくつか
のオペレーションが並行して進行するにれらのオペレー
ションには、チャネルに関する内部RAMの制御ブロッ
クをアクセスすること、チャネルの要求を確認すること
、およびプロセッサ5からシステム・バスの制御権を要
求することが含まれる。
IC:C33は、チャネル17の識別コードを5ヒヅト
の識別コード・レジスタ46に記憶させるためのDMA
要求識別ラッチ信号を生成する。このレジスタ46の出
力は、チャネル17の制御ブロック域を識別するための
内部RAM31へのポインタとして使用される。5ビツ
トのアドレス情報が内部RAMデータ選択装置32を通
って内部RAM31のアドレス入力デコーダ(図示せず
)に送られる。ICC33が、最下位ビットすなわち6
番目のビットであるアドレス・ビットOを生成する。I
C:C33は、内部RAM31に通じる読み取り/書き
込み線および選択線をも活動化する。最下位アドレス・
ビットは、起点アドレス/宛先アドレス・フィールドを
指すようにリセットされる。規約により、アドレス・フ
ィールドは第9図に示すように偶数境界上にあるように
指定されており、読み取り/書き込み線は読み取りモー
ドになり1選択線が活動化される。その結果、内部RA
M31からチャネル17のチャネル・アドレスが取り出
される。チャネル17の宛先アドレスは内部データ・バ
ス上で安定化すると内部RAM31のデータ・バッファ
55にラッチされる。
それと同時に、ICC33は、DMA要求アービタ30
に図で゛′確認”と記されている確認オペレーションを
実行せしめ、チャネル17が依然として実際に待機中の
要求をもっているかどうかを二重にチェックする。この
オペレーションは1次のようにして実行される。ICC
33がDMA要求確認信号を活動化すると、第7図の確
認ゲート40の出力が60−20線式のデータセレクタ
42を通過して、DMA要求レジスタ43に記憶される
。確認ゲート40は、チャネルからの要求とDMA要求
レジスタ43に記憶されている状態と比較する。確認ゲ
ート40は、DMA要求レジスタ43中のアクティブな
ビットだけをチェックする。確認オペレーション中にア
クティブでないレジスタ43中のビットは、アクティブ
でないままとなる。チャネル要求がアクティブで、DM
A要求レジスタ43に記憶されている対応するビットが
既にフクテイブ状態である場合、その要求は有効である
と確認され、そのビットのアクティブ状態がDMA要求
レジスタ40に再記憶される。その結果、そのビット位
置に変化はない。しかし、確認時にチャネル要求がアク
ティブでないが、要求レジスタ43中の対応するビット
がセットされている場合、その要求は無効とみなされ、
そのビットはDMA要求レジスタ43中でリセットされ
る。
DMA要求レジスタ43において確認された出力は、D
MA要求ゲート44を通過してORゲート48の入力部
および比較装置49に送られる。
確認オペレーションの結果アクティブな要求が存在しな
い場合、DMA要求存在信号が非活動化される。ICC
33はこの信号を絶えず監視しているが、このとき前D
MA処理ステップを打ち切って要求抽出モードに戻る。
比較装置49は、現在サービスを受けているチャネルの
確認状態をIOC,33に知らせるのに使われる。これ
は、次のようにして動作する。サービスを受けているチ
ャネルの識別コードが、既に5ビツトの識別コード・レ
ジスタ46に記憶されている。レジスタ46の出力は5
−20線式のデコーダ47に渡される。
デコーダ47は識別コードにもとづいてその20本の線
のうち1本を活動化する。各線は、前述のように20本
のチャネルのうちの1本に対応している。アクティブな
デコード線に対応するDMA要求が依然としてアクティ
ブな場合、それはサービス中のチャネルの要求が有効で
あることを示す。
その結果、比較装置49がDMA要求有効信号を活動化
する。上記のように確認オペレーションの結果リセット
された他の要求があるかもしれないが、必要なのは、待
機中のDMAサイクルを遅らせて、サービスを受けるよ
うに指示されたチャネルが現在無効な要求をもっている
ときに再調停することだけである6チヤネル17の要求
が確認オペレーション中ずつとアクティブであると仮定
すると、DMA要求有効信号が活動化される。
この同じ時間間隔中に、ICC33は、DMAバス要求
信号を活動化してプロセッサ5に渡すことによって、シ
ステム・バスの制御権を要求している。しかしこのバス
・マスター権の要求は、そのチャネルの起点アドレス/
宛先アドレス・フィールドがアクセスされるまで行われ
ない。このため、DIAC3がシステム・バスの制御権
を得たとき、内部RAM31のアクセス時間は遅延しな
い、ICC33は、システム・バスの制御権を得るため
待機している間、DMA要求存在線およびDMA要求有
効線を監視する。確認オペレーションの結果DMA要求
存在信号が非活動化されて、DMAマスター付勢レジス
タ51の減勢やDMA付勢レジスタ50の適切なビット
のリセットなどのメモリマツプ式入出力命令がプロセッ
サ5によって実行され、あるいはシステムがエラー条件
を検出した場合、IC:C33はその現在の活動を打ち
切り、ウィンドウ・タイマ54を再び付勢し、要求抽出
オペレーションに戻る。DMA要求存在信号はアクティ
ブであって、有効なりMA要求信号がアクティブでない
場合、1本ないし複数本のチャネルがサービスを要求し
ているが、IDがレジスタ46中でラッチされているよ
うな特定チャネルは、もはや有効な要求をもたない、I
CC33は、プロセスを打ち切って、発生した前DMA
処理を無駄にすることなく、優先順位が次に高い要求を
出しているチャネルの識別コードで識別コードレジスタ
46を更新して、別の確認サイクルを実行する。上記の
両方の要求信号がアクティブで、要求が有効なことを示
しており、プロセッサ5がDMAバス許可信号を活動化
してDIAC3に戻しており、システム・ストローブが
アクティブでない場合は、DMAサイクルを実行できる
上記の条件がすべて充たされると、ICC:33はDM
A開始信号を活動化してDCC34に通知する。これは
最初のDMAサイクルであり、そのためDCC34は現
在アイドル状態である。これは、DMA停止信号の活動
化で示される。I(、C33が、DMAサイクルの開始
を起こすようにDCC34に指示すると、第10図のD
CC:34の状態制御論理57が、内部RAMのデータ
・バッファ55に記憶されている起点アドレス/宛先フ
ィールドを第10図のDMAアドレス・レジスタ58に
ロードさせる。DCC34はまたバス・マスター・レジ
スタ59に識別コードレジスタ46の内容、この場合は
チャネル17の識別コードをロードさせる。これらのレ
ジスタの内容は、そのDMAサイクルで使用される。
DCC34は、次にバス・マスター権をプロセッサ5に
戻すことを示すDMAバス許可肯定応答信号(BGAC
K)を活動化する。次にDにC:34は、DMAサイク
ルを開始したことをICC:33に示す。これは、DC
C34がDMA停止信号を非活動化するで示されるもの
である。DCC34は、またチャネル17の要求をリセ
ットして。
バス・マスター・マスク信号を活動化することにより次
のチャネル(この例ではチャネル6)がDMAサービス
を待つことができるようにする(いわゆる待ち行列であ
る)。バス・マスター・マスク信号は、チャネル17の
要求をリセットするのに使用する。チャネル17の要求
は、DMA要求レジスタの対応するビットで選択的にリ
セットしなければならない。これは1次のようにして実
現される。
第10図のバス・マスター・レジスタ59は、チャネル
17が現在DCC34からサービスを受けているため、
チャネル17の識別コードを含んでいる。このレジスタ
59は、その出力部でチャネル17に対応する単一線を
活動化する5−20線式のバス・マスター・デコーダ6
oに供給する。
このデコーダ60の出力は、DMA割り込みレジスタ・
ゲート62とのバス・マスター・ゲート41に送られる
。デコーダ60からの可能な20本の出力線のうち1本
のアクティブな線が、第11図のDMA割り込みレジス
タ64および第7図のDMA要求レジスタ43中のこの
チャネルの対応するビットへのポインタとして働<、D
CC34がバス・マスター・マスク信号を活動化すると
デコーダ60からのビット・ポインタがDMA要求レジ
スタ43中のチャネル17のビットをリセットさせる。
その結果、現在サスビス中のチャネル17の要求がサー
ビスを待っている要求の待ち行列から外される。
上記で考察したバス・マスター・マスク・オペレーショ
ンと同時に、第10図のDCC34の状態制御論理57
は、DMAアドレス・レジスタ58に記憶されていたチ
ャネル17の宛先アドレスをシステム・アドレス・バス
にゲートしてチャネル17の受信バッファを選択して適
切な制御信号を活動化し、受信バッファの内容がRAM
6の位置1000に書き込めるようにする。(RAM6
中で割り当てられたアドレスは、この例の始めの所で1
000であると仮定したことに留意されたい。)2つの
オペレーションが常に1つのDMAサイクルで行われる
。チャネルが受信用の場合、DCC34はそのチャネル
の受信バッファの内容を読み取って、データをRAM6
に送る。チャネルが送信用の場合は、DCC34がRA
M6または他の主記憶域からバイトを読み取って、それ
をそのチャネルの送信バッファに送る。転送は、第1図
に示す如くシステム・データ・バスを介してデータを直
接にUSARTチャネルとRAM6゜EEPROMまた
はEPROM8の間でやりとりすることによって実現さ
れる。かしくて、メモリからバッファまたはバッファか
らメモリへの読み取りオペレーションおよび書き込みオ
ペレーションが、同じサイクルで行われる。奇数チャネ
ルは、受信装置、偶数チャネルは送信装置であると指定
しであるので、DCC34は、第10図のバス・マスタ
ー・レジスタ59の最下位ビットにもとづいて、実行す
べきDMAオペレーションのタイプを知る。
DMAサイクルの実行中、第8図のデータ・バッファ5
5中の起点アドレス/宛先アドレスは、増減論理56に
よって増分され、内部RAM31中のチャネル17の制
御ブロックのアドレス・フィールドに書き戻される。次
にICC33が、内部RAMのアドレス・ビット0をオ
ンにセットして、内部RAM31中のチャネル17のバ
イト・カウント・フィールドを指定する。また、第8図
の状態制御論理53は減分信号を活動化して、増減論理
56の増分機能を減分機能に切り換える。
このバイト・カウントがアクセスされ、データ・バッフ
ァ中にラッチされ、1だけ減分されて、内部RAM31
内の元の位置に再記憶される。バイト・カウントはOま
で減分されたが1元々は1だったと仮定したので、この
チャネルに対応するDMA割り込みピッ1〜がセットさ
れる。すなわち、プロセッサ5がその受信チャネルにサ
ービスする時であることを意味する。このビットのセッ
トは、バス、マスター、マスク・オペレーションについ
て行なったのと同様に、第10図のデコーダ60の出力
部のバス・マスター・デコード・ビット・ポインタを使
って実現される。バイト・カウントが0まで減分される
と、増減論理56が、第8図に示す如く′″カウント=
0″信号活動化する。
ICC33の状態制御論理53は、減分オペレーション
が完了するに充分な時間が経つと“ストローブ・カウン
ト=0″信号を活動化して、この信号の妥当性検査を行
う。カウントはこのとき0なので、チャネル17のビッ
ト・ポインタであるエンコーダ60中のアクティブなデ
コード線が、その割り込みビットを第11図のDMA割
り込みレジスタ・ゲート62を通過させて、DMA割り
込みレジスタ64中にセットさせる。これによってデー
タの特定ブロックが転送されたことを示す割り込み信号
が活動化され、ORゲート65の出力部を経てプロセッ
サ5に送られる。プロセッサ5は、DIAC3がDMA
バス許可肯定応答信号を非活動化してバスの制御権を戻
すまで、その割り込みを認識しない。DMA割り込みレ
ジスタ64の出力および待機中のDMA割り込みがDM
A要求ゲート44に供給され、それによってそのビット
がリセットされるまでチャネル17による次のDMA要
求のサービスが防止される。このため。
そのチャネルが別のDMAサイクルを獲得する前にその
チャネルの割り込みを処理する機会がプロセッサ5に与
えられる。
IC,C33が一度内部RAM31中のチャネル17の
制御ブロックを更新すると9次のDMAサイクルの準備
として待機中の要求があれば再調停する。0MS要求レ
ジスタ43中のチャネル17の要求は、上記に考察した
ようにバス・マスター・マスク・オペレーションによっ
てリセットされているので、DMAのために付勢される
優先順位が次に高い要求を出しているチャネルのコード
が、20−5線式のエンコーダ45によって生成される
。この例では、チャネル6がDMA要求をもつ他の唯一
のチャネルであるので、その識別コードが生成される。
次にICC33は、チャネル6の識別コードを識別コー
ド・レジスタ46にロードする。このコードは、偶数番
号をもつチャネル6が送信装置であることを示し、内部
RAM32の制御ブロックから起点アドレス・フィール
ドを取り出すのに使われる。これは、第8図のデータ・
バッファ55に記憶される。同時に、別の確認オペレー
ションが行われる。次にICC33はDCC34がチャ
ネル17に関するDMA転送を完了するのを待つ。再調
停は、通常現在のDMAサイクルが完了する前に終了す
る。したがって、DCC34がチャネル17に関するD
MAサイクルを終えると、チャネル6の起点アドレスが
既にICC33によってアクセスされ、DCC34に使
用されるのを待っているので、直ちにチャネル6のDM
A転送を着手することができる。DCC34は、先にチ
ャネル6の要求を処理する際に説明したのと同じ種類の
ものを実行する。バス許可肯定応答信号はアクティブな
ままである。チャネル6の起点アドレスが第6図のDM
Aアドレス・レジスタ58にロードされ、その識別コー
ドがDMAバス・マスター・レジスタ59中にラッチさ
れる。
DMA要求レジスタ43中のチャネル6の要求は、前述
のようにバス・マスター・マスク・オペレーション中に
リセットされる。しかし、チャネル6は送信チャネルな
ので、実際のDMA転送は異なる。この場合は、DCC
34は、RAM6の位置2000からの読み取りを実行
し、データをチャネル6の送信バッファに書き込む。
その間にICC33は、チャネル6の制御ブロックを更
新し、その起点アドレスを増分し、そのバイト・カウン
トを減分する。バイト・カウントは0まで減分されてい
ないので(20データ・バイトがDMAによって転送さ
れると仮定したことに留意されたい)、このチャネルに
対する割り込みビットはセットされない。次にICC3
3は、待機中の要求を調停する。チャネル6の要求はバ
ス・マスター・マスク・オペレーションによってリセッ
トされており、この例では他にDMA要求レジスタ43
中で待機している要求はないので、DMA要求存在信号
が第7図で非活動化される。
次にICC33は、現在のDMAサイクルが終了するの
を待ち、その後バス許可肯定応答信号を非活動化してバ
ス・マスター権を棄て、ウィンドウ・タイマ54を再び
スタートさせ、新しい要求に対する要求線を抽出する。
プロセッサ5が再びシステム・バスの制御権を獲得する
と、第1図の割り込み制御論理4によって提示されるア
クティブなりMA割り込み信号を認識する。プロセッサ
5は、最終的に割り込み肯定応答サイクルを実行してそ
の割り込みにサービスし、DMA割り込み肯定応答信号
を活動化して。
DIAC3に送る。第6図のDIAC3のDMA割り込
み制御論理35は、そのバイト・カウントがOまで減分
された優先順位が最高のチャネルに関するベクトル値を
生成する。この場合チャネル17がかかる条件にある唯
一のチャネルなので、その識別コードは第11図のDM
A割り込みベクトル・レジスタ67の3ビツトと一緒に
データ・バスにロードされる。この場合の割り込み識別
コード(5ビツト)は、DMA割り込みレジスタ64の
内容がコード化されたものである。これは、1)MA要
求レジスタの内容の場合に生成されたのと同様のやり方
で、5−20線式の優先順位エンコーダ66によって生
成される。この割り込み識別コードは、レジスタ67か
らの3つのDMAベクトル・レジスタ・ビットと一緒に
、8ビツトのベクトル値を表す。これをプロセッサ5が
RAM6中のチャネル17の割り込みサービス・ルーチ
ンへのポインタとして使う。別法として、ポインタがE
PROM8またはEPROM8を指定することもできる
。プロセッサ5は、ポインタが指す記憶位置の内容にも
とづいて希望する処理を実行し、受信データに対してこ
れらの機能を実施し、チャネル17の内部RAM31の
制御ブロックを再初期設定し、DMA割り込みレジスタ
中の割り込みビットをリセットし、こうして次のDMA
転送のためにチャネル17を付勢する。
バズ・エラーが検出されたときのDIAC3のオペレー
ション これまでの考察では、エラーなしに実行されるDMAオ
ペレーションを扱ってきた。DIAC3は、システム制
御論理回路がエラーを検出したときにDMAサイクルを
処理する手段を備えている。
「バス・エラー」信号(以下、BERRという)は、シ
ステム制御論理回路が活動化し、DCC34が受は取る
。システム制御論理回路は、DMAオペレーションの実
行中にエラーを検出した場合、BERRを活動化して、
レベル7の割り込みを起こす。プロセッサ5はバイト・
マスターではないので、BERRを見ない。その上、D
IAC3がB G A C,Kを非活動化してバスの制
御権を放棄するまで、レベル7の割り込みを認識しない
。しかし、これらの状況の下で、DCC34はBERR
を監視しており、その反応は、DMAサイクルのタイプ
とBERRが発生する時間によって決まる。
DC:C34が送信オペレーションを実行中であり、R
AM6を読み取ったがまだそれをUSART2のチャネ
ルの送信バッファに書き込んでない間にBERRが検出
された場合、DCC34はRAM6の選択を外し、チャ
ネルにへのデータの書き込みは行わない。USART2
チャネルの送信バッファへの書き込みオペレーション中
にBERRが検出された場合、DCC34は通常の形で
サイクルを終了する。
DCC34が受信オペレーションを実行中で、RAM6
への書き込みオペレーションが始まる前にBERRが検
出された場合、DCC34はUSART2チャネルの読
み取りを中止し、データをRAMバッファ領域に・書き
込まずにサイクルを終了する。RAM書き込みオペレー
ションの実行中にBERRが検出された場合1通常の形
でサイ゛クルが終了する6 いずれにせよ、DCC34はBERRが非活動化さ、れ
るまでそのrDMA停止」状態に戻らず、待機中の次の
DMAサイクルの実行を防止する。
BERRが一度非活動化されると、通常のオペレーショ
ンが開始できる、良好な実施例では、エラーが検出され
たとき、原因を特定しもし可能なら回復することを試み
る必要がある。診断の助けとして、エラーが発生したと
きマシンの状態をできるだけ保存するように試みる。D
IAC:3は、rDMA滅勢」信号が活動化したときに
、その状態を保存する手段を備えている。この信号は、
エラーが検出されたときシステム制御論理回路が励振し
、システムが回復するまでアクティブである。
この信号は、DMA要求アービタ30が受は取るが、す
べてのDMA要求を有効にマスクする。これで待機中の
すべてのDMA要求が非活動化され。
DIAC3を要求抽出モードに保つことによって。
次のDMAサイクルの実行が防止される。あるDMAサ
イクル中にエラーが検出された場合、プロセッサ5は、
適切なメモリマツプ式入出力オペレ−ジョンでDMAバ
ス・マスター・レジスタ59に間合せて、サービスを受
けていたチャネルを決定することができる。さらに、プ
ロセッサ5は、チャネルのIDを決定した後、次の分析
のために起点アドレス/宛先アドレスおよびバイト・カ
ウントを決定することができる。DMA減勢信号が一度
システム制御論理回路によって非活動化されると、DM
Aサービスを開始することができる。
オペレーションのまとめ 以上に説明したアーキテクチャは、システム環境がシス
テム・プログラムの選択したパラメータで規定され最適
の形で通信チャネルがサービスされる汎用インターフェ
ースを提供する。かかるインターフェースを充たすため
通信チャネル装置に必要な要件はごくわずかである。各
チャネルには。
データ転送を要求するとき活動化し転送が行われると非
活動化する専用の要求線が設けられている。
DIAC3は、プロセッサ5によってDIAC3にロー
ドされたプログラム記憶式EFROMのコードによって
適切にプログラミングされており。
通信チャネルのUSART装置に対して全くトランスペ
アレントに割り込みモードまたはDMAモードのデータ
転送が容易にできる必要なプロトコルを提供する。チャ
ネルが割り込みモードでサービスされるようにプログラ
ミングされている場合、DIAC3は1割り込みプロセ
ッサに調停、割り込み信号、割り込みベクトルおよびデ
ータ転送肯定応答を供給させて、プロセッサ5に優先順
位最高の要求を出しているチャネルに関するデータ転送
を実行させる。チャネルがDMAモードでサービスされ
るようにプログラミングされている場合、DIAC3の
DMAプロセッサが調停、システム・バス獲得、適切な
タイプのDMA転送を実行し。
該当する場合には、また割り込みを提示し、割り込みベ
クトルを生成し、プロセッサ5にデータ転送肯定応答を
送る。
DIAC3のアーキテクチャの重要な特徴は。
複数のDMA転送ができること、およびICC33およ
びDCC34がパイプライン・アーキテクチャをもつこ
とである。このアーキテクチャのもと、多数のチャネル
の制御ブロック域を記憶するための内部RAMがあれば
、多重ポート通信アダプタは本実施例では20本のチャ
ネルにサービスすることができる。これは内部RAMの
サイズで制限されるだけである。したがって20本以上
の多数のチャネルをサービスすることはもちろん可能で
あり、しかも、そのような多重チャネル用のDMAコン
トローラを単一チップ上に実現することができる。従来
のマシンだと、RAM用の起点アドレス/宛先アドレス
・ポインタおよび各チャネル用のデータ・バイト転送カ
ウントは、専用レジスタに記憶される。これらのレジス
タは、かなりのチップ面積を占有するので、所与のDM
Aコントローラチップの場合、僅かなチャネルしかDM
A方式でサービスできない。しかしながらRAMは、チ
ップ面積の点からみるとずっと効率的な情報記憶手段で
あるが、データ・アクセス時間の点からいうと、効率は
劣る。内部サイクル制御装置33を備えたDIAC3の
DMAプロセッサのパイプライン式アーキテクチャにす
ると、上述のようにシステム・パフォーマンスに対する
内部RAM31のアクセス遅延時間の影響はほとんどな
くなる。
このアーキテクチャのもう一つの重要な特徴は、システ
ム・パフォーマンスを最大にするためのDMAプロセッ
サの設計の仕方である。まず、システム・バスの制御に
対する要求は、調停が終了し内部サイクル制御装置33
がサービスを受けるチャネルに関する起点アドレス・フ
ィールドおよび宛先アドレス・フィールドをアクセスす
るまでは提示されない。したがって、システム・バスの
制御権がDMAコントローラに戻されたとき直ちにDM
Aサイクルが開始でき、そのDMAプロセスに関する限
り内部RAMのアクセス時間はない。
第2に、内部サイクル制御装置E33とDMAサイクル
制御装置34が同時に動作するので、DMA転送時間中
に必要な内部処理が実行できる。チャネルの制御ブロッ
クの更新、優先順位が次に高いチャネルに対する再調停
、およびチャネルの制御ブロックへのアクセスは、すべ
て内部サイクル制脚装置33で処理されるDMA転送中
に行われる。
オペレーションが逐次的に行われるとすると、DIAC
3のDMA能力の全体的スループットは落ちる。
DIAC3の設計でシステム・パフォーマンスを最大に
するために試みられているもう一つの新規な態様は、ウ
ィンドウ・タイマ54の使用である。DIAC3は、D
MAバス許可肯定応答信号がアクティブな時間中(バス
・マスター権がある間)に、複数のDMA転送を個別的
単独転送よりもずっと効率的に実行することができる。
というのは、バスの初期制御権を獲得するのに必要なバ
ス獲得プロトコルを実行せずに、連続して転送を実行で
きるからである。DIAC3は、既にシステム・バスの
制御権を獲得しているので、DMAバス許可肯定応答信
号が非活動化されるまで、制御権を保持することができ
る。内部サイクル制御装置t¥33のオペレーションが
パイプライン式になっているため、再調停、および制御
ブロックへのアクセスを待たずにそれが行える。ウィン
ドウ・タイマによって、要求抽出期間中に複数のDMA
要求が待機する確率が高まり、したがってDMA転送オ
ペレーションの全体的効率がさらに上がる。
D5.ライン速度およびパリティ規約の検出非同期式ま
たは同期式のディジタル・データ・ストリームのボーレ
ートおよびパリティ規約を検出するための機構を第13
図に示した。
ポート・インターフェース制御装置10とUSART2
の各組み合わせは、各ポートごとに遷移検出ネットワー
ク80を含んでいる。遷移検出ネットワーク80は、受
信線についてそれがOから1または1からOへ変わった
かどうかを監視し、この2進状態の変化が起こると、そ
の変化を知らせる。これが、ポート・インターフェース
制御装置10から割り込み制御論理4に向う第3図のレ
ベル5割り込み要求線のソースである。ポート・インタ
ーフェース制御装置10の内部に、各ポートからの割り
込みの現ステータスおよび履歴ステータスを維持するた
めの割り込みステータスレジスタがある。割り込みステ
ータス・レジスタ81は、第13図に示すように、ポー
ト・インターフェース制御装置の一部である。
割り込みビットが、ポート・インターフェース制御装置
10の割り込みステータスレジスタ81中でセットされ
る。遷移が検出されたとき、またはメモリマツプ式入出
力オペレーションがプロセッサ5によって出されたとき
、このレジスタ中においてビットがセットされる。それ
らのビットは、システム・リセット、メモリマツプ式入
出力書き込みオペレーション、または前述のマスク下で
のメモリマツプ式入出カリセットによってセットできる
6割り込みベクトル処理装置82は、ベクトル生成部を
含んでおり、それが各チャネルに対する一意的なベクト
ル値を生成して、プロセッサ5を、優先順位が最高のデ
ータ遷移割り込みをサービスするための適切なメモリの
位置に向ける。これらのベクトル値は、データ・バスに
出される。
第3図に示すようにデータ遷移に関するレベル5の割り
込みが第1図の割り込み制御論理4およびプロセッサ5
に出される。第13図では割り込み制御論理とプロセッ
サは単一ブロックとして示しである。所与のポートでの
データ遷移間の経過時間を測定するために、自由走行タ
イマすなわちプログラム記憶式のタイマ13がシステム
制御論理回路中に設けられている。このタイマ13は連
続して走行し、レベル5のデータ遷移割り込みが発生す
るとプロセッサ5に読み取られる。所与のポートでデー
タ遷移が起こる毎に割り込みがかけられるので、優先順
位最高のポートが一連の割り込みを逐次的にプロセッサ
5にうまく提示することができる。割り込みのたびにタ
イマ13のカウントが読み取られ、記憶される。あるキ
ャラクタの全体を受は取ると、データ遷移間の時間間隔
はそのポートで使われるボーレートとパリティ規約を表
わすことになる。
この機構は種々のボーレートを有するモデムをサポート
する場合に要求されるものである。多重速度モデムは今
やあたりまえのものとなっている。
異なるボーレートを有する遠隔モデムは所与のポート1
でローカルに接続されたモデムをダイヤル呼出しするか
もしれないので、遠隔モデムのボーレートおよびパリテ
ィ規約を判断するのに何らかの手段が必要である。従来
単一のポート群に対して行われてきたように、これは受
信信号により決定することができる。リンクが確立され
ると、遠隔モデムから所定のキャラクタが送られてくる
このキャラクタはボーレートとパリティ規約を識別する
ためのものである。その遷移の合計数を使ってパリティ
を表わす。一方、遷移間の経過時間でライン速度をみる
。適切な処理アルゴリズムで実際のライン速度を算定す
る。所定のキャラクタを使用するのは、それが通信リン
クを介して直列的に伝送された場合に決まった数の遷移
を有するからである。受信の際、各遷移ごとにタイマ1
3で現在時刻をみてこれを記録する。そのキャラクタの
全体が受信されると、プロセッサ5は既知のアルゴリズ
ムを使ってボーレートおよびパリティ規約を有効に判定
することができる。
以上に考察したように、遷移が発生すると、10本(受
信専用)の割り込み要求線のうちの1本に割り込みが発
生する。その割り込みがサービスされると、そのとき割
り込みを要求している優先順位最高のチャネルを識別す
る一意的なベクトル値が、前述の如くプロセッサ5に提
示される6割り込みサービス中、割り込みはポートの識
別番号によって分類され、時間が記録され、オフライン
処理のためにメモリに記憶される。次にその後の遷移の
検出に影響を与えないように1割り込みがリセットされ
る。所与のポートに対するすべての遷移を受は取ると、
プロセッサ5は、そのポートで使う有効なボーレートと
パリティ規約を決定する。こうしてチャネルが識別され
ると、通常のデータ・トラヒックに進むため、遷移検出
機能が減勢される。
第13図において、有効は遷移の検出は、各チャネルに
対する受信データ遷移入力によって行われる。この検出
を行う遷移検出ネットワークは。
遷移があったかどうかを判断するため、単一受信データ
入力の状態を監視する。遷移とは、先に定義したように
、受信データの状態が論理1から論理Oにまたはその逆
に変化することである。かかる遷移が検出されると、「
割り込みセット」信号が瞬間パルスとして活動化される
。割り込みステータス・レジスタ81と割り込みステー
タス保持レジスタ83は第13図に示しである6割り込
みステータス・レジスタ81は、遷移が発生するとき、
すべてのチャネルから遷移を集める0割り込みセット入
力は、先に説明したようにこのレジスタ内部の個別ビッ
ト位置を制約するのに使用される6 「割り込みセット
J信号が活動化されると、あるビットがセットされる。
次に各ビットはマスクの下で個別的にリセットされ、ま
たは前述の如く一般的なシステム・リセット中にリセッ
トされる。マスク下でのリセットは上述のように所期の
割り込みステータス・レジスタに対して割り当てられた
アドレス空間を選択し、適切な制御信号とデータを活動
化することによって実施される。複数のチャネルが非同
期的に働くので、残りのビット位置に影響を与えずに個
々のビット位置を選択しリセットする手段を設ける必要
があるにれは。
上記のように、マスク下でのリセットを使って、残りの
チャネルでの新しい遷移の発生を検出しながら、同時に
個々のチャネルをリセットできる能力によって実現でき
る。
割り込みステータス・レジスタ81は、メモリマツプ式
入出力読み取りサイクルまたは割り込み肯定応答サイク
ル以外の間に、割り込みステータス入力レジスタによっ
て絶えず更新される(これらのサイクル中では、プロセ
ッサ5への正確なデータ転送を確保するため、データが
レジスタ81内部で安定なことが必要である)読み取り
サイクルまたは肯定応答サイクルが終了すると、割り込
みステータス・レジスタ81は更新プロセスを再開する
。そのため残−りのチャネルで非同期的に発生する割り
込みについての検出は、既に検出された割り込みに対す
る読み取りサイクルまたは肯定応答サイクルの実行と同
時に行われる。割り込みステータス保持レジスタへの書
き込みは1機能テストのためメモリマツプ式入出力オペ
レーションで行うことができる。
ポート・インターフェース制御装置10のオペレーショ
ンの説明の際に詳しく述べたように、割り込みの提示は
2割り込みベクトル処理装置82のベクトル生成機能お
よび割り込み制御機能によって制御される。チャネルが
付勢されると1割り込みステータス・レジスタ81内部
で遷移がラッチされ、その結果レベル5の割り込み信号
の活動化によってプロセッサ5に提示される。この信号
が、遷移を検出しているすべてのチャネルの結果とOR
される。割り込み信号の活動化によって、現在存在する
最高の優先順位をもつ要求を出しているポートについて
、先に説明したように一意的なベクトルが生成される6
割り込み肯定応答信号がプロセッサ5から割り込み制御
ネットワーク82に提示されると、割り込みベクトル処
理装置82は、データ・バス上でプロセッサ5にベクト
ルを提示する。このベクトルはデータ遷移を検出してい
る優先順位が最高のチャネルを表す。割り込み中のポー
トが識別されると、プロセッサ5はタイマ13を読み取
って、前の個々の遷移時間その他を確定する。プロセッ
サ5は1次にマスク下リセット・コマンドを出して、レ
ジスタ81中の各割り込みステータス・ビットをリセッ
トする。各チャネルで発生するその後の割り込みについ
て、このプロシージャ全体が繰り返され、それぞれのベ
クトル識別コードに応じて結果が別々に記憶される。最
初の既知のキャラクタの全型を知るに充分な完全な1組
の遷移を受は取ると、プロセッサ5はそのポートに関す
るパリティおよびボーレートの検出結果をアクセスする
ことができる。
以上1本発明をその良好な実施例にもとづいて説明して
きたが、当業者には自明の如く1本発明の精神と範囲か
ら外れることなく、マイクロプロセッサ、USART、
記憶モジュールなど各種のコンポーネント機能ブロック
について様々な逸脱や変更を加えることができる。
E0発明の詳細 な説明したように本発明によれば、多種多様なプロトコ
ルを有するポートを効率よくサービスすることができる
【図面の簡単な説明】
第1図は第1A図および第1B図のつながりを示す図、
第1A図および第1B図は本発明の実施例の多重ポート
通信アダプタを示す図、第2図は多重ポート通信アダプ
タにおけるシステム制御論理回路の一部を示す図、第3
図はポートインターフェース制御装置10およびUSA
RT2に関する主要な信号線を示す図、第4図は第4A
図および第4B図のつながりを示す図、第4A図および
第4B図はインターフェース制御論理15によるポート
拡張方式を説明する図、第5図はDIAC3、ポートイ
ンターフェース制御装置10.およびUSART2の接
続の様子を示す図、第61i!は第6A図ないし第6D
図のつながりを示す図、第6八図ないし第6D図はDI
AC3の構成を示す図、第7図は第7A図および第7B
図のつながりを示す図、第7A図、第7B図は第6図゛
中のDMA要求アービタ30の主要な構成を示す図、第
8図は第6図中のICC33の構成を示す図、第9図は
第6図中の内部RAM31の構成を示す図。 第10図は第6図中のDCC34の構成を示す図。 第11図は第6図中のDMA割り込み制御論理35の構
成を示す図、第12図は第6図中の割り込み要求アービ
タ36および割り込み制御部37の構成を示す図、第1
3図は通信速度およびプロトコルを判断するための機構
を示す図、第14図は第4図中のインターフェース制御
論理15の主要な構成を示す図である。 出願人  インターナショナル・ビジネス・マシーンズ
・コーポレーション 代理人  弁理士  頓  宮  孝  −(外1名) 多4ILポート道有λア9プク 第1図 第1A図 システム制漢l禽理回路の一部 第2図 ホ・−トインダーフェース彼さLお・よひ“USAR信
号線第3図 第6B図 第6C図 第6D図 第9図 DCC34のJ電域 第10図 DMA嘗1込み如1詳口創#9L35の填戒第11図 遥(gd鳴・Jぴパリティ粘春勾利は斥鱈U奪第13図 第14図

Claims (2)

    【特許請求の範囲】
  1. (1)複数のポートをサービスするための多重ポート通
    信装置であって、 (a)上記複数のポートにそれぞれ接続され、通信プロ
    トコルの変換を行う複数のポートインターフェース手段
    と。 (b)上記各ポートに対応してそれぞれ設定された複数
    の通信プロトコル変換命令を記憶するメモリと、 (c)データ転送要求を発したポートインターフェース
    手段に対応する通信プロトコル変換命令を選択する手段
    と、 (d)該選択された通信プロトコル変換命令を実行する
    プロセッサと、 を具備することを特徴とする多重ポート通信装置。
  2. (2)上記ポートインターフェース手段が通信プロトコ
    ル変換命令に基づく制御信号により制御される汎用の同
    期/非同期式送受送装置を具備することを特徴とする特
    許請求の範囲第(1)項記載の多重ポート通信装置。
JP61136402A 1985-06-14 1986-06-13 多重ポ−ト通信装置 Granted JPS61288247A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/744,851 US4751634A (en) 1985-06-14 1985-06-14 Multiple port communications adapter apparatus
US744851 1985-06-14

Publications (2)

Publication Number Publication Date
JPS61288247A true JPS61288247A (ja) 1986-12-18
JPH0450622B2 JPH0450622B2 (ja) 1992-08-14

Family

ID=24994214

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61136402A Granted JPS61288247A (ja) 1985-06-14 1986-06-13 多重ポ−ト通信装置

Country Status (5)

Country Link
US (1) US4751634A (ja)
EP (1) EP0205010B1 (ja)
JP (1) JPS61288247A (ja)
CA (1) CA1244556A (ja)
DE (1) DE3688763T2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63296540A (ja) * 1987-02-09 1988-12-02 インテル・コーポレーシヨン 単一集積回路マイクロ制御器におけるマルチプロトコル通信制御器
JPH07312626A (ja) * 1994-05-19 1995-11-28 Nec Corp データリンク制御回路

Families Citing this family (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4868783A (en) * 1987-06-15 1989-09-19 International Business Machines Corporation Dynamic port reconfiguration
JPH0831074B2 (ja) * 1987-11-25 1996-03-27 株式会社日立製作所 チャネル制御方式
JP2504512B2 (ja) * 1988-03-09 1996-06-05 富士通株式会社 Dmaコントロ―ラ
JPH0731613B2 (ja) * 1988-07-16 1995-04-10 日本電気株式会社 診断制御装置
US5276845A (en) * 1988-08-25 1994-01-04 Yamaha Corporation Apparatus with multiple buses for permitting concurrent access to a first memory by a processor while a DMA transfer is occurring between a second memory and a communications buffer
US5140679A (en) * 1988-09-14 1992-08-18 National Semiconductor Corporation Universal asynchronous receiver/transmitter
US5228130A (en) * 1988-09-14 1993-07-13 National Semiconductor Corporation Multi-channel peripheral interface using selectively flaggable channel register sets for concurrent write in response to any selected channel register write instruction
US5097410A (en) * 1988-12-30 1992-03-17 International Business Machines Corporation Multimode data system for transferring control and data information in an i/o subsystem
GB2226666B (en) * 1988-12-30 1993-07-07 Intel Corp Request/response protocol
EP0378398B1 (en) * 1989-01-13 1996-07-24 International Business Machines Corporation Data processing system with means for detecting status of data processing device receiving commands
HU210098B (en) * 1989-12-27 1995-02-28 Chinoin Gyogyszer Es Vegyeszet Process for producing isomeric mixtures of cypermethrin and stabilised insecticidal compositions and concentrates containing the mixtures
GEP20002025B (en) 1989-01-17 2000-04-10 Chinoin Diodser Esh Bidieceti Diara Rt Hu The Stable Arthropodicidal Composition
US5165036A (en) * 1989-01-31 1992-11-17 Sharp Kabushiki Kaisha Parallel processing development system with debugging device includes facilities for schematically displaying execution state of data driven type processor
JP2539058B2 (ja) * 1989-03-30 1996-10-02 三菱電機株式会社 デ―タプロセッサ
JPH077955B2 (ja) * 1989-05-13 1995-01-30 株式会社東芝 データ通信制御装置
EP0398523A3 (en) * 1989-05-19 1991-08-21 Hitachi, Ltd. A device for data i/o and execution support in digital processors
US5185865A (en) * 1989-08-04 1993-02-09 Apple Computer, Inc. System for simulating block transfer with slave module incapable of block transfer by locking bus for multiple individual transfers
DK0426948T3 (da) 1989-08-11 1996-05-28 American Cyanamid Co Arylpyrroler som insekticide, acaricide og nematodicide midler samt fremgangsmåder til deres fremstilling
US5287486A (en) * 1989-10-05 1994-02-15 Mitsubishi Denki Kabushiki Kaisha DMA controller using a programmable timer, a transfer counter and an or logic gate to control data transfer interrupts
US5239629A (en) * 1989-12-29 1993-08-24 Supercomputer Systems Limited Partnership Dedicated centralized signaling mechanism for selectively signaling devices in a multiprocessor system
US5485590A (en) * 1990-01-08 1996-01-16 Allen-Bradley Company, Inc. Programmable controller communication interface module which is configurable by a removable memory cartridge
US5247671A (en) * 1990-02-14 1993-09-21 International Business Machines Corporation Scalable schedules for serial communications controller in data processing systems
US5377356A (en) * 1990-09-19 1994-12-27 Aeg Transportation Systems, Inc. Propulsion control system central processing unit board
US5471639A (en) * 1990-10-24 1995-11-28 At&T Global Information Solutions Company Apparatus for arbitrating for a high speed direct memory access bus
EP0486312B1 (en) * 1990-11-16 1997-04-23 Canon Kabushiki Kaisha Image interface device
JP2744865B2 (ja) * 1991-04-30 1998-04-28 インターナショナル・ビジネス・マシーンズ・コーポレイション シリアルチャネルアダプタ
US5291609A (en) * 1991-06-13 1994-03-01 Sony Electronics Inc. Computer interface circuit
JPH0561951A (ja) * 1991-08-30 1993-03-12 Fujitsu Ltd イメージ処理装置
US5280586A (en) * 1991-10-03 1994-01-18 Compaq Computer Corp. Expandable communication system using data concentration
US5386514A (en) * 1992-04-16 1995-01-31 Digital Equipment Corporation Queue apparatus and mechanics for a communications interface architecture
US5613141A (en) * 1992-10-19 1997-03-18 International Business Machines Corporation Data storage subsystem having dedicated links connecting a host adapter, controller and direct access storage devices
JPH07319810A (ja) * 1994-04-01 1995-12-08 Fujitsu Ltd ネットワークサービスシステム及びネットワークサービスシステムを利用可能なゲーム機用通信装置並びにゲーム機
DE69520706T2 (de) * 1994-06-03 2001-08-02 Hyundai Electronics America Herstellungsverfahren für einen elektrischen Vorrichtungs-Adapter
CA2135505C (en) * 1994-11-09 1999-11-09 Patrick K. Kam Dma emulation for non-dma capable interface cards
US5634099A (en) * 1994-12-09 1997-05-27 International Business Machines Corporation Direct memory access unit for transferring data between processor memories in multiprocessing systems
US5553293A (en) * 1994-12-09 1996-09-03 International Business Machines Corporation Interprocessor interrupt processing system
US5630140A (en) * 1995-01-23 1997-05-13 Tandem Computers Incorporated Ordered and reliable signal delivery in a distributed multiprocessor
FR2730835B1 (fr) * 1995-02-21 1997-03-14 Sgs Thomson Microelectronics Procede d'adaptation automatique des parametres d'une interface
US6546442B1 (en) * 1995-10-30 2003-04-08 International Business Machines Corporation Communications adapter having analog and digital interfaces for communications with remote systems
US5774680A (en) * 1995-12-11 1998-06-30 Compaq Computer Corporation Interfacing direct memory access devices to a non-ISA bus
US5768620A (en) * 1996-04-09 1998-06-16 International Business Machines Corporation Variable timeout method in a missing-interrupt-handler for I/O requests issued by the same operating system
US5944800A (en) * 1997-09-12 1999-08-31 Infineon Technologies Corporation Direct memory access unit having a definable plurality of transfer channels
US6098142A (en) * 1998-08-25 2000-08-01 Leggett; John D. Apparatus and method for using a communications port in polling mode and without interrupts
US6338111B1 (en) * 1999-02-22 2002-01-08 International Business Machines Corporation Method and apparatus for reducing I/O interrupts
US6256700B1 (en) * 1999-03-30 2001-07-03 Dell Usa, L.P. Bus/port switching system and method for a computer
US6680951B1 (en) * 1999-10-21 2004-01-20 International Business Machines Corporation System and method for selecting multi-rate ports in a data transmission network
US6553489B1 (en) * 2000-01-12 2003-04-22 Cisco Technology, Inc. System and method for secure and efficient universal port configuration
US6671764B2 (en) * 2000-12-20 2003-12-30 Intel Corporation PC adapter card with an interchangeable connector set
GB2372115A (en) * 2001-02-08 2002-08-14 Mitel Semiconductor Ltd Direct memory access controller
US6687767B2 (en) * 2001-10-25 2004-02-03 Sun Microsystems, Inc. Efficient direct memory access transfer of data and check information to and from a data storage device
US7353362B2 (en) * 2003-07-25 2008-04-01 International Business Machines Corporation Multiprocessor subsystem in SoC with bridge between processor clusters interconnetion and SoC system bus
US7412588B2 (en) 2003-07-25 2008-08-12 International Business Machines Corporation Network processor system on chip with bridge coupling protocol converting multiprocessor macro core local bus to peripheral interfaces coupled system bus
US7386642B2 (en) 2005-01-28 2008-06-10 Sony Computer Entertainment Inc. IO direct memory access system and method
JP2006216042A (ja) * 2005-02-04 2006-08-17 Sony Computer Entertainment Inc 割り込み処理のためのシステムおよび方法
US7680972B2 (en) * 2005-02-04 2010-03-16 Sony Computer Entertainment Inc. Micro interrupt handler
US8626951B2 (en) * 2007-04-23 2014-01-07 4Dk Technologies, Inc. Interoperability of network applications in a communications environment
EP2003556A1 (fr) * 2007-05-25 2008-12-17 Axalto SA Procédé de traitement par un dispositif électronique portable de commandes applicatives issues de canaux physiques, dispositif et système correspondants
US9672186B2 (en) * 2014-06-20 2017-06-06 Nxp Usa, Inc. Electronic monitoring device having wake-up for daisy chain
US9606856B2 (en) * 2014-12-03 2017-03-28 International Business Machines Corporation Event logging and error recovery

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4177511A (en) * 1974-09-04 1979-12-04 Burroughs Corporation Port select unit for a programmable serial-bit microprocessor
US4271466A (en) * 1975-02-20 1981-06-02 Panafacom Limited Direct memory access control system with byte/word control of data bus
US4075691A (en) * 1975-11-06 1978-02-21 Bunker Ramo Corporation Communication control unit
US4014005A (en) * 1976-01-05 1977-03-22 International Business Machines Corporation Configuration and control unit for a heterogeneous multi-system
US4200930A (en) * 1977-05-23 1980-04-29 Burroughs Corporation Adapter cluster module for data communications subsystem
US4168469A (en) * 1977-10-04 1979-09-18 Ncr Corporation Digital data communication adapter
US4403282A (en) * 1978-01-23 1983-09-06 Data General Corporation Data processing system using a high speed data channel for providing direct memory access for block data transfers
US4246637A (en) * 1978-06-26 1981-01-20 International Business Machines Corporation Data processor input/output controller
US4275440A (en) * 1978-10-02 1981-06-23 International Business Machines Corporation I/O Interrupt sequencing for real time and burst mode devices
US4449183A (en) * 1979-07-09 1984-05-15 Digital Equipment Corporation Arbitration scheme for a multiported shared functional device for use in multiprocessing systems
US4393464A (en) * 1980-12-12 1983-07-12 Ncr Corporation Chip topography for integrated circuit communication controller
US4424565A (en) * 1981-06-22 1984-01-03 Bell Telephone Laboratories, Incorporated Channel interface circuit with high speed data message header field translation and direct memory access
US4495564A (en) * 1981-08-10 1985-01-22 International Business Machines Corporation Multi sub-channel adapter with single status/address register
IT1145730B (it) * 1981-11-13 1986-11-05 Olivetti & Co Spa Sistema di elaborazione di dati con dispositivo di controllo delle interruzioni di programma
US4481578A (en) * 1982-05-21 1984-11-06 Pitney Bowes Inc. Direct memory access data transfer system for use with plural processors
US4513373A (en) * 1982-12-28 1985-04-23 Electronic Data Systems Corporation Local area network
US4571671A (en) * 1983-05-13 1986-02-18 International Business Machines Corporation Data processor having multiple-buffer adapter between a system channel and an input/output bus
US4654788A (en) * 1983-06-15 1987-03-31 Honeywell Information Systems Inc. Asynchronous multiport parallel access memory system for use in a single board computer system
US4648029A (en) * 1984-08-27 1987-03-03 International Business Machines Corporation Multiplexed interrupt/DMA request arbitration apparatus and method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63296540A (ja) * 1987-02-09 1988-12-02 インテル・コーポレーシヨン 単一集積回路マイクロ制御器におけるマルチプロトコル通信制御器
JPH07312626A (ja) * 1994-05-19 1995-11-28 Nec Corp データリンク制御回路

Also Published As

Publication number Publication date
DE3688763D1 (de) 1993-09-02
CA1244556A (en) 1988-11-08
EP0205010B1 (en) 1993-07-28
DE3688763T2 (de) 1994-02-24
EP0205010A2 (en) 1986-12-17
JPH0450622B2 (ja) 1992-08-14
US4751634A (en) 1988-06-14
EP0205010A3 (en) 1989-08-23

Similar Documents

Publication Publication Date Title
JPS61288247A (ja) 多重ポ−ト通信装置
JPS61288246A (ja) 多重ポ−ト通信システム
JPS61288248A (ja) 多重ポ−ト通信装置
US4648029A (en) Multiplexed interrupt/DMA request arbitration apparatus and method
US4870566A (en) Scannerless message concentrator and communications multiplexer
US4067059A (en) Shared direct memory access controller
CA1254304A (en) Multicomputer digital processing system
CA1078524A (en) Destination selection apparatus for a bus oriented computer system
US4485438A (en) High transfer rate between multi-processor units
US4627054A (en) Multiprocessor array error detection and recovery apparatus
EP0139563B1 (en) Control mechanism for multiprocessor system
JPS6048779B2 (ja) モジユ−ル型デ−タ処理装置
JPH04218861A (ja) 多重クラスタ信号プロセッサ
JPH04230557A (ja) 直接メモリアクセス・コントローラ
CA1311310C (en) Peripheral controller and adapter interface
GB1589180A (en) Data processing apparatus
US4670855A (en) Interchangeable interface circuit structure
USRE33705E (en) Interchangeable interface circuit structure
EP0283580B1 (en) Computer system with direct memory access channel arbitration
JPH1131125A (ja) Dma装置の制御方法
JPH01220054A (ja) バス制御集積回路