[go: up one dir, main page]

JPH09146779A - 改善されたタイマ能力を有する集積回路入力/出力プロセッサ - Google Patents

改善されたタイマ能力を有する集積回路入力/出力プロセッサ

Info

Publication number
JPH09146779A
JPH09146779A JP8315630A JP31563096A JPH09146779A JP H09146779 A JPH09146779 A JP H09146779A JP 8315630 A JP8315630 A JP 8315630A JP 31563096 A JP31563096 A JP 31563096A JP H09146779 A JPH09146779 A JP H09146779A
Authority
JP
Japan
Prior art keywords
channel
timer
bus
pin
channels
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP8315630A
Other languages
English (en)
Inventor
Vernon B Goler
バーノン・バーナード・ゴーラー
Gary L Miller
ゲイリー・リン・ミラー
David Rivera
デービッド・リベラ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Motorola Solutions Inc
Original Assignee
Motorola Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Motorola Inc filed Critical Motorola Inc
Publication of JPH09146779A publication Critical patent/JPH09146779A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Bus Control (AREA)
  • Information Transfer Systems (AREA)
  • Electronic Switches (AREA)
  • Measurement Of Unknown Time Intervals (AREA)

Abstract

(57)【要約】 (修正有) 【課題】 柔軟性がありかつ強化されたI/O能力を備
えた改善されたタイマ能力を有する入力/出力プロセッ
サを提供する。 【解決手段】 I/O制御モデュールIOCM25はタ
イマバス71,72およびピン/ステータスバス75〜
77によって通信するチャネルを有する。チャネル8
6,87は各タイマバスによりそれぞれのタイマバスに
よりタイムベースチャネル80,81から異なるタイム
ベース値へのアクセスが与えられた別個のブロックのチ
ャネルに区分され、タイマバスブロック、例えば86、
の各チャネルが同時にその対応するタイマバス71から
同じタイムベース値を受信でき分解能の損失がない。ピ
ン/ステータスバス75〜77は同じピン/ステータス
バス、例えば76、に結合されたチャネル、例えば5
8、の間での制御の同時性を可能にする。ピン/ステー
タスバスおよびタイマバスは独立に区分けできる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は一般的には入力/出
力プロセッサに関し、かつより特定的には改善されたタ
イマ能力を有する入力/出力プロセッサに関する。
【0002】
【従来の技術】複雑な実時間制御システム、例えば、自
動車用およびロボット用制御システム、のために使用さ
れるデータ処理システムはより精細な制御、より高速の
システム応答、およびより大きな入力/出力(I/O)
能力を必要としている。その結果、データ処理システム
によるより高速および改善された入力/出力(I/O)
処理の必要性が大幅に増大してきている。マイクロコン
ピュータはより正確な制御のために、デジタルおよびア
ナログの双方で、より高い分解能の出力を提供すること
が期待される。
【0003】
【発明が解決しようとする課題】より高い周波数の制御
機能に対しては、中央処理ユニット(CPU)は、処理
のオーバヘッドのため、必要とされるレートで応答する
ことができないかもしれない。CPUに過度の負担を与
えることなくより大きな、高速の、および改善されたI
/O処理能力を提供する解決方法が必要である。
【0004】さらに、マイクロコンピュータは広い範囲
の用途を可能にするため非常に柔軟性があることを要求
される。過去のマイクロコンピュータにおいては、I/
O処理の柔軟性はポートまたは単純なタイマチャネルに
関して動作する中央処理ユニット(CPU)のソフトウ
エアによって提供されてきた。アナログおよびデジタル
I/Oも同様にCPUのソフトウエアによってリンクさ
れた。しかしながら、I/O帯域幅は主としてシステム
のオーバヘッドにより犠牲にされ、それはCPUはすべ
てのI/Oに関与したためである。従って、柔軟性およ
び増大したI/O能力の双方を提供する解決方法が必要
である。
【0005】
【課題を解決するための手段】用語「バス」は、デー
タ、アドレス、制御、またはステータスのような、1つ
またはそれ以上の種々の形式の情報を転送するために使
用できる複数の信号または導体に言及するために使用さ
れる。用語「肯定する」および「否定する」は信号、ス
テータスビット、集積回路ピン、または同様の装置を、
それぞれ、その論理的に真のまたは論理的に偽の状態に
することを言及する場合に使用される。もし論理的に真
の状態が論理レベル“1”であれば、論理的に偽の状態
は論理レベル“0”である。また、もし論理的に真の状
態が論理レベル“0”であれば、論理的に偽の状態は論
理レベル“1”である。
【0006】用語「セットする」は信号、ステータスビ
ット、集積回路ピン、または同様の装置を論理レベル
“1”にすることに言及する場合に使用される。用語
「クリアする」は信号、ステータスビット、集積回路ピ
ン、または同様の装置を論理レベル“0”にすることに
言及する場合に使用される。また、用語「トグルする
(toggle)」は信号、ステータスビット、集積回
路ピン、または同様の装置をもし現在の状態が論理レベ
ル“0”であれば論理レベル“1”にし、かつもし現在
の状態が論理レベル“1”であれば論理レベル“0”に
することに言及する場合に使用される。
【0007】数字に先行する記号“%”はその数字また
は数がその2進またはベース2の形式で表現されること
を示している。数字または数に先行する記号“$”はそ
の数字または数がその16進またはベース16の形式で
表現されていることを示す。用語「集積回路ピン」およ
び用語「ピン」は相互交換可能に使用される。さらに、
用語「集積回路ピン」または「ピン」が使用される場合
は、ボンディングパッド、または集積回路と外部装置に
電気的結合を提供するための任意の導体を代わりに使用
することができる。
【0008】以下の説明においては、本発明の完全な理
解を与えるために、数多くの特定の詳細事項、例えば特
定のワードまたはバイト長その他、が述べられる。しか
しながら、当業者には本発明はそのような特定の詳細事
項なしに本発明が実施できることは明らかであろう。他
の場合には、不必要な詳細によって本発明に混乱を生じ
ないようにするため回路はブロック図形式で示される。
たいていの場合、タイミングの考察事項その他に関する
詳細は省略されるが、それは本発明の完全な理解を得る
ためにはそのような詳細は必要ではなくかつ関連技術に
おける当業者の習熟の範囲内にあるためである。
【0009】用語「集積回路ピン」および「ピン」(例
えば、図1の31〜35および19)はこの明細書全体
にわたり使用されるが、これらの用語は、例えば、集積
回路ボンディングパッド、はんだパンプ、ワイヤ導体、
その他のような、電気信号が集積回路へあるいは集積回
路から転送できるようにする任意の形式の装置を含むも
のと考えている。
【0010】次に図面を参照すると、示された各エレメ
ントは必ずしも比例する大きさで描かれておらずかつ同
様のまたは同じエレメントはいくつかの図面にわたり同
じ参照数字で示されている。
【0011】入力出力制御モジュール(図1のIOCM
25〜29を参照)はデータ処理システムに対し柔軟性
および増大したI/O能力の双方を提供する。本発明の
1実施形態では、1つまたはそれ以上のIOCM25〜
29が中央処理ユニット(CPU)13とは別個の集積
回路に位置しているが、該1つまたはそれ以上のIOC
M25〜29はバス30によってCPU13と通信す
る。本発明の別の実施形態では、1つまたはそれ以上の
IOCMはCPUと同じ集積回路上に配置することがで
きる。例えば、図1を参照すると、他の回路15はバス
17によってCPU13と通信する入力/出力制御モジ
ュール(IOCM)として実施することができる。
【0012】おのおののIOCM25〜29は非常にモ
ジュール方式的なアーキテクチャを使用して設計されて
いる。最も高いレベルにおいて、IOCM25〜29の
おのおのの1つはモジュール間バス24によって他のモ
ジュールと通信できるモジュールである。例えば、1つ
の実施形態では、IOCM25〜29のおのおのはアメ
リカ合衆国、テキサス州、オースチンのモトローラ・イ
ンコーポレイテッドから入手可能な、マイクロコンピュ
ータのMC68HC300型ファミリと共に使用できる
モジュールとすることができる。
【0013】モジュールそれ自体であることに加えて、
IOCM25〜29のおのおのの1つはまた、サブモジ
ュール、またはモジュール方式のI/Oチャネルから構
成される。異なるIOCMバージョンは「チャネルのシ
リコンライブラリ(silicon library
of channels)」からのモジュール方式のチ
ャネルを任意の組合わせで組み合わせることによって容
易に作成できる。チャネルは、デジタルまたはアナログ
I/O能力を含めて、異なるハードウエアを有し特定の
動作を遂行する。予期しないI/O機能のための成長経
路を可能にするため、新しいチャネルをライブラリに加
えることができる。従って、異なる構成のモジュール方
式のチャネルを組み合わせて異なるバージョンのIOC
M25〜29を形成することができる。
【0014】IOCM25〜29の他の重要な特徴はそ
れらのアーキテクチャがユーザがソフトウエアおよびハ
ードウエアの間のタスクを区分できるようにすることで
ある。チャネルは単純な高い頻度または周波数の機能を
達成するために、ハードウエア的に、一緒に動作するよ
うプログラムできる。協力して動作するチャネルは本質
的に高い頻度または周波数のI/O事象を達成するため
のプリプロセッサとして作用する。これは、CPUから
すべてのI/O事象のソフトウエアサービスの負担を軽
減することにより、あるいはCPUに対しより低い頻度
または周波数のI/O事象のソフトウエアサービスのみ
を行うことを要求することにより、より精細な制御およ
びより高速のシステム応答を提供する上で最も重要なこ
とである。
【0015】おのおののIOCM25〜29のデジタル
I/Oセクションはそれが達成できるI/O機能の数お
よび特性の双方で柔軟性がある。おのおののIOCM2
5〜29はそれがピン、チャネル、およびバスの数に関
してモジュール方式であるため、この柔軟性を達成す
る。すなわち、チャネルの数とは独立に、「チャネルの
シリコンライブラリ」から異なるIOCMバージョンを
容易に作成することができ、かつ集積回路ピンもまた加
えることができる。IOCM25〜29のアーキテクチ
ャはまた種々のIOCMバージョンにおいてチャネルの
数が増大したときデータおよび制御のためのより多くの
バスを加えることを可能にする。新しいチャネルもまた
設計しかつライブラリに加えることができ、将来のI/
O機能のための成長経路を提供することができる。
【0016】IOCM25〜29のアーキテクチャの第
2の重要な観点はチャネルが、ハードウエア的に、一緒
に動作して単純な高頻度または高周波機能を達成するよ
うプログラムできることである。ユーザがタスクをソフ
トウエアとハードウエアとの間で区分できるようにする
ことはシステムにおけるCPU割込みの数を低減するこ
とによってシステムのスループットを最大にする上で重
要である。
【0017】複雑な実時間制御システムによって必要と
されるI/O処理の内のかなりの量は同じタイプのタイ
マ機能を含む。従って、比較的小さなライブラリのチャ
ネルを異なる方法で組み合わせて大部分の顧客の要求に
合致する多様なIOCM25〜29を形成することがで
きる。
【0018】本発明の1実施形態においては、チャネル
のライブラリはいくつかの異なるカテゴリまたはタイプ
のチャネルを含み、すなわち、「ワークチャネル(wo
rkchannels)」、「タイムベースチャネル
(timebase channels)」、および
「その他のチャネル(other channel
s)」である。このカテゴリ名は同様の機能または構造
を有するチャネルが一緒にグループ化できるようにす
る。「ワークチャネル」は、時間事象が発生した場合に
入力値を捕捉し、整合事象が発生したときに信号を提供
し、かつカウントを行うような、典型的なタイマ機能を
達成するチャネルを含む。ワークチャネルはまた基本的
なタイマ機能のより複雑な組合わせを形成するチャネル
を含む。例えば、整合およびカウンタ機能の双方を達成
するチャネルは整合事象の数をカウントしかつ所定の数
の整合事象が発生した後にのみ信号を提供するようにす
ることができる。
【0019】本発明の1実施形態では、ワークチャネル
は、(1)捕捉チャネル(CC)、(2)整合チャネル
(MC)、(3)カウンタチャネル(CMTC)、
(4)エンジンのためのスパークタイミングを提供する
ためにタイマ機能の組合わせを行うためのスパーク統合
チャネル(spark integrated cha
nnel:SIC)、(5)エンジンのための燃料注入
タイミングを提供するためにタイマ機能の組合わせを行
う燃料統合チャネル(tuel integrated
channel:FIC)、および(6)データ値の
格納のために2ディープFIFO(2−deep FI
FO)を提供するためのデュアルFIFOチャネル(D
FC)を含む。デュアルFIFOチャネル(DFC)は
タイマ機能を行わないが、代わりにデータ格納機能を提
供する。
【0020】本発明の1実施形態では、タイムベースチ
ャネルは、(1)タイマバスのマスタまたはスレイブ制
御を提供するためのタイマバス制御チャネル(TBC
C)、(2)4つまでのタイムベースを提供するための
ディグリークロックチャネル(degree cloc
k channel:DC)、および(3)内部的にま
たは外部的に発生できるタイムベースを提供するための
タイマチャネル(TC)を含む。本発明の1実施形態で
は、前記タイマチャネルは1つまたはそれ以上のワーク
チャネルによってあるいは1つまたはそれ以上の外部信
号によって制御することができる(例えば、クロッキン
グされ、モジュラス値をロードされ、あるいはカウント
の方向が決定される)。
【0021】本発明の1実施形態では、前記他のチャネ
ルは、(1)シリアル転送を行うための同期シリアルチ
ャネル、(2)シリアル転送を行うための非同期シリア
ルチャネル、(3)ワークチャネルおよび集積回路ピン
をインタフェースするためのピン制御チャネル(PC
C)、(4)内部モジュール間バスを集積回路の外部の
バスにインタフェースするためのスレイブ外部バスイン
タフェースチャネル(SEBI)、(5)バージョンの
間で変わり得るカスタム化されたまたは特殊化された回
路を含むグローバルリソースチャネル(global
resourcechannel:GRC)(例えば、
あるクロックおよびいくつかのシステム保護機能)、
(6)内部モジュール間バスへインタフェースするため
のスレイブバスインタフェースチャネル(SBIU)、
(7)内部モジュール間バス(IMB)を前記ディグリ
ークロックへとインタフェースするためのマスタバスイ
ンタフェースチャネル(MBIU)(CPUの障害の場
合、すべてのCPU書込みは1つの所定のレジスタを除
き防止され、前記MBIUはディグリークロックが前記
IMBをテイクオーバ(take over)し、かつ
前記MBIUはCPUなしに、自動車用のエンジンのよ
うな、システムを運転するようあるチャネルを再構築す
る)、および(8)試験の目的に使用される回路を含む
テストチャネル、を含む。
【0022】本発明の1実施形態においては、前記シリ
アルチャネルは1つまたはそれ以上の対応する集積回路
ピンに対し直接的な制御を持つことができ、あるいはピ
ン制御チャネルによって対応する集積回路ピンの使用を
行うことができることに注意を要する。
【0023】本発明の1実施形態では、厳密にいえばチ
ャネルのライブラリの一部ではないが、モジュール方式
で設計されかつ1つまたはそれ以上のチャネルを結合す
るために使用できる付加的な回路がある。例えば、ピン
制御共有論理(pin control share
logic)は2つの隣接するピン制御チャネル(PC
C)がバス情報を共有することができるようにするため
2つの隣接するPCCの間で結合することができる。本
発明の別の実施形態はすべてのそのような接続回路(c
onnectivity circuitry)をチャ
ネルのライブラリの一部として含むことができる。
【0024】おのおののワークチャネルは入力および出
力事象を含む数多くのプログラム可能な特徴的機能を提
供する。入力事象の発生源は集積回路ピンまたは他のワ
ークチャネルとすることができ、一方出力事象は集積回
路ピンまたは他のワークチャネルに影響を与えることが
できる。入力捕捉および隣接ワークチャネル間のデータ
転送のような、チャネル動作は入力事象によって制御で
きる。逆に、ワークチャネルの出力事象、または集積回
路ピン、はワークチャネルおよびワークチャネルの間の
データ転送の動作に影響を与えることができる。おのお
ののワークチャネルの他の特徴的機能は入力事象に対し
て行われるべきワークチャネル動作を規定する選択可能
な構築モードまたは出力事象を生じる結果となる動作で
ある。これらおよび他の特徴的機能はワークチャネルが
一緒に動作して広い範囲のI/O機能を達成するようプ
ログラムできるようにする。
【0025】チャネルのライブラリに含まれるチャネル
は異なるバージョンのIOCM25〜29を作成するた
め種々の組合わせで加えることができる。本発明の別の
実施形態ではIOCM25〜29を形成するために使用
されるチャネルのライブラリにおいてより多くの、より
少ない、または異なるチャネルを持つことができる。モ
ジュール方式のアーキテクチャおよびモジュール方式の
チャネルの柔軟性あるライブラリを使用することによ
り、広い範囲の顧客のI/O要求に高速かつ効率的な方
法で適合させることができる。
【0026】
【発明の実施の形態】図1は、データ処理システム10
を示す。データ処理システム10はCPU集積回路1
2、および入力/出力(I/O)集積回路22を有す
る。CPU集積回路12は中央処理ユニット(CPU)
13、システム統合モジュール(system int
egration module)14、および他の回
路15を含み、これらはバス17によって双方向的に結
合されている。システム統合モジュール14はバス30
に双方向的に結合された外部バスインタフェース回路1
6を含む。他の回路15はバスインタフェース回路18
を含む。他の回路15は集積回路ピン19によってCP
U集積回路12の外部に任意選択的に結合される。
【0027】I/O集積回路22は、バス24によって
双方向的に結合された、回路25〜29および外部バス
インタフェース回路23を含む。外部バスインタフェー
ス回路23はCPU集積回路12から情報を転送しかつ
受信するために双方向的にバス30に結合されている。
I/O制御モジュール回路25〜29は集積回路ピン3
1〜35によってI/O集積回路22の外部に結合され
ている。本発明の別の実施形態では、図1のブロック3
1〜35は集積回路ピンではなく集積回路ボンディング
パッドを表す。おのおののモジュール25〜29はチャ
ネルのライブラリ(例えば図2を参照)からの1つまた
はそれ以上のチャネルを含む。モジュール25〜29の
おのおのはまた1つまたはそれ以上のチャネルを内部モ
ジュール間バス24にインタフェースするためのスレイ
ブバスインタフェースチャネル(SBIU)36〜40
を含む。
【0028】本発明の別の実施形態は1つまたはそれ以
上のモジュール25〜29を有するものとすることがで
きる。おのおのそれ自身のバスインタフェース36〜4
0を有する1つまたはそれ以上のモジュール25〜29
へのチャネルの区分けはモジュール25〜29の内部の
バスに関するローディングの制約による。おのおののモ
ジュール25〜29に含まれるチャネルの数は各モジュ
ール25〜29内の内部バスに対する結果としてのロー
ディングよって決定される。アーキテクチャのモジュー
ル化はおのおののモジュール25〜29がチャネルのラ
イブラリからの異なるチャネルを使用して形成できるよ
うにする。従って、おのおののモジュール25〜29は
個々の顧客の要求に対してカスタム化することができ
る。
【0029】<モジュール方式チャネルアーキテクチャ
の特徴的機能>モジュール方式のチャネルを使用するこ
とに加えて、本発明はまた種々のチャネルの間で情報を
転送するために使用されるチャネルバスへのモジュール
方式のアプローチを使用する。チャネルの構成はIOC
Mバージョンの間で変わるから、チャネルバス構造は柔
軟性がなければならない。
【0030】図1および図2を参照すると、本発明の1
実施形態においては、IOCM(例えば、IOCM2
5)内のチャネルはチャネルバスによって通信する。以
下のチャネルバスはIOCM内のチャネルを横断するこ
とができる。すなわち、(1)モジュール間バス(IM
B)24のアドレスおよびデータ導体、(2)1つまた
はそれ以上のタイマバス、および(3)1つまたはそれ
以上のピン/ステータスバス、である。チャネルはまた
隣接チャネルの間でデータフローを可能にするためお互
いの間で相互接続経路を持つことができる。モジュール
間バス24のアドレスおよびデータ導体はチャネルレジ
スタ、制御レジスタ、およびステータスレジスタへのア
クセスを提供する。本発明の1実施形態では、バスイン
タフェース回路36〜40(図1を参照)はその特定の
IOCM25〜29がアドレスされているかを判定する
ためにグローバルアドレスデコードを行うことができる
が、すべてのローカルアドレスデコードは各チャネル内
で行われる。
【0031】<タイマバス構造>図2を参照すると、本
発明は他のチャネルに送信または放送(broadca
st)することができるタイムベースの数を増大するた
めマスタおよびスレイブタイマバス制御チャネル(TB
CC)61〜64を使用することによりセグメントに容
易に区分することができる1つまたはそれ以上のタイマ
バス71〜72を使用する。
【0032】IOCM25〜29のアーキテクチャおよ
びバス構造はその長さに沿って任意の場所でタイマバス
を容易に区分(segment)する方法を提供する。
その結果、チャネルはおのおののタイマバスによってそ
れらのそれぞれのタイマバスによる異なるタイムベース
へのアクセスが提供される別個のブロックのチャネルへ
と区分される。1つのタイマバスブロック内のチャネル
は分解能の損失の可能性なしに異なる機能(単数または
複数)を行うために使用することができ、それはタイマ
バスブロック内の各チャネルは該タイマバスから同じタ
イムベース値を受けることができるためである。
【0033】一例として、図2を参照すると、タイマバ
ス71は「ワークおよび他のチャネル(work &
other channels)」86と名付けられた
チャネルのブロックに対応し、かつタイマバス72はワ
ークおよび他のチャネル87と名付けられたチャネルの
ブロックに対応する。タイマバス71はタイムベース値
をワークおよび他のチャネル86に転送するために使用
され、かつ同様にタイマバス72はタイムベース値をワ
ークおよび他のチャネル87に転送するために使用され
る。
【0034】各タイマバス71〜72のおのおのの一端
はマスタタイマバス制御チャネル(TBCC)によって
表わされまたは線引きされ(delineated)、
かつタイマバスの他端はスレイブタイマバス制御チャネ
ル(TBCC)によって表わされまたは線引きされてい
ることに注意を要する。例えば、タイマバス71の一端
はマスタタイマバス制御チャネル(TBCC)61によ
って線引きされ、かつタイマバス71の他端はスレイブ
タイマバス制御チャネル(TBCC)によって線引きさ
れている。同様に、タイマバス72の一端はマスタタイ
マバス制御チャネル(TBCC)63によって線引きさ
れ、かつタイマバス72の他端はスレイブタイマバス制
御チャネル(TBCC)64によって線引きされてい
る。マスタおよびスレイブタイマバス制御チャネルはタ
イマバスの各部分またはセグメントを線引きするために
使用されている。
【0035】図2を参照すると、タイマバス71および
タイマバス72は、それらが同時に異なる組のタイムベ
ース値を転送できなければならないため、異なる導体を
使用しなければならないことを認識することが重要であ
る。しかしながら、タイマバス71およびタイマバス7
2は概念的には別個のバスと考えることができ、あるい
はそれらは概念的には同じグローバルタイマバスの異な
る部分またはセグメントと考えることができる。この意
味で、グローバルタイマバスはすべての必要なタイムベ
ース値を集積回路22上のすべての必要なワークおよび
他のチャネルに転送するためのバスと考えられる。重要
な点は、同時に転送されなければならないおのおのの組
のタイムベース値に対し、異なる組のタイマバス導体が
使用されなければならないことである。これらの別個の
組の導体は別個のバスと考えることができ、あるいは1
つのグローバルバスの別個の部分またはセグメントと考
えることができる。
【0036】本発明のいくつかの実施形態では、マスタ
タイマバス制御チャネル(TBCC)のみを使用してタ
イマバスを制御することができる。スレイブタイマバス
制御チャネル(TBCC)は1つのブロックのタイムベ
ースチャネルによって提供されるタイムベース値が2つ
のタイマバスの間で共有されるべき場合にのみ必要とさ
れる。あるいは、マスタTBCCは2つのタイマバスの
間でタイムベース値を共有できるようにするためスレイ
ブTBCCの代わりに使用することができる。例えば、
図2を参照すると、もしタイマバス72がタイムベース
チャネル81からのタイムベース値のみを必要とすれ
ば、スレイブTBCC64は必要とされないであろう。
スレイブTBCC64はタイムベースチャネル82から
のタイムベース値をタイマバス72に提供するために使
用される。スレイブTBCC64はマスタTBCC63
によって制御される。
【0037】本発明の別の実施形態はタイマバスに結合
されたおのおののブロックのチャネル内により少ない、
より多くの、あるいは異なるチャネルを含むことができ
る。例えば、ワークおよび他のチャネル86および87
は利用可能なチャネルのライブラリからより多くの、よ
り少ない、または異なるワークチャネルまたは他のチャ
ネルを含むことができる。
【0038】モジュール方式のチャネルの基礎単位(b
uilding blocks)からなるタイマシステ
ムにおいては、セグメント化されたタイマバス構造は、
分解能を犠牲にする可能性なしに、タイマシステムの異
なる部分へ、タイマバスの長さに沿った任意の場所に複
数のかつ異なるタイムベースを容易に提供する方法を与
える。
【0039】例えば、典型的なタイマシステムにおいて
は、ワークおよび他のチャネル86は第1の所定の分解
能を備えたあるタイムベースへのアクセスを必要とする
かもしれず、一方ワークおよび他のチャネル87は、第
2の所定の分解能を有する付加的なタイムベースに加え
て、チャネル86に関連する同じタイムベースのいくつ
かへのアクセスを必要とするかもしれない。本発明はお
のおののIOCM25〜29にわたり必要な場合グロー
バルタイマバスをセグメント化する。その結果、おのお
のの個別のタイマバス(例えば、71および72)に対
応するチャネルは分解能を犠牲にする可能性なしにそれ
らの必要とされる機能を行うためにそれらが必要なタイ
ムベースを受けとる。
【0040】また、サポートされなければならない多数
の機能のため、タイマバスが非常に長くなる可能性があ
るタイマシステムにおいては、本発明は該タイマバスの
おのおのの部分に対し十分なドライブ能力を保証するた
めタイマバスをセグメント化する方法を提供する。
【0041】本発明においては、タイマバスはタイムベ
ースチャネル(例えば、図2のタイムベースチャネル8
0の内の1つ)からタイムベース値を受けかつこのタイ
ムベース値を1つまたはそれ以上のワークおよび他のチ
ャネル(例えば、図2のワークおよび他のチャネル8
6)に提供する。タイムベース値を複数のワークおよび
他のチャネルに同時に提供することにより、ワークおよ
び他のチャネルの間でコヒーレンシー(coheren
cy)が維持される。
【0042】本発明の1実施形態では、前記タイマバス
は時間多重化された(time−multiplexe
d)バスであり、該バスは8つまでのタイムベースチャ
ネルが同じタイマバス上に時間多重された8つまでの異
なるタイムベース値を提供できるようにする。本発明の
別の実施形態では、前記タイマバスは時間多重化されて
いなくてもよく、あるいは異なる数の時間セグメントへ
と時間多重化することができる。
【0043】図2を参照すると、本発明の1実施形態で
は、マスタタイマバス制御チャネル(TBCC)61は
タイムベースチャネル80の内のどの1つまたはそれ以
上およびタイムベースチャネル81の内のどの1つまた
はそれ以上がタイマバス71上にドライブされるタイム
ベース値を提供できるかを選択する。もしマスタTBC
C61がタイムベースチャネル80の内の1つ、例えば
タイマチャネル91、を選択すれば、マスタTBCC6
1はタイマバス71をタイマチャネル91によって提供
されるタイムベース値によってドライブする。しかしな
がら、もしマスタTBCC61がタイムベースチャネル
81の内の1つ、例えばタイマチャネル92、を選択す
れば、スレイブTBCC62はタイマバス71をタイマ
チャネル92によって提供されるタイムベース値によっ
てドライブする。従って、マスタTBCCのみがどのタ
イムベースチャネルがタイムベース値を提供するかを選
択するが、マスタおよびスレイブTBCCの双方がタイ
ムベースチャネルからタイムベース値を受けることがで
きかつタイマバスをそのタイムベース値によってドライ
ブすることができる。
【0044】本発明の1実施形態では、各々のマスタT
BCCは対応するスレイブTBCCへのすべての制御を
提供する。各々のマスタTBCCにおける制御レジスタ
格納ビットはタイマバスの8つの時分割多重化されたウ
ィンドウの内の各々の1つの間にどのタイムベース選択
信号がアクティブになるかを制御するために使用される
(例えば、TBCC61における制御レジスタ格納ビッ
ト68およびTBCC63における制御レジスタ格納ビ
ット69)。マスタTBCCからのタイムベース選択信
号は(タイムベースチャネル80からの)マスタTBC
Cまたは(タイムベースチャネル81からの)スレイブ
TBCCを通して対応する時分割多重化されたタイマバ
ス71へゲーティングされるべきアクティブなタイムベ
ースを選択するために使用される。
【0045】図2を参照すると、タイムベース選択信号
50は従ってマスタTBCC61からマスタTBCC6
1に関連するタイムベースチャネル80へと、およびマ
スタTBCC61からワークおよび他のチャネル86に
わたりスレイブTBCC62へおよびその関連するタイ
ムベースチャネル81へ及ばなければならない。さら
に、タイムベース選択信号50はワークおよび他のチャ
ネル86によって整合または捕捉のようなある動作をい
つ行うべきかを知るため、どのタイムベースがタイマバ
ス71上で物理的にアクティブであるかを決定するため
に使用される。従って、タイムベース選択信号50は効
果的にタグ値をマスタTBCC61からワークおよび他
のチャネル86へ、タイムベースチャネル80へ、およ
びタイムベースチャネル81へ転送する。タイムベース
選択信号50によって転送されるタグ値はどのタイムベ
ースが現在タイマバス71上で利用可能かを示す。
【0046】本発明の1実施例においては、図2に示さ
れた各チャネルは1つまたはそれ以上のユーザがプログ
ラム可能なチャネル制御レジスタ260(図13を参
照)を有する。異なるタイプのチャネルが幾つかの同じ
レジスタを持つことができ、かつ幾つかの異なるレジス
タを持つことができる。図2および図13を参照する
と、本発明の1実施形態では、80,81および86に
おけるチャネルの各々の1つ、ならびにチャネル61お
よび62の各々、は図13に示されるように結合された
1つまたはそれ以上のチャネルレジスタ260を有す
る。
【0047】図13を参照すると、チャネル制御レジス
タ260の部分264は符号化されても良くあるいは符
号化されなくても良いユーザがプログラム可能なタグ値
を格納する。もし該タグ値が符号化されれば該符号化さ
れたタグ値はデコーダ回路261に提供され、該デコー
ダ回路261はデコードされたタグ値を出力に提供す
る。デコードされたタグ値は次にタイムベース選択信号
50によって提供されるタグ値と比較される。もしデコ
ードされたタグ値がタイムベース選択信号50に関して
ドライブされるタグ値と整合すれば、整合信号263が
肯定されて該チャネルに該チャネルがタイムベース値を
タイマバスに提供するか(タイムベースチャネルに対
し)あるいはタイムベース値をタイマバスから受信する
か(ワークおよび他のチャネルに対し)を指示する。
【0048】本発明の別の実施形態では、チャネル制御
レジスタ260の部分264に格納されたタグ値は符号
化されない。その結果、デコーダ261は必要とされな
い。かわりに、部分264は直接マルチプレクサ(MU
X)回路262の入力に提供される。部分264はMU
X回路262への制御入力として使用され出力に整合信
号263として提供するためにタイムベース選択信号5
0の内の1つを選択する。
【0049】本発明のタイマバス構造は以下の能力をサ
ポートする。第1に、タイマバス構造はその長さにわた
り任意の場所での区分化またはセグメンティション(s
egmentation)を可能にする。第2に、それ
は1対のタイマバス制御チャネル(TBCC)、即ちマ
スタTBCCおよびスレイブTBCC、がタイマバスの
セグメンティションを制御できるようにする。第3に、
それは同じタイムベースチャネル(例えば、図2のタイ
ムベースチャネル81)が同じタイムベースチャネルを
2つの異なるタイマバスセグメント(例えば、タイマバ
ス71および72)へ同時に提供できるようにする。
【0050】第4に、本発明のタイマバス構造は各々の
タイマバスセグメントがN個の時分割多重化されたタイ
ミングウィンドウへと分割できるようにする。第5に、
前記タイマバス構造は各々のタイマバスセグメントのN
のタイミングウィンドウの各々の間にドライブされるべ
きMのタイムベース値の内のいずれか1つを選択するた
めにユーザのプログラム可能性をサポートする。例え
ば、図2のタイムベースチャネル81は種々の数のタイ
ムベースチャネル(例えば、タイマチャネル92および
タイマチャネル95)を含むことができる。各々のタイ
ムベースチャネルは1つまたはそれ以上のタイムベース
値をタイマバス71へ、タイマバス72へ、あるいはタ
イマバス71および72へ同時に提供できる。数字Nお
よびMは正の整数である。
【0051】一例として、図2を参照すると、本発明の
1実施形態では、タイムベースチャネル81は5つのタ
イムベース値を提供でき(即ち、M=5)、この場合タ
イマチャネル92は2つのタイムベース値“A”および
“B”を提供し、かつタイマチャネル95は3つのタイ
ムベース値“C”,“D”および“E”を提供し、そし
てタイマバス71およびタイマバス72は各々8つのタ
イミングウィンドウ内へ時間多重できる(即ち、N=
8)。タイマバス71の8つのタイミングウィンドウは
以下のタイムベース値、A,D,A,B,A,D,A,
Cをドライブすることができ、これらはもちろんタイマ
バス71の次の8つのタイミングウィンドウの間に反復
される。これに対し、タイマバス72の8つのタイミン
グウィンドウは以下のタイムベース値、B,D,B,
D,B,D,B,Dをドライブすることができ、これら
はもちろんタイマバス72の次の8つのタイミングウィ
ンドウの間に反復される。第2および第6のタイミング
ウィンドウの間に、双方のタイマバス71およびタイマ
バス72はタイマチャネル95によって提供される同じ
タイムベース値“D”をドライブする。
【0052】図15は、タイマバス(例えば、図2のタ
イマバス71)の異なるタイムスロットの間にユーザが
どのようにして1つまたはそれ以上のタイムベース値
(即ち、TB1,TB2,TB3,TB4,TB5,T
B6,TB7およびTB8)を選択的に提供できるかを
示す8つの例を示している。タイムベースチャネル80
の各々の1つはタイムベース値TB1〜TB8の内の1
つを提供する。タイムベースチャネル80の各々の1つ
はタグ値を格納するユーザがプログラム可能なレジスタ
格納ビット264(図13を参照)を有する。前記タイ
ムベース選択信号50がタイムベースチャネルにおける
プログラムされたタグ値に整合するタグ値をドライブす
る各々のタイムスロットの間に、そのタイムベースチャ
ネルは、そのタイムベース値(即ちタイムベース値TB
1〜TB8の内の1つ)によって、タイムベースソース
バス271(図14を参照)をドライブし、かつ従って
タイマバス71をドライブする。
【0053】本発明の別の実施形態では、タイムベース
チャネルは、該チャネルがタイマバス71に提供できる
各々の別個のタイムベース値(TB1〜TB8)に対し
一組のプログラム可能なレジスタ格納ビット264を持
つことができることに注意を要する。各々の組のプログ
ラム可能なレジスタ格納ビット264は格納ビット26
4へ書込みアクセスを行うことによりプログラムできる
(例えば、図1のCPU13から)。本発明の別の実施
形態では、タグ格納ビット264はかわりにマスクプロ
グラム可能とし、それによってそれらがI/O集積回路
22の製造の間に一度固定された所定の値にプログラム
されるようにすることができる。
【0054】タイムベースチャネル81に加えて、タイ
ムベースチャネル80もまたユーザによってタイマバス
71のための1つまたはそれ以上のタイムベース値を提
供するためプログラムできることに注意を要する。同様
に、タイムベースチャネル81に加えて、タイムベース
チャネル82もまたタイマバス72に対する1つまたは
それ以上のタイムベース値を提供するためユーザによっ
てプログラムできる。従って、選択されかつタイマバス
71上にドライブするため利用できるタイムベース値の
合計数はタイムベースチャネル80およびタイムベース
チャネル81の双方によって提供されるタイムベース値
の和である。同様に、選択されかつタイマバス72上に
ドライブするため利用できるタイムベース値の合計数は
タイムベースチャネル81およびタイムベースチャネル
82の双方によって提供されるタイムベース値の和であ
る。
【0055】本発明のタイマバス構造のさらに他の能力
がある。第6に、本発明のタイマバス構造は共通のタイ
マバスセグメント(例えば、タイマバス71)への複数
のタイムベース値のゲーティングを制御するためにマス
タおよびスレイブタイマバス制御チャネル(例えば、図
2のTBCC61および62)を使用する。タイムベー
ス選択信号50はタイムベースチャネル80および81
における各々のタイムベースチャネルに対し1つの選択
信号を含む。マスタTBCC61は適切なタイミングウ
ィンドウの間にタイムベース選択信号50の内の1つを
肯定することによりタイマバス71へゲーティングする
ためあるタイムベースチャネルを選択する。
【0056】第7に、本発明のタイマバス構造はワーク
および他のチャネル86が前記タイムベースチャネルの
内のどの1つが現在タイマバス71にタイムベース値を
提供しているかを判定するためタイムベース選択信号5
0を監視できるようにする。その結果、ワークおよび他
のチャネル86の各々の1つはタイマバス71からの選
択されたタイムベース値の整合または捕捉のような、そ
れらのそれぞれの動作をいつ行うかを決定することがで
きる。ワークおよび他のチャネル86はタイムベース選
択信号50によって決定される、適切な時間にタイマバ
ス71を読み取り、かつタイマバス71から読み取った
タイムベース値を使用して動作を行う。
【0057】〈タイムベースチャネルおよびタイムベー
ス同期〉図2を参照すると、本発明は、タイマバス(例
えば、71,72)によりワークおよび他のチャネル8
6および87に提供されるタイムベース値を発生するた
めに1つまたはそれ以上のタイムベースチャネル(例え
ば、81)を使用する。IOCM25〜29(図1を参
照)のアーキテクチャアおよびバス構造は各々のIOC
Mを別個のブロックのワークおよび他のチャネル(例え
ば、85〜87)に区分しこれらの別個のブロックのワ
ークおよび他のチャネルは種々のタイムベースチャネル
(例えば、80〜81)へのアクセスが提供される。1
つのブロック内のワークおよび他のチャネルは分解能の
損失の可能性なしに異なる機能(単数または複数)を行
うために使用でき、それはブロックの各々のワークおよ
び他のチャネルはタイマバスから同じタイムベース値を
受けることができるからである。
【0058】本発明の1実施形態においては、タイムベ
ースチャネル(例えば、80,81)は以下のものの内
の1つまたはそれ以上を含むことができる。即ち、
(1)タイマバスのマスタまたはスレイブ制御を提供す
るためのタイマバス制御チャネル(TBCC)、(2)
4つまでのタイムベースを提供するためのディグリーク
ロック(degree clock)チャネル(D
C)、(3)内部的にまたは外部的に発生できるタイム
ベースを提供するためのタイマチャネル(TC)。
【0059】図2および図14を参照すると、本発明の
1実施形態では、タイムベースチャネル80の各々の1
つはタイムベースソースバス271に結合されている。
タイムベースソースバス271はタイマバス71と同様
にして時間多重化される。タイムベースチャネル80の
各々の1つはタイムベース選択信号50のタグ値をレジ
スタ部分264(図13を参照)に格納されたユーザプ
ログラムされるタグ値と比較する。もし整合が検出され
れば、整合を有するチャネルはタイムベースソースバス
271をそのチャネルのタイムベースによってドライブ
する。整合を検出しなかったチャネルはこの特定の時間
インターバルの間にタイムベースソースバス271をド
ライブしない。結合論理270(図14を参照)が使用
されて次のタイムベース値をタイムベースソースバス2
71からタイマバス71に適切な時間に提供する。
【0060】複雑なデータ処理システム(例えば、図1
7におけるデータ処理システム315)はタイマバスの
ドライブ能力、タイマバス上のデータ変更の頻度または
周波数、種々のタイマシステムの物理的な配置、あるい
はルーティングの事項のため単一のタイムベースによっ
て機能するにはあまりにも大きすぎる。幾つかのデータ
処理システムにおいては、タイマシステムを幾つかのモ
ジュール(図16を参照)の間であるいは幾つかの集積
回路(図17を参照)の間でさえも区分する必要がある
かもしれない。幾つかの集積回路の間での区分は、総合
的なシステムの大きさのため、あるいは電力出力ドライ
バ、アナログ入力調整、および複雑なデジタル回路のよ
うな異なる技術の要求のため必要とされる。図17を参
照すると、16ビットまたは32ビットのタイムベース
値をインタフェース集積回路301にあるいは電力集積
回路302に分配することはこれらのタイプの集積回路
に対する現在利用可能なパッケージング技術によって実
現できるものではない。
【0061】図16〜図19を参照すると、本発明は2
つまたはそれ以上のタイムベースチャネル(例えば、図
16および図18のマスタタイムベースチャネル285
およびスレイブタイムベースチャネル288)がちょう
ど2つの信号、即ちクロック信号328および同期信号
329、を使用して同期されかつ同期状態に保つことが
できるようにする。クロック信号328および同期信号
329は別個の集積回路(図17を参照)における、あ
るいは異なるモジュールの集積回路(図16を参照)に
おけるタイマシステムの間で放送することができる。マ
スタタイムベースチャネルはマスタクロック信号を発生
しあるいは受信し、該マスタクロック信号は前記マスタ
およびスレイブタイムベースチャネルが同時にかつ同じ
レートで確実に増分されまたは減分されるようにするた
め1つまたはそれ以上のスレイブタイムベースチャネル
に接続される。
【0062】例えば、図18においては、マスタタイム
ベースチャネル285はシステムクロック信号327を
スケーリングすることによりマスタクロック信号328
を発生する。マスタタイムベースチャネル285は次に
マスタクロック信号328を1つまたはそれ以上のスレ
イブタイムベースチャネル(例えば、288)に提供し
マスタタイムベースチャネル285およびスレイブタイ
ムベースチャネル288が同時にかつ同じレートで確実
に増分または減分できるようにする。図19に示される
別の実施形態では、マスタタイムベースチャネル304
およびスレイブタイムベースチャネル310は共に同じ
マスタクロック信号348を受信し、これは本発明の幾
つかの実施形態ではシステムクロック327(図18を
参照)と同じ信号である。しかしながら、マスタタイム
ベースチャネル304およびスレイブタイムベースチャ
ネル314は同じ量だけマスタクロック信号348をス
ケーリングする。従って、タイムベースダウンカウンタ
340およびタイムベースダウンカウンタ341は同時
にかつ同じレートで減分される。
【0063】もしデータ処理システム(例えば、図17
の315)が固定周波数のシステムクロックを使用すれ
ば、かつもしそのシステムクロックがマスタタイムベー
スチャネルへの入力としておよび1つまたはそれ以上の
スレイブタイムベースチャネルへの入力として利用でき
れば、そのシステムクロックはマスタクロック信号とし
て使用でき、同じプリスケール分割値(prescal
e divide values)がマスタおよびスレ
イブタイムベースチャネルのプリスケール回路326,
346および350(図18および図19を参照)にお
いて選択されることができる。これはマスタクロック信
号に対し新しい相互接続導体を加える必要性を除去する
可能性がある。時間領域にない、あるいは不規則な周波
数のシステムクロック信号を使用するデータ処理システ
ムにおいては、マスタタイムベースチャネルはマスタク
ロック信号を発生する必要がある。重要なことは同期さ
れるべきすべてのタイムベースチャネル(例えば、図1
8の285および288、および図19の304および
310)は同じ周波数および位相を有するマスタクロッ
ク信号(例えば、図18の328、および図19の34
8)によってクロッキングされなければならないことで
ある。
【0064】同期信号(例えば、図18の327、およ
び図19の349)は次にすべてのタイムベースチャネ
ル(例えば、図18の285および288、および図1
9の304および310)を同じ初期値にセットするた
めに必要とされ、該初期値からそれらが上に述べたマス
タクロック信号によって増分/減分され得る。フリーラ
ンカウンタを使用するタイムベースチャネルに対して
は、最も都合のよい同期ポイントはそれがダウンカウン
タであるかアップカウンタであるか(図18を参照)に
応じて$0000または$FFFFへのロールオーバポ
イントである。モジュラスタイムベースに対しては、モ
ジュラス値がカウンタにロードされるポイントは最も都
合のよい同期ポイントである(図19を参照)。
【0065】これらの同期ポイントは、マスタタイムベ
ースチャネル(例えば、図18の285、および図19
の304)がすでに他の目的のために必要とされた必要
な検出回路(例えば、図18の330、および図19の
351)を持っているため、選択されている。さらに、
これらの選択された同期ポイントにおけるタイムベース
値はすべてのスレイブタイムベースチャネルによって入
手可能でありあるいは容易に発生される(例えば、ダウ
ンカウンタに対しては$0000、アップカウンタに対
しては$FFFF、およびモジュラスカウンタに対して
はモジュラス値)。前記マスタタイムベースチャネルは
同期ポイントの発生を検出し、かつ同期信号を発生する
ために使用される。該同期信号は次に1つまたはそれ以
上のスレイブタイムベースチャネルに提供され、そこで
該同期信号はすべてのタイムベース値を同時に同じ値に
リセットするために使用される。
【0066】いったんおのおののタイムベースチャネル
におけるカウンタ(図18の320および321、およ
び図19の340および341)が同じ値にリセットさ
れ、かつ同じ周波数および位相のマスタクロック信号に
よってクロッキングされると、前記カウンタはすべての
カウント値に対して完全に同期した状態に留まるべきで
ある。前記タイムベースの内の1つがノイズまたは他の
妨害によって同期を損なわれると、それは次の同期ポイ
ントにおいて前記同期信号により再同期されることにな
る。
【0067】本発明は従って異なるI/O制御モジュー
ル(IOCM)281〜284(図16を参照)におけ
るあるいは異なる集積回路300〜302(図17を参
照)上のタイムベースチャネルが同期された、コヒーレ
ントなタイムベース値を発生しかつ使用できるようにす
る。回路のローディングの制約のため、タイムベースチ
ャネル80および81からタイムベース値を受けるため
に同じタイマバス71に結合することができるワークお
よび他のチャネル(例えば、図2の86)の数に関して
上限がある。本発明は従って異なるIOCMにおけるお
よび異なる集積回路上のタイムベースチャネルが同期し
た、コヒーレントなタイムベース値を異なるタイマバス
に結合された異なるブロックのワークおよび他のチャネ
ルに提供できるようにする。最少数の集積回路ピンを使
用しながら、タイマチャネルを周辺集積回路(例えば、
図17の301および302)に加える能力は十分なも
のである。
【0068】図16を参照すると、本発明の1実施形態
においては、タイマシステム集積回路280におけるI
OCM281は図2に示されたすべての回路を含むこと
ができることに注目すべきである。同様に、タイマシス
テム集積回路280のIOCM284は図2に示された
すべての回路の複製物を含むことができる。モジュール
間バス24(図1を参照)、多分グローバルチャネル通
信バス200(図10を参照)、マスタクロック信号3
28、および同期信号329、より他は、IOCM28
1およびIOCM288はそれらの間に情報を転送する
ために何らかの他の導体は必要としない。
【0069】同期タイムベースチャネルに関しては、用
語「マスタ」および「スレイブ」はどのタイムベースチ
ャネルが同期信号を提供し(マスタ)およびどのタイム
ベースチャネルが同期信号を受信(スレイブ)するかを
示すために使用される。用語「マスタ」および「スレイ
ブ」はマスタおよびスレイブタイマバス制御チャネルに
関しては異なる意味を有し、かつマスタおよびスレイブ
ピン制御チャネルに関して異なる意味を有する。しかし
ながら、一般に、用語「マスタ」はより多くの制御信号
を提供する回路を示し、かつ用語「スレイブ」はより少
ない制御信号を提供しまたはその制御信号の内より多く
をマスタから受信する回路を示す。
【0070】<ピン/ステータスバス構造>図1および
図2を参照すると、タイマバス71および72と同様
に、ピン/ステータスバス75〜77はそれらが拡張で
き、あるいは異なる信号を伝達する別個のバスを作成す
るためセグメント化できる点でモジュール方式である。
本発明はピン制御チャネル(PCC)51〜53の使用
によって容易に別個のバスまたはセグメントへ区分でき
る1つまたはそれ以上のピン/ステータスバス75〜7
7を使用する。
【0071】ピン/ステータスバス75〜77はIOC
M25内でチャネルの間で情報を転送するために使用さ
れる。本発明のいくつかの実施形態では、1つまたはそ
れ以上のピン/ステータスバス(例えば、77)はまた
情報を1つのIOCM(例えば、25)から異なるIO
CM(例えば、26)へ転送するために使用できる。さ
らに、ピン/ステータスバス75〜77は集積回路ピン
33およびIOCM25の1つまたはそれ以上のチャネ
ルの間で情報を転送するために使用される。集積回路ピ
ン31〜35はI/O集積回路22の外部に対し情報を
受信しかつ提供するために使用される。おのおののIO
CM25〜29は情報をIOCMのチャネルの間で、か
つIOCMのチャネルと1つまたはそれ以上の集積回路
ピン31〜35の間で転送するために1つまたはそれ以
上のピン/ステータスバスを有する。
【0072】本発明のいくつかの実施形態においては、
ピン/ステータスバス75〜77はチャネルが同じピン
/ステータスバスに結合された他のチャネルに影響を与
えかつ制御するウエイ(way)として作用する。前記
ピン/ステータスバス75〜77はまたチャネルが出力
集積回路ピンの論理レベルに影響を与えかつ制御するた
めの、およびチャネルが入力集積回路ピンの論理レベル
によって影響されまたは制御されるウエイとして作用す
る。
【0073】本発明の1実施形態では、前記ピン/ステ
ータスバス(例えば、図2の75〜77)のおのおのの
1つは4つの主な目的、すなわち、(1)入力としてプ
ログラムされる1つまたはそれ以上の集積回路ピンの論
理レベルを示すために、(2)出力としてプログラムさ
れる1つまたはそれ以上の集積回路ピンの論理レベルを
決定するために、(3)1つまたはそれ以上のチャネル
への入力事象のソースとして機能するために、そして
(4)1つまたはそれ以上のチャネルからの出力事象の
デスティネイションとして機能するために、役立つこと
ができる。
【0074】CPU13(図1を参照)によってチャネ
ルに書き込まれるデータのコヒーレンシーは本質的な要
求である。コヒーレンシーは前記ピン/ステータスバス
の使用によって保証される。チャネルの間の制御の同時
性はこれらのバスによって提供され、従ってチャネルの
動作は互いに同期させることができる。CPU13はま
たピン制御チャネルにおける制御レジスタによってこれ
らのバスに影響を与えることができるから、チャネル動
作はCPU13の動作と同期させることができる。その
結果、チャネルデータのコヒーレントなアクセスがピン
/ステータスバスのCPU13の制御により保証するこ
とができる。
【0075】IOCM25〜29のアーキテクチャおよ
びバス構造はピン/ステータスバスをその長さに沿って
任意の場所で容易にセグメント化する方法を提供する。
その結果、チャネルは別個のブロックのチャネルに区分
されこれらは異なる集積回路ピンへのアクセスが提供さ
れる。ブロック内の各チャネルは複数のまたは1つの集
積回路ピンに情報を提供しまたはそれらから情報を受
け、あるいは何らの集積回路ピンにも情報を提供せずあ
るいは情報を受けないようにすることができる。また、
ブロック内の1つより多くのチャネルが同じ集積回路ピ
ンに情報を提供しまたは同じ集積回路ピンから情報を受
信することができる。図2を参照すると、異なるピン/
ステータスバス75〜77へのアクセスを有する別個の
ブロックへのチャネルの区分は異なるタイマバス71〜
72へのアクセスを有する別個のブロックへのチャネル
の区分とは独立であることが注目されるべきである。
【0076】一例として、図2を参照すると、ピン/ス
テータスバス75は57と名付けられたチャネルのブロ
ックに対応し、かつピン/ステータスバス76は58と
名付けられたチャネルのブロックに対応することが注目
される。ピン/ステータスバス75はピンおよび/また
はステータス情報をチャネル57の間で転送するために
使用され、かつ同様にピン/ステータスバス76はチャ
ネル58の間でピンおよび/またはステータス情報を転
送するために使用される。
【0077】タイマバス制御チャネル(例えば、図2の
61〜64)と異なり、ピン制御チャネルは「マスタ」
および「スレイブ」バージョンにならない。代わりに、
おのおののピン制御チャネルはその対応するピン/ステ
ータスバスを制御する責務を有する。例えば、図2にお
いて、ピン制御チャネル51はピン/ステータスバス7
5を制御し、ピン制御チャネル52はピン/ステータス
バス76を制御し、かつピン制御チャネル53はピン/
ステータスバス77を制御する。
【0078】しかしながら、図3に示されるように、ピ
ン制御共有論理106はピン/ステータスバス118の
1つまたはそれ以上の導体をピン/ステータスバス11
9の1つまたはそれ以上の導体に選択的に結合するため
に使用でき、従って1つの拡張されたピン/ステータス
バス(118,119)を形成できる可能性を有してい
る。例えば、ピン制御共有論理106はピン/ステータ
スバス118およびピン/ステータスバス119をリン
クしそれによってバス118および119の1つまたは
それ以上の導体が同じ値または信号を転送するよう使用
できる。その結果、ピン制御共有論理106はピン/ス
テータスバス118および119の一部またはすべて
が、可能性として2倍多くのチャネルおよび2倍多くの
集積回路ピンの間で同じ信号を伝達しかつ同じ情報を転
送する、1つのバスへと効果的に結合されかつ拡張でき
るようにする。
【0079】図3を参照すると、図3に示されたIOC
M26の部分は4つのピン/ステータスバス116〜1
19を含む。ピン/ステータスバス116はピン制御チ
ャネル109によって制御されかつ何らの情報も他のピ
ン/ステータスバスに転送しない。ピン/ステータスバ
ス117はピン制御チャネル108によって制御されか
つ何らの情報も他のピン/ステータスバスに転送しな
い。ピン/ステータスバス118はピン制御チャネル1
05によって制御されかつピン制御共有論理106によ
って情報をピン/ステータスバス119へおよび/また
はから転送する。ピン/ステータスバス119はピン制
御チャネル107によって制御されかつ情報をピン制御
共有論理106によってピン/ステータスバス118へ
および/またはピン/ステータスバス118から転送す
る。
【0080】本発明の1実施形態においては、おのおの
のピン/ステータスバス(例えば、118)はピン情報
を転送するために使用される8つの導体(例えば、11
2)およびピン情報またはステータス情報を転送するよ
う個々にプログラム可能な8つの導体(例えば、11
3)を有する。ピン制御チャネル105における制御レ
ジスタ格納ビット120は、おのおののピン/ステータ
ス情報導体113に対し、該導体がチャネル123と1
つまたはそれ以上の集積回路ピン110の間でピン情報
を転送するか、あるいは前記導体がチャネル123の間
でステータス情報を転送するかを選択的に判定するため
に使用される。同様に、ピン制御チャネル107におけ
る制御レジスタ格納ビット122は、おのおののピン/
ステータス情報導体115に対して、前記導体がチャネ
ル125と1つまたはそれ以上の集積回路ピン111と
の間でピン情報を転送するか、あるいは前記導体がチャ
ネル125の間でステータス情報を転送するかを選択的
に決定するために使用される。
【0081】ピン制御共有論理106における制御レジ
スタ格納ビット121の一部は前記ピン/ステータスバ
ス118およびピン/ステータスバス119の導体の選
択的な結合を制御するために使用される。本発明の別の
実施形態では、ピン制御共有論理106に対する制御レ
ジスタ格納ビット121の一部は2重化されかつ物理的
にピン制御チャネル(PCC)105および107の双
方の回路の部分として配置することができる。前記2つ
のPCC105および107の内の1つにおいて制御レ
ジスタ格納ビット121のその部分をアクティベイトす
るためにマスクオプションの変更が必要であろう。
【0082】例えば、マスクオプションの変更はPCC
105における制御レジスタ格納ビット121の部分を
活性化するために使用され、一方PCC107における
制御レジスタ格納ビット121の2重化部分はインアク
ティブな状態に留められる。PCC105における制御
レジスタ格納ビット121のアクティベイトされた部分
は従ってピン制御共有論理106に結合されかつピン制
御共有論理106を制御するために使用され、一方PC
C107における制御レジスタ格納ビット121のイン
アクティブな2重化部分はピン制御共有論理106に結
合されずかつピン制御共有論理106に対して何らの影
響も与えない。本発明の1実施形態では、制御レジスタ
格納ビット121のアクティベイトされた部分を有す
る、PCC105は「マスタ」PCCと考えられ、一
方、制御レジスタ格納ビット121のインアクティブな
部分を有する、PCC107は「スレイブ」PCCと考
えられる。
【0083】図2を参照すると、ピン/ステータスバス
75〜77はおのおの異なる導体を使用しなければなら
ず、それはそれらがおのおの同時に異なる組のピン/ス
テータス値を転送することができなければならないため
であることを認識するのは重要である。しかしながら、
ピン/ステータスバス75〜77は概念的には別個のバ
スと考えることができ、あるいはそれらは概念的には同
じグローバルピン/ステータスバスの異なる部分または
セグメントと考えることができる。この点で、前記グロ
ーバルピン/ステータスバスはすべての必要なピン/ス
テータス値をすべての必要なチャネルにかつ集積回路2
2上のすべての必要なピンに転送するためのバスと考え
られる。重要なポイントは同時に転送されなければなら
ないおのおのの組のピン/ステータス値に対し、異なる
組のピン/ステータスバス導体が使用されなければなら
ないことである。これらの別個の組の導体は別個のバス
と考えることができるか、あるいは1つのグローバルバ
スの別個の部分またはセグメントと考えることができ
る。
【0084】本発明の別の実施例は1つのピン/ステー
タスバスに結合されたおのおののブロックのチャネル内
により少ない、より多い、あるいは異なるチャネルを含
むことが可能なことに注意を要する。例えば、図2を参
照すると、チャネル57および58は利用可能なチャネ
ルのライブラリからより多くの、より少ない、あるいは
異なるチャネルを含むことができる。
【0085】モジュール方式のチャネルの基礎単位(b
uilding blocks)からなるタイマシステ
ムにおいては、セグメント化されたピン/ステータスバ
ス構造は、分解能を犠牲にしない可能性を備えて、タイ
マシステムの異なる部分に、前記ピン/ステータスバス
の長さに沿った任意の場所に複数のおよび異なる組のピ
ン/ステータス情報を容易に提供する方法を与える。
【0086】例えば、典型的なタイマシステム(図2を
参照)においては、チャネル58はお互いと情報を交換
する必要があるかもしれずかつピン制御チャネル52に
よって制御される集積回路ピン(図示せず)へのアクセ
スを必要とするかもしれず、一方チャネル57はお互い
と情報を交換する必要があるかもしれずかつピン制御チ
ャネル51によって制御される集積回路ピン(図示せ
ず)へのアクセスを必要とするかもしれない。図3を参
照すると、もし1つまたはそれ以上のチャネル123が
1つまたはそれ以上のチャネル125に情報を提供しま
たは情報を受信する必要があれば、ピン/ステータスバ
ス118およびピン/ステータスバス119が情報を共
有しかつ同じ組のピン/ステータス値を同時に転送する
ためにピン制御チャネル105および107の間にピン
制御共有論理106が挿入されなければならない。本発
明はおのおののIOCM25〜29にわたり必要な場合
にグローバルピン/ステータスバスをセグメント化す
る。その結果、おのおのの個別のピン/ステータスバス
(例えば、75,76および77)に対応するチャネル
は必要なチャネル機能を行うのに必要なピン/ステータ
ス情報を受信しかつ提供する。
【0087】サポートされなければならない多数の機能
のため、ピン/ステータスバスが非常に長い可能性があ
るタイマシステムにおいては、本発明は前記ピン/ステ
ータスバスの各部分に対する十分なドライブ能力を保証
するためにピン/ステータスバスをセグメント化する方
法を提供する。
【0088】<出力ピンの柔軟性あるANDおよびOR
操作>図3に示されたピン/ステータスバスの特定の実
施形態は1つの可能な実施形態にすぎず、数多くの他の
ものがある。図4は、ユーザが出力ピンの論理状態を決
定するために複数チャネルの出力を論理的に組み合わせ
ることができるようにするピン/ステータスバスの別の
実施形態を示す。
【0089】図4に示される実施形態では、図1のおの
おののピン/ステータスバス75〜77は、それぞれ、
入力状態バス143〜145および、それぞれ、出力事
象バス131〜133を使用して実施される。おのおの
の入力状態バス143〜145はそれぞれ8つのピン導
体146,148および150、並びにそれぞれ8つの
ピン/ステータス導体147,149および151を含
む。おのおのの出力事象バス131〜133はそれぞれ
8つのセット導体134,137および140、それぞ
れ8つのクリア導体135,138および141、そし
てそれぞれ8つのトグル導体136,139および14
2を含む。
【0090】出力事象バス132は、ピン制御チャネル
52に対応しかつ制御される、ピン195の出力状態を
決定するために使用される。チャネル58における種々
のチャネルはピン195の論理状態に影響を与えるため
出力事象バスを使用する。ピン195のおのおのの1つ
はセット導体137の内の1つ、クリア導体138の内
の1つ、およびトグル導体139の内の1つに結合され
ている。従って、特定の出力ピン195の論理状態は、
その特定のピンに結合された、3つの導体の論理状態、
すなわちセット、クリアおよびトグル、によって決定さ
れる。しかしながら、セット、クリアおよびトグル導体
はピン制御チャネル52によって入力として構築された
ピン195に対しては何らの影響も与えないことに注意
を要する。ピンに関連するセット、クリアおよびトグル
導体はそのピンが出力ピンとして構築されている場合に
のみ使用される。
【0091】さらに図4を参照すると、本発明の1実施
形態では、24の導体137〜139のおのおのの1つ
は他の導体へワイヤNORすることができるワイヤNO
R導体である。本発明の1実施形態では、1つのブロッ
クのワークチャネル(例えば、160,161)内のす
べての組の導体137は一緒にワイヤNOR結合されて
いる。同様に、1つのブロックのワークチャネル(例え
ば、160,161)内のすべてのクリア導体138は
一緒にワイヤNOR結合されている。同様に、1つのブ
ロックのワークチャネル(例えば、160,161)内
のすべてのトグル導体139は一緒にワイヤNOR結合
されている。
【0092】一例として、ピン/ステータスバス76
(図4を参照)の動作につき説明する。図5はピン16
5が出力ピンとして構築されている場合に集積回路ピン
165の出力状態を制御するために使用されるピン/ス
テータスバス76の一部を示す。セット導体157は図
4に示される8つのセット導体137の内の1つであ
り、クリア導体158は図4に示される8つのクリア導
体138の内の1つであり、かつトグル導体159は図
4に示される8つのセット導体139の内の1つであ
る。導体157〜159のおのおのの1つは論理レベル
“1”にプリチャージされたワイヤNOR導体である。
従って、もし整合チャネル160のピン制御回路162
が導体171上に論理レベル“1”をドライブし、一方
整合チャネル161のピン制御回路163が導体168
上に論理レベル“0”をドライブすれば、セット導体1
57の論理レベルは論理レベル“0”となるであろう。
その結果、ワイヤNOR導体に対しては、論理レベル
“0”が支配的になる。別の実施形態ではワイヤOR導
体を使用することができる。
【0093】ピン制御回路164はセット導体157、
クリア導体158、およびトグル導体159のワイヤN
ORの結果を受信する。ピン制御回路164はまた導体
174によってピン165の現在の論理レベルを受信す
る。ピン制御回路164は導体157〜159および1
74の論理レベルを使用して結果導体168の論理レベ
ルを決定し、かつ従って集積回路ピン165の次の出力
論理レベルを決定する。
【0094】図6は、ピン制御回路164の1実施形態
によって結果導体168の論理レベルを決定し、かつ従
って集積回路ピン165の次の出力論理レベルを決定す
るために使用される真理値表を示す。結果導体168は
ピン165の出力論理レベルをドライブするために使用
される。図6に示される真理値表は前記セット、クリア
およびトグル導体157〜159のすべての可能な状態
に対するピン165のふるまいを決定するプロトコルを
規定する。図6のテーブルについては、セット、クリア
およびトグル導体157〜159の肯定された状態は論
理レベル“0”であり、セット、クリアおよびトグル導
体157〜159の否定された状態は論理レベル“1”
である。このプロトコルは次のように説明することがで
きる。すなわち、(1)もしトグル導体159が肯定さ
れれば、トグルが常に勝利しかつピン165がトグルさ
れ、(2)もしすべての導体157〜159が否定され
れば、ピン165は同じ論理レベルに留まり、かつ
(3)もしセット導体157およびクリア導体158の
双方が肯定されれば、かつトグル導体159が否定され
れば、ピン165は同じ論理レベルに留まる。別の実施
形態では異なるプロトコルおよび異なる真理値表を使用
することができる。
【0095】セット(137)、クリア(138)、お
よびトグル(139)に対して別個の導体を有する出力
事象バス132を使用することにより、本発明はサービ
スプロセッサの介在なしに複数チャネルの出力に関して
論理動作を行うことができる。これは非常に強力かつ柔
軟性ある特徴的機能である。
【0096】従来技術では、サービスプロセッサ(例え
ば、中央処理ユニット)による介在は複数またはマルチ
タイマチャネルの状態の結果としてタイマ出力ピンの論
理レベルの変更を開始するため必要とされた。サービス
プロセッサは割込みによって、または何らかの他のメカ
ニズムによって介在するために必要とされた。サービス
プロセッサは複数またはマルチタイマチャネルの状態を
認識し、かつそれに応じて、タイマ出力ピンに対応する
論理レベルの変化を生じさせた。整合チャネルの状態の
例の一例は整合が生じたか否かである。
【0097】選択されたチャネルの状態を認識すると、
サービスプロセッサは該状態に関して比較を行い、かつ
ある自動車用の用途に対しては以下の結果の1つを生成
した。すなわち、(1)すべての選択されたチャネルの
状態が真であれば出力ピンをセットし、(2)もしすべ
ての選択されたチャネルの状態が真であれば出力ピンを
クリアし、(3)もしいずれかの選択されたチャネルの
状態が真であれば出力ピンをセットし、あるいは(4)
もしいずれかの選択されたチャネルの状態が真であれば
出力ピンをクリアする。残念なことに、種々のチャネル
の状態を比較しかつ出力ピンが適切な出力論理レベルに
ドライブされるようにするためにサービスプロセッサを
使用することはかなりの量のソフトウエアのオーバヘッ
ドを必要とした。サービスプロセッサによる介在は複数
チャネルの状態の結果としてタイミングアキュレットな
またはタイミングが正確な(timing−accur
ate)出力ピンの状態をセットまたはクリアするため
に必要とされたから、サービスプロセッサの遅れまたは
潜伏のため該タイミングアキュレットな出力にタイミン
グエラーが生じた。
【0098】本発明は、サービスプロセッサによる介在
なしに、タイマチャネルを上に述べた4つのタイプの
「論理」動作を行うよう構築できるようにする。その結
果、サービスプロセッサの遅れによるタイミングエラー
は前記タイミングアキュレットな出力に導入されること
はない。論理的に組み合わすことができるタイマチャネ
ル出力の数はタイマシステムにおいて利用可能なチャネ
ルの合計数によってのみ理論的に制限される。
【0099】本発明は、図5のピン165のような、タ
イマチャネルの出力ピンのユーザがプログラム可能な論
理的AND操作およびOR操作を提供する。1実施形態
では、本発明は以下のアルゴリズムに従ってサービスプ
ロセッサによる介在なしにピンの状態を制御するため選
択的にチャネルの部分集合またはサブセットを構築する
能力を備えた複数またはマルチ独立タイマチャネルおよ
び出力タイマピンを有するシステムを提供する。すなわ
ち、もしすべての選択されたチャネルの出力状態が真で
あれば前記ピンをセットし、(2)もしすべての選択さ
れたチャネルの出力状態が真であれば前記ピンをクリア
し、(3)もし前記選択されたチャネルのいずれかの出
力状態が真であれば前記ピンをセットし、かつ(4)も
し前記選択されたチャネルの内のいずれかの出力状態が
真であれば前記ピンをクリアする。
【0100】図5を参照すると、おのおののチャネルは
1つまたはそれ以上の制御レジスタを有する。整合チャ
ネル160は制御レジスタ166を有し、整合チャネル
161は制御レジスタ167を有し、かつピン制御チャ
ネルは制御レジスタ184を有する。図7は図5の制御
レジスタ166の一部および制御レジスタ167の一部
を示す。1実施形態では、制御レジスタ166は16の
集積回路ピンの内の1つを選択するために使用される4
つのピン選択制御ビット180を有し、かつ制御レジス
タ167は16の集積回路ピンの内の1つを選択するた
めに使用される4つのピン選択制御ビット181を有す
る。図5に示される本発明の実施形態では、ピン選択制
御ビット180および181はユーザによりピン165
を選択するためにプログラムされている。
【0101】また、本発明の1実施形態では、制御レジ
スタ166は整合チャネル160が出力ピン165に生
成する機能を選択するために使用される3つのピン出力
スティミュラス(stimulus)制御ビット182
を有する。同様に、制御レジスタ167は整合チャネル
161が出力ピン165に生成する機能を選択するため
に使用される3つのピン出力スティミュラス制御ビット
183を有する。図8は本発明の1実施形態においてピ
ン出力スティミュラス制御ビット182および183に
よってユーザプログラム可能な機能を示す。本発明の別
の実施形態では種々の制御ビットに対してより多くのビ
ット、より少ないビット、あるいは異なるビットの符号
化を使用することができる。
【0102】図8を参照すると、ユーザがプログラムし
た機能は整合が生じたときにおのおのの整合チャネル1
60〜161がどのようにセット導体157、クリア導
体158、およびトグル導体159に影響を与えるかを
決定することが分かる。例えば、もし整合チャネル16
0がディスエーブル機能のためにプログラムされれば、
整合チャネル160は整合が生じた場合に導体157〜
159に対し何らの影響も持たない。もし整合チャネル
160が立上り機能のためにプログラムされれば、整合
チャネル160は整合が生じた場合にセット導体157
を(セット導体157上に論理レベル“1”をドライブ
することにより)1クロック期間の間肯定する。もし整
合チャネル160が立下り機能のためにプログラムされ
れば、整合チャネル160は整合が生じた場合に1クロ
ック期間または周期の間クリア導体158を(クリア導
体158上に論理レベル“0”をドライブすることによ
り)肯定することになる。もし整合チャネル160がト
グル機能のためにプログラムされれば、整合チャネル1
60は整合が生じた場合に1クロック期間または周期の
間(トグル導体159上に論理レベル“0”をドライブ
することにより)トグル導体159を肯定する。
【0103】残りの4つの機能、すなわちAND−クリ
ア(AND−to−clear)、AND−セット(A
ND−to−set)、OR−クリア(OR−to−c
lear)、およびOR−セット(OR−to−se
t)、はタイマチャネルの出力のユーザがプログラム可
能な論理的AND操作およびOR操作を可能にする機能
である。図9は、整合チャネル160および161の状
態の論理的ANDおよび論理的OR操作によりピン16
5に生成される結果の例を示す。真に対する“T”は整
合が生じたことを示し、かつ偽に対する“F”は整合が
生じなかったことを示す。もし両方の整合チャネル16
0および161がAND−セットに対してプログラムさ
れていれば、ピン165の次の論理レベルは整合チャネ
ル160および整合チャネル161の双方に整合が生じ
た場合にのみセットされる(すなわち、論理レベル
“1”)。従って、AND−セットは出力ピン165を
セットするためには整合チャネル160および整合チャ
ネル161の双方に整合が生じなければならないことを
意味する。同様に、AND−クリアは出力ピン165を
クリアするためには整合チャネル160および整合チャ
ネル161の双方に整合が生じなければならないことを
意味する。
【0104】もし双方の整合チャネル160および16
1がOR−セット(OR−to−set)に対してプロ
グラムされれば、ピン165の次の論理レベルは整合チ
ャネル160または整合チャネル161において整合が
生じたときにセットされることになる(すなわち、論理
レベル“1”)。したがって、OR−セットは出力ピン
165をセットするために整合チャネル160および1
61のいずれか1つに整合が生じなければならないこと
を意味する。同様に、OR−クリアは出力ピン165を
クリアするために整合チャネル160および161のい
ずれかに整合が生じなければならないことを意味する。
図9に示された例は2つの整合チャネルを使用するが、
任意の数のチャネルを使用できる。
【0105】さらに、種々の論理的ANDおよびOR機
能を組合わせることができる。例えば、カウンタチャネ
ル185のような、付加的なチャネルを図5の整合チャ
ネル160とピン制御チャネル52との間に置くことが
できる。このカウンタチャネル185はピン165を選
択するためにユーザプログラムされる制御レジスタ18
7にピン選択ビットを持つことができる。したがって、
カウンタチャネル185は導体157〜159をドライ
ブすることができる。もし整合チャネル160および1
61がAND−セットに対してプログラムされ、かつカ
ウンタチャネル185がOR−セットに対してプログラ
ムされれば、ピン165はカウンタチャネル185がそ
のカウント値に到達すれば、あるいは双方の整合チャネ
ル160および161が整合を有すればセットされるこ
とになる。本発明は種々のチャネルの状態を含む一層複
雑なブール方程式を形成するために使用できる。
【0106】図5を参照すると、セット、クリアおよび
トグル導体157〜159それら自体が、それらのワイ
ヤNORの性格のため、実際に論理的ANDおよびOR
操作を行なうために使用される。どのようにして論理的
ANDおよびORが行なわれるかにつき説明する。本発
明の一実施形態では、セット導体157およびクリア導
体158はAND−クリアおよびAND−セット機能を
実施するために使用され、かつトグル導体159はOR
−クリアおよびOR−セット機能を実施するために使用
される。
【0107】もし整合チャネル160がAND−セット
(AND−to−set)に対してプログラムされれ
ば、整合チャネル160は整合が生じるまでクリア導体
158を肯定する。整合導体157およびトグル導体1
59は否定された状態(すなわち、論理レベル“1”)
にプリチャージされた状態に留まる。整合が生じた場
合、整合チャネル160は前記セット導体157を肯定
しかつピン165の論理レベルが論理レベル“1”(す
なわち、セット)に変わるまでそれを肯定し続ける。整
合チャネル160は入力状態バス144(図4を参照)
によってピン165の出力論理レベルを受けることに注
意を要する。ピン165がセット状態に留まっている限
り、整合チャネル160は導体157〜159のいずれ
をも肯定しない。ピン165は次に他のチャネルによっ
て、あるいはもしそれがソフトウェアによって再構築さ
れていれば整合チャネル160によってクリアすること
ができる。いったんピン165がクリアされると、整合
チャネル160は再び整合が生じるまでクリア導体15
8を肯定する。
【0108】もし整合チャネル160がAND−クリア
(AND−to−clear)に対してプログラムされ
れば、整合チャネル160は整合が生じるまでセット導
体157を肯定する。クリア導体158およびトグル導
体159は否定された状態(すなわち、論理レベル
“1”)にプリチャージされた状態に留まることに注意
を要する。整合が生じた場合、整合チャネル160はク
リア導体158を肯定しかつピン165の論理レベルが
論理レベル“0”(すなわち、クリア)に変わるまでそ
れを肯定し続ける。整合チャネル160は入力状態バス
144(図4を参照)によってピン165の出力論理レ
ベルを受けることに注意を要する。ピン165がクリア
に留まっている限り、整合チャネル160は導体157
〜159のいずれも肯定しない。ピン165は次にもし
それがソフトウェアによって再構築されていれば他のチ
ャネルによって、あるいは整合チャネル160によって
セットすることができる。いったんピン165がセット
されると、整合チャネル160は再び整合が生じるまで
セット導体157を肯定する。
【0109】もし整合チャネル160がOR−セット
(OR−to−set)に対してプログラムされれば、
整合チャネル160は整合が生じるまで導体157〜1
59のいずれも肯定しない。導体157〜159は否定
された状態(すなわち、論理レベル“1”)にプリチャ
ージされた状態に止まることに注意を要する。ピン16
5は他のチャネルによって、あるいは異なって構築され
た整合チャネル160によってクリアされなければなら
ない。整合が生じた場合、整合チャネル160はトグル
導体159を肯定しかつピン165を論理レベルが反対
の論理レベル(すなわち、セット)に変わるまでそれを
肯定し続ける。整合チャネル160は入力状態バス14
4(図4を参照)によってピン165の出力論理レベル
を受信することに注意を要する。ピン165がセットに
留まっている限り、整合チャネル160は導体157〜
159のいずれも肯定しない。ピン165は次に他のチ
ャネルによって、あるいは整合チャネル160によって
もしそれがソフトウェアによって再構築されていればク
リアすることができる。いったんピン165がクリアさ
れると、整合チャネル160は再びトグル導体159を
肯定するために整合が生じるまで待機する。
【0110】もし整合チャネル160がOR−クリア
(OR−to−clear)に対してプログラムされれ
ば、整合チャネル160は整合が生じるまで導体157
〜159のいずれも肯定しない。導体157〜159は
否定状態(すなわち、論理レベル“1”)にプリチャー
ジされた状態に留まることに注意を要する。ピン165
は他のチャネルによって、あるいは異なるように構成さ
れた整合チャネル160によってセットされなければな
らない。整合が生じた場合、整合チャネル160はトグ
ル導体159を肯定しかつピン165の論理レベルが反
対の論理レベル(すなわち、クリアされた状態)に変化
するまでそれを肯定し続ける。整合チャネル160は入
力状態バス144(図4を参照)によってピン165の
出力論理レベルを受信することに注意を要する。ピン1
65がクリアされた状態に留まっている限り、整合チャ
ネル160は導体157〜159のいずれも肯定しな
い。ピン165は次に他のチャネルによって、またはも
しそれがソフトウェアによって再構築されていれば整合
チャネル160によってセットすることができる。いっ
たんピン165がセットされると、整合チャネル160
は再びトグル導体159を肯定するため整合が生じるま
で待機する。
【0111】本発明の一実施形態では、整合チャネル1
60がピン165が応答するのを待機している間に整合
チャネル160に生じる整合は無視される。別の実施形
態では、1つまたはそれ以上の整合が生じたという情報
は記憶されかつ次の利用可能な機会にピン165に影響
を与えるため使用される。
【0112】図5の回路の動作についての上の説明はま
た他のチャネル57〜58におよび図4に示された他の
出力事象バス導体131〜133に適用できることに注
意を要する。
【0113】図4に示される入力状態バス143〜14
5の動作につき説明する。一実施形態では、入力状態バ
ス143,144および145は各々それぞれ8つのピ
ン導体146,148および150、ならびにそれぞれ
8つのピン−ステータス導体147,149および15
1を含む。したがって、各々のピン/ステータスバス
(例えば、118)はピン情報を転送するために使用さ
れる8つの導体(例えば、112)、およびピン情報ま
たはステータス情報を転送するために個々にプログラム
できる8つの導体(例えば、113)を有する。
【0114】ピン制御チャネル52における制御レジス
タ格納ビット192は、各々のピン/ステータス導体1
49に対し、該導体がチャネル58と1つまたはそれ以
上の集積回路ピン195との間で情報を転送するか、あ
るいは前記導体が丁度チャネル58の間でステータス情
報を転送するかを選択的に決定するために使用される。
同様に、ピン制御チャネル51における制御レジスタ格
納ビット191は、各々のピン/ステータス導体151
に対し、該導体がチャネル57と1つまたはそれ以上の
集積回路ピン194との間でピン情報を転送するか、あ
るいは前記導体が丁度チャネル57の間でステータス情
報を転送するかを選択的に決定するために使用される。
【0115】ピン/ステータス導体147,149およ
び151はしたがって前記ピンに対しては何らの影響も
持たないが、他のチャネルに事象(例えば、整合)があ
る特定のチャネルで生じたことを通知するために使用で
きるステータス導体として使用できる。前記他のチャネ
ルはしたがって1つの特定のチャネルにおいて生じた事
象に基づき同時にそれらのふるまいを調整できる。ステ
ータス導体として使用される場合、導体149はチャネ
ル58の種々のものをハードウェアリンクする方法を提
供する。同様に、ステータス導体として使用される場
合、導体151はチャネル57の種々のものをハードウ
ェアリンクするための方法を提供する。例えば、整合チ
ャネル161は整合が生じたという情報を導体149の
内の1つを肯定することにより提供できる。したがっ
て、チャネル58の1つまたはそれ以上のチャネルはそ
の1つの導体を監視してチャネル161に整合が生じた
ことを決定する。
【0116】ピン導体148は集積回路ピン195の現
在の論理状態をチャネル58に転送し戻すために使用さ
れ、かつピン導体150は集積回路ピン194の現在の
論理状態をチャネル57に転送し戻すために使用され
る。より詳細には、ピン導体148の各々の1つは集積
回路ピン195のその対応する1つの現在の論理レベル
を該ピンからチャネル58に転送し戻す。同様に、ピン
導体150の各々の1つは集積回路ピン194の内のそ
の対応する1つの現在の論理レベルを該ピンからチャネ
ル57に転送し戻す。
【0117】したがって、本発明は複数チャネル(例え
ば、図4のチャネル58)が情報を同じピン/ステータ
スバス導体(例えば、ピン/ステータスバス導体76)
に提供できるようにする。その結果、1つより多くのチ
ャネルが集積回路ピン(例えば、ピン195の内の1
つ)の論理レベルに影響を与えることができ、かつ複数
のチャネルがハードウェアリンクできる。上に述べた実
施形態はANDおよびOR論理機能が行なわれるように
するが、本発明の別の実施形態では、NOR操作、NA
ND操作、排他的OR操作、あるいはより複雑なブール
関数を含む、任意の論理操作を行なうことができる。
【0118】〈グローバルチャネル通信バス〉図10を
参照すると、本発明のいくつかの実施形態においては、
異なるピン/ステータスバス216〜218に結合され
るチャネルの間で情報を通信するためにグローバルチャ
ネル通信バス200が使用される。グローバルチャネル
通信バス200の目的は異なるIOCM25〜29(図
1を参照)におけるチャネルの間で情報を転送し、かつ
異なるピン/ステータスバス(例えば、図10の216
および217)に結合されたIOCM内のチャネルの間
で情報を転送することである。さらに、本発明のいくつ
かの実施形態では、グローバルチャネル通信バス200
は集積回路ピン223によって入力/出力集積回路22
(図1を参照)の外部へ情報を提供しかつ受信すること
ができる。本発明の一実施形態では、図1に示されたピ
ン34は図10に示されたピン213〜215および1
つまたはそれ以上のピン223を含むことができること
に注意を要する。
【0119】従来技術においては、論理的に発生された
ステータスまたは制御情報はサービスプロセッサによっ
て1つまたはそれ以上の集積回路における回路の他の独
立の機能ブロックに通信された。例えば、多くの制御の
用途では複数の独立の機能ブロックの回路に関して種々
のアクションが行なわれるようトリガするため1つのチ
ャネルによって生成された事象(例えば、整合、捕捉、
タイムアウト、その他)を使用した。これらの独立の機
能ブロックの回路は別個のモジュール上にあるいは別個
の集積回路上にさえも物理的に配置される。従来技術の
構成では、割込みを発生するのに単一の事象が必要であ
り、かつ各々の独立した機能ブロックの回路内でアクシ
ョンが行なわれるのをトリガするため割込みサービスル
ーチンが必要である。さらに、該割込みサービスルーチ
ンは各々のアクションを順次トリガすることにより動作
した。
【0120】割込みの代わりにグローバルチャネル通信
バス200(図10を参照)を使用することにより、本
発明はステータスおよび制御情報が同時にすべてのチャ
ネルに放送できるようにし、それによって回路の種々の
独立の機能ブロック内のすべてのアクションが同期して
トリガされ、したがってデータ処理システム10(図1
を参照)全体内にグローバル信号を通信するコヒーレン
トな手段を提供する。
【0121】グローバルチャネル通信バス200(図1
0を参照)によって提供されるグローバル放送能力は異
なるピン/ステータスバスに結合された種々のチャネル
に通信されなければならない事象が生じるたびごとにサ
ービスプロセッサに割込む必要性を除去する。グローバ
ルチャネル通信バス200はまたサービスプロセッサを
使用する従来技術の手法よりも高速の通信および応答時
間を生じる結果となり、それは割込みサービスルーチン
の速度は典型的にはグローバルチャネル通信バス200
の放送能力の速度よりも1桁の大きさ低速であるためで
ある。
【0122】さらに、ソフトウェアエラー状態の間に、
サービスプロセッサは一般にノンオペレーション(no
n−operational)となる。サービスプロセ
ッサはノンオペレーションであるから、お互いの間で通
信しなければならない数多くのI/O機能はディスエー
ブルされなければならず、それは割込みが発生できない
からである。過去においては、もしI/Oシステムがソ
フトウェアエラー状態の間にいくつかの限られた動作を
行なうことを要求されれば、特別に設計されたハードウ
ェアが必要とされた。本発明の放送能力(broadc
ast capability)はこの特別のハードウ
ェアの多くを除去し、それは回路の独立の機能ブロック
が直接グローバルチャネル通信バス200によって互い
に通信できるからである。
【0123】また、本発明の放送能力はデータ処理シス
テム10(図1を参照)への変更および付加の設計およ
び構成を大幅に簡単にする。データ処理システム10の
多くのバージョンにおいて、IOCM25〜29内のチ
ャネルは特定の機能または限られた数の機能を達成する
よう構成され、元のアプリケーションの帯域幅を増大し
あるいは他のタスクを行なうために該アプリケーション
を変更するためにハードウェアを再構築するのをいくら
か困難にする。グローバルチャネル通信バス200によ
って与えられる放送能力は複数の独立の機能ブロックの
回路(例えば、IOCM25〜29)がお互いの間で通
信できるようにし、したがって帯域幅を増大しかつIO
CM境界に渡り異なる機能が実施できるようにする。
【0124】図10を参照すると、グローバルチャネル
通信バス200は異なるピン/ステータスバス216〜
218に結合されたチャネルの間で情報を通信するため
に使用されている。異なるピン/ステータスバス216
〜217は同じIOCM(例えば、IOCM27)内に
位置し、あるいは異なるピン/ステータスバス217〜
218は異なるIOCM(例えば、IOCM26および
IOCM27)内に位置することができる。本発明のい
くつかの実施形態では、前記グローバルチャネル通信バ
ス200は集積回路22(図1を参照)上のすべてのピ
ン/ステータスバスに結合することができる。
【0125】本発明の別の実施形態では、グローバルチ
ャネル通信バス200は同じピン/ステータスバスに結
合されていないチャネルと通信しなければならないピン
/ステータスバスにのみ結合される。例えは、もしチャ
ネル206のいずれもチャネル206以外のチャネルに
対し情報を受信しまたは提供する必要がなければ、ピン
/ステータスバス218が前記グローバルチャネル通信
バス200に結合される必要はない。
【0126】図1を参照すると、モジュール間バス24
はCPU13から外部バスインタフェース23内に位置
するレジスタへかつIOCM25〜29のチャネル内に
位置するレジスタへの読み出しおよび書き込みアクセス
を行なうために使用される。モジュール間バス24はま
たは、割込み情報のような、システム情報を転送する。
モジュール間バス24は各々のIOCM25〜29へそ
れぞれバスインタフェースユニット36〜40によりイ
ンタフェースする。本発明のいくつかの実施形態では、
グローバルチャネル通信バス200は単にモジュール間
バス24の一部として導入される。
【0127】しかしながら、本発明の別の実施形態で
は、グローバルチャネル通信バス200はモジュール間
バス24から区別される。グローバルチャネル通信バス
200は直接各々のIOCM25日〜29におけるピン
制御チャネル(例えば、201〜203)へ導かれる。
グローバルチャネル通信バス200はバスインタフェー
スユニット36〜40により間接的に通信するのではな
く直接各々のピン制御チャネル(例えば、201〜20
3)に通信する。
【0128】それぞれ各ピン制御チャネル201〜20
3における結合回路220〜222は、それぞれ、1つ
またはそれ以上の制御レジスタ224〜226に結合さ
れる。一例として、制御レジスタ224の制御レジスタ
格納ビットはピン/ステータスバス216の導体の内の
どの1つまたはそれ以上がグローバルチャネル通信バス
200に結合されるかを選択するためユーザプログラム
することができる。したがって、ユーザは制御レジスタ
229〜230およびピン制御回路227〜228によ
ってどのチャネルがピン/ステータスバス216のどの
導体に結合されるか、および制御レジスタ224および
結合回路220によってピン/ステータスバス216の
どの導体がグローバルチャネル通信バス200のどの導
体に結合されるかを選択することができる。
【0129】本発明の一実施形態では、グローバルチャ
ネル通信バス200の導体の各々の1つはワイヤOR導
体であり、該ワイヤOR導体は弱いプルダウン装置(図
示せず)によって論理レベル“0”にプルダウンされ
る。したがって、もしワークチャネル212が、結合回
路222によって、グローバルチャネル通信バス200
の第1の導体上に論理レベル“1”を与え、一方ワーク
チャネル210は、結合回路221によって、論理レベ
ル“0”をグローバルチャネル通信バス200の同じ第
1の導体上に与えれば、グローバルチャネル通信バス2
00のその第1の導体の論理レベルは論理レベル“1”
であろう。その結果、ワイヤOR導体に対しては、論理
レベル“1”が支配することになる。別の実施形態ては
ワイヤNOR導体を使用することができる。
【0130】図10を参照すると、本発明の一実施形態
においては、ピン/ステータスバス(例えば、216〜
218)はワイヤORまたはワイヤNORバスではな
い。その結果、チャネル(例えば、204〜206)が
放送された値を受信するために、結合回路(例えば、2
20〜222)はグローバルチャネル通信バス200の
導体から前記値を受信しかつ次にピン/ステータスバス
(例えば、216〜218)の選択された導体を適切な
値でドライブする。同様に、チャネル(例えば、204
〜206)が放送された値を提供するために、結合回路
(例えば、220〜222)はピン/ステータスバス
(例えば、216〜218)の適切な導体から前記値を
読み取りかつ次にグローバルチャネル通信バス200を
適切な値でドライブする。
【0131】その結果、本発明はデータ処理システム1
0(図1を参照)のユーザが集積回路22上の、または
異なる集積回路(例えば、集積回路12)上のどのチャ
ネル(単数または複数)がグローバルチャネル通信バス
200の導体に情報を提供できるかをプログラム可能に
選択できるようにする。次に、グローバルチャネル通信
バス200に提供される情報は、サービスプロセッサの
介在なしに、同期してユーザが集積回路22上にまたは
異なる集積回路(例えば、集積回路12)上に選択した
すべてのチャネルに放送される。
【0132】本発明はしたがってデータ処理システム1
0内のすべてのチャネルに信号または情報を包括的に同
期して通信する方法を提供する。本発明は複数の独立し
た機能ブロックの回路(例えば、IOCM25〜29)
の間で情報を共有するための柔軟性を与え、したがって
IOCM25〜29が一緒に働きかつそれらが行なう機
能の1つまたはそれ以上を調整できるようにする。さら
に、本発明はサービスプロセッサによってサービスされ
なければならない割込みの数を低減しかつデータ処理シ
ステム10内でより多くの機能が同期して達成できるよ
うにする。
【0133】図11は、図10の制御レジスタ226の
一部の一実施形態を示す。本発明の一実施形態では、グ
ローバルチャネル通信バス200は8つの導体を含む。
グローバルチャネル通信バス200の8つの導体の各々
に対し、1つの対応するSFUN(ステータス機能制
御:Status Function Contro
l)レジスタ格納ビット250、1つのSDAT(ステ
ータスデータ:Status Data)レジスタ格納
ビット251、1つのGLS(グローバル/ローカル選
択制御:Global/Local Select C
ontrol)レジスタ格納ビット252、および1つ
のGDO(グローバルデータ出力:Global Da
ta Output)レジスタ格納ビット253があ
る。例えば、導体246(図12を参照)はSFUNビ
ット254、SDATビット255、GLSビット25
6、およびGDOビット257に対応する。
【0134】SDATビット251はチャネル対チャネ
ル通信およびチャネル対CPU通信の目的でグローバル
またはローカルチャネルによって発生される出力ステー
タス事象の結果を表わすステータスデータを含む。各々
のSDATビット251は対応するSFUNビット25
0によって制御される。各々のSFUNビット250は
対応するSDATビット251に関連するモードを割当
てる。各々のSDATビット251に割当てられるモー
ドは「ハードウェア制御(hardwarecontr
olled)」モードおよび「ソフトウェア制御(so
ftwarecontrolled)」モードである。
SFUNビット250に加えて、SDATビット251
もまたGLSビット252によって構築される。各々の
GLSビット252は対応するSDATビット251が
ローカルステータスデータを表わすかあるいはグローバ
ルステータスデータを表わすかを制御する。
【0135】一例として、図10および図12を参照す
ると、もしSDATビット255が対応するGLSビッ
ト256によってローカルとして構築されかつ対応する
SFUNビット254によって「ハードウェア制御」と
して構築されれば、SDATビット255はチャネル2
06によって導体241上にドライブされるチャネル出
力ステータス事象の結果を含む。もしSDATビット2
55が対応するGLSビット256によってグローバル
として構築されかつ対応するSFUNビット254によ
って「ハードウェア制御」として構築されれば、SDA
Tビット255は集積回路22(図1を参照)上の任意
の場所に配置された選択されたチャネルによって導体2
46上にドライブされるグローバルステータス事象の結
果を表わすデータを含む。SDATビット255はその
データを導体240を介してチャネル206に提供す
る。SDATビット251は「ハードウェア制御」モー
ドにおいてはCPU13(図1を参照)によって書き込
まれることはできない。
【0136】もし前記SDATビット255が対応する
GLSビット256によってローカルとして構築されか
つ対応するSFUNビット254によって「ソフトウェ
ア制御」として構築されれば、SDATビット255は
導体241のステータスをエミュレートするためにCP
U13によってそこに書き込まれるデータを含む。しか
しながら、グローバルとして構築された場合、SDAT
ビット255はソフトウェア制御モードにある間は書き
込むことができない。SDATビット255は導体24
6からのグローバルステータスを反映する。SDATビ
ット255は常に導体240に対する値を提供する。ソ
フトウェア制御モードにおいては、SDATビット25
5はローカルステータスに対して構築された場合にCP
U13によってのみ書き込まれることができる。グロー
バルステータスを書き込むために、GDOビット257
が書き込まれる。
【0137】SDATビット251を書き込む場合、残
りのビットに影響を与えることなく単一のSDATビッ
トを強制的に新しい状態にすることができる。これを行
なうためには、SDATビット251およびSFUNビ
ット250の双方が同時にCPU13によって書き込ま
れなければならない。SFUNビット250の内容は書
き込みがSDATビット251に影響を与えるか否かを
決定し、それはSFUNビット250の各々はSDAT
ビット251の対応する1つを制御するからである。前
記書き込みがSDATビット251の1つに影響を与え
るために、SFUNビット250の対応する1つは%0
で書き込まれなければならない。書き込みがSDATビ
ット251の1つに影響を与えるのを防止するために
は、SFUNビット250の対応する1つは%1で書き
込まれなければならない。このようにして、SFUNビ
ット250は特定のSDATビット251に対するビッ
ト書き込みを制御するため対応するSDATビット25
1をマスクするために使用される。
【0138】図11および図12を参照すると、前記G
DOビット253はグローバルチャネル通信バス200
に提供されるグローバルデータを含む。GDOビット2
57に格納されたデータは2つの可能な供給源、すなわ
ち導体241およびCPU13、の内の1つによって提
供される。SFUNビット250およびGLSビット2
56はGDOビット257にグローバルデータを導体2
41が提供するかあるいはCPU13が提供するかを決
定する。
【0139】GLSビット256がグローバルとして構
成されている場合は、GDOビット257はあるグロー
バルステータス値を導体246に提供する。GDOビッ
ト257は該グローバルステータス値を、ソフトウェア
制御モードおよびハードウェア制御モードの双方におい
て、該グローバルステータス値を導体246上にドライ
ブすることにより提供する。もしGDOビット257が
対応するSFUNビット254によってソフトウェア制
御されるものとして構成されていれば、CPU13はG
DOビット257に格納されたグローバルステータス値
を更新することができる。もしGDOビット257が対
応するSFUNビット254によってハードウェア制御
されるものとして構成されていれば、導体241のみが
GDOビット257に格納されたグローバルステータス
値を更新することができる。
【0140】GLSビット256がローカルとして構成
されている場合、GDOビット257は導体246にグ
ローバルステータスを提供するために使用されない。G
DOビット257はCPU13によって書き込むことが
できない。GDOビット257は導体241によっての
み更新できる。
【0141】図3を参照すると、ピン110(PCC1
05に対応する)の内の1つを(対の他のPCC107
に対応する)ピン/ステータス情報導体115の内の1
つに結合する能力はユーザがグローバルチャネル通信バ
ス200からのチャネル出力を出力ピン110に提供で
きるようにすることに注意を要する。したがって、出力
事象はグローバルチャネル通信バス200を介して集積
回路22(図1を参照)上の任意のチャネルによって任
意の出力ピン31〜35に発生することができる。本発
明の一実施形態では、入力ピン110の論理レベルは前
記ピン/ステータス情報導体115上に反映されず、し
たがってピン入力はグローバルチャネル通信バス200
を介して包括的に通信されることはできない。本発明り
別の実施形態では、入力ピン110の論理レベルは前記
ピン/ステータス情報導体115上に反映させることが
でき、かつしたがってピン入力はグローバルチャネル通
信バス200を介して包括的に通信することができる。
【0142】本発明の一実施形態では、GDOビット2
53はCPU13によって任意の時間に読み取ることが
でき、かつCPU13によってソフトウェア制御モード
においてグローバルステータスのために構成された場合
にのみ書き込むことができる。
【0143】図11および図12を参照すると、SFU
Nビット250の各々の1つはSDATビット251お
よびGDOビット253の内の各々の対応する1つに対
し、前記モード、すなわちソフトウェア制御モードまた
はハードウェア制御モード、を選択するために使用され
る。CPU13は任意の時間にSFUNビット250を
読み取りかつ書き込むことができる。
【0144】図11および図12を参照すると、GLS
ビット252の各々の1つはSDATビット251の対
応する1つがローカルであるかあるいはグローバルであ
るかを選択するために使用される。SDATビット25
1に格納されたローカルステータス値は前記ローカルピ
ン制御チャネル(例えば、図10における203)によ
って制御されるローカルピン/ステータスバス(例え
ば、図10における218)によってのみ通信される。
GDOビット257に格納されたグローバルステータス
値はグローバルチャネル通信バス200あるいはローカ
ルピン/ステータスバス(例えば、図10の218)か
ら提供することができる。CPU13は任意の時間にG
LSビット252を読み取りかつ書き込むことができ
る。
【0145】図12を参照すると、SDATビット25
5は個々に対応するGLSビット256によってグロー
バルとしてまたはローカルとして構成できる。グローバ
ルとして構成された場合、導体241はグローバルステ
ータス値をGDOビット257に提供し、かつSDAT
ビット255には提供しない。GDOビット257はグ
ローバルステータス値を導体246によってグローバル
チャネル通信バス200に提供する供給源である。ワイ
ヤOR導体246の結果として生ずる論理レベル(すな
わち、グローバルステータス値)はSDATビット25
5に格納される。このグローバルステータス値は導体2
40によってチャネル206の入力へとドライブされる
(図10を参照)。
【0146】本発明の1実施形態では、集積回路22
(図1を参照)上の種々のタイマバス(例えば、図2の
71および72)に対し1つまたはそれ以上のタイムベ
ース値を通信するためにマスタタイマバス制御チャネル
(例えば、図2の61および63)のおのおのに結合さ
れた1つのグローバルタイマバス(図示せず)があるこ
とに注意を要する。このグローバルタイマバス(図示せ
ず)は前記グローバルチャネル通信バス200(図10
を参照)と類似の方法で機能する。本発明の別の実施形
態では、グローバルタイマバスは使用されない。その代
わり、もし別個のIOCM25〜29が同じタイムベー
ス値を必要とすれば、要求されるタイムベースを発生す
るタイムベースチャネル(たとえば、図2のディグリー
クロックチャネル94)は複数のIOCM25〜29に
おいて2重化される。
【0147】〈チャネル間データ転送〉「チャネルのシ
リコンライブラリ」内には、データ転送動作を行うよう
プログラムできる数多くのチャネルがある。データ転送
動作においては、データは頭部隣接チャネルのデータレ
ジスタ(例えば、図20の400)からチャネルそれ自
体のデータレジスタ(例えば、401)へ、およびチャ
ネルそれ自体のデータレジスタ(例えば、401)から
底部隣接チャネルのデータレジスタ(例えば、402)
へとデータを転送できる。チャネルの制御レジスタビッ
トをこれらのチャネル間データ転送を行うようプログラ
ミングすることにより、スタックおよびファーストイン
・ファーストアウト(FIFO)構造が形成できかつ使
用できる。本発明の1実施形態では、チャネル間データ
転送をサポートするワークチャネルは、(1)整合チャ
ネル、(2)捕捉チャネル、および(3)アップカウン
タチャネルを含む。1実施形態では、ダウン/アップカ
ウンタチャネルもまたいくつかのデータ転送能力を可能
にする。
【0148】本発明の1実施形態では、データ転送動作
をサポートするチャネルを使用して構成できる3つの基
本的なタイプの構造がある。すなわち、(1)数多くの
タイムベース値またはカウント動作値を集めるために有
用な構造である、スタック、(2)FIFO、複数の整
合出力事象はFIFO構造内に格納されたタイムベース
値の集積を使用してピンまたはステータス導体へ出力で
きる(これらの出力事象は他のチャネルによってまたは
I/O集積回路(例えば、図1の22)の外部の装置に
よって使用できる)、および(3)FIFOはまた最も
最近に捕捉されたタイムベース値または最も最近のカウ
ント動作を集積しかつ格納するために利用できる。
【0149】これらのタイプのスタックおよびFIFO
データ格納構造はチャネルによって必要とされるサービ
スの頻度を低減することができ、かつ従ってCPU13
(図1を参照)によって応答されなければならない割込
みの数を低減することができる。図20は隣接チャネル
400〜402の間のデータ転送動作の一例を示す。
【0150】図20に示されるように、整合チャネル4
00、捕捉チャネル401、およびカウンタチャネル4
02はおのおのそれらの頭部隣接チャネルからそれら自
身のデータレジスタへのデータの転送を制御する。デー
タ転送を制御するため、1つのチャネルのデータ転送論
理(例えば、407〜409の内の1つ)は頭部隣接チ
ャネルのデータ転送論理と通信する。各チャネルのデー
タ転送論理はステータスバス414への2つのタイプの
出力事象を生成することができ、すなわちチャネルおよ
び頭部隣接チャネルの双方が有効なデータを有すること
を示す出力事象、およびチャネルおよび頭部隣接チャネ
ルが共に無効なデータを有することを示す出力事象であ
る。さらに、前記捕捉チャネル401はステータスバス
414からの入力事象を使用してそのデータレジスタ4
04内のデータを無効にすることができる。
【0151】本発明の1実施形態では、前記ピン制御チ
ャネル(PCC)(例えば、図2の52)はそこを通る
32ビットのデータ経路を有し、それによって前記PC
Cの頭部隣接チャネルが該PCCを通りデータをその底
部隣接チャネルへと転送できる。PCCを通って転送さ
れるデータは該PCCに対して何らの影響も持たない
(すなわち、PCCはデータ転送制御を持たずかつそこ
を通るデータを格納しない)。
【0152】図21および図22は、チャネル(例え
ば、捕捉チャネル401)におけるデータ転送動作をサ
ポートするのに必要な、制御およびステータスレジスタ
格納回路を含む、回路を示している。図21は16ビッ
トのデータ転送動作に必要な回路を示し、かつ図22は
32ビットのデータ転送動作のために必要な回路を示し
ている。該32/16ビットデータ転送機能、該データ
転送動作において使用されるレジスタビット、隣接チャ
ネル間で通信される信号、および使用される入力事象お
よびチャネルのデータ転送論理によって生成される出力
事象について以下に説明する。制御およびステータスレ
ジスタ格納回路は点線のボックスとして示されている
が、それはこれらが物理的に1つまたはそれ以上のユー
ザプログラム可能レジスタの一部として配置できるから
である。また、クリアDVB入力事象信号は捕捉チャネ
ル(例えば、図20の404)によってのみ使用される
ことに注意を要する。
【0153】前記整合チャネル400、捕捉チャネル4
01、およびカウンタチャネル402はおのおの2つの
完全に独立な16ビットハーフとしてあるいは1つの3
2ビットチャネルとしてのデータ転送モードで動作する
構成できる。一例として、図21は16ビットデータ転
送動作のために構成された捕捉チャネル401を示し、
かつ図22は32ビットデータ転送動作のために構成さ
れた捕捉チャネル401を示す。整合チャネル400お
よびカウンタチャネル402は同様にデータ転送動作の
ために構成される。
【0154】図21を参照すると、おのおのの16ビッ
トに対する論理は同じでありかつ他の16ビットに対す
る論理と独立であることに注意を要する。本発明の1実
施形態では、16ビット動作のために構成された、チャ
ネルの両方のハーフは同じ動作モードで使用されること
は必要とされない。例えば、整合チャネル400の上位
ハーフはタイマバス(例えば、図2のタイマバス71)
上の16ビットの値と整合するよう構成でき、かつ整合
チャネル400の下位ハーフは16ビットのデータ転送
動作のために構成できる。
【0155】また、図21を参照すると、チャネルの上
位16ビットを制御するために使用されるレジスタ格納
ビットは“0”によってラベル付けられ、かつチャネル
の下位16ビットを制御するために使用されるレジスタ
格納ビットは“1”によってラベル付けられている(例
えば、DTC0およびDTC1)。チャネル(例えば、
401)が、図22のように、32ビットのデータ転送
動作のために構成された場合、該チャネルの上位16ビ
ットを制御するレジスタ格納ビットは32ビットのデー
タ転送を制御するために使用される。
【0156】本発明の1実施形態では、データ転送動作
をサポートするチャネルはデータ転送を制御するために
使用されかつステータス情報をCPU13(図1を参
照)に提供する3つの異なるレジスタフィールドビット
を有する。これら3つのレジスタビットフィールドはデ
ータ有効ビット(DVB)、データ転送制御ビット(D
TC)、およびデータ転送ステータスビット(DTS)
である。本発明の1実施形態では、おのおのの捕捉チャ
ネルおよびおのおののカウンタチャネルもまたデータ転
送動作を制御するために同様に入力事象エッジ選択(I
E)ビットを使用する。
【0157】図21および図22を参照すると、おのお
ののデータ有効ビット(DVB)425〜426はステ
ータスおよび制御の双方のために対応するデータ転送論
理422,429,430によって使用される。ステー
タスビットとして、DVBは対応するデータレジスタ内
の有効または無効データの存在を示すために使用され
る。制御ビットとして、DVBは対応するデータ転送論
理によってチャネルの頭部隣接チャネルからのデータ転
送を制御するために使用される。
【0158】本発明の1実施形態においては、DVBビ
ットが論理レベル“1”である場合、それは該チャネル
のデータレジスタ内の有効データの存在を示す。例え
ば、捕捉チャネル401においては、DVBビットは捕
捉動作が完了したときには常に論理レベル“1”にセッ
トされ、かつカウンタチャネル402においては、DV
Bはカウント動作が完了したときには常に論理レベル
“1”にセットされる。例えば、図20および図22を
参照すると、データがデータレジスタ404へ転送され
たとき(例えば、その頭部隣接チャネル400から)、
捕捉チャネルのデータ転送論理430はそのDVBビッ
ト425を論理レベル“1”にセットする。
【0159】さらに、もしCPU13(図1を参照)が
データ転送モードに構成されたいずれかのチャネルのデ
ータレジタスに書き込めば、DVBビットは自動的に論
理レベル“1”にセットされてそのデータが有効である
ことを示す。本発明の1実施形態では、整合チャネルに
おけるDVBビットはまた該整合チャネルが整合モード
にあるときデータレジスタへの書込みによって論理レベ
ル“1”にセットすることができる。
【0160】本発明の1実施形態では、DVBビットが
論理レベル“0”である場合、それは無効データが前記
チャネルのデータレジスタ内に存在することを示す。例
えば、整合チャネル400において、DVBビットは整
合出力事象が生じた場合には常に論理レベル“0”にク
リアされる。例えば、図20および図22を参照する
と、データがデータレジスタ404からデータレジスタ
405へ転送されるとき(底部隣接チャネル)、転送論
理409は捕捉チャネル401におけるDVBビット4
25を論理レベル“0”にクリアする。いったんデータ
が転送されると、チャネル401のDVBビット425
はデータがもはや有効でないことを示すために論理レベ
ル“0”にクリアされる。
【0161】さらに、CPU13はデータレジスタ40
4のデータをその対応するDVBビット425を論理レ
ベル“0”にクリアすることにより無効化することがで
きる。DVBビット425をクリアするためには、CP
U13はDVBビット425をその肯定された状態にお
いて読み取らなければならず、かつ次に論理レベル
“1”をDVBビット425に書き込まなければならな
い。DVBビット425における論理レベル“1”はデ
ータレジスタ404のデータが無効であることを示す。
前記DVBビットはステータスおよび制御ビットの双方
であるから、CPU13によるDVBビットのクリアは
もし注意が行われなければデータ転送動作によって有効
データがオーバライトされる可能性があることに注意を
要する。
【0162】本発明の1実施形態のために、図23はそ
れがその動作モードのおのおのにおいて構成される間に
データ転送動作をサポートする各チャネルのDVBビッ
ト(例えば、図22の425)をセットおよびクリアで
きる動作を示す。図20および図22を参照すると、チ
ャネル402がデータ転送動作のために構成されている
場合、データ転送は頭部隣接チャネルのDVBビット
(チャネル401のDVBビット425)が論理レベル
“1”でありかつ該チャネルの自身のDVBビット(す
なわち、チャネル402のDVBビット)が論理レベル
“0”である場合にデータ転送が行われる。前記チャネ
ルのデータ転送論理(すなわち、チャネル402の転送
論理)は始めにデータを頭部隣接チャネルのデータレジ
スタ404から該チャネルの自身のデータレジスタ40
5へとコピーする。次に、頭部隣接チャネルのDVBビ
ット(チャネル401のDVBビット425)が論理レ
ベル“0”にクリアされる。最後に、前記チャネルのそ
れ自身のDVBビット(すなわち、チャネル402のD
VBビット)が論理レベル“1”にセットされる。
【0163】図21および図22を参照すると、データ
転送制御(DTC)ビット423〜424は対応するデ
ータ転送論理422,429,430をイネーブルおよ
びディスエーブルするために使用される。あるチャネル
のデータ転送論理がイネーブルされたとき、頭部隣接チ
ャネルのデータレジスタの内容は該チャネルの自身のデ
ータレジスタに転送されることができる。該転送は該チ
ャネルのDVBビットが論理レベル“0”でありかつ頭
部隣接チャネルのDVBビットが論理レベル“1”であ
る場合に行われる。
【0164】データ転送動作の2つのモードにおいて、
出力事象は発生でき、すなわち、(1)もし前記チャネ
ルおよび前記頭部隣接チャネルのDVBビットが共に論
理レベル“1”であればデータを転送しかつ出力事象を
引き起こし(この出力事象はチャネルおよび頭部隣接チ
ャネルの双方における有効なデータの存在を示しかつ有
効隣接データ対(VADP)出力事象と称される)、お
よび(2)もし前記チャネルおよび前記頭部隣接チャネ
ルのDVBビットが共に論理レベル“0”であればデー
タを転送しかつ出力事象を引き起こす(この出力事象は
前記チャネルおよび前記頭部隣接チャネルにおける無効
なデータの存在を示しかつ無効隣接データ対(IAD
P)出力事象と称される)。
【0165】本発明の1実施形態では、これら2つのモ
ードに対する前記デスティネイション(出力事象導体)
および出力事象のタイプ(立上り、立下り、トグル)は
ソフトウエア制御されない。両方の出力事象はステータ
スバス414の同じ導体(図21および図22を参照)
にハードワイヤ結合され、かつ双方はトグル事象を生じ
させる。
【0166】図24はデータ転送動作を有する各チャネ
ルにおけるデータ転送制御ビット(DTC)(例えば、
図21および図22の423〜424)によって制御さ
れるデータ転送動作のモードを示す。
【0167】図21および図22を参照すると、データ
転送ステータス(DTS)ビット427〜428は出力
事象が対応するデータ転送論理422,429,430
によって発生されたことを示す(flag)ために使用
される。もしDTC=%10であれば、かつVADP検
出出力事象が対応するデータ転送論理によって発生され
れば、DTSビットは論理レベル“1”にセットされ
る。同様に、もしDTC=%11であれば、かつIAD
P検出出力事象が対応するデータ転送論理によって発生
されれば、DTSビットは論理レベル“1”にセットさ
れる。DTSビット427をクリアするため、CPU1
3はDTSビット427をその肯定された状態で読み取
らなければならず、かつ次に論理レベル“1”をDTS
ビット427に書き込まなければならない。
【0168】データ転送動作を行うために使用される制
御信号につき説明する。図21および図22を参照する
と、データ転送動作において構成されたチャネルの頭部
隣接チャネルへ/から通信される数多くのデータ転送制
御信号がある。前記2つのチャネルの間の通信の3つの
経路は前記32/16ビットデータ導体、前記読出し信
号導体および前記クリア信号導体である。前記32/1
6ビットデータ導体は頭部隣接チャネル(たとえば、図
20のチャネル400)から該チャネルのそれ自身のデ
ータレジスタ(例えば、チャネル401のデータレジス
タ404)へデータを転送するために使用される。
【0169】前記読出し信号は前記頭部隣接チャネルの
DVBビットの状態を前記チャネルのそれ自身のデータ
転送論理に通信するために使用される。この情報は2つ
の目的で使用される。第1に、データ転送動作におい
て、もし頭部隣接チャネルのDVBビットが論理レベル
“1”でありかつ前記チャネルのそれ自身のDVBが論
理レベル“0”であれば、データ転送が行われる。第2
に、前記読出し信号は前記チャネルがVADPまたはI
ADP出力事象を生成するためにプログラムされている
場合に有効なまたは無効な隣接データ対が存在するかを
決定するために使用される。
【0170】前記クリア信号は前記頭部隣接チャネルに
よってデータが前記頭部隣接チャネルのデータレジスタ
から前記チャネルのそれ自身のデータレジスタへ転送さ
れた後にそのDVBビットを条件的にクリアするために
使用される。
【0171】図22においては、データ転送チャネルは
底部隣接チャネルへの通信の3つの経路を有する。これ
らは上に述べたデータ、読出し、およびクリア信号導体
である。データ転送チャネルのための回路(例えば、図
20における400〜402)が物理的にお互いに隣接
して集積回路上に配置されていれば、前記データ、読出
し、およびクリア信号導体は直接1つのチャネルから次
の隣接チャネルへと導くことができる。本発明の1実施
形態では、おのおののデータ転送チャネルは頭部隣接チ
ャネルからそれ自身のデータレジスタへのデータの転送
を制御する。本発明の別の実施形態ではI/O集積回路
22(図1を参照)における隣接チャネル間でデータを
転送するために異なる手法を使用することができ、異な
るステータスおよび制御レジスタビットを使用すること
ができ、異なるデータ転送制御信号を使用することがで
き、かつ異なる回路を使用することができる。
【0172】本発明の1実施形態では、すべてのデータ
転送チャネルは2つのタイプの出力事象を生成すること
ができ、すなわち有効な隣接データ対(VADP)出力
事象、および無効な隣接データ対(IADP)出力事象
である。さらに、本発明のいくつかの実施形態では、デ
ータ転送動作において機能している捕捉チャネルおよび
カウンタチャネルは捕捉またはカウンタチャネルのそれ
自身のDVBビット(図21および図22を参照)をク
リアするために入力事象を使用することができる。
【0173】さらに図21および図22を参照すると、
本発明の1実施形態では、前記有効隣接データ対(VA
DP)または無効隣接データ対(IADP)出力事象信
号(単数または複数)はハードワイヤ結合されたステー
タスライン414に出力されかつトグル事象を生成す
る。前記VADPおよびIADP出力事象はスタックが
満杯であることまたはFIFOが空であることを示すた
めにCPU13(図1を参照)に割込みをかけるために
使用できる。前記VADP/IADP出力事象が出力さ
れるステータス導体414(例えば、ピン/ステータス
バス76の導体)を監視するピン制御チャネル(PC
C)(例えば、図2の52)はトグル事象がステータス
導体上で認識された場合に割込みを生じさせるようプロ
グラムできる。
【0174】捕捉チャネルまたはカウンタチャネルの入
力事象論理は、データ転送動作の間に、そのDVBビッ
トをクリアするために入力事象を使用するようプログラ
ムできる(それぞれ図21および図22のクリアDVB
入力事象信号431および433を参照)。これはFI
FO内の底部データ転送チャネルのデータを無効化する
ために有用であり、それによって前記底部データ転送チ
ャネルの上のすべてのデータ値が1チャネル下に転送さ
れる。
【0175】タイマの用途において一般に使用されてい
る3つの基本的なタイプのデータ転送構造がある。第1
のデータ転送構造は捕捉されたタイムベース値またはカ
ウント動作値を保持するスタックである。第2のデータ
転送構造は一連の整合出力事象を生成するために使用さ
れるタイムベース値のFIFOである。また、第3のデ
ータ転送構造は数多くの最も最近捕捉されたタイムベー
ス値または最も最近のカウント動作値を含むFIFOで
ある。本発明はこれら3つの基本的なタイプのデータ転
送構造が前記データ転送能力および1つまたはそれ以上
のチャネルの動作によってユーザプログラムできるよう
にする。
【0176】〈カウント動作制御機能〉数多くのマイク
ロコントローラをベースとした制御の用途は目標または
ターゲット信号の高度に正確な累積測定(accumu
lation measurements)を必要とす
る。例えば、図2のカウンタチャネル58はターゲット
信号の累積測定を行うために使用できる。該ターゲット
信号は外部から入力/出力(I/O)集積回路22(図
1を参照)へと提供されるか、あるいは内部的にI/O
集積回路22へ発生される。カウンタチャネル58は所
定の制御値をカウンタチャネル(図2を参照)内の1つ
またはそれ以上のユーザプログラム可能制御レジスタ格
納ビット67へ所定の制御値を書き込むことにより選択
できる種々のカウント動作を行うことができる。
【0177】例えば、図26を参照すると、第1のプロ
グラム可能な選択肢として、カウンタチャネル58はタ
ーゲット信号が「ハイ」であることに基づき、あるいは
ターゲット信号が「ロー」であることに基づきカウンタ
値を増分または減分できる。第2に、カウンタチャネル
58はターゲット信号のアクティブエッジが受信される
たびごとにカウンタ値を増分できる。該アクティブエッ
ジはターゲット信号の立上りまたは立下りエッジとして
プログラム可能に選択できる。第3に、カウンタチャネ
ル58はターゲット信号の第1のアクティブエッジで連
続的にスタートしてカウンタ値を増分または減分するこ
とができる。第4に、カウンタチャネル58はターゲッ
ト信号のアクティブエッジが受信されるたびごとにカウ
ンタ値を減分することができる。本発明の別の実施形態
では他のカウント動作を使用することができる。
【0178】いくつかの制御の用途はターゲット信号に
対するカウント動作がいつイネーブルされるかを定める
ために第2のチャネル(例えば、整合チャネル56、捕
捉チャネル55、チャネル87における他のカウンタチ
ャネル、その他)によって生成される第2の信号を必要
とする。従来技術においては、もしあるカウンタチャネ
ルがあるインターバルにわたりターゲット信号の累積を
行えば、第2の信号は前記ターゲット信号によってゲー
ティングされ、あるいは第2の信号は割込みサービスプ
ロセッサへの割込みを発生することが要求される。次に
カウンタチャネル内のターゲット信号のカウント動作を
イネーブルするために割込みサービスプロセッサが介在
することが要求される。
【0179】また、従来技術においては、カウンタチャ
ネル内のターゲット信号のカウント動作をディスエーブ
ルするために、前記ターゲット信号によってゲーティン
グされる第2の信号が否定されるかあるいは前記第2の
信号は割込みサービスプロセッサへの割込みを発生する
ことが要求される。割込みサービスプロセッサは次にカ
ウンタチャネル内のターゲット信号のカウント動作をデ
ィスエーブルするために介在することが要求される。残
念なことに、この従来技術の方法はしばしばカウント動
作における累積エラーを生じる結果となる。
【0180】図25の例で示すように、累積エラーは従
来技術では前記第2の信号がカウンタチャネル内のター
ゲット信号のカウント動作をディスエーブルするために
使用される場合に導入される。前記第2の信号はターゲ
ット信号の立下りエッジの前に否定されるから、カウン
タチャネルはターゲット信号の全体の数の期間が完了す
る前にカウントを停止することになる。従って、従来技
術のカウンタチャネルに格納された周期または期間累積
値は累積エラーの量だけ正しい値よりも低くなる。図2
5および図26の上方向を示す矢印はカウンタチャネル
58におけるカウンタの増分を示し、かつ図25および
図26の下方向を示す矢印はカウンタチャネル58にお
けるカウンタの減分を示すことに注意を要する。
【0181】さらに図25を参照すると、従来技術は、
単にカウントウインドウ信号の肯定および否定によって
規定される、時間インターバル、すなわち、「カウント
ウインドウ」、にわたり期間累積を行った。一般に、第
1のカウンタチャネルが使用されて前記ターゲット信号
の事象をカウントし、一方第2のチャネルが使用されて
前記カウントウインドウ信号を発生した。第1のカウン
タチャネルは前記ターゲット信号および前記カウントウ
インドウ信号の双方を受信した。図25に示される例で
は、カウントウインドウ信号の肯定された状態は「ハ
イ」でありかつ前記ターゲット信号のアクティブエッジ
は立下りエッジである。
【0182】図25に示される従来技術の期間累積手法
を参照すると、第1のカウンタチャネルによって受信さ
れたカウントウインドウ信号が肯定されたとき、第1の
カウンタチャネルはターゲット信号の次のアクティブエ
ッジにおいてカウントスタートを始める。前記カウント
ウインドウ信号がアクティブに留まっている間に前記第
1のカウンタチャネルはカウントを継続した。第1のカ
ウンタチャネルによって受信されたカウントウインドウ
信号がその後否定されたとき、第1のカウンタチャネル
はただちにカウントを停止する。その結果、もしカウン
トウインドウ信号が、図25に示されるように、ターゲ
ット信号の周期または期間の境界で否定されなければし
ばしば累積エラーが生じた。
【0183】しかしながら、本発明はカウンタチャネル
58が第3のチャネル(例えば、図2を参照すると、整
合チャネル56、捕捉チャネル55、チャネル87にお
ける他のカウンタチャネル、その他)によって、または
I/O集積回路22(図1を参照)の外部の供給源によ
って提供される第3の信号を受信できるようにする。図
26において「カウント停止信号」と名付けられた、こ
の第3の信号はカウンタチャネル58によって受信され
かつ使用されていつカウント動作を停止するかを決定す
る。カウンタチャネル58のイネーブルおよびディスエ
ーブルはプロセッサ(例えば、図1のCPU13)によ
る何らの割込みサービスをも必要としないことに注意を
要する。さらに、カウント動作のディスエーブルを制御
するために第3の信号を使用することはターゲット信号
の周期または期間の境界でカウント動作が停止できるよ
うにし、従って累積エラーを防止する。
【0184】カウント停止信号として使用される、第3
の信号の付加によりエラーなしにある時間インターバル
にわたりターゲット信号事象を正確に累積する方法が提
供される。従来技術では、外部事象により生成されるあ
るいはチャネルによって生成される第3の信号がさらに
カウント動作のディスエーブルを規定することができる
方法は存在しなかった。第3の信号の付加は割込みサー
ビスの介在の必要性を除去しかつエラーなしにある時間
インターバルにわたりターゲット信号事象を正確に累積
する方法を提供する。
【0185】本発明のいくつかの実施形態においては、
前記ターゲット信号はまたカウント停止信号として使用
できることに注意を要する。例えば、図25を参照する
と、前記カウント停止条件はターゲット信号の特定のエ
ッジとなるようプログラムできる。例えば、図25にお
いて、ターゲット信号の立下りエッジがカウンタチャネ
ル58の制御レジスタ格納ビット67に所定の値を書き
込むことによりカウント停止信号として選択される(図
2を参照)。従って、カウンタチャネル58のカウント
動作はカウントウインドウ信号が否定され、かつカウン
ト停止事象が生じた場合(すなわち、ターゲット信号の
立下りエッジ)停止する。従って、カウンタチャネル5
8はカウントウインドウ信号が肯定された後に生じるタ
ーゲット信号の最初の立下りエッジでカウントを開始
し、かつカウントウインドウ信号が否定された後に生じ
るターゲット信号の最初の立下りエッジにおいてカウン
トを停止する。その結果、カウンタチャネル58は従来
技術に比較して実質的に何らの累積エラーなしに非常に
正確な周期または期間累積値をカウントしかつ格納す
る。
【0186】本発明はカウントが第2の信号によって規
定される「カウントウインドウ」の間にイネーブルでき
かつ該第2の信号または第3の信号によってさらに規定
される第2の信号によってディスエーブルできるように
ターゲット信号に基づくカウント動作が第2の信号の状
態によって規定できるようにする。いくつかの場合、前
記ターゲット信号のエッジは前記第3の信号として使用
される。1実施形態では、カウンタチャネル58(図2
を参照)における制御レジスタ格納ビット67の一部は
カウント停止信号が使用されるかを選択するために使用
される。また、制御レジスタ格納ビット67の一部はカ
ウント動作を停止する事象が第3の信号(すなわち、図
26に示されるカウント停止信号)の事象であるか、図
25に示されるターゲット信号の事象であるか、あるい
は従来技術のようなカウントウインドウ信号の事象であ
るかを選択する。従来技術においては、カウントウイン
ドウ信号の否定がカウント動作を停止するために常に使
用された。
【0187】図27はカウンタチャネル58(図2を参
照)の一部の1実施形態を示す。カウンタチャネル58
はカウンタ回路440およびデータレジスタ447を含
む。データレジスタ447は双方向的にバス24(図1
を参照)に結合されている。カウンタ回路440はカウ
ンタ441、制御回路442、および制御回路443を
含む。制御回路442は導体448によってカウントウ
インドウ信号を受信する。制御回路443は導体448
によってカウントウインドウ信号を受信し、導体449
によってカウント停止信号を受信し、そして導体450
によってターゲット信号を受信する。制御回路442は
導体444によってカウンタ441にカウントイネーブ
ル信号を提供し、かつ制御回路443は導体445によ
ってカウントディスエーブル信号をカウンタ441に提
供する。カウンタ441はまた導体450によってター
ゲット信号を受信する。カウンタ441は導体446に
よってデータレジスタ447へカウント値を提供する。
【0188】制御およびステータス情報はカウンタ44
1、制御回路442、および制御回路443の間で導体
451によって転送される。例えば、制御回路442お
よび443の内の1つが導体451によってカウンタ4
41にデータ転送制御信号を提供する。カウンタ441
に提供されるデータ転送制御信号が肯定されたとき、カ
ウンタ441は現在のカウント値を導体446によって
データレジスタ447に転送する。データレジスタ44
7は読出しアクセスおよび書込みアクセスを使用してバ
ス24によりアクセスすることができる。カウンタ44
1は導体452によってクロック信号を受信する。制御
レジスタ格納ビット67は導体453によって制御回路
442および443に結合されている。
【0189】図28は、制御レジスタ67(図2および
図27を参照)の一部の1実施形態を示す。レジスタビ
ットのいくつかはカウンタチャネル58に対して選択さ
れるモードに応じて異なる機能を持つことができること
に注意を要する。たとえば、CZO/WTO/DTOビ
ット478はカウントウインドウモードがディスエーブ
ルされたとき「ゼロへのカウント出力(Count t
o Zero Output:CZO)」ビットとして
機能し、カウントウインドウモードがイネーブルされた
とき「ウインドウ終了出力(Window Termi
nationOutput:WTO)」として機能し、
かつデータ転送モードが選択されたとき「データ転送出
力(Data Transfer Output:DT
O)」ビットとして機能する。1実施形態では、図28
に示される制御レジスタビットは以下の機能を行う。
【0190】16/18&24/32−16ビット、8
および24ビット、または32ビット動作ビット469 00−32ビット動作 01−組合わされたアップ/ダウン8および24ビット
動作 1X−16ビット動作
【0191】 CCS:カウンタクロック選択ビット470 0−入力事象を使用してカウンタをクロッキング 1−クロックバス入力を使用してカウンタクロッキング
【0192】 DTC:データ転送制御ビット471 0X−カウントモードイネーブル 10−イネーブルされたw/VADP検出出力事象 11−イネーブルされたw/IADP検出出力事象
【0193】 CLK:クロックバスソース選択ビット472 000〜111−クロックバスライン0〜7
【0194】 SSC:単一/連続カウント動作ビット473 0−連続カウント動作 1−単一カウント動作
【0195】 CI:カウント入力ビット474 0000〜0111−ピンライン0〜ピンライン7 1000〜1111−ステータスライン0〜ステータス
ライン7
【0196】 CIEL:カウント入力エッジまたはレベルビット47
5 CCS=0 X00−入力ディスエーブル X01−カウント立上りエッジ入力事象 X10−カウント立下りエッジ入力事象 X11−カウント両エッジ入力事象 CCS=1 000−入力ディスエーブル 001−クロックを使用し立上りエッジでスタート 010−クロックを使用し立下りエッジでスタート 011−クロックを使用しどちらかのエッジでスタート 100−クロックを使用し入力ローでスタート 101−クロックを使用し入力ハイでスタート 110−クロックを使用し入力がローの間カウント 111−クロックを使用し入力がハイの間カウント
【0197】USI/MTI/CDVI:アップカウン
ト停止入力/モジュラス転送入力/クリアデータ有効入
力ビット476 0000〜0111−ピン0〜ピン7 1000〜1111−ステータス0〜ステータス7
【0198】USIE/MTIE/CDVE:アップカ
ウント停止入力エッジ/モジュラス転送入力エッジ/ク
リアデータ有効エッジビット477 00−入力ディスエーブル 01−立上りエッジでカウント停止/モジュラス転送/
クリアDVB 10−立下りエッジでカウント停止/モジュラス転送/
クリアDVB 11−いずれかのエッジでカウント停止/モジュラス転
送/DVBクリア
【0199】CZO/WTO/DTO:ゼロへのカウン
ト出力/ウインドウ終了出力/データ転送出力ビット4
78 0000〜0111−ピンライン0〜ピンライン7 1000〜1111−ステータスライン0〜ステータス
ライン7
【0200】CZOEL/WTOEL/DTOE:ゼロ
へのカウント出力エッジまたは論理操作/ウインドウ終
了出力エッジまたは論理操作/データ転送出力エッジビ
ット479 CZOEL/WTOEL 000−出力ディスエーブル 001−立上りエッジを出力 010−立下りエッジを出力 011−トグルを出力 100−ピン/ステータスをセットするため条件AND
出力 101−ピン/ステータスをセットするため条件OR出
力 110−ピン/ステータスをクリアするため条件AND
出力 111−ピン/ステータスをクリアするため条件OR出
力 DTOE X00−出力ディスエーブル X01−立上りエッジを出力 X10−立下りエッジを出力 X11−トグルを出力
【0201】図29は制御レジスタ67(図27を参
照)の一部の1実施形態を示す。1実施形態では、図2
9に示される制御レジスタビットは次の機能を行う。 CM:カウンタモードビット480 0−ダウンカウントモード 1−アップカウントモード
【0202】 CWE:カウントウインドウイネーブルビット481 00−カウントウインドウ動作ディスエーブル 01−選択されたステータスラインを使用してイネーブ
ル 1X−底部隣接デュアルFIFOチャネルからの入力を
使用してイネーブル(もし適用できれば) 備考:もし底部隣接デュアルFIFOチャネルが存在せ
ずかつCWE=1Xが選択されれば、ウインドウ入力は
常にローである。
【0203】 WTOC:ウインドウ終了出力制御ビット482 00−ゼロへのカウント出力イネーブル、ウインドウ終
了出力ディスエーブル 10−ゼロへの出力ディスエーブル、ウインドウ終了出
力はウインドウ内の第1のカウント動作に対してイネー
ブル 10−ゼロへのカウント出力イネーブル、ウインドウ終
了出力はウインドウ内の第1のカウント動作に対してイ
ネーブル 11−ゼロへのカウント出力イネーブル、ウインドウ終
了出力はウインドウ内の任意のカウント動作に対しイネ
ーブル
【0204】 OFC:オーバフロー制御ビット483 0−オーバフローに際しゼロで停止 1−オーバフローに際し増分を継続
【0205】 LCE:論理的相補イネーブルビット485 0−論理的相補出力ディスエーブル 1−論理的相補出力イネーブル
【0206】 CWI:カウントウインドウ入力ビット484 000〜111−ステータスライン0〜ステータスライ
ン7
【0207】図30は、レジスタ67(図27を参照)
の一部の1実施形態を示す。いくつかの実施形態では、
レジスタ67は制御レジスタビットおよびステータスレ
ジスタビットの双方を含むことに注意を要する。図30
に示される実施形態では、レジスタ67の一部はステー
タス情報を格納するために使用される。1実施形態で
は、図30に示されるステータスレジスタビットは以下
の機能を行う。
【0208】 WTS:ウインドウ終了ステータスビット490 0−単一カウント動作、またはウインドウ内の第1の連
続カウント動作が終了していない 1−単一カウント動作、またはウインドウ内の第1の連
続カウント動作が終了している
【0209】 USIS/MTS/CDVS:アップカウント停止入力
ステータス/モジュラス転送ステータス/クリアデータ
有効ステータスビット491 0−カウンタ停止/モジュラス転送/クリアデータ有効
が生じていない 1−カウンタ停止/モジュラス転送/クリアデータ有効
が生じている
【0210】CZS/DTS:ゼロへのカウントステー
タス/データ転送ステータスビット492 0−ゼロへの増分/減分またはVADP/IADPが生
じていない 1−ゼロへの増分/減分またはVADP/IADPが生
じている
【0211】 DVB:データ有効ビット493 0−データレジスタ内のデータが無効 1−データレジスタ内のデータが有効
【0212】 CIS:カウント入力ステータスビット494 0−アップ/ダウンカウント入力が生じていない 1−アップ/ダウンカウント入力が生じている
【0213】図31は、カウンタ441(図27を参
照)におけるカウント動作と図28〜図29に示された
制御レジスタビットのいくつかの間の関係を示す。図3
1を参照すると、CCS=0およびCIEL=X01で
ある場合、カウンタ441はカウントウインドウ信号が
ハイになった後のそれぞれの立上りエッジ入力で増分す
る。カウンタ441はカウントウインドウ信号がローに
なった後も増分し続けることに注意を要する。カウンタ
441はカウントウインドウ信号がローに移行した後に
第1のカウント停止信号事象が生じたときに停止する。
この時点で、カウント動作は完了し、制御レジスタ67
のアップカウント停止入力ステータスビットがセットさ
れ、カウント値がデータレジスタ447に転送され、か
つ制御レジスタ67のDVBビットがセットされる。
【0214】CCS=1およびCIEL=111である
場合、カウンタ441はターゲット信号がハイでありか
つカウントウインドウ信号がハイである場合は常にCL
Kビットフィールドによって選択されたクロック入力を
使用して増分する。前述のように、カウンタ441はカ
ウントウインドウ信号がローになった後の最初のカウン
ト停止信号事象が生じたときに停止する。CCS=1お
よびCIEL=010である場合、カウンタ441は導
体452からのクロック信号を使用して増分しかつカウ
ントウインドウ信号がハイである場合にターゲット信号
の最初の立下りエッジでカウント動作を開始する。再
び、カウンタ441はカウントウインドウ信号が否定さ
れた後に最初のカウント停止信号事象が生じたときに停
止する。
【0215】図32は、カウンタチャネル58(図2を
参照)の一部の別の実施形態を示す。この実施形態で
は、カウンタチャネル58はカウンタレジスタ460、
データレジスタ461、および出力事象論理467を含
む。1実施形態では、カウンタレジスタ460は独立に
動作できる2つのカウンタ部分に区分できる。第1のカ
ウンタ部分はカウンタ制御論理462および入力事象論
理464に応答する。第2のカウンタ部分はカウンタ制
御論理463および入力事象論理465に応答する。1
実施形態では、各カウンタ部分はまた図28および図2
9に示されるように別個の組の制御レジスタビットを有
する。
【0216】図32に示される種々の制御およびステー
タスビットは、読出しおよび書込みアクセス可能なレジ
スタに配置されているが、図32に示されるようにカウ
ンタチャネル58のふるまいに影響を与える。DTCレ
ジスタビット471、DVBレジスタビット493、お
よびDTSレジスタビット492は図20〜図24およ
び明細書の関連部分において説明されたのと同様にして
チャネル間でデータ転送を行うために使用される。
【0217】1実施形態では、前記カウント停止信号は
もしカウンタ(例えば、図27のカウンタ441)がダ
ウンカウンタであれば必要ではないことに注意を要す
る。ダウンカウンタを使用するいくつかの実施形態で
は、カウント動作が停止すべきであることを示すために
オールゼロのカウント値を使用できる。従って、ダウン
カウンタに対するオールゼロのカウント値はアップカウ
ンタに対するカウント停止信号と同じ機能を果たすこと
ができる。その結果、ダウンカウンタはカウントウイン
ドウ信号が否定された後に初めてカウント値がオールゼ
ロに到達したときにカウントを停止することになる。
【0218】〈捕捉ウインドウ機能〉数多くのマイクロ
コントローラをベースとした制御の用途はタイムベース
値がターゲット信号の立上りエッジか、立下りエッジ
か、あるいは立上りおよび立下りエッジの両方で捕捉さ
れることを必要とする。例えば、図2の捕捉チャネル5
5はターゲット信号の選択されたエッジが生じたことに
基づきタイマバス71からタイムベース値を捕捉するた
めに使用できる。ターゲット信号は入力/出力(I/
O)集積回路22(図1を参照)の外部から供給しても
よく、あるいはI/O集積回路22の内部で発生しても
よい。捕捉チャネル55は種々の捕捉動作を行うことが
できこれらの動作は所定の制御値を捕捉チャネル55の
1つまたはそれ以上のユーザプログラム可能な制御レジ
スタ格納ビット66(図2、図5、図35および図36
を参照)に書き込むことにより選択することができる。
【0219】数多くの制御の用途はいつタイムベース値
を捕捉するかおよびターゲット信号のエッジが生じたこ
とに基づきいつタイムベース値を捕捉しないかを決定す
るため第2の信号が第2のチャネルによって生成される
ことを必要とする。例えば、図2を参照すると、前記第
2の信号を生成するこの第2のチャネルはチャネル54
であり、該チャネルは整合チャネル、カウンタチャネ
ル、あるいはチャネル57のワークチャネルの内の他の
別の形式のものとすることができる。理想的には、タイ
ムベース値の捕捉のイネーブルおよびディスエーブルは
プロセッサ(例えば、図1のCPU13)による直接の
サービスを要求すべきではなく、かつ捕捉タイムベース
値はターゲット信号の周波数にかかわりなくコヒーレン
トであるべきである。
【0220】しかしながら、従来技術の制御の用途にお
いては、前記第2の信号は割込みを発生することを要求
され、かつプロセッサ(例えば図1のCPU13)によ
って実行される割込みサービスルーチンが捕捉チャネル
内の捕捉動作をイネーブルするために介在することが要
求された。さらに、捕捉チャネル内の捕捉動作をディス
エーブルするために、前記第2の信号は割込みを発生す
ることを要求され、かつ割込みサービスルーチンが前記
捕捉チャネル内の捕捉動作をディスエーブルするために
介在することが要求された。
【0221】また、捕捉されたタイムベース値のコヒー
レンシーを維持するため、従来技術の制御の用途は一般
にターゲット信号の次のアクティブエッジの前におのお
のの捕捉されたタイムベース値を保持レジスタまたはメ
モリに転送するため割込みサービス処理を必要とした。
従って、もしターゲット信号の周波数または頻度が十分
高ければ、割込みサービスルーチンはターゲット信号の
次のアクティブエッジが生じる前に捕捉されたタイムベ
ース値を保持レジスタまたはメモリに常には転送でき
ず、従って捕捉されたタイムベース値のコヒーレンシー
を失うことになる。
【0222】図33は、第2の信号、すなわち捕捉ウイ
ンドウ信号、がタイマバスからのタイムベース値の捕捉
を規定するためにどのように使用されるかを示す。第1
のプログラム可能な選択として、捕捉チャネル55はタ
ーゲット信号の最後の事象(すなわち、最後のアクティ
ブエッジ)に基づきタイムベース値を捕捉しかつ格納す
ることができる。前記アクティブエッジはターゲット信
号の立上りエッジ、立下りエッジ、または任意のエッジ
としてプログラム可能に選択できる。第2に、“N−
1”の他の捕捉チャネルと組み合わせて捕捉チャネル5
5はターゲット信号の“N”の最後のアクティブエッジ
のおのおのに対し1つのタイムベース値を、“N”のタ
イムベース値を捕捉しかつ格納することができる。第3
に、“N−1”の他の捕捉チャネルと組み合わせて捕捉
チャネル55はターゲット信号の“N”の最後の正エッ
ジのおのおのに対し1つのタイムベース値で、“N”の
タイムベース値を捕捉しかつ格納することができる。あ
るいは、“N−1”の他の捕捉チャネルトと組み合わせ
て捕捉チャネル55は、ターゲット信号の“N”の最後
の負エッジのおのおのに対し1つのタイムベース値で、
“N”のタイムベース値を捕捉しかつ格納することがで
きる。第4に、“N−1”の他の捕捉チャネルと組み合
わせて捕捉チャネル55は、ターゲット信号の“N”の
最初のアクティブエッジのおのおのに対し1つのタイム
ベース値で、“N”のタイムベース値を捕捉しかつ格納
することができる。本発明の1実施形態では、2つの捕
捉チャネルが使用され、従って前記数“N”は2であ
る。このパラグラフにおいて使用されているように、
“N”は正の整数を表す。本発明の別の実施形態では他
の捕捉動作を使用することができる。
【0223】上に述べたように、上記捕捉ウインドウ機
能はプロセッサ(例えば、図1のCPU13)によるサ
ービス介在の必要性を除去しかつターゲット信号の周波
数にかかわりなくデータのインタロックを提供する。前
記捕捉ウインドウ機能はタイムベースをいつ捕捉しかつ
いつ捕捉しないかを決定するために捕捉チャネルが直接
スティミュラス(stimulus)(すなわち、捕捉
ウインドウ信号)を受けることができるようにする。従
って、プロセッサ(例えば、図1のCPU13)による
割込みサービスが大幅に低減されかつ捕捉されたタイム
ベース値のコヒーレンシーが、ターゲット信号の周波数
にかかわりなく、維持される。
【0224】前記捕捉ウインドウの特徴的機能は捕捉チ
ャネルによるタイムベース値の捕捉が第2の信号、すな
わち捕捉ウインドウ信号、の論理状態により規定される
ようにすることができ、それによってタイムベース値の
捕捉が前記第2の信号によって規定される「ウインド
ウ」の間にイネーブルされるようにすることができる。
【0225】捕捉ウインドウイネーブルレジスタビット
(図35のCWE501)は捕捉ウインドウ機能をイネ
ーブルするために使用される。捕捉ウインドウはタイム
ベース捕捉動作が行われる時間/角度のインターバルま
たは「ウインドウ」である。捕捉ウインドウビットがセ
ットされている間に、ターゲット信号のエッジに基づく
タイムベースの捕捉は第2の信号、すなわち捕捉ウイン
ドウ信号、の状態により規定される。ターゲット信号に
よるタイムベースの捕捉は捕捉ウインドウ信号の状態が
肯定されている(図33〜図34における論理レベル
“1”)間に許容されかつ前記第2の信号の状態が否定
されている(図33〜図34における論理レベル
“0”)間においてディスエーブルされる。
【0226】図34は、捕捉ウインドウの特徴的機能の
使用および捕捉チャネル55のレジスタ66(図2を参
照)に配置されたあるレジスタ制御ビットの使用の例を
示す。この例では、捕捉ウインドウイネーブルビット
(図35のCWE501)がセットされ、従って捕捉ウ
インドウ機能をイネーブルする。捕捉チャネル55はタ
ーゲット信号のおのおのの立上りエッジが生じたときに
タイマバス71(図2を参照)上に存在するタイムベー
ス値を捕捉する。しかしながら、捕捉チャネル55は捕
捉ウインドウ信号が肯定されかつターゲット信号の選択
されたエッジが生じたときにタイマバス71上に存在す
るタイムベース値を捕捉するのみであることに注意を要
する。従って、捕捉ウインドウ信号が肯定されたインタ
ーバルは捕捉が許容される「ウインドウ」を規定する。
捕捉ウインドウ信号が否定されている間は、ターゲット
信号のさらなるタイムベース捕捉はディスエーブルされ
る。
【0227】図34に示された例では、捕捉ウインドウ
信号はピン/ステータスバス75によりまたは底部隣接
デュアルFIFOチャネル(もしそれが実施されていれ
ば)から捕捉チャネル55に提供されることに注意を要
する。1実施形態では、デュアルFIFOチャネルは値
を格納するための2ディープ(two−deep)FI
FOとして動作することができるワークチャネルであ
る。例えば、図20を参照すると、カウンタチャネル4
02はデュアルFIFOチャネルによって置き換えるこ
とができ、該チャネルは次に捕捉チャネル401のため
の底部隣接デュアルFIFOチャネルとして動作するこ
とができる。もしCWEビット501がピン/ステータ
スバス75を捕捉ウインドウ信号の供給源として選択す
れば、CWIビット505は捕捉チャネル55に捕捉ウ
インドウ信号を提供するために前記ピン/ステータスバ
ス導体75のどれが使用されるかを選択するために使用
される。もしCWEビット501が底部隣接デュアルF
IFOチャネルを捕捉ウインドウ信号の供給源として選
択すれば、CWIビット505は無視される。もし底部
隣接チャネルがデュアルFIFOチャネルでなければ、
かつCWEビット505が底部隣接デュアルFIFOチ
ャネルを選択するようプログラムされていれば、捕捉ウ
インドウはディスエーブルされた状態に留まる。
【0228】さらに図34に示される例を参照すると、
レジスタ66(図35を参照)におけるCIビット50
6が前記捕捉ターゲット信号を捕捉チャネル55に提供
するために前記ピン/ステータスバス導体75の内のど
れを使用するかを選択するために使用される。CIBビ
ット507はタイマバス71からのタイムベース値の捕
捉をトリガするために前記捕捉ターゲット信号のどのエ
ッジ、すなわち立上りエッジ、立下りエッジ、または両
方のエッジ、を選択するために使用される。また、前記
CTBビット503はタイムベース値のどれがタイマバ
ス71からの捕捉チャネル55によって捕捉されるかを
選択するために使用される。
【0229】図35は、レジスタ66(図2および図2
7を参照)の一部の1実施形態を示す。該レジスタビッ
トのいくつかは捕捉チャネル55に対して選択されるモ
ードに依存して異なる機能を持つことができることに注
意を要する。例えば、CI/CDVIビット506は捕
捉ウインドウモードがイネーブルされたときは捕捉入力
(CI)ビットとして機能し、かつデータ転送モードが
選択されたときはクリアデータ有効入力(CDVI)ビ
ットとして機能する。1実施形態では、図35に示され
る制御レジスタビットは次の機能を行う。
【0230】 16/32:16ビットまたは32ビット機能ビット5
00 0−32ビット 1−16ビット
【0231】 CWE:捕捉ウインドウイネーブルビット501 00−捕捉ウインドウディスエーブル 01−CWIビットフィールドによって選択されたステ
ータスラインを使用して捕捉ウインドウイネーブル 1X−底部隣接デュアルFIFOチャネル(もし適用で
きれば)からの入力を使用して捕捉ウインドウイネーブ
【0232】 DTC:データ転送制御ビット502 0X−データ転送ディスエーブル、捕捉イネーブル 10−VADP 11−IADP
【0233】 CTB:捕捉タイムベースビット503 000〜111 タイムベース0〜7
【0234】 SCC:単一/連続捕捉ビット504 0−連続捕捉動作 1−単一捕捉動作
【0235】 CWI:捕捉ウインドウ入力ビット505 000〜111 ステータスビット0〜7
【0236】 CI/CDVI:捕捉入力/クリアデータ有効入力ビッ
ト506 0000〜0111 ピンバス0〜7 1000〜1111 ステータスバス0〜7
【0237】 CIE/CDVE:捕捉入力エッジ/クリアデータ有効
エッジビット507 00−入力ディスエーブル 01−立上りエッジ 10−立下りエッジ 11−両方のエッジ
【0238】 CO/DTO:捕捉出力/データ転送出力ビット508 000〜111 ステータスライン0〜7
【0239】 COE/DTOE:捕捉出力エッジ/データ転送出力エ
ッジビット509 00−出力ディスエーブル 01−立上りエッジ 10−立下りエッジ 11−トグル
【0240】図36は、レジスタ66(図2を参照)の
一部の1実施形態を示す。いくつかの実施形態において
は、レジスタ66は制御レジスタビットおよびステータ
スレジスタビットの双方を含むことに注意を要する。図
36に示される実施形態では、レジスタ66の一部はス
テータス情報を格納するために使用される。1実施形態
では、図36に示されるステータスレジスタビットは次
の機能を行う。
【0241】 CES:捕捉エッジステータスビット510 0−立下りエッジ入力事象検出および関連する捕捉動作
発生 1−立上りエッジ入力事象検出および関連する捕捉動作
発生
【0242】 CDVS:クリアデータ有効ステータスビット511 0−DVB=1検出と共に規定された入力事象なし 1−DVB=1検出と共に規定された入力事象あり
【0243】 COS:捕捉出力ステータスビット512 0−捕捉動作発生せずまたはCOEビットフィールド=
00 1−捕捉動作発生およびCOEビットフィールド=00
【0244】 DTS:データ転送出力ステータスビット512 0−VADPまたはIADPに対する条件検出なし 1−VADPまたはIADPに対する条件検出
【0245】 DVB:データ有効ビット513 0−データレジスタのデータは有効でない 1−データレジスタのデータは有効
【0246】 CIS:捕捉入力ステータス/クリアデータ有効ステー
タスビット514 0−捕捉は発生せず 1−捕捉は発生
【0247】図37は、捕捉チャネル55(図2を参
照)の一部の1実施形態を示す。この実施形態では、捕
捉チャネル55はデータレジスタ520、捕捉論理52
1、データ転送論理522、単一/連続捕捉論理52
3、出力事象論理524、入力事象論理525、および
16〜32ビット論理526を含む。
【0248】図37に示される種々の制御およびステー
タスビットは読出しおよび書込みアクセス可能なレジス
タ内に位置しているが、図37に示されるように捕捉チ
ャネル55のふるまいに影響を与える。DTCレジスタ
ビット502、DVBレジスタビット513、およびD
TSレジスタビット512は図20〜図24および明細
書の関連部分において説明したのと同様にしてチャネル
間でデータ転送を行うために使用されることに注意を要
する。
【0249】〈単一/連続動作タイマチャネルの特徴的
機能〉I/O集積回路22(図1を参照)の1実施形態
においては、各ワークチャネルは単一動作モードおよび
連続動作モードを有する。本発明の1実施形態では、各
カウンタチャネル(例えば、カウンタチャネル58)、
各捕捉チャネル(例えば、捕捉チャネル55)、および
各整合チャネル(例えば、整合チャネル57)はチャネ
ルが単一モードまたは連続モードで動作できるようにす
るユーザがプログラム可能なレジスタを有する。
【0250】例えば、単一/連続カウント動作(SC
C)レジスタビット473(図28を参照)はカウンタ
チャネル58(図2を参照)が単一動作モードにあるか
あるいは連続動作モードにあるかを決定する。単一/連
続捕捉(SCC)レジスタビット504(図35を参
照)は捕捉チャネル55(図2を参照)が単一動作モー
ドにあるかあるいは連続動作モードにあるかを決定す
る。また、単一/連続整合(SCM)レジスタビット5
31(図38を参照)は整合チャネル57(図2を参
照)が単一動作モードにあるかあるいは連続動作モード
にあるかを決定する。
【0251】単一動作モードに入ると、前記関連するタ
イマ機能ステータスビット(例えば、図30のカウント
入力ステータス(CIS)ビット494、図36の捕捉
出力ステータス(COS)ビット512、および図39
の整合ステータス(MS)ビット534)はクリアされ
かつ次にタイマ機能のステータスおよび制御の双方を提
供する。前記ワークチャネルが単一動作モードに対して
構成されている間に、前記チャネルはもし関連するタイ
マ機能ステータスビットがセットされていればディスエ
ーブルされ、かつ前記チャネルはもし関連するタイマ機
能ステータスビットがクリアされていればイネーブルさ
れることになる。
【0252】しかしながら、残念なことに、単一動作モ
ード/連続動作モードのワークチャネルに関連する3つ
の問題がある。第1の問題は連続動作モードから単一動
作モードへのコヒーレントな移行である。第2の問題は
単一動作モードにある場合の整合チャネルの偶然の(i
nadvertent)再イネーブルを防止することで
ある。また、第3の問題は連続動作モードにおける整合
チャネルからの冗長整合事象に基づく複数出力の防止で
ある。
【0253】連続動作モードから単一動作モードへのコ
ヒーレントな移行の問題は次のようにして解決される。
単一動作モードにおいてタイマ機能を行う場合(即ち、
「単一ショット」整合、捕捉、その他)、前記タイマ機
能に関連するステータスビット(即ち、図30における
CISビット494、図36におけるCOSビット51
2、および図39におけるMSビット534)は前記タ
イマ機能がイネーブルされているかあるいはディスエー
ブルされているかを示す。1実施形態では、もしステー
タスビットがクリアされていれば、タイマ機能はイネー
ブルされ、かつもしステータスビットがセットされてい
れば、タイマ機能はディスエーブルされる。実質的に、
前記ステータスビットはタイマ機能の動作を「制御す
る」ことになる。
【0254】連続動作モードにおいてタイマ機能を行う
場合(即ち、「連続」整合、捕捉、その他)、前記タイ
マ機能に関連する同じステータスビットは1つまたはそ
れ以上の事象(即ち、整合、捕捉、その他)が生じてい
るか否かを示す。前記ステータスビットは動作について
の情報を提供するのみであるが、タイマ機能には影響を
与えずあるいはタイマ機能を制御しない。
【0255】連続動作モードから単一動作モードへと移
行する場合、同じ関連するタイマ機能ステータスビット
が「ステータス」機能を行うことから「ステータスおよ
び制御」機能へと移行しなければならない。ワークチャ
ネルが連続動作モードにある間にステータスビットがセ
ットされる可能性が最も高い。単一動作モードへ移行す
る場合、もしステータスビットがセットされた状態にと
どまっておればワークチャネルは直ちに、1つのタイマ
機能を行うことなしに、それ自身をディスエーブルする
ことになる。もしワークチャネルが単一動作モードに入
るに応じてディスエーブルされることになれば、該チャ
ネルはスティミュラス(stimulus)を「失う
(miss)」ことになり、したがって連続から単一動
作モードへのコヒーレントでない移行を引き起こす。
【0256】ワークチャネル回路は関連するステータス
ビットを単一動作モードに入るに応じてそれ自身をクリ
アさせかつ次に該ステータスビットが「ステータスおよ
び制御」機能を達成できるようにする。ワークチャネル
回路は、ステータスビットが使用される方法はモードに
応じて異なるが、連続および単一動作モードの双方に応
じて同じステータスビットを使用する。さらに、2つの
モードの間の遷移は2つのモードの間で遷移している間
にワークチャネルへのスティミュラスが失われない点で
コヒーレントである。
【0257】単一動作モードにある場合の整合チャネル
の偶然の再イネーブルを防止する問題は次のように解決
する。整合チャネル(例えば、図2および図40の整合
チャネル57)が単一動作モードで動作している場合
(即ち、1つの真の比較のみが生じることが可能であり
かつ次に整合チャネルをディスエーブルする)、整合チ
ャネルは関連する整合ステータスビット(例えば、図3
9のMSビット534)が整合が生じていないことを示
している場合(MS=%0)イネーブルされることにな
る。整合チャネルは関連する整合ステータスビットが整
合が生じていることを示している場合(MS=%1)デ
ィスエーブルされることになる。
【0258】幾つかの場合、整合ステータスビットをク
リアしかつ整合チャネルを再イネーブルしないことが望
ましい。前記整合チャネル回路は整合ステータスビット
のみをクリアすることにより前記整合チャネルが再イネ
ーブルされることを防止する。整合チャネルを再イネブ
ールするためには、前記整合ステータスビットはクリア
されなければならずかつ前記データレジスタ(例えば、
図40におけるデータレジスタ540)が書き込まれな
ければならない。これはCPU13(図1を参照)が整
合チャネルを再イネーブルされることなく整合チャネル
を操作する(即ち、制御レジスタに格納された制御値を
変更し、整合レジスタ(例えば、図40の540)に格
納されたデータ値を変更し、かつ前記整合ステータスビ
ットを否定する)コヒーレントな方法を提供する。整合
機能を再イネーブルすることなくCPU13(図1を参
照)が整合ステータスビットをクリアできるようにする
ことは有用な機能である。
【0259】連続動作モードにある場合に冗長な整合事
象に基づく複数出力を防止する問題は次のようにして解
決される。連続動作モードにおいて整合チャネルが「低
速(slow)」タイムベースに対して整合している場
合(即ち、整合レートの半分より低い周波数で増分す
る)、同じタイムベース値に対して複数の比較をもつこ
とが可能である。該タイムベース値がデータレジスタに
おける値に等しくかつ複数の比較にわたり同じにとどま
っている場合は、データレジスタはそれが比較を行うた
びごとに真の比較信号を肯定することになる。
【0260】どれだけ多くの「真の比較」信号が発生さ
れるかにかかわりなく、タイムベース値と整合レジスタ
の値との間の整合に応じて1つの出力のみを肯定するこ
とが望ましい。前記整合チャネル回路は出力を発生する
ために以下の真の比較信号のみを可能にする。即ち、
(1)最後の偽の比較から最初の真の比較、そして
(2)整合レジスタがそのデータレジスタにおける新し
いデータを受信してから最初の真の比較(即ち、CPU
13によって書き込まれまたは隣接チャネルからの転
送)である。連続整合インタロックは前記最初の真の整
合が生じた場合にセットされ(整合を禁止し)、かつ同
じタイムベースにおける最後の真の比較から最初の偽の
比較の発生に応じて、あるいは連続モードにある間に整
合がディスエーブルされた時(即ち、SCM=%0およ
びMOE=%000)クリアされる(整合をイネーブ
ル)その結果、整合タイムベースの周波数または頻度に
かかわりなく、何らの冗長な整合も生じない。
【0261】図38は、レジスタ65(図2を参照)の
一部の1実施形態を示す。1実施形態では、図38に示
された制御レジスタビットは次の機能を行う。
【0262】 12/16/32:12/ハーフワード/ワード選択ビ
ット529 0X−32ビット(ワード) 10−12ビット 11−16ビット
【0263】 MTB:整合タイムベースビット530 000〜111 タイムベース0〜7
【0264】 SCM:単一/連続整合ビット531 0−連続整合動作 1−単一整合動作
【0265】 MO:整合出力ビット532 0000〜0111 ピンバス0〜7 1000〜1111 ステータスバス0〜7
【0266】 MOE:整合出力エッジビット533 000−出力およびイコールツウコンペアがディスエー
ブル 001−立上りエッジを出力 010−立下りエッジを出力 011−トグルを出力 100−ピン/ステータスをセットするため条件AND
出力 101−ピン/ステータスをセットするため条件OR出
力 110−ピン/ステータスをクリアするため条件AND
出力 111−ピン/ステータスをクリアするため条件OR出
【0267】図39は、レジスタ65(図27を参照)
の一部の1実施形態を示す。幾つかの実施形態では、レ
ジスタ65は制御レジスタビットおよびステータスレジ
スタビットの双方を含むことに注意を要する。図39に
示される実施形態では、レジスタ65の一部はステータ
ス情報を格納するために使用される。1実施形態では、
図39に示されるステータスレジスタビットは次の機能
を行う。
【0268】 MS:整合ステータス 0−整合が生じていない。 1−整合事象が生じている。
【0269】図40は、整合チャネル57(図2を参
照)の一部の1実施形態を示す。この実施形態では、整
合チャネル57はデータレジスタ540、イコールツウ
コンパレータ論理(equal to compara
tor logic)541、12/16/32選択論
理542、整合論理543、および出力事象論理544
を含む。1実施形態では、データレジスタ540は独立
に動作できる2つの部分、即ち上位部分および下位部
分、に区分することができる。1実施形態では、前記2
つの整合部分の各々は、前記区分を制御する一組の12
/16/32選択ビット529のみを有することを除
き、図38および図39に示されるように別個の組の制
御およびステータスレジスタビットを有する。前記第1
の整合部分はデータレジスタ540の第1の部分、イコ
ールツウコンパレータ論理541、整合論理543およ
び出力事象論理544を使用し、第2の整合部分はデー
タレジスタ540の第2の部分、イコールツウコンパレ
ータ論理541、整合論理543、および出力事象論理
544を使用する。
【0270】図40に示される種々の制御およびステー
タスビットは、読出しおよび書込みアクセス可能なレジ
スタ内に位置するが、図40に示されるように整合チャ
ネル57のふるまいに影響を与える。図40に示される
実施形態では、整合チャネル57は前記レジスタビット
および隣接チャネル間でデータ転送を行うのに必要な回
路を含まない。しかしながら、図40および図37を参
照すると、本発明の別の実施形態では、整合チャネル5
7は捕捉チャネル55におけるデータ転送論理522お
よびレジスタビットDTC471,DVB493および
DTS492と同じ機能を行うデータ転送論理およびレ
ジスタビットDTC,DVBおよびDTSを含むことが
できる。もし実施されれば、整合チャネルへのまたは整
合チャネルからのデータ転送は図20〜図24および明
細書の関連部分に記載されたのと同様に行われる。
【0271】さらに図40を参照すると、整合チャネル
57は単一および連続整合動作をサポートする。単一ま
たは連続整合動作で機能する間に、データレジスタ54
0の値はタイマバス71からの8つの値の内の1つと比
較される。出力事象はピン/ステータスバス76へ発生
されかつ提供されるようにプログラムすることができ
る。整合チャネル57の1実施形態の動作を該動作の目
的、該動作を構成する制御ビット、および発生される出
力事象に従って説明する。
【0272】単一および連続整合動作においては、有効
データおよびタイマバス71からの値(32ビットまた
は12/16ビットのタイムベース値)の間で整合が発
生する。前記タイムベース値はMTBレジスタビット5
30(図38を参照)をプログラムすることにより選択
される。タイムベース値のビットの数は前記12/16
/32選択ビット529をプログラムすることにより選
択される。例えば、もし12ビット動作が選択されれ
ば、タイムベース値の下位12ビットおよびデータレジ
スタ540の値の下位12ビットがイコールツウコンパ
レータ541によって比較されることになる。
【0273】もしMOEビット533が%000に等し
くなければ、かつデータレジスタ540の値がタイマバ
ス71からのタイムベース値に等しければ、整合が発生
しかつMSビット534(図39を参照)がセットされ
る。次に出力事象が発生されかつ前記バス/ステータス
バス導体76の1つに提供される。出力事象の形式はM
OEビット533(図38を参照)をプログラムするこ
とにより選択される。もしMOEビット533が%00
0に等しければ、出力事象論理544およびイコールツ
ウコンパレータ541の双方がディスエーブルされる。
出力事象のデスティネイションはMOビット532(図
38を参照)をプログラムすることにより選択される。
【0274】前記単一/連続整合(SCM)ビット53
1(図38を参照)はCPU13(図1を参照)よりサ
ービスを行うソフトウエアの間で1つのみの出力事象を
生成するか(即ち、単一動作モード)あるいは1つより
多くの出力事象を生成するか(即ち、連続動作モード)
を選択するために使用される。
【0275】前記単一/連続整合(SCM)ビット53
1(図38を参照)が%1である場合は、単一整合動作
が選択される。単一整合動作においては、いったんタイ
マバス71からのタイムベース値およびデータレジスタ
540に格納された値が等しくなると、出力事象がピン
/ステータスバス76上に発生されかつ単一整合インタ
ロックメカニズムが肯定されて冗長な整合を防止する。
その後の出力事象は単一の整合インタロックメカニズム
が解除された後にのみ発生することができる。前記単一
の整合インタロックメカニズムを解除するために以下の
2つの行動が必要とされ(該2つの行動は任意の順序で
行うことができる)、即ち、(1)整合ステータス(M
S)ビット534(図39を参照)が肯定状態(即ち、
論理レベル“1”)で読み取られかつ否定状態(即ち、
論理レベル“0”)でMSビット534に書き戻され、
かつ(2)データレジスタ540に1つの値が書き込ま
れる。
【0276】CPU13(図1を参照)は前記単一整合
インタロックメカニズムによって要求される読出しおよ
び書込みアクセスを行うために使用できる。また、アク
ション(2)が以下の理由で前記単一の整合インタロッ
クメカニズムを解除するのに必要である。もし出力事象
および割込み要求を同じピン/ステータスバス状態76
上に発生している複数の整合チャネルがあれば、アクシ
ョン(2)はMSビット534が整合チャネルに対して
クリアできるようにし、それによって、整合を再イネー
ブルすることなく、割込み供給源のステータスをクリア
する。
【0277】前記単一/連続整合(SCM)ビット53
1(図38を参照)が%0である場合は、連続整合動作
が選択される。連続整合動作においては、いったんタイ
マバス71からのタイムベース値およびデータレジスタ
540に格納された値が等しくなると、出力事象がピン
/ステータスバス76上に発生されかつ連続整合インタ
ロックメカニズムが肯定されて冗長な整合を防止する。
その後の出力事象は前記連続整合インタロックメカニズ
ムが解除された後にのみに発生できる。前記整合インタ
ロックは等しくない比較が生じた後にあるいはMOEビ
ット533が%000にクリアされた場合に解除され
る。前記MSビット534は最初の整合が生じた後にセ
ットされるが、MSビット534のクリアはその後の整
合が生じるのに必要とされない。
【0278】本発明が特定の実施形態に関して示されか
つ説明されたが、当業者にはさらなる変更および改善を
なすことができる。従って、この発明は示された特定の
形式に限定されるものではなくかつ添付の特許請求の範
囲によりこの発明の精神および範囲から離れることのな
いすべての変更をカバーすることを意図していることが
理解されるべきである。
【0279】
【発明の効果】以上のように、本発明によれば、柔軟性
および強化されたI/O能力を備えた改善されたタイマ
能力を有する入力/出力プロセッサが提供される。
【図面の簡単な説明】
【図1】本発明の1実施形態に係わるデータ処理システ
ム10を示すブロック図である。
【図2】本発明の1実施形態に係わる図1の回路25の
一部を示すブロック図である。
【図3】本発明の1実施形態に係わる図1の回路26の
一部を示すブロック図である。
【図4】本発明の1実施形態に係わる図1の回路25の
一部を示すブロック図である。
【図5】本発明の1実施形態に係わる図1の回路25の
一部を示すブロック図である。
【図6】リセット導体168の論理レベルを決定するた
めに図5のピン制御回路64によって使用される真理値
表を示す説明図である。
【図7】本発明の1実施形態に係わる図5の制御レジス
タ166の一部および制御レジスタ167の一部を示す
ブロック図である。
【図8】図7のピン出力スティミュラス制御ビット18
2または183によってユーザプログラム可能な一組の
機能を図表形式で示す説明図である。
【図9】整合チャネル160および161の状態の論理
的AND操作および論理的OR操作によって図5のピン
165に生成される結果の例を図表形式で示す説明図で
ある。
【図10】本発明の1実施形態に係わる図1の回路26
および27の一部を示すブロック図である。
【図11】本発明の1実施形態に係わる図10の制御レ
ジスタ226の一部を示すブロック図である。
【図12】本発明の1実施形態に係わる図10の回路2
6の一部を示すブロック図である。
【図13】本発明の1実施形態に係わる図2の回路6
1,62,80,81および86における各チャネルの
一部を示すブロック図である。
【図14】本発明の1実施形態に係わる図2の回路25
の一部を示すブロック図である。
【図15】タイマバスの異なるタイムスロットの間にユ
ーザがどのようにして選択的に1つまたはそれ以上のタ
イムベース値を提供することができるかの8つの例を図
表形式で示す説明図である。
【図16】本発明の1実施形態に係わるタイマシステム
集積回路280を示すブロック図である。
【図17】本発明の1実施形態に係わるデータ処理シス
テム315を示すブロック図である。
【図18】本発明の1実施形態に係わる図16のマスタ
タイムベースチャネル285の一部およびスレイブタイ
ムベースチャネル288の一部を示すブロック図であ
る。
【図19】本発明の1実施形態に係わる図17のマスタ
タイムベースチャネル304の一部およびスレイブタイ
ムベースチャネル310の一部を示すブロック図であ
る。
【図20】本発明の1実施形態に係わる図1の回路25
の一部を示すブロック図である。
【図21】本発明の1実施形態に係わる図20の捕捉チ
ャネル401の一部を示すブロック図である。
【図22】本発明の1実施形態に係わる図20の捕捉チ
ャネル401の一部を示すブロック図である。
【図23】その動作モードの各々において構成されてい
る間のデータ転送動作をサポートする各チャネルのDV
Bビット(例えば、図22の425)をセットおよびク
リアできるアクションを図表形式で示す説明図である。
【図24】データ転送動作を有する各チャネルにおける
データ転送制御ビット(DTC)(例えば、図21およ
び図22の423〜424)によって制御されるデータ
転送動作のモードを図表形式で示す説明図である。
【図25】本発明の1実施形態に係わる従来技術の手法
より累積エラーが少ない結果異なる周期または期間累積
測定を行うための改善された方法を示すタイミング図で
ある。
【図26】本発明の1実施形態に係わる期間または周期
累積測定を行うための改善された方法を示すタイミング
図である。
【図27】本発明の1実施形態に係わる図2のカウンタ
チャネル58の一部を示すブロック図である。
【図28】本発明の1実施形態に係わる図2のレジスタ
67の第1の部分を示すブロック図である。
【図29】本発明の1実施形態に係わる図2のレジスタ
67の第2の部分を示すブロック図である。
【図30】本発明の1実施形態に係わる図2のレジスタ
67の第3の部分を示すブロック図である。
【図31】本発明の1実施形態に係わる期間または周期
累積測定を行うための改善された方法を示すタイミング
図である。
【図32】本発明の1実施形態に係わる図2のカウンタ
チャネル58の一部を示すブロック図である。
【図33】本発明の1実施形態に係わるタイムベース値
を捕捉するための改善された方法を示すタイミング図で
ある。
【図34】本発明の1実施形態に係わるタイムベース値
を捕捉するための改善された方法を示すタイミング図で
ある。
【図35】本発明の1実施形態に係わる図2のレジスタ
66の第1の部分を示すブロック図である。
【図36】本発明の1実施形態に係わる図2のレジスタ
66の第2の部分を示すブロック図である。
【図37】本発明の1実施形態に係わる図2の捕捉チャ
ネル55の一部を示すブロック図である。
【図38】本発明の1実施形態に係わる図2のレジスタ
65の第1の部分を示すブロック図である。
【図39】本発明の1実施形態に係わる図2のレジスタ
65の第2の部分を示すブロック図である。
【図40】本発明の1実施形態に係わる図2の整合チャ
ネル57の一部を示すブロック図である。
【符号の説明】
22 タイマプロセッサ 25〜29 IOCM 50 タイムベース選択信号 52 ピン制御チャネル 56,57 ワークチャネル 61,62 タイマバス制御チャネル 71,72 タイマバス 80,81 タイムベースチャネル 58 チャネル 75〜77 ピン/ステータスバス 86,87 チャネル
フロントページの続き (72)発明者 デービッド・リベラ アメリカ合衆国テキサス州78749、オース チン、マリコパ・コウブ 7404

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 タイマプロセッサ(22)であって、 第1のタイマバス(71)、 第2のタイマバス(72)、 複数のタイムベース選択信号(50)、 第1のタイムベース値を発生するための第1のタイムベ
    ースチャネル(80の内の1つ)であって、該第1のタ
    イムベースチャネル(80の内の1つ)は前記複数のタ
    イムベース選択信号(50)に結合されているもの、 第2のタイムベース値を発生するための第2のタイムベ
    ースチャネル(81の内の1つ)であって、該第2のタ
    イムベースチャネル(81の内の1つ)は前記複数のタ
    イムベース選択信号に結合されているもの、 前記第1のタイムベースチャネル(80の内の1つ)に
    対応し、前記第1および第2のタイムベースチャネル
    (80,81)の内の1つを選択し、かつもし前記第1
    のタイムベースチャネル(8Oの内の1つ)が選択され
    れば、前記第1のタイマバス(71)を前記第1のタイ
    ムベース値でドライブする第1のタイマバス制御チャネ
    ル(61)であって、該第1のタイマバス制御チャネル
    (61)は前記第1のタイマバス(71)におよび前記
    複数のタイムベース選択信号(50)に結合されている
    もの、 前記第2のタイムベースチャネル(81の内の1つ)に
    対応し、前記第2のタイムベースチャネル(81の内の
    1つ)が選択されれば前記第1のタイマバス(71)を
    前記第2のタイムベース値でドライブする第2のタイマ
    バス制御チャネル(62)であって、該第2のタイマバ
    ス制御チャネル(81の内の1つ)は前記第1のタイマ
    バス(71)にかつ前記複数のタイムベース選択信号
    (50)に結合されているもの、 ピンおよびステータス情報を提供するためのピン/ステ
    ータスバス、 前記ピンおよびステータスバスによる前記ピンおよびス
    テータス情報の転送を制御するためのピン制御チャネル
    (52)、 前記第1のタイムベース値を受信するために前記第1の
    タイマバス(71)に結合されかつ前記ピンおよびステ
    ータス情報を受信するために前記ピン/ステータスバス
    に結合された、第1のワークチャネル(57)、そして
    第3のタイムベース値を受信するために前記第2のタイ
    マバス(72)に結合されかつ前記ピンおよびステータ
    ス情報を受信するために前記ピン/ステータスバスに結
    合された、第2のワークチャネル(56)、 を具備することを特徴とするタイマプロセッサ(2
    2)。
  2. 【請求項2】 集積回路タイマ(22)であって、 第1のタイマバス(71)、 第1のタイムベース値を発生するための第1のタイムベ
    ースチャネル(80の内の1つ)、 第2のタイムベース値を発生するための第2のタイムベ
    ースチャネル(81の内の1つ)、 前記第1のタイムベースチャネル(80の内の1つ)に
    対応し、前記第1および第2のタイムベースチャネル
    (80,81)の内の1つを選択し、かつもし前記第1
    のタイムベースチャネル(80の内の1つ)が選択され
    れば、前記第1のタイマバス(71)を前記第1のタイ
    ムベース値でドライブするための第1のタイマバス制御
    チャネル(61)、そして前記第2のタイムベースチャ
    ネル(81の内の1つ)に対応し、前記第2のタイムベ
    ースチャネル(81の内の1つ)が選択された場合には
    前記第1のタイマバス(71)を前記第2のタイムベー
    ス値でドライブするための第2のタイマバス制御チャネ
    ル(62)、 を具備することを特徴とする集積回路タイマ(22)。
  3. 【請求項3】 集積回路タイマ(22)であって、 複数のデータ導体(435)、 第1のタイマチャネル(400)であって、 第1のデータ値を格納するための第1のデータ格納回路
    (403)、を具備するもの、 第2のタイマチャネル(404)であって、 第2のデータ格納回路(404)、 前記第1のデータ格納回路から前記第2のデータ格納回
    路への前記第1のデータ値の転送を制御するための転送
    回路(408)であって、前記第1のデータ値は前記複
    数の導体によって転送されるもの、を具備する前記第2
    のタイマチャネル(404)、 を具備し、前記第1および第2のタイマチャネル(40
    0,404)の内の第1の1つは前記第1のデータ値に
    関連するタイマ機能を行い、かつ前記第1および第2の
    タイマチャネル(400,404)の内の第2の1つは
    前記第1のデータ値に関連するタイマ機能を行うことな
    く前記第1のデータ値を格納することを特徴とする集積
    回路タイマ(22)。
  4. 【請求項4】 タイマプロセッサ(22)であって、 第1の集積回路ボンディングパッド(110の内の1
    つ)、 第2の集積回路ボンディングパッド(111の内の1
    つ)、 第1のワークチャネル(101)、 第2のワークチャネル(102)、 第3のワークチャネル(103)、 第1のピン/ステータスバスであって、 第1のピン情報導体(112の内の1つ)、および第1
    のピン/ステータス情報導体(113の内の1つ)、を
    具備するもの、 第2のピン/ステータスバスであって、 第2の情報導体(114の内の1つ)、および第2のピ
    ン/ステータス情報導体(115の内の1つ)、を具備
    するもの、そして前記第1のピン情報導体(112の内
    の1つ)を介して前記第1のワークチャネル(101)
    と前記第1の集積回路ボンディングパッド(110の内
    の1つ)の間で情報を選択的に転送し、前記第1のピン
    /ステータス情報導体(113の内の1つ)を介して前
    記第1のワークチャネル(101)と前記第2の集積回
    路ボンディングパッド(111の内の1つ)の間で情報
    を選択的に転送し、前記第1のピン/ステータス導体
    (113の内の1つ)を介して前記第1のワークチャネ
    ル(101)と前記第2のワークチャネル(102)と
    の間で選択的に情報を転送し、そして前記第1および第
    2のピン/ステータス導体(113,115)を介して
    前記第1のワークチャネル(101)と前記第3のワー
    クチャネル(103)との間で選択的に情報を転送する
    ための制御手段(105,106,107)であって、
    該制御手段(105,106,107)は前記第1およ
    び第2の集積回路ボンディングパッド(110,11
    1)、前記第1および第2および第3のワークチャネル
    (101,102,103)、および前記第1および第
    2のピン/ステータスバスに結合されているもの、 を具備することを特徴とするタイマプロセッサ(2
    2)。
  5. 【請求項5】 集積回路タイマ(22)であって、 第1の複数のワークチャネル(206)、 前記第1の複数のワークチャネル(206)の各々に結
    合された第1のローカルバス(218)、 第2の複数のワークチャネル(205)、 前記第2の複数のワークチャネル(205)の各々に結
    合された第2のローカルバス(217)、そして前記第
    1の複数のワークチャネル(206)の内の少なくとも
    1つに選択的に結合されかつ前記第2の複数のワークチ
    ャネル(205)の内の少なくとも1つに選択的に結合
    されたグローバル通信バス(200)であって、該グロ
    ーバル通信バス(200)は前記第1の複数のワークチ
    ャネル(206)の内の少なくとも1つからタイミング
    信号を受信しかつ該タイミング信号を前記第2の複数の
    ワークチャネル(205)の内の少なくとも1つに提供
    するもの、 を具備することを特徴とする集積回路タイマ(22)。
  6. 【請求項6】 集積回路タイマ(22)であって、 第1のワークチャネル(160)、 第2のワークチャネル(161)、 前記第1のワークチャネル(160)から第1のセット
    値を受信し、前記第2のワークチャネル(161)から
    第2のセット値を受信し、かつ結果セット値を提供する
    ためのセット導体手段(157)であって、該セット導
    体手段(157)は前記第1および第2のワークチャネ
    ル(160,161)に結合されているもの、 前記第1のワークチャネル(160)から第1のクリア
    値を受信し、前記第2のワークチャネル(161)から
    第2のクリア値を受信し、かつ結果クリア値を提供する
    ためのクリア導体手段(158)であって、該クリア導
    体手段(158)は前記第1および第2のワークチャネ
    ル(160,161)に結合されているもの、 前記第1のワークチャネル(160)から第1のトグル
    値を受信し、前記第2のワークチャネル(161)から
    第2のトグル値を受信し、かつ結果トグル値を提供する
    ためのトグル導体手段(159)であって、該トグル導
    体手段(159)は前記第1および第2のワークチャネ
    ル(160,161)に結合されているもの、 前記結果セット値、前記結果クリア値、および前記結果
    トグル値を受信するための制御手段(64)であって、
    該制御手段(64)は前記出力信号の論理状態が前記結
    果セット値、前記結果クリア値および前記結果トグル値
    によって決定されるように出力信号(168)を提供
    し、前記制御手段(64)は前記セット導体(15
    7)、前記クリア導体(158)、および前記トグル導
    体(159)に結合されているもの、 を具備することを特徴とする集積回路タイマ(22)。
  7. 【請求項7】 集積回路タイマ(280)であって、 第1のタイムベース値を転送するための第1のタイムベ
    ースバス(71、または271)を有する第1のタイマ
    モジュール(281)、 第2のタイムベース値を転送するための第2のタイムベ
    ースバスを有する第2のタイマモジュール(282)、 クロック信号を転送するためのクロック導体(328)
    であって、前記クロック信号は前記第1および第2のタ
    イマモジュール(281,282)の内の1つによって
    発生され、前記クロック導体(328)は前記第1およ
    び第2のタイマモジュール(281,282)に結合さ
    れているもの、そして同期信号を転送するための同期導
    体(329)であって、前記同期信号は前記第1および
    第2のタイマモジュール(281,282)の内の1つ
    によって肯定され、前記同期導体は前記第1および第2
    のタイマモジュール(281,282)に結合されてい
    るもの、 を具備し、前記第1のタイマモジュール(281)は、 前記第1のタイムベース値を発生するための第1のタイ
    ムベースカウンタ(320)であって、該第1のタイム
    ベースカウンタ(320)は前記クロック信号によって
    増分または減分され、前記第1のタイムベースカウンタ
    (320)は前記同期信号が肯定された時所定の値によ
    ってロードされるもの、 を具備し、前記第2のタイマモジュール(282)は、 第2のタイムベース値を発生するための第2のタイムベ
    ースカウンタ(321)であって、該第2のタイムベー
    スカウンタ(321)は前記クロック信号により増分ま
    たは減分され、前記第2のタイムベースカウンタ(32
    1)は前記同期信号が肯定された時前記所定の値によっ
    てロードされるもの、 を具備することを特徴とする集積回路タイマ(28
    0)。
  8. 【請求項8】 集積回路タイマ(22)であって、 第1のタイマチャネル(55)、 第2のタイマチャネル(57)、 第1の期間の間に第1のタイムベース値を転送し、かつ
    第2の期間の間に第2のタイムべース値を転送するため
    のタイマバス導体手段(71)であって、該タイマバス
    導体手段(71)は前記第1および第2のタイマチャネ
    ル(55,57)に結合されているもの、そして前記第
    1のタイムベース値に対応する第1のタグ値を転送し、
    かつ前記第2のタイムベース値に対応する第2のタグ値
    を転送するためのタグ導体手段(50)であって、該タ
    グ導体手段(50)は前記第1および第2のタイマチャ
    ネル(55,57)に結合されているもの、 を具備することを特徴とする集積回路タイマ(22)。
JP8315630A 1995-11-13 1996-11-12 改善されたタイマ能力を有する集積回路入力/出力プロセッサ Pending JPH09146779A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/555,456 1995-11-13
US08/555,456 US5634045A (en) 1995-11-13 1995-11-13 Integrated circuit input/output processor having improved timer capability

Publications (1)

Publication Number Publication Date
JPH09146779A true JPH09146779A (ja) 1997-06-06

Family

ID=24217325

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8315630A Pending JPH09146779A (ja) 1995-11-13 1996-11-12 改善されたタイマ能力を有する集積回路入力/出力プロセッサ

Country Status (6)

Country Link
US (1) US5634045A (ja)
EP (1) EP0773491A3 (ja)
JP (1) JPH09146779A (ja)
KR (1) KR100459738B1 (ja)
CN (1) CN1159619A (ja)
TW (1) TW309603B (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5812833A (en) * 1995-11-13 1998-09-22 Motorola, Inc. Timer bus structure for an integrated circuit
US6233636B1 (en) 1998-12-03 2001-05-15 International Business Machines Corporation Method and system for allowing PCI bus transactions to be performed at higher operating frequencies
GB2369751A (en) * 2000-11-30 2002-06-05 Nokia Mobile Phones Ltd Communication of data
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
JP4994254B2 (ja) * 2007-03-08 2012-08-08 ルネサスエレクトロニクス株式会社 データプロセッサ及び制御システム
KR102683747B1 (ko) * 2019-01-22 2024-07-11 에스케이하이닉스 주식회사 반도체 메모리 장치
US11366488B1 (en) 2021-05-20 2022-06-21 Nxp Usa, Inc. Timer for use in an asymmetric mutli-core system
CN115047852A (zh) * 2022-06-16 2022-09-13 神龙汽车有限公司 一种车辆软件刷写方法和系统

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06103507B2 (ja) * 1984-11-02 1994-12-14 株式会社日立製作所 パルス入出力プロセッサ及びそれを用いたマイクロコンピュータ
US5042005A (en) * 1988-08-19 1991-08-20 Motorola, Inc. Timer channel with match recognition features
US4926319A (en) * 1988-08-19 1990-05-15 Motorola Inc. Integrated circuit timer with multiple channels and dedicated service processor
US5129078A (en) * 1988-08-19 1992-07-07 Groves Stanley E Dedicated service processor with inter-channel communication features
US4942522A (en) * 1988-08-19 1990-07-17 Motorola, Inc. Timer channel with multiple timer reference features
US4952367A (en) * 1988-08-19 1990-08-28 Motorola, Inc. Timer channel for use in a multiple channel timer system
US5117498A (en) * 1988-08-19 1992-05-26 Motorola, Inc. Processer with flexible return from subroutine
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

Also Published As

Publication number Publication date
EP0773491A3 (en) 1998-11-04
CN1159619A (zh) 1997-09-17
KR970028966A (ko) 1997-06-26
TW309603B (ja) 1997-07-01
KR100459738B1 (ko) 2005-04-19
EP0773491A2 (en) 1997-05-14
US5634045A (en) 1997-05-27

Similar Documents

Publication Publication Date Title
US5434996A (en) Synchronous/asynchronous clock net with autosense
US5469548A (en) Disk array controller having internal protocol for sending address/transfer count information during first/second load cycles and transferring data after receiving an acknowldgement
EP1124179B1 (en) An apparatus for signal synchronization between two clock domains
JP4384819B2 (ja) 弾性インターフェース装置およびそのための方法
EP0664907B1 (en) Disk array controller utilizing command descriptor blocks for control information
US5822381A (en) Distributed global clock system
CA2291276A1 (en) Bus arrangements for interconnection of discrete and/or integrated modules in a digital system and associated method
US5729721A (en) Timebase synchronization in separate integrated circuits or separate modules
US6055597A (en) Bi-directional synchronizing buffer system
US6266780B1 (en) Glitchless clock switch
JP2002539526A (ja) 動的ウェーブパイプライン式インターフェース装置およびその方法
WO1994009435A9 (en) Disk array controller utilizing command descriptor blocks for control information
US5812833A (en) Timer bus structure for an integrated circuit
EP1292894A2 (en) Multiprotocol computer bus interface adapter and method
EP0980040B1 (en) Pseudo lockstep data processing system
US5699529A (en) Work station or similar data processing system including interfacing means to a data channel
JPH09146779A (ja) 改善されたタイマ能力を有する集積回路入力/出力プロセッサ
EP0463775B1 (en) Multiple speed expansion card
EP1396786A1 (en) Bridge circuit for use in retiming in a semiconductor integrated circuit
US6029253A (en) Method for synchronizing data with a bi-directional buffer
Yun et al. A high-performance asynchronous SCSI controller
US5721889A (en) Data transfer between integrated circuit timer channels
US5631853A (en) Flexible configuration of timebases in a timer system
KR100963706B1 (ko) 데이터 전송 방법, 데이터 전송 브리지 및 고속 데이터전송 장치
US5701421A (en) Pin and status bus structure for an integrated circuit

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20041217

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050324

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20050325

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050906

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20051206

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20051214

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060704