JPS6319854Y2 - - Google Patents
Info
- Publication number
- JPS6319854Y2 JPS6319854Y2 JP1987088478U JP8847887U JPS6319854Y2 JP S6319854 Y2 JPS6319854 Y2 JP S6319854Y2 JP 1987088478 U JP1987088478 U JP 1987088478U JP 8847887 U JP8847887 U JP 8847887U JP S6319854 Y2 JPS6319854 Y2 JP S6319854Y2
- Authority
- JP
- Japan
- Prior art keywords
- bus
- microinstruction
- microinstructions
- control
- data processing
- 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
- 230000015654 memory Effects 0.000 claims description 31
- 238000012986 modification Methods 0.000 claims description 27
- 230000004048 modification Effects 0.000 claims description 24
- 238000012545 processing Methods 0.000 claims description 16
- 230000004044 response Effects 0.000 claims 1
- HJUFTIJOISQSKQ-UHFFFAOYSA-N fenoxycarb Chemical compound C1=CC(OCCNC(=O)OCC)=CC=C1OC1=CC=CC=C1 HJUFTIJOISQSKQ-UHFFFAOYSA-N 0.000 description 33
- 238000012546 transfer Methods 0.000 description 26
- 238000000034 method Methods 0.000 description 21
- 238000010586 diagram Methods 0.000 description 20
- 239000003607 modifier Substances 0.000 description 16
- 230000006870 function Effects 0.000 description 7
- 238000000354 decomposition reaction Methods 0.000 description 6
- 238000012795 verification Methods 0.000 description 6
- 238000012797 qualification Methods 0.000 description 5
- 238000012360 testing method Methods 0.000 description 5
- QWCRAEMEVRGPNT-UHFFFAOYSA-N buspirone Chemical compound C1C(=O)N(CCCCN2CCN(CC2)C=2N=CC=CN=2)C(=O)CC21CCCC2 QWCRAEMEVRGPNT-UHFFFAOYSA-N 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000001934 delay Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000002459 sustained effect Effects 0.000 description 3
- 238000003786 synthesis reaction Methods 0.000 description 3
- 241000725302 Adult diarrheal rotavirus Species 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000002715 modification method Methods 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000012806 monitoring device Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000010926 purge Methods 0.000 description 1
- 238000004064 recycling Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000010561 standard procedure Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000001308 synthesis method Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K23/00—Pulse counters comprising counting chains; Frequency dividers comprising counting chains
- H03K23/64—Pulse counters comprising counting chains; Frequency dividers comprising counting chains with a base or radix other than a power of two
- H03K23/66—Pulse counters comprising counting chains; Frequency dividers comprising counting chains with a base or radix other than a power of two with a variable counting base, e.g. by presetting or by adding or suppressing pulses
- H03K23/667—Pulse counters comprising counting chains; Frequency dividers comprising counting chains with a base or radix other than a power of two with a variable counting base, e.g. by presetting or by adding or suppressing pulses by switching the base during a counting cycle
-
- 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/22—Handling requests for interconnection or transfer for access to input/output bus using successive scanning, e.g. polling
-
- 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/36—Handling requests for interconnection or transfer for access to common bus or bus system
-
- 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/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
-
- 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/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
-
- 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/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4208—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus
- G06F13/4217—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus with synchronous protocol
-
- 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/22—Microcontrol or microprogram arrangements
- G06F9/26—Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
-
- 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/22—Microcontrol or microprogram arrangements
- G06F9/26—Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
- G06F9/262—Arrangements for next microinstruction selection
- G06F9/268—Microinstruction selection not based on processing results, e.g. interrupt, patch, first cycle store, diagnostic programs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Bus Control (AREA)
- Manipulation Of Pulses (AREA)
- Executing Machine-Instructions (AREA)
Description
本考案はマイクロプロセサを用いるデータ処理
システムに関し、特に2レベルのマイクロコー
ド・アーキテクチユアを使用するシステムに関す
る。 データ処理システムは、コンパクトな単一基板
マイクロコンピユータから更に複雑で高性能のミ
ニコンピユータにわたるシステム構成を提供すべ
く広く開発されて来た。このようなシステムは、
適当なデータ・ストアから得られる1つのマイク
ロ命令又は一連の1つ以上のマイクロ命令に対す
るアクセスを提供するようにマイクロ命令が適当
に復号されるマイクロコード・アーキテクチユア
を使用する。 一般に、このようなシステムにおいては、一連
のマイクロ命令の内最初のマイクロ命令のマイク
ロ命令データ・ストア(屡々、マイクロコード・
ストアと呼ばれる)におけるアクセスのための始
動アドレスを提供するように、マイクロ命令がマ
イクロ命令レジスタから適当な復号ロジツクに適
当に与えられる。アクセスされたマイクロ命令
は、表示された命令を実施するための制御情報
と、一連のマイクロ命令の内次のマイクロ命令の
マイクロ・アドレスを決定するためのシーケンス
情報とを含む。順次のマイクロ命令の各々は、一
連のマイクロ命令の最後のものがアクセスされる
迄同じ種類の情報を含み、この最後のマイクロ命
令がアクセスされる時点でこのマイクロ命令ルー
チンが完了し、システムは次のマイクロ命令を復
号する用意が整う。 このようなシステムは、通常、所要の制御情報
およびシーケンス情報を含むように、比較的広い
(即ち、比較的多数のビツトを含む)マイクロ命
令ワードを使用する比較的大きなマイクロコー
ド・データ・ストアを必要とする。比較的広いマ
イクロ命令ワードを使用すると比較的早い速度の
操作が提供される(即ち、多数のビツトが同時に
並行して使用でき制御および順序付けの操作を行
う)が、このようなシステムは、マイクロコー
ド・データ・ストアにおける記憶ビツト数が比較
的大きくなる許でなく巾の広いマイクロ命令ワー
ドを取扱うデータ経路が更に複雑になつてシステ
ムが更に高価な構成要素およびデータ経路構成を
必要とするため、更に高価になりがちである。 マイクロ命令に必要なデータ記憶スペースを減
少させ多数の「広い」命令ワードの取扱いを避け
るため、あるマイクロコード・システムは、前述
の如き1つのレベルのマイクロコード・ストアと
は対照的に「2レベル」のマイクロコード・スト
ア技術を使用して来た。このような2レベル構成
は、マイクロ命令ワードにおける制御情報が屡々
多数のマイクロ命令と共通であると云う認識から
生じる。従つて、各マイクロ命令に対する全ての
制御情報および順序付け情報を別々に記憶するの
に必要な同数の比較的多数のデータ・ビツトの反
復的記憶を避けるため、多くのマイクロ命令と共
通する制御情報は、別のROMストアに記憶され
る順序付け情報とは別個に1つのROMストアに
記憶される。「第1のレベル」操作においては、
この順序付けプロセスはシーケンスマイクロコー
ドROMストアにおいて実行されて、「第2のレ
ベル」の操作において関与する特定のマイクロ命
令を順次実行するため必要な制御情報を提供する
制御マイクロコードROMストアにおける制御情
報をアクセスする順次アドレスを生じるが、後者
の情報は多くのマイクロ命令と共通となる。 このような2つのレベルのアプローチは、単一
レベル・マイクロコード・システムに比較して必
要なマイクロコード記憶スペースを減少させよう
とする傾向がある。しかし、このような2レベル
技術は、制限された制御ストア容量がシステムを
指定された組のマイクロ命令に対して構成するこ
とを可能にするが、システム全体の操作能力を増
加させるため基本マイクロ命令の組の拡張をもた
らす実際の柔軟性はない。 本考案は、2レベル・マイクロコード・システ
ムの能力を増大する2レベル概念の拡張を用い
て、マイクロコード制御ストアのサイズを増大さ
せることなくマイクロ命令の組を大巾に拡張する
能力を提供するものである。これにより、システ
ムは「直交する」マイクロ制御ストアと呼ぶとこ
ろのものを含み、この直交マイクロ制御ストアに
おいては、第1の即ち「垂直方向の」マイクロ制
御ストアが、以下に更に詳細に説明する如く、第
2のレベル即ち水平方向のマイクロ制御ストアの
1つ以上の「修飾子」フイールドから複数の第2
の即ち「水平方向の」マイクロ命令の1つを選択
するための選択された数の垂直方向のマイクロ命
令ビツトからなる1つのフイールドと、一連の垂
直方向のマイクロ命令の内の次の(即ち、連続す
る各々の)マイクロ命令のアドレスを提供する順
序付けフイールドとを有する「狭い」マイクロ命
令ワード部分を提供する。各々の水平方向のマイ
クロ命令は、実施される基本的な機能を表わす
が、従来のシステムとは異なつて、そのフイール
ドの1つ以上は垂直方向のマイクロ命令の修飾子
フイールドによる変更の対象となる。例えば、従
来の2レベル・システムは水平方向の制御ストア
における特定の制御ワードのアドレスを単に指定
するだけの垂直方向のシーケンス・ストアを使用
し、この制御ワードは第1の指定されたレジスタ
(例、汎用レジスタ、GR1)から第2の指定さ
れたレジスタ(例、汎用レジスタ、GR2)への
データの移動を要求する。対照的に、本発明の2
レベル・マイクロコード・システムは、例えば、
垂直方向のマイクロ命令を用いて、未指定の1つ
の場所から他の未指定の場所へのデータの移動を
必要とする水平方向の命令を指定することにな
る。この垂直方向のマイクロ命令は、従つて、そ
の修飾子フイールドにおいてこのようなデータ移
動のための特定のソースおよび行先の場所をも含
み、これによりこのような場所を識別するように
基本的な水平方向のマイクロ命令を修飾すること
ができる。 更に、本考案の2レベルのマイクロコード・シ
ステムは、垂直方向のマイクロ命令がマイクロプ
ロセサに直接配置された制御ストアから、あるい
は又外部のマイクロ制御ソースから取出すことが
できるように構成することができる。水平方向の
マイクロ制御ストアは又マイクロプロセサのチツ
プに直接配置することもできる。 各々の水平方向のマイクロ命令の能力は垂直方
向のマイクロ命令によつて達成可能なこのような
マイクロ命令の修飾により有効に倍増され、この
ような手法は本文中では屡々2レベルの「マイク
ロ修飾」法と呼ぶ。各々の水平方向のマイクロ命
令は多数の垂直方向のマイクロ命令により修飾さ
れてこれにより多数の全く独自のマイクロ命令を
表わすことができるため、比較的少数の水平方向
のマイクロ命令を用いて屡々「制御の根源」と呼
ぶ汎用ではあるが有効な1組の基本的な制御操作
を提供することができる。 本考案のシステムは又、1つ以上の入出力
(I/O)バスを介して周辺装置との通信を行う
能力をも含む。例えば、望ましい一実施態様にお
けるシステムは、以下に述べる如き目的のための
独特な「ポーリング」手法を用いてI/Oバスの
選定された1つにその時存在する全ての装置を識
別する装置を含むシステムI/Oインターフエー
ス装置を提供する。更に、本システムのI/Oイ
ンターフエース装置は、ポールされたところの選
定されたバスに対するシステムI/Oインターフ
エース装置を介する情報の転送の直接制御と、ポ
ールされなかつた別の選定されたバスに対する補
助装置を介する情報の転送を行う補助インターフ
エース装置の間接制御とを提供するように構成さ
れる。 システムI/Oインターフエース装置は又、
各々が略々一定の周波数を有し1つのシステム入
力クロツク信号から得られる1つ以上のカウンタ
信号を使用する。しかし、このシステムI/Oイ
ンターフエース装置は、複数の異なる既知の周波
数のどれかを有するシステム入力クロツク信号を
受取ることができる。従つて、この装置は、複数
の異る周波数入力信号のどれかに応答でき更に関
与する所要の略々一定の周波数の所要の1つ以上
のカウンタ信号をこれから得ることができる独自
の周波数の合成装置を含む。 更に、本考案のシステムは、2つの競合するシ
ステム構成要素によるシステム・バスに対する同
時のアクセスを阻止する個々のシステム・バスの
プロトコールを含む。更に、システム・バス・プ
ロトコールは、他のシステム構成要素がシステム
バスがアクセスの用意があることを表示する限
り、又他のシステム構成要素がシステム・バスの
前の制御を止めることの否定を表示する信号を要
求しない限り、バス制御の判断のための要件なし
に1つのシステム構成要素が直接システム・バス
の制御を得ることを許容するものである。 本考案の種々の特質については添付図面を助け
により更に詳細に理解することができる。 本考案の手法を用いるシステム全体を第1図に
示すが、同図においてはマイクロプロセサ・チツ
プ10(図中、中央処理装置即ちCPUとして示
される)は、適当なシステム・バス11を介して
記憶システム12と、1つ以上のシステムI/O
装置17と、1つ以上の外部のマイクロ制御チツ
プ13(「XMC」チツプとして示される)と、シ
ステム入出力インターフエース装置14(システ
ムI/Oインターフエースとして示される)と、
更に別のインターフエース装置14A(ECLI−
PSEI/Oインターフエースとして示される)
とに相互に接続されるが、この最後の2つの装置
は外部の入出力素子に対する適当なバス15およ
び15Aとインターフエースする。例えば、特定
の実施態様においては、本システムは、米国マサ
チユーセツツ州ウエストボロー市のデータ・ゼネ
ラル社(Data General)により製造販売される
如きマイクロNOVAコンピユータ・システム
と共に使用される如きマイクロNOVAタイプ
の周辺(I/O)装置と、データ・ゼネラル社製
のECLIPSEコンピユータ・システムと共に使
用される如きECLIPSEタイプの周辺(I/O)
装置と共に作動するよう構成される。 本考案の特定の実施態様においては、システ
ム・バス11は図示の如く16ビツトの並列システ
ム・バスであるが、外部のマイクロ制御チツプ1
3からのマイクロコード・ビツトは適当な専用化
された8ビツトのマイクロコード・バス16を介
して時間多重化方式でCPUに伝送される。 第2図はCPU10の更に詳細なブロツク図を
示し、8ビツトの外部マイクロコード・バス16
はそのマイクロコード・ビツトを適当な外部のマ
イクロ制御チツプ(XMC)のインターフエース
装置17Aへ供給し、システム・バス11は
CPUに関して入れたり出したりするため適当な
データを受入れあるいは供給することが可能な適
当なバス・トランシーバ装置18と接続される。 CPUは、適当な汎用レジスタおよびアキユム
レータからなる適当なレジスタ・フアイル21
と、「A」および「B」入力および「C」出力を
有する適当な演算論理装置(ALU)兼シフター
装置22と共に、マイクロ命令レジスタ(IR)
19とプログラム・カウンタ(PC)を含むマイ
クロ命令ロジツクを使用し、このようなレジスタ
とアキユムレータとALUとシフターの各構成要
素は当技術において周知の適当な構成を用いて編
成することが可能である。 複数の4つの内部バス23,24,25,26
は、第2図に示す如く前記諸装置間の適当な内部
データ経路を提供する。前記のALU兼シフタ
ー・ロジツク22のC出力は、他の装置に対する
と共に内部Cバス23上のバス・トランシーバを
介してシステム・バスに対して供給される。
ALU兼シフター・ロジツク22に対するAおよ
びB入力は、それぞれ内部のAバス24とBバス
25を介して他の諸装置と通信する。内部バス2
6は、レジスタおよびアキユムレータからバス・
トランシーバ18を経てシステム・バス11に至
る直結経路を提供する。このような多重内部デー
タ経路の使用により、本文に述べる特定の実施態
様においては400ナノ秒である1つのマイクロサ
イクル内でいくつかの同時の操作が生じることを
許容する。このため、16ビツトのレジスタ間の動
作は1マイクロサイクル(屡々、T期間と呼ぶ)
内で行われ、メモリーからレジスタへの転送は2
マイクロサイクル(2つのT期間)内で行われ
る。 2レベルのマイクロ制御ストアは、垂直方向制
御の読出し専用メモリー(ROM)31と水平方
向制御のROM32として示される。本考案の特
定の実施態様においては、第1のレベル即ち垂直
方向の制御ROM31が18ビツトの垂直方向のマ
イクロ命令を提供し、このビツトの内の6ビツト
が水平方向のマイクロ制御ROM32において複
数の第2のレベルの即ち水平方向のマイクロ命令
の内の1つを選定するため使用され、このような
64の命令が本文に示す特定の実施態様において記
憶される。水平方向の制御ROM32は特定の実
施態様において33ビツトを有する水平方向マイク
ロ命令を提供し、この水平方向制御ROMは例え
ば64×33ビツトの構成を有する。本文における実
施態様においては、垂直方向制御ストア31から
の8ビツトを用いて、以下に述べる如く水平方向
マイクロ制御ROMから選択された水平方向マイ
クロ命令を修飾するため使用可能な2つの4ビツ
ト修飾子フイールドを提供する。各々の垂直方向
マイクロ命令の残りの4ビツトは、垂直方向マイ
クロ命令の順序付けの制御、即ち垂直方向制御
ROM31から適当な垂直方向の順序付けロジツ
ク33を経由する次のアドレス・モードの指定の
ため使用される。この垂直方向のマイクロ命令の
2つの修飾子フイールドにより選択された水平方
向のマイクロ命令の指定されたフイールドの修飾
操作は適当なマイクロ修飾ロジツク34を介して
達成され、これと同時にこのロジツク34は水平
方向復号ロジツク35により適当に復号されて選
択されたマイクロ命令の機能を実施するため要求
される必要な制御信号と順序付け信号を提供する
35ビツトの命令ワードを供給する。 垂直方向のマイクロ命令は、CPUに常駐する
垂直方向制御ROM31から、あるいは外部のマ
イクロ制御チツプ13(第1図参照)から外部の
マイクロ制御チツプ・インターフエース装置17
Aを介して取出すことができるが、水平方向のマ
イクロ命令はCPUに常駐する水平方向制御ROM
32から取出される。外部のマイクロコードは適
当な時間多重化手法を用いることによりXMC装
置13から得ることができるが、この外部マイク
ロコードは時間多重化された8ビツトのマイクロ
コード・バス16において与えられる16ビツトか
らなる。 水平方向の復号論理装置35によつて復号され
ることを必要とする一連のマイクロ命令は、復号
制御がプログラムされたロジツク列(PLA)装
置40による命令レジスタ19からのマイクロ命
令の適当な復号動作によつて開始される。復号制
御PLA装置40によるこのようなマイクロ命令
の復号動作は、内部バス39上に初期の垂直方向
マイクロ命令を提供すると共に、内部バス41上
に垂直方向制御ROM31から取出されるべき次
のマイクロ命令のアドレスを供給する。垂直方向
の制御ROM31の順序付けは、垂直方向の順序
付けロジツク33から内部バス43を介して与え
られる9ビツトのシーケンス制御信号によつて適
当に制御される。一たん前記復号制御PLA装置
40が初期マイクロ命令および垂直方向制御
ROM31からの次のマイクロ命令に対するアド
レスを与えると、ROM31からのそれ以降の垂
直方向マイクロ命令の順序付けは、内部の4ビツ
ト・バス44における垂直方向の順序付け装置3
3に対し与えられた順序付けビツトにより決定さ
れる。もし垂直方向制御ROM31からのマイク
ロ命令が水平方向のマイクロ命令の選択ではなく
別の垂直方向マイクロ命令への分岐又は飛越しを
要求するならば、修飾ビツトが分岐操作を指定す
るため使用され、水平方向のマイクロ命令の選定
のため通常使用される6ビツトは水平方向のマイ
クロ命令の修飾のためにマイクロ修飾装置34が
8ビツトの修飾フイールドを使用することを禁止
する「ノー・オペレーシヨン」(NOOP)コード
を構成する。 このため、マイクロ修飾プロセスにおいては、
例えば、垂直方向マイクロ命令の2つの4ビツ
ト・フイールドが選択された水平方向のマイクロ
命令の2つ以上の4ビツト・フイールドの代りに
用いることができる。選択された水平方向フイー
ルドに垂直方向修飾フイールドを代替する手法は
各々の水平方向マイクロ命令の能力を有効に倍増
し、その結果前述の全面的な直交する2レベル・
マイクロ制御ストアの試みが、システム全体のマ
イクロ命令の組におけるマイクロ命令数を拡張す
るための強力な能力を有する制御根源語と屡々呼
ばれる汎用性を有するもビツト実効性の組をなす
基本的な水平方向マイクロ命令操作を提供する。 別紙Aに示す如く水平方向制御ROM32に記
憶された水平方向マイクロ命令の完全な組につい
て考察することはマイクロ修飾法を理解する上で
役立つ。 例えば、ある特定の実施例において、水平方向
マイクロ命令はそれぞれ以下に示す如く下記の9
つのフイールドを含んでいる。即ち、 A−BUSフイールドはAバス24上のALU/
シフター22のA入力に対するデータのソースを
規定するが、B−BUSフイールドはBバス25
上のALU/シフター22のB入力に対するデー
タのソースを規定する。ALUフイールドはALU
により実施される演算機能を規定し、SHFフイ
ールドはシフター機能を規定する。DESTフイー
ルドは、ALU/シフター21からCバス23上
に置かれるデータに対する行先を規定する。
ADRフイールドはメモリーのアドレスのソース
を規定し、MEMフイールドはシステム・バス1
1とCバス23間の連絡のための制御を行う。
TESTフイールドはテストされる種々のシステム
条件を識別するため使用され、RAND(ランダ
ム)フイールドは他の特殊な制御機能を規定す
る。別紙Aは、前述のフイールドの各々の意義を
更に詳細に示している。 垂直方向のマイクロ制御ROM31は、特定の
実施例においては、例えば、各々が18ビツト巾で
ある288のマイクロ命令を含むROM構成であり、
1つの水平方向マイクロ命令が実行される各々の
垂直方向のマイクロ命令について実行される。垂
直方向のマイクロ命令のシーケンスはマイクロ命
令(即ち、復号制御PLA装置40により復号さ
れる如き機械命令)を解釈する。 垂直方向マイクロ命令はそれぞれ下記の如き4
つのフイールドを含む。即ち、 6ビツトのADRHフイールドは、水平方向の
主制御ストア32において選択されるべき水平方
向マイクロ命令のアドレスを規定する。4ビツト
のV1フイールドは選択された水平方向マイクロ
命令に対する第1の修飾子(屡々、修飾子1と呼
ぶ)を規定し、4ビツトのV2フイールド(修飾
子2)は選択された水平方向マイクロ命令に対す
る第2の修飾子を規定する。垂直方向の順序付け
ロジツク33に対して与えられる4ビツトの
NAMフイールドは次の順次の垂直方向マイクロ
命令を選定する次のアドレス・モードを識別し、
このモードのビツトは新らしい垂直方向プログラ
ム・カウンタの9ビツト・アドレスを生成する。
別紙Bは更に詳細に前記各フイールドの意義を示
すものである。 別紙Aにおいて示される如く、多くの水平方向
マイクロ命令において、V1垂直方向修飾フイー
ルド又はV2垂直方向修飾フイールドとして識別
される垂直方向マイクロ命令修飾フイールドの1
つを要求するものとして指定される。各々の水平
方向マイクロ命令の残りのフイールドは図示の如
く固定的に指定される。特定の水平方向マイクロ
命令、例えば「メモリーに書込め」(WMEM)
マイクロ命令として識別されるものにおいて、そ
の全てのフイールドは、V1垂直方向修飾フイー
ルドの使用を要求するABUSフイールドおよび
V2垂直方向修飾フイールドの使用を要求する
ADRフイールドを除いて指定され、前記V1およ
びV2修飾フイールドは書込まれるデータの複数
のソースの内の1つ(V1)を識別し、前記ソー
ス・データが書込まれるべき1つ以上のアドレス
(V2)を識別することが可能である。このよう
に、基本的な汎用のメモリー書込み(WM)マイ
クロ命令は、修飾フイールドによる修飾を経てデ
ータ・ソースとアドレスの行先の大巾な組合せに
関する多くの特定の「書込み)マイクロ命令を生
成するため使用することができる。これ迄に述べ
た特定の実施態様においては、2つの修飾フイー
ルドの使用により、僅かに64の基本的な水平方向
マイクロ命令から多数のマイクロ命令を生成する
ことが可能になる。 復号制御PLA装置40は、各々が24ビツトを
有するマイクロ命令を含む構成を有する。このよ
うな装置は命令レジスタ19からの16ビツトのア
ドレスによりアドレス指定され、マイクロ命令か
ら復号された初期の垂直方向マイクロ命令と、1
つ以上の一連のマイクロ命令が要求される時垂直
方向制御ROM31における次の垂直方向マイク
ロ命令に対する9ビツト・ポインタ、並びに以下
に論述するように唯1つのマイクロ命令しか要求
されない場合復号のための次に続くマクロ命令を
呼出すことのできるフラツグとを提供する。復号
制御PLA装置40においては、本考案のシステ
ムにより構成されたマクロ命令と同数のエントリ
が存在する。 復号制御PLA装置40の始動マイクロ命令の
5つのフイールドは下記の如くである。即ち、 6ビツトのADRHフイールドは垂直方向マイ
クロ制御ROM31に関して既に説明したものと
同じであり、4ビツトのV1フイールドと4ビツ
トのV2フイールドも垂直方向マイクロ制御ROM
に関して前に述べたものと同じものである。更
に、復号制御PLA装置は、復号されたマクロ命
令のため必要なマイクロ命令シーケンスの第2の
マイクロ命令の垂直方向制御ROM31における
アドレスである9ビツトのADRVフイールドを
供給する。1つのビツト(Dフイールド)は、マ
クロ命令の解釈のためには復号制御PLA装置に
より与えられる1つのマイクロ命令で十分である
ことを示す。この場合、ADRVフイールドは無
視される。始動マイクロ命令の5つのフイールド
の更に詳細な要約については別紙Cに示される。 垂直および水平方向の制御ROMおよび復号制
御PLA装置は当技術において周知の従来の論理
装置であり、これ以上詳細に示す必要はない。垂
直方向の順序付け装置33およびマイクロ修飾装
置34のロジツクについてはそれぞれ第3図およ
び第4図に示される。 第3図に示す如く、例えば、特定の実施態様に
おける垂直方向順序付け装置は、垂直方向プログ
ラム・カウンタ100とマルチプレクサ装置10
1からなり、(1)復号制御PLA装置40からの9
ビツト出力の復号を行い、(2)プログラム・カウン
タおよび垂直方向修飾フイールドV1とV2の零ビ
ツト(VPCO)により識別される飛越し(分岐)
又は呼出し操作を行い、(3)スキツプ操作、即ち次
のプログラム・カウンタの出力(PC+1)の更
にその次のプログラム・カウンタ出力(PC+2)
へのスキツプを行い、(4)次のプログラム・カウン
タ出力(PC+1)、即ち次のプログラム・カウン
タ出力(PC+1)が保管され(割込み操作が生
じる時の如き)、次に割込みルーチンに続いて垂
直方向順序付け装置は出力(PC+1)に戻る戻
り操作を行うため5つの入力信号のどれか1つを
選択する。 マルチプレクサの動作は、必要なテスト条件が
存在する時、次のアドレス操作モード(前記の5
操作の1つが選択される)を規定する制御ロジツ
ク102を切換えることにより制御される。 第4図は、複数の即ち2乃至3個の入力マルチ
プレクサ105を含むマイクロ修飾装置34を示
し、このマルチプレクサの各々は、別紙Aに示す
如く、4ビツトの水平方向入力(水平方向のフイ
ールドABUS,BBUS,ALU,SHF,DEST,
TESTおよびRANDに対する)、又は3ビツトの
水平方向入力(水平方向ADRフイールドに対す
る)、又は2ビツトの水平方向入力(水平方向の
MEMフイールドに対する)を含み、又V1入力
(水平方向フイールドABUS,ALU,RAND)、
又はV2入力(水平方向フイールドBBUS,SHF,
ADR,MEM,TEST)、又はV1とV2の両フイ
ールド(水平方向のDESTフイールド)を含んで
いる。4ビツトの水平方向入力(HROM入力)
は、水平方向復号ロシツク35に与えるため、
HROMビツト又はV1又はV2ビツトのいずれか
からのものとしてマルチプレクサ入力の選択を制
御する。 前述の実施例は、水平方向マイクロ命令に対し
て指定され別紙Dに記載された特定のフイールド
を使用する。殆んどの場合、明らかなように、垂
直方向修飾フイールドを使用する水平方向フイー
ルドはソースおよび行先の場所を指定するもので
ある。例えば、INCH(増分)マイクロ命令に対
しては、V1垂直方向修飾フイールドによつてA
−BUSフイールドが修飾され、V1により増分さ
れるべく指定された場所におけるデータはA−
BUSに置かれ、DESTフイールドはV2垂直方向
修飾フイールドによつて修飾され、増分されたデ
ータはこの時V2で指定される場所に置かれる。 これ迄に述べた特定の実施例における記憶フイ
ールド(MEM)は特殊検査が行われる。16迄の
記憶操作は4ビツトのMEMフイールドを用いて
規定することができる。しかし、別紙Dに示され
る如く、僅かに4つの操作、即ちNOOP(ノー・
オペレーシヨン)、RM(メモリー読出し)、WM
(メモリー書込み)、およびV2フイールドである。
この場合、RMおよびWM以外の記憶操作を指定
するため使用されねばならない。このように、別
紙Eの特定の水平方向マイクロ命令のマイクロ操
作の符号化において明らかなように、V2修飾子
は他の記憶操作(即ち、WHM,RMOD,
WLM,RHYP等)を指定することができる。こ
のように、RMおよびWM以外の全操作の指定に
垂直方向修飾フイールドを用いて、MEMフイー
ルドは僅かに2ビツト(4ビツトの代りに)しか
必要でない。このため、水平方向制御ROM32
は第2図に示す如く33ビツトを具備するだけでよ
い。しかし、別紙Eに示す如く、又第4図に示す
如く、マイクロ修飾装置34に対して35ビツトを
与えることができ、MEMビツト23〜26の内
2つは何のオペレーシヨン上の重要性も持たな
い。 V2修飾子により記憶操作が規定される各場合
においては、V2修飾子は他のどのフイールドで
も指定するためには使用できず、明らかなよう
に、V1修飾子のみが自由に1つ以上の他のフイ
ールドを修飾する。しかし、RMおよびWMの両
操作に対しては、V1およびV2の両修飾子がこの
ように使用可能である。殆んどの記憶操作がRM
又はWM操作である(V1およびV2修飾が共に使
用可能である)ため、他の(即ち、RMでもWM
でもない)記憶操作について課される修飾子の制
約は、このような操作がそれ程頻繁に使用されな
いため厳しくない。しかし、MEMフイールド操
作の全体的な柔軟性は著しく増大するが、これは
水平方向の記憶操作を指定するためには僅かに4
つのマイクロ命令しか必要としないためである。
別紙Eに示す如く、別の15のマイクロ操作に対す
る記憶操作については、V2修飾フイールドの使
用がマイクロ操作(制御状態)の範囲を増大す
る。 必要に応じて他の水平方向マイクロ命令フイー
ルドに対する同様な構成も使用でき、全水平方向
制御ROMを用いて比較的少いマイクロ命令を指
定することができるが、そのマイクロ操作の範囲
は、垂直方向の修飾フイールドの使用により更に
余分な制御状態を規定することによつて著しく増
大される。このような目的の2つの垂直修飾フイ
ールドの使用が他方のフイールド以上を修飾する
能力を制限するが、多くの場合他のフイールドを
1つ以上修飾する必要はそれ程大きくない。もし
垂直修飾フイールド数を増加するならば、より大
きな垂直マイクロ命令ワードを犠牲にしてこの点
での柔軟性が増大する。 極限において、その各フイールドに対する1つ
のビツトを用いて1つの水平マイクロ命令を用い
ることができ、各場合のこのビツトは1つの修飾
子がこのフイールドに対して使用されるか、又は
省略時の操作が生じるかを規定する。このような
システムにおいては、使用可能な垂直方向修飾子
数は各々の規定可能なマイクロ操作に対して要求
する全てのフイールドの修飾を許容するに十分で
なければならない。水平方向マイクロ命令のマイ
クロ操作の範囲は、このため、所要数の修飾フイ
ールドを有する比較的大きな垂直方向マイクロ命
令ワードに対する要件を犠牲にして著しく増大さ
せ得る。 システム・バスの規則 1つ以上の記憶装置および1つ以上の入出力
(I/O)装置の如きCPU以外のシステム構成要
素からCPUに関する情報(即ち、アドレス、デ
ータ、命令等)の送入送出は、直接又はインター
フエース装置14と17を介して16ビツトのシス
テム・バス11上に生じる。このような情報の適
正な転送を提供するためには、有効なシステム・
バスの規約を使用しなければならない。この点に
関して、各バス・トランザクシヨンは、一方を
「指定」セグメント、他方を「データ」セグメン
トと識別される2つのセグメントからなる。 システムのオペレーシヨンのタイミングは、位
相1(φ−1)と位相2(φ−2)クロツクとし
て識別可能な2つの外部で生成されるクロツクに
より同期される。このクロツクは1つのマイクロ
サイクル時間(屡々「T時間」と呼ぶ)をφ−1
とφ−2の部分に分割する。 指定セグメントにおいては、バスは、生じつつ
あるバス・サイクル操作のタイプ(例、メモリー
照合操作又はI/O操作)およびトランザクシヨ
ンの目的(例、あるメモリー照合操作のための1
アドレス)を示す情報の説明のため使用される。
指定セグメントは常にバスのトランザクシヨンの
最初のφ−1部分において生じ、拡張不能であ
る。データ・セグメントにおいては、バスを用い
て例えばデータを指定セグメントに指示されたア
ドレス又はI/O装置に関するデータの出入れを
行う。このデータ・セグメントはバス・トランザ
クシヨンの最初のφ−2部分で始まり、更に長い
マイクロサイクル(各々がφ−1およびφ−2の
部分を有する)の整数だけ拡張することができ
る。T時間のφ−1およびφ−2部分は略々固定
された時間ギヤツプ(例、15ナノ秒)だけ分離さ
れ、いずれにしても位相の重なりを生じないよう
にセツト・アツプされる。 作用において、特定のシステム構成要素はその
バス・トランザクシヨンのデータ・セグメントの
間システム・バス上にデータを送出しつつあり、
他の構成要素は次のバス・トランザクシヨンの指
定セグメントのφ−1部分において1つのアドレ
スの転送を待機する。本文に述べたタイプの時間
多重化システムにおいては、この性質の瀕繁なバ
スの「送受反転」操作が問題を生じる。本システ
ムのオペレーシヨンにおいて使用される種々の論
理要素における遅れの故に、1つのバス・トラン
ザクシヨンのデータ・セグメント間のデータの転
送は、次のバス・トランザクシヨンの指定セグメ
ントのφ−1部分の開始によつて完全に完了され
得ない。従つて、第2の要素が、前の要素に対す
るデータ転送が完了する前にそのアドレスをシス
テム・バス上に置くように試みる。 このような条件は、本システムに悪影響をもた
らそうとする比較的強い瞬間的な電流サージを生
じることになる。例えば、もしシステム構成要素
がTTL回路として構成されるならば、電流サー
ジは好ましからざるノイズ効果即ち電磁妨害をシ
ステム中に生ぜしめると共に、TTL構成要素自
体に対しても長期の悪い衝撃を与えようとする。
更に、もしCPUが例えばMOS技術によつて集積
回路チツプとして形成されるならば、このような
電流サージは又少くとも長期、おそらくは短期の
悪い衝撃をMOSチツプの信頼性に与えることに
なろう。従つて、バスに同時にアクセスする
(「バス競合」条件)試みにおけるバスの送受反転
操作時の2つの異なる構成要素の作動から生じ得
るシステム構成要素のバス・ドライバ操作のいか
なるオーバーラツプも避けるための適当な手法を
考えることが必要である。 このような問題に対するこれ迄の1つの解決法
としては、バスの送受反転操作時、例えば、各デ
ータ転送操作の完了と、アドレス転送操作の如き
次の操作サイクルの始めとの間、あるいはその逆
の状態で「不感」サイクル(即ち、ノー・オペレ
ーシヨン・サイクル)を用いることであつた。こ
のような不感サイクルにおいては、情報は一切バ
ス上に駆動され得ず、活動状態のバスは遊休状態
となる。しかし、このような条件下での別の不感
サイクルの存在も遥かに高い解像力の基本的なマ
イクロ・サイクル・クロツクを必要とするか、あ
るいはシステム全体のオペレーシヨンを所要の速
度より遅れさせることになる。従つて、不感サイ
クルの使用は一般に問題の解決には望ましくない
試みである。 この問題の別の提供された解決法は、T時間の
2つの時間相φ−1とφ−2間の間隔を拡げるこ
とである。しかし、広いギヤツプを用いれば全T
時間が長くなり、従つてシステムの速度を更に大
きく低下させることになる。 本文に論述する本システムによれば、このバス
のアクセスのオーバーラツプの問題は、アドレス
使用可能信号(ADREN)とデータ使用可能信号
(DATEN)を適当に生成することによつて回避
される。信号ADRENの存在は妥当なアドレスが
システム・バス上に存在することを表示するが、
信号DATENはデータがシステム・バス上に存在
することを表示する。もし信号DATENの存在が
仮定されるならば、システム・バス上にアドレス
を置くことが可能な他の全ての装置のアドレス・
ドライバは作動を禁止される。同様に、全てのデ
ータ・ドライバは、信号ADRENが存在する限り
使用禁止状態にある。 信号ADRENは、電流バス・サイクルを開始す
ることを要求したシステム要素により生成され、
その生じつつあるバス・サイクル操作のタイプを
記述する情報がバス上に置かれたことを表示す
る。本文に示す特定のシステムは、例えば、4つ
の異なるタイプのバス・サイクル操作、即ちプロ
グラム・メモリー照合、制御卓メモリー照合、
I/O操作、局部メモリー照合操作の内の1つを
始動することができる。信号ADRENが存在する
と、システムは、以下に説明する如き別のビツト
と共に適当な16ビツト・ワードをバス上に置くこ
とにより前記の4操作のどれが生じるかを識別す
る。 このように、プログラム・メモリー照合におい
ては、16ビツト・ワードはビツト位置1〜15に
15ビツトのアドレスを含むが、このワードのビツ
ト0は下記の如く記憶サイクル(MEMCYC)ピ
ンとして示される別のピンに与えられる別のビツ
トに関連して使用される。即ち、 前述のシステムにおいては、例えば、メモリー照
合は、そのオペレーシヨンについては当技術にお
いて周知である米国マサチユーセツツ州ウエスト
ボロー市のデータ・ゼネラル社製のNOVAおよ
びECLIPSE形コンピユータにおけるプログラム
の実行のため使用される標準的なNOVA/
ECLIPSEの論理アドレス・スペースに対して行
うことができる。このようなプログラム・メモリ
ー照合においては、MEMCYCおよびビツト0ピ
ンの状態がプログラム・メモリー照合操作を識別
するが、残りの15ビツトはメモリー照合のための
論理アドレスを含む。MEMCYCおよびビツト0
の状態の組合せは、下記の如く4つのシステム・
オペレーシヨンの各々を規定するため使用され
る。即ち、
システムに関し、特に2レベルのマイクロコー
ド・アーキテクチユアを使用するシステムに関す
る。 データ処理システムは、コンパクトな単一基板
マイクロコンピユータから更に複雑で高性能のミ
ニコンピユータにわたるシステム構成を提供すべ
く広く開発されて来た。このようなシステムは、
適当なデータ・ストアから得られる1つのマイク
ロ命令又は一連の1つ以上のマイクロ命令に対す
るアクセスを提供するようにマイクロ命令が適当
に復号されるマイクロコード・アーキテクチユア
を使用する。 一般に、このようなシステムにおいては、一連
のマイクロ命令の内最初のマイクロ命令のマイク
ロ命令データ・ストア(屡々、マイクロコード・
ストアと呼ばれる)におけるアクセスのための始
動アドレスを提供するように、マイクロ命令がマ
イクロ命令レジスタから適当な復号ロジツクに適
当に与えられる。アクセスされたマイクロ命令
は、表示された命令を実施するための制御情報
と、一連のマイクロ命令の内次のマイクロ命令の
マイクロ・アドレスを決定するためのシーケンス
情報とを含む。順次のマイクロ命令の各々は、一
連のマイクロ命令の最後のものがアクセスされる
迄同じ種類の情報を含み、この最後のマイクロ命
令がアクセスされる時点でこのマイクロ命令ルー
チンが完了し、システムは次のマイクロ命令を復
号する用意が整う。 このようなシステムは、通常、所要の制御情報
およびシーケンス情報を含むように、比較的広い
(即ち、比較的多数のビツトを含む)マイクロ命
令ワードを使用する比較的大きなマイクロコー
ド・データ・ストアを必要とする。比較的広いマ
イクロ命令ワードを使用すると比較的早い速度の
操作が提供される(即ち、多数のビツトが同時に
並行して使用でき制御および順序付けの操作を行
う)が、このようなシステムは、マイクロコー
ド・データ・ストアにおける記憶ビツト数が比較
的大きくなる許でなく巾の広いマイクロ命令ワー
ドを取扱うデータ経路が更に複雑になつてシステ
ムが更に高価な構成要素およびデータ経路構成を
必要とするため、更に高価になりがちである。 マイクロ命令に必要なデータ記憶スペースを減
少させ多数の「広い」命令ワードの取扱いを避け
るため、あるマイクロコード・システムは、前述
の如き1つのレベルのマイクロコード・ストアと
は対照的に「2レベル」のマイクロコード・スト
ア技術を使用して来た。このような2レベル構成
は、マイクロ命令ワードにおける制御情報が屡々
多数のマイクロ命令と共通であると云う認識から
生じる。従つて、各マイクロ命令に対する全ての
制御情報および順序付け情報を別々に記憶するの
に必要な同数の比較的多数のデータ・ビツトの反
復的記憶を避けるため、多くのマイクロ命令と共
通する制御情報は、別のROMストアに記憶され
る順序付け情報とは別個に1つのROMストアに
記憶される。「第1のレベル」操作においては、
この順序付けプロセスはシーケンスマイクロコー
ドROMストアにおいて実行されて、「第2のレ
ベル」の操作において関与する特定のマイクロ命
令を順次実行するため必要な制御情報を提供する
制御マイクロコードROMストアにおける制御情
報をアクセスする順次アドレスを生じるが、後者
の情報は多くのマイクロ命令と共通となる。 このような2つのレベルのアプローチは、単一
レベル・マイクロコード・システムに比較して必
要なマイクロコード記憶スペースを減少させよう
とする傾向がある。しかし、このような2レベル
技術は、制限された制御ストア容量がシステムを
指定された組のマイクロ命令に対して構成するこ
とを可能にするが、システム全体の操作能力を増
加させるため基本マイクロ命令の組の拡張をもた
らす実際の柔軟性はない。 本考案は、2レベル・マイクロコード・システ
ムの能力を増大する2レベル概念の拡張を用い
て、マイクロコード制御ストアのサイズを増大さ
せることなくマイクロ命令の組を大巾に拡張する
能力を提供するものである。これにより、システ
ムは「直交する」マイクロ制御ストアと呼ぶとこ
ろのものを含み、この直交マイクロ制御ストアに
おいては、第1の即ち「垂直方向の」マイクロ制
御ストアが、以下に更に詳細に説明する如く、第
2のレベル即ち水平方向のマイクロ制御ストアの
1つ以上の「修飾子」フイールドから複数の第2
の即ち「水平方向の」マイクロ命令の1つを選択
するための選択された数の垂直方向のマイクロ命
令ビツトからなる1つのフイールドと、一連の垂
直方向のマイクロ命令の内の次の(即ち、連続す
る各々の)マイクロ命令のアドレスを提供する順
序付けフイールドとを有する「狭い」マイクロ命
令ワード部分を提供する。各々の水平方向のマイ
クロ命令は、実施される基本的な機能を表わす
が、従来のシステムとは異なつて、そのフイール
ドの1つ以上は垂直方向のマイクロ命令の修飾子
フイールドによる変更の対象となる。例えば、従
来の2レベル・システムは水平方向の制御ストア
における特定の制御ワードのアドレスを単に指定
するだけの垂直方向のシーケンス・ストアを使用
し、この制御ワードは第1の指定されたレジスタ
(例、汎用レジスタ、GR1)から第2の指定さ
れたレジスタ(例、汎用レジスタ、GR2)への
データの移動を要求する。対照的に、本発明の2
レベル・マイクロコード・システムは、例えば、
垂直方向のマイクロ命令を用いて、未指定の1つ
の場所から他の未指定の場所へのデータの移動を
必要とする水平方向の命令を指定することにな
る。この垂直方向のマイクロ命令は、従つて、そ
の修飾子フイールドにおいてこのようなデータ移
動のための特定のソースおよび行先の場所をも含
み、これによりこのような場所を識別するように
基本的な水平方向のマイクロ命令を修飾すること
ができる。 更に、本考案の2レベルのマイクロコード・シ
ステムは、垂直方向のマイクロ命令がマイクロプ
ロセサに直接配置された制御ストアから、あるい
は又外部のマイクロ制御ソースから取出すことが
できるように構成することができる。水平方向の
マイクロ制御ストアは又マイクロプロセサのチツ
プに直接配置することもできる。 各々の水平方向のマイクロ命令の能力は垂直方
向のマイクロ命令によつて達成可能なこのような
マイクロ命令の修飾により有効に倍増され、この
ような手法は本文中では屡々2レベルの「マイク
ロ修飾」法と呼ぶ。各々の水平方向のマイクロ命
令は多数の垂直方向のマイクロ命令により修飾さ
れてこれにより多数の全く独自のマイクロ命令を
表わすことができるため、比較的少数の水平方向
のマイクロ命令を用いて屡々「制御の根源」と呼
ぶ汎用ではあるが有効な1組の基本的な制御操作
を提供することができる。 本考案のシステムは又、1つ以上の入出力
(I/O)バスを介して周辺装置との通信を行う
能力をも含む。例えば、望ましい一実施態様にお
けるシステムは、以下に述べる如き目的のための
独特な「ポーリング」手法を用いてI/Oバスの
選定された1つにその時存在する全ての装置を識
別する装置を含むシステムI/Oインターフエー
ス装置を提供する。更に、本システムのI/Oイ
ンターフエース装置は、ポールされたところの選
定されたバスに対するシステムI/Oインターフ
エース装置を介する情報の転送の直接制御と、ポ
ールされなかつた別の選定されたバスに対する補
助装置を介する情報の転送を行う補助インターフ
エース装置の間接制御とを提供するように構成さ
れる。 システムI/Oインターフエース装置は又、
各々が略々一定の周波数を有し1つのシステム入
力クロツク信号から得られる1つ以上のカウンタ
信号を使用する。しかし、このシステムI/Oイ
ンターフエース装置は、複数の異なる既知の周波
数のどれかを有するシステム入力クロツク信号を
受取ることができる。従つて、この装置は、複数
の異る周波数入力信号のどれかに応答でき更に関
与する所要の略々一定の周波数の所要の1つ以上
のカウンタ信号をこれから得ることができる独自
の周波数の合成装置を含む。 更に、本考案のシステムは、2つの競合するシ
ステム構成要素によるシステム・バスに対する同
時のアクセスを阻止する個々のシステム・バスの
プロトコールを含む。更に、システム・バス・プ
ロトコールは、他のシステム構成要素がシステム
バスがアクセスの用意があることを表示する限
り、又他のシステム構成要素がシステム・バスの
前の制御を止めることの否定を表示する信号を要
求しない限り、バス制御の判断のための要件なし
に1つのシステム構成要素が直接システム・バス
の制御を得ることを許容するものである。 本考案の種々の特質については添付図面を助け
により更に詳細に理解することができる。 本考案の手法を用いるシステム全体を第1図に
示すが、同図においてはマイクロプロセサ・チツ
プ10(図中、中央処理装置即ちCPUとして示
される)は、適当なシステム・バス11を介して
記憶システム12と、1つ以上のシステムI/O
装置17と、1つ以上の外部のマイクロ制御チツ
プ13(「XMC」チツプとして示される)と、シ
ステム入出力インターフエース装置14(システ
ムI/Oインターフエースとして示される)と、
更に別のインターフエース装置14A(ECLI−
PSEI/Oインターフエースとして示される)
とに相互に接続されるが、この最後の2つの装置
は外部の入出力素子に対する適当なバス15およ
び15Aとインターフエースする。例えば、特定
の実施態様においては、本システムは、米国マサ
チユーセツツ州ウエストボロー市のデータ・ゼネ
ラル社(Data General)により製造販売される
如きマイクロNOVAコンピユータ・システム
と共に使用される如きマイクロNOVAタイプ
の周辺(I/O)装置と、データ・ゼネラル社製
のECLIPSEコンピユータ・システムと共に使
用される如きECLIPSEタイプの周辺(I/O)
装置と共に作動するよう構成される。 本考案の特定の実施態様においては、システ
ム・バス11は図示の如く16ビツトの並列システ
ム・バスであるが、外部のマイクロ制御チツプ1
3からのマイクロコード・ビツトは適当な専用化
された8ビツトのマイクロコード・バス16を介
して時間多重化方式でCPUに伝送される。 第2図はCPU10の更に詳細なブロツク図を
示し、8ビツトの外部マイクロコード・バス16
はそのマイクロコード・ビツトを適当な外部のマ
イクロ制御チツプ(XMC)のインターフエース
装置17Aへ供給し、システム・バス11は
CPUに関して入れたり出したりするため適当な
データを受入れあるいは供給することが可能な適
当なバス・トランシーバ装置18と接続される。 CPUは、適当な汎用レジスタおよびアキユム
レータからなる適当なレジスタ・フアイル21
と、「A」および「B」入力および「C」出力を
有する適当な演算論理装置(ALU)兼シフター
装置22と共に、マイクロ命令レジスタ(IR)
19とプログラム・カウンタ(PC)を含むマイ
クロ命令ロジツクを使用し、このようなレジスタ
とアキユムレータとALUとシフターの各構成要
素は当技術において周知の適当な構成を用いて編
成することが可能である。 複数の4つの内部バス23,24,25,26
は、第2図に示す如く前記諸装置間の適当な内部
データ経路を提供する。前記のALU兼シフタ
ー・ロジツク22のC出力は、他の装置に対する
と共に内部Cバス23上のバス・トランシーバを
介してシステム・バスに対して供給される。
ALU兼シフター・ロジツク22に対するAおよ
びB入力は、それぞれ内部のAバス24とBバス
25を介して他の諸装置と通信する。内部バス2
6は、レジスタおよびアキユムレータからバス・
トランシーバ18を経てシステム・バス11に至
る直結経路を提供する。このような多重内部デー
タ経路の使用により、本文に述べる特定の実施態
様においては400ナノ秒である1つのマイクロサ
イクル内でいくつかの同時の操作が生じることを
許容する。このため、16ビツトのレジスタ間の動
作は1マイクロサイクル(屡々、T期間と呼ぶ)
内で行われ、メモリーからレジスタへの転送は2
マイクロサイクル(2つのT期間)内で行われ
る。 2レベルのマイクロ制御ストアは、垂直方向制
御の読出し専用メモリー(ROM)31と水平方
向制御のROM32として示される。本考案の特
定の実施態様においては、第1のレベル即ち垂直
方向の制御ROM31が18ビツトの垂直方向のマ
イクロ命令を提供し、このビツトの内の6ビツト
が水平方向のマイクロ制御ROM32において複
数の第2のレベルの即ち水平方向のマイクロ命令
の内の1つを選定するため使用され、このような
64の命令が本文に示す特定の実施態様において記
憶される。水平方向の制御ROM32は特定の実
施態様において33ビツトを有する水平方向マイク
ロ命令を提供し、この水平方向制御ROMは例え
ば64×33ビツトの構成を有する。本文における実
施態様においては、垂直方向制御ストア31から
の8ビツトを用いて、以下に述べる如く水平方向
マイクロ制御ROMから選択された水平方向マイ
クロ命令を修飾するため使用可能な2つの4ビツ
ト修飾子フイールドを提供する。各々の垂直方向
マイクロ命令の残りの4ビツトは、垂直方向マイ
クロ命令の順序付けの制御、即ち垂直方向制御
ROM31から適当な垂直方向の順序付けロジツ
ク33を経由する次のアドレス・モードの指定の
ため使用される。この垂直方向のマイクロ命令の
2つの修飾子フイールドにより選択された水平方
向のマイクロ命令の指定されたフイールドの修飾
操作は適当なマイクロ修飾ロジツク34を介して
達成され、これと同時にこのロジツク34は水平
方向復号ロジツク35により適当に復号されて選
択されたマイクロ命令の機能を実施するため要求
される必要な制御信号と順序付け信号を提供する
35ビツトの命令ワードを供給する。 垂直方向のマイクロ命令は、CPUに常駐する
垂直方向制御ROM31から、あるいは外部のマ
イクロ制御チツプ13(第1図参照)から外部の
マイクロ制御チツプ・インターフエース装置17
Aを介して取出すことができるが、水平方向のマ
イクロ命令はCPUに常駐する水平方向制御ROM
32から取出される。外部のマイクロコードは適
当な時間多重化手法を用いることによりXMC装
置13から得ることができるが、この外部マイク
ロコードは時間多重化された8ビツトのマイクロ
コード・バス16において与えられる16ビツトか
らなる。 水平方向の復号論理装置35によつて復号され
ることを必要とする一連のマイクロ命令は、復号
制御がプログラムされたロジツク列(PLA)装
置40による命令レジスタ19からのマイクロ命
令の適当な復号動作によつて開始される。復号制
御PLA装置40によるこのようなマイクロ命令
の復号動作は、内部バス39上に初期の垂直方向
マイクロ命令を提供すると共に、内部バス41上
に垂直方向制御ROM31から取出されるべき次
のマイクロ命令のアドレスを供給する。垂直方向
の制御ROM31の順序付けは、垂直方向の順序
付けロジツク33から内部バス43を介して与え
られる9ビツトのシーケンス制御信号によつて適
当に制御される。一たん前記復号制御PLA装置
40が初期マイクロ命令および垂直方向制御
ROM31からの次のマイクロ命令に対するアド
レスを与えると、ROM31からのそれ以降の垂
直方向マイクロ命令の順序付けは、内部の4ビツ
ト・バス44における垂直方向の順序付け装置3
3に対し与えられた順序付けビツトにより決定さ
れる。もし垂直方向制御ROM31からのマイク
ロ命令が水平方向のマイクロ命令の選択ではなく
別の垂直方向マイクロ命令への分岐又は飛越しを
要求するならば、修飾ビツトが分岐操作を指定す
るため使用され、水平方向のマイクロ命令の選定
のため通常使用される6ビツトは水平方向のマイ
クロ命令の修飾のためにマイクロ修飾装置34が
8ビツトの修飾フイールドを使用することを禁止
する「ノー・オペレーシヨン」(NOOP)コード
を構成する。 このため、マイクロ修飾プロセスにおいては、
例えば、垂直方向マイクロ命令の2つの4ビツ
ト・フイールドが選択された水平方向のマイクロ
命令の2つ以上の4ビツト・フイールドの代りに
用いることができる。選択された水平方向フイー
ルドに垂直方向修飾フイールドを代替する手法は
各々の水平方向マイクロ命令の能力を有効に倍増
し、その結果前述の全面的な直交する2レベル・
マイクロ制御ストアの試みが、システム全体のマ
イクロ命令の組におけるマイクロ命令数を拡張す
るための強力な能力を有する制御根源語と屡々呼
ばれる汎用性を有するもビツト実効性の組をなす
基本的な水平方向マイクロ命令操作を提供する。 別紙Aに示す如く水平方向制御ROM32に記
憶された水平方向マイクロ命令の完全な組につい
て考察することはマイクロ修飾法を理解する上で
役立つ。 例えば、ある特定の実施例において、水平方向
マイクロ命令はそれぞれ以下に示す如く下記の9
つのフイールドを含んでいる。即ち、 A−BUSフイールドはAバス24上のALU/
シフター22のA入力に対するデータのソースを
規定するが、B−BUSフイールドはBバス25
上のALU/シフター22のB入力に対するデー
タのソースを規定する。ALUフイールドはALU
により実施される演算機能を規定し、SHFフイ
ールドはシフター機能を規定する。DESTフイー
ルドは、ALU/シフター21からCバス23上
に置かれるデータに対する行先を規定する。
ADRフイールドはメモリーのアドレスのソース
を規定し、MEMフイールドはシステム・バス1
1とCバス23間の連絡のための制御を行う。
TESTフイールドはテストされる種々のシステム
条件を識別するため使用され、RAND(ランダ
ム)フイールドは他の特殊な制御機能を規定す
る。別紙Aは、前述のフイールドの各々の意義を
更に詳細に示している。 垂直方向のマイクロ制御ROM31は、特定の
実施例においては、例えば、各々が18ビツト巾で
ある288のマイクロ命令を含むROM構成であり、
1つの水平方向マイクロ命令が実行される各々の
垂直方向のマイクロ命令について実行される。垂
直方向のマイクロ命令のシーケンスはマイクロ命
令(即ち、復号制御PLA装置40により復号さ
れる如き機械命令)を解釈する。 垂直方向マイクロ命令はそれぞれ下記の如き4
つのフイールドを含む。即ち、 6ビツトのADRHフイールドは、水平方向の
主制御ストア32において選択されるべき水平方
向マイクロ命令のアドレスを規定する。4ビツト
のV1フイールドは選択された水平方向マイクロ
命令に対する第1の修飾子(屡々、修飾子1と呼
ぶ)を規定し、4ビツトのV2フイールド(修飾
子2)は選択された水平方向マイクロ命令に対す
る第2の修飾子を規定する。垂直方向の順序付け
ロジツク33に対して与えられる4ビツトの
NAMフイールドは次の順次の垂直方向マイクロ
命令を選定する次のアドレス・モードを識別し、
このモードのビツトは新らしい垂直方向プログラ
ム・カウンタの9ビツト・アドレスを生成する。
別紙Bは更に詳細に前記各フイールドの意義を示
すものである。 別紙Aにおいて示される如く、多くの水平方向
マイクロ命令において、V1垂直方向修飾フイー
ルド又はV2垂直方向修飾フイールドとして識別
される垂直方向マイクロ命令修飾フイールドの1
つを要求するものとして指定される。各々の水平
方向マイクロ命令の残りのフイールドは図示の如
く固定的に指定される。特定の水平方向マイクロ
命令、例えば「メモリーに書込め」(WMEM)
マイクロ命令として識別されるものにおいて、そ
の全てのフイールドは、V1垂直方向修飾フイー
ルドの使用を要求するABUSフイールドおよび
V2垂直方向修飾フイールドの使用を要求する
ADRフイールドを除いて指定され、前記V1およ
びV2修飾フイールドは書込まれるデータの複数
のソースの内の1つ(V1)を識別し、前記ソー
ス・データが書込まれるべき1つ以上のアドレス
(V2)を識別することが可能である。このよう
に、基本的な汎用のメモリー書込み(WM)マイ
クロ命令は、修飾フイールドによる修飾を経てデ
ータ・ソースとアドレスの行先の大巾な組合せに
関する多くの特定の「書込み)マイクロ命令を生
成するため使用することができる。これ迄に述べ
た特定の実施態様においては、2つの修飾フイー
ルドの使用により、僅かに64の基本的な水平方向
マイクロ命令から多数のマイクロ命令を生成する
ことが可能になる。 復号制御PLA装置40は、各々が24ビツトを
有するマイクロ命令を含む構成を有する。このよ
うな装置は命令レジスタ19からの16ビツトのア
ドレスによりアドレス指定され、マイクロ命令か
ら復号された初期の垂直方向マイクロ命令と、1
つ以上の一連のマイクロ命令が要求される時垂直
方向制御ROM31における次の垂直方向マイク
ロ命令に対する9ビツト・ポインタ、並びに以下
に論述するように唯1つのマイクロ命令しか要求
されない場合復号のための次に続くマクロ命令を
呼出すことのできるフラツグとを提供する。復号
制御PLA装置40においては、本考案のシステ
ムにより構成されたマクロ命令と同数のエントリ
が存在する。 復号制御PLA装置40の始動マイクロ命令の
5つのフイールドは下記の如くである。即ち、 6ビツトのADRHフイールドは垂直方向マイ
クロ制御ROM31に関して既に説明したものと
同じであり、4ビツトのV1フイールドと4ビツ
トのV2フイールドも垂直方向マイクロ制御ROM
に関して前に述べたものと同じものである。更
に、復号制御PLA装置は、復号されたマクロ命
令のため必要なマイクロ命令シーケンスの第2の
マイクロ命令の垂直方向制御ROM31における
アドレスである9ビツトのADRVフイールドを
供給する。1つのビツト(Dフイールド)は、マ
クロ命令の解釈のためには復号制御PLA装置に
より与えられる1つのマイクロ命令で十分である
ことを示す。この場合、ADRVフイールドは無
視される。始動マイクロ命令の5つのフイールド
の更に詳細な要約については別紙Cに示される。 垂直および水平方向の制御ROMおよび復号制
御PLA装置は当技術において周知の従来の論理
装置であり、これ以上詳細に示す必要はない。垂
直方向の順序付け装置33およびマイクロ修飾装
置34のロジツクについてはそれぞれ第3図およ
び第4図に示される。 第3図に示す如く、例えば、特定の実施態様に
おける垂直方向順序付け装置は、垂直方向プログ
ラム・カウンタ100とマルチプレクサ装置10
1からなり、(1)復号制御PLA装置40からの9
ビツト出力の復号を行い、(2)プログラム・カウン
タおよび垂直方向修飾フイールドV1とV2の零ビ
ツト(VPCO)により識別される飛越し(分岐)
又は呼出し操作を行い、(3)スキツプ操作、即ち次
のプログラム・カウンタの出力(PC+1)の更
にその次のプログラム・カウンタ出力(PC+2)
へのスキツプを行い、(4)次のプログラム・カウン
タ出力(PC+1)、即ち次のプログラム・カウン
タ出力(PC+1)が保管され(割込み操作が生
じる時の如き)、次に割込みルーチンに続いて垂
直方向順序付け装置は出力(PC+1)に戻る戻
り操作を行うため5つの入力信号のどれか1つを
選択する。 マルチプレクサの動作は、必要なテスト条件が
存在する時、次のアドレス操作モード(前記の5
操作の1つが選択される)を規定する制御ロジツ
ク102を切換えることにより制御される。 第4図は、複数の即ち2乃至3個の入力マルチ
プレクサ105を含むマイクロ修飾装置34を示
し、このマルチプレクサの各々は、別紙Aに示す
如く、4ビツトの水平方向入力(水平方向のフイ
ールドABUS,BBUS,ALU,SHF,DEST,
TESTおよびRANDに対する)、又は3ビツトの
水平方向入力(水平方向ADRフイールドに対す
る)、又は2ビツトの水平方向入力(水平方向の
MEMフイールドに対する)を含み、又V1入力
(水平方向フイールドABUS,ALU,RAND)、
又はV2入力(水平方向フイールドBBUS,SHF,
ADR,MEM,TEST)、又はV1とV2の両フイ
ールド(水平方向のDESTフイールド)を含んで
いる。4ビツトの水平方向入力(HROM入力)
は、水平方向復号ロシツク35に与えるため、
HROMビツト又はV1又はV2ビツトのいずれか
からのものとしてマルチプレクサ入力の選択を制
御する。 前述の実施例は、水平方向マイクロ命令に対し
て指定され別紙Dに記載された特定のフイールド
を使用する。殆んどの場合、明らかなように、垂
直方向修飾フイールドを使用する水平方向フイー
ルドはソースおよび行先の場所を指定するもので
ある。例えば、INCH(増分)マイクロ命令に対
しては、V1垂直方向修飾フイールドによつてA
−BUSフイールドが修飾され、V1により増分さ
れるべく指定された場所におけるデータはA−
BUSに置かれ、DESTフイールドはV2垂直方向
修飾フイールドによつて修飾され、増分されたデ
ータはこの時V2で指定される場所に置かれる。 これ迄に述べた特定の実施例における記憶フイ
ールド(MEM)は特殊検査が行われる。16迄の
記憶操作は4ビツトのMEMフイールドを用いて
規定することができる。しかし、別紙Dに示され
る如く、僅かに4つの操作、即ちNOOP(ノー・
オペレーシヨン)、RM(メモリー読出し)、WM
(メモリー書込み)、およびV2フイールドである。
この場合、RMおよびWM以外の記憶操作を指定
するため使用されねばならない。このように、別
紙Eの特定の水平方向マイクロ命令のマイクロ操
作の符号化において明らかなように、V2修飾子
は他の記憶操作(即ち、WHM,RMOD,
WLM,RHYP等)を指定することができる。こ
のように、RMおよびWM以外の全操作の指定に
垂直方向修飾フイールドを用いて、MEMフイー
ルドは僅かに2ビツト(4ビツトの代りに)しか
必要でない。このため、水平方向制御ROM32
は第2図に示す如く33ビツトを具備するだけでよ
い。しかし、別紙Eに示す如く、又第4図に示す
如く、マイクロ修飾装置34に対して35ビツトを
与えることができ、MEMビツト23〜26の内
2つは何のオペレーシヨン上の重要性も持たな
い。 V2修飾子により記憶操作が規定される各場合
においては、V2修飾子は他のどのフイールドで
も指定するためには使用できず、明らかなよう
に、V1修飾子のみが自由に1つ以上の他のフイ
ールドを修飾する。しかし、RMおよびWMの両
操作に対しては、V1およびV2の両修飾子がこの
ように使用可能である。殆んどの記憶操作がRM
又はWM操作である(V1およびV2修飾が共に使
用可能である)ため、他の(即ち、RMでもWM
でもない)記憶操作について課される修飾子の制
約は、このような操作がそれ程頻繁に使用されな
いため厳しくない。しかし、MEMフイールド操
作の全体的な柔軟性は著しく増大するが、これは
水平方向の記憶操作を指定するためには僅かに4
つのマイクロ命令しか必要としないためである。
別紙Eに示す如く、別の15のマイクロ操作に対す
る記憶操作については、V2修飾フイールドの使
用がマイクロ操作(制御状態)の範囲を増大す
る。 必要に応じて他の水平方向マイクロ命令フイー
ルドに対する同様な構成も使用でき、全水平方向
制御ROMを用いて比較的少いマイクロ命令を指
定することができるが、そのマイクロ操作の範囲
は、垂直方向の修飾フイールドの使用により更に
余分な制御状態を規定することによつて著しく増
大される。このような目的の2つの垂直修飾フイ
ールドの使用が他方のフイールド以上を修飾する
能力を制限するが、多くの場合他のフイールドを
1つ以上修飾する必要はそれ程大きくない。もし
垂直修飾フイールド数を増加するならば、より大
きな垂直マイクロ命令ワードを犠牲にしてこの点
での柔軟性が増大する。 極限において、その各フイールドに対する1つ
のビツトを用いて1つの水平マイクロ命令を用い
ることができ、各場合のこのビツトは1つの修飾
子がこのフイールドに対して使用されるか、又は
省略時の操作が生じるかを規定する。このような
システムにおいては、使用可能な垂直方向修飾子
数は各々の規定可能なマイクロ操作に対して要求
する全てのフイールドの修飾を許容するに十分で
なければならない。水平方向マイクロ命令のマイ
クロ操作の範囲は、このため、所要数の修飾フイ
ールドを有する比較的大きな垂直方向マイクロ命
令ワードに対する要件を犠牲にして著しく増大さ
せ得る。 システム・バスの規則 1つ以上の記憶装置および1つ以上の入出力
(I/O)装置の如きCPU以外のシステム構成要
素からCPUに関する情報(即ち、アドレス、デ
ータ、命令等)の送入送出は、直接又はインター
フエース装置14と17を介して16ビツトのシス
テム・バス11上に生じる。このような情報の適
正な転送を提供するためには、有効なシステム・
バスの規約を使用しなければならない。この点に
関して、各バス・トランザクシヨンは、一方を
「指定」セグメント、他方を「データ」セグメン
トと識別される2つのセグメントからなる。 システムのオペレーシヨンのタイミングは、位
相1(φ−1)と位相2(φ−2)クロツクとし
て識別可能な2つの外部で生成されるクロツクに
より同期される。このクロツクは1つのマイクロ
サイクル時間(屡々「T時間」と呼ぶ)をφ−1
とφ−2の部分に分割する。 指定セグメントにおいては、バスは、生じつつ
あるバス・サイクル操作のタイプ(例、メモリー
照合操作又はI/O操作)およびトランザクシヨ
ンの目的(例、あるメモリー照合操作のための1
アドレス)を示す情報の説明のため使用される。
指定セグメントは常にバスのトランザクシヨンの
最初のφ−1部分において生じ、拡張不能であ
る。データ・セグメントにおいては、バスを用い
て例えばデータを指定セグメントに指示されたア
ドレス又はI/O装置に関するデータの出入れを
行う。このデータ・セグメントはバス・トランザ
クシヨンの最初のφ−2部分で始まり、更に長い
マイクロサイクル(各々がφ−1およびφ−2の
部分を有する)の整数だけ拡張することができ
る。T時間のφ−1およびφ−2部分は略々固定
された時間ギヤツプ(例、15ナノ秒)だけ分離さ
れ、いずれにしても位相の重なりを生じないよう
にセツト・アツプされる。 作用において、特定のシステム構成要素はその
バス・トランザクシヨンのデータ・セグメントの
間システム・バス上にデータを送出しつつあり、
他の構成要素は次のバス・トランザクシヨンの指
定セグメントのφ−1部分において1つのアドレ
スの転送を待機する。本文に述べたタイプの時間
多重化システムにおいては、この性質の瀕繁なバ
スの「送受反転」操作が問題を生じる。本システ
ムのオペレーシヨンにおいて使用される種々の論
理要素における遅れの故に、1つのバス・トラン
ザクシヨンのデータ・セグメント間のデータの転
送は、次のバス・トランザクシヨンの指定セグメ
ントのφ−1部分の開始によつて完全に完了され
得ない。従つて、第2の要素が、前の要素に対す
るデータ転送が完了する前にそのアドレスをシス
テム・バス上に置くように試みる。 このような条件は、本システムに悪影響をもた
らそうとする比較的強い瞬間的な電流サージを生
じることになる。例えば、もしシステム構成要素
がTTL回路として構成されるならば、電流サー
ジは好ましからざるノイズ効果即ち電磁妨害をシ
ステム中に生ぜしめると共に、TTL構成要素自
体に対しても長期の悪い衝撃を与えようとする。
更に、もしCPUが例えばMOS技術によつて集積
回路チツプとして形成されるならば、このような
電流サージは又少くとも長期、おそらくは短期の
悪い衝撃をMOSチツプの信頼性に与えることに
なろう。従つて、バスに同時にアクセスする
(「バス競合」条件)試みにおけるバスの送受反転
操作時の2つの異なる構成要素の作動から生じ得
るシステム構成要素のバス・ドライバ操作のいか
なるオーバーラツプも避けるための適当な手法を
考えることが必要である。 このような問題に対するこれ迄の1つの解決法
としては、バスの送受反転操作時、例えば、各デ
ータ転送操作の完了と、アドレス転送操作の如き
次の操作サイクルの始めとの間、あるいはその逆
の状態で「不感」サイクル(即ち、ノー・オペレ
ーシヨン・サイクル)を用いることであつた。こ
のような不感サイクルにおいては、情報は一切バ
ス上に駆動され得ず、活動状態のバスは遊休状態
となる。しかし、このような条件下での別の不感
サイクルの存在も遥かに高い解像力の基本的なマ
イクロ・サイクル・クロツクを必要とするか、あ
るいはシステム全体のオペレーシヨンを所要の速
度より遅れさせることになる。従つて、不感サイ
クルの使用は一般に問題の解決には望ましくない
試みである。 この問題の別の提供された解決法は、T時間の
2つの時間相φ−1とφ−2間の間隔を拡げるこ
とである。しかし、広いギヤツプを用いれば全T
時間が長くなり、従つてシステムの速度を更に大
きく低下させることになる。 本文に論述する本システムによれば、このバス
のアクセスのオーバーラツプの問題は、アドレス
使用可能信号(ADREN)とデータ使用可能信号
(DATEN)を適当に生成することによつて回避
される。信号ADRENの存在は妥当なアドレスが
システム・バス上に存在することを表示するが、
信号DATENはデータがシステム・バス上に存在
することを表示する。もし信号DATENの存在が
仮定されるならば、システム・バス上にアドレス
を置くことが可能な他の全ての装置のアドレス・
ドライバは作動を禁止される。同様に、全てのデ
ータ・ドライバは、信号ADRENが存在する限り
使用禁止状態にある。 信号ADRENは、電流バス・サイクルを開始す
ることを要求したシステム要素により生成され、
その生じつつあるバス・サイクル操作のタイプを
記述する情報がバス上に置かれたことを表示す
る。本文に示す特定のシステムは、例えば、4つ
の異なるタイプのバス・サイクル操作、即ちプロ
グラム・メモリー照合、制御卓メモリー照合、
I/O操作、局部メモリー照合操作の内の1つを
始動することができる。信号ADRENが存在する
と、システムは、以下に説明する如き別のビツト
と共に適当な16ビツト・ワードをバス上に置くこ
とにより前記の4操作のどれが生じるかを識別す
る。 このように、プログラム・メモリー照合におい
ては、16ビツト・ワードはビツト位置1〜15に
15ビツトのアドレスを含むが、このワードのビツ
ト0は下記の如く記憶サイクル(MEMCYC)ピ
ンとして示される別のピンに与えられる別のビツ
トに関連して使用される。即ち、 前述のシステムにおいては、例えば、メモリー照
合は、そのオペレーシヨンについては当技術にお
いて周知である米国マサチユーセツツ州ウエスト
ボロー市のデータ・ゼネラル社製のNOVAおよ
びECLIPSE形コンピユータにおけるプログラム
の実行のため使用される標準的なNOVA/
ECLIPSEの論理アドレス・スペースに対して行
うことができる。このようなプログラム・メモリ
ー照合においては、MEMCYCおよびビツト0ピ
ンの状態がプログラム・メモリー照合操作を識別
するが、残りの15ビツトはメモリー照合のための
論理アドレスを含む。MEMCYCおよびビツト0
の状態の組合せは、下記の如く4つのシステム・
オペレーシヨンの各々を規定するため使用され
る。即ち、
【表】
1 1 制御卓メモリー照合
制御卓操作のためのソフトウエアの記憶のため使
用されるアドレス・スペースに関する制御卓メモ
リー操作の場合には、例えば、MEMCYCおよび
ビツト0ピンが制御卓メモリー照合操作を規定す
るが、残りの15ビツトは再び制御卓アドレスを規
定する。局部メモリー照合はシステム間通信
(例、システムのCPUと他のプロセサ等の間の通
信)の編成のための命令を含むアドレス・スペー
スと関連し、従つてシステム操作ワードは15ビツ
トの局部メモリー・アドレスを含む。システム・
バス上に置かれるI/O操作の書式については後
で更に詳細に論議しよう。 バス・タイプ操作記述子(即ち、適当なアドレ
ス又はI/O機能の定義)がバス上に置かれる
時、信号ADRENが存在する。関与するあらゆる
データが例えばバス・サイクルのφ−2において
バス上に送られる時、信号ADRENはもはや存在
しない。信号ADRENは存在すれば、データ転送
がシステム・バス上に生じつつありそのためシス
テムにおける全てのアドレス・ドライバが前述の
如く作動禁止状態になることを表示する。信号
DATENは、システム・バス上に置かれるデータ
を供給しつつある特定のシステム構成要素によつ
て供給される。 このような制御のための信号ADRENおよび
DATENは、システムのロジツクにおける時間遅
延の故にバスの送受反転操作の間に生じるバス競
合条件から保護し、従つて、TTLロジツク又は
MOSチツプのどちらと使用されようともシステ
ムの信頼性を高める。 本システムは異なる稼動時間サイクルを有する
メモリーと共に使用することができる。φ−1に
おいて有意義なアドレスにおけるデータがCPU
とCPUの外部の記憶装置との間に転送されるな
らば、この転送が内部で完了できるように次のφ
−2においてバス上に駆動するためにこのデータ
が使用可能でなければならない。もしデータが使
用可能であれば、データがバス上で駆動されデー
タ転送が完了させられるその時のサイクルのφ−
2部分の終りにおいて記憶装置が信号READYを
存在させる。もしデータが使用可能でなく、その
時のT時間のφ−2部分の終り迄に転送のためバ
ス上に駆動されなかつたならば、信号READYは
存在させられず、このバス・サイクル操作は延期
されて、データが転送のため使用可能となる迄、
必要に応じて1つ以上のT時間において信号
DATENを存続状態にさせる。信号READY,
ADRENおよびDATENを生成するロジツクは第
5図および第6図に示される。 更に、データ転送操作のためのシステム・バス
の制御を行うシステム構成要素がこの制御を止め
ようとしない場合、この要素はこれが実行中の操
作が完了する迄バスの制御を維持するために、バ
スのロツク信号(B/LOCK)を存続させねばな
らない。例えば、システムのある構成要素はデー
タを読出し、このデータをある方法で修飾し、こ
の修飾したデータを使用又は記憶のため前記要素
へ戻すところの屡々読出し/修飾/書込み
(RMW)操作と呼ばれる操作を要求することが
できる。従つて、この構成要素は、データが修飾
されてこの要素に戻される迄バスの制御を放棄す
ることができず、この操作は1つ以上のT時間サ
イクルを要求し得る。このような状況において
は、RMW操作を実行しつつあるシステムの構成
要素は全RMW操作が完了する迄は信号B/
LOCKを存続させる。このような信号の存続は他
のどの装置もバスの制御を獲得することを阻止す
る。B/LOCK信号を生成する論理回路例は第7
図に示される。 システム・バスと通信関係にある装置は、その
時のバス・サイクル操作が存在するならばこれが
終了してバスの制御を次のT時間の始め(即ち、
その時のバス・サイクルを用いるどの装置によつ
ても信号READYが存続させられる限り、又他の
装置によつて信号B/LOCKが存続させられない
限り)に放棄する時は常に、バスのマスターとな
ることができる。このように、バス制御のマスタ
ーを欲する装置は、信号READYと信号B/
LOCKをモニターし、バス要求(BREQ)信号を
存続させることによつてバスの制御を要求し、信
号READYおよび信号B/LOCKの前述の諸条件
の下にバスの制御を獲得することを許される。こ
のような装置は、比較的高いバス優先順位を有す
る装置も又どのバス・サイクルの終りにおいても
バスの制御を要求しない限り、この装置がもはや
信号BREQを存続させなくなる迄は制御を維持す
る。 このように、バス制御は、CPUによるのでは
なく制御を欲する装置によつて取扱われる。従来
のシステムにおいては、バスの制御は通常、外部
の装置からのバス要求に対応しなければならずか
つその後「バス許与」信号又はこれと相等の信号
を与えるかどうかを決定しなければならない
CPUによつて取扱われる。このようなCPUによ
る判断プロセスは、CPUと、このCPUがその判
断を行うため通信しなくてはならない各々のシス
テム構成要素との間に必要とされる諸信号の伝播
中の遅れの故に比較的長い時間を必要とする本発
明のシステムに使用される手順、即ち装置自身が
信号BREQを生成し、適正条件下でこの信号生成
と同時にバスの制御を受取る如き手順によれば、
バスの制御要求は遥かに早い方法で取扱われてバ
ス制御は更に迅速に要求側の装置に対して伝達さ
れる。 前述の如く、異なるタイプの各バス操作は
MEMCYCピンの使用を要求し、このピンはバス
サイクル記述ワード(即ち、アドレス又はI/O
操作ワード)のビツト0と共に実施すべき操作の
タイプを規定する。前述の操作チヤートによれ
ば、アドレス・ワードのMEMCYCおよびビツト
0が共に零である時にI/O操作が規定される。
このような操作条件に対しては、I/O操作のた
めの下記のワード書式がシステム・バス上に置か
れる。即ち、 前記のI/O命令はCPUにおいて受取られる標
準的なNOVA/ECLIPSE I/O命令書式の再
び符号化されたバージヨンを有効に表わし、この
再符号化された命令はその時のバス・サイクルの
サイクル記述部分においてバス上に置かれる。元
のマイクロNOVA/ECLIPSEI/O命令
は、CPUとI/O装置間のインターフエース・
ロジツクの構成を容易にするために前述の如く再
符号化される。 ここにおいて明らかなように、ビツト0は
MEMCYCピンと関連して使用されてI/O操作
を規定する。ビツト1は可能性のある将来の使用
のため予約された不使用ビツトである。ビツト2
〜4は、システム、I/Oおよびデータ・チヤネ
ル(DCH)の諸機能を下記の如く規定するため
使用される。即ち、
制御卓操作のためのソフトウエアの記憶のため使
用されるアドレス・スペースに関する制御卓メモ
リー操作の場合には、例えば、MEMCYCおよび
ビツト0ピンが制御卓メモリー照合操作を規定す
るが、残りの15ビツトは再び制御卓アドレスを規
定する。局部メモリー照合はシステム間通信
(例、システムのCPUと他のプロセサ等の間の通
信)の編成のための命令を含むアドレス・スペー
スと関連し、従つてシステム操作ワードは15ビツ
トの局部メモリー・アドレスを含む。システム・
バス上に置かれるI/O操作の書式については後
で更に詳細に論議しよう。 バス・タイプ操作記述子(即ち、適当なアドレ
ス又はI/O機能の定義)がバス上に置かれる
時、信号ADRENが存在する。関与するあらゆる
データが例えばバス・サイクルのφ−2において
バス上に送られる時、信号ADRENはもはや存在
しない。信号ADRENは存在すれば、データ転送
がシステム・バス上に生じつつありそのためシス
テムにおける全てのアドレス・ドライバが前述の
如く作動禁止状態になることを表示する。信号
DATENは、システム・バス上に置かれるデータ
を供給しつつある特定のシステム構成要素によつ
て供給される。 このような制御のための信号ADRENおよび
DATENは、システムのロジツクにおける時間遅
延の故にバスの送受反転操作の間に生じるバス競
合条件から保護し、従つて、TTLロジツク又は
MOSチツプのどちらと使用されようともシステ
ムの信頼性を高める。 本システムは異なる稼動時間サイクルを有する
メモリーと共に使用することができる。φ−1に
おいて有意義なアドレスにおけるデータがCPU
とCPUの外部の記憶装置との間に転送されるな
らば、この転送が内部で完了できるように次のφ
−2においてバス上に駆動するためにこのデータ
が使用可能でなければならない。もしデータが使
用可能であれば、データがバス上で駆動されデー
タ転送が完了させられるその時のサイクルのφ−
2部分の終りにおいて記憶装置が信号READYを
存在させる。もしデータが使用可能でなく、その
時のT時間のφ−2部分の終り迄に転送のためバ
ス上に駆動されなかつたならば、信号READYは
存在させられず、このバス・サイクル操作は延期
されて、データが転送のため使用可能となる迄、
必要に応じて1つ以上のT時間において信号
DATENを存続状態にさせる。信号READY,
ADRENおよびDATENを生成するロジツクは第
5図および第6図に示される。 更に、データ転送操作のためのシステム・バス
の制御を行うシステム構成要素がこの制御を止め
ようとしない場合、この要素はこれが実行中の操
作が完了する迄バスの制御を維持するために、バ
スのロツク信号(B/LOCK)を存続させねばな
らない。例えば、システムのある構成要素はデー
タを読出し、このデータをある方法で修飾し、こ
の修飾したデータを使用又は記憶のため前記要素
へ戻すところの屡々読出し/修飾/書込み
(RMW)操作と呼ばれる操作を要求することが
できる。従つて、この構成要素は、データが修飾
されてこの要素に戻される迄バスの制御を放棄す
ることができず、この操作は1つ以上のT時間サ
イクルを要求し得る。このような状況において
は、RMW操作を実行しつつあるシステムの構成
要素は全RMW操作が完了する迄は信号B/
LOCKを存続させる。このような信号の存続は他
のどの装置もバスの制御を獲得することを阻止す
る。B/LOCK信号を生成する論理回路例は第7
図に示される。 システム・バスと通信関係にある装置は、その
時のバス・サイクル操作が存在するならばこれが
終了してバスの制御を次のT時間の始め(即ち、
その時のバス・サイクルを用いるどの装置によつ
ても信号READYが存続させられる限り、又他の
装置によつて信号B/LOCKが存続させられない
限り)に放棄する時は常に、バスのマスターとな
ることができる。このように、バス制御のマスタ
ーを欲する装置は、信号READYと信号B/
LOCKをモニターし、バス要求(BREQ)信号を
存続させることによつてバスの制御を要求し、信
号READYおよび信号B/LOCKの前述の諸条件
の下にバスの制御を獲得することを許される。こ
のような装置は、比較的高いバス優先順位を有す
る装置も又どのバス・サイクルの終りにおいても
バスの制御を要求しない限り、この装置がもはや
信号BREQを存続させなくなる迄は制御を維持す
る。 このように、バス制御は、CPUによるのでは
なく制御を欲する装置によつて取扱われる。従来
のシステムにおいては、バスの制御は通常、外部
の装置からのバス要求に対応しなければならずか
つその後「バス許与」信号又はこれと相等の信号
を与えるかどうかを決定しなければならない
CPUによつて取扱われる。このようなCPUによ
る判断プロセスは、CPUと、このCPUがその判
断を行うため通信しなくてはならない各々のシス
テム構成要素との間に必要とされる諸信号の伝播
中の遅れの故に比較的長い時間を必要とする本発
明のシステムに使用される手順、即ち装置自身が
信号BREQを生成し、適正条件下でこの信号生成
と同時にバスの制御を受取る如き手順によれば、
バスの制御要求は遥かに早い方法で取扱われてバ
ス制御は更に迅速に要求側の装置に対して伝達さ
れる。 前述の如く、異なるタイプの各バス操作は
MEMCYCピンの使用を要求し、このピンはバス
サイクル記述ワード(即ち、アドレス又はI/O
操作ワード)のビツト0と共に実施すべき操作の
タイプを規定する。前述の操作チヤートによれ
ば、アドレス・ワードのMEMCYCおよびビツト
0が共に零である時にI/O操作が規定される。
このような操作条件に対しては、I/O操作のた
めの下記のワード書式がシステム・バス上に置か
れる。即ち、 前記のI/O命令はCPUにおいて受取られる標
準的なNOVA/ECLIPSE I/O命令書式の再
び符号化されたバージヨンを有効に表わし、この
再符号化された命令はその時のバス・サイクルの
サイクル記述部分においてバス上に置かれる。元
のマイクロNOVA/ECLIPSEI/O命令
は、CPUとI/O装置間のインターフエース・
ロジツクの構成を容易にするために前述の如く再
符号化される。 ここにおいて明らかなように、ビツト0は
MEMCYCピンと関連して使用されてI/O操作
を規定する。ビツト1は可能性のある将来の使用
のため予約された不使用ビツトである。ビツト2
〜4は、システム、I/Oおよびデータ・チヤネ
ル(DCH)の諸機能を下記の如く規定するため
使用される。即ち、
【表】
ビツト5および6は下記の如く使用されるI/O
ポートを規定する。即ちビツト5 ビツト6 ポート 0 0 状況 0 1 A 1 0 B 1 1 C ビツト7は下記の如く転送の方向を規定する。即
ち、 ビツト7 方 向 0 アウト 1 イン ビツト8と9は、下記の如く使用中の制御の選
択、即ち通常のECLIPSEの操作に従うスター
ト、クリア、パルス操作のいずれかを規定する。
即ち、ビツト8 ビツト9 機能 0 0 なし 0 1 スタート 1 0 クリア 1 1 パルス ビツト10〜15は、I/O操作中使用されるべ
き特定のI/O装置を識別する6ビツトの装置コ
ードを規定する。前記操作は、規定の如く、例え
ば周知のECLIPSEコンピユータと共に当業者
に周知であるため、これ以上詳細に説明の必要は
ない。 前述のI/O命令書式の使用のためには、周知
のこれ迄のECLIPSE命令書式を用いるI/O
命令の取扱いに通常必要とされるよりもI/O命
令の処理のための外部ロジツクが少くてすむ。操
作のタイプ、即ちメモリー照合又はI/O操作は
適当にフラツグされ(MEMCYCおよびビツト0
の状態により)、もしこれがI/O操作であれば、
インターフエース操作を打切るために前記書式に
従つて送られる。 このため、あるI/O命令における特定のビツ
トの組合せが稍々重要であるが、これはこの組合
せによりこれまでECLIPSEシステムにおいて
使用可能であつたI/O操作の能力を拡張するた
めである。このように、明らかなように、I/O
ポートは、ECLIPSEシステムに使用される通
常のポートA,B,Cを含むのみならず、その用
途については以下に説明する「状況」ポートと呼
ぶ別のポート能力をも識別する。 このように、もしI/O命令がポート・フイー
ルド(ビツト5,6および0,0)における状況
ポートと判断フイールド(ビツト7=1)におけ
るIN方向を識別するならば、このような命令は
識別された装置(装置コード・ビツト10〜15
により識別される)に対する要求として作動して
その状態に関する情報を提供する。本装置は次に
データを下記書式において戻す。即ち、 本装置は、ポール・ビツト2の状態によりシステ
ム・バスにおけるその存在を表示し、更にそれぞ
れその「使用中」又は「完了」の状態を表示す
る。更に、本装置はこれ以外の情報の提供に使用
するための13の予約されたビツトを有する。 このような書式は、このような状況の情報の包
含(これにより個々に生成された「使用中」と
「完了」のフラツグに対する2つの余分なワイア
を必要とする)を許容せず、又本文に記述した本
システムにおいては役立つ如き「ポーリング」
(即ち、システム・バス上の1つの装置の存在の
表示を与える)のため使用できなかつたこれ迄の
ECLIPSE命令書式と対照をなしている。 従つて、本システムに供給され、アキユムレー
タ・ビツト(受取られた標準的なI/O命令によ
りCPUに対して既に識別される)を包含するこ
とを必要としない改良されたI/O命令書式によ
り、標準的なマイクロNOVA/ECLIPSE
I/O命令書式によつては規定されないデータを
転送する別の能力が提供される。 システムI/Oインターフエース装置 第1図に示す如く、システムのCPUは、複数
の異なるバス上のI/O装置と通信可能なように
構成されている。例えば、CPUはシステム・バ
ス11上のI/O装置とは直接に通信でき、特定
の実施例において、例えばECLIPSEI/O装
置に対するECLIPSEI/Oバスとして示され
るバス15A上、又は特定の実施例においてマイ
クロNOVA装置用のマイクロNOVAバスと
して示されるバス15B上のI/O装置と通信す
ることができる。本文に記載したシステムによれ
ば、データは以下に更に詳細に説明するように、
システム・バス11を介してシステムI/O装置
に関して直接送受可能であるが、ECLIPSE
I/Oに対するデータECLIPSEバス15Aを
経て別個のECLIPSEI/Oインターフエース
装置45を介してこのような諸装置に関し送受さ
れ、その転送はシステムI/Oインターフエース
装置14からの制御信号によつて制御される。更
に、マイクロNOVAI/O装置に対するデー
タはシステムI/Oインターフエース装置を介し
てマイクロNOVAバス15B上のこのような
装置に関し送受される。 システムI/Oインターフエース装置14の更
に詳細なブロツク図は第8図および第8A図に示
される。アドレス/データ転送用およびマイクロ
NOVAポーリング操作(以下に更に詳細に論
述する如き)用のマイクロNOVAバス制御ロ
ジツクの別の更に詳細なブロツク図は第8B図に
示される。図に示す如く、システムI/Oインタ
ーフエース装置は複数の局部即ち内部の装置およ
びブロツク50で示す如き種々の制御論理回路を
含み、これ等装置は既に公知でありこれ迄入手可
能なシステムと関連して使用されるタイプのもの
である。例えば、システムI/Oインターフエー
ス装置14の内部装置は、下記の文献に関して示
し論述されたData General社のECLIPSEコン
ピユータ・システムにおいて使用されるタイプの
諸装置を含む。即ち、 ECLIPSEM/600の操作原理 No.014−000092 ECLIPSES/200プログラマ参考書 No.014−00061 インターフエース設計者の参考書、NOVAお
よびECLIPSEシリーズ・コンピユータ No.015−000031 マイクロNOVA集積回路データ・マニユアル No.014−000074 前掲の文献は、米国マサチユーセツツ州ウエス
ボロー市のData General社から入手可能な、同
社により製成販売されるNOVA,ECLIPSE
およびマイクロNOVAの各システムに関する
文献の典形例である。これ等文献は、前述の内部
装置のみならず、これに記載されたシステムの他
の種々の特質をも理解するため背景的な情報とし
て有益な情報を含んでいる。 このため、このような装置は、例えば、4つの
選択可能な周波数の1つであるカウンタ・クロツ
ク速度においてクロツク信号を生じるプログラム
可能なタイミング信号を提供する「プログラム可
能な間隔タイマー」(PIT)を含んでもよい。特
定の実施態様においては、例えば、プログラム可
能な間隔タイマーは、周知の分周技術を用いて一
定の1MHzの入力クロツク信号から1MHz,100K
Hz,10KHz又は1KHzのカウンタ・クロツク間隔
を生じるよう構成することができる。システム
I/O装置においては、このようなタイマーは、
以下において更に詳細に論述する如く、周波数合
成装置51から得る1MHzの擬似安定信号に応答
する。 局部装置は又、例えば、システムのクロツク速
度から独立するタイミング・パルスを生成する
「実時間クロツク」(RTC)装置を含むこともで
きる。この実時間クロツクは、4つの選択可能な
周波数の内の1つ、例えば、AC回線周波数又は
10Hz,100Hz又は1000Hzで割込み可能であるが、
後者の3つのクロツクは全て公知の周波数分割法
により1MHzの擬似安定信号から得る。 前記内部装置には、AC電源が停電したかある
いはAC電力が一時的な停電の後回復したこと、
あるいは又起動電流条件が存在することを表示す
る電源モニター・パルスの過度状態を検出する電
源モニター装置をも含む。 システムI/Oインターフエース装置は又、こ
れを介して直列データが非同期的に供給できる
(例えば、テレタイプ装置等から)適当な入出力
インターフエース・ロジツクをも含み、この入出
力はそれぞれ、適当な有限状態機械(FSM)お
よび制御ロジツク59と60を用いる標準的な手
法に従つて制御された方法で、入出力レジスタ5
7と58からTTIピン55およびTTOピン56
を介して供給される。非同期の直列データの端末
入力および端末出力を用いる従来技術の諸装置に
おける如く、端末装置は選択可能なボー速度で作
動できるが、このボー速度は、特定の場合に例え
ば50乃至38400ボーの如き範囲の多くの速度から
選択される。このような目的のため、本システム
においては、ボー速度信号はこれも又周波数合成
装置51から得た擬似安定の614400Hzのマスタ
ー・ボー速度信号から得られる。この選択された
ボー速度はこれから、非同期の直列データ入出力
操作を用いる従来技術のシステムの周知の手法に
従つて適当なボー速度の選択により得ることがで
きる。 前述の内部装置および端末ロジツクは本システ
ムのI/Oインターフエース装置14の進歩性の
一部をなすものではなく、これ以上詳細に説明す
る必要はない。 便宜上、適当なランダム・アクセス・メモリー
(RAM)記憶装置61は、例えば、制御卓操作
を行う時使用できる一時記憶スペースを提供する
ためシステムI/Oインターフエース装置にも存
在し得る。この記憶装置は、望ましい制御卓に用
いるため適当なサイズの記憶スペースを提供する
よう形成できる周知のRAMタイプのものであ
る。例えば、ある特定の実施態様はこの目的のた
めの選択された数の16ビツト・ワードを記憶する
ことが可能である。このため、RAM装置61
は、システムI/Oインターフエース装置14の
進歩性の一部を構成せず、これ以上詳細に説明す
る必要はない。更に、前述のECLIPSEおよび
マイクロNOVAについての文献に説明した如
き用途のマスク不能割込み(NMI)レジスタ6
2も又システムI/Oインターフエース装置14
の一部をなすが、その進歩性の一部をなすもので
はなく、これ以上詳細に説明する必要はない。 アドレスおよびデータは、システムI/Oイン
ターフエース装置14において物理的なアドレ
ス/データ(PADS)ピン63で与えられた16ビ
ツト・ワード(0〜15)の形態でシステ
ム・バス11に関して出入りするように供給され
る。適当なドライバ兼マルチプレクサ回路64を
この目的に使用し、システム・バスに関して出入
りするよう転送されるアドレスおよびデータのワ
ードは直接内部バス66を介し、あるいはこのよ
うなアドレスおよびデータがその転送方向に従つ
てシステムI/Oインターフエース装置又はシス
テム・バスに対して供給される前にその一時的記
憶のため使用される一時的アドレス/データ・レ
ジスタ67を介して間接的に、システムI/Oイ
ンターフエース装置において使用するように内部
のバス65に供給される。 CPUと、このCPUが通信を欲するI/O装置
との間のアドレスおよびデータの転送に使用しな
ければならないI/Oバスは、どんなタイプの
I/O装置(例えば、ECLIPSEバス15Aを
介して通信するECLIPSE装置、マイクロ
NOVAバス15Bを介して通信するマイクロ
NOVA装置、およびシステム・バス11を介
する他の全ての装置)が含まれるかに従つて異な
る。システムI/Oインターフエース装置14
は、どのI/O装置が含まれるか、従つてどの
I/Oバスがインターフエース装置制御部が
CPUに関するこのような転入出を制御できるよ
うにこのデータの転送のため使用されるかを判断
しなければならない。第8図および第8A図、お
よび第8B図の更に詳細なブロツク図に示される
本発明のシステムに従つて、システムI/Oイン
ターフエース装置14は、これが制御する2つの
バス即ちバス15Aおよび15Bの選択された一
方にある全ての装置を識別するための論理回路を
含む。このような識別は、前記バスの選択された
1つを適当に「ポーリング」してどの装置がこの
選択されたバス上にあるかについての適当な情報
を記憶することによつて達成することができる。 マイクロNOVAI/Oバス15B又は
ECLIPSEI/Oバス15Aのいずれかを使用
する本発明の特定の実施態様によれば、システム
I/Oインターフエース装置はマイクロNOVA
I/Oバス15Bを「ポール」してどの装置が
このバス上にあるかを判定するように構成されて
いる。適当なマイクロNOVAポール・カウン
タ62は、システムと共に使用されることが多い
種々の装置を識別する予期される各装置コード・
ワードを与え、前記の装置コード・ワードは、例
えば、ポール・カウンタ68から「下位のバイ
ト」(バイトが8ビツト)のシフト・レジスタ6
9を介して第8A図においてIOD2として表示さ
れる出力マイクロNOVAバス・ピン70に対
して、マイクロNOVAI/Oバス15Bに与
えられる6ビツトの装置コードである。この6ビ
ツトの装置コードは、ポーリング・プロセスにお
いてシフトレジスタ(S/R)69に対して並列
に供給され、更にシフト・レジスタ69からマイ
クロNOVAバスに対して直列に供給される。 マイクロNOVAバス15BにおけるCPUと
通信するマイクロNOVAI/O装置がその識
別のため装置コード信号により質疑される時、も
し特定の装置コードと整合する装置がマイクロ
NOVAバスに存在するならば、これ等の装置
はピン71における識別可能な戻りI/Oクロツ
ク(IOCLK)信号をマイクロNOVA有限状態
機械兼制御ロジツク72に与える。このような操
作は、もしこれ等の装置が装置コードにより質疑
されるならば、この識別可能なI/Oクロツク信
号が存在しないECLIPSEバス15A上の諸装
置とは対照をなす。このような対照的な操作の故
に、マイクロNOVA装置は「ポール」されて、
マイクロNOVAバス15B上のそれ等の存在
およびシステムI/Oインターフエース装置14
に保持されるそれ等の存在の記録について判定を
行うことができる。 このように、マイクロNOVAバス上の特定
のI/O装置からのピン71における信号
IOCLKの受取りの状態は、マイクロNOVA有
限状態機械兼制御ロジツク装置72における制御
ロジツクに与えられる。このロジツクは、マイク
ロNOVAポール・レジスタ73に与えられる
マイクロNOVA存在信号(屡々μNEXSTと呼
ぶ)を生成して、このような装置コードを有する
I/O装置がマイクロNOVAバス上に存在す
ることを表示する。 例えば、マイクロNOVAポール記憶レジス
タ73は64ビツトのレジスタであり、各ビツトは
特定の装置コードと対応する(特定の実施態様で
は、マイクロNOVAバス上に存在し得る64迄
の可能なマイクロNOVA装置がある)。もし質
疑された指定の装置を表わす6ビツトの装置コー
ドがマイクロNOVAポール・カウンタ68か
らこれに対する入力側に与えられるならば、これ
と関連する特定ビツトは、μNEXST信号がその
ように生成されるかどうかに従つて、マイクロ
NOVAバス上のこのような装置の存否を表示
する状態に置かれることになる。従つて、全ての
装置コードがポールされた時、マイクロNOVA
ポール・レジスタ73はマイクロNOVA
I/Oバス15B上にある全装置の存在について
の情報を含む。 マイクロNOVAバスのポーリングは最初
「始動」時に実施され、例えば、特定の実施態様
における64個の可能性のある装置の完全な組はシ
ステム全体が作動状態に置かれる前に、1つの全
ポーリング時間間隔においてポールされる。も
し、例えば、各装置のポーリングが10マイクロ秒
又はそれ以下かかるとすれば、全ポーリングは
600乃至700マイクロ秒内に実施可能である。一た
んシステムがオペレーシヨン状態に入れば、ポー
ル・ストアの更新は、前に存在しない如くに表示
された装置がON状態になり前に存在する如くに
表示された装置がOFFになる時に達成可能であ
る。このような更新されたポーリングが100Hzの
速度で行うことができ、1つの装置は0.01秒毎に
ポールされる(全装置の完全な更新ポーリング
は、例えば、0.6乃至0.7秒毎に生じる)。 ある場合にはある装置がON状態に切換えら
れ、従つてマイクロNOVAバス上に存在し得
るが、ポール・ストアはその存在を表示しない
(この装置が最後の更新ポールの後回線上に存在
するため、このような装置に対する更新は未だ発
生しない)。もし、このような条件下でこの装置
が割込み操作を要求するならば、割込み要求自体
がこの装置の存在を表示し、マイクロNOVA
ポール・レジスタは、これにμNEXST信号を与
えるマイクロNOVA有限状態機械ロジツクに
おける適当なゲート作用によつて自動的に更新さ
れる。 マイクロNOVAI/Oバス上に存在するも
のとは識別されないがシステムと通信関係にある
全ての装置は、排除プロセスにより、ECLIPSE
I/Oバス15A又はシステム・バス11のい
ずれかに存在することになる。明らかなように、
飛越しレジスタ74はECLIPSEENABLEおよ
び(又は)マイクロNOVAENABLEが提供さ
れるように構成される。その存否は、飛越しレジ
スタ72の状態により反映される適当な「飛越
し」接続の存否によつて制御される。下表は関与
する各装置を識別するための諸条件を要求するも
のである。即ち、
ポートを規定する。即ちビツト5 ビツト6 ポート 0 0 状況 0 1 A 1 0 B 1 1 C ビツト7は下記の如く転送の方向を規定する。即
ち、 ビツト7 方 向 0 アウト 1 イン ビツト8と9は、下記の如く使用中の制御の選
択、即ち通常のECLIPSEの操作に従うスター
ト、クリア、パルス操作のいずれかを規定する。
即ち、ビツト8 ビツト9 機能 0 0 なし 0 1 スタート 1 0 クリア 1 1 パルス ビツト10〜15は、I/O操作中使用されるべ
き特定のI/O装置を識別する6ビツトの装置コ
ードを規定する。前記操作は、規定の如く、例え
ば周知のECLIPSEコンピユータと共に当業者
に周知であるため、これ以上詳細に説明の必要は
ない。 前述のI/O命令書式の使用のためには、周知
のこれ迄のECLIPSE命令書式を用いるI/O
命令の取扱いに通常必要とされるよりもI/O命
令の処理のための外部ロジツクが少くてすむ。操
作のタイプ、即ちメモリー照合又はI/O操作は
適当にフラツグされ(MEMCYCおよびビツト0
の状態により)、もしこれがI/O操作であれば、
インターフエース操作を打切るために前記書式に
従つて送られる。 このため、あるI/O命令における特定のビツ
トの組合せが稍々重要であるが、これはこの組合
せによりこれまでECLIPSEシステムにおいて
使用可能であつたI/O操作の能力を拡張するた
めである。このように、明らかなように、I/O
ポートは、ECLIPSEシステムに使用される通
常のポートA,B,Cを含むのみならず、その用
途については以下に説明する「状況」ポートと呼
ぶ別のポート能力をも識別する。 このように、もしI/O命令がポート・フイー
ルド(ビツト5,6および0,0)における状況
ポートと判断フイールド(ビツト7=1)におけ
るIN方向を識別するならば、このような命令は
識別された装置(装置コード・ビツト10〜15
により識別される)に対する要求として作動して
その状態に関する情報を提供する。本装置は次に
データを下記書式において戻す。即ち、 本装置は、ポール・ビツト2の状態によりシステ
ム・バスにおけるその存在を表示し、更にそれぞ
れその「使用中」又は「完了」の状態を表示す
る。更に、本装置はこれ以外の情報の提供に使用
するための13の予約されたビツトを有する。 このような書式は、このような状況の情報の包
含(これにより個々に生成された「使用中」と
「完了」のフラツグに対する2つの余分なワイア
を必要とする)を許容せず、又本文に記述した本
システムにおいては役立つ如き「ポーリング」
(即ち、システム・バス上の1つの装置の存在の
表示を与える)のため使用できなかつたこれ迄の
ECLIPSE命令書式と対照をなしている。 従つて、本システムに供給され、アキユムレー
タ・ビツト(受取られた標準的なI/O命令によ
りCPUに対して既に識別される)を包含するこ
とを必要としない改良されたI/O命令書式によ
り、標準的なマイクロNOVA/ECLIPSE
I/O命令書式によつては規定されないデータを
転送する別の能力が提供される。 システムI/Oインターフエース装置 第1図に示す如く、システムのCPUは、複数
の異なるバス上のI/O装置と通信可能なように
構成されている。例えば、CPUはシステム・バ
ス11上のI/O装置とは直接に通信でき、特定
の実施例において、例えばECLIPSEI/O装
置に対するECLIPSEI/Oバスとして示され
るバス15A上、又は特定の実施例においてマイ
クロNOVA装置用のマイクロNOVAバスと
して示されるバス15B上のI/O装置と通信す
ることができる。本文に記載したシステムによれ
ば、データは以下に更に詳細に説明するように、
システム・バス11を介してシステムI/O装置
に関して直接送受可能であるが、ECLIPSE
I/Oに対するデータECLIPSEバス15Aを
経て別個のECLIPSEI/Oインターフエース
装置45を介してこのような諸装置に関し送受さ
れ、その転送はシステムI/Oインターフエース
装置14からの制御信号によつて制御される。更
に、マイクロNOVAI/O装置に対するデー
タはシステムI/Oインターフエース装置を介し
てマイクロNOVAバス15B上のこのような
装置に関し送受される。 システムI/Oインターフエース装置14の更
に詳細なブロツク図は第8図および第8A図に示
される。アドレス/データ転送用およびマイクロ
NOVAポーリング操作(以下に更に詳細に論
述する如き)用のマイクロNOVAバス制御ロ
ジツクの別の更に詳細なブロツク図は第8B図に
示される。図に示す如く、システムI/Oインタ
ーフエース装置は複数の局部即ち内部の装置およ
びブロツク50で示す如き種々の制御論理回路を
含み、これ等装置は既に公知でありこれ迄入手可
能なシステムと関連して使用されるタイプのもの
である。例えば、システムI/Oインターフエー
ス装置14の内部装置は、下記の文献に関して示
し論述されたData General社のECLIPSEコン
ピユータ・システムにおいて使用されるタイプの
諸装置を含む。即ち、 ECLIPSEM/600の操作原理 No.014−000092 ECLIPSES/200プログラマ参考書 No.014−00061 インターフエース設計者の参考書、NOVAお
よびECLIPSEシリーズ・コンピユータ No.015−000031 マイクロNOVA集積回路データ・マニユアル No.014−000074 前掲の文献は、米国マサチユーセツツ州ウエス
ボロー市のData General社から入手可能な、同
社により製成販売されるNOVA,ECLIPSE
およびマイクロNOVAの各システムに関する
文献の典形例である。これ等文献は、前述の内部
装置のみならず、これに記載されたシステムの他
の種々の特質をも理解するため背景的な情報とし
て有益な情報を含んでいる。 このため、このような装置は、例えば、4つの
選択可能な周波数の1つであるカウンタ・クロツ
ク速度においてクロツク信号を生じるプログラム
可能なタイミング信号を提供する「プログラム可
能な間隔タイマー」(PIT)を含んでもよい。特
定の実施態様においては、例えば、プログラム可
能な間隔タイマーは、周知の分周技術を用いて一
定の1MHzの入力クロツク信号から1MHz,100K
Hz,10KHz又は1KHzのカウンタ・クロツク間隔
を生じるよう構成することができる。システム
I/O装置においては、このようなタイマーは、
以下において更に詳細に論述する如く、周波数合
成装置51から得る1MHzの擬似安定信号に応答
する。 局部装置は又、例えば、システムのクロツク速
度から独立するタイミング・パルスを生成する
「実時間クロツク」(RTC)装置を含むこともで
きる。この実時間クロツクは、4つの選択可能な
周波数の内の1つ、例えば、AC回線周波数又は
10Hz,100Hz又は1000Hzで割込み可能であるが、
後者の3つのクロツクは全て公知の周波数分割法
により1MHzの擬似安定信号から得る。 前記内部装置には、AC電源が停電したかある
いはAC電力が一時的な停電の後回復したこと、
あるいは又起動電流条件が存在することを表示す
る電源モニター・パルスの過度状態を検出する電
源モニター装置をも含む。 システムI/Oインターフエース装置は又、こ
れを介して直列データが非同期的に供給できる
(例えば、テレタイプ装置等から)適当な入出力
インターフエース・ロジツクをも含み、この入出
力はそれぞれ、適当な有限状態機械(FSM)お
よび制御ロジツク59と60を用いる標準的な手
法に従つて制御された方法で、入出力レジスタ5
7と58からTTIピン55およびTTOピン56
を介して供給される。非同期の直列データの端末
入力および端末出力を用いる従来技術の諸装置に
おける如く、端末装置は選択可能なボー速度で作
動できるが、このボー速度は、特定の場合に例え
ば50乃至38400ボーの如き範囲の多くの速度から
選択される。このような目的のため、本システム
においては、ボー速度信号はこれも又周波数合成
装置51から得た擬似安定の614400Hzのマスタ
ー・ボー速度信号から得られる。この選択された
ボー速度はこれから、非同期の直列データ入出力
操作を用いる従来技術のシステムの周知の手法に
従つて適当なボー速度の選択により得ることがで
きる。 前述の内部装置および端末ロジツクは本システ
ムのI/Oインターフエース装置14の進歩性の
一部をなすものではなく、これ以上詳細に説明す
る必要はない。 便宜上、適当なランダム・アクセス・メモリー
(RAM)記憶装置61は、例えば、制御卓操作
を行う時使用できる一時記憶スペースを提供する
ためシステムI/Oインターフエース装置にも存
在し得る。この記憶装置は、望ましい制御卓に用
いるため適当なサイズの記憶スペースを提供する
よう形成できる周知のRAMタイプのものであ
る。例えば、ある特定の実施態様はこの目的のた
めの選択された数の16ビツト・ワードを記憶する
ことが可能である。このため、RAM装置61
は、システムI/Oインターフエース装置14の
進歩性の一部を構成せず、これ以上詳細に説明す
る必要はない。更に、前述のECLIPSEおよび
マイクロNOVAについての文献に説明した如
き用途のマスク不能割込み(NMI)レジスタ6
2も又システムI/Oインターフエース装置14
の一部をなすが、その進歩性の一部をなすもので
はなく、これ以上詳細に説明する必要はない。 アドレスおよびデータは、システムI/Oイン
ターフエース装置14において物理的なアドレ
ス/データ(PADS)ピン63で与えられた16ビ
ツト・ワード(0〜15)の形態でシステ
ム・バス11に関して出入りするように供給され
る。適当なドライバ兼マルチプレクサ回路64を
この目的に使用し、システム・バスに関して出入
りするよう転送されるアドレスおよびデータのワ
ードは直接内部バス66を介し、あるいはこのよ
うなアドレスおよびデータがその転送方向に従つ
てシステムI/Oインターフエース装置又はシス
テム・バスに対して供給される前にその一時的記
憶のため使用される一時的アドレス/データ・レ
ジスタ67を介して間接的に、システムI/Oイ
ンターフエース装置において使用するように内部
のバス65に供給される。 CPUと、このCPUが通信を欲するI/O装置
との間のアドレスおよびデータの転送に使用しな
ければならないI/Oバスは、どんなタイプの
I/O装置(例えば、ECLIPSEバス15Aを
介して通信するECLIPSE装置、マイクロ
NOVAバス15Bを介して通信するマイクロ
NOVA装置、およびシステム・バス11を介
する他の全ての装置)が含まれるかに従つて異な
る。システムI/Oインターフエース装置14
は、どのI/O装置が含まれるか、従つてどの
I/Oバスがインターフエース装置制御部が
CPUに関するこのような転入出を制御できるよ
うにこのデータの転送のため使用されるかを判断
しなければならない。第8図および第8A図、お
よび第8B図の更に詳細なブロツク図に示される
本発明のシステムに従つて、システムI/Oイン
ターフエース装置14は、これが制御する2つの
バス即ちバス15Aおよび15Bの選択された一
方にある全ての装置を識別するための論理回路を
含む。このような識別は、前記バスの選択された
1つを適当に「ポーリング」してどの装置がこの
選択されたバス上にあるかについての適当な情報
を記憶することによつて達成することができる。 マイクロNOVAI/Oバス15B又は
ECLIPSEI/Oバス15Aのいずれかを使用
する本発明の特定の実施態様によれば、システム
I/Oインターフエース装置はマイクロNOVA
I/Oバス15Bを「ポール」してどの装置が
このバス上にあるかを判定するように構成されて
いる。適当なマイクロNOVAポール・カウン
タ62は、システムと共に使用されることが多い
種々の装置を識別する予期される各装置コード・
ワードを与え、前記の装置コード・ワードは、例
えば、ポール・カウンタ68から「下位のバイ
ト」(バイトが8ビツト)のシフト・レジスタ6
9を介して第8A図においてIOD2として表示さ
れる出力マイクロNOVAバス・ピン70に対
して、マイクロNOVAI/Oバス15Bに与
えられる6ビツトの装置コードである。この6ビ
ツトの装置コードは、ポーリング・プロセスにお
いてシフトレジスタ(S/R)69に対して並列
に供給され、更にシフト・レジスタ69からマイ
クロNOVAバスに対して直列に供給される。 マイクロNOVAバス15BにおけるCPUと
通信するマイクロNOVAI/O装置がその識
別のため装置コード信号により質疑される時、も
し特定の装置コードと整合する装置がマイクロ
NOVAバスに存在するならば、これ等の装置
はピン71における識別可能な戻りI/Oクロツ
ク(IOCLK)信号をマイクロNOVA有限状態
機械兼制御ロジツク72に与える。このような操
作は、もしこれ等の装置が装置コードにより質疑
されるならば、この識別可能なI/Oクロツク信
号が存在しないECLIPSEバス15A上の諸装
置とは対照をなす。このような対照的な操作の故
に、マイクロNOVA装置は「ポール」されて、
マイクロNOVAバス15B上のそれ等の存在
およびシステムI/Oインターフエース装置14
に保持されるそれ等の存在の記録について判定を
行うことができる。 このように、マイクロNOVAバス上の特定
のI/O装置からのピン71における信号
IOCLKの受取りの状態は、マイクロNOVA有
限状態機械兼制御ロジツク装置72における制御
ロジツクに与えられる。このロジツクは、マイク
ロNOVAポール・レジスタ73に与えられる
マイクロNOVA存在信号(屡々μNEXSTと呼
ぶ)を生成して、このような装置コードを有する
I/O装置がマイクロNOVAバス上に存在す
ることを表示する。 例えば、マイクロNOVAポール記憶レジス
タ73は64ビツトのレジスタであり、各ビツトは
特定の装置コードと対応する(特定の実施態様で
は、マイクロNOVAバス上に存在し得る64迄
の可能なマイクロNOVA装置がある)。もし質
疑された指定の装置を表わす6ビツトの装置コー
ドがマイクロNOVAポール・カウンタ68か
らこれに対する入力側に与えられるならば、これ
と関連する特定ビツトは、μNEXST信号がその
ように生成されるかどうかに従つて、マイクロ
NOVAバス上のこのような装置の存否を表示
する状態に置かれることになる。従つて、全ての
装置コードがポールされた時、マイクロNOVA
ポール・レジスタ73はマイクロNOVA
I/Oバス15B上にある全装置の存在について
の情報を含む。 マイクロNOVAバスのポーリングは最初
「始動」時に実施され、例えば、特定の実施態様
における64個の可能性のある装置の完全な組はシ
ステム全体が作動状態に置かれる前に、1つの全
ポーリング時間間隔においてポールされる。も
し、例えば、各装置のポーリングが10マイクロ秒
又はそれ以下かかるとすれば、全ポーリングは
600乃至700マイクロ秒内に実施可能である。一た
んシステムがオペレーシヨン状態に入れば、ポー
ル・ストアの更新は、前に存在しない如くに表示
された装置がON状態になり前に存在する如くに
表示された装置がOFFになる時に達成可能であ
る。このような更新されたポーリングが100Hzの
速度で行うことができ、1つの装置は0.01秒毎に
ポールされる(全装置の完全な更新ポーリング
は、例えば、0.6乃至0.7秒毎に生じる)。 ある場合にはある装置がON状態に切換えら
れ、従つてマイクロNOVAバス上に存在し得
るが、ポール・ストアはその存在を表示しない
(この装置が最後の更新ポールの後回線上に存在
するため、このような装置に対する更新は未だ発
生しない)。もし、このような条件下でこの装置
が割込み操作を要求するならば、割込み要求自体
がこの装置の存在を表示し、マイクロNOVA
ポール・レジスタは、これにμNEXST信号を与
えるマイクロNOVA有限状態機械ロジツクに
おける適当なゲート作用によつて自動的に更新さ
れる。 マイクロNOVAI/Oバス上に存在するも
のとは識別されないがシステムと通信関係にある
全ての装置は、排除プロセスにより、ECLIPSE
I/Oバス15A又はシステム・バス11のい
ずれかに存在することになる。明らかなように、
飛越しレジスタ74はECLIPSEENABLEおよ
び(又は)マイクロNOVAENABLEが提供さ
れるように構成される。その存否は、飛越しレジ
スタ72の状態により反映される適当な「飛越
し」接続の存否によつて制御される。下表は関与
する各装置を識別するための諸条件を要求するも
のである。即ち、
【表】
いずれの飛越し接続も使用可能状態にない第1
の条件においては、識別可能な唯一の装置は「シ
ステム」の諸装置である。ECLIPSEジヤンパ
ーが使用可能状態となつてもマイクロNOVA
ジヤンパーがそうでない場合、システムは
ECLIPSEタイミング信号(「E」として示す)
を生じるが、インターフエース装置14は諸装置
がECLIPSE又はシステムの装置であるかにつ
いては判定しない。マイクロNOVAジヤンパ
ーが使用可能な状態になるもECLIPSEジヤン
パーはそうでない場合は、マイクロNOVAお
よびシステムの装置は共に識別可能である。両方
のジヤンパーが使用可能状態にある場合は、マイ
クロNOVA装置は識別可能であるがシステ
ム・インターフエース装置はこれ等装置が
ECLIPSEかシステムの装置であるかについて
は判定しない(ECLIPSEタイミング信号は生
成される)。従つて、このポーリング法は、シス
テムI/Oインターフエース装置14が特定の
I/O装置がマイクロNOVAI/Oバスか他
のバスの1つのいずれかにおいて通信されねばな
らないかの判定を行うことを許容する。もしマイ
クロNOVA装置がマイクロNOVAバス上に
存在するならば、その存在は、マイクロNOVA
センサー信号μNSNSRを提供するマイクロ
NOVAポール記憶装置73によつて表示され
てマスター制御有限状態機械75の動作を修飾
し、その結果その次の操作状態が必要な制御信号
を与えてマイクロNOVA操作に対するマイク
ロNOVA有限状態機械73の動作を制御する。 ポーリング・プロセスを実行するための制御信
号は第8B図に示される。下位バイト・シフトレ
ジスタ69はマイクロNOVAFSM72による
信号LOAD POLL COUNTERの付加時に装置
コードでロードされ、ポール・カウントはポー
ル・カウンタを増分するポール・カウント信号
PLWCで始まる。上位バイト・シフトレジスタ
は、信号LOADINSTの付加時にシステムに対し
て殆んど効果を及ぼさないように選択することが
できる適当な命令(例、全てのレジスタにおける
データが変化しない状態を維持するIOSKP命令
等)でロードされる。もし戻り信号IOCLKがピ
ン71において受取られるならば、信号
μNEXSTはマイクロNOVAFSM72により存
続させられ、この信号は、ポール・ストア73の
アドレス・ラツチに与えられる装置コードと共
に、関与する特定の装置の存在の表示を行う。完
全なポール・カウントが例えば始動のため完了し
た時、ポール・カウンタ68により信号
POLDNEがマイクロNOVAFSM73に与え
るため付加される。 信号PLWRは、割込確認信号を付加すること
によつてCPUが1つの装置による割込み要求を
確認する時、この装置による「割込み」と同時に
使用される。適当な割込み確認信号の付加時に、
この装置自体が、その装置コードおよびマスター
制御PSMによる信号PLWRのポール・ストアに
対する提供を経て、ポール・ストアを更新する。 ポール・ストア読出し操作においては、信号
ADRENが生じると、もしI/O命令が存在する
ならば、ポール・ストアが装置コードによつてア
クセスされる。この時ポール・ストアは、もし存
在するならばマスター制御FSMに対して信号
μNEXSTを提供する。 100Hz入力カウンタ信号により決定される如き
100Hzの速度においてポール更新要求信号
(μPUR)がマスター制御FSM75から提供され
る。 所要のマイクロNOVA命令レジスタ兼復号
ロジツク76と、マイクロNOVAバス・ピン
78(IOD1)における上位バイト・データを提
供するマイクロNOVA上位バイト・レジスタ
77も又、データをバス65およびマイクロ
NOVAシフター69,77に関して当技術にお
いて既に周知の標準的なマイクロNOVA操作
に従つて入出させるためのD−レジスタ79と共
に、第8A図および第8B図に示される。マイク
ロNOVAFSM兼制御論理装置72およびマス
ター制御FSM兼制御論理装置75に対する特定
のロジツクはそれぞれ第9図および第10図に示
される。ポール・カウンタ68およびシフトレジ
スタ69,77は第11図に示され、ポール・ス
トア・レジスタ73は第12図に示される。 システムI/Oインターフエース装置14は1
つ以上の入力システム・クロツク周波数において
作動することが可能なように構成され、従つてシ
ステム・クロツクが全ての操作に対して1つの固
定周波数を維持することは予期されないシステム
と共に使用することが可能である。周波数合成装
置51は、複数の異なる選定された入力周波数の
1つに応答してインターフエース装置の内部装置
の操作のため必要な所要の内部クロツク周波数
と、非同期の端末システムの操作のための所要の
マスター・ボー速度信号を生じるように設けられ
る。特定の実施態様においては、例えば、内部ク
ロツク信号は、内部即ち局部装置(前述の如き
PITおよびRTC装置)の適正な作動を生じるた
めの1MHzの実質的に一定の周波数と、非同期の
端末入出力ロジツクに対する実質的に一定のマス
ター・ボー速度信号から得る実質的に一定に選択
されたボー速度を持たねばならない。 このような周波数合成のための独特の構成を第
13図に示すが、これは例えば1MHz信号を生成
のための構成の更に詳細なブロツク図である。そ
の特定の実施態様においては、周波数合成装置5
1に対する選定された入力クロツク信号のクロツ
ク速度は、300乃至600ナノ秒(NS)の範囲内で
変化するクロツク周期を有する8つの異なるクロ
ツク信号(第14図のチヤート参照)の1つでよ
い。例えば、特定の実施態様においてはクロツク
周期Tが300,325,350,375,40
0,450,500および600NSの8つの異
なる信号が使用される。入力周波数は、8つのク
ロツク速度のどれを周波数合成器に対して与える
ためラツチされねばならないかを識別するクロツ
ク速度ラツチ兼復号ROM80に与えられる3ビ
ツトの入力信号(バス・ビツト9,10,1
1として示す)によつて入力周波数が識別され
る。このようにラツチされる選択されたクロツク
速度は、高カウント位置および分解ROM81
と、分母選定ROM82と、高低整数選択ROM
83とに対して与えられる。その機能については
第14図のチヤートに関して説明された事例の助
けにより更によく理解することができる。このよ
うなチヤートは、8つの異なる入力クロツク信号
の各々に対する擬似安定の1.0MHz出力クロツク
を生成するための前述の周波数合成技術の一例を
示している。図から判るように500NSクロツク信
号を除いて、関与する8つの周波数の各々に対す
るクロツク周期は所要の1.0MHz信号に対するク
ロツク周期の非偶数倍数である。例えば、350NS
のクロツク周期を有する入力クロツク信号は、
1.0MHz信号の全1000NSクロツク周期の26/7周
期を完了する。このように、350NS入力クロツク
信号の26/7クロツク・パルス毎に、1.0MHzの出
力クロツク信号に対して1つのクロツク・パルス
が生成されねばならず、即ち20の入力クロツク・
パルスに対して7つの出力クロツク・パルスが生
成される。 第14図のチヤートは、入力クロツク信号の
各々と関連する分解算法を示す。同図から判るよ
うに、入力クロツク・パルスのグループは反復可
能な即ちリサイクル時間間隔にわたつて生成さ
れ、各グループのパルス数は2つの数の1つとな
るように選択される。このように、350NSの周期
を有する入力クロツク信号においては、3つのパ
ルス(高カウント)又は2つのパルス(低カウン
ト)を有する7つのグループの入力パルスが使用
される。高カウントのグループの位置は、算法の
文字を付した欄に従つて「高カウント位置」欄に
より示される。このため、高カウント(3パル
ス)のグループは7つのグループの周期(低カウ
ントのグループは位置Cにある)のAおよびB位
置にあり、その結果この7つのグループは下記の
如くとなる。即ち、 3332333 非偶数カウント(即ち、26/7)が使用される算
法を識別することに注目すべきである。このよう
に、350NS入力カウントに対しては、低/高のカ
ウントは「2」(整数)および「3」(次に高位の
整数)の間で変化する。分数の分子は高カウント
位置のグループの数(即ち、「6」の高カウント
位置グループ)を識別し、分母は屡々リサイクル
期間と呼ぶ位置のグループ(「7」の位置グルー
プ)の合計数を識別する。別の事例として、
300NSのクロツク信号は33/9のカウントを必要
とし、「3」と「4」の高/低カウントを用い、
「9」(即ち、9グループ)のリサイクル期間(分
数の分母)を用い、このグループの内の3つ(分
数の分子)は「高カウント」のグループである。
3つの高カウントのグループは位置BおよびCに
置かれる。他の算についても同様に説明できる。
第13図においては、どの入力クロツクRATE
がラツチされたかに従つて、分母選択ROM82
が適当な分母即ちリサイクル期間を選択し、選択
された分母(即ち、350NSの入力クロツクに対し
ては「7」)はROM82の4ビツト出力によつ
て識別される。ROM81は、第14図のチヤー
トに示される8つの分解算法のどれを使用すべき
かを識別する。ここで説明中の事例においては、
各グループにパルス3332333を有する350NSのパ
ルスの7つのグループを表わす分解算法A・Bが
選択される。 各分解算法においては2つのパルス数が各グル
ープにおいて使用されることを留意すべきであ
る。このため、350NSの算法に対しては3パルス
(高カウント)又は2パルス(低カウント)が用
いられ、300NSの算法に対しては4パルス(高カ
ウント)又は3パルス(低カウント)が使用され
る。分解ROM81は、分母のカウンタ84から
の各分母カウントについてどのパルス・カウント
(高又は低)が使用されるべきかを有効に判断す
る。このように、350NSクロツクに対しては、分
解ROM81が、7つの分母カウントの最初の3
つと最後の3つについて高カウント(3)が選択さ
れ、全循環カウンタ周期における中間の分母カウ
ントについて低カウント(2)が選択されることを判
定する。 次に大又は小の整数が8つの小整数選択ROM
83によつて選択されて、整数カウンタ85にお
けるどのカウントが7つのグループの各々につい
てこれから1つの出力パルスを与えるためこのよ
うにカウントせねばならないかを識別し(即ち、
このグループが3つの350NSパルス・カウントを
含むかあるいは2つの350NSパルス・カウントを
含むか)、その結果7つのグループ毎に(合計で
20の350NSパルスを構成する)7つの出力パルス
が与えられる。従つて、第15図のタイミング図
に示される如く、整数カウンタ85の出力は1M
Hzのクロツク信号であり、即ち7000NS(20×
350NS)毎に出力カウンタ85が7パルスを生
じ、これは勿論1000NS毎の1パルスに相等する。
450NSの入力クロツクに対する同様な分析を第1
5図に示すが、この分析は8つの入力クロツクの
各々と第11図のチヤートに示される関連する分
解算法について実施可能である。 350NS入力クロツクについて第15図に示す如
く、出力信号のパルスのスペースは均等でない
が、各7マイクロ秒(即ち7000ナノ秒)のリサイ
クル期間におけるパルス数は同数となる。このよ
うに、各リサイクル期間においてタイミングの誤
差が生じ得るが、この誤差はその終りには零迄減
少する。350NSのクロツク信号については、リサ
イクル周期において生じる最大誤差は第15図に
示す如く±150NSであり、このリサイクル周期の
終りにおける誤差は零となる。450NS入力信号に
おいては、最大誤差は300NSであり、9000NSの
リサイクル期間の終りにおいてはこの誤差は零と
なる。全ての入力クロツク信号に対する最大誤差
は第14図のチヤートに示される。このような誤
差は、1MHzの信号を用いる内部装置の作動に必
要な期間においては重要度は微少であり、その結
果あらゆる実際的な目的においてはこの1MHzの
信号が略々一定の周波数を有する。いずれの場合
もこの最大誤差は関与する入力クロツク信号の期
間より大きくないことに注目すべきである。 前述の周波数合成装置は、システム入力クロツ
ク信号が複数の異なる選択可能な周波数の1つで
ある時でさえ、局部即ち内部装置に対する所要の
マスター・クロツク信号と、非同期の端末操作に
対する所要のマスター・ボー速度信号とを提供す
ることができる非常に適合性の大きなシステム
I/Oインターフエース装置14を提供する。前
述の如く、周波数合成回路全体は、一方は1.0M
Hzの出力信号他方はマスター・ボー速度出力の、
第13図に示した汎用装置の実質的な2つのバー
ジヨンを含む。ボー速度選択回路は、必要に応じ
てマスター・ボー速度の整数倍である適当なボー
選定回路によつてマスター・ボー速度から16の異
なるボー速度の内の1つを提供するため使用する
ことができる。マスター・ボー速度を分割して16
の異なる各々のボー速度を得る回路は当業者にと
つては周知である。更に、1MHzのクロツク速度
は又、必要に応じて種々の内部装置に対する
1.0MHzのマスター・クロツク速度の整数の約数
であるクロツク速度を得るため適当に小さく分割
することもできる。614400Hzのスター・ボー速度
から得ることのできるボー速度例と、1.0MHzの
マスター・クロツク信号から得ることのできる局
部カウンタ出力信号(復号カウンタ・クロツク)
例のリストを下に示す。ボー速度 局部カウンタ出力信号 50 1.0MHz 75 100KHz 110 10KHz 134.5 1.0KHz 150 200 300 600 1200 1800 2000 2400 4800 9600 19200 38400 2レベルのマイクロ修飾法、システム・バス規
則法、I/Oバス・ポーリング法、および周波数
合成法の特定の構成を本考案の特定の実施態様に
ついて本文中に記載したが、本考案はこれに限定
されるものではない。本考案の主旨および範囲内
の変更は当業者により着想されよう。従つて、本
考案は、頭書の特許請求の範囲により規定される
ものを除いて、本文に記載された特定の実施態様
に限定されるものと考えるべきではない。
の条件においては、識別可能な唯一の装置は「シ
ステム」の諸装置である。ECLIPSEジヤンパ
ーが使用可能状態となつてもマイクロNOVA
ジヤンパーがそうでない場合、システムは
ECLIPSEタイミング信号(「E」として示す)
を生じるが、インターフエース装置14は諸装置
がECLIPSE又はシステムの装置であるかにつ
いては判定しない。マイクロNOVAジヤンパ
ーが使用可能な状態になるもECLIPSEジヤン
パーはそうでない場合は、マイクロNOVAお
よびシステムの装置は共に識別可能である。両方
のジヤンパーが使用可能状態にある場合は、マイ
クロNOVA装置は識別可能であるがシステ
ム・インターフエース装置はこれ等装置が
ECLIPSEかシステムの装置であるかについて
は判定しない(ECLIPSEタイミング信号は生
成される)。従つて、このポーリング法は、シス
テムI/Oインターフエース装置14が特定の
I/O装置がマイクロNOVAI/Oバスか他
のバスの1つのいずれかにおいて通信されねばな
らないかの判定を行うことを許容する。もしマイ
クロNOVA装置がマイクロNOVAバス上に
存在するならば、その存在は、マイクロNOVA
センサー信号μNSNSRを提供するマイクロ
NOVAポール記憶装置73によつて表示され
てマスター制御有限状態機械75の動作を修飾
し、その結果その次の操作状態が必要な制御信号
を与えてマイクロNOVA操作に対するマイク
ロNOVA有限状態機械73の動作を制御する。 ポーリング・プロセスを実行するための制御信
号は第8B図に示される。下位バイト・シフトレ
ジスタ69はマイクロNOVAFSM72による
信号LOAD POLL COUNTERの付加時に装置
コードでロードされ、ポール・カウントはポー
ル・カウンタを増分するポール・カウント信号
PLWCで始まる。上位バイト・シフトレジスタ
は、信号LOADINSTの付加時にシステムに対し
て殆んど効果を及ぼさないように選択することが
できる適当な命令(例、全てのレジスタにおける
データが変化しない状態を維持するIOSKP命令
等)でロードされる。もし戻り信号IOCLKがピ
ン71において受取られるならば、信号
μNEXSTはマイクロNOVAFSM72により存
続させられ、この信号は、ポール・ストア73の
アドレス・ラツチに与えられる装置コードと共
に、関与する特定の装置の存在の表示を行う。完
全なポール・カウントが例えば始動のため完了し
た時、ポール・カウンタ68により信号
POLDNEがマイクロNOVAFSM73に与え
るため付加される。 信号PLWRは、割込確認信号を付加すること
によつてCPUが1つの装置による割込み要求を
確認する時、この装置による「割込み」と同時に
使用される。適当な割込み確認信号の付加時に、
この装置自体が、その装置コードおよびマスター
制御PSMによる信号PLWRのポール・ストアに
対する提供を経て、ポール・ストアを更新する。 ポール・ストア読出し操作においては、信号
ADRENが生じると、もしI/O命令が存在する
ならば、ポール・ストアが装置コードによつてア
クセスされる。この時ポール・ストアは、もし存
在するならばマスター制御FSMに対して信号
μNEXSTを提供する。 100Hz入力カウンタ信号により決定される如き
100Hzの速度においてポール更新要求信号
(μPUR)がマスター制御FSM75から提供され
る。 所要のマイクロNOVA命令レジスタ兼復号
ロジツク76と、マイクロNOVAバス・ピン
78(IOD1)における上位バイト・データを提
供するマイクロNOVA上位バイト・レジスタ
77も又、データをバス65およびマイクロ
NOVAシフター69,77に関して当技術にお
いて既に周知の標準的なマイクロNOVA操作
に従つて入出させるためのD−レジスタ79と共
に、第8A図および第8B図に示される。マイク
ロNOVAFSM兼制御論理装置72およびマス
ター制御FSM兼制御論理装置75に対する特定
のロジツクはそれぞれ第9図および第10図に示
される。ポール・カウンタ68およびシフトレジ
スタ69,77は第11図に示され、ポール・ス
トア・レジスタ73は第12図に示される。 システムI/Oインターフエース装置14は1
つ以上の入力システム・クロツク周波数において
作動することが可能なように構成され、従つてシ
ステム・クロツクが全ての操作に対して1つの固
定周波数を維持することは予期されないシステム
と共に使用することが可能である。周波数合成装
置51は、複数の異なる選定された入力周波数の
1つに応答してインターフエース装置の内部装置
の操作のため必要な所要の内部クロツク周波数
と、非同期の端末システムの操作のための所要の
マスター・ボー速度信号を生じるように設けられ
る。特定の実施態様においては、例えば、内部ク
ロツク信号は、内部即ち局部装置(前述の如き
PITおよびRTC装置)の適正な作動を生じるた
めの1MHzの実質的に一定の周波数と、非同期の
端末入出力ロジツクに対する実質的に一定のマス
ター・ボー速度信号から得る実質的に一定に選択
されたボー速度を持たねばならない。 このような周波数合成のための独特の構成を第
13図に示すが、これは例えば1MHz信号を生成
のための構成の更に詳細なブロツク図である。そ
の特定の実施態様においては、周波数合成装置5
1に対する選定された入力クロツク信号のクロツ
ク速度は、300乃至600ナノ秒(NS)の範囲内で
変化するクロツク周期を有する8つの異なるクロ
ツク信号(第14図のチヤート参照)の1つでよ
い。例えば、特定の実施態様においてはクロツク
周期Tが300,325,350,375,40
0,450,500および600NSの8つの異
なる信号が使用される。入力周波数は、8つのク
ロツク速度のどれを周波数合成器に対して与える
ためラツチされねばならないかを識別するクロツ
ク速度ラツチ兼復号ROM80に与えられる3ビ
ツトの入力信号(バス・ビツト9,10,1
1として示す)によつて入力周波数が識別され
る。このようにラツチされる選択されたクロツク
速度は、高カウント位置および分解ROM81
と、分母選定ROM82と、高低整数選択ROM
83とに対して与えられる。その機能については
第14図のチヤートに関して説明された事例の助
けにより更によく理解することができる。このよ
うなチヤートは、8つの異なる入力クロツク信号
の各々に対する擬似安定の1.0MHz出力クロツク
を生成するための前述の周波数合成技術の一例を
示している。図から判るように500NSクロツク信
号を除いて、関与する8つの周波数の各々に対す
るクロツク周期は所要の1.0MHz信号に対するク
ロツク周期の非偶数倍数である。例えば、350NS
のクロツク周期を有する入力クロツク信号は、
1.0MHz信号の全1000NSクロツク周期の26/7周
期を完了する。このように、350NS入力クロツク
信号の26/7クロツク・パルス毎に、1.0MHzの出
力クロツク信号に対して1つのクロツク・パルス
が生成されねばならず、即ち20の入力クロツク・
パルスに対して7つの出力クロツク・パルスが生
成される。 第14図のチヤートは、入力クロツク信号の
各々と関連する分解算法を示す。同図から判るよ
うに、入力クロツク・パルスのグループは反復可
能な即ちリサイクル時間間隔にわたつて生成さ
れ、各グループのパルス数は2つの数の1つとな
るように選択される。このように、350NSの周期
を有する入力クロツク信号においては、3つのパ
ルス(高カウント)又は2つのパルス(低カウン
ト)を有する7つのグループの入力パルスが使用
される。高カウントのグループの位置は、算法の
文字を付した欄に従つて「高カウント位置」欄に
より示される。このため、高カウント(3パル
ス)のグループは7つのグループの周期(低カウ
ントのグループは位置Cにある)のAおよびB位
置にあり、その結果この7つのグループは下記の
如くとなる。即ち、 3332333 非偶数カウント(即ち、26/7)が使用される算
法を識別することに注目すべきである。このよう
に、350NS入力カウントに対しては、低/高のカ
ウントは「2」(整数)および「3」(次に高位の
整数)の間で変化する。分数の分子は高カウント
位置のグループの数(即ち、「6」の高カウント
位置グループ)を識別し、分母は屡々リサイクル
期間と呼ぶ位置のグループ(「7」の位置グルー
プ)の合計数を識別する。別の事例として、
300NSのクロツク信号は33/9のカウントを必要
とし、「3」と「4」の高/低カウントを用い、
「9」(即ち、9グループ)のリサイクル期間(分
数の分母)を用い、このグループの内の3つ(分
数の分子)は「高カウント」のグループである。
3つの高カウントのグループは位置BおよびCに
置かれる。他の算についても同様に説明できる。
第13図においては、どの入力クロツクRATE
がラツチされたかに従つて、分母選択ROM82
が適当な分母即ちリサイクル期間を選択し、選択
された分母(即ち、350NSの入力クロツクに対し
ては「7」)はROM82の4ビツト出力によつ
て識別される。ROM81は、第14図のチヤー
トに示される8つの分解算法のどれを使用すべき
かを識別する。ここで説明中の事例においては、
各グループにパルス3332333を有する350NSのパ
ルスの7つのグループを表わす分解算法A・Bが
選択される。 各分解算法においては2つのパルス数が各グル
ープにおいて使用されることを留意すべきであ
る。このため、350NSの算法に対しては3パルス
(高カウント)又は2パルス(低カウント)が用
いられ、300NSの算法に対しては4パルス(高カ
ウント)又は3パルス(低カウント)が使用され
る。分解ROM81は、分母のカウンタ84から
の各分母カウントについてどのパルス・カウント
(高又は低)が使用されるべきかを有効に判断す
る。このように、350NSクロツクに対しては、分
解ROM81が、7つの分母カウントの最初の3
つと最後の3つについて高カウント(3)が選択さ
れ、全循環カウンタ周期における中間の分母カウ
ントについて低カウント(2)が選択されることを判
定する。 次に大又は小の整数が8つの小整数選択ROM
83によつて選択されて、整数カウンタ85にお
けるどのカウントが7つのグループの各々につい
てこれから1つの出力パルスを与えるためこのよ
うにカウントせねばならないかを識別し(即ち、
このグループが3つの350NSパルス・カウントを
含むかあるいは2つの350NSパルス・カウントを
含むか)、その結果7つのグループ毎に(合計で
20の350NSパルスを構成する)7つの出力パルス
が与えられる。従つて、第15図のタイミング図
に示される如く、整数カウンタ85の出力は1M
Hzのクロツク信号であり、即ち7000NS(20×
350NS)毎に出力カウンタ85が7パルスを生
じ、これは勿論1000NS毎の1パルスに相等する。
450NSの入力クロツクに対する同様な分析を第1
5図に示すが、この分析は8つの入力クロツクの
各々と第11図のチヤートに示される関連する分
解算法について実施可能である。 350NS入力クロツクについて第15図に示す如
く、出力信号のパルスのスペースは均等でない
が、各7マイクロ秒(即ち7000ナノ秒)のリサイ
クル期間におけるパルス数は同数となる。このよ
うに、各リサイクル期間においてタイミングの誤
差が生じ得るが、この誤差はその終りには零迄減
少する。350NSのクロツク信号については、リサ
イクル周期において生じる最大誤差は第15図に
示す如く±150NSであり、このリサイクル周期の
終りにおける誤差は零となる。450NS入力信号に
おいては、最大誤差は300NSであり、9000NSの
リサイクル期間の終りにおいてはこの誤差は零と
なる。全ての入力クロツク信号に対する最大誤差
は第14図のチヤートに示される。このような誤
差は、1MHzの信号を用いる内部装置の作動に必
要な期間においては重要度は微少であり、その結
果あらゆる実際的な目的においてはこの1MHzの
信号が略々一定の周波数を有する。いずれの場合
もこの最大誤差は関与する入力クロツク信号の期
間より大きくないことに注目すべきである。 前述の周波数合成装置は、システム入力クロツ
ク信号が複数の異なる選択可能な周波数の1つで
ある時でさえ、局部即ち内部装置に対する所要の
マスター・クロツク信号と、非同期の端末操作に
対する所要のマスター・ボー速度信号とを提供す
ることができる非常に適合性の大きなシステム
I/Oインターフエース装置14を提供する。前
述の如く、周波数合成回路全体は、一方は1.0M
Hzの出力信号他方はマスター・ボー速度出力の、
第13図に示した汎用装置の実質的な2つのバー
ジヨンを含む。ボー速度選択回路は、必要に応じ
てマスター・ボー速度の整数倍である適当なボー
選定回路によつてマスター・ボー速度から16の異
なるボー速度の内の1つを提供するため使用する
ことができる。マスター・ボー速度を分割して16
の異なる各々のボー速度を得る回路は当業者にと
つては周知である。更に、1MHzのクロツク速度
は又、必要に応じて種々の内部装置に対する
1.0MHzのマスター・クロツク速度の整数の約数
であるクロツク速度を得るため適当に小さく分割
することもできる。614400Hzのスター・ボー速度
から得ることのできるボー速度例と、1.0MHzの
マスター・クロツク信号から得ることのできる局
部カウンタ出力信号(復号カウンタ・クロツク)
例のリストを下に示す。ボー速度 局部カウンタ出力信号 50 1.0MHz 75 100KHz 110 10KHz 134.5 1.0KHz 150 200 300 600 1200 1800 2000 2400 4800 9600 19200 38400 2レベルのマイクロ修飾法、システム・バス規
則法、I/Oバス・ポーリング法、および周波数
合成法の特定の構成を本考案の特定の実施態様に
ついて本文中に記載したが、本考案はこれに限定
されるものではない。本考案の主旨および範囲内
の変更は当業者により着想されよう。従つて、本
考案は、頭書の特許請求の範囲により規定される
ものを除いて、本文に記載された特定の実施態様
に限定されるものと考えるべきではない。
第1図は本考案によりシステム全体を示すブロ
ツク図、第2図は第1図のシステムの例示的な中
央処理装置(CPU)を示すブロツク図、第3図
は第2図のCPUの垂直方向のシーケンス装置を
示す更に特定的なブロツク図、第4図は第2図の
CPUのマイクロ修飾装置を示す更に特定的なブ
ロツク図、第5図乃至第7図は第1図のシステム
のためのシステム・バス・プロトコールの制御に
役立つ例示的なロジツクを示すブロツク図、第8
図および第8A図は第1図のシステムI/Oイン
ターフエース装置を示すブロツク図、第8B図は
第8図および第8A図のシステムI/Oインター
フエース装置の一部を示す更に特定的なブロツク
図、第9図は第8図および第8B図のマスター制
御装置の有限状態機械および制御ロジツクを示す
更に特定的なロジツク図、第10図は第8A図お
よび第8B図のマイクロNOVA有限状態機械お
よび制御ロジツクを示す更に特定的なロジツク
図、第11図および第12図は第8図、第8A図
および第8B図のマイクロNOVAポーリング・
ロジツクを示す更に特定的なロジツク図、第13
図は第8図の周波数合成装置を示す更に特定的な
ブロツク図、第14図は第13図の周波数合成装
置の操作のため用いられるパージング算法を示す
チヤート、および第15図は2つの例示的な入力
信号から生じる如き周波数合成装置の出力信号を
示す例示的なタイミング図である。 10……マイクロプロセサ・チツプ(CPU)、
11……システム・バス、12……記憶システ
ム、13……外部マイクロ制御チツプ(XMC)、
14……システム入出力インターフエース装置、
15,15A……バス、16……マイクロコー
ド・バス、17……システムI/O装置、18…
…バス・トランシーバ、19……マイクロ命令レ
ジスタ(IR)、20……プログラム・カウンタ
(PC)レジスタ、21……レジスタ・フアイル、
22……演算論理装置(ALU)兼シフター装置、
23〜26……内部バス、31……垂直方向制御
読出し専用メモリー(ROM)、32……水平方
向制御ROM、33……垂直方向順序付けロジツ
ク、34……マイクロ修飾ロジツク、35……水
平方向復号ロジツク、39……内部バス、40…
…復号制御プログラム・ロジツク列(PLA)装
置、41,43,44……内部バス、50……局
部装置(PIT,RTC 10進カウンタ)、51……
周波数合成装置兼ボー速度選択装置、55,56
……ピン、57,58……レジスタ、59,60
……有限状態機械(FSM)兼制御ロジツク、6
1……RAM装置、62……マスク不能割込み
(NMI)レジスタ、63……物理的アドレス/デ
ータ(PADS)ピン、64……ドライバ兼マルチ
プレクサ回路、65……内部Uバス、66……内
部バス、67……一時的アドレス/データ・レジ
スタ、68……マイクロNOVAカウンタ、69
……下位バイトマイクロNOVAシフトレジスタ、
71……ピン、72……マイクロNOVA FSM
兼制御ロジツク、73……マイクロNOVAポー
ル・レジスタ、74……ジヤンパ・レジスタ、7
5……マスター制御FSM、76……マイクロ
NOVA命令レジスタ兼復号ロジツク、77……
マイクロNOVA上位バイトレジスタ、78……
マイクロNOVAバス・ピン、79……Dレジス
タ、80……クロツク速度ラツチ兼復号ROM、
81……高カウント位置兼分解ROM、82……
分母選択ROM、83……大小整数選択ROM、
84……分母カウンタ、85……整数カウンタ、
100……垂直方向プログラム・カウンタ装置、
101……マルチプレクサ装置、102……制御
ロジツク、105……入力マルチプレクサ。
ツク図、第2図は第1図のシステムの例示的な中
央処理装置(CPU)を示すブロツク図、第3図
は第2図のCPUの垂直方向のシーケンス装置を
示す更に特定的なブロツク図、第4図は第2図の
CPUのマイクロ修飾装置を示す更に特定的なブ
ロツク図、第5図乃至第7図は第1図のシステム
のためのシステム・バス・プロトコールの制御に
役立つ例示的なロジツクを示すブロツク図、第8
図および第8A図は第1図のシステムI/Oイン
ターフエース装置を示すブロツク図、第8B図は
第8図および第8A図のシステムI/Oインター
フエース装置の一部を示す更に特定的なブロツク
図、第9図は第8図および第8B図のマスター制
御装置の有限状態機械および制御ロジツクを示す
更に特定的なロジツク図、第10図は第8A図お
よび第8B図のマイクロNOVA有限状態機械お
よび制御ロジツクを示す更に特定的なロジツク
図、第11図および第12図は第8図、第8A図
および第8B図のマイクロNOVAポーリング・
ロジツクを示す更に特定的なロジツク図、第13
図は第8図の周波数合成装置を示す更に特定的な
ブロツク図、第14図は第13図の周波数合成装
置の操作のため用いられるパージング算法を示す
チヤート、および第15図は2つの例示的な入力
信号から生じる如き周波数合成装置の出力信号を
示す例示的なタイミング図である。 10……マイクロプロセサ・チツプ(CPU)、
11……システム・バス、12……記憶システ
ム、13……外部マイクロ制御チツプ(XMC)、
14……システム入出力インターフエース装置、
15,15A……バス、16……マイクロコー
ド・バス、17……システムI/O装置、18…
…バス・トランシーバ、19……マイクロ命令レ
ジスタ(IR)、20……プログラム・カウンタ
(PC)レジスタ、21……レジスタ・フアイル、
22……演算論理装置(ALU)兼シフター装置、
23〜26……内部バス、31……垂直方向制御
読出し専用メモリー(ROM)、32……水平方
向制御ROM、33……垂直方向順序付けロジツ
ク、34……マイクロ修飾ロジツク、35……水
平方向復号ロジツク、39……内部バス、40…
…復号制御プログラム・ロジツク列(PLA)装
置、41,43,44……内部バス、50……局
部装置(PIT,RTC 10進カウンタ)、51……
周波数合成装置兼ボー速度選択装置、55,56
……ピン、57,58……レジスタ、59,60
……有限状態機械(FSM)兼制御ロジツク、6
1……RAM装置、62……マスク不能割込み
(NMI)レジスタ、63……物理的アドレス/デ
ータ(PADS)ピン、64……ドライバ兼マルチ
プレクサ回路、65……内部Uバス、66……内
部バス、67……一時的アドレス/データ・レジ
スタ、68……マイクロNOVAカウンタ、69
……下位バイトマイクロNOVAシフトレジスタ、
71……ピン、72……マイクロNOVA FSM
兼制御ロジツク、73……マイクロNOVAポー
ル・レジスタ、74……ジヤンパ・レジスタ、7
5……マスター制御FSM、76……マイクロ
NOVA命令レジスタ兼復号ロジツク、77……
マイクロNOVA上位バイトレジスタ、78……
マイクロNOVAバス・ピン、79……Dレジス
タ、80……クロツク速度ラツチ兼復号ROM、
81……高カウント位置兼分解ROM、82……
分母選択ROM、83……大小整数選択ROM、
84……分母カウンタ、85……整数カウンタ、
100……垂直方向プログラム・カウンタ装置、
101……マルチプレクサ装置、102……制御
ロジツク、105……入力マルチプレクサ。
Claims (1)
- 【実用新案登録請求の範囲】 (1) データ処理操作を行うためのマイクロ命令の
生成を要求するデータ処理システムであつて、
一つ以上のマイクロ命令を生成する際使用する
復号されたマイクロ命令を提供するためマクロ
命令に応答する装置を有する中央処理装置を含
むデータ処理システムにおいて、 前記中央処理装置が、認識信号に応答して一
つ以上のマイクロ命令を提供する第1の制御ス
トア装置を備え、前記マイクロ命令の各々の一
つ以上の選択されたフイールドは修飾可能であ
り、 複数個のマイクロ命令部分を提供する第2の
制御ストア装置を備え、前記第2の複数個のマ
イクロ命令部分の一つ以上が前記一つ以上のマ
イクロ命令の前記一つ以上の選択されたフイー
ルドを修飾するために使用可能な情報を含む修
飾フイールドを提供し、前記第2の制御ストア
装置が前記複数個のマイクロ命令部分を発生す
るために前記復号されたマクロ命令に応答し、 前記第1の制御ストア装置によつて提供され
た前記一つ以上のマイクロ命令と前記第2の制
御ストア装置によつて提供された前記一つ以上
のマイクロ命令部分の修飾フイールドに対応し
て前記データ処理動作を実施するために修飾さ
れたマイクロ命令を提供する修飾装置を含むこ
とを特徴とするデータ処理システム。 (2) 前記複数個のマイクロ命令部分が更に、前記
修飾された命令を発生するのに使用される連続
するマイクロ命令部分を少なくとも認識可能な
情報を含む順序付フイールドを含み、更に、識
別される連続するマイクロ命令部分をアクセス
するためのアドレス情報を提供するため前記順
序付けフイールドに応答する順序付け装置を含
むことを特徴とする実用新案登録請求の範囲第
(1)項に記載のデータ処理システム。 (3) 前記複数個のマイクロ命令部が前記第1の制
御ストア装置によつて提供されるべき前記複数
のマイクロ命令の一つを選択するための認識信
号を提供する選択されたフイールドを含むこと
を特徴とする実用新案登録請求の範囲第(2)項に
記載のデータ処理システム。 (4) 前記第1の制御ストア装置が読出専用メモリ
である実用新案登録請求の範囲第(3)項に記載の
データ処理システム。 (5) 前記第2の制御ストア装置が読出専用メモリ
である実用新案登録請求の範囲第(3)項に記載の
データ処理装置。 (6) 前記順序付け装置は、 前記アドレス情報を提供する順序付けプログ
ラム・カウンタ装置と、 前記順序付けプログラム・カウンタ装置の動
作を制御する前記マイクロ命令部分の前記順序
付けフイールド内に含まれた他の情報に応答し
て発生された選択された制御出力信号を提供す
る前記第2の制御ストア装置からの複数の入力
制御信号に応答するマルチプレクサ装置とを備
えたことを特徴とする実用新案登録請求の範囲
第(2)項または第(4)項に記載のデータ処理システ
ム。 (7) 前記修飾装置が、前記第1の制御ストア装置
によつて提供された前記一つ以上のマイクロ命
令のそれぞれ選択された一つに各々応答しかつ
前記第2の制御ストア装置によつて提供された
前記マイクロ命令部分の前記修飾フイールドの
それぞれ選択された一つに各々応答する一つ以
上のマルチプレクサ装置を備え、前記マルチプ
レクサ装置の各々の出力が前記修飾された出力
マイクロ命令を形成することを特徴とする実用
新案登録請求の範囲第(1)項に記載のデータ処理
システム。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12029280A | 1980-02-11 | 1980-02-11 | |
US06/120,271 US4371925A (en) | 1980-02-11 | 1980-02-11 | Data processing system having unique bus control operation |
US06/120,272 US4394736A (en) | 1980-02-11 | 1980-02-11 | Data processing system utilizing a unique two-level microcoding technique for forming microinstructions |
US06/120,291 US4464772A (en) | 1980-02-11 | 1980-02-11 | Frequency synthesizer for providing a pseudo-constant frequency signal |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS6312231U JPS6312231U (ja) | 1988-01-27 |
JPS6319854Y2 true JPS6319854Y2 (ja) | 1988-06-02 |
Family
ID=27494306
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1987088478U Expired JPS6319854Y2 (ja) | 1980-02-11 | 1987-06-08 |
Country Status (6)
Country | Link |
---|---|
EP (4) | EP0097977B1 (ja) |
JP (1) | JPS6319854Y2 (ja) |
AU (3) | AU541189B2 (ja) |
BR (1) | BR8100790A (ja) |
DE (3) | DE3172395D1 (ja) |
IL (1) | IL62055A (ja) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU541189B2 (en) | 1980-02-11 | 1984-12-20 | Data General Corporation | Data processing system |
US4476527A (en) * | 1981-12-10 | 1984-10-09 | Data General Corporation | Synchronous data bus with automatically variable data rate |
FR2538140B1 (fr) * | 1982-12-21 | 1988-06-24 | Thomson Csf Mat Tel | Dispositif de couplage de bus pour systeme de traitement de donnees a bus multiples |
US4837785A (en) * | 1983-06-14 | 1989-06-06 | Aptec Computer Systems, Inc. | Data transfer system and method of operation thereof |
US5199106A (en) * | 1986-09-19 | 1993-03-30 | International Business Machines Corporation | Input output interface controller connecting a synchronous bus to an asynchronous bus and methods for performing operations on the bus |
EP0606102A1 (en) * | 1986-09-19 | 1994-07-13 | International Business Machines Corporation | An input output interface controller connecting a synchronous bus to an asynchronous bus and methods for performing operations on the buses |
US4817037A (en) * | 1987-02-13 | 1989-03-28 | International Business Machines Corporation | Data processing system with overlap bus cycle operations |
JPH0276056A (ja) * | 1988-09-13 | 1990-03-15 | Toshiba Corp | 情報処理装置 |
CA2007737C (en) * | 1989-02-24 | 1998-04-28 | Paul Samuel Gallo | Data transfer operations between two asynchronous buses |
WO1993016434A1 (en) * | 1992-02-13 | 1993-08-19 | Tandy Corporation | Method and apparatus to reduce computer system bus interleave overhead |
JPH0827773B2 (ja) * | 1992-10-23 | 1996-03-21 | インターナショナル・ビジネス・マシーンズ・コーポレイション | データ経路を使用可能にする方法、装置およびデータ処理システム |
FR2716053B1 (fr) * | 1994-02-09 | 1996-04-26 | Sat | Procédé de génération d'une fréquence particulière par division d'une fréquence de référence. |
JP3016179B2 (ja) * | 1995-06-27 | 2000-03-06 | るいエンジニアリング株式会社 | 削孔機用スイベル |
WO2007097036A1 (ja) | 2006-02-27 | 2007-08-30 | Fujitsu Limited | 中央処理装置、中央処理装置の制御方法、情報処理システム |
US20190158127A1 (en) * | 2017-11-23 | 2019-05-23 | M31 Technology Corporation | Encoding and decoding architecture for high-speed data communication system and related physical layer circuit, transmitter and receiver and communication system thereof |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5015454A (ja) * | 1973-06-07 | 1975-02-18 | ||
JPS5079231A (ja) * | 1973-10-10 | 1975-06-27 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR1188034A (fr) * | 1957-11-21 | 1959-09-18 | Trt Telecom Radio Electr | Moyens d'intercorrélation pour plusieurs stations émettrices d'informations |
US3221307A (en) * | 1960-12-07 | 1965-11-30 | Ibm | Automatic tape unit selector |
US3217267A (en) * | 1963-10-02 | 1965-11-09 | Ling Temco Vought Inc | Frequency synthesis using fractional division by digital techniques within a phase-locked loop |
DE1958662B2 (de) * | 1969-11-22 | 1971-12-30 | Siemens AG, 1000 Berlin u. 8000 München | Digitaler impulsfolgenteiler mit optimaler gleichverteilung der aus einer aequidistanten eingangsimpulsfolge ausgewaehl ten impulse einer ausgangsimpulsfolge |
US3786434A (en) * | 1972-12-20 | 1974-01-15 | Ibm | Full capacity small size microprogrammed control unit |
DE2336676C3 (de) * | 1973-07-19 | 1981-06-19 | Ibm Deutschland Gmbh, 7000 Stuttgart | Einrichtung zur Modifizierung von Mikroprogrammbefehlen |
DE2510766A1 (de) * | 1975-03-12 | 1977-02-17 | Schlafhorst & Co W | Verfahren und vorrichtung zur selbsttaetigen digitalen division einer frequenz |
US3997896A (en) * | 1975-06-30 | 1976-12-14 | Honeywell Information Systems, Inc. | Data processing system providing split bus cycle operation |
US4000485A (en) * | 1975-06-30 | 1976-12-28 | Honeywell Information Systems, Inc. | Data processing system providing locked operation of shared resources |
JPS538034A (en) * | 1976-06-30 | 1978-01-25 | Toshiba Corp | Electronic computer |
US4081755A (en) * | 1976-08-10 | 1978-03-28 | Litton Business Systems, Inc. | Baud rate generator utilizing single clock source |
US4084082A (en) * | 1976-10-12 | 1978-04-11 | Fairchild Camera And Instrument Corporation | Programmable counter |
US4186379A (en) * | 1977-04-28 | 1980-01-29 | Hewlett-Packard Company | High-speed data transfer apparatus |
US4148011A (en) * | 1977-06-06 | 1979-04-03 | General Automation, Inc. | Asynchronous priority circuit for controlling access to a bus |
AU541189B2 (en) | 1980-02-11 | 1984-12-20 | Data General Corporation | Data processing system |
-
1981
- 1981-01-30 AU AU66790/81A patent/AU541189B2/en not_active Ceased
- 1981-02-03 IL IL62055A patent/IL62055A/xx unknown
- 1981-02-09 BR BR8100790A patent/BR8100790A/pt not_active IP Right Cessation
- 1981-02-11 EP EP83200684A patent/EP0097977B1/en not_active Expired
- 1981-02-11 EP EP83200686A patent/EP0094140A1/en not_active Withdrawn
- 1981-02-11 DE DE8181300560T patent/DE3172395D1/de not_active Expired
- 1981-02-11 DE DE8585200462T patent/DE3177087D1/de not_active Expired
- 1981-02-11 EP EP85200462A patent/EP0164138B1/en not_active Expired
- 1981-02-11 DE DE8383200684T patent/DE3175667D1/de not_active Expired
- 1981-02-11 EP EP81300560A patent/EP0035334B1/en not_active Expired
-
1985
- 1985-02-22 AU AU39100/85A patent/AU573310B2/en not_active Ceased
-
1987
- 1987-06-08 JP JP1987088478U patent/JPS6319854Y2/ja not_active Expired
-
1988
- 1988-03-28 AU AU13805/88A patent/AU1380588A/en not_active Abandoned
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5015454A (ja) * | 1973-06-07 | 1975-02-18 | ||
JPS5079231A (ja) * | 1973-10-10 | 1975-06-27 |
Also Published As
Publication number | Publication date |
---|---|
EP0097977A3 (en) | 1984-02-15 |
EP0035334A2 (en) | 1981-09-09 |
EP0164138A1 (en) | 1985-12-11 |
BR8100790A (pt) | 1981-08-25 |
EP0097977B1 (en) | 1986-11-26 |
EP0035334A3 (en) | 1981-12-09 |
EP0035334B1 (en) | 1985-09-25 |
JPS6312231U (ja) | 1988-01-27 |
EP0094140A1 (en) | 1983-11-16 |
DE3175667D1 (en) | 1987-01-15 |
DE3172395D1 (en) | 1985-10-31 |
EP0164138B1 (en) | 1989-08-16 |
AU3910085A (en) | 1985-09-05 |
AU541189B2 (en) | 1984-12-20 |
IL62055A0 (en) | 1981-03-31 |
DE3177087D1 (en) | 1989-09-21 |
EP0097977A2 (en) | 1984-01-11 |
AU573310B2 (en) | 1988-06-02 |
AU1380588A (en) | 1988-06-23 |
AU6679081A (en) | 1981-09-03 |
IL62055A (en) | 1987-11-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS6315608B2 (ja) | ||
US4394736A (en) | Data processing system utilizing a unique two-level microcoding technique for forming microinstructions | |
US4939638A (en) | Time sliced vector processing | |
JPS6319854Y2 (ja) | ||
EP0021365B1 (en) | Data processing system with a slave computer | |
EP0057788B1 (en) | Data processing system with external microcode control unit | |
EP0198214B1 (en) | Branch control in a three phase pipelined signal processor | |
US4168523A (en) | Data processor utilizing a two level microaddressing controller | |
US4509116A (en) | Special instruction processing unit for data processing system | |
US4016545A (en) | Plural memory controller apparatus | |
EP0198216B1 (en) | Three phased pipelined signal processor | |
US3938098A (en) | Input/output connection arrangement for microprogrammable computer | |
EP0025087B1 (en) | Pipeline control apparatus for generating instructions in a digital computer | |
EP0127508A2 (en) | Full floating point vector processor | |
US4443848A (en) | Two-level priority circuit | |
US4172281A (en) | Microprogrammable control processor for a minicomputer or the like | |
US5675772A (en) | Device and method for reconfiguring a computer system with an incompatible CPU | |
JPS6349241B2 (ja) | ||
EP0426331B1 (en) | Programmable interrupt controller and method | |
US4649470A (en) | Data processing system | |
KR940011594B1 (ko) | 공유 제어 기억부를 가진 멀티프로세서 제어기 및 그 동기화 방법 | |
US4481581A (en) | Sequence control circuit for a computer | |
US4771377A (en) | Microcode control apparatus | |
JP2680828B2 (ja) | ディジタル装置 | |
US4803615A (en) | Microcode control of a parallel architecture microprocessor |