JPH02252008A - マイクロプロセッサ - Google Patents
マイクロプロセッサInfo
- Publication number
- JPH02252008A JPH02252008A JP1210828A JP21082889A JPH02252008A JP H02252008 A JPH02252008 A JP H02252008A JP 1210828 A JP1210828 A JP 1210828A JP 21082889 A JP21082889 A JP 21082889A JP H02252008 A JPH02252008 A JP H02252008A
- Authority
- JP
- Japan
- Prior art keywords
- timer
- channels
- channel
- output
- register
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
-
- G—PHYSICS
- G04—HOROLOGY
- G04G—ELECTRONIC TIME-PIECES
- G04G99/00—Subject matter not provided for in other groups of this subclass
-
- G—PHYSICS
- G04—HOROLOGY
- G04G—ELECTRONIC TIME-PIECES
- G04G3/00—Producing timing pulses
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/14—Time supervision arrangements, e.g. real time clock
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Bus Control (AREA)
- Multi Processors (AREA)
- Electronic Switches (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
(関連出願の参照)
本出願は、全て本出願と同日に出願された下記の米国特
許出願と関連する。 米国特許出願用233.786号(モ1−ローラ礼参照
番号S(>00488A)、名称[チャンネル間の通信
機能を口する専用サービス・プロセッサ」;米国特許出
願用234,111号(−El−ローラ社参照番号5C
−00492^)、名称[マツチング認識機能を有する
タイマ・チャンネル]; 米国特許出願用234,103号(モトローラ社参照番
号S C−00495A )、名称「マルチ・タイマ基
準機能を右するタイマ・チャンネル」:および米国特許
出願用234,110号(モトローラ社参照番号5C−
00498A)、名称[マルチ・チャンネル・タイマに
使用するタイマ・チャンネル]。 (産業上の利用分野) 本発明は、一般に、マルチ・チャンネルを有する集積回
路タイマに関する。更に詳しくは、本発明は、マルチ・
タイマ・チャンネルを有し、全てのタイマ・チャンネル
が同等の機能性を有する汎用自律性タイマ・サブシステ
ムに関る。 (従来の技術および発明が解決1)J−つとする課題) マイクロコンピュータに使用するタイマ・ザブシステム
は、集積されたユニットおよび独立−ユ二ッ1へと()
ていずれも技術上周知である。いずれの場合も、従来技
術のタイマ・サブシステムは、集積回路の大きざが増大
することと機能性を可能な最大限持たせることとの二者
択一性を管理しようとする製造業者の試みを反映してい
る。 図示した例は、テキザス州、オースティンの−しトロー
ラ社から販売されているマイクロコンピュータMC68
t−(C11A8である。この精巧な8ビツトのマイク
ロコンビコ−−9は、集積化プログラマブル・タイマ・
ザブシステムを有し、このシステムは、最高3つの独立
した人力機能(捕捉)、および最高5の独立した出力機
能(マツチング)を実行可能で、これらすべては、自由
走行カウンタから発生される1つのタイマ基準信号に対
応している。しかし、もし顧客が4つの捕捉とただ1つ
のマツチングを必要とし、または異なった基準に対応す
るマツチングおよび捕捉を必要とすればこの素子は適当
でない。 別の例は、カルフォルニア州、サンタ・クララ所在のイ
ンテル社かjう販売されている8096マイクロコンピ
ュータである。これは大変精巧なタイマ・サブシステム
を有する16ビツト・マイクロコンピュータである。こ
のタイマは、イベントの対応する2つの独立したタイマ
を有し、これらのカウンタの1つは内部的にクロックさ
れ、また他の1つは外部的にクロックされることが可能
である。4つの入力線が入手可能であり、8つの捕捉機
能を実行するのに使用可能であるが、全ての捕捉機能は
、2つのカウンタの内の第1カウンタに対応しなければ
ならない。同様に、6つの出力線が入手可能であり、各
々は2つのカウンタのいずれかに対応する独立したマツ
チング機能を実行することが可能である。しかし、6つ
の出力ピンのうち2つは入力機能と共有され、これらの
ピンはいずれか1つの機能のみに適用可能であり、両者
に対しては適用できない。 従来技術による集積回路タイマの他の共通する機能は、
初期化、構成、およびタイマに関連する割り込みに対す
る応答に関してホストCPUに依存していることである
。例えば、上述したMC68HC11A8において、マ
イクロコンピュータのCPtJは、専らタイマ・サブシ
ステムのニーズに対するサービスを行っている。例えば
、もし捕捉イベントが発生し、その結果続いて起こるマ
ツチング機能がその基礎とならなければならない場合、
ホストCPLIは捕捉されたタイマの値を読み、必要な
全ての計粋を行い、マツチング・イベントを設定しなけ
ればならない。ある点で、タイマ・サブシステムの要求
がCPUの容量を圧倒し、他の機能全ての実行を不可能
にする。 (課題を解決するための手段) したがって、本発明の目的は、マイクロコンピュータに
使用するより改良したタイマ・サブシステムを提供する
ことである。 本発明のこの目的およびその他の目的および特徴は集積
回路タイマによって提供され、この集積回路タイマは、
少なくとも2つのタイマ基準信号を発生するタイマ基準
信号発生手段および複数のタイマ・チャンネルであって
、各々が同一であり、かつ入力機能を実行し、前記少な
くとも2つのタイマ基準信号のいずれかに応答する入力
手段、および化ツノ機能を実行し、前記少なくとも2つ
のタイマ基準信号のいずれかに応答する出力手段によっ
て構成される前記複数のタイマ・チャンネルによって構
成される。 本発明のこれらおよびその他の目的と特徴は、図面と共
に下記の詳細な説明から明らかとなる。 (以下余白) (実施例) 「アサート(assert)J 「ニゲート(neg
ate) Jという用語およびこれらの用語の種々の文
法的な形態が、「アクティブH」と「アクティブL」と
いう論理信号を混合して取扱う場合の混乱を回避するた
め、ここで使用される。「アサート」は論理信号または
レジスタ・ビットをそのアクチブな状態に、または論理
的に真の状態に置くために使用される。「二ゲート」は
論理信号またはレジスタピットをその非アクチブの状態
即ち論理的に偽の状態に置くために使用される。 第1図は、マイクロコンピュータを示しその一部が本発
明の好適な実施例である。マイクロコンピュータ10は
、単一の集積回路として製作されることを意図し、中央
処理装置(CPLJ)11、内部モジュール・バス(I
MB)12、シリアル・インターフェース13、メモリ
・モジュール14、タイマ15およびシステム・インテ
グレーション・モジュール(SIM>16によって構成
される。CPU11、シリアル・インターフェース13
、メモリ14、タイマ15JノよびSIMlGの各々は
、アドレス、データJ3よび制御情報を交換する目的の
ため、1MB12と双方向に:接続される。さらに、タ
イマ15は■ミュレーシ」ン・バス17によってメモリ
14に双方向に接続されるが、その目的は以下の議論に
よってざらに明確となるであろう。 シリアル・インターフェース13とタイマ15は、各々
マイクロコンピュータ10の外部デバイスと通信を行う
ため多数のビンまたはコネクタに接続される。さらに、
SIM16は、外部バスを構成する多数のビンに接続さ
れる。 タイマ15は、本発明の好適な実施例を構成するが、比
較的自立的なモジュールである。タイマ15の目的は、
できるだけCP(Jllの介在を少なくして、マイクロ
コンピュータ10の要求J゛るタイミング・タスクの全
てを実行1”ることである。 マイクロコンピュータ10によって要求される可能性の
あるタイミング・タスクの例には、自動車エンジンの点
火および燃料噴射タイミング、電子カメラのシャッタの
タイミング等がある。本発明の好適な実施例(J1タイ
マ15をマイクロフンピユータと関連さ1jているが、
説明される原理はスタンド・アローン(5tand−a
to口e)型のタイマ・モジ]、−ルに対する関係を
も含めて、その他の関係tこ対1ノでも容易に適用する
ことが可能である。 タイマ15は、2つのクロック・ソースからのクロック
を基準として使用することができる。両方のりDツク・
ソースは、タイマ・カラン1−・レジスタ#1 (TC
Rl>とタイマ・カウント・1ノジスタ#2 (TCR
2)とそれぞれ呼ぶフリー・ランニング(free−r
unning )カウンタ・レジスタの形態をとる。T
CRlは、マイクロコンピュータ10のシステム・クロ
ックと関連する内部クロック・ソースによってり日ツク
される。TCR2は、ビンからマイクロコンピュータ1
0に供給される外部ソースまたは外部ソース・ビンに現
われる信号によってグーI−される内部ソースのいずれ
かによってクロックされる。 この好適な実施例では、タイマ15は16個のタイマ「
チャンネル」を(jt)、これらの各々はそれ白身のビ
ンを有している。タイマ・イベントの2つの基本的なタ
イプは、好適な実施例のシステムから理解されるように
マツチ・イベントと捕捉イベントである。マツチン・イ
ベントは基本的に出力機能であり、捕捉イベントは基本
的に入力機能である。マツチ・イベントは、2つのタイ
マ・カウ°ント・レジスタの一方のカウント1直が選択
されたタイマ・チャンネルの一方のレジスタに記憶され
ている値と所定の関係を有する場合に発生1゛る。捕捉
イベントは、予め定義された遷移がタイマ・チャンネル
と関連するビンにおいて検出され、タイマ・カウント・
レジスタの1つの瞬時的なカウントの「捕捉」をそのタ
イマ・チャンネルのレジスタにトリガする場合に発生(
′る。種々のタイマ・チャンネルの機能の詳細はさらに
下記で説明する。 CPUIIは、[ホス1へJ CPUと呼ぶ場合がある
。これとの関連でタイマ15は、CPu1lにυ制御さ
れて動作し、このタイマ15の一定のイニシャライゼー
ションおよびその他の機能はCPtJllによって行わ
れる。ボストCPUは、この好適な実施例では、タイマ
15と同様に同じ集積回路上に設けられているが、本発
明の原理を実行するためにこれが要求されている訳では
ない。 タイマ15の一定の機能は、1MB12の信号ど機能の
詳細を参照することによってのみ明確に理解することが
できる。したがって、下記の第1表は1MB12のこれ
らの殿能を要約している。 1MB12は、周知のマイクロプロセッサ、aJこび本
発明の譲受人から入手可能であるマイクロコンピュータ
のバスと多くの点で類似し、これどの関係で最もよく理
解することのできる。表における信号の方向はタイマ1
5内のそれらの機能に関連して定義される。 (以下余白) 第1表 表(続き) 1」1名 アドレス・ バス データ・ バス 機能 コード クロック サイクル・ スタート アドレス・ ストローブ データ・ ストローブ 生り名 毀−一一一一−里 DDRO− DDR23 24ビツト アドレス・バス ATAO− ATAI5 バス・ザイジング付16 ビット・データ・バス CO− C2 CPLI状態とアドレス 空間を識別 レジスタ配置指示 LOCK マスク・システム・ クロック YS IMBサイクルの スタート指示 s 有効なアドレスの 指示 S 書込みサイクル時の 有効なデータの指示 万−血 入力 入出力 入力 入力 入力 入力 入力 匡」1名 転送 サイズ アドレス 確認 データ 転送確認 バス・ エラー 停止 呼」1名 IZO− IZI ACK DTACに ERR ALT 鼠−一一一一一里 指示 転送バイト数 選択スレーブ・モジュ ールによってアサート バス・サイクルを終了 させるスレーブの応答 有効な応答がなければ バス・サイクルを終了 させサイクル再動作 異状状態によるCPU の停止指示 方−血 入力 出力 出力 入力 区」1名 ブレーク ポイント 要求 確認 第 1 表(続き) 1uj 皿−一一一一一一加 KPT 現在のバス・サイクル にブレークポイントの 挿入をCPUに要求 確認 方−血 出力 佐」1名 バス・ ロック 1髪L BLOCに 表(続き) ■−−−−−−羞 属性信号 現在のバス・マスクに バスの保持を認める 方−血 マスク・ リセット リセット 5TR3T 外部制御下での 「ハード」リセット 割込要求 IRQI− レベル IRQ7 CPtJに優先順位 付ぎ割込要求 割込 属性 IARBO−割込属性 IARBI 識別線 入力 入力 入出力 イネーブル イネーブル 機能をトグルする イネーブル 「方向」の囮でアスタリスク(*)を付けたIMBの信
号は、タイマ15によって使用されない。 1ス下で説明するように、タイマ15はIMBに対して
スレーブ・オンリ・インター・フェースを有し、したが
って一定の信号を使用することを要求しない。 マイクロコンピユータ10のその他の一定の機能は、同
時係属中の米国特許出願第115,479号の主題であ
る。そこで特許の請求をしている発明は、好適な実施例
の共通な関係を除いて、本発明とは関係がない。 cpuliから見れば、タイマ15はCPU11のメモ
リマツプ内の多数のロケーションとして存在している。 すなわち、CPUIIは、これらのメモリ・ロケーショ
ンに位置しているタイマ・レジスタに読出し、書込みを
行うことによって、排他的ではないが、主としてタイマ
15と相互作用を行う。第2A図および第2B図は、タ
イマ・レジスタのロケーションと名称を示す。アドレス
は16進の形で示され、ファンクション・コード・ビッ
ト・は2進の形で示されている。これらのレジスタのい
くつかは下記でさらに詳しく説明するが、以下の説明は
その各々の機能を要約している。 なお、下記の菌中な説明は、ホストCPUの立場から見
たものである。タイマ15による種々のタイマ・レジス
タに対するアクセスは、下記の説明に含まれていない1
2本発明に関連のある部分の詳細は後に説明する。 CPtJllのスーパバイザ・アドレス・スペース内に
専ら存在するモジュール・コンフィギュ1ノージョン・
レジスタ(ファンクション・フード・ビット101によ
って示される)は、タイマ15に一定の属性を規定する
6ビツト領域を有している。これらの属性は、割込みア
ービトレイションID、一定の他のレジスタのスーパー
バイザ/ユーザ・アドレス空間ロケーション、停止条件
フラグ、停止制御ビット、TCR2ソース制御ビット、
エミューレーション・モード制御ビット、TCR1プリ
スケーラ(pre−sealer)制御ビット、および
TCR2プリスケーラ制御ビットである。 モジュール・テスト・レジスタは、本発明と関係しない
タイマ15のテスト・モードの局面を制御するビット領
域を有している。 開発支援制御レジスタは、タイマ15とCPU11の開
発支援様能との相互作用を決定する多数のビット領域を
有している。同様に、開発支援ステータス・レジスタは
、これらの開発支援機能に対してタイマ15のステータ
スとのみ関連している。これらの機能は、本発明とは関
係していない。 CPU11の開発支援機能の詳細は、上述の米国特許出
願第115,479号に開示されている。 割込みレジスタは、2つのビット領域を有し、CPtJ
llに対してタイマ15によって発生される2つの刈込
み機能を決める。一方の領域は、タイマ15によって発
生される全ての割込みに対する割込みベクトルの最上位
4ビツトを規定する。 他方のビット領域は、タイマ15によって発生される全
ての割込みに対する優先順位を規定する。 このビット領域をタイマ15からの全ての割込みを不能
にフ゛るようにセットし、タイマ15からの割込みがC
PLIIIに対1ノて最高の優先順位となるようにこの
ピッl−領域をセットし、すなわちノンマスカブル割込
、かつこのビット領域をこれらの両極端の間の種々のレ
ベルに設定することが可能である。周知のように、割込
み優先権は、CPU11によって使用され、他の割込み
ソースに対してタイマ割込みの相対的な優先権を決める
。 位相割込みイネーブル・レジスタは、16個の1ビツト
の領域を有し、1つの領域はタイマ15の16個の「チ
ャンネル」の各々に対応する。各ビット領域は、その状
態にJ:って、このピッ1〜領域と関連するチャンネル
に対するサービスを行いながら、タイマ15のサービス
・プロセッサによる割込みの発生を可能または不能にす
る(以下の第3図の議論を参照のこと)。 4つのチャンネル・プリミティブ選択レジスタは、16
個の4ビツト領域を有1ノ、タイマ15内のサービス・
プロセッサが特定のチャンネルに対してサービスを行っ
ている場合、16個の可能なプリミティブまたはタイマ
・プログラムのいずれがこのサービス・プロセッサによ
って実行されるべきであるかを決定する。16個のビッ
ト領域の各々は、16個のタイマ・チャンネルの1つと
連動する。1つの領域内の4ビツトは、プロセッサがそ
の領域と関連するチャンネルに対してサービスを開始す
る場合、サービス・プロセッサ内の制御用記憶装置に供
給されるアドレスの一部として使用゛される。そのアド
レスに応答して、制御用記憶装置に戻されるデータは、
このチャンネルをサービスしている間に実行されるべき
プリミティブに対するエントリ・ポイントまたは開始ア
ドレスとして使用される。サービス・プロセッサの制御
用記憶装置は、16個のチャンネルの各々に対して最高
16個の異なったプリミティブと最高16個のエントリ
・ポイント(合計256個のエントリ・ポイント)を有
することができる。この制御用記憶装置の全体のサイズ
は固定されているが、プリミティブ・コードとエントリ
・ポイントの間の割当ては変化してもよい。即ち、合計
256個未満のエントリ・ポイントのロケーションを使
用し、より多くのプリミティブ・コードを含むように、
「余分の」記憶能力を使用することが可能である。 2つのホスト・シーケンス・レジスタは、モジュール・
コンフィギユレーション・レジスタのビット領域の1つ
に応じて、CPUIIのスーパーバイザまたは非制限ア
ドレス空間のいずれに存在してもよい。これは、ファン
クション・コード・ビット×01によって示され、ここ
で、Xはモジュール・コンフィギユレーション・レジス
タのSUP■ビットによって決まる。ホスト・シーケン
ス・レジスタは16個の2ビツト領域から構成され、そ
れらの各1個は、16個のタイマ・チャンネルの各々に
対応する。ホスト・シーケンスのビット領域は、ブラン
チ条件としてサービス・プロセッサに対して実行される
プリミティブによって使用されるものであるが、必ずし
もこれによって使用されなくてもよい。すなわち、2つ
のホスト・シーケンス・ビットの状態によって、プリミ
ティブ内の命令の流れを変更することが可能である。 2つのホスト・サービス・リクエスト・レジスタは、1
6個の2ビツト領域から構成され、それらの各1個は、
各タイマ・チャンネルに対応する。 特定のビット領域に書き込みを行うことによって、ホス
トCPUは、タイマ15のサービス・プロセッサによる
サービスを受けるタイマ・チャンネルの全てに対するス
ケジュールを立てることができる。各チャンネルは、ホ
スト・サービス・リクエスト・レジスタの1つに2ビツ
トを有しているので、チャンネル当たり4つの可能な値
が存在する。 各チャンネルに対して要求することのできる3つの異な
ったFタイプ」のサービスがあり、これらは4つの可能
な値のうちの3つに対応する。4番目の値は、ホストの
要求するサービスがスケジュールされないことを示す。 ホストの行うサービスに対す・る要求を示す3つの値は
、上述したプリミティブ選択ビットと同じ形で使用され
る。ポスト・サービス・リクエスト・ビットは、エント
リ・ポイント・アドレスを得るために直接使用されない
が、他のチャンネルの条件ビットと一緒に符号化される
。 2つのチャンネル優先レジスタは、11(7)2ビツト
領域から構成され、各1個は各チャンネルに対応する。 各ビット領域は、その関連するチャンネルに対し4つの
可能な優先順位の1つを特定する。この優先順位は、い
くつかの競合するチャンネルのいずれが最初にサービス
を受けるかを決めるため、タイマ15のサービス・プロ
セッサ内のスケジューラによって使用される。4つの可
能な優先順位には、不能、低位、中位および高位がある
。サービス・スケジューラは、優先順位の低いチャンネ
ルでも一定の時間がたてばサービスを受けられることを
保証するような方法でサービス・プロセッサの資源を割
り当てる。チャンネルの各々は、使用可能な優先順位の
いずれに対しても割当可能であり、16チヤンネルに対
してどのような組み合わせの優先順位を行うことも可能
である。 位相割込み状況レジスタは、16チヤンネルの各々に対
して1ビツトを有し、上で論じた位相割込みイネーブル
・レジスタと関連する。サービス・プロセッサが特定の
チャンネル((サービスを行っている間に、割込みを発
生させるべきであると決定すると、そのチャンネルに対
応する位相割込み状況レジスタのビットは、アサ−1−
・される。もし位相割込みイネーブル・レジスタの対応
するビットがアサートされると、割込みが発生する。も
しそうでなければ、ステータス・ビットはアサートされ
たままであるが、ホストCPtJに対して割込みは発生
しない。 リンク・レジスタは、16個のタイマ・チャンネルの各
々に対して、1ビツト・を右する。各ビットは、特定の
タイプのサービスに対する要求、リンク・サービスに対
する要求が、対応するチャンネルに対1−るサービス要
求を行うため、アサートされていることを示す。 サービス許可ラッチ・レジスタは、16個の1ビツト領
域を有づ゛る。各タイマ・チャンネルは、これらの領域
の1つと関連する。アサートされると、このサービス許
可ラッチ燈レジスタの1つのヒラl−は、関連するチャ
ンネルがサービス・プロセッサによるサーじスを行うた
めに「タイム・スロット」が与えられたことを示す。こ
のレジスタのヒラ1へは、サービス・プロセッサの資源
を割り当てる過程で、サービス・プロセッサ内のスケジ
ューラによって使用される。 復号化チャンネル数1ノジスタは、各タイマ・チャンネ
ルに対して、1ビツト領域を有し、これが7ザートされ
ると、サービス・プロセッサが新しいチャンネルに対し
てサービスを開始した場合、それは喪8チャンネル数1
/ジスタで示されたチャンネルに対するサービスを行っ
たことを示す。このチャンネルに対する見出しは、たと
え実行中のプリミティブがサービス・プロセッサによっ
て実際に制御されているチャンネルの見出しを変更する
「チャンネル変更」機能を実行しても、一定のままであ
る。 ホストCPUから見た場合、タイマ15の残りのメモリ
・マツプは多数のチャンネル・パラメータ・レジスタに
よって構成される。、16個のタイマ・チャンネルの各
々は、これに対して専用化された6個のパラメータ・レ
ジスタを有する。以下で詳細に説明するようにこれらの
パラメータ・レジスタは、これを介してホストCPUと
タイマ15とが相互に情報を提供する共有のワーク ス
ペースとして使用される。 第3図は、マイクロコンピュータ10の残りの部分から
分離された状態のタイマ15を示す。タイマ15の主要
な機能部品は、サービス・プロセッサ20.CHO−C
H15とも名付けられている16個のタイマ・チャンネ
ル21a−21p。 およびバス・インターフェース装@(BIU)22によ
って構成されると考えてもよい。各タイマ・チャンネル
はマイクロコンピュータ10の1つのビンに接続される
。チャンネルOは、ビンTPOに接続され、チャンネル
1はビンTP1に接続される等々である。マイクロコン
ピュータでは一般的であるように、これらのビンの各々
は、タイマ15とマイクロコンピュータ10のその他の
機能との間で「共有される」ことが可能であるが、ここ
で説明する好適な実施例では、そのような構成になって
いない。 サービス・プロセッサ20とチャンネル21a−21D
との間の相互接続は、サービス・バス23、イベント・
レジスタ(ER)バス24タイマ・カウント・レジスタ
#1 (TCRI)バス25、タイマ・カウンタ・レジ
スタ#2 (TCR2)バス268よび多数の種々の制
御および状態線27によって構成される。ザーどス・バ
ス23は、サービス・プロセッサ20のサービスを要求
するためチャンネル21a−21pによって使用される
。 ERババス4は、各チャンネル内のイベント・レジスタ
の内容をサービス・プロセッサ20に供給し、これらの
レジスタをサービス・プロセッサ20からロードするた
めに使用される。2つのTCRバスは、サービス・プロ
セッサ20内に位置している2つのタイマ・カウント・
レジスタの現在の内容をチャンネル21a−21pに伝
達するために使用される。 BIU22は、1MB12とサービス・プロセッサ20
との間のインターフェースとして機能する。このような
バス・インターフェースの詳細は、本発明と関係するも
のではなく、技術上周知のものである。好適な実施例で
は、BIU22は[スレーブ・オンリー]のインターフ
ェースである。 すなわち、タイマ15は1MB12を介して、転送され
る情報を受信してもよいが、1MB12上に転゛送を開
始することはできない。 以下で詳細に説明するように、サービス・プロセッサ2
0は制御用記憶装置を有する。この制御用記憶装置は、
サービス・プロセッサ20によって実行される命令を有
するリード・オンリー・メモリ装置から構成される。好
適な実施例では、これはマスク・プログラマブルROM
として提供される。当業者にとって明らかなように、こ
のような制御用記憶装置は、問題となる制御用記憶装置
に対してプログラムされるべきソフトウェアの開発を行
う。この問題に対処するため、エミュレーション・イン
ターフェース17は、サービス・プロセッサ20をメモ
リ14に結合する。すなわち、サービス・プロセッサ2
0は制御用記憶装置に記憶されている命令の替わりに、
メモリ14に記憶されている命令を実行することができ
る。好適な実施例では、メモリ14はランダム・アクセ
ス・メモリ(RAM)のような書き変え可能なメモリで
ある。エミュレーション・インターフェース17は、ユ
ーザーがサービス・プロセッサ20に対してプリミティ
ブを自込み、実行し、変更することを可能にする目的の
ため機能する。−度完全にデバッグされると、これらの
プリミティブは制御用記憶装置の別のバージョンに組み
込まれることができる。 TCR2でカウントされる基準となる外部タイミング・
ソースは、サービス・プロセッサ20に結合される。上
述したモジュール・コンフィギユレーション・レジスタ
のビットは、TCR2がこの外部タイミング・ソースに
よってクロックされるかまたは内部タイミング基準によ
ってクロックされるかを制御する。 一般的にサービス・プロセッサ20は、主としてERバ
バス4と制御線27を使用して、チャンネル21a−2
ipを形成し、所定のタイミング・タスクを実行する。 チャンネル21a−21pは、命令通りにこれらのタス
クを実行し、時々、サービス・プロセッサ20にサービ
スを要求することによって、イベントなどの発生をサー
ビス・プロセッサ20に知らせる。サービス・プロセッ
サ20は、もしそれが存在すれば、特定のチャンネルか
らのサービス要求に応答して、そのサービスを開始する
ためにどのようなアクションを取るべきかを決定する。 サービス・プロセッサ20は、次に、そのホストCPU
にの場合、CPU11)にしたがって、以下で更に詳
しく説明するように、実行するべきタイミング機能を識
別すると共に一定のその他のサービスを行う。サービス
・プロセッサ2.0は、またホストCPUに対する割込
み要求を独占的に発生する。好適な実施例では、この機
能はサービス・プロセッサ20の制御用記憶装置にある
プログラムによって制御される。 TCRIバスおよびTCR2バスは、16個のチャンネ
ルの各々に対して連続的に使用可能であり、各々のタイ
マ・カウンタ・レジスタの新しい内容と共に所定のスケ
ジュールで更新される。同様に、16個のチャンネルの
各々は、いつでもサービス・バス23を介してサービス
要求をアサートすることができる。しかし、ERババス
4と制御および状態線27に関して、サービス・プロツ
セサ20は、ある1つの時点において16個のチャンネ
ルの1つのみと通信を行う。ERババス4を介して行わ
れるイベント・レジスタの読み出しおよびこれに対する
書き込みと制御および状態線27上の種々の制御および
状態信号はサービス・プロツセサ20によってその時サ
ービスが行われているその1つのチャンネルに対しての
み有効である。必要な範囲に対して、各チャンネルは制
御線27によってこれに与えられた制御情報をラッチし
、サービス・プロセッサが他のチャンネルに対してサー
ビスを行っている間これを保持する。 サービス・バス23を介してチャンネルによって行われ
るサービスに対する要求に加えて、サービス・ブ1」ツ
セザ20は、ボスI= CP tJ によって行われる
サービス要求に対応する。上述(〕たボスト・サービス
要求レジスタに適当な値を司き込むことによって、ホス
トCPLJは全ての特定のチトンネルに対するサービス
のスケジューール化を開始することができる。更に、サ
ービス・プロセッサ20は、それ自身、以下詳細に説明
するリンク・ザーじス要求振欄を介してこのようなスケ
ジューラ化を行なうこともできる。 第4Aないし第4D図は、第4E図に示ずような相互関
係を有するが、タイマ15の詳細な構成を示す。−船釣
に、第4A図はサービス・プロセッサ20 (i3図)
のマイクロエンジンを示lノ、第4B図は、サービス・
ブロツセサ20の実行ユニットを示し、第4C図はタイ
マ・チャンネルのハードウェアと装置の残りの部分に対
する相互接続を示し、第4D図はバス・インターフェー
ス、レジスタ8にびサービスのスケジューラを示′?j
−0先ず第4A図を参照して、マイクロエンジンの主要
な機能蟹素は、優先エンコーダ30、インクリメンタ3
1、リターン・アト1ノス・1ノジスタ32、マルチ1
1クサ33、マルチ11ノクサ・コント・ロール34、
マイクロプログラム・カウンタ35、ROM 制m 記
憶36、? )tt チア +/ ’y ”j−37、
マイクロ命令1ノジスタ38、マイクロ命令デコーダ3
9、マルチプレクサ40、ブランチPLA41および複
数のフラグ・レジスタ42によって構成される。−船釣
に、複数の可能なソースの中からマルチプレクサ33に
よって選択されたマイクロ命令アト1ノスは、マイクロ
プログラム・カウンタ351.1:Iコードされ、次1
...ROM制御g記憶3Gに供給される。このアドレ
スによって選択されたマイクロ命令は、ROM制御記憶
3Gによってマルチプレクサ37を介してマイクロ命令
1ノジスタ3Bに供給される。デコーダ39は、次にマ
イクロ命令レジスタ38の内容を信号し、必要に応じて
サービス・ブロツセザ全体に制御信号を与える。 マイクロ命令デコーダ39は、単一の装置と()て図示
され、これからの制御信号がタイマの残り全体に対して
供給されるが、当業者はこの手順を変更1−ることが有
利でdりるかもしれないことを理解するであろう。マイ
クロ命令レジスタ38から出力されるピッl=数は、デ
コード・ロジック39から出力されるfii制御信号の
数よりも少ないので、マイクロ命令1ノジスタ38から
の出力をタイマ全体に分配づ゛ることが有利であるとと
もに、さまざまな位置に配置された複数のデコーダを設
けることが右利となる。信号のルートを節約することと
デコード論理を復製づ゛ることとの二者択一関係は、少
雑な設計上の決断であり、これはケースバイケースで行
わなければならない。 上で論じムニエミ]、 1ノージヨン・インターフェー
ス(第1図および第3図において参照番号17)はこれ
らの図では、エミュレーション線50、メモリ・サイク
ル・スタート線51、マイクロ命令アドレス線528よ
びマイクロ命令線53によって構成される。エミ〕1.
ノージョン線50の信号の状態ににつて命令され、エミ
ュレーション・モードが動作すると、RAMは線52上
のアドレスに応答して線53上にマイクロ命令を導出す
る。マルチプレクサ37は、これらのマイクロ命令をR
OM制御記憶36によって供給されたマイクロ命令の代
わりに選択して、RAMから導出されたマイクロ命令を
マイクロ命令1ノジスタ38に供給する。エミュレーシ
ョン線50の状態は、モジュール・フンフィギュレーシ
ョン・レジスタ内のエミュレーション・モード制御ビッ
トによって制御され、1ノたがって、ホストCPUの制
御下にある。 メモリ・サイクル・スタート信号は、単にシステム・ク
ロックから導き出されるタイミング信号である。 本発明を実現するのに必要な程度に第4A図に示すマイ
クロエンジンの詳細な特徴と動作を理解できるよう、第
4A図は、以下で更に」−分な説明が行なわれる。 第4B図には、サービス・プロセッサの実行ユニットが
描かれている。この実行ユニツI〜は、2個の16ビツ
ト双方向バス、すなりらAバス60とBパス61を有す
る。イベント・レジスタ転送レジスタ63はAバス60
に対し双方向に接続される。同様に、タイマ・カウント
・レジスタ#164とタイマ・カウンタ・レジスタ#2
65は、Aバス60に対し双方向に接続される。デクリ
メンタ66は、Aバス60に対し双方向に接続される。 更に、デクリメンタ66は、デクリメンタ・コントロー
ラ67から制御入力を受けとり、線68を介して第4A
図のマルチプレクサ・コントローラ34とマイクロプロ
グラム・カウンタ35に出力を供給する。シフト・レジ
スタ69はAパス60に対し双方向に接続され、かつB
バス61に出力を与えるように接続される。シフト・レ
ジスタ69は、シフタ70から入力を受取るように接続
される。シフタ70は、Aバス60に対し双方向に接続
される。 シフタ70は、また演算ユニット(AU>71からの入
力を受取るように接続される。AU71は、2つの入力
ラッチAi n72とB1n73から入力を受取る。ラ
ッチ72と73は、Aバス60と8バス61からそれぞ
れ入力を受取るように接続される。AU71は、ブラン
チPLA41に多数のコンデイション・コード出力を与
える。 汎用アキュムレータ(A>74は、Aバス60に対し双
方向に接続されると共にBバス61に出力を与えるよう
に接続される。パラメータ・プリロード(1)re−1
oad )レジスタ75は、Aバス60に対し双方向に
接続されると共に8バス61に出力を与えるように接続
される。更に、このパラメータ・プリロード・レジスタ
75は、線76によって第4C図のチャネル制御ハード
ウェアに出力を与えるように接続される。レジスタ75
は、またマルチプレクサ77に対し双方向に接続される
。 データ入出力バッフ7 (DIOB)レジスタ78は、
Aバス60に対し双方向に接続されると共にBバス61
に出力を与えるように接続される。 DIOB78は、またマルチプレクサ77に対し双方向
に接続される。更に、DIO878は、マルチプレクサ
79に出力を与えるように接続される。マルチプレクサ
79は、パラメータRAMアドレス・レジスタ80に出
力を与えるように接続される。 マルチプレクサ85は、Aバス60がらの入力と線86
からの入力を受け取るが、この入力は第4D図のサービ
ス・スケジューラに源を発する。 マルチプレクサ85の出力は、チャンネル・レジスタ8
7に入力として与えられる。チャンネル・レジスタ87
は線201によってAバス60に出力を与えると共に線
89によって第4C図のチャネル制御ハードウェアに出
力を与えるように接続される。チャンネル・レジスタ8
7の内容によって、種々の制御信号とERババスサイク
ルが、第4C図に示すチャンネル制御ハードウェアにお
いて、現在サービスを受けている特定のチャンネルの方
向に適切に方向づけられる。図示の装置にはサービスプ
ログラムあるいはプリミティブの実行中にそのチャンネ
ルの見出しを変更する能力があるため、チャンネル・レ
ジスタ87の内容は、第2A図および第2B図と関連し
て上で説明した復号されたチャンネル・ナンバ・レジス
タの内容と必ずしも対応しない。後者のレジスタは現在
実行しているプリミティブが開始されたチャンネルの見
出しを含み、一方チヤンネル・レジスタ87は現在制御
信号が与えられているチャンネルの見出しを含む。この
区別が本発明の理解にとって重要である範囲において、
下記でざらに完全に説明される。 リンク・レジスタ88はAバス60から入力を受け取り
、デコーダ89に出力を与えるように接続される。リン
ク・レジスタ88の4ビツトはデコーダ89によって復
号され、16ビツトを発生するが、これらの各々はタイ
マ・チャンネルの1つと関連している。これらの16ビ
ツトは線90によって第4A図のブランチPLA41と
第4D図のサービス・スケジューラに接続される。リン
ク・レジスタ88は、サービス・プロセッサがリンク・
レジスタ88に所望のチャンネルの見出しを書込むだけ
で、マイクロ命令によって制御されている全てのチャン
ネルに対するサービスのスケジュールを作成することの
できる手段を提供する。 リンク・レジスタ88は、第2A図と第2B図に関して
上述したリンク・レジスタとは別のものである。リンク
・レジスタ88(J、レジスタの見出しを有し、これに
対し、もしあるとすればザー1でス・プロセッサによっ
てリンク・サービス要求がそのとぎ行われる。第2A図
および第2B図に関連して上述したリンク・レジスタは
、リンク・サービス要求が行われたということを示し、
まだこれに対する応答が行われていないことを示1′名
チャンネルに対するフラグ・ビット・を有しでいるにす
ぎない。 本発明を実現するのに必要な程度に第4B図に示ず実行
ユニットの詳細な特徴と動作を理解できるよう、第4B
図は、以下で更に十分な説明が行なわれる。 第4C図は、チャンネル・ハードウェアが示されている
。1つのチャンネルの詳細な構成要素が図示され、第5
図を参照(〕てJス下で説明される。 タイマの残りの部分から見れば、チャンネル・ハードウ
ェアは、ここではERO−ER15の符号が付けられて
いる16mのイベント・レジスタ、16個のデコーダ1
00内の1つおよび制御ロジック101のブロックによ
って構成されているように兄える。TCRバスの各々は
、16個のイベント・レジスタの各々に接続される。E
RTレジスタ63(第4B図)と双方向の通信を行うF
Rババスデコーダ100に接続される。この手段によっ
て、イベント・レジスタのいずれか1つと第4B図に示
す実行ユニットとの間で値を転送することができる。明
らかなように、タイマ・カウント値は、実行ユニツ1へ
からイベント・レジスタに転送されてマツチ・イベン1
へを設定し、捕捉イベント・に応答してイベント・レジ
スタから実行ユニッ1−(転送される。 チャンネル・レジスタ87(第4B図)からの線89は
、ロジック101を制御するために接続され、これに対
して現在サービスを受けているチャンネルを示す。制御
ロジック101は、またマイクロ命令デコーダ39(第
4Δ図)から直接また(、tマルチプレクサ102を介
して複数の入力を受ける。更に、制御ロジック101は
ブランチP[A41(第4A図)に出力を与える。最後
に、サービス・バス105は、制御ロジック101に対
して種々のチャンネルから第4D図のスケジューラにサ
ービス要求を伝達する手段を設ける。再び、チャンネル
・ハードウェアの機能は以下で詳細に説明される。 第4D図は、タイマのホスト・・インターフェース部を
示す。上で示されたように、BIU22はIMBに対し
て必要な従属専用のインターフェースを提供し、ホスト
CPUがタイマのレジスタをアクセスすることを可能に
する。BIU22は、RAMバス110に対し双方向に
接続されパラメータRAMアドレス・バス111に出力
を与えるように接続される。第4D図に示された装置の
残りの部分は、スケジューラ112、システム・レジス
タ113、パラメータRAM114、プリミティブ選択
レジスタ1158よびホス[・・サービス要求レジスタ
116によって構成され、これらは全てRAMバス11
0と双方向に接続される。 スケジューラ112は、16個のタイマ・チャンネルを
サービス・プロセッサの資源に割当てる手段によって構
成される。図示のように、2個のチャンネル優先レジス
タ、リンク・1ノジスタ、復号化チャンネル数レジスタ
およびサービス許可ラッチ・レジスタ(すべて第2A図
と第2B図を参照して上述された)は、スケジューラ1
12内に存在すると考えてよく、全てRAMバス110
と双方向に接続される。 スケジューラ112は、マイクロ命令デコーダ39から
1ビツトの入力を受取り、これは特定のチャンネルに対
するサービスが終了したことを示す。これはスケジュー
ラ112が保留中のいずれのサービス要求を次に実行す
るかを決定するプロセスが起動される。スケジューラ1
12は、またマイクロ命令デコーダ39に1ビツトの出
力を与え、いずれのチャンネルに対しても現在サービス
のスケジュールが立てられていないことを示し、これは
また「アイドル」状態と呼ばれる。 スケジューラ112は、48ビツトによって構成される
サーどス・バス120から入力を受けとるが、これは線
105からの16ビツト、線90を経由するデコーダ8
9からの16ビツトおよびホスト・サービス要求レジス
タ116からの16ビツトを結合することによって形成
される。これらの48ビツトは、チャンネル・ハードウ
ェア自身が現在サービスを要求しているチャンネル、リ
ンク・レジスタ88によって現在サービスが要求されて
いるチャンネルおよびホストサービス要求レジスタ11
6によってサービスが要求されているチャンネルをそれ
ぞれ示す。スケジューラ112はこれらの入力を受入れ
、チャンネル優先レジスタの値によって示されるように
、サービスが要求されているチャンネルの相対的優先順
位を検討し、いずれのチャンネルが次にサービスされる
べきかを決める。選択されたチャンネルの4ビツトの指
定信号が、線86を介してマルチプレクサ85、プリミ
ティブ選択レジスタ115、およびホスト・サービス要
求レジスタ116に出力される。 上述したように、各チャンネルは、優先レジスタ内で対
応するビットによって割当てられた4つの優先順位の1
つを有している。サービスに対する要求が保留になって
いるチャンネルにスケジュールをたてるスケジューラ1
12の計画は、低い優先順位のチャンネルでも最終的に
はサービスが受けられることを保証している。この特徴
は、他の機能をサービスするために必要とされる時間に
対して、いかなるタイミング機能も全く失われないこと
を保証するために重要である。同じ優先順位のチャンネ
ルの間では、スケジューラ112はサービスを順繰りに
割当てる。 スケジューラ112がサービスを行う新しいチャンネル
を選択する各状況(すなわち少なくとも1つのサービス
要求が保留中であって現在いずれのチャンネルもサービ
スされていない)はタイム・スロット境界と呼ばれる。 スケジューラ112によって使用される別画は、各7つ
の使用可能なタイム・スロットの内4つを高位の優先順
位に設定されたチャンネルに割当てられ、7つの内2つ
が中位の優先順位に設定されたチャンネルに割当てられ
、7つの内1つが低位の優先順位のチャンネルに割当て
られる。使用されている特定のシーケンスは、高位、中
位、高位、低位、高位、中位、高位である。もしタイム
・スロット境界において該当する優先順位のチャンネル
に保留中のサービス要求がなければ、スケジューラ11
2は下記の計画に従って次の優先順位に進む。高位−中
位−低位、中位−高位−低位および低位−高位−中位。 スケジューラ112中には、−8チャンネルに対するサ
ービス要求ラッチがあり、これはいずれのタイプのサー
ビス要求がそのチャンネルに対して保菌された場合でも
必らずセットされる。このラッチは、タイム・スロット
がそのチャンネルに対し割当てられた場合、スケジュー
ラ112によってクリアされ、サービスが終了するまで
再びアサートされることはない。これは、スロット間に
アイドル状態が無く他のチャンネルがベンディングのサ
ービス要求を有しているならば、いずれのチャンネルも
2つの連続°したタイム・スロットに割当てられないこ
とを意味する。 同じ優先順位のチャンネルの場合、いずれかのチャンネ
ルが2度サービスを受ける前に、スケジューラ112は
、サービスを要求する全てのチャンネルにサービスが受
けられることを保証する。 同じ優先順位のチャンネルのグループでは、番号の一番
低いチャンネルが最初にサービスを受ける。 勿論、限定された処理資源へのアクセスの要求が競合す
る場合の優先権の割当て計画は、周知のものでありこれ
は幅広く変化する。多くの他のこのような計画が今ここ
で述べた計画に代替することが可能である。ここで開示
した計画は、タイマ・システムにとっては有利なもので
あると信じられるが、その理由は、こらが優先順位の最
も低い要求に対してさえサービスを保証するからである
。 パラメータRAM114は、16個のタイマ・チャンネ
ルの各々に対して各16ビツト幅の6個のパラメータ・
レジスタによって構成され、合計192バイトのRA
Mを有する。パラメータRAM114は、ホストCPU
とサービス・プロセッサの両方がその中で読出しおよび
書込みを行うことができるという意味で「デュアル・ア
クセス」でおるが、これらの内の1つしか一時にアクセ
スすることができない。アドレス・マルチプレクサ12
2とデータ・マルチプレクサ123は、サービス・プロ
セッサとホスt−CPtJのいずれがアクセスを行うか
を選択する。ここで図示していない属性[〕シシラが実
際にはいずれのバス・マスクがアクセス可能かを決定す
る。アドレス・マルチプレクサ122は、アドレス・レ
ジスタ80からおよびパラメータRAMアドレス・バス
111を介してBIU22からアドレスを受取るために
接続される。データ・マルチプレクサ123は、RAM
バス110とマルチプレクサ77に対し双方向に接続さ
れる。パラメータRAM114にアクセスするために、
サービス・プロセッサがアドレスを発生ずる方法は、以
下で本発明に関係する程度に詳しく説明する。しかし、
アドレスはチャンネル・レジスタ87(第4B図参照)
の現在の内容を直接基礎としであるいはオフセット値を
加えることによって変更された内容にもとずいて発生で
きることに留意づ−る必要がある。これらのアドレシン
グ・モードは、ぞの中でバラメークRΔMのアドレスが
現在のチャンネルに関連して特定されるが、サービス・
プロセッサによる実行を意図するプリミティブを作成す
る際に極めて大きなフレキシビリイテイを提供する。 パラメータRAM114の設計に際して他の重要な面と
して、干渉性の問題がある。も(ノホストCPUが、例
えば、チャンネルOによって使用づ−るためパラメータ
RAM114に幾つかのパラメータを書込んでいるプロ
セスにあれば、全てではないが若干のパラメータが書き
込まれた後、サービス・プロセッサによって実行された
サービス・ルーチンはこれらのパラメータを使用できな
いことということが大切である。マルチ・パイ1〜では
、逆の方向、づ−なわち、サービス・プロセッサーから
ボスl−CP tJに転送されているパラメータに同様
の問題が存在する。干渉性の問題を処理する方法には、
技術上周知の多くの異なった方法がある。 完全を則するため、好適な実施例で使用される干渉性に
対応する別画を以下で要約して説明する。 パラメータRΔM114を偶成する]6ビツト・ワード
の1つ、この場合、チャンネル0のパラメータ・レジス
タ5と指定されたワード(第2B図参照)は、干渉デー
タ制御レジスタ(CDC:coherent data
control )として使用されるように指定され
る。このレジスタのビット15はセマフォ・ピッI−(
semaphore bit)として使用される。 サービス・プロセッサまたはホストCPUのいずれかが
パラメータRAM114にアクセスすることを希望する
場合、このセマフォ・ビットが先ずヂエックされ、もし
これがセットされているならば、セマフ4・ヒツトがク
リアされるまで、干渉データ(cohefent da
ta)の転送に使用されるこれらのロケーションに対す
るアクセスは保留される。 可能なバス・マスクの1つが干渉転送(coheren
ttransl’ef)を行うことを希望ずれば、これ
は先ずセマフォ・ビットをセラ]・シ、次にこの転送を
実行し、次にこのセマフォ・ビットをクリア1′る。 この11画が実行されることを知るため、ホス1−CP
Uとサービス・プロセッサとの両方ににつて実行される
プログラムを古くことはプログラマに委ねられている。 (でット14は、3つまたは4つのパラメータ(各16
どツト)が干渉的に転送されるべきであることを指示す
るモード・ピッl〜である。もし3つのパラメータが転
送されるべきであれば、チャンネル1のパラメータ・レ
ジスタ0−2として指定されたワードが保護されたロケ
ーションとして使用される。も1ノ4つのパラメータが
転送されるぺぎてあれば、チャンネル1のパラメータ・
レジスタ3がまた使用される。 好適な実施例で使用される干渉性に対1゛る別画のこれ
以上の詳細はここでは重要でないが、その理由は、その
問題とその可能な解決法の多くが、当業者にとって周知
のもであるからである。 プリミティブ選択レジスタ115は、上述した4個のチ
ャンネル・プリミティブ選択レジスタによって椙成され
る。これらのレジスタは、RA Mバス110に対し双
方向に接続され、また線86からサービスを受けている
チャンネ・ルを示す入力を受ける。チャンネル・プリミ
ティブ選択レジスタの出力は、マイクロエンジンのプリ
ミティブ選択・ロジックに与えられる。 ホスト・サービス要求レジスタ116は、上述した2つ
のホスト・サービス要求レジスタによって構成される。 ホスト・サービス要求レジスタ116は、RAMバス1
10と双方向に接続され、サービス・バス120に16
ビツトの出力を与える。上述したように、ホスト・サー
ビス要求レジスタ116は、現在サービスを受けている
チャンネルを指示するスケジューラ112から入力を受
け取る。更に、ホスト・サービス要求レジスタ116は
、ブランチPLA41から入力を受取り、これに出力に
導出す。 第4D図のどこにも示されていない残りのレジスタは、
単にシステム・レジスタとして特徴づけられ、ブロック
113で示される。このグループに含まれるものには、
ブランチPLA41に入力を与えるホスト・シーケンス
・レジスタがある。 モジュール・コンフィギユレーション・レジスタ、モジ
ュール・テスト・レジスタおよび位相割込みイネーブル
・レジスタのような他のレジスタは、割込み発生ロジッ
クのようなここに図示されていないタイマ・ロジックの
部分に出力を与える。 本発明を実現するために必要な範囲で第4D図に示すホ
スト・インターフェースとスケジューラ部分の詳細な特
徴と動作が以下で更に十分に説明されるであろう。 明らかなように、第4A図−第4D図に示す装置は、開
示しているシステムと同程度に複雑なシステムの可能な
各論理回路構造を必ずしも含めることができない。しか
し、開示したタイマの全体の構造と機能は、説明した装
置から当業者にとって明らかである。 第5図は、単一のタイマ・チャンネルの制御ハードウェ
アを示す。好適な実施例では、16個のタイマ・チャン
ネルの各々は、1つおきにあらゆる点で絶対的に同一の
ものである。[チャンネル直交性J (channel
0rthOCIQnalit111)と呼ぶこのシス
テムの特徴の1つの重要な面であるこの特徴は、1つの
チャンネルによって実行される全てのは能が、他のいず
れのチャンネルによっても実行することができることを
意味する。したがって、第5図に示すハードウェアは、
以下で特に述べる項目を除いて、好適な実施例の16個
のチャンネルの各々に対して同一のものである。 各タイマ・チャンネルのイベント・レジスタ130は、
捕捉レジスタ131、マッチ・レジスタ132および同
等以上比較器133によって実際に構成される。捕捉レ
ジスタ131は、転送ゲート134を介してERババス
接続され、捕捉レジスタ131の内容がERババス上ロ
ードされるのを可能にする。マッチ・レジスタ132は
、転送ゲート135を介してERババス対し双方向に接
続される。捕捉レジスタ131は、転送ゲート136に
よってTCRIバスまたはTCR2バスのいずれかから
ロードされる。同じ転送ゲート137は比較器133へ
の一方の入力がTCR1バスであるかTCP2バスであ
るかを制御する。 比較器133に対する他方の入力は、常にマッチ・レジ
スタ132である。 第5図に示す装置の他端において、このタイマ・チャン
ネルに関連するピン140は、ピン制御ロジック141
のブロックに接続される。ビン制御ロジック141は、
ピン140が入力タイマ用のピンとして構成されるかま
たは出力タイマ用のピンとして構成されるかを決定する
。ピン140が入力用のタイマのピンとして構成される
場合、ピン制御ロジック141は捕捉イベントをトリガ
する目的のために、正方向に向から遷移、負方向に向か
ら遷移またはいずれかの遷移を認識できるように構成す
る。出力用に構成された場合、ピン制御ロジック141
は、マツチ・イベントの発生によって、論理高レベルま
たは論理低レベルを発生し、またはレベルの変化即ちト
グルするようにプログラムすることができる。更に、マ
ツチ・イベントの発生に関係なく、上述した3つの可能
性のいずれかを強制的に発生させることが可能である。 サービス・プロセッサは、状態制御(それによってピン
の状態が「強制コされる)、動作制御(それによって検
出されるべき遷移または光年すべぎレベルが選択される
)および方向制till (それによつでビンが「入力
」または「出力」として構成される)入力を介してビン
制御ロジック141に対する制御を行い、その状態を状
態出力によって監視することができる。 遷移検出ラッチ145は、ビン制御ロジック141から
の入力を受取るために接続される。ビン140における
特定の遷移がロジック1411こよって検出された場合
、およびもしビンが入力用に構成されている場合、ラッ
チ145がセラ]・される。ラッチ145は、マイクロ
コードの制御下でサービス・プロセッサによってクリア
または二ゲートされる。以下で更に説明する一定の状況
下では、遷移検出ラッチ145は連続的にニゲートされ
る。 マツチ認識ラッチ150は、ビン制御ロジック141に
入力を与えるために接続される。もし、マッチ・レジス
タ132の内容がTCRバスの選択された1つの状態と
「マツヂコし、かつその他の論理的条件が満?されれば
マツチ認識ラッチ150はセラ1−される。このことが
発生し、かつもしビン140が出力用に@成されていれ
ば、選択された遷移がビン制御ロジック141によって
ビン140に発生(−る。マツチ認識ラッチ150は、
マイクロコードの制御下でサービス・プロセッサによっ
てニゲートされる。 遷移検出ラッチ145の出)〕は、第10Rゲー1−1
46と第1ANDゲート]47の入力に接続される。O
Rゲート・の他方の入力は、マツチ認識ラッチ150の
出力である。ORゲート146の出力は、捕捉イベント
・ロジック14Bに接続される。捕捉イベン1−・ロジ
ック148は、また2つのカウンタの−・方(タイム・
ベース制御井2)を示す制御13号を受取る。捕捉イベ
ント・ロジック148の出力は、転送ゲート136に接
続される。ORグー1−146の出力がアクティブにな
ると、捕捉イベント・ロジック14Bは、タイム・ベー
ス制御#2にしたがって、TCR1バスまたはTCR2
バスの現在の値を捕捉レジスタ131にロードさせる。 明らかなように、捕捉イベントは、遷移の検出またはマ
ツチ・イベントのいずれかににつてトリガされる。 ANDゲート147の他方の入力は、サービス・プロセ
ッサの制御下にある制御信号MTSRE[マツチ/遷移
サービス要求イネーブル(Hatch/丁ransit
ion 5ervice Request En
able)]である。ANDゲート147の出力は、T
DL[遷移検出ラッチ(Transition Det
ect Latch ) ]と呼ばれる制御信号であり
、サービス・プロセッサのブランチPLAに接続される
と共に第2ORゲート149の1つの入力を構成する。 ORゲート149の出力は、図示のチャンネルに対する
サービス要求信号であると考えてもよい。 第2ANDゲート151は、マツチ認識ラッチ150の
出力に接@された第1人力とMTSRE制御信号に接続
された第2人力を有する。ANDゲート151の出力は
、MRL[マツチ認識ラッチ()iatch Reco
gnition Latch ) ]と呼ばれる制御信
号を構成しサービス・プロセッサのブランチPLAに接
続されるととも(、:ORゲート149の入力でもある
。 インバータ162は、MTSRE制御信号に接続された
入力とORゲーt”163の一方の入力に接続された出
力を有する。ORゲート163の他方の入力はサービス
・プロセッサからの制御信号であり、遷移検出ラッチ1
45をニゲ−1−にする。 ORゲート163の出力は、iセ移検出ラッチ145の
クリアまたはリセット入力に接続される。 TDLおよびMRLから以外のORグー1−149に対
する2つの入力は、ポスト・サービス要求ラッチ153
およびリンク・サービス要求ラッチ154の出力である
。これらはいずれもタイマ・チャンネルのハードウェア
内に物理的に位置していないが、より正確にはスケジュ
ーラ内に位置しているものと考えることができる。OR
グー1−149は、第4D図のスケジューラ112内に
位置していると考えてもよいが、その出力は、このチャ
ンネルに対するサービス要求信号である。 第3ANDゲート155は、マツチぼ識ラッチ150の
入力に接続された出力を有する。ANDゲート155の
第1人力は、インバータ156の出力であり、このイン
バータ156の入力は遷移検出ラッチ145の出力に接
続される。ANDゲート155の第2人力は、マツチ認
識イネーブル・ラッチ157の出力であり、このラッチ
はマツチ認識ラッチ150の出力とイベント・レジスタ
書込み制御信号に接続された入力を有する。ER書込み
制御信号は、また転送ゲート135を制御する。AND
ゲート155の第3人力は、比較器133の出力である
。ANDゲート155の第4人力は、NANDゲート1
60の出力である。 NANDゲート160の一方の入力は、マツチ・イネー
ブル・ラッチ161の出力である。マツチ・イネーブル
・ラッチ161は、16個全てのタイマ・チャンネルの
間で共有され、いずれかの1つのチャンネル制御ハード
ウェア内に位置しているものとして考えることは適当で
ない。NANDゲート160の他方の入力は、図示のチ
ャンネルが現在サービス・プロセッサによってサービス
されていることを示す信号である(すなわち、この信号
は第4B図のチャンネル・レジスタの復号化出力から得
られる)。マツチ・イネーブル・ラッチ161は、サー
ビス・プロセッサによるいずれかのチャンネルに対する
サービスの開始時点すなわちタイム・スロット境界での
セット信号によってセットされる。したがって、デフォ
ルト状態とはサービスを受けているチャンネルに対して
マツチが禁止されることである。エントリ・ポイント中
のイネーブル・ビットあるいはマイクロプログラム・カ
ウンタの初期値は、タイム・スロットに対しυj当てら
れるチャンネルのためのサービス・プログラム用である
が、もしそれがセットされているなら、マツチ・イネー
ブル・ラッチ161がクリアされる。マイクロエンジン
がアイドル状態であれば、いつもこのマイクロエンジン
からのマツチ・イネーブル信号がまた存在し、その結果
、サービス・プロセッサがアイドル状態である間に、チ
ャンネルの見出しがたまたまチャンネル・レジスタ87
の内容に対応するチャンネルに一致するために、照合が
偶然に禁止されることはない。 マツチ認識イネーブル・ラッチ157とマツチ・イネー
ブル・ラッチ161の詳細な機能は、本発明と関係する
範囲で以下さらに説明される。しかし、要約すれば、マ
ッチ・レジスタ132がサービス・プロセッサによって
書き込まれるまで、マツチ認識イネーブル・ラッチ15
7は次の照合を無視することによって単のマッチ・レジ
スタ値に対する複数の照合を防ぐ動作を行ない、そして
もしそのような照合が実行中のプリミティブによって特
にイネーブルされないなら、マツチ・イネーブル・ラッ
チ161は現在サービス中のチャンネル上、に照合が発
生するのを無効にするように動作する。 説明の行なわれているチャンネル・ハードウェアの重要
な特徴は、比較器133の性質である。 上述したように、これは同等以上比較器である。 この論理的な機能は、正の整数の組のような一連の無限
数の概念で容易に理解することができるが、しかし有限
の長さのフリーランニング・カウンタを使用することに
よって示されるモジュロ演算との関係ではそれほど明確
ではない。TCRは両方とも独自りOツクであるかのよ
うに、時間をカウントする。これらのクロックの周期は
、それらのクロック入力の周波数によって決まるが、し
かしいずれも好適な実施例では216の異なった状態を
有している。これらの状態は0000(16進法)から
FFFF(16進法)にわたっている。いずれのカウン
タも、FFFF(16進法)のカウントからインクリメ
ントされた場合、ooo。 (16進法)に単純に進む。特定のマッチ・レジスタの
値が現在のTCRの値(クロックの手の前方)を超える
かどうかまたは現在のTCRの値(クロックの手の後方
)未満であるかどうかを判定しようとする場合、概念上
の困難が発生するが、その理由は、いずれの場合でも、
TCRの値(クロックの手)が最終的にマッチ・レジス
タの値に追い付きこれを通過するからである。 比較器133に対して選ばれた同等以上という定義は下
記の通りである。クロックの手が回るに連1′(、てこ
の手の直ぐ前1こあるタロツクの而の半分は、現在の時
間より進んでいると定義され、このクロックの面の他の
半分は、現在の時間よりも遅れていると定義される。ざ
らに正確にいえば、もしマッチ・レジスタの値が選択さ
れたTCRの値に対(〕て8000(16進)以下の負
でない16進数値を加えることによつT得ることができ
ればにの加算は、通常のモジコDFFFFプラス1(1
6進)演算にしたがって行われる)、そのときこの選択
されたTCPの値はマッチ・レジスタの値と同等以上で
はないといわれる。この関係が真である限り、比較器1
33は出力を発生しない。 もしこの関係が真でなければ、この選択され1こTCR
の値はマッチ・レジスタの値1こ対して同等以上である
といわれ、比較器133はその出力をアサ−1−する。 もしマッチ・レジスタの値がマッチ・レジスタ132に
書込まれ、この選択されたTCHの値が既にマッチ・レ
ジスタの値に対1ノで同等以上であれば、比較器133
は直ちにその出力を7サーI・−する。このことは重要
であり、その結甲、ビン140からの出力は照合は能)
によって1゛−リガされるべきであり、サービス・プロ
セッサが比較値マツチ・1ノジスタ132に「非常に遅
くなってから」書込んだために「失われる」が、ビン1
40からの出力は遅れて実行され、完全に失われるわけ
ではない。 従来技術のタイマは、−船釣に同等な比較器を使用し、
その結采、このタイマを使用するために書込まれたソフ
)・・ウェアは照合値を書込む前に、TCR値が大き過
ぎないかを先ずチエツクしなければならない。本発明に
よるタイマ・チャンネルの上述()た揚重性はこの問題
@経用()でいる。 」二連した同等以上の比較機能を8000(16進)J
ス外の値で定義することが可能である。この数字は、8
000(16進)が使用している16ヒツI−カウンタ
のFFFF(16進)の全体の幅の1/2であるために
この好適な実施例で選ばれている。これによって、TC
Rの全範囲の半分に等しいサイズの「窓」が効率的に生
みだされ、照合値が即時の出力を導出しないでTCRへ
古き込まれる所定の用途に対して選択されIこ特定の数
は、使用されているカウンタの全範囲と所望の窓のサイ
ズによって決まる。 (以下余白) 開示の装置番:、よって、完全に直交する16個のタイ
マ・チャンネルが捉供される。8チVンネルは、全ての
供給可能なタイマ機能を実行づ−る能力を有し、いずれ
の機能も供給可能な2つのタイマ基準信号どちらにも対
応可能である。更
許出願と関連する。 米国特許出願用233.786号(モ1−ローラ礼参照
番号S(>00488A)、名称[チャンネル間の通信
機能を口する専用サービス・プロセッサ」;米国特許出
願用234,111号(−El−ローラ社参照番号5C
−00492^)、名称[マツチング認識機能を有する
タイマ・チャンネル]; 米国特許出願用234,103号(モトローラ社参照番
号S C−00495A )、名称「マルチ・タイマ基
準機能を右するタイマ・チャンネル」:および米国特許
出願用234,110号(モトローラ社参照番号5C−
00498A)、名称[マルチ・チャンネル・タイマに
使用するタイマ・チャンネル]。 (産業上の利用分野) 本発明は、一般に、マルチ・チャンネルを有する集積回
路タイマに関する。更に詳しくは、本発明は、マルチ・
タイマ・チャンネルを有し、全てのタイマ・チャンネル
が同等の機能性を有する汎用自律性タイマ・サブシステ
ムに関る。 (従来の技術および発明が解決1)J−つとする課題) マイクロコンピュータに使用するタイマ・ザブシステム
は、集積されたユニットおよび独立−ユ二ッ1へと()
ていずれも技術上周知である。いずれの場合も、従来技
術のタイマ・サブシステムは、集積回路の大きざが増大
することと機能性を可能な最大限持たせることとの二者
択一性を管理しようとする製造業者の試みを反映してい
る。 図示した例は、テキザス州、オースティンの−しトロー
ラ社から販売されているマイクロコンピュータMC68
t−(C11A8である。この精巧な8ビツトのマイク
ロコンビコ−−9は、集積化プログラマブル・タイマ・
ザブシステムを有し、このシステムは、最高3つの独立
した人力機能(捕捉)、および最高5の独立した出力機
能(マツチング)を実行可能で、これらすべては、自由
走行カウンタから発生される1つのタイマ基準信号に対
応している。しかし、もし顧客が4つの捕捉とただ1つ
のマツチングを必要とし、または異なった基準に対応す
るマツチングおよび捕捉を必要とすればこの素子は適当
でない。 別の例は、カルフォルニア州、サンタ・クララ所在のイ
ンテル社かjう販売されている8096マイクロコンピ
ュータである。これは大変精巧なタイマ・サブシステム
を有する16ビツト・マイクロコンピュータである。こ
のタイマは、イベントの対応する2つの独立したタイマ
を有し、これらのカウンタの1つは内部的にクロックさ
れ、また他の1つは外部的にクロックされることが可能
である。4つの入力線が入手可能であり、8つの捕捉機
能を実行するのに使用可能であるが、全ての捕捉機能は
、2つのカウンタの内の第1カウンタに対応しなければ
ならない。同様に、6つの出力線が入手可能であり、各
々は2つのカウンタのいずれかに対応する独立したマツ
チング機能を実行することが可能である。しかし、6つ
の出力ピンのうち2つは入力機能と共有され、これらの
ピンはいずれか1つの機能のみに適用可能であり、両者
に対しては適用できない。 従来技術による集積回路タイマの他の共通する機能は、
初期化、構成、およびタイマに関連する割り込みに対す
る応答に関してホストCPUに依存していることである
。例えば、上述したMC68HC11A8において、マ
イクロコンピュータのCPtJは、専らタイマ・サブシ
ステムのニーズに対するサービスを行っている。例えば
、もし捕捉イベントが発生し、その結果続いて起こるマ
ツチング機能がその基礎とならなければならない場合、
ホストCPLIは捕捉されたタイマの値を読み、必要な
全ての計粋を行い、マツチング・イベントを設定しなけ
ればならない。ある点で、タイマ・サブシステムの要求
がCPUの容量を圧倒し、他の機能全ての実行を不可能
にする。 (課題を解決するための手段) したがって、本発明の目的は、マイクロコンピュータに
使用するより改良したタイマ・サブシステムを提供する
ことである。 本発明のこの目的およびその他の目的および特徴は集積
回路タイマによって提供され、この集積回路タイマは、
少なくとも2つのタイマ基準信号を発生するタイマ基準
信号発生手段および複数のタイマ・チャンネルであって
、各々が同一であり、かつ入力機能を実行し、前記少な
くとも2つのタイマ基準信号のいずれかに応答する入力
手段、および化ツノ機能を実行し、前記少なくとも2つ
のタイマ基準信号のいずれかに応答する出力手段によっ
て構成される前記複数のタイマ・チャンネルによって構
成される。 本発明のこれらおよびその他の目的と特徴は、図面と共
に下記の詳細な説明から明らかとなる。 (以下余白) (実施例) 「アサート(assert)J 「ニゲート(neg
ate) Jという用語およびこれらの用語の種々の文
法的な形態が、「アクティブH」と「アクティブL」と
いう論理信号を混合して取扱う場合の混乱を回避するた
め、ここで使用される。「アサート」は論理信号または
レジスタ・ビットをそのアクチブな状態に、または論理
的に真の状態に置くために使用される。「二ゲート」は
論理信号またはレジスタピットをその非アクチブの状態
即ち論理的に偽の状態に置くために使用される。 第1図は、マイクロコンピュータを示しその一部が本発
明の好適な実施例である。マイクロコンピュータ10は
、単一の集積回路として製作されることを意図し、中央
処理装置(CPLJ)11、内部モジュール・バス(I
MB)12、シリアル・インターフェース13、メモリ
・モジュール14、タイマ15およびシステム・インテ
グレーション・モジュール(SIM>16によって構成
される。CPU11、シリアル・インターフェース13
、メモリ14、タイマ15JノよびSIMlGの各々は
、アドレス、データJ3よび制御情報を交換する目的の
ため、1MB12と双方向に:接続される。さらに、タ
イマ15は■ミュレーシ」ン・バス17によってメモリ
14に双方向に接続されるが、その目的は以下の議論に
よってざらに明確となるであろう。 シリアル・インターフェース13とタイマ15は、各々
マイクロコンピュータ10の外部デバイスと通信を行う
ため多数のビンまたはコネクタに接続される。さらに、
SIM16は、外部バスを構成する多数のビンに接続さ
れる。 タイマ15は、本発明の好適な実施例を構成するが、比
較的自立的なモジュールである。タイマ15の目的は、
できるだけCP(Jllの介在を少なくして、マイクロ
コンピュータ10の要求J゛るタイミング・タスクの全
てを実行1”ることである。 マイクロコンピュータ10によって要求される可能性の
あるタイミング・タスクの例には、自動車エンジンの点
火および燃料噴射タイミング、電子カメラのシャッタの
タイミング等がある。本発明の好適な実施例(J1タイ
マ15をマイクロフンピユータと関連さ1jているが、
説明される原理はスタンド・アローン(5tand−a
to口e)型のタイマ・モジ]、−ルに対する関係を
も含めて、その他の関係tこ対1ノでも容易に適用する
ことが可能である。 タイマ15は、2つのクロック・ソースからのクロック
を基準として使用することができる。両方のりDツク・
ソースは、タイマ・カラン1−・レジスタ#1 (TC
Rl>とタイマ・カウント・1ノジスタ#2 (TCR
2)とそれぞれ呼ぶフリー・ランニング(free−r
unning )カウンタ・レジスタの形態をとる。T
CRlは、マイクロコンピュータ10のシステム・クロ
ックと関連する内部クロック・ソースによってり日ツク
される。TCR2は、ビンからマイクロコンピュータ1
0に供給される外部ソースまたは外部ソース・ビンに現
われる信号によってグーI−される内部ソースのいずれ
かによってクロックされる。 この好適な実施例では、タイマ15は16個のタイマ「
チャンネル」を(jt)、これらの各々はそれ白身のビ
ンを有している。タイマ・イベントの2つの基本的なタ
イプは、好適な実施例のシステムから理解されるように
マツチ・イベントと捕捉イベントである。マツチン・イ
ベントは基本的に出力機能であり、捕捉イベントは基本
的に入力機能である。マツチ・イベントは、2つのタイ
マ・カウ°ント・レジスタの一方のカウント1直が選択
されたタイマ・チャンネルの一方のレジスタに記憶され
ている値と所定の関係を有する場合に発生1゛る。捕捉
イベントは、予め定義された遷移がタイマ・チャンネル
と関連するビンにおいて検出され、タイマ・カウント・
レジスタの1つの瞬時的なカウントの「捕捉」をそのタ
イマ・チャンネルのレジスタにトリガする場合に発生(
′る。種々のタイマ・チャンネルの機能の詳細はさらに
下記で説明する。 CPUIIは、[ホス1へJ CPUと呼ぶ場合がある
。これとの関連でタイマ15は、CPu1lにυ制御さ
れて動作し、このタイマ15の一定のイニシャライゼー
ションおよびその他の機能はCPtJllによって行わ
れる。ボストCPUは、この好適な実施例では、タイマ
15と同様に同じ集積回路上に設けられているが、本発
明の原理を実行するためにこれが要求されている訳では
ない。 タイマ15の一定の機能は、1MB12の信号ど機能の
詳細を参照することによってのみ明確に理解することが
できる。したがって、下記の第1表は1MB12のこれ
らの殿能を要約している。 1MB12は、周知のマイクロプロセッサ、aJこび本
発明の譲受人から入手可能であるマイクロコンピュータ
のバスと多くの点で類似し、これどの関係で最もよく理
解することのできる。表における信号の方向はタイマ1
5内のそれらの機能に関連して定義される。 (以下余白) 第1表 表(続き) 1」1名 アドレス・ バス データ・ バス 機能 コード クロック サイクル・ スタート アドレス・ ストローブ データ・ ストローブ 生り名 毀−一一一一−里 DDRO− DDR23 24ビツト アドレス・バス ATAO− ATAI5 バス・ザイジング付16 ビット・データ・バス CO− C2 CPLI状態とアドレス 空間を識別 レジスタ配置指示 LOCK マスク・システム・ クロック YS IMBサイクルの スタート指示 s 有効なアドレスの 指示 S 書込みサイクル時の 有効なデータの指示 万−血 入力 入出力 入力 入力 入力 入力 入力 匡」1名 転送 サイズ アドレス 確認 データ 転送確認 バス・ エラー 停止 呼」1名 IZO− IZI ACK DTACに ERR ALT 鼠−一一一一一里 指示 転送バイト数 選択スレーブ・モジュ ールによってアサート バス・サイクルを終了 させるスレーブの応答 有効な応答がなければ バス・サイクルを終了 させサイクル再動作 異状状態によるCPU の停止指示 方−血 入力 出力 出力 入力 区」1名 ブレーク ポイント 要求 確認 第 1 表(続き) 1uj 皿−一一一一一一加 KPT 現在のバス・サイクル にブレークポイントの 挿入をCPUに要求 確認 方−血 出力 佐」1名 バス・ ロック 1髪L BLOCに 表(続き) ■−−−−−−羞 属性信号 現在のバス・マスクに バスの保持を認める 方−血 マスク・ リセット リセット 5TR3T 外部制御下での 「ハード」リセット 割込要求 IRQI− レベル IRQ7 CPtJに優先順位 付ぎ割込要求 割込 属性 IARBO−割込属性 IARBI 識別線 入力 入力 入出力 イネーブル イネーブル 機能をトグルする イネーブル 「方向」の囮でアスタリスク(*)を付けたIMBの信
号は、タイマ15によって使用されない。 1ス下で説明するように、タイマ15はIMBに対して
スレーブ・オンリ・インター・フェースを有し、したが
って一定の信号を使用することを要求しない。 マイクロコンピユータ10のその他の一定の機能は、同
時係属中の米国特許出願第115,479号の主題であ
る。そこで特許の請求をしている発明は、好適な実施例
の共通な関係を除いて、本発明とは関係がない。 cpuliから見れば、タイマ15はCPU11のメモ
リマツプ内の多数のロケーションとして存在している。 すなわち、CPUIIは、これらのメモリ・ロケーショ
ンに位置しているタイマ・レジスタに読出し、書込みを
行うことによって、排他的ではないが、主としてタイマ
15と相互作用を行う。第2A図および第2B図は、タ
イマ・レジスタのロケーションと名称を示す。アドレス
は16進の形で示され、ファンクション・コード・ビッ
ト・は2進の形で示されている。これらのレジスタのい
くつかは下記でさらに詳しく説明するが、以下の説明は
その各々の機能を要約している。 なお、下記の菌中な説明は、ホストCPUの立場から見
たものである。タイマ15による種々のタイマ・レジス
タに対するアクセスは、下記の説明に含まれていない1
2本発明に関連のある部分の詳細は後に説明する。 CPtJllのスーパバイザ・アドレス・スペース内に
専ら存在するモジュール・コンフィギュ1ノージョン・
レジスタ(ファンクション・フード・ビット101によ
って示される)は、タイマ15に一定の属性を規定する
6ビツト領域を有している。これらの属性は、割込みア
ービトレイションID、一定の他のレジスタのスーパー
バイザ/ユーザ・アドレス空間ロケーション、停止条件
フラグ、停止制御ビット、TCR2ソース制御ビット、
エミューレーション・モード制御ビット、TCR1プリ
スケーラ(pre−sealer)制御ビット、および
TCR2プリスケーラ制御ビットである。 モジュール・テスト・レジスタは、本発明と関係しない
タイマ15のテスト・モードの局面を制御するビット領
域を有している。 開発支援制御レジスタは、タイマ15とCPU11の開
発支援様能との相互作用を決定する多数のビット領域を
有している。同様に、開発支援ステータス・レジスタは
、これらの開発支援機能に対してタイマ15のステータ
スとのみ関連している。これらの機能は、本発明とは関
係していない。 CPU11の開発支援機能の詳細は、上述の米国特許出
願第115,479号に開示されている。 割込みレジスタは、2つのビット領域を有し、CPtJ
llに対してタイマ15によって発生される2つの刈込
み機能を決める。一方の領域は、タイマ15によって発
生される全ての割込みに対する割込みベクトルの最上位
4ビツトを規定する。 他方のビット領域は、タイマ15によって発生される全
ての割込みに対する優先順位を規定する。 このビット領域をタイマ15からの全ての割込みを不能
にフ゛るようにセットし、タイマ15からの割込みがC
PLIIIに対1ノて最高の優先順位となるようにこの
ピッl−領域をセットし、すなわちノンマスカブル割込
、かつこのビット領域をこれらの両極端の間の種々のレ
ベルに設定することが可能である。周知のように、割込
み優先権は、CPU11によって使用され、他の割込み
ソースに対してタイマ割込みの相対的な優先権を決める
。 位相割込みイネーブル・レジスタは、16個の1ビツト
の領域を有し、1つの領域はタイマ15の16個の「チ
ャンネル」の各々に対応する。各ビット領域は、その状
態にJ:って、このピッ1〜領域と関連するチャンネル
に対するサービスを行いながら、タイマ15のサービス
・プロセッサによる割込みの発生を可能または不能にす
る(以下の第3図の議論を参照のこと)。 4つのチャンネル・プリミティブ選択レジスタは、16
個の4ビツト領域を有1ノ、タイマ15内のサービス・
プロセッサが特定のチャンネルに対してサービスを行っ
ている場合、16個の可能なプリミティブまたはタイマ
・プログラムのいずれがこのサービス・プロセッサによ
って実行されるべきであるかを決定する。16個のビッ
ト領域の各々は、16個のタイマ・チャンネルの1つと
連動する。1つの領域内の4ビツトは、プロセッサがそ
の領域と関連するチャンネルに対してサービスを開始す
る場合、サービス・プロセッサ内の制御用記憶装置に供
給されるアドレスの一部として使用゛される。そのアド
レスに応答して、制御用記憶装置に戻されるデータは、
このチャンネルをサービスしている間に実行されるべき
プリミティブに対するエントリ・ポイントまたは開始ア
ドレスとして使用される。サービス・プロセッサの制御
用記憶装置は、16個のチャンネルの各々に対して最高
16個の異なったプリミティブと最高16個のエントリ
・ポイント(合計256個のエントリ・ポイント)を有
することができる。この制御用記憶装置の全体のサイズ
は固定されているが、プリミティブ・コードとエントリ
・ポイントの間の割当ては変化してもよい。即ち、合計
256個未満のエントリ・ポイントのロケーションを使
用し、より多くのプリミティブ・コードを含むように、
「余分の」記憶能力を使用することが可能である。 2つのホスト・シーケンス・レジスタは、モジュール・
コンフィギユレーション・レジスタのビット領域の1つ
に応じて、CPUIIのスーパーバイザまたは非制限ア
ドレス空間のいずれに存在してもよい。これは、ファン
クション・コード・ビット×01によって示され、ここ
で、Xはモジュール・コンフィギユレーション・レジス
タのSUP■ビットによって決まる。ホスト・シーケン
ス・レジスタは16個の2ビツト領域から構成され、そ
れらの各1個は、16個のタイマ・チャンネルの各々に
対応する。ホスト・シーケンスのビット領域は、ブラン
チ条件としてサービス・プロセッサに対して実行される
プリミティブによって使用されるものであるが、必ずし
もこれによって使用されなくてもよい。すなわち、2つ
のホスト・シーケンス・ビットの状態によって、プリミ
ティブ内の命令の流れを変更することが可能である。 2つのホスト・サービス・リクエスト・レジスタは、1
6個の2ビツト領域から構成され、それらの各1個は、
各タイマ・チャンネルに対応する。 特定のビット領域に書き込みを行うことによって、ホス
トCPUは、タイマ15のサービス・プロセッサによる
サービスを受けるタイマ・チャンネルの全てに対するス
ケジュールを立てることができる。各チャンネルは、ホ
スト・サービス・リクエスト・レジスタの1つに2ビツ
トを有しているので、チャンネル当たり4つの可能な値
が存在する。 各チャンネルに対して要求することのできる3つの異な
ったFタイプ」のサービスがあり、これらは4つの可能
な値のうちの3つに対応する。4番目の値は、ホストの
要求するサービスがスケジュールされないことを示す。 ホストの行うサービスに対す・る要求を示す3つの値は
、上述したプリミティブ選択ビットと同じ形で使用され
る。ポスト・サービス・リクエスト・ビットは、エント
リ・ポイント・アドレスを得るために直接使用されない
が、他のチャンネルの条件ビットと一緒に符号化される
。 2つのチャンネル優先レジスタは、11(7)2ビツト
領域から構成され、各1個は各チャンネルに対応する。 各ビット領域は、その関連するチャンネルに対し4つの
可能な優先順位の1つを特定する。この優先順位は、い
くつかの競合するチャンネルのいずれが最初にサービス
を受けるかを決めるため、タイマ15のサービス・プロ
セッサ内のスケジューラによって使用される。4つの可
能な優先順位には、不能、低位、中位および高位がある
。サービス・スケジューラは、優先順位の低いチャンネ
ルでも一定の時間がたてばサービスを受けられることを
保証するような方法でサービス・プロセッサの資源を割
り当てる。チャンネルの各々は、使用可能な優先順位の
いずれに対しても割当可能であり、16チヤンネルに対
してどのような組み合わせの優先順位を行うことも可能
である。 位相割込み状況レジスタは、16チヤンネルの各々に対
して1ビツトを有し、上で論じた位相割込みイネーブル
・レジスタと関連する。サービス・プロセッサが特定の
チャンネル((サービスを行っている間に、割込みを発
生させるべきであると決定すると、そのチャンネルに対
応する位相割込み状況レジスタのビットは、アサ−1−
・される。もし位相割込みイネーブル・レジスタの対応
するビットがアサートされると、割込みが発生する。も
しそうでなければ、ステータス・ビットはアサートされ
たままであるが、ホストCPtJに対して割込みは発生
しない。 リンク・レジスタは、16個のタイマ・チャンネルの各
々に対して、1ビツト・を右する。各ビットは、特定の
タイプのサービスに対する要求、リンク・サービスに対
する要求が、対応するチャンネルに対1−るサービス要
求を行うため、アサートされていることを示す。 サービス許可ラッチ・レジスタは、16個の1ビツト領
域を有づ゛る。各タイマ・チャンネルは、これらの領域
の1つと関連する。アサートされると、このサービス許
可ラッチ燈レジスタの1つのヒラl−は、関連するチャ
ンネルがサービス・プロセッサによるサーじスを行うた
めに「タイム・スロット」が与えられたことを示す。こ
のレジスタのヒラ1へは、サービス・プロセッサの資源
を割り当てる過程で、サービス・プロセッサ内のスケジ
ューラによって使用される。 復号化チャンネル数1ノジスタは、各タイマ・チャンネ
ルに対して、1ビツト領域を有し、これが7ザートされ
ると、サービス・プロセッサが新しいチャンネルに対し
てサービスを開始した場合、それは喪8チャンネル数1
/ジスタで示されたチャンネルに対するサービスを行っ
たことを示す。このチャンネルに対する見出しは、たと
え実行中のプリミティブがサービス・プロセッサによっ
て実際に制御されているチャンネルの見出しを変更する
「チャンネル変更」機能を実行しても、一定のままであ
る。 ホストCPUから見た場合、タイマ15の残りのメモリ
・マツプは多数のチャンネル・パラメータ・レジスタに
よって構成される。、16個のタイマ・チャンネルの各
々は、これに対して専用化された6個のパラメータ・レ
ジスタを有する。以下で詳細に説明するようにこれらの
パラメータ・レジスタは、これを介してホストCPUと
タイマ15とが相互に情報を提供する共有のワーク ス
ペースとして使用される。 第3図は、マイクロコンピュータ10の残りの部分から
分離された状態のタイマ15を示す。タイマ15の主要
な機能部品は、サービス・プロセッサ20.CHO−C
H15とも名付けられている16個のタイマ・チャンネ
ル21a−21p。 およびバス・インターフェース装@(BIU)22によ
って構成されると考えてもよい。各タイマ・チャンネル
はマイクロコンピュータ10の1つのビンに接続される
。チャンネルOは、ビンTPOに接続され、チャンネル
1はビンTP1に接続される等々である。マイクロコン
ピュータでは一般的であるように、これらのビンの各々
は、タイマ15とマイクロコンピュータ10のその他の
機能との間で「共有される」ことが可能であるが、ここ
で説明する好適な実施例では、そのような構成になって
いない。 サービス・プロセッサ20とチャンネル21a−21D
との間の相互接続は、サービス・バス23、イベント・
レジスタ(ER)バス24タイマ・カウント・レジスタ
#1 (TCRI)バス25、タイマ・カウンタ・レジ
スタ#2 (TCR2)バス268よび多数の種々の制
御および状態線27によって構成される。ザーどス・バ
ス23は、サービス・プロセッサ20のサービスを要求
するためチャンネル21a−21pによって使用される
。 ERババス4は、各チャンネル内のイベント・レジスタ
の内容をサービス・プロセッサ20に供給し、これらの
レジスタをサービス・プロセッサ20からロードするた
めに使用される。2つのTCRバスは、サービス・プロ
セッサ20内に位置している2つのタイマ・カウント・
レジスタの現在の内容をチャンネル21a−21pに伝
達するために使用される。 BIU22は、1MB12とサービス・プロセッサ20
との間のインターフェースとして機能する。このような
バス・インターフェースの詳細は、本発明と関係するも
のではなく、技術上周知のものである。好適な実施例で
は、BIU22は[スレーブ・オンリー]のインターフ
ェースである。 すなわち、タイマ15は1MB12を介して、転送され
る情報を受信してもよいが、1MB12上に転゛送を開
始することはできない。 以下で詳細に説明するように、サービス・プロセッサ2
0は制御用記憶装置を有する。この制御用記憶装置は、
サービス・プロセッサ20によって実行される命令を有
するリード・オンリー・メモリ装置から構成される。好
適な実施例では、これはマスク・プログラマブルROM
として提供される。当業者にとって明らかなように、こ
のような制御用記憶装置は、問題となる制御用記憶装置
に対してプログラムされるべきソフトウェアの開発を行
う。この問題に対処するため、エミュレーション・イン
ターフェース17は、サービス・プロセッサ20をメモ
リ14に結合する。すなわち、サービス・プロセッサ2
0は制御用記憶装置に記憶されている命令の替わりに、
メモリ14に記憶されている命令を実行することができ
る。好適な実施例では、メモリ14はランダム・アクセ
ス・メモリ(RAM)のような書き変え可能なメモリで
ある。エミュレーション・インターフェース17は、ユ
ーザーがサービス・プロセッサ20に対してプリミティ
ブを自込み、実行し、変更することを可能にする目的の
ため機能する。−度完全にデバッグされると、これらの
プリミティブは制御用記憶装置の別のバージョンに組み
込まれることができる。 TCR2でカウントされる基準となる外部タイミング・
ソースは、サービス・プロセッサ20に結合される。上
述したモジュール・コンフィギユレーション・レジスタ
のビットは、TCR2がこの外部タイミング・ソースに
よってクロックされるかまたは内部タイミング基準によ
ってクロックされるかを制御する。 一般的にサービス・プロセッサ20は、主としてERバ
バス4と制御線27を使用して、チャンネル21a−2
ipを形成し、所定のタイミング・タスクを実行する。 チャンネル21a−21pは、命令通りにこれらのタス
クを実行し、時々、サービス・プロセッサ20にサービ
スを要求することによって、イベントなどの発生をサー
ビス・プロセッサ20に知らせる。サービス・プロセッ
サ20は、もしそれが存在すれば、特定のチャンネルか
らのサービス要求に応答して、そのサービスを開始する
ためにどのようなアクションを取るべきかを決定する。 サービス・プロセッサ20は、次に、そのホストCPU
にの場合、CPU11)にしたがって、以下で更に詳
しく説明するように、実行するべきタイミング機能を識
別すると共に一定のその他のサービスを行う。サービス
・プロセッサ2.0は、またホストCPUに対する割込
み要求を独占的に発生する。好適な実施例では、この機
能はサービス・プロセッサ20の制御用記憶装置にある
プログラムによって制御される。 TCRIバスおよびTCR2バスは、16個のチャンネ
ルの各々に対して連続的に使用可能であり、各々のタイ
マ・カウンタ・レジスタの新しい内容と共に所定のスケ
ジュールで更新される。同様に、16個のチャンネルの
各々は、いつでもサービス・バス23を介してサービス
要求をアサートすることができる。しかし、ERババス
4と制御および状態線27に関して、サービス・プロツ
セサ20は、ある1つの時点において16個のチャンネ
ルの1つのみと通信を行う。ERババス4を介して行わ
れるイベント・レジスタの読み出しおよびこれに対する
書き込みと制御および状態線27上の種々の制御および
状態信号はサービス・プロツセサ20によってその時サ
ービスが行われているその1つのチャンネルに対しての
み有効である。必要な範囲に対して、各チャンネルは制
御線27によってこれに与えられた制御情報をラッチし
、サービス・プロセッサが他のチャンネルに対してサー
ビスを行っている間これを保持する。 サービス・バス23を介してチャンネルによって行われ
るサービスに対する要求に加えて、サービス・ブ1」ツ
セザ20は、ボスI= CP tJ によって行われる
サービス要求に対応する。上述(〕たボスト・サービス
要求レジスタに適当な値を司き込むことによって、ホス
トCPLJは全ての特定のチトンネルに対するサービス
のスケジューール化を開始することができる。更に、サ
ービス・プロセッサ20は、それ自身、以下詳細に説明
するリンク・ザーじス要求振欄を介してこのようなスケ
ジューラ化を行なうこともできる。 第4Aないし第4D図は、第4E図に示ずような相互関
係を有するが、タイマ15の詳細な構成を示す。−船釣
に、第4A図はサービス・プロセッサ20 (i3図)
のマイクロエンジンを示lノ、第4B図は、サービス・
ブロツセサ20の実行ユニットを示し、第4C図はタイ
マ・チャンネルのハードウェアと装置の残りの部分に対
する相互接続を示し、第4D図はバス・インターフェー
ス、レジスタ8にびサービスのスケジューラを示′?j
−0先ず第4A図を参照して、マイクロエンジンの主要
な機能蟹素は、優先エンコーダ30、インクリメンタ3
1、リターン・アト1ノス・1ノジスタ32、マルチ1
1クサ33、マルチ11ノクサ・コント・ロール34、
マイクロプログラム・カウンタ35、ROM 制m 記
憶36、? )tt チア +/ ’y ”j−37、
マイクロ命令1ノジスタ38、マイクロ命令デコーダ3
9、マルチプレクサ40、ブランチPLA41および複
数のフラグ・レジスタ42によって構成される。−船釣
に、複数の可能なソースの中からマルチプレクサ33に
よって選択されたマイクロ命令アト1ノスは、マイクロ
プログラム・カウンタ351.1:Iコードされ、次1
...ROM制御g記憶3Gに供給される。このアドレ
スによって選択されたマイクロ命令は、ROM制御記憶
3Gによってマルチプレクサ37を介してマイクロ命令
1ノジスタ3Bに供給される。デコーダ39は、次にマ
イクロ命令レジスタ38の内容を信号し、必要に応じて
サービス・ブロツセザ全体に制御信号を与える。 マイクロ命令デコーダ39は、単一の装置と()て図示
され、これからの制御信号がタイマの残り全体に対して
供給されるが、当業者はこの手順を変更1−ることが有
利でdりるかもしれないことを理解するであろう。マイ
クロ命令レジスタ38から出力されるピッl=数は、デ
コード・ロジック39から出力されるfii制御信号の
数よりも少ないので、マイクロ命令1ノジスタ38から
の出力をタイマ全体に分配づ゛ることが有利であるとと
もに、さまざまな位置に配置された複数のデコーダを設
けることが右利となる。信号のルートを節約することと
デコード論理を復製づ゛ることとの二者択一関係は、少
雑な設計上の決断であり、これはケースバイケースで行
わなければならない。 上で論じムニエミ]、 1ノージヨン・インターフェー
ス(第1図および第3図において参照番号17)はこれ
らの図では、エミュレーション線50、メモリ・サイク
ル・スタート線51、マイクロ命令アドレス線528よ
びマイクロ命令線53によって構成される。エミ〕1.
ノージョン線50の信号の状態ににつて命令され、エミ
ュレーション・モードが動作すると、RAMは線52上
のアドレスに応答して線53上にマイクロ命令を導出す
る。マルチプレクサ37は、これらのマイクロ命令をR
OM制御記憶36によって供給されたマイクロ命令の代
わりに選択して、RAMから導出されたマイクロ命令を
マイクロ命令1ノジスタ38に供給する。エミュレーシ
ョン線50の状態は、モジュール・フンフィギュレーシ
ョン・レジスタ内のエミュレーション・モード制御ビッ
トによって制御され、1ノたがって、ホストCPUの制
御下にある。 メモリ・サイクル・スタート信号は、単にシステム・ク
ロックから導き出されるタイミング信号である。 本発明を実現するのに必要な程度に第4A図に示すマイ
クロエンジンの詳細な特徴と動作を理解できるよう、第
4A図は、以下で更に」−分な説明が行なわれる。 第4B図には、サービス・プロセッサの実行ユニットが
描かれている。この実行ユニツI〜は、2個の16ビツ
ト双方向バス、すなりらAバス60とBパス61を有す
る。イベント・レジスタ転送レジスタ63はAバス60
に対し双方向に接続される。同様に、タイマ・カウント
・レジスタ#164とタイマ・カウンタ・レジスタ#2
65は、Aバス60に対し双方向に接続される。デクリ
メンタ66は、Aバス60に対し双方向に接続される。 更に、デクリメンタ66は、デクリメンタ・コントロー
ラ67から制御入力を受けとり、線68を介して第4A
図のマルチプレクサ・コントローラ34とマイクロプロ
グラム・カウンタ35に出力を供給する。シフト・レジ
スタ69はAパス60に対し双方向に接続され、かつB
バス61に出力を与えるように接続される。シフト・レ
ジスタ69は、シフタ70から入力を受取るように接続
される。シフタ70は、Aバス60に対し双方向に接続
される。 シフタ70は、また演算ユニット(AU>71からの入
力を受取るように接続される。AU71は、2つの入力
ラッチAi n72とB1n73から入力を受取る。ラ
ッチ72と73は、Aバス60と8バス61からそれぞ
れ入力を受取るように接続される。AU71は、ブラン
チPLA41に多数のコンデイション・コード出力を与
える。 汎用アキュムレータ(A>74は、Aバス60に対し双
方向に接続されると共にBバス61に出力を与えるよう
に接続される。パラメータ・プリロード(1)re−1
oad )レジスタ75は、Aバス60に対し双方向に
接続されると共に8バス61に出力を与えるように接続
される。更に、このパラメータ・プリロード・レジスタ
75は、線76によって第4C図のチャネル制御ハード
ウェアに出力を与えるように接続される。レジスタ75
は、またマルチプレクサ77に対し双方向に接続される
。 データ入出力バッフ7 (DIOB)レジスタ78は、
Aバス60に対し双方向に接続されると共にBバス61
に出力を与えるように接続される。 DIOB78は、またマルチプレクサ77に対し双方向
に接続される。更に、DIO878は、マルチプレクサ
79に出力を与えるように接続される。マルチプレクサ
79は、パラメータRAMアドレス・レジスタ80に出
力を与えるように接続される。 マルチプレクサ85は、Aバス60がらの入力と線86
からの入力を受け取るが、この入力は第4D図のサービ
ス・スケジューラに源を発する。 マルチプレクサ85の出力は、チャンネル・レジスタ8
7に入力として与えられる。チャンネル・レジスタ87
は線201によってAバス60に出力を与えると共に線
89によって第4C図のチャネル制御ハードウェアに出
力を与えるように接続される。チャンネル・レジスタ8
7の内容によって、種々の制御信号とERババスサイク
ルが、第4C図に示すチャンネル制御ハードウェアにお
いて、現在サービスを受けている特定のチャンネルの方
向に適切に方向づけられる。図示の装置にはサービスプ
ログラムあるいはプリミティブの実行中にそのチャンネ
ルの見出しを変更する能力があるため、チャンネル・レ
ジスタ87の内容は、第2A図および第2B図と関連し
て上で説明した復号されたチャンネル・ナンバ・レジス
タの内容と必ずしも対応しない。後者のレジスタは現在
実行しているプリミティブが開始されたチャンネルの見
出しを含み、一方チヤンネル・レジスタ87は現在制御
信号が与えられているチャンネルの見出しを含む。この
区別が本発明の理解にとって重要である範囲において、
下記でざらに完全に説明される。 リンク・レジスタ88はAバス60から入力を受け取り
、デコーダ89に出力を与えるように接続される。リン
ク・レジスタ88の4ビツトはデコーダ89によって復
号され、16ビツトを発生するが、これらの各々はタイ
マ・チャンネルの1つと関連している。これらの16ビ
ツトは線90によって第4A図のブランチPLA41と
第4D図のサービス・スケジューラに接続される。リン
ク・レジスタ88は、サービス・プロセッサがリンク・
レジスタ88に所望のチャンネルの見出しを書込むだけ
で、マイクロ命令によって制御されている全てのチャン
ネルに対するサービスのスケジュールを作成することの
できる手段を提供する。 リンク・レジスタ88は、第2A図と第2B図に関して
上述したリンク・レジスタとは別のものである。リンク
・レジスタ88(J、レジスタの見出しを有し、これに
対し、もしあるとすればザー1でス・プロセッサによっ
てリンク・サービス要求がそのとぎ行われる。第2A図
および第2B図に関連して上述したリンク・レジスタは
、リンク・サービス要求が行われたということを示し、
まだこれに対する応答が行われていないことを示1′名
チャンネルに対するフラグ・ビット・を有しでいるにす
ぎない。 本発明を実現するのに必要な程度に第4B図に示ず実行
ユニットの詳細な特徴と動作を理解できるよう、第4B
図は、以下で更に十分な説明が行なわれる。 第4C図は、チャンネル・ハードウェアが示されている
。1つのチャンネルの詳細な構成要素が図示され、第5
図を参照(〕てJス下で説明される。 タイマの残りの部分から見れば、チャンネル・ハードウ
ェアは、ここではERO−ER15の符号が付けられて
いる16mのイベント・レジスタ、16個のデコーダ1
00内の1つおよび制御ロジック101のブロックによ
って構成されているように兄える。TCRバスの各々は
、16個のイベント・レジスタの各々に接続される。E
RTレジスタ63(第4B図)と双方向の通信を行うF
Rババスデコーダ100に接続される。この手段によっ
て、イベント・レジスタのいずれか1つと第4B図に示
す実行ユニットとの間で値を転送することができる。明
らかなように、タイマ・カウント値は、実行ユニツ1へ
からイベント・レジスタに転送されてマツチ・イベン1
へを設定し、捕捉イベント・に応答してイベント・レジ
スタから実行ユニッ1−(転送される。 チャンネル・レジスタ87(第4B図)からの線89は
、ロジック101を制御するために接続され、これに対
して現在サービスを受けているチャンネルを示す。制御
ロジック101は、またマイクロ命令デコーダ39(第
4Δ図)から直接また(、tマルチプレクサ102を介
して複数の入力を受ける。更に、制御ロジック101は
ブランチP[A41(第4A図)に出力を与える。最後
に、サービス・バス105は、制御ロジック101に対
して種々のチャンネルから第4D図のスケジューラにサ
ービス要求を伝達する手段を設ける。再び、チャンネル
・ハードウェアの機能は以下で詳細に説明される。 第4D図は、タイマのホスト・・インターフェース部を
示す。上で示されたように、BIU22はIMBに対し
て必要な従属専用のインターフェースを提供し、ホスト
CPUがタイマのレジスタをアクセスすることを可能に
する。BIU22は、RAMバス110に対し双方向に
接続されパラメータRAMアドレス・バス111に出力
を与えるように接続される。第4D図に示された装置の
残りの部分は、スケジューラ112、システム・レジス
タ113、パラメータRAM114、プリミティブ選択
レジスタ1158よびホス[・・サービス要求レジスタ
116によって構成され、これらは全てRAMバス11
0と双方向に接続される。 スケジューラ112は、16個のタイマ・チャンネルを
サービス・プロセッサの資源に割当てる手段によって構
成される。図示のように、2個のチャンネル優先レジス
タ、リンク・1ノジスタ、復号化チャンネル数レジスタ
およびサービス許可ラッチ・レジスタ(すべて第2A図
と第2B図を参照して上述された)は、スケジューラ1
12内に存在すると考えてよく、全てRAMバス110
と双方向に接続される。 スケジューラ112は、マイクロ命令デコーダ39から
1ビツトの入力を受取り、これは特定のチャンネルに対
するサービスが終了したことを示す。これはスケジュー
ラ112が保留中のいずれのサービス要求を次に実行す
るかを決定するプロセスが起動される。スケジューラ1
12は、またマイクロ命令デコーダ39に1ビツトの出
力を与え、いずれのチャンネルに対しても現在サービス
のスケジュールが立てられていないことを示し、これは
また「アイドル」状態と呼ばれる。 スケジューラ112は、48ビツトによって構成される
サーどス・バス120から入力を受けとるが、これは線
105からの16ビツト、線90を経由するデコーダ8
9からの16ビツトおよびホスト・サービス要求レジス
タ116からの16ビツトを結合することによって形成
される。これらの48ビツトは、チャンネル・ハードウ
ェア自身が現在サービスを要求しているチャンネル、リ
ンク・レジスタ88によって現在サービスが要求されて
いるチャンネルおよびホストサービス要求レジスタ11
6によってサービスが要求されているチャンネルをそれ
ぞれ示す。スケジューラ112はこれらの入力を受入れ
、チャンネル優先レジスタの値によって示されるように
、サービスが要求されているチャンネルの相対的優先順
位を検討し、いずれのチャンネルが次にサービスされる
べきかを決める。選択されたチャンネルの4ビツトの指
定信号が、線86を介してマルチプレクサ85、プリミ
ティブ選択レジスタ115、およびホスト・サービス要
求レジスタ116に出力される。 上述したように、各チャンネルは、優先レジスタ内で対
応するビットによって割当てられた4つの優先順位の1
つを有している。サービスに対する要求が保留になって
いるチャンネルにスケジュールをたてるスケジューラ1
12の計画は、低い優先順位のチャンネルでも最終的に
はサービスが受けられることを保証している。この特徴
は、他の機能をサービスするために必要とされる時間に
対して、いかなるタイミング機能も全く失われないこと
を保証するために重要である。同じ優先順位のチャンネ
ルの間では、スケジューラ112はサービスを順繰りに
割当てる。 スケジューラ112がサービスを行う新しいチャンネル
を選択する各状況(すなわち少なくとも1つのサービス
要求が保留中であって現在いずれのチャンネルもサービ
スされていない)はタイム・スロット境界と呼ばれる。 スケジューラ112によって使用される別画は、各7つ
の使用可能なタイム・スロットの内4つを高位の優先順
位に設定されたチャンネルに割当てられ、7つの内2つ
が中位の優先順位に設定されたチャンネルに割当てられ
、7つの内1つが低位の優先順位のチャンネルに割当て
られる。使用されている特定のシーケンスは、高位、中
位、高位、低位、高位、中位、高位である。もしタイム
・スロット境界において該当する優先順位のチャンネル
に保留中のサービス要求がなければ、スケジューラ11
2は下記の計画に従って次の優先順位に進む。高位−中
位−低位、中位−高位−低位および低位−高位−中位。 スケジューラ112中には、−8チャンネルに対するサ
ービス要求ラッチがあり、これはいずれのタイプのサー
ビス要求がそのチャンネルに対して保菌された場合でも
必らずセットされる。このラッチは、タイム・スロット
がそのチャンネルに対し割当てられた場合、スケジュー
ラ112によってクリアされ、サービスが終了するまで
再びアサートされることはない。これは、スロット間に
アイドル状態が無く他のチャンネルがベンディングのサ
ービス要求を有しているならば、いずれのチャンネルも
2つの連続°したタイム・スロットに割当てられないこ
とを意味する。 同じ優先順位のチャンネルの場合、いずれかのチャンネ
ルが2度サービスを受ける前に、スケジューラ112は
、サービスを要求する全てのチャンネルにサービスが受
けられることを保証する。 同じ優先順位のチャンネルのグループでは、番号の一番
低いチャンネルが最初にサービスを受ける。 勿論、限定された処理資源へのアクセスの要求が競合す
る場合の優先権の割当て計画は、周知のものでありこれ
は幅広く変化する。多くの他のこのような計画が今ここ
で述べた計画に代替することが可能である。ここで開示
した計画は、タイマ・システムにとっては有利なもので
あると信じられるが、その理由は、こらが優先順位の最
も低い要求に対してさえサービスを保証するからである
。 パラメータRAM114は、16個のタイマ・チャンネ
ルの各々に対して各16ビツト幅の6個のパラメータ・
レジスタによって構成され、合計192バイトのRA
Mを有する。パラメータRAM114は、ホストCPU
とサービス・プロセッサの両方がその中で読出しおよび
書込みを行うことができるという意味で「デュアル・ア
クセス」でおるが、これらの内の1つしか一時にアクセ
スすることができない。アドレス・マルチプレクサ12
2とデータ・マルチプレクサ123は、サービス・プロ
セッサとホスt−CPtJのいずれがアクセスを行うか
を選択する。ここで図示していない属性[〕シシラが実
際にはいずれのバス・マスクがアクセス可能かを決定す
る。アドレス・マルチプレクサ122は、アドレス・レ
ジスタ80からおよびパラメータRAMアドレス・バス
111を介してBIU22からアドレスを受取るために
接続される。データ・マルチプレクサ123は、RAM
バス110とマルチプレクサ77に対し双方向に接続さ
れる。パラメータRAM114にアクセスするために、
サービス・プロセッサがアドレスを発生ずる方法は、以
下で本発明に関係する程度に詳しく説明する。しかし、
アドレスはチャンネル・レジスタ87(第4B図参照)
の現在の内容を直接基礎としであるいはオフセット値を
加えることによって変更された内容にもとずいて発生で
きることに留意づ−る必要がある。これらのアドレシン
グ・モードは、ぞの中でバラメークRΔMのアドレスが
現在のチャンネルに関連して特定されるが、サービス・
プロセッサによる実行を意図するプリミティブを作成す
る際に極めて大きなフレキシビリイテイを提供する。 パラメータRAM114の設計に際して他の重要な面と
して、干渉性の問題がある。も(ノホストCPUが、例
えば、チャンネルOによって使用づ−るためパラメータ
RAM114に幾つかのパラメータを書込んでいるプロ
セスにあれば、全てではないが若干のパラメータが書き
込まれた後、サービス・プロセッサによって実行された
サービス・ルーチンはこれらのパラメータを使用できな
いことということが大切である。マルチ・パイ1〜では
、逆の方向、づ−なわち、サービス・プロセッサーから
ボスl−CP tJに転送されているパラメータに同様
の問題が存在する。干渉性の問題を処理する方法には、
技術上周知の多くの異なった方法がある。 完全を則するため、好適な実施例で使用される干渉性に
対応する別画を以下で要約して説明する。 パラメータRΔM114を偶成する]6ビツト・ワード
の1つ、この場合、チャンネル0のパラメータ・レジス
タ5と指定されたワード(第2B図参照)は、干渉デー
タ制御レジスタ(CDC:coherent data
control )として使用されるように指定され
る。このレジスタのビット15はセマフォ・ピッI−(
semaphore bit)として使用される。 サービス・プロセッサまたはホストCPUのいずれかが
パラメータRAM114にアクセスすることを希望する
場合、このセマフォ・ビットが先ずヂエックされ、もし
これがセットされているならば、セマフ4・ヒツトがク
リアされるまで、干渉データ(cohefent da
ta)の転送に使用されるこれらのロケーションに対す
るアクセスは保留される。 可能なバス・マスクの1つが干渉転送(coheren
ttransl’ef)を行うことを希望ずれば、これ
は先ずセマフォ・ビットをセラ]・シ、次にこの転送を
実行し、次にこのセマフォ・ビットをクリア1′る。 この11画が実行されることを知るため、ホス1−CP
Uとサービス・プロセッサとの両方ににつて実行される
プログラムを古くことはプログラマに委ねられている。 (でット14は、3つまたは4つのパラメータ(各16
どツト)が干渉的に転送されるべきであることを指示す
るモード・ピッl〜である。もし3つのパラメータが転
送されるべきであれば、チャンネル1のパラメータ・レ
ジスタ0−2として指定されたワードが保護されたロケ
ーションとして使用される。も1ノ4つのパラメータが
転送されるぺぎてあれば、チャンネル1のパラメータ・
レジスタ3がまた使用される。 好適な実施例で使用される干渉性に対1゛る別画のこれ
以上の詳細はここでは重要でないが、その理由は、その
問題とその可能な解決法の多くが、当業者にとって周知
のもであるからである。 プリミティブ選択レジスタ115は、上述した4個のチ
ャンネル・プリミティブ選択レジスタによって椙成され
る。これらのレジスタは、RA Mバス110に対し双
方向に接続され、また線86からサービスを受けている
チャンネ・ルを示す入力を受ける。チャンネル・プリミ
ティブ選択レジスタの出力は、マイクロエンジンのプリ
ミティブ選択・ロジックに与えられる。 ホスト・サービス要求レジスタ116は、上述した2つ
のホスト・サービス要求レジスタによって構成される。 ホスト・サービス要求レジスタ116は、RAMバス1
10と双方向に接続され、サービス・バス120に16
ビツトの出力を与える。上述したように、ホスト・サー
ビス要求レジスタ116は、現在サービスを受けている
チャンネルを指示するスケジューラ112から入力を受
け取る。更に、ホスト・サービス要求レジスタ116は
、ブランチPLA41から入力を受取り、これに出力に
導出す。 第4D図のどこにも示されていない残りのレジスタは、
単にシステム・レジスタとして特徴づけられ、ブロック
113で示される。このグループに含まれるものには、
ブランチPLA41に入力を与えるホスト・シーケンス
・レジスタがある。 モジュール・コンフィギユレーション・レジスタ、モジ
ュール・テスト・レジスタおよび位相割込みイネーブル
・レジスタのような他のレジスタは、割込み発生ロジッ
クのようなここに図示されていないタイマ・ロジックの
部分に出力を与える。 本発明を実現するために必要な範囲で第4D図に示すホ
スト・インターフェースとスケジューラ部分の詳細な特
徴と動作が以下で更に十分に説明されるであろう。 明らかなように、第4A図−第4D図に示す装置は、開
示しているシステムと同程度に複雑なシステムの可能な
各論理回路構造を必ずしも含めることができない。しか
し、開示したタイマの全体の構造と機能は、説明した装
置から当業者にとって明らかである。 第5図は、単一のタイマ・チャンネルの制御ハードウェ
アを示す。好適な実施例では、16個のタイマ・チャン
ネルの各々は、1つおきにあらゆる点で絶対的に同一の
ものである。[チャンネル直交性J (channel
0rthOCIQnalit111)と呼ぶこのシス
テムの特徴の1つの重要な面であるこの特徴は、1つの
チャンネルによって実行される全てのは能が、他のいず
れのチャンネルによっても実行することができることを
意味する。したがって、第5図に示すハードウェアは、
以下で特に述べる項目を除いて、好適な実施例の16個
のチャンネルの各々に対して同一のものである。 各タイマ・チャンネルのイベント・レジスタ130は、
捕捉レジスタ131、マッチ・レジスタ132および同
等以上比較器133によって実際に構成される。捕捉レ
ジスタ131は、転送ゲート134を介してERババス
接続され、捕捉レジスタ131の内容がERババス上ロ
ードされるのを可能にする。マッチ・レジスタ132は
、転送ゲート135を介してERババス対し双方向に接
続される。捕捉レジスタ131は、転送ゲート136に
よってTCRIバスまたはTCR2バスのいずれかから
ロードされる。同じ転送ゲート137は比較器133へ
の一方の入力がTCR1バスであるかTCP2バスであ
るかを制御する。 比較器133に対する他方の入力は、常にマッチ・レジ
スタ132である。 第5図に示す装置の他端において、このタイマ・チャン
ネルに関連するピン140は、ピン制御ロジック141
のブロックに接続される。ビン制御ロジック141は、
ピン140が入力タイマ用のピンとして構成されるかま
たは出力タイマ用のピンとして構成されるかを決定する
。ピン140が入力用のタイマのピンとして構成される
場合、ピン制御ロジック141は捕捉イベントをトリガ
する目的のために、正方向に向から遷移、負方向に向か
ら遷移またはいずれかの遷移を認識できるように構成す
る。出力用に構成された場合、ピン制御ロジック141
は、マツチ・イベントの発生によって、論理高レベルま
たは論理低レベルを発生し、またはレベルの変化即ちト
グルするようにプログラムすることができる。更に、マ
ツチ・イベントの発生に関係なく、上述した3つの可能
性のいずれかを強制的に発生させることが可能である。 サービス・プロセッサは、状態制御(それによってピン
の状態が「強制コされる)、動作制御(それによって検
出されるべき遷移または光年すべぎレベルが選択される
)および方向制till (それによつでビンが「入力
」または「出力」として構成される)入力を介してビン
制御ロジック141に対する制御を行い、その状態を状
態出力によって監視することができる。 遷移検出ラッチ145は、ビン制御ロジック141から
の入力を受取るために接続される。ビン140における
特定の遷移がロジック1411こよって検出された場合
、およびもしビンが入力用に構成されている場合、ラッ
チ145がセラ]・される。ラッチ145は、マイクロ
コードの制御下でサービス・プロセッサによってクリア
または二ゲートされる。以下で更に説明する一定の状況
下では、遷移検出ラッチ145は連続的にニゲートされ
る。 マツチ認識ラッチ150は、ビン制御ロジック141に
入力を与えるために接続される。もし、マッチ・レジス
タ132の内容がTCRバスの選択された1つの状態と
「マツヂコし、かつその他の論理的条件が満?されれば
マツチ認識ラッチ150はセラ1−される。このことが
発生し、かつもしビン140が出力用に@成されていれ
ば、選択された遷移がビン制御ロジック141によって
ビン140に発生(−る。マツチ認識ラッチ150は、
マイクロコードの制御下でサービス・プロセッサによっ
てニゲートされる。 遷移検出ラッチ145の出)〕は、第10Rゲー1−1
46と第1ANDゲート]47の入力に接続される。O
Rゲート・の他方の入力は、マツチ認識ラッチ150の
出力である。ORゲート146の出力は、捕捉イベント
・ロジック14Bに接続される。捕捉イベン1−・ロジ
ック148は、また2つのカウンタの−・方(タイム・
ベース制御井2)を示す制御13号を受取る。捕捉イベ
ント・ロジック148の出力は、転送ゲート136に接
続される。ORグー1−146の出力がアクティブにな
ると、捕捉イベント・ロジック14Bは、タイム・ベー
ス制御#2にしたがって、TCR1バスまたはTCR2
バスの現在の値を捕捉レジスタ131にロードさせる。 明らかなように、捕捉イベントは、遷移の検出またはマ
ツチ・イベントのいずれかににつてトリガされる。 ANDゲート147の他方の入力は、サービス・プロセ
ッサの制御下にある制御信号MTSRE[マツチ/遷移
サービス要求イネーブル(Hatch/丁ransit
ion 5ervice Request En
able)]である。ANDゲート147の出力は、T
DL[遷移検出ラッチ(Transition Det
ect Latch ) ]と呼ばれる制御信号であり
、サービス・プロセッサのブランチPLAに接続される
と共に第2ORゲート149の1つの入力を構成する。 ORゲート149の出力は、図示のチャンネルに対する
サービス要求信号であると考えてもよい。 第2ANDゲート151は、マツチ認識ラッチ150の
出力に接@された第1人力とMTSRE制御信号に接続
された第2人力を有する。ANDゲート151の出力は
、MRL[マツチ認識ラッチ()iatch Reco
gnition Latch ) ]と呼ばれる制御信
号を構成しサービス・プロセッサのブランチPLAに接
続されるととも(、:ORゲート149の入力でもある
。 インバータ162は、MTSRE制御信号に接続された
入力とORゲーt”163の一方の入力に接続された出
力を有する。ORゲート163の他方の入力はサービス
・プロセッサからの制御信号であり、遷移検出ラッチ1
45をニゲ−1−にする。 ORゲート163の出力は、iセ移検出ラッチ145の
クリアまたはリセット入力に接続される。 TDLおよびMRLから以外のORグー1−149に対
する2つの入力は、ポスト・サービス要求ラッチ153
およびリンク・サービス要求ラッチ154の出力である
。これらはいずれもタイマ・チャンネルのハードウェア
内に物理的に位置していないが、より正確にはスケジュ
ーラ内に位置しているものと考えることができる。OR
グー1−149は、第4D図のスケジューラ112内に
位置していると考えてもよいが、その出力は、このチャ
ンネルに対するサービス要求信号である。 第3ANDゲート155は、マツチぼ識ラッチ150の
入力に接続された出力を有する。ANDゲート155の
第1人力は、インバータ156の出力であり、このイン
バータ156の入力は遷移検出ラッチ145の出力に接
続される。ANDゲート155の第2人力は、マツチ認
識イネーブル・ラッチ157の出力であり、このラッチ
はマツチ認識ラッチ150の出力とイベント・レジスタ
書込み制御信号に接続された入力を有する。ER書込み
制御信号は、また転送ゲート135を制御する。AND
ゲート155の第3人力は、比較器133の出力である
。ANDゲート155の第4人力は、NANDゲート1
60の出力である。 NANDゲート160の一方の入力は、マツチ・イネー
ブル・ラッチ161の出力である。マツチ・イネーブル
・ラッチ161は、16個全てのタイマ・チャンネルの
間で共有され、いずれかの1つのチャンネル制御ハード
ウェア内に位置しているものとして考えることは適当で
ない。NANDゲート160の他方の入力は、図示のチ
ャンネルが現在サービス・プロセッサによってサービス
されていることを示す信号である(すなわち、この信号
は第4B図のチャンネル・レジスタの復号化出力から得
られる)。マツチ・イネーブル・ラッチ161は、サー
ビス・プロセッサによるいずれかのチャンネルに対する
サービスの開始時点すなわちタイム・スロット境界での
セット信号によってセットされる。したがって、デフォ
ルト状態とはサービスを受けているチャンネルに対して
マツチが禁止されることである。エントリ・ポイント中
のイネーブル・ビットあるいはマイクロプログラム・カ
ウンタの初期値は、タイム・スロットに対しυj当てら
れるチャンネルのためのサービス・プログラム用である
が、もしそれがセットされているなら、マツチ・イネー
ブル・ラッチ161がクリアされる。マイクロエンジン
がアイドル状態であれば、いつもこのマイクロエンジン
からのマツチ・イネーブル信号がまた存在し、その結果
、サービス・プロセッサがアイドル状態である間に、チ
ャンネルの見出しがたまたまチャンネル・レジスタ87
の内容に対応するチャンネルに一致するために、照合が
偶然に禁止されることはない。 マツチ認識イネーブル・ラッチ157とマツチ・イネー
ブル・ラッチ161の詳細な機能は、本発明と関係する
範囲で以下さらに説明される。しかし、要約すれば、マ
ッチ・レジスタ132がサービス・プロセッサによって
書き込まれるまで、マツチ認識イネーブル・ラッチ15
7は次の照合を無視することによって単のマッチ・レジ
スタ値に対する複数の照合を防ぐ動作を行ない、そして
もしそのような照合が実行中のプリミティブによって特
にイネーブルされないなら、マツチ・イネーブル・ラッ
チ161は現在サービス中のチャンネル上、に照合が発
生するのを無効にするように動作する。 説明の行なわれているチャンネル・ハードウェアの重要
な特徴は、比較器133の性質である。 上述したように、これは同等以上比較器である。 この論理的な機能は、正の整数の組のような一連の無限
数の概念で容易に理解することができるが、しかし有限
の長さのフリーランニング・カウンタを使用することに
よって示されるモジュロ演算との関係ではそれほど明確
ではない。TCRは両方とも独自りOツクであるかのよ
うに、時間をカウントする。これらのクロックの周期は
、それらのクロック入力の周波数によって決まるが、し
かしいずれも好適な実施例では216の異なった状態を
有している。これらの状態は0000(16進法)から
FFFF(16進法)にわたっている。いずれのカウン
タも、FFFF(16進法)のカウントからインクリメ
ントされた場合、ooo。 (16進法)に単純に進む。特定のマッチ・レジスタの
値が現在のTCRの値(クロックの手の前方)を超える
かどうかまたは現在のTCRの値(クロックの手の後方
)未満であるかどうかを判定しようとする場合、概念上
の困難が発生するが、その理由は、いずれの場合でも、
TCRの値(クロックの手)が最終的にマッチ・レジス
タの値に追い付きこれを通過するからである。 比較器133に対して選ばれた同等以上という定義は下
記の通りである。クロックの手が回るに連1′(、てこ
の手の直ぐ前1こあるタロツクの而の半分は、現在の時
間より進んでいると定義され、このクロックの面の他の
半分は、現在の時間よりも遅れていると定義される。ざ
らに正確にいえば、もしマッチ・レジスタの値が選択さ
れたTCRの値に対(〕て8000(16進)以下の負
でない16進数値を加えることによつT得ることができ
ればにの加算は、通常のモジコDFFFFプラス1(1
6進)演算にしたがって行われる)、そのときこの選択
されたTCPの値はマッチ・レジスタの値と同等以上で
はないといわれる。この関係が真である限り、比較器1
33は出力を発生しない。 もしこの関係が真でなければ、この選択され1こTCR
の値はマッチ・レジスタの値1こ対して同等以上である
といわれ、比較器133はその出力をアサ−1−する。 もしマッチ・レジスタの値がマッチ・レジスタ132に
書込まれ、この選択されたTCHの値が既にマッチ・レ
ジスタの値に対1ノで同等以上であれば、比較器133
は直ちにその出力を7サーI・−する。このことは重要
であり、その結甲、ビン140からの出力は照合は能)
によって1゛−リガされるべきであり、サービス・プロ
セッサが比較値マツチ・1ノジスタ132に「非常に遅
くなってから」書込んだために「失われる」が、ビン1
40からの出力は遅れて実行され、完全に失われるわけ
ではない。 従来技術のタイマは、−船釣に同等な比較器を使用し、
その結采、このタイマを使用するために書込まれたソフ
)・・ウェアは照合値を書込む前に、TCR値が大き過
ぎないかを先ずチエツクしなければならない。本発明に
よるタイマ・チャンネルの上述()た揚重性はこの問題
@経用()でいる。 」二連した同等以上の比較機能を8000(16進)J
ス外の値で定義することが可能である。この数字は、8
000(16進)が使用している16ヒツI−カウンタ
のFFFF(16進)の全体の幅の1/2であるために
この好適な実施例で選ばれている。これによって、TC
Rの全範囲の半分に等しいサイズの「窓」が効率的に生
みだされ、照合値が即時の出力を導出しないでTCRへ
古き込まれる所定の用途に対して選択されIこ特定の数
は、使用されているカウンタの全範囲と所望の窓のサイ
ズによって決まる。 (以下余白) 開示の装置番:、よって、完全に直交する16個のタイ
マ・チャンネルが捉供される。8チVンネルは、全ての
供給可能なタイマ機能を実行づ−る能力を有し、いずれ
の機能も供給可能な2つのタイマ基準信号どちらにも対
応可能である。更
【こ、サービス・スケジューラは、全
てのチャンネルを供給された優先レベルのいずれに対し
ても割り当てる能力を有り−る。これらの機能は、しか
し、サービス・プロセッサのチャンネル間通信機能によ
って非常に強化される。サービス・プロセッサのこれら
の貫献がなければ、装置かなお直交していても、サービ
ス・プロセッサによって実行されるプリミティブ(pr
imitives)の展開は非常に柔軟性のないものに
なるだろう。 チャンネル間通信機能の原理は、第4図、特に第4b図
を参照することによって最も良く理解することができ、
この第4b図は、実行ユニツ1へと呼75−リ−−ビス
・プロセッサの部分を示す。これらの機能に最も密接に
関連する好適な実施例のサービス・プロセッサのこれら
の能力は、マイクロ・コードの実行くチャンネル変更機
能)を妨げることなく、現在サービスを受けているチャ
ンネルを変更する能力、伯のチャンネルに対するサービ
スのスケジュールを立てることに対する特別のタイプの
サービス要求を発生させる能力(チャンネル接続機能)
、およびこれらおよび他の機能を対応しているチャンネ
ルが絶対チャンネル番号によるのではなく、現在のチャ
ンネルに対して特定される「相対モード」で実行する能
力(チャンネル関連モード)である。 動作上正常なモードと考えられるものにおいて1、サー
ビス・プロセッサは、スケジューラ112によって決定
された順序で、同時に16チヤンネルに対してサービス
を行う。サービス・プロセッサが現行チャンネルに関連
するマイクロコード・プログラムの実行を完了した場合
、マイクロ命令デコード・ロジック39の出力は、この
完了したという事実をスケジューラ112に指示する。 スケジユーラ112は、サービスを受ける次のチャンネ
ルを特定する4ビツトの値を線86に載置するごとによ
って応答する。この値は、マルチプレクサ85を介して
チャンネル・レジスタ87に記憶される。同時に、サー
ビス・プロセッサは、新しいチャンネルにサービスを行
うために実行されるべきプリミティブの第1マイクロ命
令の位置決めを行うためにいずれの入力点、または開始
アドレスを使用するかを決定する。−度この入力点が決
定されると、サービス・プロセッサは所望のプリミティ
ブの実行を開始する。 いずれのチャンネルが現在サービスを受けているかを決
定するのは、チャンネル・レジスタ87の内容である。 チャンネル・レジスタ87の内容は、線89を介してチ
ャンネル制御ハードウェアの制御ロジック101へ供給
される。この値は、復号され、サービス・プロセッサか
ら受け取った制御信号によって、16チヤンネルのいず
れを作用させるべきかを決定するために使用される。チ
ャンネル・レジスタ87の内容は、線87を介してマル
チプレクサ79にも供給され、パラメータRAM114
用のアドレスの一部を形成する。この部分によって、パ
ラメータRAM114の内容をまた16の部分に論理的
分割する機構が設けられ、各々の部分は16個ののタイ
マ・チャンネルの1つに関連する。パラメータRAM1
14は、第2B図を参照して上述したチャンネル・パラ
メータ・レジスタに対応する。 上述のチャンネル変更機能およびチャンネル接続機能は
、ある種のタイミングの問題を解決するためには協同方
式で2チャンネル以上の資源を利用することが必要でお
るとの認識から生じる。例えば、1つのチャンネルにお
いて捕捉イベントが発生することに対応して、その他の
幾つかのチャンネルでてマツチング・イベントを設定す
ることが望ましい。したがって、捕捉を発生したチャン
ネル用のサービス・プログラムは、直接的にまたは間接
的にこれらの他ののチャンネルに対する効果を有するこ
とができなければならない。 チャンネル変更機能によって、サービス・プロセッサに
よって実行中のサービス・プログラムが、プログラムの
実行にいかなる割り込みを加えることなく、サービスさ
れているチャンネルの番号を直接変更することができる
機構が提供される。ここに含まれる機構には、マルチプ
レクサ85およびそのAバス60への接続がある。マル
チプレクサ85は、マイクロ命令復号ロジック39の出
力によって制御され、Aバス60の16ビツトの内4つ
から得られた値をチャンネルレジスタ87に加えること
ができる。この値のソースは、データをAバス60に載
置できるソースであればいずれのソースであってもよい
。したがって、新しい値をチャンネル・レジスタ87に
加えることによって、サービス中のチャンネルの見出し
を直接変更する命令をマイクロプログラムに含めること
が可能である。マイクロ命令のシーケンス中の割り込み
は必要でない。チャンネルの変更を実行するマイクロ命
令に続いて、全ての制御信号は、古いチャンネルではな
くて新しいチャンネルに向けられ、パラメータRAM1
14に対するアクセスは新しいチャンネルに関連するロ
ケーションををアクセスする。 チャンネル接続機11Lは、1つのチャンネルからのサ
ービス要求に応答して実行中のマイクロプログラムに現
在のヂ1−・ンネルを含む16ヂ17ンネル全てに対し
てサービス要求を発生させるOL力を与えるにれの機能
の実行には、リンク・レジスタ88およびこれのAバス
60J5よびスケジューラ112への接続が含まれる。 上述のチャンネル変更機能の場合と同様に、サービス・
プロt?ツリーによって実行可能な1つ以上のマイクロ
命令は、リンク・レジスタ88にがAバス60から得た
値を加える効果を有する。チャンネルに対する接続サー
ビス要求をスケジューラするために、マイクロプログラ
ムは単にこれら命令の1つを実行するが、勿論これはA
バス60の適当なl【ツト・に所望の値を載置()た後
である。この値は、リンク・レジスタ8Bから1(号器
89に供給され、これによって線90を介してスケジュ
ーラ112へ供給され、他の全てのサービス要求と同様
にスケジューラ112によって取り扱われる。指摘した
ように、リンク・レジスタ8Bは、またマイクロエンジ
ンに接続されている。チャンネルか、接続ザーげス要求
の結果としてのり一−ビス(J対してスケジューラされ
ている事実は、入力点選択処理の一部として使用される
チャンネル状態の1つであり、またブランチPIA41
へ適用可能なブランチの状態でもある。上述のチャンネ
ル変更機能の場合と同様(:、、リンク・レジスタ8B
加えられている値のソースは、そこからデータをAバス
60に載置できるものであればいずれのソースであって
もよい。 チャンネル接続機能の特定の用途によって、マイクロ命
令の特に長いシーケンスを幾つかのより短いシーケンス
【こ分解することができる。このシーケンスは、現在勤
作中でその後終了される同じチャンネルに対して接続サ
ービス要求を行うことができる。チャンネルが再びり一
−ビスのためにスケジコールされた場合、マイクロプロ
グラムは継続1″ることができる。この機構によって、
マイクロ1目グラムの長いシーケンスを全部−度に実行
した場合にスケジュールされるよりも早くサービスを必
要とする他のチャンネルをスケジコールすることができ
る。 チャンネル関連モード機能には2つの面があり、その内
の第1は、関連モードでチャンネル変更および接続機能
の両りを行う能力である。換言覆−れば、Aバス60か
らチャンネル・レジスタ87またはリンク・レジスタ8
8のいずれかに加えられた値は、チャンネル・1ノジス
タ87の現在の値にオフセラ1−値を加えることにより
引き出すことが可能である。サービス・プロセッサによ
って実行可能な少なくと()1つのマイクロ命令は、チ
ャンネル・レジスタ87の内容が線201を介してAバ
ス60に載置されることを命令するコードを含んでいる
。この値が一度Aバス60に載置されると、これはAU
71によって処理されることができる。代表的な例では
、即114ビット領域(即ら、マイク目命令自身の部分
)の内容がチャンネル・レジスタ87から冑られた値に
加えられ、結果はAバス60へ戻される。この処理され
た値は、」−連のチ’<r−7ネル・レジスタ87また
はリンク・レジスタ8Bいずれにに戻して加えることも
できる。 明らかに分かるように、このことは、チャンネル変更ま
たはチャンネル接続機能のいずれかを、絶対的ではなく
、現在のチャンネル1.T対して特定された「行先」チ
ャンネルで実行する効果を有する1゜この関連モードで
、チャンネル状態またはチャンネル接続機能を実行する
能力は、サービス・プロセッサで実行されるために古か
れたマイクロプログラムの柔軟性を非常に増大させる。 マイクロプログラムは、いずれの特定のチャンネルまた
はチャンネルのグループからも独立して占くことができ
る。例えば、連続づ−64つのグループか、チ〜・ンネ
ル変更またはそれらの間の接続のいずれかによってエン
ジン制御器のスパーク・タイミングとして使用されるべ
きであると、マイクロコードはいずれのチャンネルのグ
ループが使用されたかに拘らず書き込まれることができ
る。 なお、チャンネル接続機能は、関連するモードで使用さ
れる場合、長いマイクロ命令のシーケンスを非常に使用
()易く分割する機)黄と()て上述した自己接続機能
を利用するが、その理由は、マイクロコードはリンクを
作っている絶対チャンネル番号を「知る」必要がないか
らである。 関連モードの第2の面は、関連する形、すなわち、チャ
ンネル・レジスタ87の現在の内容に基づいて、パラメ
ータRAM114にアドレスを発生する能力である。マ
ルチプレクサ79は、マイクロコードに制御されて、種
々の入力を選択して7ビツトのアドレスを作成し、これ
をアドレスするパラメータRAM114で使用するため
にレジスタ80に載置する。このアドレスは、マイクロ
命令復号ロジック39の出力から得られた単独の7ビツ
ト領域で構成することが可能でり、これは単にマイクロ
命令自身の1ビツト領域であった。 このようなアドレスは、パラメータ・レジスタのアドレ
スされているチャンネルがマイクロ命令の即時領域の値
によって固定されているという意味で絶対的である。 マルチプレクサ79によって作られるアドレスは、マイ
クロ命令復号ロジック39の出力から得られた3ビツト
領域と連結したチャンネル・レジスタ87から得られる
4ビツト領域によって構成することがまた可能である。 この場合、このアドレスは、パラメータRAM114中
の6つのパラメータ・レジスタの1つをアクセスするこ
とに限定され、このRAM114は、3ビツト領域によ
って指定される特定のレジスタと共に、現在サービスさ
れているチャンネルと関連している。このタイプのアド
レスは相対的であるが、その理由は、6つの可能性のあ
るパラメータ・レジスタの特定の1つのみが、チャンネ
ルレジスタ87によって供給されるチャンネルの識別と
共に、マイクロ命令自身の中で指定される必要があるか
らである。 したがって、例えば、特定の値を得るために、パラメー
タ・レジスタ番号3をアクセスするマイクロコードを書
くことができ、このコードはいずれのチャンネルでも変
更なしに実行可能である。 マルチプレクサ79によって作られたアドレスは、また
マルチプレクサ40の出力から得られた3ビツト領域と
連結した4ビツトのチャンネル・レジスタ領域によって
構成することが可能である。 このモードは、パラメータをパラメー、夕・プリロード
・レジスタ75にプリロードするための各シーケンスの
最初のマイクロ命令の期間のみで使用され、これ以上こ
こでは関連しない。 マルチプレクサ79によって作られるアドレスは、また
010Bレジスタ78から得られた7ビツトを選択する
ことによって得ることができる。 このモードをパラメータRAM114をアドレスるため
に使用するには、先ずアドレスを計算し、それをDIO
Bレジスタ87中に載置する。これは、先ずチャンネル
レジスタ87の内容をAバス60に載置し、次にBバス
61を介して、または他のソースから即時値データとし
て得られた・チャンネル・オフセットを加えるためにそ
の値で動作させ、次にこの結果をDIOBレジスタ78
に加えることによって達成される。次に、この値はマル
チプレクサ79によって選択される。この方法で作られ
たアドレスは、またマイクロコードがパラメータのアク
セスされているチャンネルの識別に対して特定されない
という意味において相対的である。例えば、マイクロコ
ードは、現在チャンネルに2を加えたもとして識別され
るチャンネルのパラメータ・レジスタ番号3がアクセス
されるもとして特定することができる。このコードは、
いずれのチャンネルでも実行可能である。 明らかに分かるように、パラメータRAM114をチャ
ンネルに関連してアドレスするようにすると、サービス
・プロセッサの柔軟性が大l】に増加する。上に示した
タイミングをスパークする例では、例えば、1つのチャ
ンネルで発生した結果を、他のチャンネルのイベントの
タイミングの計算に使用するためのパラメータとして使
用することが望ましい。これは、チャンネルに関連した
アドレスを行わなくても可能であるが、結果として得た
マイクロプログラムは、16チヤンネルの内の特定のチ
ャンネルを動作させることを強制される。チャンネルに
関連したアドレスを行うことで、マイクロプログラムは
、いずれのチャンネルが使用されているかに関係なく書
かれることが可能である。 16ヂVンネルを直交さぜる」二連の実施例の特定の特
徴は、1)マツチングおよび捕捉機能tこ使用する2つ
の適用可能なタイマ基準信号(TCR値)のいずれかを
独立に選択する能力、2)16チトンネル仝てがその能
力1.71 f;いて全く同一であるという事実、3)
各チャンネルに対して他の全てのチャンネルと独立して
サービスのスケジューラを立てる場合、スケジJ−ラの
使用する優先レベルを選択する能力、および4)各ヂ髪
・ンネルに対する専用ピンである。上述の装置の柔軟性
に大きく4献する特徴には、チトンネル変更機能、ヂX
・ンネル接続機能およびチャンネル関連モードのような
開示したサービス・プロセッサのチャンネル間通信機能
が市る。コードが特定の機能を実行するために割り当て
られた特定のチャンネルと無関係になるという意味にお
いて、これらの特徴は、サービス・プロセッサによって
実行されるため占かれたマイクロコードを直交させる。 本発明は特定の実施例に関して図示され説明されたが、
これに対する種々の変形と変更は当業者にとって明らか
でdうり、それらは本発明の精神と範囲内にあるもので
ある。
てのチャンネルを供給された優先レベルのいずれに対し
ても割り当てる能力を有り−る。これらの機能は、しか
し、サービス・プロセッサのチャンネル間通信機能によ
って非常に強化される。サービス・プロセッサのこれら
の貫献がなければ、装置かなお直交していても、サービ
ス・プロセッサによって実行されるプリミティブ(pr
imitives)の展開は非常に柔軟性のないものに
なるだろう。 チャンネル間通信機能の原理は、第4図、特に第4b図
を参照することによって最も良く理解することができ、
この第4b図は、実行ユニツ1へと呼75−リ−−ビス
・プロセッサの部分を示す。これらの機能に最も密接に
関連する好適な実施例のサービス・プロセッサのこれら
の能力は、マイクロ・コードの実行くチャンネル変更機
能)を妨げることなく、現在サービスを受けているチャ
ンネルを変更する能力、伯のチャンネルに対するサービ
スのスケジュールを立てることに対する特別のタイプの
サービス要求を発生させる能力(チャンネル接続機能)
、およびこれらおよび他の機能を対応しているチャンネ
ルが絶対チャンネル番号によるのではなく、現在のチャ
ンネルに対して特定される「相対モード」で実行する能
力(チャンネル関連モード)である。 動作上正常なモードと考えられるものにおいて1、サー
ビス・プロセッサは、スケジューラ112によって決定
された順序で、同時に16チヤンネルに対してサービス
を行う。サービス・プロセッサが現行チャンネルに関連
するマイクロコード・プログラムの実行を完了した場合
、マイクロ命令デコード・ロジック39の出力は、この
完了したという事実をスケジューラ112に指示する。 スケジユーラ112は、サービスを受ける次のチャンネ
ルを特定する4ビツトの値を線86に載置するごとによ
って応答する。この値は、マルチプレクサ85を介して
チャンネル・レジスタ87に記憶される。同時に、サー
ビス・プロセッサは、新しいチャンネルにサービスを行
うために実行されるべきプリミティブの第1マイクロ命
令の位置決めを行うためにいずれの入力点、または開始
アドレスを使用するかを決定する。−度この入力点が決
定されると、サービス・プロセッサは所望のプリミティ
ブの実行を開始する。 いずれのチャンネルが現在サービスを受けているかを決
定するのは、チャンネル・レジスタ87の内容である。 チャンネル・レジスタ87の内容は、線89を介してチ
ャンネル制御ハードウェアの制御ロジック101へ供給
される。この値は、復号され、サービス・プロセッサか
ら受け取った制御信号によって、16チヤンネルのいず
れを作用させるべきかを決定するために使用される。チ
ャンネル・レジスタ87の内容は、線87を介してマル
チプレクサ79にも供給され、パラメータRAM114
用のアドレスの一部を形成する。この部分によって、パ
ラメータRAM114の内容をまた16の部分に論理的
分割する機構が設けられ、各々の部分は16個ののタイ
マ・チャンネルの1つに関連する。パラメータRAM1
14は、第2B図を参照して上述したチャンネル・パラ
メータ・レジスタに対応する。 上述のチャンネル変更機能およびチャンネル接続機能は
、ある種のタイミングの問題を解決するためには協同方
式で2チャンネル以上の資源を利用することが必要でお
るとの認識から生じる。例えば、1つのチャンネルにお
いて捕捉イベントが発生することに対応して、その他の
幾つかのチャンネルでてマツチング・イベントを設定す
ることが望ましい。したがって、捕捉を発生したチャン
ネル用のサービス・プログラムは、直接的にまたは間接
的にこれらの他ののチャンネルに対する効果を有するこ
とができなければならない。 チャンネル変更機能によって、サービス・プロセッサに
よって実行中のサービス・プログラムが、プログラムの
実行にいかなる割り込みを加えることなく、サービスさ
れているチャンネルの番号を直接変更することができる
機構が提供される。ここに含まれる機構には、マルチプ
レクサ85およびそのAバス60への接続がある。マル
チプレクサ85は、マイクロ命令復号ロジック39の出
力によって制御され、Aバス60の16ビツトの内4つ
から得られた値をチャンネルレジスタ87に加えること
ができる。この値のソースは、データをAバス60に載
置できるソースであればいずれのソースであってもよい
。したがって、新しい値をチャンネル・レジスタ87に
加えることによって、サービス中のチャンネルの見出し
を直接変更する命令をマイクロプログラムに含めること
が可能である。マイクロ命令のシーケンス中の割り込み
は必要でない。チャンネルの変更を実行するマイクロ命
令に続いて、全ての制御信号は、古いチャンネルではな
くて新しいチャンネルに向けられ、パラメータRAM1
14に対するアクセスは新しいチャンネルに関連するロ
ケーションををアクセスする。 チャンネル接続機11Lは、1つのチャンネルからのサ
ービス要求に応答して実行中のマイクロプログラムに現
在のヂ1−・ンネルを含む16ヂ17ンネル全てに対し
てサービス要求を発生させるOL力を与えるにれの機能
の実行には、リンク・レジスタ88およびこれのAバス
60J5よびスケジューラ112への接続が含まれる。 上述のチャンネル変更機能の場合と同様に、サービス・
プロt?ツリーによって実行可能な1つ以上のマイクロ
命令は、リンク・レジスタ88にがAバス60から得た
値を加える効果を有する。チャンネルに対する接続サー
ビス要求をスケジューラするために、マイクロプログラ
ムは単にこれら命令の1つを実行するが、勿論これはA
バス60の適当なl【ツト・に所望の値を載置()た後
である。この値は、リンク・レジスタ8Bから1(号器
89に供給され、これによって線90を介してスケジュ
ーラ112へ供給され、他の全てのサービス要求と同様
にスケジューラ112によって取り扱われる。指摘した
ように、リンク・レジスタ8Bは、またマイクロエンジ
ンに接続されている。チャンネルか、接続ザーげス要求
の結果としてのり一−ビス(J対してスケジューラされ
ている事実は、入力点選択処理の一部として使用される
チャンネル状態の1つであり、またブランチPIA41
へ適用可能なブランチの状態でもある。上述のチャンネ
ル変更機能の場合と同様(:、、リンク・レジスタ8B
加えられている値のソースは、そこからデータをAバス
60に載置できるものであればいずれのソースであって
もよい。 チャンネル接続機能の特定の用途によって、マイクロ命
令の特に長いシーケンスを幾つかのより短いシーケンス
【こ分解することができる。このシーケンスは、現在勤
作中でその後終了される同じチャンネルに対して接続サ
ービス要求を行うことができる。チャンネルが再びり一
−ビスのためにスケジコールされた場合、マイクロプロ
グラムは継続1″ることができる。この機構によって、
マイクロ1目グラムの長いシーケンスを全部−度に実行
した場合にスケジュールされるよりも早くサービスを必
要とする他のチャンネルをスケジコールすることができ
る。 チャンネル関連モード機能には2つの面があり、その内
の第1は、関連モードでチャンネル変更および接続機能
の両りを行う能力である。換言覆−れば、Aバス60か
らチャンネル・レジスタ87またはリンク・レジスタ8
8のいずれかに加えられた値は、チャンネル・1ノジス
タ87の現在の値にオフセラ1−値を加えることにより
引き出すことが可能である。サービス・プロセッサによ
って実行可能な少なくと()1つのマイクロ命令は、チ
ャンネル・レジスタ87の内容が線201を介してAバ
ス60に載置されることを命令するコードを含んでいる
。この値が一度Aバス60に載置されると、これはAU
71によって処理されることができる。代表的な例では
、即114ビット領域(即ら、マイク目命令自身の部分
)の内容がチャンネル・レジスタ87から冑られた値に
加えられ、結果はAバス60へ戻される。この処理され
た値は、」−連のチ’<r−7ネル・レジスタ87また
はリンク・レジスタ8Bいずれにに戻して加えることも
できる。 明らかに分かるように、このことは、チャンネル変更ま
たはチャンネル接続機能のいずれかを、絶対的ではなく
、現在のチャンネル1.T対して特定された「行先」チ
ャンネルで実行する効果を有する1゜この関連モードで
、チャンネル状態またはチャンネル接続機能を実行する
能力は、サービス・プロセッサで実行されるために古か
れたマイクロプログラムの柔軟性を非常に増大させる。 マイクロプログラムは、いずれの特定のチャンネルまた
はチャンネルのグループからも独立して占くことができ
る。例えば、連続づ−64つのグループか、チ〜・ンネ
ル変更またはそれらの間の接続のいずれかによってエン
ジン制御器のスパーク・タイミングとして使用されるべ
きであると、マイクロコードはいずれのチャンネルのグ
ループが使用されたかに拘らず書き込まれることができ
る。 なお、チャンネル接続機能は、関連するモードで使用さ
れる場合、長いマイクロ命令のシーケンスを非常に使用
()易く分割する機)黄と()て上述した自己接続機能
を利用するが、その理由は、マイクロコードはリンクを
作っている絶対チャンネル番号を「知る」必要がないか
らである。 関連モードの第2の面は、関連する形、すなわち、チャ
ンネル・レジスタ87の現在の内容に基づいて、パラメ
ータRAM114にアドレスを発生する能力である。マ
ルチプレクサ79は、マイクロコードに制御されて、種
々の入力を選択して7ビツトのアドレスを作成し、これ
をアドレスするパラメータRAM114で使用するため
にレジスタ80に載置する。このアドレスは、マイクロ
命令復号ロジック39の出力から得られた単独の7ビツ
ト領域で構成することが可能でり、これは単にマイクロ
命令自身の1ビツト領域であった。 このようなアドレスは、パラメータ・レジスタのアドレ
スされているチャンネルがマイクロ命令の即時領域の値
によって固定されているという意味で絶対的である。 マルチプレクサ79によって作られるアドレスは、マイ
クロ命令復号ロジック39の出力から得られた3ビツト
領域と連結したチャンネル・レジスタ87から得られる
4ビツト領域によって構成することがまた可能である。 この場合、このアドレスは、パラメータRAM114中
の6つのパラメータ・レジスタの1つをアクセスするこ
とに限定され、このRAM114は、3ビツト領域によ
って指定される特定のレジスタと共に、現在サービスさ
れているチャンネルと関連している。このタイプのアド
レスは相対的であるが、その理由は、6つの可能性のあ
るパラメータ・レジスタの特定の1つのみが、チャンネ
ルレジスタ87によって供給されるチャンネルの識別と
共に、マイクロ命令自身の中で指定される必要があるか
らである。 したがって、例えば、特定の値を得るために、パラメー
タ・レジスタ番号3をアクセスするマイクロコードを書
くことができ、このコードはいずれのチャンネルでも変
更なしに実行可能である。 マルチプレクサ79によって作られたアドレスは、また
マルチプレクサ40の出力から得られた3ビツト領域と
連結した4ビツトのチャンネル・レジスタ領域によって
構成することが可能である。 このモードは、パラメータをパラメー、夕・プリロード
・レジスタ75にプリロードするための各シーケンスの
最初のマイクロ命令の期間のみで使用され、これ以上こ
こでは関連しない。 マルチプレクサ79によって作られるアドレスは、また
010Bレジスタ78から得られた7ビツトを選択する
ことによって得ることができる。 このモードをパラメータRAM114をアドレスるため
に使用するには、先ずアドレスを計算し、それをDIO
Bレジスタ87中に載置する。これは、先ずチャンネル
レジスタ87の内容をAバス60に載置し、次にBバス
61を介して、または他のソースから即時値データとし
て得られた・チャンネル・オフセットを加えるためにそ
の値で動作させ、次にこの結果をDIOBレジスタ78
に加えることによって達成される。次に、この値はマル
チプレクサ79によって選択される。この方法で作られ
たアドレスは、またマイクロコードがパラメータのアク
セスされているチャンネルの識別に対して特定されない
という意味において相対的である。例えば、マイクロコ
ードは、現在チャンネルに2を加えたもとして識別され
るチャンネルのパラメータ・レジスタ番号3がアクセス
されるもとして特定することができる。このコードは、
いずれのチャンネルでも実行可能である。 明らかに分かるように、パラメータRAM114をチャ
ンネルに関連してアドレスするようにすると、サービス
・プロセッサの柔軟性が大l】に増加する。上に示した
タイミングをスパークする例では、例えば、1つのチャ
ンネルで発生した結果を、他のチャンネルのイベントの
タイミングの計算に使用するためのパラメータとして使
用することが望ましい。これは、チャンネルに関連した
アドレスを行わなくても可能であるが、結果として得た
マイクロプログラムは、16チヤンネルの内の特定のチ
ャンネルを動作させることを強制される。チャンネルに
関連したアドレスを行うことで、マイクロプログラムは
、いずれのチャンネルが使用されているかに関係なく書
かれることが可能である。 16ヂVンネルを直交さぜる」二連の実施例の特定の特
徴は、1)マツチングおよび捕捉機能tこ使用する2つ
の適用可能なタイマ基準信号(TCR値)のいずれかを
独立に選択する能力、2)16チトンネル仝てがその能
力1.71 f;いて全く同一であるという事実、3)
各チャンネルに対して他の全てのチャンネルと独立して
サービスのスケジューラを立てる場合、スケジJ−ラの
使用する優先レベルを選択する能力、および4)各ヂ髪
・ンネルに対する専用ピンである。上述の装置の柔軟性
に大きく4献する特徴には、チトンネル変更機能、ヂX
・ンネル接続機能およびチャンネル関連モードのような
開示したサービス・プロセッサのチャンネル間通信機能
が市る。コードが特定の機能を実行するために割り当て
られた特定のチャンネルと無関係になるという意味にお
いて、これらの特徴は、サービス・プロセッサによって
実行されるため占かれたマイクロコードを直交させる。 本発明は特定の実施例に関して図示され説明されたが、
これに対する種々の変形と変更は当業者にとって明らか
でdうり、それらは本発明の精神と範囲内にあるもので
ある。
第1図は、シングルチップ・マイクロコンピュータのブ
ロック図であり、この一部が本発明の好適な実施例であ
る。 第2A図−第2B図は、本発明の好適な実施例を構成す
るタイマのメモリ・マツプを示す図である。 第3図は、好適な実施例のタイマの主要要素を示すブロ
ック図である。 第4A図−第4D図は、好適な実施例のタイマの構造を
示ず詳細ブロック図である。 第5図は、好適な実施例によるタイマ・チャンネルの描
込を示す詳細ブロック図である。 10・・・マイクロコンピュータ、13・・・シリアル
・インターフェース、12・・・IMB、14・・・記
憶装置、15・・・タイマ、16・・・シリアル・イン
テグレーション・モジュール、20・・・サービス・プ
ロセッサ、チャンネル・・・21a−21p、23・・
・サービス・バス、24・◆・イベント・レジスタ・バ
ス、24.25・・・タイマ・レジスタ・カラン1へ・
バス
ロック図であり、この一部が本発明の好適な実施例であ
る。 第2A図−第2B図は、本発明の好適な実施例を構成す
るタイマのメモリ・マツプを示す図である。 第3図は、好適な実施例のタイマの主要要素を示すブロ
ック図である。 第4A図−第4D図は、好適な実施例のタイマの構造を
示ず詳細ブロック図である。 第5図は、好適な実施例によるタイマ・チャンネルの描
込を示す詳細ブロック図である。 10・・・マイクロコンピュータ、13・・・シリアル
・インターフェース、12・・・IMB、14・・・記
憶装置、15・・・タイマ、16・・・シリアル・イン
テグレーション・モジュール、20・・・サービス・プ
ロセッサ、チャンネル・・・21a−21p、23・・
・サービス・バス、24・◆・イベント・レジスタ・バ
ス、24.25・・・タイマ・レジスタ・カラン1へ・
バス
Claims (1)
- 【特許請求の範囲】 1、少なくとも2つのタイマ基準信号を発生するタイマ
基準信号発生手段;ならびに 複数のタイマ・チャンネルであつて、各々が同一であり
、かつ 入力機能を実行し、前記少なくとも2つのタイマ基準信
号のいずれかに応答する入力手段、および 出力機能を実行し、前記少なくとも2つのタイマ基準信
号のいずれかに応答する出力手段、によつて構成される
複数のタイマ・チャンネル;から成る集積回路タイマ。 2、当該集積回路を外部回路に接続する複数の端子であ
つて、該端子の数は前記チャンネルの数と等しく、前記
チャンネルの各々が前記端子の1つに接続されるところ
の、複数の端子;および該端子の各々と前記チャンネル
の各々との間に接続される制御ロジック手段; から更に構成されることを特徴とする請求項1記載の集
積回路タイマ。 3、前記複数のチャンネルの各々に接続されこれに対し
て少なくとも2つの制御信号を供給するサービス・プロ
セッサ手段であって、前記制御信号のうち第1信号は前
記入力手段のために前記少なくとも2つのタイマ基準信
号のうち1つを選択し、前記制御信号のうち第2信号は
前記出力手段のために前記少なくとも2つのタイマ基準
信号のうち1つを選択するところの、サービス・プロセ
ッサ手段; から更に構成されることを特徴とする請求項2記載の集
積回路タイマ。 4、前記入力手段が: 前記端子の前記1つにおける論理的遷移を検出する、前
記制御論理手段内の遷移検出手段;前記遷移検出手段の
出力と前記制御信号の前記第1信号とに応答し、出力を
発生する捕捉論理手段;および 前記捕捉論理手段の前記出力に応答し、前記制御信号の
前記第1信号によって選択された前記少なくとも2つの
タイマ基準信号の前記1つの値を記憶する捕捉論理手段
; から更に構成されることを特徴とする請求項3記載の集
積回路タイマ。 5、前記出力手段が: 前記サービス・プロセッサの制御の下に1つの値を記憶
するマッチ・レジスタ手段; 前記マッチ・レジスタ手段と前記制御信号の前記第2信
号によつて選択された前記少なくとも2つのタイマ基準
信号の前記1つとに接続され、前記マッチ・レジスタに
記憶された前記値と前記少なくとも2つのタイマ基準信
号の前記1つとの間に所定の関係が存在するときに出力
を発生する比較器手段;および 前記比較器手段の前記出力に応答し、前記端子の前記1
つに出力信号を選択的に発生する、前記制御論理手段内
の手段; から更に構成されることを特徴とする請求項3記載の集
積回路タイマ。 6、前記タイマ・チャンネルの各々が、サービス要求信
号を発生するサービス要求手段から更に構成され;かつ 前記サービス・プロセッサ手段が、 前記タイマ・チャンネルの各々から前記サービス要求信
号を受け取り、プログラムされた優先計画に従つて前記
複数のチャンネルの各々に応答し、前記優先計画に従つ
て前記複数のチャンネルの各々に複数の優先レベルのう
ちの所定の1つが割り当てられ、前記チャンネルの各々
が他のいずれのチャンネルに割り当てられた優先水準に
も依存せず前記優先水準の各々に割当て可能であるとこ
ろの、スケジューラによって更に構成される;ことを特
徴とする請求項3記載の集積回路タイマ。 7、前記タイマ基準信号発生手段が: システム・クロック信号を受け取るクロック手段; 前記システム・クロック信号によつてクロックされる第
1自走カウンタ;および 前記システム・クロック信号および外部供給信号のうち
の1つによつてクロックされる第2自走カウンタによつ
て更に構成される ことを特徴とする請求項1記載の集積回路タイマ。 8、データ・プロセッサとタイマ回路とによつて構成さ
れる集積回路であって、 前記タイマ回路が: 少なくとも2つのタイマ基準信号を発生するタイマ基準
信号発生手段;および 複数のタイマ・チャンネルであって、各々が同一であり
、かつ 入力機能を実行し、前記少なくとも2つのタイマ基準信
号のいずれかに応答する入力手段、および 出力機能を実行し、前記少なくとも2つのタイマ基準信
号のいずれかに応答する出力手段、によって構成される
複数のタイマ・チャンネル;から成る集積回路。 9、当該集積回路を外部回路に接続する複数の端子であ
つて、該端子の数は前記チャンネルの数と等しく、前記
チャンネルの各々が前記端子の1つに接続されるところ
の、複数の端子;および該端子の各々と前記チャンネル
の各々との間に接続される制御ロジック手段; から更に構成されることを特徴とする請求項8記載の集
積回路。 10、前記複数のチャンネルの各々に接続されこれに対
して少なくと2つの制御信号を供給するサービス・プロ
セッサ手段であつて、前記制御信号のうち第1信号は前
記入力手段のために前記少なくとも2つのタイマ基準信
号のうち1つを選択し、前記制御信号のうち第2信号は
前記出力手段のために前記少なくとも2つのタイマ基準
信号のうち1つを選択するところの、サービス・プロセ
ッサ手段; から更に構成されることを特徴とする請求項9記載の集
積回路。 11、前記入力手段が: 前記端子の前記1つにおける論理的遷移を検出する、前
記論理制御手段内の遷移検出手段;前記遷移検出手段の
出力と前記制御信号の前記第1信号とに応答し、出力を
発生する捕捉論理手段;および 前記捕捉論理手段の前記出力に応答し、前記制御信号の
前記第1信号によって選択された前記少なくとも2つの
タイマ基準信号の前記1つの値を記憶する捕捉論理手段
; から更に構成されることを特徴とする請求項10記載の
集積回路。 12、前記出力手段が: 前記サービス・プロセッサの制御の下に1つの値を記憶
するマッチ・レジスタ手段; 前記マッチ・レジスタ手段と前記制御信号の前記第2信
号によつて選択された前記少なくとも2つのタイマ基準
信号の前記1つとに接続され、前記マッチ・レジスタに
記憶された前記値と前記少なくとも2つのタイマ基準信
号の前記1つとの間に所定の関係が存在するときに出力
を発生する比較器手段;および 前記比較器手段の前記出力に応答し、前記端子の前記1
つに出力信号を選択的に発生する、前記制御論理手段内
の手段; から更に構成されることを特徴とする請求項10記載の
集積回路。 13、前記タイマ・チャンネルの各々が、サービス要求
信号を発生するサービス要求手段から更に構成され;か
つ 前記サービス・プロセッサ手段が、 前記タイマ・チャンネルの各々から前記サービス要求信
号を受け取り、プログラムされた優先計画に従つて前記
複数のチャンネルの各々に応答し、前記優先計画に従っ
て前記複数のチャンネルの各々に複数の優先レベルのう
ちの所定の1つが割り当てられ、前記チャンネルの各々
が他のいずれのチャンネルに割り当てられた優先水準に
も依存せず前記優先水準の各々に割当て可能であるとこ
ろの、スケジューラによって更に構成される;ことを特
徴とする請求項10記載の集積回路。 14、前記タイマ基準信号発生手段が: システム・クロック信号を受け取るクロック手段; 前記システム・クロック信号によってクロックされる第
1自走カウンタ;および 前記システム・クロック信号および外部供給信号のうち
の1つによつてクロックされる第2自走カウンタによつ
て更に構成される ことを特徴とする請求項8記載の集積回路。 15、ホスト・データ・プロセッサおよびタイマによつ
て構成されるシステムであつて、前記タイマは: 前記ホスト・データ・プロセッサとタイマとの間で通信
を行う第1インターフェース手段;各々が、入力タイマ
機能を実行する手段および出力タイマ機能を実行する手
段のうち少なくとも1つによつて構成される複数のタイ
マ・チャンネル; 前記複数のタイマ・チャンネルに接続され、前記タイマ
・チャンネルを順次制御するサービス・プロセッサ手段
; 前記サービス・プロセッサに接続され、前記サービス・
プロセッサ手段の実行する命令を記憶する第1記憶手段
; 前記第1インターフェース手段と前記サービス・プロセ
ッサ手段とに接続され、前記サービス・プロセッサ手段
とホスト・データ・プロセッサとの制御の下に情報を記
憶する第2記憶手段;ならびに 前記複数のチャンネルと前記サービス・プロセッサ手段
とに接続され、前記複数のチャンネルからサービス要求
信号を受取り、前記サービス・プロセッサ手段によりサ
ービスされるべき前記複数のチャンネルの1つを選択す
るスケジューラ手段;から成るシステム。 16、前記ホスト・データ・プロセッサに接続され、前
記ホスト・データ・プロセッサの制御の下に情報を記憶
する第3記憶手段から更に構成される請求項15記載の
システムであって: 前記第3記憶手段と前記サービス・プロセッサ手段とに
接続され、前記ホスト・データ・プロセッサの制御の下
に、前記第3記憶手段へのアクセスを前記サービス・プ
ロセッサ手段に対してもたらし、前記サービス・プロセ
ッサ手段が前記第3記憶手段内に記憶された命令を実行
するようにする、第2インターフェース手段; から更に構成されることを特徴とする請求項15記載の
システム。 17、前記複数のタイマ・チャンネルが相互に機能的に
同一であり; 前記スケジューラ手段が、前記ホスト・データ・プロセ
ッサにより前記第2記憶手段内に記憶された情報に応答
し、所定数の優先レベルのうちの1つを前記複数のタイ
マチャンネルの各々に割り当てる手段であって、前記複
数のチャンネルのいずれか1つに割り当てられた優先水
準は前記複数のチャンネルの他のいずれに割り当てられ
た優先水準にも依存しないところの、手段によって更に
構成される; ことを特徴とする請求項15記載のシステム。 18、前記サービス・プロセッサが、 前記スケジューラの制御の下に前記複数のチャンネルの
1つの識別の指示を記憶するチャンネル・レジスタ手段
;および 前記第2記憶手段をアドレスするためのアドレスを発生
する手段であつて、前記アドレスの一部が前記複数のチ
ャンネルの1つを識別し、アドレスを発生する当該手段
は前記チャンネル・レジスタ手段の内容から前記一部を
得ることができるところの、手段; によって更に構成される ことを特徴とする請求項15記載のシステム。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US234,104 | 1988-08-19 | ||
| US07/234,104 US4926319A (en) | 1988-08-19 | 1988-08-19 | Integrated circuit timer with multiple channels and dedicated service processor |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH02252008A true JPH02252008A (ja) | 1990-10-09 |
| JPH0616249B2 JPH0616249B2 (ja) | 1994-03-02 |
Family
ID=22879944
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1210828A Expired - Lifetime JPH0616249B2 (ja) | 1988-08-19 | 1989-08-17 | マイクロプロセッサ |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US4926319A (ja) |
| EP (1) | EP0355363B1 (ja) |
| JP (1) | JPH0616249B2 (ja) |
| KR (1) | KR960003409B1 (ja) |
| DE (1) | DE68915074T2 (ja) |
| HK (1) | HK118897A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2024145030A (ja) * | 2023-03-31 | 2024-10-15 | ルネサスエレクトロニクス株式会社 | 半導体装置、時間計測方法及び時間計測プログラム |
Families Citing this family (23)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5204957A (en) * | 1988-08-19 | 1993-04-20 | Motorola | Integrated circuit timer with multiple channels and dedicated service processor |
| US5042005A (en) * | 1988-08-19 | 1991-08-20 | Motorola, Inc. | Timer channel with match recognition features |
| JPH02151926A (ja) * | 1988-12-02 | 1990-06-11 | Fujitsu Ltd | 端末装置切替方式 |
| US5212693A (en) * | 1990-08-02 | 1993-05-18 | Ibm Corporation | Small programmable array to the on-chip control store for microcode correction |
| GB2254455B (en) * | 1991-04-02 | 1995-01-04 | Inst Ind Information Technolog | Calendar time generator for a computer. |
| US5233573A (en) * | 1992-07-01 | 1993-08-03 | Motorola Inc. | Digital data processor including apparatus for collecting time-related information |
| US5325341A (en) * | 1992-08-31 | 1994-06-28 | Motorola, Inc. | Digital timer apparatus and method |
| US5535376A (en) * | 1993-05-18 | 1996-07-09 | Motorola, Inc. | Data processor having a timer circuit for performing a buffered pulse width modulation function and method therefor |
| US5732225A (en) * | 1995-11-13 | 1998-03-24 | Motorola Inc. | Integrated circuit timer system having a global bus for transferring information between local buses |
| US5701421A (en) * | 1995-11-13 | 1997-12-23 | Motorola, Inc. | Pin and status bus structure for an integrated circuit |
| US5721888A (en) * | 1995-11-13 | 1998-02-24 | Motorola, Inc. | Performing flexible logical operations with timer channel outputs |
| US5631853A (en) * | 1995-11-13 | 1997-05-20 | Motorola Inc. | Flexible configuration of timebases in a timer system |
| US5729721A (en) * | 1995-11-13 | 1998-03-17 | Motorola, Inc. | Timebase synchronization in separate integrated circuits or separate modules |
| US5721889A (en) * | 1995-11-13 | 1998-02-24 | Motorola, Inc. | Data transfer between integrated circuit timer channels |
| US5812833A (en) * | 1995-11-13 | 1998-09-22 | Motorola, Inc. | Timer bus structure for an integrated circuit |
| US5634045A (en) * | 1995-11-13 | 1997-05-27 | Motorola, Inc. | Integrated circuit input/output processor having improved timer capability |
| US6550015B1 (en) * | 1999-02-10 | 2003-04-15 | Advanced Micro Devices Inc. | Scalable virtual timer architecture for efficiently implementing multiple hardware timers with minimal silicon overhead |
| DE10196246T1 (de) * | 2000-05-19 | 2003-04-17 | Orbital Eng Australia | Programmfolgesteuerung für eine Kraftstoff-Einspritzmaschine |
| US7024579B2 (en) | 2002-08-27 | 2006-04-04 | Stmicroelectronics S.R.L. | Configurable timing system having a plurality of timing units interconnected via software programmable registers |
| US7853834B2 (en) * | 2007-01-30 | 2010-12-14 | Freescale Semiconductor, Inc. | Instruction-based timer control during debug |
| US7831862B2 (en) * | 2007-01-30 | 2010-11-09 | Freescale Semiconductor, Inc. | Selective timer control during single-step instruction execution |
| US7831818B2 (en) * | 2007-06-20 | 2010-11-09 | Freescale Semiconductor, Inc. | Exception-based timer control |
| US20100325327A1 (en) * | 2009-06-17 | 2010-12-23 | Freescale Semiconductor, Inc. | Programmable arbitration device and method therefor |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5848167A (ja) * | 1981-09-16 | 1983-03-22 | Sharp Corp | コントロ−ル装置 |
| JPS6159516A (ja) * | 1984-08-30 | 1986-03-27 | Fujitsu Ltd | タイマ機構 |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4220990A (en) * | 1978-09-25 | 1980-09-02 | Bell Telephone Laboratories, Incorporated | Peripheral processor multifunction timer for data processing systems |
| JPH06103507B2 (ja) * | 1984-11-02 | 1994-12-14 | 株式会社日立製作所 | パルス入出力プロセッサ及びそれを用いたマイクロコンピュータ |
-
1988
- 1988-08-19 US US07/234,104 patent/US4926319A/en not_active Expired - Lifetime
-
1989
- 1989-07-10 EP EP89112589A patent/EP0355363B1/en not_active Expired - Lifetime
- 1989-07-10 DE DE68915074T patent/DE68915074T2/de not_active Expired - Fee Related
- 1989-08-16 KR KR1019890011621A patent/KR960003409B1/ko not_active Expired - Fee Related
- 1989-08-17 JP JP1210828A patent/JPH0616249B2/ja not_active Expired - Lifetime
-
1997
- 1997-06-26 HK HK118897A patent/HK118897A/en not_active IP Right Cessation
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5848167A (ja) * | 1981-09-16 | 1983-03-22 | Sharp Corp | コントロ−ル装置 |
| JPS6159516A (ja) * | 1984-08-30 | 1986-03-27 | Fujitsu Ltd | タイマ機構 |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2024145030A (ja) * | 2023-03-31 | 2024-10-15 | ルネサスエレクトロニクス株式会社 | 半導体装置、時間計測方法及び時間計測プログラム |
Also Published As
| Publication number | Publication date |
|---|---|
| EP0355363A3 (en) | 1990-11-07 |
| US4926319A (en) | 1990-05-15 |
| EP0355363A2 (en) | 1990-02-28 |
| JPH0616249B2 (ja) | 1994-03-02 |
| EP0355363B1 (en) | 1994-05-04 |
| DE68915074T2 (de) | 1994-11-17 |
| DE68915074D1 (de) | 1994-06-09 |
| HK118897A (en) | 1997-09-05 |
| KR960003409B1 (ko) | 1996-03-13 |
| KR900003720A (ko) | 1990-03-26 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH02252008A (ja) | マイクロプロセッサ | |
| US5117498A (en) | Processer with flexible return from subroutine | |
| KR950012051B1 (ko) | 타이머 시스템 | |
| KR950012052B1 (ko) | 타이머 및 타이머를 구비한 집적 회로 | |
| JP2782367B2 (ja) | 低電力モードを有するデジタル計算システム | |
| CA1182927A (en) | Memory management arrangement for microprocessor systems | |
| KR960005388B1 (ko) | 타이머 장치 | |
| KR950014179B1 (ko) | 서비스 프로세서 | |
| HK1000386B (en) | Timer channel with match recognition features | |
| CN114780248B (zh) | 资源访问方法、装置、计算机设备及存储介质 | |
| CN114691594B (zh) | 一种基于非对称双核mcu设计的芯片架构及其实现方法 | |
| US5204957A (en) | Integrated circuit timer with multiple channels and dedicated service processor | |
| US5671424A (en) | Immediate system management interrupt source with associated reason register | |
| JP3547012B2 (ja) | マイクロコンピュータ | |
| JPS5840619A (ja) | シ−ケンスコントロ−ラおよびその制御方法 | |
| JPS62130427A (ja) | メモリリ−ド/ライト方式 | |
| JPS5854462A (ja) | 共有メモリ装置 | |
| HU200850B (en) | Circuit arrangement for laying out single-processor in-circuit emulators |