JPS636890B2 - - Google Patents
Info
- Publication number
- JPS636890B2 JPS636890B2 JP54160896A JP16089679A JPS636890B2 JP S636890 B2 JPS636890 B2 JP S636890B2 JP 54160896 A JP54160896 A JP 54160896A JP 16089679 A JP16089679 A JP 16089679A JP S636890 B2 JPS636890 B2 JP S636890B2
- Authority
- JP
- Japan
- Prior art keywords
- signal
- address
- bit
- register
- interrupt
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
- 230000006870 function Effects 0.000 claims description 19
- 238000012545 processing Methods 0.000 claims description 11
- 230000002093 peripheral effect Effects 0.000 claims description 6
- 230000001131 transforming effect Effects 0.000 claims description 2
- 230000006854 communication Effects 0.000 description 27
- 238000004891 communication Methods 0.000 description 26
- 230000007246 mechanism Effects 0.000 description 14
- 239000013598 vector Substances 0.000 description 13
- 238000010586 diagram Methods 0.000 description 10
- 238000000034 method Methods 0.000 description 10
- 230000008859 change Effects 0.000 description 6
- 238000012546 transfer Methods 0.000 description 6
- 230000001360 synchronised effect Effects 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000002457 bidirectional effect Effects 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 210000004899 c-terminal region Anatomy 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
- G06F13/26—Handling requests for interconnection or transfer for access to input/output bus using interrupt with priority control
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Bus Control (AREA)
- Computer And Data Communications (AREA)
- Complex Calculations (AREA)
- Communication Control (AREA)
Description
本発明はデータ処理システムに関し、特にある
組の装置要求に対する最優先順位を有する装置を
表示し、予め定めた時低い優先順位の装置で操作
されるチヤネル・プログラムを通知割込みするこ
とを高い優先順位の装置に許容する装置に関す
る。本発明は更に、多数の割込みルーチンのどれ
かの実行を指令するための多数の独自の機能コー
ドのアドレスを与えることができる割込みベクト
ルを使用するコンピユータ・プログラムの割込み
を行うためのアドレス指定装置に関する。 一般に、コンピユータ・システムは1つのプロ
セサおよび複数の入出力装置を含んでいる。多数
の装置が同時にプロセサによる操作を要求するこ
とがあるから、プロセサがある順序で入出力
(I/O)装置で操作できるように優先順位の1
つのシステムが確立されねばならない。 従来技術のシステムでは、精緻なハードウエア
技術、ハードウエア/フアームウエア技術、ソフ
トウエア技術等を含む種々の方法で優先順位の問
題を解決して来た。 優先順位を解決する装置に関するある典型的な
米国特許(必らずしも非常に近い従来技術ではな
いが)は下記の如くである。 (1) 1976年11月23日発行の米国特許第3993981号
「データ処理システムにおけるデータ転送要求
を処理する装置」 (2) 1977年1月4日発行の米国特許第4001783号
「優先順位割込み機構」 (3) 1977年6月7日発行の米国特許第4028684号
「プロセサに対し最優先順位チヤネルを有する
最優先順位処理のデータを割振る装置」。 これ等のシステムは大形のコンピユータ・シス
テム用として設計され、入出力装置の選択に対し
てハードウエアに関しても時間に関しても高価な
ものについた。又、構成された優先順位システム
は容易に変更できない。この問題は、入出力装置
が、各々が異なるモード即ち同期非同期モード
で、又異なるビツト速度で送受を行う能力を有す
る通信回線である時複雑化する。 複数の入出力システムで作用する計算装置にお
いては、データ・フローを制御するサブシステム
はチヤネル・プログラムで作用が可能で、マイク
ロプロセサ、および各々のサービス通信回線に対
する汎用同期非同期レシーバ・トランスミツタ
(USART)に限定するものではないがこれを含
む複数個の入出力装置を含み得る。マイクロプロ
セサは、例えば、チヤネル・プログラムにより作
用するUSARTを制御することもできる。もし更
に高い優先順位を有する別の通信回線がサービス
を要求するならば、マイクロプロセサは操作され
るチヤネル・プログラムに割込み、このチヤネ
ル・プログラムを要求側の通信回線で作用するよ
うに切換えねばならない。従来技術においては、
マイクロプロセサはメモリーに情報を記憶するこ
とによりチヤネル・プログラムに割込みを行う。
メモリーに記憶されたこの情報は、この割込まれ
た通信回線上でチヤネル・プログラムがサービス
を継続することを可能にする。この情報は、更に
高い順位の通信回線が割込みを行う時アンロード
され、高い順位の通信回線がデータ転送を完了し
てシステムが元の通信回線に戻る時再びロードさ
れねばならないシステム内の種々のレジスタの内
容からなる。この従来技術のシステムは、多量の
情報をロードしアンロードしなければならず、こ
のため操作を遅くすると言う短所を有する。第2
に、もしシステムにより要求されるならば割込み
を阻止することが難かしいこと、第3に、システ
ムの割込みを行つた通信回線の識別ができないこ
とである。 コンピユータ・プログラムの実行においては、
一般に、通常交互に生じる2つの位相がある。そ
の第1は、命令および(又は)オペランドが中央
プロセサに対して取出され、次に命令が実行され
る。取出し位相の間、プロセサは主記憶装置から
実行されるべき次の命令を取出して、これを指標
付け、間接アドレス指定および基底加算のための
これ以上の変更が必要に応じて行われる1つ以上
の制御レジスタに転送する。命令の実行位相の
間、プロセサは命令を復号し、この命令により指
定された操作が実行される。 大部分の記憶されたプログラム・デイジタルコ
ンピユータは、外部又は内部の信号からの要求と
同時に実行プログラムに割込みを行う何等かの手
段を有する。情報の入力又は出力のため、又は保
守、診断、平方根等の如き標準的なルーチンの実
施のためのあるルーチンの呼出しの如きコンピユ
ータ・プログラムへの割込みが必要となる理由は
種々ある。 最も簡単な割込み形態は、プログラムの次の順
次の命令で継続するのではなく実行されるべき次
の命令を得るためCPUを主記憶装置内の別の記
憶場所に行かせるHALT又はGOTOおよび
RETURNサブルーチンの如き停止又は分岐を生
じる命令を使用することである。しかし、新らし
いプログラム又はルーチンの実行の前に、プログ
ラム・カウンタ、アキユムレータ・レジスタ等の
如き間接的にアドレス指定可能なレジスタの内容
は、割込まれた地点において割込まれたプログラ
ムに対して制御が戻され得るように保持されねば
ならない。このため、プログラム・カウンタをア
ンロードし再ロードする際の余計な時間がかか
る。 条件付き割込み、優先順序割込み、入れ子割込
みの如くこの基本的な割込み機能に対しては多く
の変形例がある。典型的な従来技術による割込み
操作については下記の米国特許を参照されたい。 (1) 1965年12月28日発行のH.D.Wiseの米国特許
第3226694号「割込みシステム」 (2) 1968年10月29日発行のR.E.Packard等の米国
特許第3408630号「高速分岐操作を有するデイ
ジタル・コンピユータ」 (3) 1965年11月30日発行のR.Benghiatの「優先
順位割込みモニター・システム」 (4) 1972年9月19日発行のR.M.Spanglesの米国
特許第3693162号「電子計算機用のサブルーチ
ン呼出し/戻し装置」 (前記の参考文献は単なる例示であつて、これ
が本発明と最も近い従来技術であるとの推論はな
されるべきではない。) 一般に、命令とデータ・オペランドの両方が同
じ主記憶装置における種々のアドレス指定可能な
記憶場所における実行のために記憶される。更
に、命令はサブルーチンを構成するグループに分
類される。このため、特定の問題に対するサブル
ーチンが計算される時アドレスの記憶場所が前以
つて割当てられることを要する。更に、もしサブ
ルーチンが後で変更されるならば、プログラマは
メモリーの元の割当てのみならず後の変更をも記
録しておかねばならない。主記憶装置における実
際のアドレス場所に無関係にプログラミングを行
うためには、間接アドレス指定によらねばならな
い。指標レジスタによれば、データ又はプログラ
ムのグループは、プログラムがコンパイルされる
時にグループ内の各ワードに対して特定のアドレ
ス場所を割当てることなく使用され得る。絶対ア
ドレスは後で指令によつて照合される記憶場所に
挿入されるが、これはこのグループが主記憶装置
内の実行プログラムにより入れられる場所に従つ
て、プログラムが実行される毎に異なることがあ
り得る。このグループは多数の指令により間接的
にアドレス指定可能であるため、指令のアドレス
は変化せずに残り、このグループの絶対アドレス
はこのグループの記憶場所が変更されるならば変
更される。この技術は、一般に、メモリーにおけ
るオペランド又は命令ワードの代りにデイスクリ
プタとして知られる特殊なワードを必要とする。
ある命令が1つのオペランド・ワードをメモリー
から読出させる時、この命令は、1グループのワ
ードの基底アドレスを含み、更にオペランド・ワ
ードの代りにデイスクリプタ・ワードとしてこれ
を識別する情報と、命令又はデータのグループの
長さについての情報および指標付けが必要とされ
るかどうかを表示する情報を含むデータ・デイス
クリプタ・ワードを見出すことができる。(1976
年2月10日発行の米国特許第3938096号「主記憶
装置内のセグメントのアドレスおよびこのセグメ
ント内のオペランドの絶対アドレスを生成する装
置」参照。又、1965年12月7日発行の米国特許第
3222649号「間接アドレス指定を行うデイジタ
ル・コンピユータ」参照) 割込み操作においては主記憶装置内のどこでも
入れることができるグループにオペランド又は命
令をグループ化することが望ましいが、デイスク
リプタのアドレス又は他のタイプの間接アドレ
ス・ワードが固定されることも同様に望ましい。
これは、このようなワードを記憶するためのセグ
メント又は表として中央の場所を設けることによ
つて行うことができる。この技術は共に比較的遅
く、一方は指令によりデイスクリプタにアクセス
するため主記憶装置の何回かのアクセスを必要と
し、他方は表に記憶されたワードに対する指令又
は機能コードワードの比較を必要とする。更に、
これ等の技術は実質的な量の記憶スペースを必要
とする。マイクロプロセサが使用される場合、こ
のような記憶スペースおよび速度は特別のものと
なる。従つて、いくつかの予め定めた記憶場所の
どれかに対する指令によるハードウエア割込み技
術は迅速のものが必要とされ、プロセサおよび主
記憶装置の使用は極く少いものとなる。 本発明の主な目的は、1つのプロセサに対する
アクセスを要求する多数の装置即ち通信チヤネル
の優先順位を解決するための改善された機構の提
供にある。 本発明の別の目的は、更に高い優先順位の入出
力装置で操作する入出力装置で操作するチヤネ
ル・プログラムに通知割込みを行うための改善さ
れた機構の堤供にある。 本発明の目的は、コンピユータ・システムにお
いて実行するコンピユータ・プログラムに割込み
を行うための改善された機構の堤供にある。 本発明のコンピユータ装置は上記目的を達成す
るためチヤンネル番号信号及び機能コード信号を
含む入力/出力命令を発生する中央処理装置60
0と、記憶されている複数の割込みルーチンの一
つを識別するためのアドレス位置を示す上位バイ
ト信号及び下位バイト信号を有する複数の絶対ア
ドレス信号を記憶するメモリを有する複数の周辺
サブシステム620と、上記上位バイト信号及び
下位バイト信号を記憶するプログラムカウンタ6
01dを有するマイクロプロセツサと、前記複数
の割込みルーチンの一つを識別する前記アドレス
位置を選択するための多重ベクトル化割込み装置
とを備え、下記装置を更に有する。 (a) 前記中央処理装置及びマイクロプロセツサに
結合され、割込み信号を発生するための前記チ
ヤンネル番号信号に応答する第1の装置601
a、上記マイクロプロセツサは第1のアドレス
FFF8信号及び第2のアドレスFFF9信号を
発生するための前記割込み信号に応答する、 (b) 前記メモリ108及びマイクロプロセツサに
結合され、前記プログラムカウンタ601dの
上位バイト位置における記憶のため前記メモリ
から上位バイト信号を取り出すための第1のア
ドレス信号に応答する第2の装置105,60
1d、 (c) 上記第2の装置、マイクロプロセツサ及び中
央処理装置に結合され、前記プログラムカウン
タの下位バイト位置における記憶のため上記メ
モリから下位バイト信号を取り出すための基本
アドレス信号を発生するための前記機能コード
信号に応じて、前記第2のアドレス信号を変形
するための第2のアドレス信号に応答する第3
の装置380,601b,601d、 前記第2の装置は前記複数の割込みルーチンの
一つの第1のバイトを取り出すために前記プログ
ラムカウンタに記憶されている前記複数の絶対ア
ドレス信号の選択された一つに応答する。 上述した本発明の装置は多重化ベクトル割込み
のためのもので、この装置において、割込みの性
質をあらわす機能コードによつて達成される割込
み状態に応答して、割込みベクトルの夫々のバイ
トの二つのメモリアドレスが自動的に発生され
る。そのアドレスの一つは割込みベクトルの上位
バイトの検索を行う。他のアドレスは割込み状態
に対応する割込みベクトルの下位バイトを検索す
るため機能コードによつて変形される。 実行のプログラムに割込むためのハードウエア
機構は間接アドレス指定法を使用する。 主記憶装置における望ましい実施態様の予め定
めた記憶場所はそれぞれ割込みベクトルの上位と
下位のバイトを記憶する。割込みベクトルの上位
バイトを記憶する主記憶装置における記憶場所が
マイクロプロセサによつてアドレス指定される
時、マイクロプロセサのプログラム・カウンタの
上位の位置は割込みベクトルの上位バイトが設け
られる。しかし、割込みベクトルの下位バイトが
アドレス指定されると、アドレスのビツトは
CPUにおける異なるハードウエアに種々に与え
られ、これによりCPUの正規のアドレス指定機
構を禁止して間接アドレス指定機構を可能状態に
する。間接アドレス指定機構はマイクロプロセサ
のROM又はPROMにおける64の記憶場所の1つ
に選択されたアドレスを与える。この選択された
アドレスの内容は、マイクロプロセサのプログラ
ム・カウンタの下位バイトに入れられる第2のア
ドレスを提供し、このため割込みサブルーチンが
記憶される主記憶装置における所要の記憶場所の
絶対アドレスを与える。このように、64の割込み
サブルーチンのいずれも最小限度のスペース量で
迅速に呼出されることができる。 本発明による構成については添付図面に関して
例示として以下に説明する。 添付図面は、予め定めた規則に従つて多数の入
出力装置の優先順位を確立する装置を示す。プロ
グラム可能な読出し専用メモリー(PROM)3
84の集積回路は簡単な高速の優先順位リゾルバ
を可能にする。種々の入出力装置620はチヤネ
ル・プログラムによりマイクロプロセサで操作さ
れる。各入出力装置は、PROMのアドレス入力
ターミナルに対しその要求信号回線を接続させ
る。 例えば、回線0に対する汎用同期非同期レシー
バ/トランスミツタ(USART)116は、
PROM384の入力アドレス・ターミナル1お
よび2にそれぞれ接続された受取り要求信号回線
と送出要求信号回線を有する。回線1に対する
USART117は、PROMの入力アドレス・タ
ーミナル1,3,4に接続された受取りおよび送
出要求信号回線を有する。マイクロプロセサ要求
回線は、PROM384の入力アドレス・ターミ
ナルに接続される。又、入力アドレス・ターミナ
ルに与えられるのは、その時活動状態のチヤネ
ル・プログラム(図示も説明もしない)のチヤネ
ル番号を表わす信号である。PROM出力信号は、
通知割込みを行う入出力装置のチヤネル番号と、
更に高い優先順位の入出力装置がプログラムをア
クセスすることを要求することを表示する信号を
含んでいる。 当業者によれば判るように、ある特定の時点に
おいてチヤネル番号を要求する多くの装置および
このチヤネル番号で作用する特定の1の装置があ
る。この時のこれ等条件の各々は、特定の1つの
PROM記憶場所を選択する1つのPROMアドレ
ス信号に反映される。この記憶場所において恒久
的に固定されるのは1つのビツト形態で、これが
より高い優先順位を有する装置を表示し、その時
の装置がそのチヤネル・プログラム・ルーチンを
完了した時このチヤネル・プログラムに前記装置
が通知割込みするかどうかを表示する。 USARTに関するある典型的な状態は下記の如
く解明される。即ち、 もしUSART116と117が同時に動作する
ならば、受取り操作が優先する。 もし両回線が同期しなければ、USART0 1
16はUSART1 117に優先する。 マイクロプロセサ101について実行中の背景
プログラムはUSART0 116およびUSART
1 117の相方に優先する。 もしUSART0 116が送出し、USART1
117が受取り操作に対するチヤネル・プログ
ラムを要求すると、チヤネル・プログラムは、
USART0 116がUSART1 117よりも
高い優先順位を得た後USART−1 117をサ
ービスするため切換える。 本装置は、記憶する情報が非常に少ない時チヤ
ネル・プログラムにおけるある時点で異なる通信
回線に対してチヤネル・プログラムが実行するこ
とを割込ませるための装置を提供する。 マイクロプロセサのマイクロプログラム・サブ
ルーチンはアドレスBD4016(7E BD40)に対
する飛越しで終了する。アドレス信号BD4016
は、マイクロプロセサの割込み回線を駆動する
「リセツト割込みマスク」マイクロワードとして
マイクロプロセサによつて解釈される命令を含ん
でいる。もし未済の割込み要求がなければ、この
時プログラムはBD4116をアドレス指定するよ
うステツプする。このアドレス・バス上のBD4
1信号は、命令レジスタを駆動し、通常の記憶読
出しデータ経路110を禁止する。別の通信回線
がチヤネル・プログラムに割込みを行うことを要
求する時、命令レジスタに記憶されるノー・オペ
レーシヨン・マイクロワードNO OP0116がU
バス上に現われ、その結果マイクロプロセサがア
ドレスBD42を送出するが、これが割込み操作
の開始のためのサービス・ルーチンの開始であ
る。もし割込みが存在しなければ、「サブルーチ
ンからの戻り」マイクロワード3916がUバス上
に記憶され、その結果μPのその時のチヤネル番
号の実行に対する正規の戻りを生じる。 第1A図によれば、これも又改善されたアドレ
ス指定のための情報のフローおよびび変更を示す
本発明の望ましい実施態様の論理ブロツク図が示
される。マイクロプロセサ101は特に
Motorola Inc.から市販される6800タイプであ
り、主記憶装置108をアドレス指定するため16
ビツトのアドレス・バス102を使用する。これ
により、主記憶装置108の64000バイト以上の
アドレス指定能力を提供する。この命令の様式は
第1B図に示される。一方は8ビツトのOPコー
ドと8ビツトの(a)バイトを有し、他方は8ビツト
のOPコードと8ビツト(a)バイトと8ビツト(b)バ
イトを有する2つの様式がある。スペースおよび
サイクル時間を節約するため、(b)バイトのみを使
用することが更に有利である。従つて、第1A図
においては、レジスタ103は、ページング信号
ゼネレータ105をアドレス指定するため最初の
5つの上位ビツト8,9,10,11および12
を使用する。(このページング信号ゼネレータは、
Motorola Inc.により市販されるタイプ5610
の集積回路メモリーチツプである)このページン
グ信号ゼネレータ105は、(b)バイトのビツト8
〜12によりアドレス指定され得る32ワードを記
憶する。5ビツトがページング信号ゼネレータの
アドレス指定に使用されるため、これ等ビツトは
その32ワードのどれでもアドレス指定するため使
用できる。このゼネレータ105の内部回路は、
最初の8ワード(アドレス07迄)がアドレス指
定される時信号CPGLINが活動状態(即ち、ロ
ーになる)にさせられる如きものである。信号ゼ
ネレータ105の次の4ワードがアドレス指定さ
れる時(即ち、アドレス8〜11)、両信号
CPGLINおよびCPGDIRが活動状態にされる。
次の場所のワード13(即ち、アドレス12)が
アドレス指定される時、以降の信号は全て活動状
態になる(CPGLIN,CPGDIR,CPGCCBおよ
びCPGAD4はローになる)。ページング信号ゼネ
レータ105は、マイクロプロセサ101からの
ローの出力信号がそのE入力ターミナルに存在す
る時に駆動される。(a)バイトのその入力ビツト1
〜8の全てが0即ちローである時、ロー入力信号
はNORゲート104の出力側からページング信
号ゼネレータ105のE入力ターミナルに与えら
れる。(a)バイトのこれ等のビツト1〜8は、(a)お
よび(b)バイトにより与えられる16ビツト・アドレ
スを変更することが望まれる時に0にされる。従
つて、(a)バイトの全てのビツトが0である時、ペ
ージング信号ゼネレータ105のE入力ターミナ
ルに与えられるNORゲート104の出力側でロ
ーの信号が生じてこれを駆動する。ページング信
号ゼネレータ105が駆動される時、制御信号場
所105aの1つは(b)バイトのビツト9〜13に
よりアドレス指定され、ローになることにより駆
動される。これ等の制御信号105aの1つが活
動状態(即ち、ロー)になる時、16ビツトの仮想
アドレス106が実アドレス107に変更され、
これが次に主記憶装置108をアドレス指定す
る。もし制御信号105aのどれも活動状態でな
ければ、16ビツト・アドレス106は16ビツト・
アドレス107と同じであり、メモリー108の
アドレス指定に対する変更は生じない。(この変
更を行う機構については第3図に関連して詳細に
論述する)従つて、制御信号CPGCCBが活動状
態にあるものとすれば、仮想アドレスのビツト1
1はCCBレジスタ115の位置αにおけるビツ
トで置換され、ビツト12はCCBレジスタ11
5におけるビツトβにより置換されて実アドレス
を形成する。もし制御信号CPGDIRが活動状態
にあれば、仮想アドレスのビツト10はチヤネ
ル・レジスタ114のビツトDにより置換され
る。もし制御信号CPGLINが活動状態にあれば、
仮想アドレスのビツト9がCHレジスタ114の
ビツトMにより置換され、仮想アドレスのビツト
8はCHレジスタ114のビツトHにより置換さ
れる。もし制御信号CPGAD8が活動状態にある
ならば、仮想アドレスのビツト7は1で置換され
る。最後に、もし信号CPGAD4が活動状態であ
れば、仮想アドレスのビツト4,5,6は1で置
換される。 CESU2U信号は、選択された汎用同期非同期
レシーバ/トランスミツタ(USART)116,
117をアドレス指定するため使用される。
(USARTは、Tevas Instrument Co.から市販さ
れタイプ74LS−245である)CEIO2U制御
信号は両方向バス・ドライバ111を介してIバ
ス113を駆動する。(これ等の両方向バス・ド
ライバは、Texas Instrument Co.から市販され
るタイプ74LS245である)CEIO2U信号は
Iバス113からUバス112に対する通信を許
容し、CEU2IO信号はUバス112からIバス
113への通信を許容する。Iバスは、通信情報
を記憶するため種々のレジスタを取付けられてい
る。その典型的なレジスタとしては、上位デー
タ・レジスタ120、下位データ・レジスタ12
1、チヤネル番号レジスタ122、状態レジスタ
123がある。これ等のレジスタは、Iバス11
3およびUバス112を介してマイクロプロセサ
と通信し、Iバス113およびMバス109を介
して主記憶装置108と通信する。Iバス113
上の種々の付属部材が主記憶装置108とマイク
ロプロセサ101と通信するためには、通信ポー
トと関連する種々の回線およびチヤネルに対して
主記憶装置におけるスペースを割当てることが必
要である。従つて、第2A図によれば、実メモリ
ー200がその領域の一部を回線0〜3に対して
予約されることが判るであろう。各回線は64バイ
トからなり、4回線0〜3の全ては論理表
(LCT)スペースからなる。更に各回線0〜3は
各々32バイトの2チヤネルに再分割される。従つ
て、各々がLCTスペースからなる64バイトの4
回線からなる32バイトの8チヤネルがある。次の
256バイトがチヤネル指令プログラム(CCP)の
用途のために予約される。又3K乃至4Kのバイト
があり、これは使用されないスペースと共にチヤ
ネル指令プログラム(CCP)のため予約される。
このスペースの下方には、チヤネル制御ブロツク
(CCB)に予約された別の256バイトがある。
LCTスペースの場合と同様、各回線0〜3は64
バイトの1つのCCBと関連し、このバイトは
各々32バイトの2チヤネルに再分割される。この
下方にはフアームウエア作業スペースとして予約
された記憶スペースがある。従つて、各回線0〜
3は1つのLCTスペースおよび1つのCCBスペ
ースと関連し、その各々は2つのチヤネルに再分
割される。第1A図により前に述べたアドレス指
定機構の一部はこれ等記憶スペースの全てをアド
レス指定する。しかし、これを行うためには、ノ
アドレス・バイトが8ビツトからなり8ビツトは
僅かに256の場所をアドレス指定できるだけであ
るため、2つのアドレス・バイトaとbを要す
る。更に第2A図から判るように、3K/4Kの場
所を除いて768の場所(3×256)がある。これ等
の256の場所は、回線0〜3の通信が常にその
LCT、CCBおよびフアームウエアを伴わねばな
らないため最も瀕繁にアドレス指定される。単に
768の場所をアドレス指定する64000以上の場所を
通常アドレス指定できる16ビツトのアドレスを使
用するのは全く非効率的である。更に唯1つの8
ビツト・アドレスが256の場所をアドレス指定で
きるだけである。本発明は、前述の如く第2B図
の仮想アドレスの変更を可能にすることにより(b)
バイト103の最初の5ビツト8〜12により
768の場所のアドレス指定を可能にする。従つて、
サイクル時間および記憶スペースがこの短いアド
レス指定形態により節減されるのである。 第1C図においてページング信号ゼネレータ1
05のマツプが示される(即ち、ページング
PROM300)。このマツプは自明である。この
アドレス場所は最初の3欄の種々の番号系統で示
され、最後の欄はこのアドレス場所に記憶された
実際の情報を含んでいる。4番目の欄は同様な内
容の16進法の場所を表わす。 第2B図においては、仮想メモリーのため予約
されたメモリー201における256の記憶場所が
示される。第1の64の場所即ちバイトは10進法の
0乃至63および16進法の0乃至3Fで番号を付
され、CCPにより使用されるその時の回線の
LCTからなる。次の32の場所即ちバイト、即ち
10進法の場所64〜95および16進法の40〜5Fはそ
の時フアームウエアにより使用されるチヤネルの
LCTに対して予約される。10進法の96〜102およ
び16進法の60〜67で表わされる次の8つの場所即
ちバイトはその時のチヤネルのアクテイブ状態の
CCBのため予約される。この時使用されないス
ペースがあり、3つ即ち8バイトの場所がそれぞ
れその時の回線のUSARTおよびシヤドー
USARTと、その時のチヤネルのLCTの拡張部
のため予約されている。 典型例はいかにして本発明の改善されたアドレ
ス指定方法が作用するかを示す。従つて、仮想メ
モリー201の回線0の記憶場所5がアドレス指
定されるものと仮定しよう。その結果レジスタ1
03の(a)バイトのビツト0乃至7の全てが0とな
り、この状態がNORゲート104とページング
信号ゼネレータ105を駆動させる。次の5ビツ
ト8乃至12も又0となるが、ビツト13は1と
なり、ビツト14は0、ビツト15は1となつて
2進アドレス101即ち10進法の5を得る。仮想
アドレス106も又0に等しいビツト0乃至12
を有し、ビツト13は1、ビツト14は0、ビツ
ト15は1となる。しかし、更にレジスタ103
の(b)バイトのビツト8〜12が0であるから、制
御信号CPGLINはアクテイブ状態となる。(もし
ビツト8〜12がページング信号ゼネレータ10
5における最初の8ワードをアドレス指定するた
め使用されるならば、信号CPGLINがアクテイ
ブ状態即ちローになることは前に述べた)信号
CPGLINがアクテイブ状態であれば、仮想アド
レス106のビツト8および9はチヤネル・レジ
スタ114のビツトHおよびMによりそれぞれ置
換されることになる。回線0の記憶場所5をアド
レス指定すると言う最初の仮定にあつては、チヤ
ネル・レジスタ114のビツトHおよびMは0と
なり、従つて実アドレス107のビツト8および
9も又0となる。このように、最後の実アドレス
はビツト0〜12が0と等しく、ビツト13は
1、ビツト14は0、ビツト15は1となり、こ
うして実メモリーの回線0の5番目の場所をアド
レス指定する。 この問題を更に一歩進めて、次に回線1の5番
目の記憶場所がアドレス指定されるものと仮定す
る。レジスタ103と仮想アドレス106のビツ
ト内容は前の事例と同じになる。しかし、回線1
がこの時アドレス指定されるため、チヤネル・レ
ジスタ114はその上位ビツトHで0を、又次の
下位ビツトMにおいて1を有する。従つて、信号
CPGLINが一たんアクテイブ状態になる時(レ
ジスタ103の(b)バイトのビツト8〜12は全て
零である)、仮想アドレス106のビツト8は0
であるチヤネル・レジスタ114のビツトHによ
つて置換され、仮想アドレス106のビツト番号
9は、回線1がアドレス指定されつつあるため、
この事例では1であるチヤネル・レジスタ114
の中間ビツトMにより置換される。従つて、実ア
ドレス107はビツト0乃至8において零を有
し、ビツト9は1となり、ビツト10〜12は0
の侭であり、ビツト13は依然として1であり、
ビツト14は0、ビツト15は依然として1であ
る。従つて、16進数の場所45は回線1の第5の
記憶場所である実メモリーにアドレス指定され
る。この説明により、回線2又は回線3の記憶場
所5は、実アドレス107を得るため仮想アドレ
ス106のビツト8および9でチヤネル・レジス
タ114のビツトHおよびMを置換するだけで同
様にアドレス指定され得ることが容易に判る。 第3図においては、実アドレスへの仮想アドレ
スの改善されたマツピングのためのページング装
置の詳細な論理ブロツク図が示される。第1に、
第3図の種々の構成部が示され可能な場合第1A
図に結び付けられる構造説明を示し、第2に、第
3図の構成の作用は行われる種々の機能を示すた
め説明する。前述の第1A図から、ページング機
構はビツト4乃至12を変更するかあるいは与え
られた信号に従つて変更されずに最後の実アドレ
ス107を与えるため仮想アドレス様式106の
ビツト4乃至12を変更するように構成されるこ
とが判るであろう。第3図において、マルチプレ
クサ(MUX)302,303,304、および
ドライバ305が実アドレス107の変更された
ビツト8乃至12を表わす回線302A,303
A,304A,305Aおよび305Bにそれぞ
れ出力信号を与えることが判るであろう。マルチ
プレクサ(MUX)301およびドライバ308
は、変更された実アドレス107のビツト4乃至
7を表わす回線301A,308A,308Bお
よび308Cに出力信号を与える。レジスタ30
9は第1A図のレジスタ114と対応してビツト
H,M,Dを記憶し、これ等のビツトを回線30
9A,309B,309Cに出力信号として与え
る。レジスタ310は第1A図のCCBレジスタ
115と対応し、それぞれ回線310Aおよび3
10B上に出力信号としてαおよびβを与えて記
憶する。PROM300はページング信号ゼネレ
ータ105と対応する。前述の如く、この
PROMは仮想アドレス106を実アドレス10
7にマツピングするための種々の信号を与える。
PROM300のマツプは第1C図と対応する。
ドライバ305および306はANDゲート31
1Aと接続されて実メモリー・アドレス・ビツト
11および12を与える。レジスタ311は種々
の信号を記憶するために使用される。 これ等の各装置は、以下の表に示す如くその
一般的な表記に従つてTexas Instrument
Motorola Intelおよび他の半導体メーカから市
販されている。
組の装置要求に対する最優先順位を有する装置を
表示し、予め定めた時低い優先順位の装置で操作
されるチヤネル・プログラムを通知割込みするこ
とを高い優先順位の装置に許容する装置に関す
る。本発明は更に、多数の割込みルーチンのどれ
かの実行を指令するための多数の独自の機能コー
ドのアドレスを与えることができる割込みベクト
ルを使用するコンピユータ・プログラムの割込み
を行うためのアドレス指定装置に関する。 一般に、コンピユータ・システムは1つのプロ
セサおよび複数の入出力装置を含んでいる。多数
の装置が同時にプロセサによる操作を要求するこ
とがあるから、プロセサがある順序で入出力
(I/O)装置で操作できるように優先順位の1
つのシステムが確立されねばならない。 従来技術のシステムでは、精緻なハードウエア
技術、ハードウエア/フアームウエア技術、ソフ
トウエア技術等を含む種々の方法で優先順位の問
題を解決して来た。 優先順位を解決する装置に関するある典型的な
米国特許(必らずしも非常に近い従来技術ではな
いが)は下記の如くである。 (1) 1976年11月23日発行の米国特許第3993981号
「データ処理システムにおけるデータ転送要求
を処理する装置」 (2) 1977年1月4日発行の米国特許第4001783号
「優先順位割込み機構」 (3) 1977年6月7日発行の米国特許第4028684号
「プロセサに対し最優先順位チヤネルを有する
最優先順位処理のデータを割振る装置」。 これ等のシステムは大形のコンピユータ・シス
テム用として設計され、入出力装置の選択に対し
てハードウエアに関しても時間に関しても高価な
ものについた。又、構成された優先順位システム
は容易に変更できない。この問題は、入出力装置
が、各々が異なるモード即ち同期非同期モード
で、又異なるビツト速度で送受を行う能力を有す
る通信回線である時複雑化する。 複数の入出力システムで作用する計算装置にお
いては、データ・フローを制御するサブシステム
はチヤネル・プログラムで作用が可能で、マイク
ロプロセサ、および各々のサービス通信回線に対
する汎用同期非同期レシーバ・トランスミツタ
(USART)に限定するものではないがこれを含
む複数個の入出力装置を含み得る。マイクロプロ
セサは、例えば、チヤネル・プログラムにより作
用するUSARTを制御することもできる。もし更
に高い優先順位を有する別の通信回線がサービス
を要求するならば、マイクロプロセサは操作され
るチヤネル・プログラムに割込み、このチヤネ
ル・プログラムを要求側の通信回線で作用するよ
うに切換えねばならない。従来技術においては、
マイクロプロセサはメモリーに情報を記憶するこ
とによりチヤネル・プログラムに割込みを行う。
メモリーに記憶されたこの情報は、この割込まれ
た通信回線上でチヤネル・プログラムがサービス
を継続することを可能にする。この情報は、更に
高い順位の通信回線が割込みを行う時アンロード
され、高い順位の通信回線がデータ転送を完了し
てシステムが元の通信回線に戻る時再びロードさ
れねばならないシステム内の種々のレジスタの内
容からなる。この従来技術のシステムは、多量の
情報をロードしアンロードしなければならず、こ
のため操作を遅くすると言う短所を有する。第2
に、もしシステムにより要求されるならば割込み
を阻止することが難かしいこと、第3に、システ
ムの割込みを行つた通信回線の識別ができないこ
とである。 コンピユータ・プログラムの実行においては、
一般に、通常交互に生じる2つの位相がある。そ
の第1は、命令および(又は)オペランドが中央
プロセサに対して取出され、次に命令が実行され
る。取出し位相の間、プロセサは主記憶装置から
実行されるべき次の命令を取出して、これを指標
付け、間接アドレス指定および基底加算のための
これ以上の変更が必要に応じて行われる1つ以上
の制御レジスタに転送する。命令の実行位相の
間、プロセサは命令を復号し、この命令により指
定された操作が実行される。 大部分の記憶されたプログラム・デイジタルコ
ンピユータは、外部又は内部の信号からの要求と
同時に実行プログラムに割込みを行う何等かの手
段を有する。情報の入力又は出力のため、又は保
守、診断、平方根等の如き標準的なルーチンの実
施のためのあるルーチンの呼出しの如きコンピユ
ータ・プログラムへの割込みが必要となる理由は
種々ある。 最も簡単な割込み形態は、プログラムの次の順
次の命令で継続するのではなく実行されるべき次
の命令を得るためCPUを主記憶装置内の別の記
憶場所に行かせるHALT又はGOTOおよび
RETURNサブルーチンの如き停止又は分岐を生
じる命令を使用することである。しかし、新らし
いプログラム又はルーチンの実行の前に、プログ
ラム・カウンタ、アキユムレータ・レジスタ等の
如き間接的にアドレス指定可能なレジスタの内容
は、割込まれた地点において割込まれたプログラ
ムに対して制御が戻され得るように保持されねば
ならない。このため、プログラム・カウンタをア
ンロードし再ロードする際の余計な時間がかか
る。 条件付き割込み、優先順序割込み、入れ子割込
みの如くこの基本的な割込み機能に対しては多く
の変形例がある。典型的な従来技術による割込み
操作については下記の米国特許を参照されたい。 (1) 1965年12月28日発行のH.D.Wiseの米国特許
第3226694号「割込みシステム」 (2) 1968年10月29日発行のR.E.Packard等の米国
特許第3408630号「高速分岐操作を有するデイ
ジタル・コンピユータ」 (3) 1965年11月30日発行のR.Benghiatの「優先
順位割込みモニター・システム」 (4) 1972年9月19日発行のR.M.Spanglesの米国
特許第3693162号「電子計算機用のサブルーチ
ン呼出し/戻し装置」 (前記の参考文献は単なる例示であつて、これ
が本発明と最も近い従来技術であるとの推論はな
されるべきではない。) 一般に、命令とデータ・オペランドの両方が同
じ主記憶装置における種々のアドレス指定可能な
記憶場所における実行のために記憶される。更
に、命令はサブルーチンを構成するグループに分
類される。このため、特定の問題に対するサブル
ーチンが計算される時アドレスの記憶場所が前以
つて割当てられることを要する。更に、もしサブ
ルーチンが後で変更されるならば、プログラマは
メモリーの元の割当てのみならず後の変更をも記
録しておかねばならない。主記憶装置における実
際のアドレス場所に無関係にプログラミングを行
うためには、間接アドレス指定によらねばならな
い。指標レジスタによれば、データ又はプログラ
ムのグループは、プログラムがコンパイルされる
時にグループ内の各ワードに対して特定のアドレ
ス場所を割当てることなく使用され得る。絶対ア
ドレスは後で指令によつて照合される記憶場所に
挿入されるが、これはこのグループが主記憶装置
内の実行プログラムにより入れられる場所に従つ
て、プログラムが実行される毎に異なることがあ
り得る。このグループは多数の指令により間接的
にアドレス指定可能であるため、指令のアドレス
は変化せずに残り、このグループの絶対アドレス
はこのグループの記憶場所が変更されるならば変
更される。この技術は、一般に、メモリーにおけ
るオペランド又は命令ワードの代りにデイスクリ
プタとして知られる特殊なワードを必要とする。
ある命令が1つのオペランド・ワードをメモリー
から読出させる時、この命令は、1グループのワ
ードの基底アドレスを含み、更にオペランド・ワ
ードの代りにデイスクリプタ・ワードとしてこれ
を識別する情報と、命令又はデータのグループの
長さについての情報および指標付けが必要とされ
るかどうかを表示する情報を含むデータ・デイス
クリプタ・ワードを見出すことができる。(1976
年2月10日発行の米国特許第3938096号「主記憶
装置内のセグメントのアドレスおよびこのセグメ
ント内のオペランドの絶対アドレスを生成する装
置」参照。又、1965年12月7日発行の米国特許第
3222649号「間接アドレス指定を行うデイジタ
ル・コンピユータ」参照) 割込み操作においては主記憶装置内のどこでも
入れることができるグループにオペランド又は命
令をグループ化することが望ましいが、デイスク
リプタのアドレス又は他のタイプの間接アドレ
ス・ワードが固定されることも同様に望ましい。
これは、このようなワードを記憶するためのセグ
メント又は表として中央の場所を設けることによ
つて行うことができる。この技術は共に比較的遅
く、一方は指令によりデイスクリプタにアクセス
するため主記憶装置の何回かのアクセスを必要と
し、他方は表に記憶されたワードに対する指令又
は機能コードワードの比較を必要とする。更に、
これ等の技術は実質的な量の記憶スペースを必要
とする。マイクロプロセサが使用される場合、こ
のような記憶スペースおよび速度は特別のものと
なる。従つて、いくつかの予め定めた記憶場所の
どれかに対する指令によるハードウエア割込み技
術は迅速のものが必要とされ、プロセサおよび主
記憶装置の使用は極く少いものとなる。 本発明の主な目的は、1つのプロセサに対する
アクセスを要求する多数の装置即ち通信チヤネル
の優先順位を解決するための改善された機構の提
供にある。 本発明の別の目的は、更に高い優先順位の入出
力装置で操作する入出力装置で操作するチヤネ
ル・プログラムに通知割込みを行うための改善さ
れた機構の堤供にある。 本発明の目的は、コンピユータ・システムにお
いて実行するコンピユータ・プログラムに割込み
を行うための改善された機構の堤供にある。 本発明のコンピユータ装置は上記目的を達成す
るためチヤンネル番号信号及び機能コード信号を
含む入力/出力命令を発生する中央処理装置60
0と、記憶されている複数の割込みルーチンの一
つを識別するためのアドレス位置を示す上位バイ
ト信号及び下位バイト信号を有する複数の絶対ア
ドレス信号を記憶するメモリを有する複数の周辺
サブシステム620と、上記上位バイト信号及び
下位バイト信号を記憶するプログラムカウンタ6
01dを有するマイクロプロセツサと、前記複数
の割込みルーチンの一つを識別する前記アドレス
位置を選択するための多重ベクトル化割込み装置
とを備え、下記装置を更に有する。 (a) 前記中央処理装置及びマイクロプロセツサに
結合され、割込み信号を発生するための前記チ
ヤンネル番号信号に応答する第1の装置601
a、上記マイクロプロセツサは第1のアドレス
FFF8信号及び第2のアドレスFFF9信号を
発生するための前記割込み信号に応答する、 (b) 前記メモリ108及びマイクロプロセツサに
結合され、前記プログラムカウンタ601dの
上位バイト位置における記憶のため前記メモリ
から上位バイト信号を取り出すための第1のア
ドレス信号に応答する第2の装置105,60
1d、 (c) 上記第2の装置、マイクロプロセツサ及び中
央処理装置に結合され、前記プログラムカウン
タの下位バイト位置における記憶のため上記メ
モリから下位バイト信号を取り出すための基本
アドレス信号を発生するための前記機能コード
信号に応じて、前記第2のアドレス信号を変形
するための第2のアドレス信号に応答する第3
の装置380,601b,601d、 前記第2の装置は前記複数の割込みルーチンの
一つの第1のバイトを取り出すために前記プログ
ラムカウンタに記憶されている前記複数の絶対ア
ドレス信号の選択された一つに応答する。 上述した本発明の装置は多重化ベクトル割込み
のためのもので、この装置において、割込みの性
質をあらわす機能コードによつて達成される割込
み状態に応答して、割込みベクトルの夫々のバイ
トの二つのメモリアドレスが自動的に発生され
る。そのアドレスの一つは割込みベクトルの上位
バイトの検索を行う。他のアドレスは割込み状態
に対応する割込みベクトルの下位バイトを検索す
るため機能コードによつて変形される。 実行のプログラムに割込むためのハードウエア
機構は間接アドレス指定法を使用する。 主記憶装置における望ましい実施態様の予め定
めた記憶場所はそれぞれ割込みベクトルの上位と
下位のバイトを記憶する。割込みベクトルの上位
バイトを記憶する主記憶装置における記憶場所が
マイクロプロセサによつてアドレス指定される
時、マイクロプロセサのプログラム・カウンタの
上位の位置は割込みベクトルの上位バイトが設け
られる。しかし、割込みベクトルの下位バイトが
アドレス指定されると、アドレスのビツトは
CPUにおける異なるハードウエアに種々に与え
られ、これによりCPUの正規のアドレス指定機
構を禁止して間接アドレス指定機構を可能状態に
する。間接アドレス指定機構はマイクロプロセサ
のROM又はPROMにおける64の記憶場所の1つ
に選択されたアドレスを与える。この選択された
アドレスの内容は、マイクロプロセサのプログラ
ム・カウンタの下位バイトに入れられる第2のア
ドレスを提供し、このため割込みサブルーチンが
記憶される主記憶装置における所要の記憶場所の
絶対アドレスを与える。このように、64の割込み
サブルーチンのいずれも最小限度のスペース量で
迅速に呼出されることができる。 本発明による構成については添付図面に関して
例示として以下に説明する。 添付図面は、予め定めた規則に従つて多数の入
出力装置の優先順位を確立する装置を示す。プロ
グラム可能な読出し専用メモリー(PROM)3
84の集積回路は簡単な高速の優先順位リゾルバ
を可能にする。種々の入出力装置620はチヤネ
ル・プログラムによりマイクロプロセサで操作さ
れる。各入出力装置は、PROMのアドレス入力
ターミナルに対しその要求信号回線を接続させ
る。 例えば、回線0に対する汎用同期非同期レシー
バ/トランスミツタ(USART)116は、
PROM384の入力アドレス・ターミナル1お
よび2にそれぞれ接続された受取り要求信号回線
と送出要求信号回線を有する。回線1に対する
USART117は、PROMの入力アドレス・タ
ーミナル1,3,4に接続された受取りおよび送
出要求信号回線を有する。マイクロプロセサ要求
回線は、PROM384の入力アドレス・ターミ
ナルに接続される。又、入力アドレス・ターミナ
ルに与えられるのは、その時活動状態のチヤネ
ル・プログラム(図示も説明もしない)のチヤネ
ル番号を表わす信号である。PROM出力信号は、
通知割込みを行う入出力装置のチヤネル番号と、
更に高い優先順位の入出力装置がプログラムをア
クセスすることを要求することを表示する信号を
含んでいる。 当業者によれば判るように、ある特定の時点に
おいてチヤネル番号を要求する多くの装置および
このチヤネル番号で作用する特定の1の装置があ
る。この時のこれ等条件の各々は、特定の1つの
PROM記憶場所を選択する1つのPROMアドレ
ス信号に反映される。この記憶場所において恒久
的に固定されるのは1つのビツト形態で、これが
より高い優先順位を有する装置を表示し、その時
の装置がそのチヤネル・プログラム・ルーチンを
完了した時このチヤネル・プログラムに前記装置
が通知割込みするかどうかを表示する。 USARTに関するある典型的な状態は下記の如
く解明される。即ち、 もしUSART116と117が同時に動作する
ならば、受取り操作が優先する。 もし両回線が同期しなければ、USART0 1
16はUSART1 117に優先する。 マイクロプロセサ101について実行中の背景
プログラムはUSART0 116およびUSART
1 117の相方に優先する。 もしUSART0 116が送出し、USART1
117が受取り操作に対するチヤネル・プログ
ラムを要求すると、チヤネル・プログラムは、
USART0 116がUSART1 117よりも
高い優先順位を得た後USART−1 117をサ
ービスするため切換える。 本装置は、記憶する情報が非常に少ない時チヤ
ネル・プログラムにおけるある時点で異なる通信
回線に対してチヤネル・プログラムが実行するこ
とを割込ませるための装置を提供する。 マイクロプロセサのマイクロプログラム・サブ
ルーチンはアドレスBD4016(7E BD40)に対
する飛越しで終了する。アドレス信号BD4016
は、マイクロプロセサの割込み回線を駆動する
「リセツト割込みマスク」マイクロワードとして
マイクロプロセサによつて解釈される命令を含ん
でいる。もし未済の割込み要求がなければ、この
時プログラムはBD4116をアドレス指定するよ
うステツプする。このアドレス・バス上のBD4
1信号は、命令レジスタを駆動し、通常の記憶読
出しデータ経路110を禁止する。別の通信回線
がチヤネル・プログラムに割込みを行うことを要
求する時、命令レジスタに記憶されるノー・オペ
レーシヨン・マイクロワードNO OP0116がU
バス上に現われ、その結果マイクロプロセサがア
ドレスBD42を送出するが、これが割込み操作
の開始のためのサービス・ルーチンの開始であ
る。もし割込みが存在しなければ、「サブルーチ
ンからの戻り」マイクロワード3916がUバス上
に記憶され、その結果μPのその時のチヤネル番
号の実行に対する正規の戻りを生じる。 第1A図によれば、これも又改善されたアドレ
ス指定のための情報のフローおよびび変更を示す
本発明の望ましい実施態様の論理ブロツク図が示
される。マイクロプロセサ101は特に
Motorola Inc.から市販される6800タイプであ
り、主記憶装置108をアドレス指定するため16
ビツトのアドレス・バス102を使用する。これ
により、主記憶装置108の64000バイト以上の
アドレス指定能力を提供する。この命令の様式は
第1B図に示される。一方は8ビツトのOPコー
ドと8ビツトの(a)バイトを有し、他方は8ビツト
のOPコードと8ビツト(a)バイトと8ビツト(b)バ
イトを有する2つの様式がある。スペースおよび
サイクル時間を節約するため、(b)バイトのみを使
用することが更に有利である。従つて、第1A図
においては、レジスタ103は、ページング信号
ゼネレータ105をアドレス指定するため最初の
5つの上位ビツト8,9,10,11および12
を使用する。(このページング信号ゼネレータは、
Motorola Inc.により市販されるタイプ5610
の集積回路メモリーチツプである)このページン
グ信号ゼネレータ105は、(b)バイトのビツト8
〜12によりアドレス指定され得る32ワードを記
憶する。5ビツトがページング信号ゼネレータの
アドレス指定に使用されるため、これ等ビツトは
その32ワードのどれでもアドレス指定するため使
用できる。このゼネレータ105の内部回路は、
最初の8ワード(アドレス07迄)がアドレス指
定される時信号CPGLINが活動状態(即ち、ロ
ーになる)にさせられる如きものである。信号ゼ
ネレータ105の次の4ワードがアドレス指定さ
れる時(即ち、アドレス8〜11)、両信号
CPGLINおよびCPGDIRが活動状態にされる。
次の場所のワード13(即ち、アドレス12)が
アドレス指定される時、以降の信号は全て活動状
態になる(CPGLIN,CPGDIR,CPGCCBおよ
びCPGAD4はローになる)。ページング信号ゼネ
レータ105は、マイクロプロセサ101からの
ローの出力信号がそのE入力ターミナルに存在す
る時に駆動される。(a)バイトのその入力ビツト1
〜8の全てが0即ちローである時、ロー入力信号
はNORゲート104の出力側からページング信
号ゼネレータ105のE入力ターミナルに与えら
れる。(a)バイトのこれ等のビツト1〜8は、(a)お
よび(b)バイトにより与えられる16ビツト・アドレ
スを変更することが望まれる時に0にされる。従
つて、(a)バイトの全てのビツトが0である時、ペ
ージング信号ゼネレータ105のE入力ターミナ
ルに与えられるNORゲート104の出力側でロ
ーの信号が生じてこれを駆動する。ページング信
号ゼネレータ105が駆動される時、制御信号場
所105aの1つは(b)バイトのビツト9〜13に
よりアドレス指定され、ローになることにより駆
動される。これ等の制御信号105aの1つが活
動状態(即ち、ロー)になる時、16ビツトの仮想
アドレス106が実アドレス107に変更され、
これが次に主記憶装置108をアドレス指定す
る。もし制御信号105aのどれも活動状態でな
ければ、16ビツト・アドレス106は16ビツト・
アドレス107と同じであり、メモリー108の
アドレス指定に対する変更は生じない。(この変
更を行う機構については第3図に関連して詳細に
論述する)従つて、制御信号CPGCCBが活動状
態にあるものとすれば、仮想アドレスのビツト1
1はCCBレジスタ115の位置αにおけるビツ
トで置換され、ビツト12はCCBレジスタ11
5におけるビツトβにより置換されて実アドレス
を形成する。もし制御信号CPGDIRが活動状態
にあれば、仮想アドレスのビツト10はチヤネ
ル・レジスタ114のビツトDにより置換され
る。もし制御信号CPGLINが活動状態にあれば、
仮想アドレスのビツト9がCHレジスタ114の
ビツトMにより置換され、仮想アドレスのビツト
8はCHレジスタ114のビツトHにより置換さ
れる。もし制御信号CPGAD8が活動状態にある
ならば、仮想アドレスのビツト7は1で置換され
る。最後に、もし信号CPGAD4が活動状態であ
れば、仮想アドレスのビツト4,5,6は1で置
換される。 CESU2U信号は、選択された汎用同期非同期
レシーバ/トランスミツタ(USART)116,
117をアドレス指定するため使用される。
(USARTは、Tevas Instrument Co.から市販さ
れタイプ74LS−245である)CEIO2U制御
信号は両方向バス・ドライバ111を介してIバ
ス113を駆動する。(これ等の両方向バス・ド
ライバは、Texas Instrument Co.から市販され
るタイプ74LS245である)CEIO2U信号は
Iバス113からUバス112に対する通信を許
容し、CEU2IO信号はUバス112からIバス
113への通信を許容する。Iバスは、通信情報
を記憶するため種々のレジスタを取付けられてい
る。その典型的なレジスタとしては、上位デー
タ・レジスタ120、下位データ・レジスタ12
1、チヤネル番号レジスタ122、状態レジスタ
123がある。これ等のレジスタは、Iバス11
3およびUバス112を介してマイクロプロセサ
と通信し、Iバス113およびMバス109を介
して主記憶装置108と通信する。Iバス113
上の種々の付属部材が主記憶装置108とマイク
ロプロセサ101と通信するためには、通信ポー
トと関連する種々の回線およびチヤネルに対して
主記憶装置におけるスペースを割当てることが必
要である。従つて、第2A図によれば、実メモリ
ー200がその領域の一部を回線0〜3に対して
予約されることが判るであろう。各回線は64バイ
トからなり、4回線0〜3の全ては論理表
(LCT)スペースからなる。更に各回線0〜3は
各々32バイトの2チヤネルに再分割される。従つ
て、各々がLCTスペースからなる64バイトの4
回線からなる32バイトの8チヤネルがある。次の
256バイトがチヤネル指令プログラム(CCP)の
用途のために予約される。又3K乃至4Kのバイト
があり、これは使用されないスペースと共にチヤ
ネル指令プログラム(CCP)のため予約される。
このスペースの下方には、チヤネル制御ブロツク
(CCB)に予約された別の256バイトがある。
LCTスペースの場合と同様、各回線0〜3は64
バイトの1つのCCBと関連し、このバイトは
各々32バイトの2チヤネルに再分割される。この
下方にはフアームウエア作業スペースとして予約
された記憶スペースがある。従つて、各回線0〜
3は1つのLCTスペースおよび1つのCCBスペ
ースと関連し、その各々は2つのチヤネルに再分
割される。第1A図により前に述べたアドレス指
定機構の一部はこれ等記憶スペースの全てをアド
レス指定する。しかし、これを行うためには、ノ
アドレス・バイトが8ビツトからなり8ビツトは
僅かに256の場所をアドレス指定できるだけであ
るため、2つのアドレス・バイトaとbを要す
る。更に第2A図から判るように、3K/4Kの場
所を除いて768の場所(3×256)がある。これ等
の256の場所は、回線0〜3の通信が常にその
LCT、CCBおよびフアームウエアを伴わねばな
らないため最も瀕繁にアドレス指定される。単に
768の場所をアドレス指定する64000以上の場所を
通常アドレス指定できる16ビツトのアドレスを使
用するのは全く非効率的である。更に唯1つの8
ビツト・アドレスが256の場所をアドレス指定で
きるだけである。本発明は、前述の如く第2B図
の仮想アドレスの変更を可能にすることにより(b)
バイト103の最初の5ビツト8〜12により
768の場所のアドレス指定を可能にする。従つて、
サイクル時間および記憶スペースがこの短いアド
レス指定形態により節減されるのである。 第1C図においてページング信号ゼネレータ1
05のマツプが示される(即ち、ページング
PROM300)。このマツプは自明である。この
アドレス場所は最初の3欄の種々の番号系統で示
され、最後の欄はこのアドレス場所に記憶された
実際の情報を含んでいる。4番目の欄は同様な内
容の16進法の場所を表わす。 第2B図においては、仮想メモリーのため予約
されたメモリー201における256の記憶場所が
示される。第1の64の場所即ちバイトは10進法の
0乃至63および16進法の0乃至3Fで番号を付
され、CCPにより使用されるその時の回線の
LCTからなる。次の32の場所即ちバイト、即ち
10進法の場所64〜95および16進法の40〜5Fはそ
の時フアームウエアにより使用されるチヤネルの
LCTに対して予約される。10進法の96〜102およ
び16進法の60〜67で表わされる次の8つの場所即
ちバイトはその時のチヤネルのアクテイブ状態の
CCBのため予約される。この時使用されないス
ペースがあり、3つ即ち8バイトの場所がそれぞ
れその時の回線のUSARTおよびシヤドー
USARTと、その時のチヤネルのLCTの拡張部
のため予約されている。 典型例はいかにして本発明の改善されたアドレ
ス指定方法が作用するかを示す。従つて、仮想メ
モリー201の回線0の記憶場所5がアドレス指
定されるものと仮定しよう。その結果レジスタ1
03の(a)バイトのビツト0乃至7の全てが0とな
り、この状態がNORゲート104とページング
信号ゼネレータ105を駆動させる。次の5ビツ
ト8乃至12も又0となるが、ビツト13は1と
なり、ビツト14は0、ビツト15は1となつて
2進アドレス101即ち10進法の5を得る。仮想
アドレス106も又0に等しいビツト0乃至12
を有し、ビツト13は1、ビツト14は0、ビツ
ト15は1となる。しかし、更にレジスタ103
の(b)バイトのビツト8〜12が0であるから、制
御信号CPGLINはアクテイブ状態となる。(もし
ビツト8〜12がページング信号ゼネレータ10
5における最初の8ワードをアドレス指定するた
め使用されるならば、信号CPGLINがアクテイ
ブ状態即ちローになることは前に述べた)信号
CPGLINがアクテイブ状態であれば、仮想アド
レス106のビツト8および9はチヤネル・レジ
スタ114のビツトHおよびMによりそれぞれ置
換されることになる。回線0の記憶場所5をアド
レス指定すると言う最初の仮定にあつては、チヤ
ネル・レジスタ114のビツトHおよびMは0と
なり、従つて実アドレス107のビツト8および
9も又0となる。このように、最後の実アドレス
はビツト0〜12が0と等しく、ビツト13は
1、ビツト14は0、ビツト15は1となり、こ
うして実メモリーの回線0の5番目の場所をアド
レス指定する。 この問題を更に一歩進めて、次に回線1の5番
目の記憶場所がアドレス指定されるものと仮定す
る。レジスタ103と仮想アドレス106のビツ
ト内容は前の事例と同じになる。しかし、回線1
がこの時アドレス指定されるため、チヤネル・レ
ジスタ114はその上位ビツトHで0を、又次の
下位ビツトMにおいて1を有する。従つて、信号
CPGLINが一たんアクテイブ状態になる時(レ
ジスタ103の(b)バイトのビツト8〜12は全て
零である)、仮想アドレス106のビツト8は0
であるチヤネル・レジスタ114のビツトHによ
つて置換され、仮想アドレス106のビツト番号
9は、回線1がアドレス指定されつつあるため、
この事例では1であるチヤネル・レジスタ114
の中間ビツトMにより置換される。従つて、実ア
ドレス107はビツト0乃至8において零を有
し、ビツト9は1となり、ビツト10〜12は0
の侭であり、ビツト13は依然として1であり、
ビツト14は0、ビツト15は依然として1であ
る。従つて、16進数の場所45は回線1の第5の
記憶場所である実メモリーにアドレス指定され
る。この説明により、回線2又は回線3の記憶場
所5は、実アドレス107を得るため仮想アドレ
ス106のビツト8および9でチヤネル・レジス
タ114のビツトHおよびMを置換するだけで同
様にアドレス指定され得ることが容易に判る。 第3図においては、実アドレスへの仮想アドレ
スの改善されたマツピングのためのページング装
置の詳細な論理ブロツク図が示される。第1に、
第3図の種々の構成部が示され可能な場合第1A
図に結び付けられる構造説明を示し、第2に、第
3図の構成の作用は行われる種々の機能を示すた
め説明する。前述の第1A図から、ページング機
構はビツト4乃至12を変更するかあるいは与え
られた信号に従つて変更されずに最後の実アドレ
ス107を与えるため仮想アドレス様式106の
ビツト4乃至12を変更するように構成されるこ
とが判るであろう。第3図において、マルチプレ
クサ(MUX)302,303,304、および
ドライバ305が実アドレス107の変更された
ビツト8乃至12を表わす回線302A,303
A,304A,305Aおよび305Bにそれぞ
れ出力信号を与えることが判るであろう。マルチ
プレクサ(MUX)301およびドライバ308
は、変更された実アドレス107のビツト4乃至
7を表わす回線301A,308A,308Bお
よび308Cに出力信号を与える。レジスタ30
9は第1A図のレジスタ114と対応してビツト
H,M,Dを記憶し、これ等のビツトを回線30
9A,309B,309Cに出力信号として与え
る。レジスタ310は第1A図のCCBレジスタ
115と対応し、それぞれ回線310Aおよび3
10B上に出力信号としてαおよびβを与えて記
憶する。PROM300はページング信号ゼネレ
ータ105と対応する。前述の如く、この
PROMは仮想アドレス106を実アドレス10
7にマツピングするための種々の信号を与える。
PROM300のマツプは第1C図と対応する。
ドライバ305および306はANDゲート31
1Aと接続されて実メモリー・アドレス・ビツト
11および12を与える。レジスタ311は種々
の信号を記憶するために使用される。 これ等の各装置は、以下の表に示す如くその
一般的な表記に従つてTexas Instrument
Motorola Intelおよび他の半導体メーカから市
販されている。
【表】
再び第3図に関して、仮想アドレスの実アドレ
スへの改善されたマツピングのためのページング
装置の作用および機能について更に詳細に説明す
る。第1A図に関して既に述べたように、
PROMチツプ300のアドレス0乃至7がアド
レス指令される時、通信ページング回線信号
(CPGLIN)はローになることによりアクテイブ
状態になる。このことは第3図のページング
PROMアツプで示されるが、最初の8位置にお
けるマツプの内容は01111111である。ビツト位置
7は0即ちローであり、これが信号CPGLINを
アクテイブ状態にする。次にこの信号はそれぞれ
マルチプレクサ(MUX)302および303の
入力ターミナル2agおよび2ahに与えられる。
マルチプレクサ302と303の入力ターミナル
1agおよび1ahに対する他の入力制御信号はそ
れぞれ論理値1(LOGIC1)信号であり、これ
は常にハイにワイアドされる。信号CPGLINが
アクテイブの状態である時(即ち、ローの状態に
ある時)、これはマルチプレクサ302の入力タ
ーミナル1agおよび1ahをそれぞれアドレス指
定し、このことは入力ターミナル1gおよび1h
の信号はそれぞれ回線302Aおよび303A上
で出力として通過する。マルチプレクサ302の
入力ターミナル1gの再びソースに対する信号
(CPGCNH)によれば、この信号はチヤネル・
レジスタ309の回線309A上の上位ビツトか
ら生じることが判る。そのソースに戻るMUX3
03の入力ターミナル上の入力信号(CPGCNL)
によれば、これが中間順序の出力回線309Bか
ら生じることが判る。これ等は第1A図のチヤネ
ル・レジスタ114のビツトHおよびMと対応す
る。従つて、回線ページング信号(CPGLIN)
がアクテイブ状態である時、レジスタ114、3
09のHおよびMビツトはそれぞれ出力回線30
2A,303A上の仮想アドレス・ビツト8およ
び9と代替される。逆に、回線ページング信号
(CPGLIN)がアクテイブ状態でない(即ち、ハ
イ)時、仮想アドレスのアドレス・ビツト8と9
は変更されずに、それぞれMUX302と303
の出力回線302Aと303Aに対する如く通さ
れる。この状態になるのは、信号CPGLINがハ
イでありLOGIC1が常にハイである時アドレス
3gと3hの10進数(2進数の11)がMUX3
02と303においてそれぞれアドレス指定され
るためである。MUX302の入力アドレス3g
は、マイクロプロセサ・ビツト8の通信アドレス
と解釈されるCADU08である。MUX303の
入力アドレス3hは、通信アドレス・マイクロプ
ロセサ・ビツト9として解釈されるCADU09
である。入力ターミナル3gと3hがアドレス指
定される時、これはアクテイブ状態となつて、こ
のターミナル上のアドレスがMUX302と30
3の出力回線302Aと303Aに通ることを許
容する。 PROMチツプ300からの仮想アドレス10
6を変更するための次の制御ビツトは方向性のあ
るビツト(CPGDIR)である。この方向性ビツ
トは、チヤネル・レジスタ309の回線309C
上のチヤネル・レジスタ114における下位ビツ
トDである。この方向性ビツトは、PROM30
0のアドレス8,9,10および11(10進数)
がアドレス指定される時アクテイブ状態になる
(第1C図参照)。更に、これ等ビツト8―11が
アドレス指定される時、出力信号CPGLINも又
アクテイブ状態になる。従つて、MUX302お
よび303に対するCPGLIN信号の付与の外に、
MUX301と304の入力ターミナル1aおよ
び1aiに対してそれぞれ信号CPGDIRの付与が行
われる。MUX304の入力ターミナル1の信号
CPGDIRがアクテイブでない即ちローの状態で
あれば、MUX304の入力ターミナル2ai上の
入力信号CPGAD8がハイとローのいずれの状態
であつても入力ターミナル0b又は2b(2進ア
ドレス0又は11)のいずれかがアクテイブ状態
化され信号CPGCND信号がこれ等両アドレスに
与えられるため、前記入力信号CPGAD8がハイ
かローかは何等の相違を生じない。CPGCND信
号の出所は、チヤネル・レジスタ114と309
のDビツトであるチヤネル・レジスタ309の出
力回線309Cからである。従つて、方向性ビツ
トCPGDIRがアクテイブ状態化されると、仮想
アドレス106の数10(10進数)ビツトはチヤネ
ル・レジスタ114又は309のDビツトの内容
に従つて変更される。信号CPGAD8も又アクテ
イブ状態化されなければ、MUX301の入力タ
ーミナル1dの信号CPGDIRの作用は生じない。
これは、信号CPGAD8がアクテイブ状態でない
即ちハイであれば、MUX301のアドレス2e
又は3e(2進数10又は11)のみがアドレス指定
でき、これ等は共に同じでマイクロプロセサの通
信アドレスのビツト7を表わすためにそうなるの
である。しかし、PROM300からのCPGAD8
信号も又アクテイブ状態化される(即ち、ロー)
時、MUX301のアドレス0e又は1e(2進
数00又は01)のみがアドレス指定されてアクテイ
ブ状態化され、これ等のアドレスは論理1の
LOGIC1を与えられるが、これ等は両信号
CPGAD8とCPGDIRがアクテイブ状態となるか
あるいはCPGAD8がアクテイブ状態となる時だ
けMUX301の出力回線301Aに通ることを
許容される。 従つて、信号CPGAD8がアクテイブ状態にさ
れると、仮想アドレスのビツト7が変更されて1
に強制される。 第1A図に関して既述した如く、チヤネル・レ
ジスタ・ビツト(CPGCCB)がアクテイブ状態
即ちローとなる時、仮想アドレス106のビツト
11および12はレジスタ115のチヤネル回線
αおよびβが入れられる。第3図のレジスタ31
0がチヤネル・レジスタ115と対応し、出力回
線310AのビツトCPGCCHはチヤネル・レジ
スタ115のαビツトと、出力回線310Bのビ
ツトCPGCCLはレジスタ115のβビツトと対
応するため、信号CPGCCBがアクテイブ状態即
ちローとなる時これ等ビツトが仮想アドレスのビ
ツト11と12を置換する。これがいかにして生
じるかを考えてみよう。信号CPGCCBはアクテ
イブ状態化されると、ドライバ306の11入力
ターミナルおよびANDゲート311Aの1ター
ミナルに与えられる。従つて、ドライバ306は
駆動され、出力回線310Aおよび310Bのチ
ヤネル制御ビツト信号CPGCCHおよびCPGCCL
はドライバ306のターミナル1hおよび0hに
それぞれ与えられ、ドライバ306の出力回線3
06Aおよび306Bに送られて、仮想メモリ
ー・アドレスのビツト11および12を置換す
る。ドライバ306の入力ターミナル1に与えら
れる信号CPGCCBはローの時にドライバ306
を駆動するが、ドライバ305の入力ターミナル
19に与えられる同じ信号はドライバ305の動
作を禁止することに注目すべきである。従つて、
ドライバ305の入力ターミナル24と25のそ
れぞれのCADU信号はドライバ305の出力タ
ーミナル305Aと305Bには通されないが、
前述の如くチヤネル・レジスタ310によつて置
換されるのである。そのため、ドライバ306又
は306(両方ではなく)が駆動され、チヤネ
ル・レジスタ・ビツトのいずれかがドライバ30
6を経て送られ、あるいはマイクロプロセサ・ア
ドレス・ビツトがドライバ305を介して出力側
に送られることが判る。 最後に、仮想アドレス変更については、ビツト
4,5,6の変更について述べる。第1A図に関
して既に述べたように、この変更は信号CPGAD
4を経て行われる。ページング信号ゼネレータの
アドレス12(10進数)がアドレス指定される
と、その後の全信号がアクテイブ状態になる。即
ち、CPGLIN,CPGDIR,CPGCCBおよび
CPGAD4である。このことは、アドレス12
(10進数)が00001111以降を含む第1C図により
判る。従つて、第1A図の照合番号105からビ
ツト位置4,5,6,7がロー即ちアクテイブ状
態であり、これ等ビツト位置はそれぞれ信号
CPGAD4,CPGCCB,CPGDIRおよび
CPGLINを対応する。最初の3信号がアクテイ
ブ状態である時いかにしてこれ等の3信号が仮想
アドレスを変更するかについては既に示したが、
ここで信号CPGAD4がいかにして仮想アドレス
を変更して仮想アドレスのビツト4,5,6に1
を強制するかについて示される。信号CPGAD4
はドライバ308の駆動ターミナルに与えられ
る。ドライバ308が駆動される(即ち、ロー)
時は1がビツト4,5,6に対してそれぞれ強制
され、もし駆動されずハイであれば、ビツト番号
4,5,6上のマイクロプロセサ・アドレス
CADUは通過する。その理由は、ドライバ30
8が与えられた信号に対してレジスタをプル・ア
ツプした3状態回路(LS241として市販)で
あるためである。従つて、もしCPGAD4の如き
ローの信号が与えられれば、ドライバ308を駆
動せず出力信号は+5ボルト迄プル・アツプされ
てこれを論理値1にする。一方、信号CPGAD4
がアクテイブ状態でなくハイであれば、ドライバ
308を駆動してドライバ308の入力ターミナ
ル1K,2Kおよび3K上のアドレス信号をそれ
ぞれ許容する。 第1A図のページング信号ゼネレータ105許
りでなく第3図のその相等PROM300もメモ
リー109を更に効率的にアドレス指定できる
が、このPROMは更に、主記憶装置108、マ
イクロプロセサ101およびIバスおよびUバス
に取付けられた種々のレジスタおよび周辺装置の
間に更に有効なアドレス指定および通信を行う信
号を生成する。UバスおよびIバスを用いるレジ
スタ・メモリーからレジスタの如き種々の装置間
のこの通信は信号CEU2IOをアクテイブ状態化
することにより開始される(即ち、信号CEU2
IOはローであつて第1C図において零で表示さ
れるれる)。信号CEU2IOはページング信号ゼネ
レータ105上のビツト位置番号1であることに
注目すべきである。ページング信号ゼネレータ1
05とその相等PROM300のマツプである第
1C図においては、ビツト位置番号1に零が記憶
される3つのアドレスがあり、これ等は10進数の
記憶場所18,21および22、即ち仮想アドレ
スの16進数の場所90、A8およびB0であるこ
とに注目すべきである。従つて、ページング信号
ゼネレータ105又はPROM300のこれ等の
場所のいずれかがマイクロプロセサ101により
アドレス指定される時、信号CEU2IOがアクテ
イブ状態即ちローとなる。信号CEU2IOは通信
プロセスを開始し、第1A図のバス・ドライバお
よび第7図の711Aの駆動状態を制御する。こ
れは又、第4図のANDゲート354に対して1
入力として与えられ、このデータがバス上で妥当
となつた後パルス・アウトを保証する。 第3図および第4図においては、Iバス・ドラ
イバ711AをしてデータをUバスからIバスに
駆動させ、チヤネル・レジスタ114、CCBレ
ジスタ115又はSレジスタ123Aのいずれか
に書込ませることが望ましい時、信号CEU2IO
がPROM300のビツト位置1で生成される。
第4図においては、信号CEU2IOがANDゲート
354の1入力ターミナルに与えられてストロー
ブ信号CTPHZDでANDされて出力側および
ANDゲート354で信号CEU2IO―10を生じ
ることが判る。又、デコーダ355の入力ターミ
ナル20Aおよび10Aにそれぞれ与えられるの
は通信アドレス装置のアドレス103のビツト1
0および11である。この時これ等のビツトはデ
コーダ355の出力ターミナル上の4信号の1つ
をアクテイブ状態にするよう復号される。デコー
ダ355の入力ターミナル20および10のビツ
ト10および11がそれぞれ10即ち2進化10進数
3である時、出力信号CEU2IO―A2が駆動さ
れてデコーダ357の駆動ターミナルに与えられ
る。更に、通信アドレス装置のビツト13と14
(即ち、信号CADU13およびCADU4)はデコ
ーダ357の入力ターミナル2PAおよび1PAに
それぞれ与えられる。これ等の両ビツト13と1
4が0である時、デコーダ357の出力ターミナ
ル零が駆動され、信号CEI2CNがアクテイブ状
態化されて第1A図のチヤネル・レジスタ114
および第3図の309への書込みのため使用され
る。一方、もしビツト13および14がそれぞれ
0および1であり、信号CADU13および
CADU14としてデコーダ357の入力ターミ
ナル2PAおよび1PAにそれぞれ与えられるなら
ば、デコーダ357の01出力ターミナルは駆動さ
れ、信号CEI2CBがアクテイブ状態となつて第
1図のCCBレジスタ115と第3図の310を
アドレス指定するため使用される。最後に、もし
デコーダ357の入力ターミナル2PAおよび1
PAの信号CADU13およびCADU14としてそ
れぞれ与えられるビツト13と14が1および0
即ち10進数の2であれば、デコーダ357の02出
力ターミナルは駆動状態となり、信号CEI2SR
はアクテイブ状態となつてSレジスタ123Aを
アドレス指定するため使用される。このように、
信号CEU2IOはバス・ドライバ111およびア
ドレス・レジスタ114,115,123Aを駆
動するため使用される。従つて、マイクロプロセ
サ101が書込み命令を実行してこれに指令して
マイクロプロセサのアキユムレータを16進数の場
所A8に書込ませる時、マイクロプロセサはマイ
クロプロセサのアキユムレータの内容をUバス上
におき、バス・ドライバ111を書込み方向に駆
動し、これは次に適当なレジスタ・アドレスにス
トローブされる。 書込み命令が実行中であつて情報がIバス上の
レジスタのどれかに書込まれつつある時、第1A
図のバス・ドライバ110も又Mバス109を駆
動状態にし、アドレス・レジスタに書込まれる同
じ情報も又アドレス指定されるメモリー108の
セクシヨンに書込まれる。(第2A図および第2
B図も参照されたい)バス・ドライバ110は信
号CEMB2Uがないことにより駆動され、メモ
リー108の方向にMバスを駆動する。従つて、
レジスタに書込まれた情報も又、診断およびデバ
ギングのための情報を保持する「シヤドー・メモ
リー」に書込まれ、遠隔の保守が行われる時デー
タを保持する場所を提供する。 IバスからUバスに対してデータを読出す際、
MバスからUバスに対するデータの転送を禁止す
ることが必要である。これはIバスがUバスに対
するデータを制御することを許容する。この機能
は、ページング信号ゼネレータ105に信号CEI
02Uを生成することにより行われる。この信号
は次に第4図のデコーダ351の駆動ターミナル
に与えられ、同時にアドレス103のビツト9お
よび10は信号CADU09およびCADU10と
してそれぞれ入力ターミナル2Kおよび1Kに与
えられる。これ等の信号は第1の復号レベルを受
けて、入力ビツト9および10がそれぞれ0およ
び1である時、デコーダ351の出力ターミナル
01上に出力信号CEI02U―A1を与える。こ
の時信号CEI02U―A1は、それぞれ入力ター
ミナル2LAと1LAのビツト14と15と共にデ
コーダ352の駆動された入力ターミナルに与え
られる。ビツト14と15の2進数値に従つて、
4つのサブ指令信号の1つがエンコーダ352の
出力ターミナルに生成される。ビツト14と15
が0の値(仮想メモリー・スペースにおけるアド
レス指定場所16進A8と等しい)を有する時、
サブ指令CEDH2I―00がデコーダ352の00
出力ターミナルにおいて生成される。この信号は
次にレジスタ360の駆動ターミナルに与えられ
る。レジスタ360は第1A図の上位データ・レ
ジスタ120と対応する。従つて、信号CEI02
Uは、データの上位レジスタ120からIバスお
よびUバスへの読出しのための手段を提供する。
しかし、バス・ドライバ110は信号CEMB2
Uの存在により禁止されるため、アドレス103
によりアドレス指定されたメモリーは読出され
ず、上位レジスタ120のみが読出される。同様
に、ビツト14および15がそれぞれ01であつ
てこれによりデコーダ352の出力ターミナル0
1をアドレス指定する時、下位データ・レジスタ
121が読出される。従つて、信号CEDL2I―
00が生成されて第4A図のレジスタ361の駆
動ターミナルに与えられる。このように、第4A
図のレジスタ360および361は第1A図のレ
ジスタ120と121にそれぞれ対応する。 第1A図のバス・ドライバ110は第4B図の
ドライバ370と対応する。これは両方向のドラ
イバであつて、記憶バス109からUバス112
へ、あるいはその逆にデータを駆動することがで
きる。データ転送の方向は信号CEMB2Uによ
つて制御される。この信号が生じる時はデータは
記憶バス109からマイクロプロセサ・バス11
2に流れさせられ、信号がない時は反対方向のデ
ータ転送が許される。信号CEMB2Uは第4図
のANDゲート371および372を介して生成
される。これ等のANDゲートは、マイクロプロ
セサ読出しCUREAD、ストローブ信号CIPHZ2
および通信駆動信号CESR2UおよびCEIN2U
の如き種々の信号の簡単なAND操作を表示する。
これ等はCEMB2U信号を生成し、次にANDゲ
ート371の1入力ターミナルに与えられる。I
バスからUバスへの転送操作が行われる時、換言
すればレジスタからの読出し操作がIバスからU
バスに行われる時、この信号はANDゲート37
1の入力側でハイとなり、もし残りの信号がハイ
であれば信号CEMB2Uがハイとなることに注
目すべきである。このハイの信号が第4B図のド
ライバ370の入力ターミナルに与えられる時、
Iバスからバス・ドライバ110を経てMバスに
至る情報の流れを禁止することになる。 次に第1A図、第1C図、第4図においては、
USART116および117のアドレス指定操作
が示される。このアドレス指定手順を開始する信
号CESU2Uは第1A図のページング信号ゼネレ
ータからのビツト3として生じる。第1C図か
ら、ビツト番号3の0を含む唯一のアドレスは16
進数88であることが判る。従つて、この場所がア
ドレス指定される時、ビツト0,3,4および7
がアクテイブ状態になる。前述の如く、ビツト3
は第4図のデコーダ350Aの駆動ターミナルに
与えられる信号CESU2Uを与え、チヤネル番号
CPGCNLの中間ビツトの復号操作に関与する。
このビツトの値に従つて、デコーダ35Aの出力
ターミナル0と1の2つの出力信号CEOU2Uお
よびCE1U2Uはそれぞれアクテイブ状態とな
る。信号CEOU2Uがアクテイブ状態である時、
USART116が駆動され、CE1U2Uがアク
テイブ状態であればUSART117が駆動され
る。情報が駆動USARTに書込まれる時、これは
又アドレス103によりアドレス指定されるメモ
リーの前記部分に書込まれる。このタイプの2重
アドレス指定は、同じ物理的アドレスに変換され
て実際にアドレス指定される物理的装置の複写ア
ドレス即ちシヤドーを与える2つの仮想アドレス
を使用する。例えば、適当なUSARTに対して1
つの駆動信号を与えるこことにより、いかにして
16進数88のアドレスが物理的USARTをアドレス
指定するかを示した。再び第1C図においては、
16進アドレスC8が1つの点を除いて16進アドレ
ス88と同じ2進マツプを有すること、および16
進アドレス88のビツト番号3が0即ちアクテイ
ブ状態であるが16進アドレスC8のビツト3は1
即ちアクテイブ状態でないことが判るであろう。
従つて、第3のビツトを除いて、16進アドレス8
8が16進アドレスC8と同じ信号を生じ、従つて
アドレスC8は信号CESU2Uが16進アドレス8
8で与えられる時アドレス指定される特定の
USARTのシヤドーと考えることができることが
判る。従つて、16進アドレス88即ち10進数17が
実際のUSARTデータをアドレス指定するが、16
進アドレスC8即ち10進数25はそのシヤドーをア
ドレス指定することが判る。従つて、16進アドレ
ス88に書込みを行う場合は、書込みはUSART
において前述の原理に従つて記憶スペース16進数
C8によりアドレス指定される適当な記憶スペー
スに対して行われる。典型例によりいかにしてこ
れが行われるかを考察しよう。第1に、ページン
グ信号ゼネレータ105の10進数の場所17をアド
レス指定する。アドレス書式103を用いればア
ドレスは下記の如くとなる。即ち、0000000―
010001000である。実際のアドレス指定を行うビ
ツト8乃至12は2進様式においては10進数17を
含むことに注意すべきである。第1C図におい
て、10進数の場所17はビツト0,3,4および
7をアクテイブ状態にすることが判る。ビツト0
はページング信号ゼネレータ105において信号
CPGAD8を生じ、この信号はアクテイブ状態の
時ビツト7を1に強制する。ビツト3は、
USARTをアドレス指定し仮想アドレスの実アド
レスへの変更には関与しない信号である。ページ
ング信号ゼネレータのビツト4はCPGAD4であ
り、これがアクテイブ状態の時、ビツト4,5お
よび6を1に強制する。最後に、ページング信号
ゼネレータ105のビツト7は、アクテイブ状態
の時に信号CPGLINを与えてビツトおよびチヤ
ネル・レジスタの中間ビツトを実アドレスのビツ
ト位置8および9に強制する。本例の目的のため
にこれ等のビツト位置が0であると仮定すれば、
ビツト8および9は0となり最後の実アドレスは
000011110000000となる。この時10進アドレス2
5がアドレス指定されると、アドレス様式103
は0000000011001000の形態となる。再び第1C図
から、下記信号はアクテイブ状態のCPGAD8
CPGAD4およびCPGDINとなることが判る。こ
れも又前例において存在した信号CESU2Uはア
ドレスの変更には関与しなかつたので、その結果
生じる最後の実アドレスは下記の如く前のアドレ
スと同じになる。即ち、000011110000000である。
従つて、同じアドレスがメモリーにおいてアドレ
ス指定されることが判る。従つて、遠隔の保守又
は診断操作が要求される時、実USARTではなく
シヤドー・メモリーがアドレス指定され得る。こ
の同じ原理がIバスに付属される他の周辺装置又
はレジスタにも妥当する。 USART―チヤネル・レジスタ又はチヤネル制
御ブロツク・レジスタ等の如き1つのハードウエ
アをアドレス指定するこのシヤドー技法は、その
内容を置換させるCCBレジスタの如きレジスタ
を要求する割込みが生じる時特に有効でありサイ
クル時間を節減する。従来の構成においては、レ
ジスタの内容が読出されて一時記憶域に記憶さ
れ、新らしい情報がレジスタに書込まれる。レジ
スタの元の内容を置換することが必要な場合、こ
のレジスタが最初に再び読出され、その内容は一
時記憶域に記憶され、次に元の内容が再び書込ま
れる。シヤドーの概念を用いると、レジスタの元
の情報のシヤドーが主記憶装置の予め定めた記憶
場所に記憶されるため、割込みモードに必要なも
のは全てレジスタに書込まれる新らしい情報に対
してである。元の情報は依然としてシヤドー場所
に保持され、これを再びレジスタに戻すことが必
要な場合は、この情報は直接シヤドー場所から読
出すことができる。読出しのためには約3マイク
ロ秒、書込みのためには4マイクロ秒がかかるた
め、各々の完全サイクルにおいては合計4マイク
ロ秒が節減される。 次に第5A図、第5B図および第5C図および
第6A図および第6B図においては、本発明のベ
クトル化割込みの望ましい実施態様が示されてい
る。第6B図は割込みシーケンスのタイミング図
を示す。PTIME3信号はCPU600により500
ナノ秒毎に生成される接地アクテイブTTL信号
であり、100ナノ秒の公称巾を有する。この信号
は、バス620,621および622上の条件を
デマークし、セツト/リセツトし、データ・スト
ローブとして作用するためシステム600Aの周
辺装置コントローラにより広く使用される。信号
BINTRはバス上の開路されたコレクタ駆動回線
である割込み要求信号で、割込みを行おうとする
システムの周辺装置コントローラにより接地する
よう切換えられる。このPIOCT信号も又、バス
ダイアログ制御情報をコントローラに伝送する状
態がバス上に符号化されることを選択されたコン
トローラに対して表示するためCPU600によ
り使用される接地アクテイブTTL信号である。
PBYTE信号は、CPU600によりアクテイブ状
態にされる時、マイクロプロセサ601の如きコ
ントローラにアドレス指定されるワードの下位バ
イト(即ち、ビツト8〜15)を与える。最後
に、信号PBBUSY又はPROCEDは、アクテイブ
の状態の時、コントローラが使用であり指令を拒
否するか、バス上にあつた最終割込みを受入れた
のいずれかを表示する。 本に述べたμP割込み機構は、I/Oバスを介
してI/O装置(620又は601)の1つに対
するチヤネル番号によりアドレス指定されるI/
O命令のCPU600の開始によつてアクテイブ
状態化される。このμP601に対する順序が指
向されると、601A内のデコーダはこのチヤネ
ル番号を認識してμP割込み要求をセツトする。
指令開始(PIOCT、第6B図参照)の間のシス
テム・バス上の16ビツトの情報は、10ビツトのチ
ヤネル番号およびa,b機能コードからなる。
CNの比較が行われる時、もしこれがμPのCNで
あると決定されれば、この情報はレジスタ362
(チヤネル番号)と311(FCN)に記憶され、
μPに対する割込み要求が601Aのフロツプに
記憶される。μPがこれを「マスクされた割込み」
として処理するため、その動作は遅らされ得る。
これ等の動作のタイミングは第6B図に示され
る。 マイクロプロセサ601が割込み命令を受取る
時、このマイクロプロセサは主記憶装置108に
おける16進数FFF8およびFFF9の場所を順次
アドレス指定し、ここで割込みベクトルのそれぞ
れの上位バイトおよび下位バイトが記憶される。
16進アドレスFFF8が番号103により第1A
図に示される様式の16進数に入れられる時、記号
1111111111111―000を有することが判る。16進数
FFF9が前記様式に入れられると、記号
1111111111111001を有する。従つて、割込みレジ
スタの上位バイトが取出された後アドレスFFF
9がアドレス指定される時、FFF9アドレスの
ビツト1がアクテイブ状態になる。これ等のビツ
ト信号が種々の組合せ又は個個に第3図に示した
種々のハードウエア回路素子に与えられる、即ち
換言すれば、主記憶装置608Aおよび608B
における16進アドレスFFF9の代りにこれ等の
アドレス・ビツトが用いられて、(a)前述のページ
ング・アドレス機構を動作禁止し、(b)CPUのデ
コーダ380を駆動し、これが更に(c)レジスタ3
11がPROM/RAM601Bの予め定めた基本
アドレスを提供することを許容し、(d)この
PROM/RAMが更に64の機能コードの選択され
た1つのアドレスを含む。これは、前記アドレス
のビツト0,1,2,13,14,15が第4C
図のデコーダ380の入力ターミナルに与えられ
る時に行われる。前述の如く、16進アドレス
FFF9がアドレス指定される時、ビツト13と
14は零となり、ビツト15は1となり、これ等
はデコーダ380の駆動ターミナルに与えられ
る。更に、全て零であるアドレスのビツト0,
1,2は第4C図のデコーダ380のターミナル
1,2,4に与えられる。ビツト13と14(即
ち、信号CADU14およびCADU115)が与
えられるターミナルが駆動される反転回路デコー
ダ380を有するため、全て1となるデコーダ3
80のターミナル1,2,4における情報は復号
されてデコーダ380の出力ターミナル7上にア
クテイブ状態の信号CADUH7を与える。これ
は、2進数111が10進数7に復号するためであ
る。次に、信号CADUH7が第3図のレジスタ3
11の駆動ターミナルFに与えられ、更に同時に
MUX301,302,303およびANDゲー
ト311Aの駆動/動作禁止ターミナルに与えら
れ、こうして前述のページング・アドレス機構の
動作を禁止する。従つて、16進数の場所FFF9
をアクセスする代りに、レジスタ311は駆動さ
れてその出力ターミナルにおいて下位ビツト1
0,11,12,13,14,15を与える。こ
れ等ビツトは、RAM又はPROM601Bをアド
レス指定するためのアドレスを構成する。メモリ
ー601Bのアドレスの内容はプログラム・カウ
ンタ(PC)601Dの下位バイト位置に入れら
れる。レジスタ311における情報は第5B図に
示される機能コード情報であり、この情報は割込
みが開始された時(第6B図のPBYTE信号参
照)CPUによつて送られる。ページング・アド
レス機構が禁止されたため、又信号CADUH7が
アドレス指定場所16進数FFF9をレジスタ31
1に再指向させるため、又信号CADUH7が更に
レジスタ311を駆動するため、レジスタ311
の下位ビツト10,11,12,13,14,1
5は、プログラム・カウンタ(PC)601Dの
下位バイト位置に入れられるメモリー601Bの
情報をアクセスするために使用される。機能コー
ドの下位バイトには6ビツトがあるため、RAM
又はPROM601Bの如きメモリーにおいて64
迄の場所をアドレス指定することができる。これ
等記憶場所の各々は、帰属される場合割込みアド
レスを含むその機能コードと関連する割込みベク
トルの下位バイトを含んでいる。 従つて、機能コードの情報内容に従つて、
PROM601Bにおいて64の異なる記憶場所の
どれかから開始し、従つて64迄の異なる割込み操
作を提供し得る割込み操作が提供される。更に、
前述の如く、プログラム・コンピユータ・カウン
タ601D又は他のレジスタはシヤドー場所から
その情報を得、従つて、最初に前の情報をアンロ
ードしてこれを保管し次に新らしい情報をロード
すること、および割込みループから出る時この操
作を繰返すことは必要ない。又、マイクロプロセ
サを割込の際アドレスFFF9に対し指向させる
マイクロプロセサの通常の割込み手順がパイパス
され、64の独自のアドレスの内の1つのアドレス
が自動的に機能コードによつて与えられ、こうし
て作用的に64の異なるベクトル即ちルーチンに対
するシヨートカツトを与えるものであることも判
るであろう。 次に第4図および第6B図において、信号
CADUH7が駆動される時は位相Dの信号
(ANDゲート358Aに対するCTPHZD、信号
CEI2CNを駆動)と共に与えられることに注目
すべきである。更に、信号CADUH7はORゲー
ト358BのCECN2I―1H信号でORされて
信号CECN2Iを付勢する。信号CEI2CNは第
3図のチヤネル・レジスタ309のCターミナル
に与えられ、これは前述の如く第1A図のチヤネ
ル・レジスタ115Aに相等のものである。同様
に、信号CECN2Iは、第1A図のチヤネル番号
レジスタ122の内容をIバスに対し、あるいは
この逆方向にストローブするために使用される。 従つて、このベクトル割込みは次の2つのこと
を行う。即ち、(a)この割込みは独自の機能コード
に従つて自動的に64の場所の内1つをアドレス指
定し、(b)ハードウエア・チヤネル番号レジスタを
割込みの際サービスを要求されるチヤネル番号に
対してロードする。このチヤネル制御ブロツク・
レジスタ(CCB)115も又、機能コードが依
存する割込み毎に変更され得る。 又、多数の入出力装置間の優先順位の確立を含
む別の割込みタイプもある。これは、優先順を決
定するための情報を記憶する多数の予め定めた記
憶場所を有するPROMにより行われる。例えば、
第1A図のUSART116又はUSART117の
いいずれか一方はチヤネル・プログラムの制御下
のマイクロプロセサ101を用いて操作する。優
先順位は第4D図のPROM384において確立
され、PROM384に対するCPBACK+00入力
はマイクロプロセサ101が背景プログラムを実
行する時付勢される。USART116要求信号
CORRQT(受取り)およびCOTROT(伝送)は
それぞれPROM384アドレス・ターミナル1
aおよび2aに与えられる。同様に、USART1
117要求信号C1RRQTおよびCITRQTは
PROM384のアドレス・ターミナル3aと4
aに与えられる。信号CPGCNH,CPGCNLおよ
びCPGCNDはその時アクテイブ状態のチヤネ
ル・プログラムのチヤネル番号を識別し、それぞ
れアドレス・ターミナル5a,6a,7aに与え
られるPROM384は内部で符号化されて25
6出力の1つを与える。このコードは多くの規則
に従うことにより確立される。 もしあるチヤネルが実行中であれば、その関連
部は通知割込みができない。即ち、もしUSART
0 116が受取り動作中でPROM384に対
する受取り要求CORRQT+00信号入力がハイで
あつて、USART0 116の伝送要求
COTRQT+00信号がUSART117の伝送要求
信号CITRQT+00と共にハイに強制され、チヤ
ネル・プログラムが受取り操作を完了する迄
USART0 116が受取りモードを維持するな
らば、このチヤネル・プログラムはUSART11
6伝送操作を開始する。 もしUSART0 116とUSART1 117
の両方が同時に動作すれば、受取り操作が伝送操
に勝る優先順位をとる。もしUSART0 116
が伝送中でありUSART1 117が受取り操作
のためチヤネル・プログラムを要求するならば、
このチヤネル・プログラムは、USART0 11
6がその伝送操作を完了した後USART1 11
7をサービスするため切換る。 もし両方の回線が同期しなければ、USART0
116がUSART1 117に勝る優先順位を
得る。マイクロプロセサ101を実行する背景プ
ログラムは、USART0 116とUSART1
117の相方に勝る優先順位を有する。PROM
384に盛込まれたこの構成が優先順位を規定す
るのである。 もしチヤネル・プログラムが通知割込みされる
ならば、PROM384の出力が、PROM384
の出力信号CICHNH+00、CICHNL+00および
CICHND+00を経て通知割込みされたチヤネ
ル・プログラムで作用する装置のチヤネル番号を
選択する。更に、PROM384のCITCTR信号
はレジスタ382の入力側に与えられる。チヤネ
ル・プログラムがサブルーチンの終りに達する
と、16進数7E BD40として符号化された飛踏
しマイクロ命令がマイクロプロセサ101から出
力される。16進数7Eと符号化されるビツトは飛
越しマイクロ命令を規定し、16進数BD40とし
て符号化されるビツトはチヤネル・プログラムが
飛越すアドレスを表示する。アドレスBD4016
信号は、マイクロプロセサ101の割込み回線を
消勢する「セツト割込みマスク」マイクロワード
としてマイクロプロセサ101により感知され
る。 次のアドレスBD4116(1011,1101,0100,
0001)は第4C図のアドレス・バス102と入力
デコーダ380に与えられる。0,1,2,1
3,14,15のビツト位置は、第4C図のデコ
ーダ380の入力側に与えられるか、アドレス・
バス信号CADU00+00,CADU01+00,
CADU02+00,CADU13+00,CADU14
+00およびCADU15+00として第1A図のデ
コーダ128に与えられる。デコーダ380の
CADUHT―00出力はローに強制され、これによ
り第4D図のIレジスタ382を付勢し、あるい
は第1A図に示される如くIレジスタ130を付
勢する。 もしチヤネル・プログラムに割込む要求がなさ
れなければ、信号CITCTR―00は論理値1とな
り、レジスタ382の出力は第1A図のUバス1
12上に信号CDBU00―07+00によつて16進
数39として現われ、これは開始マイクロ命令1の
戻しである。もし割込みの要求があれば、信号
CITCTR―00は論理値零となり、レジスタ38
2の出力は第1A図のUバス112にノー・オペ
レーシヨン・マイクロプログラムである16進数01
として現われる。 Uバス112の16進数01はマイクロプロセツサ
101により感知されてアドレス場所16進数BD
42のサービス・ルーチン開始を始動してチヤネ
ル・プログラムに通知割込みする。 第4図において、ANDゲート372に対する
入力CADUH5―00は、ハイの時、第4図の
ANDゲート371の出力信号CEMB2U+00を
ハイに強制することによつてドライバ110を経
て第1A図のUバス109に対しUバス112か
ら情報が流れることを禁止する。 第3図から判るように、CCBレジスタ310
の信号CPBACK+00出力は、第1図のIバス1
13の信号CDBI02+00が論理値1で、第4D
図のPROM384に対してマイクロプロセサ1
01が背景モードで操作中であることを表示する
時に付勢状態にある。
スへの改善されたマツピングのためのページング
装置の作用および機能について更に詳細に説明す
る。第1A図に関して既に述べたように、
PROMチツプ300のアドレス0乃至7がアド
レス指令される時、通信ページング回線信号
(CPGLIN)はローになることによりアクテイブ
状態になる。このことは第3図のページング
PROMアツプで示されるが、最初の8位置にお
けるマツプの内容は01111111である。ビツト位置
7は0即ちローであり、これが信号CPGLINを
アクテイブ状態にする。次にこの信号はそれぞれ
マルチプレクサ(MUX)302および303の
入力ターミナル2agおよび2ahに与えられる。
マルチプレクサ302と303の入力ターミナル
1agおよび1ahに対する他の入力制御信号はそ
れぞれ論理値1(LOGIC1)信号であり、これ
は常にハイにワイアドされる。信号CPGLINが
アクテイブの状態である時(即ち、ローの状態に
ある時)、これはマルチプレクサ302の入力タ
ーミナル1agおよび1ahをそれぞれアドレス指
定し、このことは入力ターミナル1gおよび1h
の信号はそれぞれ回線302Aおよび303A上
で出力として通過する。マルチプレクサ302の
入力ターミナル1gの再びソースに対する信号
(CPGCNH)によれば、この信号はチヤネル・
レジスタ309の回線309A上の上位ビツトか
ら生じることが判る。そのソースに戻るMUX3
03の入力ターミナル上の入力信号(CPGCNL)
によれば、これが中間順序の出力回線309Bか
ら生じることが判る。これ等は第1A図のチヤネ
ル・レジスタ114のビツトHおよびMと対応す
る。従つて、回線ページング信号(CPGLIN)
がアクテイブ状態である時、レジスタ114、3
09のHおよびMビツトはそれぞれ出力回線30
2A,303A上の仮想アドレス・ビツト8およ
び9と代替される。逆に、回線ページング信号
(CPGLIN)がアクテイブ状態でない(即ち、ハ
イ)時、仮想アドレスのアドレス・ビツト8と9
は変更されずに、それぞれMUX302と303
の出力回線302Aと303Aに対する如く通さ
れる。この状態になるのは、信号CPGLINがハ
イでありLOGIC1が常にハイである時アドレス
3gと3hの10進数(2進数の11)がMUX3
02と303においてそれぞれアドレス指定され
るためである。MUX302の入力アドレス3g
は、マイクロプロセサ・ビツト8の通信アドレス
と解釈されるCADU08である。MUX303の
入力アドレス3hは、通信アドレス・マイクロプ
ロセサ・ビツト9として解釈されるCADU09
である。入力ターミナル3gと3hがアドレス指
定される時、これはアクテイブ状態となつて、こ
のターミナル上のアドレスがMUX302と30
3の出力回線302Aと303Aに通ることを許
容する。 PROMチツプ300からの仮想アドレス10
6を変更するための次の制御ビツトは方向性のあ
るビツト(CPGDIR)である。この方向性ビツ
トは、チヤネル・レジスタ309の回線309C
上のチヤネル・レジスタ114における下位ビツ
トDである。この方向性ビツトは、PROM30
0のアドレス8,9,10および11(10進数)
がアドレス指定される時アクテイブ状態になる
(第1C図参照)。更に、これ等ビツト8―11が
アドレス指定される時、出力信号CPGLINも又
アクテイブ状態になる。従つて、MUX302お
よび303に対するCPGLIN信号の付与の外に、
MUX301と304の入力ターミナル1aおよ
び1aiに対してそれぞれ信号CPGDIRの付与が行
われる。MUX304の入力ターミナル1の信号
CPGDIRがアクテイブでない即ちローの状態で
あれば、MUX304の入力ターミナル2ai上の
入力信号CPGAD8がハイとローのいずれの状態
であつても入力ターミナル0b又は2b(2進ア
ドレス0又は11)のいずれかがアクテイブ状態
化され信号CPGCND信号がこれ等両アドレスに
与えられるため、前記入力信号CPGAD8がハイ
かローかは何等の相違を生じない。CPGCND信
号の出所は、チヤネル・レジスタ114と309
のDビツトであるチヤネル・レジスタ309の出
力回線309Cからである。従つて、方向性ビツ
トCPGDIRがアクテイブ状態化されると、仮想
アドレス106の数10(10進数)ビツトはチヤネ
ル・レジスタ114又は309のDビツトの内容
に従つて変更される。信号CPGAD8も又アクテ
イブ状態化されなければ、MUX301の入力タ
ーミナル1dの信号CPGDIRの作用は生じない。
これは、信号CPGAD8がアクテイブ状態でない
即ちハイであれば、MUX301のアドレス2e
又は3e(2進数10又は11)のみがアドレス指定
でき、これ等は共に同じでマイクロプロセサの通
信アドレスのビツト7を表わすためにそうなるの
である。しかし、PROM300からのCPGAD8
信号も又アクテイブ状態化される(即ち、ロー)
時、MUX301のアドレス0e又は1e(2進
数00又は01)のみがアドレス指定されてアクテイ
ブ状態化され、これ等のアドレスは論理1の
LOGIC1を与えられるが、これ等は両信号
CPGAD8とCPGDIRがアクテイブ状態となるか
あるいはCPGAD8がアクテイブ状態となる時だ
けMUX301の出力回線301Aに通ることを
許容される。 従つて、信号CPGAD8がアクテイブ状態にさ
れると、仮想アドレスのビツト7が変更されて1
に強制される。 第1A図に関して既述した如く、チヤネル・レ
ジスタ・ビツト(CPGCCB)がアクテイブ状態
即ちローとなる時、仮想アドレス106のビツト
11および12はレジスタ115のチヤネル回線
αおよびβが入れられる。第3図のレジスタ31
0がチヤネル・レジスタ115と対応し、出力回
線310AのビツトCPGCCHはチヤネル・レジ
スタ115のαビツトと、出力回線310Bのビ
ツトCPGCCLはレジスタ115のβビツトと対
応するため、信号CPGCCBがアクテイブ状態即
ちローとなる時これ等ビツトが仮想アドレスのビ
ツト11と12を置換する。これがいかにして生
じるかを考えてみよう。信号CPGCCBはアクテ
イブ状態化されると、ドライバ306の11入力
ターミナルおよびANDゲート311Aの1ター
ミナルに与えられる。従つて、ドライバ306は
駆動され、出力回線310Aおよび310Bのチ
ヤネル制御ビツト信号CPGCCHおよびCPGCCL
はドライバ306のターミナル1hおよび0hに
それぞれ与えられ、ドライバ306の出力回線3
06Aおよび306Bに送られて、仮想メモリ
ー・アドレスのビツト11および12を置換す
る。ドライバ306の入力ターミナル1に与えら
れる信号CPGCCBはローの時にドライバ306
を駆動するが、ドライバ305の入力ターミナル
19に与えられる同じ信号はドライバ305の動
作を禁止することに注目すべきである。従つて、
ドライバ305の入力ターミナル24と25のそ
れぞれのCADU信号はドライバ305の出力タ
ーミナル305Aと305Bには通されないが、
前述の如くチヤネル・レジスタ310によつて置
換されるのである。そのため、ドライバ306又
は306(両方ではなく)が駆動され、チヤネ
ル・レジスタ・ビツトのいずれかがドライバ30
6を経て送られ、あるいはマイクロプロセサ・ア
ドレス・ビツトがドライバ305を介して出力側
に送られることが判る。 最後に、仮想アドレス変更については、ビツト
4,5,6の変更について述べる。第1A図に関
して既に述べたように、この変更は信号CPGAD
4を経て行われる。ページング信号ゼネレータの
アドレス12(10進数)がアドレス指定される
と、その後の全信号がアクテイブ状態になる。即
ち、CPGLIN,CPGDIR,CPGCCBおよび
CPGAD4である。このことは、アドレス12
(10進数)が00001111以降を含む第1C図により
判る。従つて、第1A図の照合番号105からビ
ツト位置4,5,6,7がロー即ちアクテイブ状
態であり、これ等ビツト位置はそれぞれ信号
CPGAD4,CPGCCB,CPGDIRおよび
CPGLINを対応する。最初の3信号がアクテイ
ブ状態である時いかにしてこれ等の3信号が仮想
アドレスを変更するかについては既に示したが、
ここで信号CPGAD4がいかにして仮想アドレス
を変更して仮想アドレスのビツト4,5,6に1
を強制するかについて示される。信号CPGAD4
はドライバ308の駆動ターミナルに与えられ
る。ドライバ308が駆動される(即ち、ロー)
時は1がビツト4,5,6に対してそれぞれ強制
され、もし駆動されずハイであれば、ビツト番号
4,5,6上のマイクロプロセサ・アドレス
CADUは通過する。その理由は、ドライバ30
8が与えられた信号に対してレジスタをプル・ア
ツプした3状態回路(LS241として市販)で
あるためである。従つて、もしCPGAD4の如き
ローの信号が与えられれば、ドライバ308を駆
動せず出力信号は+5ボルト迄プル・アツプされ
てこれを論理値1にする。一方、信号CPGAD4
がアクテイブ状態でなくハイであれば、ドライバ
308を駆動してドライバ308の入力ターミナ
ル1K,2Kおよび3K上のアドレス信号をそれ
ぞれ許容する。 第1A図のページング信号ゼネレータ105許
りでなく第3図のその相等PROM300もメモ
リー109を更に効率的にアドレス指定できる
が、このPROMは更に、主記憶装置108、マ
イクロプロセサ101およびIバスおよびUバス
に取付けられた種々のレジスタおよび周辺装置の
間に更に有効なアドレス指定および通信を行う信
号を生成する。UバスおよびIバスを用いるレジ
スタ・メモリーからレジスタの如き種々の装置間
のこの通信は信号CEU2IOをアクテイブ状態化
することにより開始される(即ち、信号CEU2
IOはローであつて第1C図において零で表示さ
れるれる)。信号CEU2IOはページング信号ゼネ
レータ105上のビツト位置番号1であることに
注目すべきである。ページング信号ゼネレータ1
05とその相等PROM300のマツプである第
1C図においては、ビツト位置番号1に零が記憶
される3つのアドレスがあり、これ等は10進数の
記憶場所18,21および22、即ち仮想アドレ
スの16進数の場所90、A8およびB0であるこ
とに注目すべきである。従つて、ページング信号
ゼネレータ105又はPROM300のこれ等の
場所のいずれかがマイクロプロセサ101により
アドレス指定される時、信号CEU2IOがアクテ
イブ状態即ちローとなる。信号CEU2IOは通信
プロセスを開始し、第1A図のバス・ドライバお
よび第7図の711Aの駆動状態を制御する。こ
れは又、第4図のANDゲート354に対して1
入力として与えられ、このデータがバス上で妥当
となつた後パルス・アウトを保証する。 第3図および第4図においては、Iバス・ドラ
イバ711AをしてデータをUバスからIバスに
駆動させ、チヤネル・レジスタ114、CCBレ
ジスタ115又はSレジスタ123Aのいずれか
に書込ませることが望ましい時、信号CEU2IO
がPROM300のビツト位置1で生成される。
第4図においては、信号CEU2IOがANDゲート
354の1入力ターミナルに与えられてストロー
ブ信号CTPHZDでANDされて出力側および
ANDゲート354で信号CEU2IO―10を生じ
ることが判る。又、デコーダ355の入力ターミ
ナル20Aおよび10Aにそれぞれ与えられるの
は通信アドレス装置のアドレス103のビツト1
0および11である。この時これ等のビツトはデ
コーダ355の出力ターミナル上の4信号の1つ
をアクテイブ状態にするよう復号される。デコー
ダ355の入力ターミナル20および10のビツ
ト10および11がそれぞれ10即ち2進化10進数
3である時、出力信号CEU2IO―A2が駆動さ
れてデコーダ357の駆動ターミナルに与えられ
る。更に、通信アドレス装置のビツト13と14
(即ち、信号CADU13およびCADU4)はデコ
ーダ357の入力ターミナル2PAおよび1PAに
それぞれ与えられる。これ等の両ビツト13と1
4が0である時、デコーダ357の出力ターミナ
ル零が駆動され、信号CEI2CNがアクテイブ状
態化されて第1A図のチヤネル・レジスタ114
および第3図の309への書込みのため使用され
る。一方、もしビツト13および14がそれぞれ
0および1であり、信号CADU13および
CADU14としてデコーダ357の入力ターミ
ナル2PAおよび1PAにそれぞれ与えられるなら
ば、デコーダ357の01出力ターミナルは駆動さ
れ、信号CEI2CBがアクテイブ状態となつて第
1図のCCBレジスタ115と第3図の310を
アドレス指定するため使用される。最後に、もし
デコーダ357の入力ターミナル2PAおよび1
PAの信号CADU13およびCADU14としてそ
れぞれ与えられるビツト13と14が1および0
即ち10進数の2であれば、デコーダ357の02出
力ターミナルは駆動状態となり、信号CEI2SR
はアクテイブ状態となつてSレジスタ123Aを
アドレス指定するため使用される。このように、
信号CEU2IOはバス・ドライバ111およびア
ドレス・レジスタ114,115,123Aを駆
動するため使用される。従つて、マイクロプロセ
サ101が書込み命令を実行してこれに指令して
マイクロプロセサのアキユムレータを16進数の場
所A8に書込ませる時、マイクロプロセサはマイ
クロプロセサのアキユムレータの内容をUバス上
におき、バス・ドライバ111を書込み方向に駆
動し、これは次に適当なレジスタ・アドレスにス
トローブされる。 書込み命令が実行中であつて情報がIバス上の
レジスタのどれかに書込まれつつある時、第1A
図のバス・ドライバ110も又Mバス109を駆
動状態にし、アドレス・レジスタに書込まれる同
じ情報も又アドレス指定されるメモリー108の
セクシヨンに書込まれる。(第2A図および第2
B図も参照されたい)バス・ドライバ110は信
号CEMB2Uがないことにより駆動され、メモ
リー108の方向にMバスを駆動する。従つて、
レジスタに書込まれた情報も又、診断およびデバ
ギングのための情報を保持する「シヤドー・メモ
リー」に書込まれ、遠隔の保守が行われる時デー
タを保持する場所を提供する。 IバスからUバスに対してデータを読出す際、
MバスからUバスに対するデータの転送を禁止す
ることが必要である。これはIバスがUバスに対
するデータを制御することを許容する。この機能
は、ページング信号ゼネレータ105に信号CEI
02Uを生成することにより行われる。この信号
は次に第4図のデコーダ351の駆動ターミナル
に与えられ、同時にアドレス103のビツト9お
よび10は信号CADU09およびCADU10と
してそれぞれ入力ターミナル2Kおよび1Kに与
えられる。これ等の信号は第1の復号レベルを受
けて、入力ビツト9および10がそれぞれ0およ
び1である時、デコーダ351の出力ターミナル
01上に出力信号CEI02U―A1を与える。こ
の時信号CEI02U―A1は、それぞれ入力ター
ミナル2LAと1LAのビツト14と15と共にデ
コーダ352の駆動された入力ターミナルに与え
られる。ビツト14と15の2進数値に従つて、
4つのサブ指令信号の1つがエンコーダ352の
出力ターミナルに生成される。ビツト14と15
が0の値(仮想メモリー・スペースにおけるアド
レス指定場所16進A8と等しい)を有する時、
サブ指令CEDH2I―00がデコーダ352の00
出力ターミナルにおいて生成される。この信号は
次にレジスタ360の駆動ターミナルに与えられ
る。レジスタ360は第1A図の上位データ・レ
ジスタ120と対応する。従つて、信号CEI02
Uは、データの上位レジスタ120からIバスお
よびUバスへの読出しのための手段を提供する。
しかし、バス・ドライバ110は信号CEMB2
Uの存在により禁止されるため、アドレス103
によりアドレス指定されたメモリーは読出され
ず、上位レジスタ120のみが読出される。同様
に、ビツト14および15がそれぞれ01であつ
てこれによりデコーダ352の出力ターミナル0
1をアドレス指定する時、下位データ・レジスタ
121が読出される。従つて、信号CEDL2I―
00が生成されて第4A図のレジスタ361の駆
動ターミナルに与えられる。このように、第4A
図のレジスタ360および361は第1A図のレ
ジスタ120と121にそれぞれ対応する。 第1A図のバス・ドライバ110は第4B図の
ドライバ370と対応する。これは両方向のドラ
イバであつて、記憶バス109からUバス112
へ、あるいはその逆にデータを駆動することがで
きる。データ転送の方向は信号CEMB2Uによ
つて制御される。この信号が生じる時はデータは
記憶バス109からマイクロプロセサ・バス11
2に流れさせられ、信号がない時は反対方向のデ
ータ転送が許される。信号CEMB2Uは第4図
のANDゲート371および372を介して生成
される。これ等のANDゲートは、マイクロプロ
セサ読出しCUREAD、ストローブ信号CIPHZ2
および通信駆動信号CESR2UおよびCEIN2U
の如き種々の信号の簡単なAND操作を表示する。
これ等はCEMB2U信号を生成し、次にANDゲ
ート371の1入力ターミナルに与えられる。I
バスからUバスへの転送操作が行われる時、換言
すればレジスタからの読出し操作がIバスからU
バスに行われる時、この信号はANDゲート37
1の入力側でハイとなり、もし残りの信号がハイ
であれば信号CEMB2Uがハイとなることに注
目すべきである。このハイの信号が第4B図のド
ライバ370の入力ターミナルに与えられる時、
Iバスからバス・ドライバ110を経てMバスに
至る情報の流れを禁止することになる。 次に第1A図、第1C図、第4図においては、
USART116および117のアドレス指定操作
が示される。このアドレス指定手順を開始する信
号CESU2Uは第1A図のページング信号ゼネレ
ータからのビツト3として生じる。第1C図か
ら、ビツト番号3の0を含む唯一のアドレスは16
進数88であることが判る。従つて、この場所がア
ドレス指定される時、ビツト0,3,4および7
がアクテイブ状態になる。前述の如く、ビツト3
は第4図のデコーダ350Aの駆動ターミナルに
与えられる信号CESU2Uを与え、チヤネル番号
CPGCNLの中間ビツトの復号操作に関与する。
このビツトの値に従つて、デコーダ35Aの出力
ターミナル0と1の2つの出力信号CEOU2Uお
よびCE1U2Uはそれぞれアクテイブ状態とな
る。信号CEOU2Uがアクテイブ状態である時、
USART116が駆動され、CE1U2Uがアク
テイブ状態であればUSART117が駆動され
る。情報が駆動USARTに書込まれる時、これは
又アドレス103によりアドレス指定されるメモ
リーの前記部分に書込まれる。このタイプの2重
アドレス指定は、同じ物理的アドレスに変換され
て実際にアドレス指定される物理的装置の複写ア
ドレス即ちシヤドーを与える2つの仮想アドレス
を使用する。例えば、適当なUSARTに対して1
つの駆動信号を与えるこことにより、いかにして
16進数88のアドレスが物理的USARTをアドレス
指定するかを示した。再び第1C図においては、
16進アドレスC8が1つの点を除いて16進アドレ
ス88と同じ2進マツプを有すること、および16
進アドレス88のビツト番号3が0即ちアクテイ
ブ状態であるが16進アドレスC8のビツト3は1
即ちアクテイブ状態でないことが判るであろう。
従つて、第3のビツトを除いて、16進アドレス8
8が16進アドレスC8と同じ信号を生じ、従つて
アドレスC8は信号CESU2Uが16進アドレス8
8で与えられる時アドレス指定される特定の
USARTのシヤドーと考えることができることが
判る。従つて、16進アドレス88即ち10進数17が
実際のUSARTデータをアドレス指定するが、16
進アドレスC8即ち10進数25はそのシヤドーをア
ドレス指定することが判る。従つて、16進アドレ
ス88に書込みを行う場合は、書込みはUSART
において前述の原理に従つて記憶スペース16進数
C8によりアドレス指定される適当な記憶スペー
スに対して行われる。典型例によりいかにしてこ
れが行われるかを考察しよう。第1に、ページン
グ信号ゼネレータ105の10進数の場所17をアド
レス指定する。アドレス書式103を用いればア
ドレスは下記の如くとなる。即ち、0000000―
010001000である。実際のアドレス指定を行うビ
ツト8乃至12は2進様式においては10進数17を
含むことに注意すべきである。第1C図におい
て、10進数の場所17はビツト0,3,4および
7をアクテイブ状態にすることが判る。ビツト0
はページング信号ゼネレータ105において信号
CPGAD8を生じ、この信号はアクテイブ状態の
時ビツト7を1に強制する。ビツト3は、
USARTをアドレス指定し仮想アドレスの実アド
レスへの変更には関与しない信号である。ページ
ング信号ゼネレータのビツト4はCPGAD4であ
り、これがアクテイブ状態の時、ビツト4,5お
よび6を1に強制する。最後に、ページング信号
ゼネレータ105のビツト7は、アクテイブ状態
の時に信号CPGLINを与えてビツトおよびチヤ
ネル・レジスタの中間ビツトを実アドレスのビツ
ト位置8および9に強制する。本例の目的のため
にこれ等のビツト位置が0であると仮定すれば、
ビツト8および9は0となり最後の実アドレスは
000011110000000となる。この時10進アドレス2
5がアドレス指定されると、アドレス様式103
は0000000011001000の形態となる。再び第1C図
から、下記信号はアクテイブ状態のCPGAD8
CPGAD4およびCPGDINとなることが判る。こ
れも又前例において存在した信号CESU2Uはア
ドレスの変更には関与しなかつたので、その結果
生じる最後の実アドレスは下記の如く前のアドレ
スと同じになる。即ち、000011110000000である。
従つて、同じアドレスがメモリーにおいてアドレ
ス指定されることが判る。従つて、遠隔の保守又
は診断操作が要求される時、実USARTではなく
シヤドー・メモリーがアドレス指定され得る。こ
の同じ原理がIバスに付属される他の周辺装置又
はレジスタにも妥当する。 USART―チヤネル・レジスタ又はチヤネル制
御ブロツク・レジスタ等の如き1つのハードウエ
アをアドレス指定するこのシヤドー技法は、その
内容を置換させるCCBレジスタの如きレジスタ
を要求する割込みが生じる時特に有効でありサイ
クル時間を節減する。従来の構成においては、レ
ジスタの内容が読出されて一時記憶域に記憶さ
れ、新らしい情報がレジスタに書込まれる。レジ
スタの元の内容を置換することが必要な場合、こ
のレジスタが最初に再び読出され、その内容は一
時記憶域に記憶され、次に元の内容が再び書込ま
れる。シヤドーの概念を用いると、レジスタの元
の情報のシヤドーが主記憶装置の予め定めた記憶
場所に記憶されるため、割込みモードに必要なも
のは全てレジスタに書込まれる新らしい情報に対
してである。元の情報は依然としてシヤドー場所
に保持され、これを再びレジスタに戻すことが必
要な場合は、この情報は直接シヤドー場所から読
出すことができる。読出しのためには約3マイク
ロ秒、書込みのためには4マイクロ秒がかかるた
め、各々の完全サイクルにおいては合計4マイク
ロ秒が節減される。 次に第5A図、第5B図および第5C図および
第6A図および第6B図においては、本発明のベ
クトル化割込みの望ましい実施態様が示されてい
る。第6B図は割込みシーケンスのタイミング図
を示す。PTIME3信号はCPU600により500
ナノ秒毎に生成される接地アクテイブTTL信号
であり、100ナノ秒の公称巾を有する。この信号
は、バス620,621および622上の条件を
デマークし、セツト/リセツトし、データ・スト
ローブとして作用するためシステム600Aの周
辺装置コントローラにより広く使用される。信号
BINTRはバス上の開路されたコレクタ駆動回線
である割込み要求信号で、割込みを行おうとする
システムの周辺装置コントローラにより接地する
よう切換えられる。このPIOCT信号も又、バス
ダイアログ制御情報をコントローラに伝送する状
態がバス上に符号化されることを選択されたコン
トローラに対して表示するためCPU600によ
り使用される接地アクテイブTTL信号である。
PBYTE信号は、CPU600によりアクテイブ状
態にされる時、マイクロプロセサ601の如きコ
ントローラにアドレス指定されるワードの下位バ
イト(即ち、ビツト8〜15)を与える。最後
に、信号PBBUSY又はPROCEDは、アクテイブ
の状態の時、コントローラが使用であり指令を拒
否するか、バス上にあつた最終割込みを受入れた
のいずれかを表示する。 本に述べたμP割込み機構は、I/Oバスを介
してI/O装置(620又は601)の1つに対
するチヤネル番号によりアドレス指定されるI/
O命令のCPU600の開始によつてアクテイブ
状態化される。このμP601に対する順序が指
向されると、601A内のデコーダはこのチヤネ
ル番号を認識してμP割込み要求をセツトする。
指令開始(PIOCT、第6B図参照)の間のシス
テム・バス上の16ビツトの情報は、10ビツトのチ
ヤネル番号およびa,b機能コードからなる。
CNの比較が行われる時、もしこれがμPのCNで
あると決定されれば、この情報はレジスタ362
(チヤネル番号)と311(FCN)に記憶され、
μPに対する割込み要求が601Aのフロツプに
記憶される。μPがこれを「マスクされた割込み」
として処理するため、その動作は遅らされ得る。
これ等の動作のタイミングは第6B図に示され
る。 マイクロプロセサ601が割込み命令を受取る
時、このマイクロプロセサは主記憶装置108に
おける16進数FFF8およびFFF9の場所を順次
アドレス指定し、ここで割込みベクトルのそれぞ
れの上位バイトおよび下位バイトが記憶される。
16進アドレスFFF8が番号103により第1A
図に示される様式の16進数に入れられる時、記号
1111111111111―000を有することが判る。16進数
FFF9が前記様式に入れられると、記号
1111111111111001を有する。従つて、割込みレジ
スタの上位バイトが取出された後アドレスFFF
9がアドレス指定される時、FFF9アドレスの
ビツト1がアクテイブ状態になる。これ等のビツ
ト信号が種々の組合せ又は個個に第3図に示した
種々のハードウエア回路素子に与えられる、即ち
換言すれば、主記憶装置608Aおよび608B
における16進アドレスFFF9の代りにこれ等の
アドレス・ビツトが用いられて、(a)前述のページ
ング・アドレス機構を動作禁止し、(b)CPUのデ
コーダ380を駆動し、これが更に(c)レジスタ3
11がPROM/RAM601Bの予め定めた基本
アドレスを提供することを許容し、(d)この
PROM/RAMが更に64の機能コードの選択され
た1つのアドレスを含む。これは、前記アドレス
のビツト0,1,2,13,14,15が第4C
図のデコーダ380の入力ターミナルに与えられ
る時に行われる。前述の如く、16進アドレス
FFF9がアドレス指定される時、ビツト13と
14は零となり、ビツト15は1となり、これ等
はデコーダ380の駆動ターミナルに与えられ
る。更に、全て零であるアドレスのビツト0,
1,2は第4C図のデコーダ380のターミナル
1,2,4に与えられる。ビツト13と14(即
ち、信号CADU14およびCADU115)が与
えられるターミナルが駆動される反転回路デコー
ダ380を有するため、全て1となるデコーダ3
80のターミナル1,2,4における情報は復号
されてデコーダ380の出力ターミナル7上にア
クテイブ状態の信号CADUH7を与える。これ
は、2進数111が10進数7に復号するためであ
る。次に、信号CADUH7が第3図のレジスタ3
11の駆動ターミナルFに与えられ、更に同時に
MUX301,302,303およびANDゲー
ト311Aの駆動/動作禁止ターミナルに与えら
れ、こうして前述のページング・アドレス機構の
動作を禁止する。従つて、16進数の場所FFF9
をアクセスする代りに、レジスタ311は駆動さ
れてその出力ターミナルにおいて下位ビツト1
0,11,12,13,14,15を与える。こ
れ等ビツトは、RAM又はPROM601Bをアド
レス指定するためのアドレスを構成する。メモリ
ー601Bのアドレスの内容はプログラム・カウ
ンタ(PC)601Dの下位バイト位置に入れら
れる。レジスタ311における情報は第5B図に
示される機能コード情報であり、この情報は割込
みが開始された時(第6B図のPBYTE信号参
照)CPUによつて送られる。ページング・アド
レス機構が禁止されたため、又信号CADUH7が
アドレス指定場所16進数FFF9をレジスタ31
1に再指向させるため、又信号CADUH7が更に
レジスタ311を駆動するため、レジスタ311
の下位ビツト10,11,12,13,14,1
5は、プログラム・カウンタ(PC)601Dの
下位バイト位置に入れられるメモリー601Bの
情報をアクセスするために使用される。機能コー
ドの下位バイトには6ビツトがあるため、RAM
又はPROM601Bの如きメモリーにおいて64
迄の場所をアドレス指定することができる。これ
等記憶場所の各々は、帰属される場合割込みアド
レスを含むその機能コードと関連する割込みベク
トルの下位バイトを含んでいる。 従つて、機能コードの情報内容に従つて、
PROM601Bにおいて64の異なる記憶場所の
どれかから開始し、従つて64迄の異なる割込み操
作を提供し得る割込み操作が提供される。更に、
前述の如く、プログラム・コンピユータ・カウン
タ601D又は他のレジスタはシヤドー場所から
その情報を得、従つて、最初に前の情報をアンロ
ードしてこれを保管し次に新らしい情報をロード
すること、および割込みループから出る時この操
作を繰返すことは必要ない。又、マイクロプロセ
サを割込の際アドレスFFF9に対し指向させる
マイクロプロセサの通常の割込み手順がパイパス
され、64の独自のアドレスの内の1つのアドレス
が自動的に機能コードによつて与えられ、こうし
て作用的に64の異なるベクトル即ちルーチンに対
するシヨートカツトを与えるものであることも判
るであろう。 次に第4図および第6B図において、信号
CADUH7が駆動される時は位相Dの信号
(ANDゲート358Aに対するCTPHZD、信号
CEI2CNを駆動)と共に与えられることに注目
すべきである。更に、信号CADUH7はORゲー
ト358BのCECN2I―1H信号でORされて
信号CECN2Iを付勢する。信号CEI2CNは第
3図のチヤネル・レジスタ309のCターミナル
に与えられ、これは前述の如く第1A図のチヤネ
ル・レジスタ115Aに相等のものである。同様
に、信号CECN2Iは、第1A図のチヤネル番号
レジスタ122の内容をIバスに対し、あるいは
この逆方向にストローブするために使用される。 従つて、このベクトル割込みは次の2つのこと
を行う。即ち、(a)この割込みは独自の機能コード
に従つて自動的に64の場所の内1つをアドレス指
定し、(b)ハードウエア・チヤネル番号レジスタを
割込みの際サービスを要求されるチヤネル番号に
対してロードする。このチヤネル制御ブロツク・
レジスタ(CCB)115も又、機能コードが依
存する割込み毎に変更され得る。 又、多数の入出力装置間の優先順位の確立を含
む別の割込みタイプもある。これは、優先順を決
定するための情報を記憶する多数の予め定めた記
憶場所を有するPROMにより行われる。例えば、
第1A図のUSART116又はUSART117の
いいずれか一方はチヤネル・プログラムの制御下
のマイクロプロセサ101を用いて操作する。優
先順位は第4D図のPROM384において確立
され、PROM384に対するCPBACK+00入力
はマイクロプロセサ101が背景プログラムを実
行する時付勢される。USART116要求信号
CORRQT(受取り)およびCOTROT(伝送)は
それぞれPROM384アドレス・ターミナル1
aおよび2aに与えられる。同様に、USART1
117要求信号C1RRQTおよびCITRQTは
PROM384のアドレス・ターミナル3aと4
aに与えられる。信号CPGCNH,CPGCNLおよ
びCPGCNDはその時アクテイブ状態のチヤネ
ル・プログラムのチヤネル番号を識別し、それぞ
れアドレス・ターミナル5a,6a,7aに与え
られるPROM384は内部で符号化されて25
6出力の1つを与える。このコードは多くの規則
に従うことにより確立される。 もしあるチヤネルが実行中であれば、その関連
部は通知割込みができない。即ち、もしUSART
0 116が受取り動作中でPROM384に対
する受取り要求CORRQT+00信号入力がハイで
あつて、USART0 116の伝送要求
COTRQT+00信号がUSART117の伝送要求
信号CITRQT+00と共にハイに強制され、チヤ
ネル・プログラムが受取り操作を完了する迄
USART0 116が受取りモードを維持するな
らば、このチヤネル・プログラムはUSART11
6伝送操作を開始する。 もしUSART0 116とUSART1 117
の両方が同時に動作すれば、受取り操作が伝送操
に勝る優先順位をとる。もしUSART0 116
が伝送中でありUSART1 117が受取り操作
のためチヤネル・プログラムを要求するならば、
このチヤネル・プログラムは、USART0 11
6がその伝送操作を完了した後USART1 11
7をサービスするため切換る。 もし両方の回線が同期しなければ、USART0
116がUSART1 117に勝る優先順位を
得る。マイクロプロセサ101を実行する背景プ
ログラムは、USART0 116とUSART1
117の相方に勝る優先順位を有する。PROM
384に盛込まれたこの構成が優先順位を規定す
るのである。 もしチヤネル・プログラムが通知割込みされる
ならば、PROM384の出力が、PROM384
の出力信号CICHNH+00、CICHNL+00および
CICHND+00を経て通知割込みされたチヤネ
ル・プログラムで作用する装置のチヤネル番号を
選択する。更に、PROM384のCITCTR信号
はレジスタ382の入力側に与えられる。チヤネ
ル・プログラムがサブルーチンの終りに達する
と、16進数7E BD40として符号化された飛踏
しマイクロ命令がマイクロプロセサ101から出
力される。16進数7Eと符号化されるビツトは飛
越しマイクロ命令を規定し、16進数BD40とし
て符号化されるビツトはチヤネル・プログラムが
飛越すアドレスを表示する。アドレスBD4016
信号は、マイクロプロセサ101の割込み回線を
消勢する「セツト割込みマスク」マイクロワード
としてマイクロプロセサ101により感知され
る。 次のアドレスBD4116(1011,1101,0100,
0001)は第4C図のアドレス・バス102と入力
デコーダ380に与えられる。0,1,2,1
3,14,15のビツト位置は、第4C図のデコ
ーダ380の入力側に与えられるか、アドレス・
バス信号CADU00+00,CADU01+00,
CADU02+00,CADU13+00,CADU14
+00およびCADU15+00として第1A図のデ
コーダ128に与えられる。デコーダ380の
CADUHT―00出力はローに強制され、これによ
り第4D図のIレジスタ382を付勢し、あるい
は第1A図に示される如くIレジスタ130を付
勢する。 もしチヤネル・プログラムに割込む要求がなさ
れなければ、信号CITCTR―00は論理値1とな
り、レジスタ382の出力は第1A図のUバス1
12上に信号CDBU00―07+00によつて16進
数39として現われ、これは開始マイクロ命令1の
戻しである。もし割込みの要求があれば、信号
CITCTR―00は論理値零となり、レジスタ38
2の出力は第1A図のUバス112にノー・オペ
レーシヨン・マイクロプログラムである16進数01
として現われる。 Uバス112の16進数01はマイクロプロセツサ
101により感知されてアドレス場所16進数BD
42のサービス・ルーチン開始を始動してチヤネ
ル・プログラムに通知割込みする。 第4図において、ANDゲート372に対する
入力CADUH5―00は、ハイの時、第4図の
ANDゲート371の出力信号CEMB2U+00を
ハイに強制することによつてドライバ110を経
て第1A図のUバス109に対しUバス112か
ら情報が流れることを禁止する。 第3図から判るように、CCBレジスタ310
の信号CPBACK+00出力は、第1図のIバス1
13の信号CDBI02+00が論理値1で、第4D
図のPROM384に対してマイクロプロセサ1
01が背景モードで操作中であることを表示する
時に付勢状態にある。
第1A図は本発明の望ましい実施態様を示すブ
ロツク図、第1B図は本発明の典型的なアドレス
指定様式を示す図、第1C図はページング
PROMのマツプを示す図、第2A図は本発明の
実メモリーの典型的な構成を示す図、第2B図は
本発明の仮想メモリーの典型例を示す図、第3
図、第4図、第4A図乃至第4D図、第5A図お
よび第5B図、および第7図は本発明の望ましい
実施態様を示す図、第6A図は本発明の各構成部
分のフローチヤート、および第6B図は本発明の
タイミング図である。 101……マイクロプロセサ、102……アド
レス・バス、103……レジスタ、105……ペ
ージング信号ゼネレータ、106……仮想アドレ
ス、107……実アドレス、108……メモリ
ー、109……バス、110,111……バス・
ドライバ、112……U―バス、113……I―
バス、114……チヤネルレジスタ、115……
CCBレジスタ、116,117……USART、1
20,121……データ・レジスタ、122……
チヤネル番号レジスタ、201……メモリー、3
00……PROM、301〜304……マルチプ
レクサ、305〜308……ドライバ、309〜
311,360〜361,370〜372,38
2……レジスタ、311A,354,358A,
371〜372……ANDゲート、351〜35
3,355〜357,380……デコーダ、35
8,358B……コンパレータ、384……
PROM。
ロツク図、第1B図は本発明の典型的なアドレス
指定様式を示す図、第1C図はページング
PROMのマツプを示す図、第2A図は本発明の
実メモリーの典型的な構成を示す図、第2B図は
本発明の仮想メモリーの典型例を示す図、第3
図、第4図、第4A図乃至第4D図、第5A図お
よび第5B図、および第7図は本発明の望ましい
実施態様を示す図、第6A図は本発明の各構成部
分のフローチヤート、および第6B図は本発明の
タイミング図である。 101……マイクロプロセサ、102……アド
レス・バス、103……レジスタ、105……ペ
ージング信号ゼネレータ、106……仮想アドレ
ス、107……実アドレス、108……メモリ
ー、109……バス、110,111……バス・
ドライバ、112……U―バス、113……I―
バス、114……チヤネルレジスタ、115……
CCBレジスタ、116,117……USART、1
20,121……データ・レジスタ、122……
チヤネル番号レジスタ、201……メモリー、3
00……PROM、301〜304……マルチプ
レクサ、305〜308……ドライバ、309〜
311,360〜361,370〜372,38
2……レジスタ、311A,354,358A,
371〜372……ANDゲート、351〜35
3,355〜357,380……デコーダ、35
8,358B……コンパレータ、384……
PROM。
Claims (1)
- 【特許請求の範囲】 1 チヤンネル番号信号及び機能コード信号を含
む入力/出力命令を発生する中央処理装置600
と、記憶されている複数の割込みルーチンの一つ
を識別するためのアドレス位置を示す上位バイト
信号及び下位バイト信号を有する複数の絶対アド
レス信号を記憶するメモリを有する複数の周辺サ
ブシステム620と、上記上位バイト信号及び下
位バイト信号を記憶するプログラムカウンタ60
1dを有するマイクロプロセツサと、前記複数の
割込みルーチンの一つを識別する前記アドレス位
置を選択するための多重ベクトル化割込み装置と
を備え、下記装置を更に有するコンピユータ装
置。 (a) 前記中央処理装置及びマイクロプロセツサに
結合され、割込み信号を発生するための前記チ
ヤンネル番号信号に応答する第1の装置601
a、上記マイクロプロセツサは第1のアドレス
FFF8信号及び第2のアドレスFFF9信号を
発生するための前記割込み信号に応答する、 (b) 前記メモリ108及びマイクロプロセツサに
結合され、前記プログラムカウンタ601dの
上位バイト位置における記憶のため前記メモリ
から上位バイト信号を取り出すための第1のア
ドレス信号に応答する第2の装置105,60
1d、 (c) 上記第2の装置、マイクロプロセツサ及び中
央処理装置に結合され、前記プログラムカウン
タの下位バイト位置における記憶のため上記メ
モリから下位バイト信号を取り出すための基本
アドレス信号を発生するための前記機能コード
信号に応じて、前記第2のアドレス信号を変形
するための第2のアドレス信号に応答する第3
の装置380,601b,601d、 前記第2の装置は前記複数の割込みルーチンの
一つの第1のバイトを取り出すために前記プログ
ラムカウンタに記憶されている前記複数の絶対ア
ドレス信号の選択された一つに応答する。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US06/000,477 US4271467A (en) | 1979-01-02 | 1979-01-02 | I/O Priority resolver |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS5592919A JPS5592919A (en) | 1980-07-14 |
JPS636890B2 true JPS636890B2 (ja) | 1988-02-12 |
Family
ID=21691683
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP16089679A Granted JPS5592919A (en) | 1979-01-02 | 1979-12-13 | Improvements in data processing system |
Country Status (4)
Country | Link |
---|---|
US (1) | US4271467A (ja) |
JP (1) | JPS5592919A (ja) |
AU (1) | AU527479B2 (ja) |
CA (1) | CA1123518A (ja) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4604685A (en) * | 1982-02-19 | 1986-08-05 | Honeywell Information Systems Inc. | Two stage selection based on time of arrival and predetermined priority in a bus priority resolver |
JPS58225442A (ja) * | 1982-06-25 | 1983-12-27 | Toshiba Corp | 優先順位制御回路 |
US4814974A (en) * | 1982-07-02 | 1989-03-21 | American Telephone And Telegraph Company, At&T Bell Laboratories | Programmable memory-based arbitration system for implementing fixed and flexible priority arrangements |
US4642630A (en) * | 1982-12-28 | 1987-02-10 | At&T Bell Laboratories | Method and apparatus for bus contention resolution |
SE445861B (sv) * | 1984-12-12 | 1986-07-21 | Ellemtel Utvecklings Ab | Prioritetsfordelningsanordning for datorer |
US4802087A (en) * | 1986-06-27 | 1989-01-31 | Honeywell Bull Inc. | Multiprocessor level change synchronization apparatus |
US4805096A (en) * | 1987-03-06 | 1989-02-14 | Eta Systems, Inc. | Interrupt system |
GB8815042D0 (en) * | 1988-06-24 | 1988-08-03 | Int Computers Ltd | Data processing apparatus |
US4972342A (en) * | 1988-10-07 | 1990-11-20 | International Business Machines Corporation | Programmable priority branch circuit |
US5303382A (en) * | 1989-09-21 | 1994-04-12 | Digital Equipment Corporation | Arbiter with programmable dynamic request prioritization |
US5168570A (en) * | 1989-12-29 | 1992-12-01 | Supercomputer Systems Limited Partnership | Method and apparatus for a multiple request toggling priority system |
FR2793572B1 (fr) * | 1999-05-10 | 2001-10-05 | Cit Alcatel | Procede et dispositif pour commander l'ordre de depart d'informations ou d'objets stockes temporairement |
DE10148865A1 (de) * | 2001-10-04 | 2003-04-17 | Bosch Gmbh Robert | Busstation |
JP4633334B2 (ja) * | 2003-01-27 | 2011-02-16 | パナソニック株式会社 | 情報処理装置およびメモリアクセス調停方法 |
US20050170586A1 (en) * | 2004-01-29 | 2005-08-04 | O2Ic, Inc., (A California Corporation) | Method of manufacturing non-volatile DRAM |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3599162A (en) * | 1969-04-22 | 1971-08-10 | Comcet Inc | Priority tabling and processing of interrupts |
IT971304B (it) * | 1972-11-29 | 1974-04-30 | Honeywell Inf Systems | Sistema di accesso a priorita variabile dinamicamente |
GB1468642A (en) * | 1975-01-07 | 1977-03-30 | Burroughs Corp | Data processing systems |
US4001783A (en) * | 1975-03-26 | 1977-01-04 | Honeywell Information Systems, Inc. | Priority interrupt mechanism |
US4020471A (en) * | 1975-06-30 | 1977-04-26 | Honeywell Information Systems, Inc. | Interrupt scan and processing system for a data processing system |
US3993981A (en) * | 1975-06-30 | 1976-11-23 | Honeywell Information Systems, Inc. | Apparatus for processing data transfer requests in a data processing system |
US4028684A (en) * | 1975-10-16 | 1977-06-07 | Bell Telephone Laboratories, Incorporated | Memory patching circuit with repatching capability |
US4023143A (en) * | 1975-10-28 | 1977-05-10 | Cincinnati Milacron Inc. | Fixed priority interrupt control circuit |
US4056847A (en) * | 1976-08-04 | 1977-11-01 | Rca Corporation | Priority vector interrupt system |
-
1979
- 1979-01-02 US US06/000,477 patent/US4271467A/en not_active Expired - Lifetime
- 1979-11-05 CA CA339,183A patent/CA1123518A/en not_active Expired
- 1979-12-11 AU AU53680/79A patent/AU527479B2/en not_active Ceased
- 1979-12-13 JP JP16089679A patent/JPS5592919A/ja active Granted
Also Published As
Publication number | Publication date |
---|---|
AU5368079A (en) | 1980-07-10 |
US4271467A (en) | 1981-06-02 |
CA1123518A (en) | 1982-05-11 |
JPS5592919A (en) | 1980-07-14 |
AU527479B2 (en) | 1983-03-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4291371A (en) | I/O Request interrupt mechanism | |
US4371932A (en) | I/O Controller for transferring data between a host processor and multiple I/O units | |
JP2633458B2 (ja) | Dmaチヤネル装置及びdmaチヤネルの変換装置 | |
US4479179A (en) | Synchronous cycle steal mechanism for transferring data between a processor storage unit and a separate data handling unit | |
US4417304A (en) | Synchronous cycle steal mechanism for transferring data between a processor storage unit and a separate data handling unit | |
US3898624A (en) | Data processing system with variable prefetch and replacement algorithms | |
US4309754A (en) | Data interface mechanism for interfacing bit-parallel data buses of different bit width | |
US4901232A (en) | I/O controller for controlling the sequencing of execution of I/O commands and for permitting modification of I/O controller operation by a host processor | |
US5642489A (en) | Bridge between two buses of a computer system with a direct memory access controller with accessible registers to support power management | |
US4899306A (en) | Test interface circuit which generates different interface control signals for different target computers responding to control signals from host computer | |
CA1124884A (en) | Device for automatic modification of rom contents by a system selected variable | |
US5125084A (en) | Control of pipelined operation in a microcomputer system employing dynamic bus sizing with 80386 processor and 82385 cache controller | |
US5623697A (en) | Bridge between two buses of a computer system with a direct memory access controller having a high address extension and a high count extension | |
JPS636890B2 (ja) | ||
US4591972A (en) | Data processing system with unique microcode control | |
JPH0128415B2 (ja) | ||
JPS6339941B2 (ja) | ||
CA1036713A (en) | Peripheral interrupt priority resolution in a micro program data processor having plural levels of subinstruction sets | |
JPS586173B2 (ja) | チャネル制御方式 | |
US4188662A (en) | Address converter in a data processing apparatus | |
US4255786A (en) | Multi-way vectored interrupt capability | |
KR100496856B1 (ko) | 어드레스 확장이 가능한 데이터 처리 시스템 | |
JP2840604B2 (ja) | マイクロコード式cpuで実行される命令用のオペランドを指定する方法および装置 | |
JPH0440734B2 (ja) | ||
JPH04363746A (ja) | Dma機能を有するマイクロコンピュータシステム |