JPH09507938A - 処理装置からクロックへのインターフェース - Google Patents
処理装置からクロックへのインターフェースInfo
- Publication number
- JPH09507938A JPH09507938A JP8531417A JP53141796A JPH09507938A JP H09507938 A JPH09507938 A JP H09507938A JP 8531417 A JP8531417 A JP 8531417A JP 53141796 A JP53141796 A JP 53141796A JP H09507938 A JPH09507938 A JP H09507938A
- Authority
- JP
- Japan
- Prior art keywords
- component
- components
- clock
- data
- command
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
- G06F13/4291—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Microcomputers (AREA)
Abstract
(57)【要約】
本発明は、種々の機能的コンポーネントを持ったプロセッサ・システムに関連し、クロック・コンポーネント(100)とPUコンポーネント(103)乃至(104)との間のコミュニケーションのためのコミュニケーション回路を提供する。本発明は前記コンポーネント相互間のコミュニケーション回路を単一の直列信号リンク(105)にまで減少させる。これはコミュニケーション配線を著しく減少させる。単一の直列リンクからN個の並列直列リンク(203)乃至(204)までの任意の数のこれら直列リンクが単一の論理的直列リンクを実現するように結合可能である。上記直列リンクの数は外部環境に従って選択可能であり、広範囲の設計の融通性を与える。更に、コミュニケーション回路は、データ・フレームと呼ばれる良く定義された構造を持ったデータのブロックとして情報を転送することによって操作される双方向性の同期コミュニケーション・リンクを実現する。どの送信エラー検出及び訂正が可能になるかに基づいて特別のプロトコルがクロックとPUコンポーネントとの間で実行される。
Description
【発明の詳細な説明】
処理装置からクロックへのインターフェース
1.発明の背景
1.1 技術分野
本発明は、CPUとも呼ばれる少なくとも1つの処理装置(PU)及びクロッ
ク・コンポーネントを含む多数の機能的コンポーネントより成るプロセッサ・シ
ステムにおいて、そのクロック・コンポーネントとPUコンポーネントとの間の
接続及びデータ交換のためのコミュニケーション回路に関する。
1.2 従来技術
プロセッサ・システムは、一般には、種々の機能的コンポーネントより成る。
これらの機能的コンポーネントは、要件及び制限のタイプによって、単一のチッ
プ内に統合されたり、或いは幾つかの個別のチップ上に分散されたりする。シリ
コンの領域上の拘束のために、多くのマイクロプロセッサは単一のチップより成
るのではなく、チップ・セットより成る。主要なコンポーネントは、一般には、
基本的なCPUコンポーネント、メモリ管理装置コンポーネント、浮動小数点コ
プロセッサ・コンポーネント、及びバス・アダプタ・コンポーネントである。メ
インフレーム・アーキテクチャは別個のク
ロック・コンポーネント、特別の高速制御記憶コンポーネント、メモリ・コント
ローラ・コンポーネント、及び特定のサービス・プロセッサ・コンポーネント(
SP)を含むことが多い。
マシン・サイクルはコンピュータにおけるタイミングの基本単位である。1マ
シン・サイクル内で、例えば、加算を行うと云うようなアトミック・オペレーシ
ョンが生じる。命令は1又は数マシン・サイクル内で実行される。マシン・サイ
クルは外部タイミング源、即ち、一定の周波数を持った発振器(通常は、水晶)
によって制御される。クロック・ロジックはこの入力を使用して種々のタイミン
グ信号を発生し、そのマシン・サイクル内の望ましいタイミング・ポイントでプ
ロセッサ・ロジックを制御する。既存のマイクロプロセッサ・デザインは次のよ
うな2つの異なる方法のうち1つでクロック・ロジック機能を実施する。
● クロック機能は個々のPU(又は、CPUコンポーネント)、浮動小数点
プロセッサ・コンポーネント等に統合される。
● 又は、別個のクロック・コンポーネントが他のすべてのコンポーネントに
対するクロック信号を発生する。
第2の方法の典型的な例は、「システム/390の動作原理(system/390 Pri
nciples of Operations)」に記述されたIBM/390メインフレーム・アー
キテクチャを実施するIBM/390プロセッサである。
そのシステムの同期的に稼働する部分は幾つものチップに跨るので、クロッキ
ング・システムの設計は特別な注意を払うに値する。クロック信号が幾つかのチ
ップ上に分散される場合、個々のチップは処理の許容誤差に関して非常に異なる
ことがある。従って、同じクロック信号が、クロック・スキューと呼ばれる時間
的なばらつきでもって受信ロジックに到達することがある。クロック信号配線の
ための慎重に設計されたトポロジと共に、集中型クロック・コンポーネントがク
ロック・スキューを大きく減少させる。
クロック・コンポーネントは、クロック発生に加えて、稼働制御オペレーショ
ン、即ち、スタート・ストップ制御、パワー・オン・リセット認識、他のコンポ
ーネントに対するリセット・シーケンス発生、クロック・チェック、及びコンソ
ール・キー制御のような機能を遂行する。
クロック・コンポーネントは、システムにおける他のコンポーネントが必要と
するクロック信号をすべて集中的に発生する。それは外部のハイブリッド発振器
及びオプションとしてはアクティブな遅延線を必要とする。それは多数の異なる
クロック信号を提供する。各クロックのタイミングはパルス幅、位相、及びサイ
クル・タイムに関して独立してプログラム可能であり、従って、変化するシステ
ム要件に適応することができる。クロック信号はそれ以上の如何なるゲート作用
を受けることなく受信コンポーネントに直接送られる。すべてのクロック線がポ
イント間ネットであり、クロック・スキ
ューは最小にされるはずである。クロック信号はクロック・コンポーネント内で
チェックされる。
パワー・オン認識時に、クロック・コンポーネントは初期設定され、クロック
信号発生が開始する。或リセット・ポイント及び始動ポイント時に配送されるべ
きクロック信号は稼働制御装置によって制御される。
クロック・コンポーネントはリセット機能に対するコンポーネント・セットの
マスタであり、それは、一般には、「パワー・オン・リセット」、「IMLのた
めのリセット」、「システム・リセット」、「チェック・リセット」、「リセッ
ト後の始動」等を含む。
クロック・コンポーネントは、一般には、2つのビット線(イン/アウト)及
び3つの制御線の5ライン・サポート・バスとしてIBM/390システムにお
いて実施されたような更なる外部ハードウエア・インターフェースを与え、クロ
ック・コンポーネントに上記の機能を実行させる。例えば、補助的なプロセッサ
、いわゆるサービス・プロセッサ(SP)は、そのプロセッサの全体的な制御の
ためにクロック・コンポーネントのこの外部インターフェースを利用することが
ある。
例えば、現在のIBM/390システムにおいて実現されているような従来の
技術のテクノロジは、クロック・コンポーネントとPUコンポーネントとの間に
多数の信号ピン及び対応する信号線を使用する。IBM/390システムには、
次のような意味と関連したクロック及びPUコンポーネントを接続する5つの信
号線がある。
1.マイクロ命令ステップ
2.マイクロ命令アドレス比較
3.ソフト・ストップ状態
4.待ち状態
5.誤動作警報
一旦、単一のPUコンポーネントだけではないシステムを構築しようとする試
みが行われると、上記の接続及びコミュニケートするという方法の欠点が明らか
になり、そして顕著になる。既に単一のPUコンポーネントの場合にも存在する
従来の技術の方法に関する欠点は、PUコンポーネントの数と共に増加し、その
結果、多数のPUを持ったマルチプロセッサ・システムを構築することが実行不
可能になるかもしれない。
クロック・コンポーネントと多数のPUコンポーネントを接続する多数の信号
線のために、従来の技術の方法はマルチプロセッサ・システムの実現を妨げてい
る。
必要な信号ピンの数の点から、サービス・プロセッサとPUとの間のコミュニ
ケーション・テクノロジを最適化することの緊急の必要性を証明するためには、
従来の技術の方法に更に光を当てなければならない。
IBM/390システムにおける現在の実施は、上記の意図と関連した、クロ
ック・コンポーネント及びPUコンポー
ネントを接続する5つの信号ピン及び信号線を示している。差し当たり、従来の
技術のテクノロジの典型的なマルチプロセッサ・システムを仮定することにする
。それは、各々が6つのPUコンポーネントより成る2つの、いわゆるマルチ・
チップ・モジュール(MCM)からアセンブルされる。上記リストの信号1乃至
4は各PUに対して個別であり、従って、MCMへの24個の信号を構成する。
5番目の信号は、各PUコンポーネントによって受信されるマルチドロップ・ネ
ットである。駆動制限のために、この5番目の信号は、MCM当たり6個の信号
を供給するのではなく、12個の信号を供給する。概して、この従来の技術の例
は、クロックとMCMとの間のコミュニケーションのためには36個の信号が必
要であることを示している。クロック・コンポーネントに関する状況は更に悪い
。それが2つのMCMにコミュニケートする時、概して、72個という莫大な数
の信号が必要である。
PUの数の更なる拡張は、現在のクロック対PUのコミュニケーション・テク
ノロジによってかなり妨げられる。
これらの莫大な数の線をテストすることは更に幾つかの問題を生じる。
PUコンポーネントとクロック・コンポーネントとの間の多数の信号線が2次
元チップの境界においてクロック・チップに接続されなければならないであろう
。個々の信号線に対する空間的な要件のために、大きな拡張に対するコンポーネ
ントのサイズは入出力信号の数によって決定される。クロッ
ク・コンポーネントは、信号線をクロック・チップの境界に向けることができる
ようにかなり増加しなければならないであろう。これは、結果として、実際のク
ロック・コンポーネント回路にとって必要なサイズよりもずっと大きいサイズの
クロック・コンポーネントを生じるであろう。従って、その結果として、マイク
ロプロセッサ・システムにおけるクロック・コンポーネントとPUコンポーネン
トとの間の莫大な数の信号線を配列及び分配するという難しさは云うまでもなく
、未使用の、従って、無駄なチップ・サイズと言う結果を更に生じることになる
。
PUコンポーネントの数と共にクロック・コンポーネントにおける信号ピンの
数が直線的に増加するということは、更に、製造プロセスを大幅に阻害し、同時
に、製造プロセスそのものに対する要件を増加させる。
従来の技術の方法は、送信されたデータがPUコンポーネントによって正しく
受信されたかどうかを確認するための概念を提供するものではない。クロック・
コンポーネントとPUコンポーネントとの間の情報交換に関する拡張エラー検出
及びエラー訂正はサポートされず、コンポーネントの数の増加と共にエラー状況
に対する確率が増加するので、それは複数多重PUシステムにおける中心的な問
題となる。
更に、従来の技術の方法を利用した複数PUシステムにおける多数の信号線は
、クロック線における雑音耐性を相当に悪化させ、またエラーを検出しその位置
を決定するための如
何なる機会及びサポートもない。
1.3 発明の目的
プロセッサ・システムに関連した本発明は、マルチプロセッサ・システムにお
けるクロック・コンポーネント及びPUコンポーネントの間のコミュニケーショ
ンに対して新しい種類のクロッキング概念及び回路を提供するという目的に基づ
く。本発明は、多数のPUコンポーネントを持ったプロセッサ・システムを構築
する場合の障害を取り除くのに役立つはずである。
2.発明の概要
種々の機能的コンポーネント、とりわけ、1つのクロック・コンポーネントと
1つ又は複数のPUコンポーネントを持ったプロセッサ・システムは、単一のチ
ップ内に個々のコンポーネントを統合することができ、或いはチップ・セット内
に統合された別個のチップとして具体化可能である。本発明は、クロック・コン
ポーネントとPUコンポーネントとの間をコミュニケートするためのコミュニケ
ーション回路手段を持ったプロセッサ・システムを提案する。本発明は、前記コ
ンポーネント相互間のコミュニケーション回路手段を単一の直列信号リンクにま
で減少させるものである。これは、コミュニケーション配線を単一の信号線にま
で驚異的に減少させる。
信号線の数のこの徹底した減少は、複数のPUコンポーネ
ントがプロセッサ・システムにおいて動作される場合、特に有利である。非常に
数多くのPUコンポーネントを持ったプロセッサ・システムが本発明によって実
施可能になるであろう。
又、クロック・コンポーネントそのものも、その減少した数の入出力信号線か
ら利益を受けるであろう。そのクロック・コンポーネントの数は入出力信号の数
によって大部分を決定されるので、クロック・コンポーネントのサイズは本発明
によって減少可能であり、無駄なチップ・サイズが回避される。
更に、クロックとPUとの間の信号線の大きな減少は製造プロセスをも容易に
する。
更に、複数PUシステムにおける多数の信号線の減少は雑音耐性を大いに改善
する。
本発明は、クロック・コンポーネント及び各PUコンポーネント上に新しい共
同するコミュニケーション回路手段を導入する。その新しいコミュニケーション
回路手段は、クロック・コンポーネントとすべてのPUとの間のコミュニケーシ
ョンのための信号線の数を単一の配線コミュニケーション・リンクにまで少なく
する。それらのコンポーネントは、直列インターフェースを介して同期的にコミ
ュニケートする。更に、コミュニケーションは双方向性である。勿論、コミュニ
ケーション・リンクは、フレーム化された直列インターフェースとして操作され
、データ・フレームと呼ばれる良く定義
された構造のデータ・ブロックとして情報を送る。
本発明の更なる実施例によれば、クロック・コンポーネントとPUコンポーネ
ントとの間にあって単一の論理的直列リンクを形成するように並列的に操作され
る多数の直列リンクを結合するための直列リンク結合手段が導入されている。た
だ一本だけの直列リンクからN個の並列直列リンクまでの任意の数の直列リンク
が単一の論理的直列リンクを実現するように結合可能である。なお、上記直列リ
ンクの数は外部環境に従って選択可能である。クロック・コンポーネントにおけ
るコミュニケーション回路もPUコンポーネントにおけるコミュニケーション回
路も、これらの直列リンクのうちの如何に多くが並列に操作されるか、或いは如
何に多くのPUコンポーネントが同じ直列リンクを利用しようとしているかとい
う特性によって影響されない。
これらの独立特性は広範囲の設計の融通性を与える。並列信号線の数及び単一
の信号線を共用するPUの数は他の外部状態に従って適応可能である。例えば、
この融通性は、クロック・スキュー問題を最小にするために利用可能である。或
いは、雑音免疫を改善するために他のターゲットが利用可能である。又、その融
通性は、チップ・レイアウト・ハードルの克服を容易にし得るか、或いは駆動要
件を容易に達成する助けとなり得る。
本発明の更なる実施例によれば、データ・フレームと呼ばれる良く定義された
構造を持ったデータのブロックとして情
報を送ることによって操作される双方向性の同期コミュニケーション・リンクが
与えられる。
従来の技術により教示される単方向信号伝播法に代わってクロック・コンポー
ネントとPUコンポーネントとの間の双方向性コミュニケーション・プロトコル
を導入することによって、クロック及びPUがコミュニケーション・エラー及び
信号エラーを相互に通知するフィードバック・ループを設定することが初めて可
能になる。従って、エラー検出が可能である。
本発明の更なる実施例によれば、クロック・コンポーネントは、コミュニケー
ションを駆動するためのマスタとして、特定のプロトコルを実行する。そのクロ
ック・コンポーネントは、良く定義された構造を持ったデータ・フレームを反復
的に送る。その送信の開始及びデータ・フレームの開始は、固有のものであり、
データ・フレーム内では生じないことを保証されたデータ・ヘッダによって識別
される。すべてのPUコンポーネントは、同じそのデータ・フレームを同時に且
つ同期して受信し、そして処理する。各PUコンポーネントは、データ・フレー
ムの送信中、各PUコンポーネントに特有の且つ専用のタイム・スロットにおけ
るデータ・フレームに応答する。各PUの応答は、事前定義された長さの小さな
データ・ブロックをクロック・コンポーネントに送ることより成る。コミュニケ
ーション・プロトコルは極めて融通性がある。例えば、それは、そのデータ・フ
レームの長さを任意
の数のPUコンポーネントに適応させることを可能にする。
ヘッダとは別に、データ・フレームは、1つ又は複数のPUコンポーネントを
PU番号によって選択及び識別するためのPUフィールドを包含している。但し
、PU番号は、そのプロセッサ・システムにおける1つのPUコンポーネントを
正確に識別する。更に、データ・フレームは、1つ又は複数のPUコンポーネン
トにおいて実行するための一組の可能なコマンドのうちの1つ又は複数のコマン
ドを選択するコマンド・フィールドを包含している。コマンド実行は、PUフィ
ールドの内容にも依存することがある。
データ・フレームは、受信側が送信エラー検出及びエラー訂正を実行すること
を可能にするチェックサム・フィールドも包含している。結局、データ・フレー
ムは、プロセッサ・システム内の上記PUコンポーネントの各々に対して、関連
のPUコンポーネントによって充填されるべき独自のPU応答フィールドを包含
している。
PUの数に関する修正及びPUの可能な反応のスペクトルに関する機能強化が
容易に実現可能である。従って、非常に高度の融通性がアーキテクチャに導入さ
れた。
本発明の最も重要な特徴は、送信されたデータがPUコンポーネントによって
正しく受信されたかどうかを確認する機能である。クロック及びPUコンポーネ
ントの間の情報交換に関する拡張されたエラー検出及びエラー訂正が、今や、従
来の技術の教示するところとは対照的に可能になる。特に、
コンポーネントの数が増加した、従って、エラー状況に対する確率が増加した複
数PUシステムにおいて、エラー状況を検出し、その位置を決定し、そして訂正
することが中心的問題である。単一のコンポーネントの誤動作は、その結果とし
てシステム全体の故障を生じないこともある。
本発明の更なる実施例では、各データ・ビットの後にバイナリ'0'を送り、従
って、2つ以上の連続したバイナリ'1'のビット・パターンを回避することより
成る、データ・フレーム内のデータの、いわゆるゼロ復帰コード化法によって、
データ・ヘッダの固有性が得られる。従って、連続したバイナリ'1'を有するビ
ット・パターンはデータ・ヘッダの一部分として作用し得る。
本発明の更なる実施例によれば、コマンド・フィールドにおけるコード化され
たコマンドは、一旦チェックサム・フィールドが各PUコンポーネントによって
成功裡に妥当性検査されてしまうと、すべての受信PUコンポーネントにおいて
同期的に実行される。
本発明の更なる実施例によれば、クロック・コンポーネントは、PUコンポー
ネントの少なくとも1つにおいて処理されるべきコマンドを発生しそしてその処
理結果を戻すための対応する配線を持った外部インターフェースによって機能強
化される。この外部インターフェースは、例えば、SPによって使用可能である
。クロック・コンポーネントはリクエストされたコマンドを上記データ・フレー
ムにマップし、処理
のために上記データ・フレームをPUコンポーネントに転送し、上記外部インタ
ーフェースを介してPUコンポーネントの応答を戻す。更に、上記クロック・コ
ンポーネントは幾つかのコマンドをバッファすることができ、事前定義された優
先順位法に従って実行するために、そのバッファされたコマンドを直列化するこ
とができる。
本発明の更なる実施例によれば、サブコンポーネントの故障があってもシステ
ム全体を更に保護するために、コミュニケーション回路手段は信号線クリアラン
ス手段を含む。その信号線クリアランス手段は、前記PU応答フィールドの各々
の第1ビットとして直列リンク上にバイナリ0を送る。そのクリアランス法は、
次のPU応答とインターフェースするかもしれない如何なる可能な先行のエラー
にも無関係のクリアされた直列リンクを保証する。
本発明の更なる実施例によれば、特定のコマンドがリクエストされていない場
合、クロック・コンポーネントはデフォルト・コマンドを実行することを可能に
される。このデフォルト・コマンド実行の結果、システムにおけるアクティブな
PUの決定が生じ、すべてのPUがアクティブなPUの現在のセットを通知され
るであろう。
デフォルト・コマンド処理機能強化は、いつの時点でも、プロセッサにおける
アクティブなPUのステータスが知られていることを確かなものにする。
本発明の更なる実施例によれば、例えば、SPによって利
用可能なクロック・コンポーネントの機能強化された外部インターフェースはP
Uフィールド、コマンド・フィールド、及びチェックサム・フィールドを明示的
にセットすることを可能にする。即ち、これらのフィールドは、リクエストされ
たコマンドに従ってコミュニケーション回路により計算されるのではない。この
実施例は、上記データ・フレーム内の整合性エラーを意図的に発生してPUコン
ポーネントにおけるコミュニケーション回路を障害のない特性に関してチェック
することを容易にする。従って、本発明は、実に、新しいコミュニケーション回
路におけるチェッカ・ロジックのチェックをサポートすることができる。
3.図面の簡単な説明
第1図は、クロックとPUコンポーネントとの間の単一線接続を示す図である
。
第2図は、直列リンク結合回路を示す。
第3図は、クロック・コンポーネント上に設置されたマスタ送信ロジックのブ
ロック図である。
第4図は、クロック・コンポーネント上に設置されたマスタ受信ロジックのブ
ロック図である。
第5図は、各PUコンポーネント上に設置されたスレーブ・ロジックのブロッ
ク図である。
表1は、現在のデータ・フレームに対する個々のフィールド、それらの長さ、
及び必要な送信サイクルを表す表である。
表2は、クロック/PUコミュニケーションにおいて現在サポートされている
コマンドのビット・コード化法を示す。
表3は、PUによって送られたクロック・コンポーネントに対する可能な応答
のビット・コード化法を示す。
4.発明を実施するための最良の形態
4.1 好適な実施例の概要
全体図が第1図において形成されている。第1図は、両コンポーネントの間の
非同期コミュニケーションのための周知の5線サポート・バスによってクロック
・コンポーネント102と接続されたSP101を示す。単線式コミュニケーシ
ョン・リンク105は、クロックと任意の数のPUコンポーネント103、10
4、・・・との間の双方向同期フレーム化されたデータ交換のための新しいコミ
ュニケーション媒体を表す。
クロック−PUコミュニケーション問題領域の外で生じた要件のために、追加
の要件及び境界条件が次のような要求を生じることがある。
■ 例えば、PUコンポーネントの種々のクラスタとクロック・コンポーネン
トを並列接続する場合、上記直列単一コミュニケーション・ラインの幾つかをサ
ポートし及び操作すること
■ 新しいコミュニケーション回路に対する如何なる修正も強制しない任意の
数のこれら並列単線式リンクを許
容する場合に最大の融通性を許すこと
■ しかし、全体的な観点から単一の論理直列リンクを表すこと
そのような必要性を生じる問題領域の例は、例えば、PUコンポーネントの数
に関して広範囲に跨る種々のプロセッサ・モデルを可能にする制限又は製品の融
通性を作り出すマイクロ・エレクトロニクスの考察を進めることである。このタ
イプの仕事は、クロック・コンポーネントの一部分である直列リンク結合回路に
よって解決される。クロック・コンポーネントのアウトバウンド信号は、各並列
直列リンクにおける直列リンク結合回路によって送信されるだけである。クロッ
ク・コンポーネントに向けられたインバウンド信号は直列リンク結合回路によっ
て結合され及び累積され、実際のクロックに送信されるべき単一の信号を発生す
る。インバウンド・トラフィックに関して、直列リンク結合回路はORゲートの
ように作用する。第2図は、直列リンク結合回路202をクロック・コンポーネ
ントの一部分として示す。任意の数の直列リンク203乃至204が並列的に操
作可能である。その場合、この直列リンクの各々は可変的な数のPUコンポーネ
ント、例えば、PU205乃至209を扱うことができる。1つの特定の実施法
では、6個のPUを持ったMCMモジュールが、駆動制限及びMCMテスト手順
のために、3つの直列リンク(1対のPUに対して1つの直列リンク)を備えて
いる。
4.2 コミュニケーション回路
次のリストは、新しい直列インターフェースを介して信号で通知されるすべて
の状態を参照する。コマンドは、SP及びクロック・コンポーネントの間でも交
換されるすべてのコマンドのサブセットである。それらの状態は信号の向きによ
って、即ち、信号がクロックにおいて発生しそしてPUコンポーネントに向けら
れるか或いはその逆かに従って分類される。
●クロックからPUへ
○アクティブPU
アクティブPUのサブセットについてすべてのPUに知らせることを可能に
し、一方、現在アクティブなPUを決定することを可能にする。
○誤動作警報
このコマンドはチェック停止状態に入るPU或いは電力を失ったPUを表す
。
○マイクロ命令ステップ
単一のマイクロ命令後のブレークポイントを実現することによって単一のマ
イクロ命令の実行を可能にする。
○マイクロ・アドレス比較
次のアドレス比較オペレーション後にマイクロ命令ストリームにおけるブレ
ークポイントを可能にする。
○スタート・パルス
クロック・コンポーネント・オペレーションを開始し、PUをマイクロ命令
ステップ様式に移す。
●PUからクロックへ
○ソフト・ストップ状態
ソフト・ストップした状態は、PUはストップしたがクロック・コンポーネ
ントは稼働していることを特徴とするPUコンポーネントの状態を表す。生じ得
る原因はマイクロ命令ステップ・オペレーション又はマイクロ命令・アドレス比
較オペレーションである。
○待ち状態
PUを待機状態に変える。即ち、命令はPUによって処理されないが、割込
は生じ得る。
○ストップした状態のシステム計測インターフェース(SMI)
SMIオペレーションに対して使用されるソフト・ストップ状態と同じ。
○トレース・レコーディング・ストップ
トレース・レコーディング時に、特定のトレース・バッファがPUによって
使用可能にされることを信号することを可能にする。
クロック・コンポーネントは、特殊化されたプロトコルを実行するコミュニケ
ーション・コンプレックス全体を駆動するためのマスタである。そのプロトコル
は、データ・フレー
ムと呼ばれる良く定義された構造を持ったデータのブロックとして情報を送信す
ることより成る。データ・フレームにおける1つの中心的情報コンポーネントは
、とりわけ、1つ又は複数のPUコンポーネントにおいて処理されるべき1つ又
は複数のリクエスト又はコマンドである。
データ・フレームの開始は、ヘッダと呼ばれる独自のデータ・パターンによっ
て識別される。そのヘッダは、上記コミュニケーション回路によって、独自のも
のであること及び上記データ・フレーム内では生じないことを保証されている。
そのデータ・ヘッダの独自性はデータ・フレーム内のデータの、いわゆるゼロ復
帰(RZ)コード化法によって得られる。コミュニケーション回路によって提供
されるRZコード化は、各データ・ビット後にバイナリ0を送ること、従って、
2つ以上の連続したバイナリ1のビット・パターンを回避することより成る。従
って、各バイナリ・データ・エレメントは送信のために2サイクルをとる。RZ
コード化法の結果、少なくとも2つの連続したバイナリ1を持ったビット・パタ
ーンは上記データ・ヘッダの一部分として作用し得る。この考察に従って、本発
明は次の3ビット・パターン110を識別ヘッダ構造として選択する。
コミュニケーション回路は同期モードで操作される。それは、クロック・コン
ポーネントがすべてのインターフェース信号線(上記のような単一の論理的信号
線)を介してデータ・フレーム、即ち、コミュニケーション・パッケージを同時
に送ることを意味する。PUコンポーネントの各々は同じデータ・フレームを受
信し、そして処理する。すべてのPUにおける応答は、ヘッダ・パターンの検出
後、同じサイクル内で作成される。従って、すべての応答の和が1つの明確な時
点に対する完全なシステム・ステータスを与える。その応答に対するタイミング
の不定性は存在しない。
個々のPUコンポーネントは、現在のデータ・フレーム転送時に、前記PUコ
ンポーネントの各々に特有のタイム・スロットにおける現在のデータ・フレーム
に応答して、事前定義された長さのデータ・ブロックをクロック・コンポーネン
トに送る。個々のPUコンポーネントに専用の特定のタイム・フレームは、個々
の各PUを独自に特徴付けるPU番号によって定義される。一旦1つのデータ・
フレームが送られてしまい、そしてPUがそれらの専用のタイム・スロットに従
ってそのデータ・フレームに応答すると、クロック・コンポーネントは、新しい
フレーム・ヘッダとして識別された次のデータ・フレームの送信を開始する。上
記の説明によれば、ヘッダ・データ・パターンは、2つの連続した1が送られる
唯一のケースである。従って、この表示は、新しいフレームの開始をすべてのP
Uに知らせるために使用される。ヘッダは、クロック・コンポーネント及びPU
コンポーネントを同期させるための唯一のソースである。データ・フレーム内の
次に続くすべてのビットは厳密に位置依存的である。そのデータ・フレームの残
りの内部における2つの連続したバイナ
リ1はチェックを生成する。
例えば、第1図に示されるように、クロック・コンポーネントは、SPがPU
コンポーネントの1つにおいて少なくとも処理されるべきコマンドを発生するこ
と及びその処理結果を戻すことを可能にするそのSPに対する外部の非同期イン
ターフェースを提供する。クロック・コンポーネントはSPによってリクエスト
されたコマンドをデータ・フレームにマップし、そのデータ・フレームを処理の
ために上記PUコンポーネントに転送し、そして上記外部インターフェースを通
してそのPUの応答を戻す。コミュニケーション回路の関連するフィーチャは、
幾つかのコマンドをバッファし、事前定義された優先順位法に従ってそのバッフ
ァされたコマンドを実行のために直列化する機能である。
4.2.1 コミュニケーション回路のマスタ送信ロジック
クロック・コンポーネント上に置かれそして論理的直列リンクを介して情報を
送る責任のあるそのコミュニケーション回路の部分は、クロックがコミュニケー
ションを駆動するためのマスタであるので、マスタ送信ロジックと呼ばれる。そ
のマスタ送信ロジックが第3図に示される。
第3図を参照すると、コントローラ「cntl」301はインターフェース全
体のマスタ・コントローラである。それは、そのインターフェースの操作に必要
なすべての制御信号を発生する。
「コマンド・リクエスト」ラッチ302は、外部事象、例
えば、書込モード・レジスタ又は誤動作警報リクエストにより、「セット」イン
ターフェース303を通してセットされる。これらのラッチは一時に複数のリク
エストを持つことができる。優先順位デコーダ「prio」304は最高の優先
順位を持ったそのリクエストを選択する。このステージの出力は単一のリクエス
トである。コントローラ301からの転送信号「tr」305によって、このリ
クエスト及びそれの関連データがシフト・レジスタ306にロードされる。クロ
ック・コンポーネント上のロジックの別の部分は、個々のコマンドに対するすべ
ての必要なデータを与える。
「設定直列レジスタ」307はコマンドに対する正しいデータを選択し、チェ
ックサムを計算する(チェックサム処理に関する更なる詳細については下記参照
)。同時に、シフト・レジスタ306にちょうど転送されたコマンドは「コマン
ド・リクエスト」ラッチ302においてリセットされ、優先順位デコーダ「pr
io]304は次に高い優先順位を持ったリクエストを与えるであろう。
マスタ・コントローラ「cntl」301は、RZデータストリーム及び応答
フィールドの第1ビットに対するヘッダ・パターン及び0も発生する(下記の説
明参照)。それは、シフト・レジスタのシフト・パルス308及びドライバその
ものの高インピーダンス制御(HZ)309も制御し、この単一信号の正しいア
ービトレーションを可能にする。
最後に、データ・フレームは直列リンク310を通してす
べてのPUコンポーネントに送信される。それらのPUコンポーネントはそのデ
ータ・フレームを同時に受信し、そして処理するであろう。
4.2.2 コミュニケーション回路のマスタ受信ロジック
クロック・コンポーネント上に置かれ、論理的直列リンクから情報を受信する
責任のあるコミュニケーション回路の部分は、クロックがそのコミュニケーショ
ンを駆動するためのマスタであるので、マスタ受信ロジックと呼ばれる。そのマ
スタ受信ロジックが第4図に示される。
第4図を参照すると、受信モードでは、その回路はコントローラ「cntl」
401、各PUの個々のデータに対するデータ・レジスタ「PU0データ・・・
PUxデータ」402乃至404のバンク、及びインターフェース405を介し
てSP(サービス・プロセッサ)によりセンス可能なレジスタより成る。個々の
PUデータ・レジスタすべてが直列論理的リンク406から情報を得る。コント
ローラ401は、イネーブル線「En0・・・Enx」407乃至409によっ
て正しいセットを選択する。
最後のPUがこのインターフェースを介してそれのデータを送ってしまった時
、そのコントローラは「転送」信号410を発生し、SPがセンスし得るラッチ
402乃至404にデータを転送する。最後のPUを待つことは、SPに与えら
れるデータにおける時間差がないこと、及び単一のPUの個々の応答フレームに
関係なく、データがすべてのPUにおい
て同じ時間にサンプルされることを保証する。
正しいRZ(ゼロ復帰)信号に関するチェックは、マスタ・コントローラ30
1の制御の下に受信モード時にも行われる。
クロック・コンポーネントにおけるマスタ受信ロジックは統合プル・ダウンを
有し、従って、プラグを抜かれた或いはチェックストップしたいずれのPUコン
ポーネントも0だけを送るであろう。
4.2.3 コミュニケーション回路のスレーブ・ロジック
各PUコンポーネントに置かれ、論理的直列リンクを介して情報を送信及び受
信する責任のあるコミュニケーション回路の部分は、クロックがコミュニケーシ
ョンを駆動するためのマスタであるので、スレーブ・ロジックと呼ばれる。その
スレーブ・ロジックが第5図に示される。
第5図を参照すると、スレーブ・ロジックは各PUコンポーネント上に実装さ
れる。直列入力データ・ストリーム501は「ヘッダ検出/実行」ロジック50
2によって分析される。このロジックはヘッダ・パターンを待つ。一旦このロジ
ックがヘッダ・パターンを認識すると、それはインターフェース501からの直
列データ・ストリームを並列信号503に変換し、そのチェックサムを妥当性検
査する(チェックサムに関する更なる情報は下記参照)。
その結果生じたコマンドが実行され、応答データ504が「作成回答」ステー
ジ505によって作成される。
すべてのPUにおける応答は、ヘッダ・パターン検出後に同じサイクル内で作
成される。従って、すべての応答の和が1つの明確な時点に対する完全なシステ
ム・ステータスを与える。その応答におけるタイミングの不定性は存在しない。
データをシフトするための実際のタイム・フレームは、独自のPU番号によっ
て表された独自のPUアドレスに依存してインターフェース上の駆動の混乱を回
避している。
「ヘッダ検出/実行」ロジック502は、単一のPUに対するコントローラと
して作用する。それは到達するデータに同期し、「並列直列変換器」506を制
御してそのインターフェースに対するドライバを動作可能にする。
無効なヘッダ(最後のヘッダ以後の不十分な数のサイクル)又は無効なRZ信
号に関するチェックも、「ヘッダ検出/実行」ロジック502によって得られる
。
4.3 プロトコル及びコミュニケーション・パートナの処理特性
直列リンクを介して送信されたデータ・フレームの詳細な構造及びレイアウト
に関する説明を進める前に、レイアウト、特に、データフレーム・レイアウトの
長さがサポートされるべき最大数のPUコンポーネントに依存することを述べて
おかなければならない。一方、本発明は任意の数のPUコンポーネントに容易に
適用可能であることを強調しておく。
現在、データ・フレームは以下のようなフィールドより成る。
(1)ヘッダ
すべてのコミュニケートするコンポーネントの同期及び新しいデータ・フレ
ームの開始を識別するための独自のビット・パターン
(2)PUフィールド
そのプロセッサ・システム内の正に1つのPUを独自に識別するPU番号に
よって1つ又は複数のPUコンポーネントを選択及び識別するためのフィールド
(3)CMDフィールド
PU選択プロセスはPUフィールドの内容に依存し得るけれども、CMDフ
ィールドは1つ又は複数のPUコンポーネントにおける実行のために一組の可能
なコマンドのうちの1つ又は複数のコマンドを選択するコマンド・フィールドを
コード化する。
(4)チェックサム
受信側が送信エラーの検出及びエラー訂正を実行することを可能にするフィ
ールド・エンコーディング・チェック情報
(5)応答フィールドPU0
PUコンポーネントPU0に反応することによって満たされるべき応答フィ
ールド
(6)応答フィールドPU1
PUコンポーネントPU1に反応することによって満たされるべき応答フィ
ールド
(7)...
データ・フレームをアセンブルする各フィールドの長さ及び必要な送信サイク
ル数が表1に示される。
現在、1つの完全なフレームは339サイクルより成る。この完全なフレーム
はクロック・コンポーネントによって開始され、512サイクル毎に送信される
。1つのデータ・フレームの送信を完了した後、即ち、339サイクル後に、ク
ロックはバイナリ0だけを送るデッド・タイムに入る。
クロック・コンポーネントはデフォルト・コマンド処理動態を提供する。実行
されるべき、例えば、SPによって発生された特定のコマンドがない場合、特定
のデフォルト・コマンド・リクエストがデータ・フレームのCMDフィールドに
書き込まれ、PUによる実行をリクエストされる。このデフォルト・コマンドは
アクティブPUコマンドである(この特定のコマンドの更なる詳細に関しては、
下記の個々のコマンドの説明参照)。すべてのPUの前の応答、即ち、センス・
ビットから、クロック・コンポーネントはそのシステム内の現在アクティブなP
Uコンポーネントの正確な表示を発生する。その表示は、現在のシステム全体の
ステータスを個々の各PUに知らせるために、「アクティブPU」コマンドによ
って伝播される。
デフォルト・コマンド処理は、次の状態の1つが認識された場合に中断される
。
■ 任意のPUからのチップ・チェック
■ 書込モード・レジスタ
■ スタート・パルス
4.3.1 個々のデータ・フィールド
4.3.1.1 ヘッダ
ヘッダの構造及び目的は既に広範に説明した。
4.3.1.2 PUフィールド
PUフィールドは、そのプロセッサ・システムにおける正に1つのPUを独自
に識別するPU番号によって1つ又は複数のPUコンポーネントを選択及び識別
するために使用される。
本実施例では、PUフィールドは16ビットをカバーする。その実施例は、P
Uフィールドにおける各ビット位置が特定のPUを表示及び選択するというコー
ド化法を利用する。どのヒット位置がバイナリ1に切り換えられるかに従って、
このコード化法がプロセッサ・システムにおけるPUの任意のサブセットを選択
することを可能にすることが重要である。単一のPUではなく一組のPUを選択
できることが上記コード化法を使用するための背景になっている。本実施例は1
6ビットPUフィールドを使用するので、それは16個までのPUを形成するよ
うにサポートする。その実施例の現在の長さは、PUフィールドの長さが必要な
数のPUを形成するために拡張可能であるので無制限を表す。
後続のCMDフィールドに従って、PUフィールドの内容
は種々に解釈可能である。
4.3.1.3 CMDフィールド
CMDフィールドは、可能なコマンドのセットのうちの1つ又は複数のコマン
ドを選択するコマンド・フィールドをコード化する。
CMDフィールドにおいてコード化されるべきコマンドのタイプは、クロック
及びPU協調にとって重要なだけの特別目的のコマンドである。それは、純粋の
PUコマンドとは気を付けて区別されなければならない。両タイプのコマンドと
も、PUコンポーネントの種々の部分において同時に実行される。
本実施例では、CMDフィールドは16ビットの長さである。CMDフィール
ドにおける各ビット位置がコマンドを表すというコード化法を再び利用すること
によって、PUによって処理するために単一のコマンドではなくコマンドのセッ
トを選択することを可能にする。CMDフィールドの長さに基づいて、16個の
異なるコマンドのセットが選択のために定義可能である。16個の異なるコマン
ドのセットが小さすぎる場合、CMDフィールドの長さを増加させることによっ
て、任意の数の異なるコマンドがサポート可能であろう。同じデータ・フレーム
、従って、同じCMDフィールドが実行のためにすべてのPUに送られる。即ち
、すべてのPUが同じコマンドを同時に受信し、そして一般には、同時に処理す
る。PUフィールドの内容及びコマンドのタイプによって、
或PUだけがそのコマンドを処理する。PUフィールドに関係なくすべてのPU
において実行されるコマンド、及びPUフィールドに従って特定のPUにおいて
だけ実行されるコマンドが存在する。
コマンドの実行に先立って、すべてのPUがチェックサム・フィールドを検証
する(下記参照)。CMDフィールドにおけるコード化されたコマンドは、その
チェックサムが首尾良く検証されなかった場合、実行されてはならない。
個々のコマンドのビット・コード化法の概要が表2に示される。
4.3.1.3.1 サポートされるコマンドの検討
4.3.1.3.1.1 誤動作警報
誤動作警報コマンドはすべてのPUにとって有効であり、即ち、すべてのPU
によって処理される。PUフィールドにおける対応するビットがすべての障害P
Uに対してセットされる。
このコマンドの実行結果として、PUフィールドにおいて指定されたすべての
PUがそれらの誤動作警報レジスタをセットする。誤動作警報コマンドはアクテ
ィブなPUを変化させる。従って、高い優先順位の「アクティブPU」(下記参
照)コマンドはその「誤動作警報」コマンドの直後に実行される。
4.3.1.3.1.2 アクティブPU
アクティブPUコマンドはすべてのPUに対して有効であ
る。即ち、それはすべてのPUによって処理される。
このコマンドの実行結果として、すべてのPUは、PUフィールドの内容に従
ってそれらの内部アクティブPUをセットする。クロック・コンポーネントは、
現在アクティブなPUのセットを指定する値にPUフィールドをセットする。な
お、そのアクティブPUのビット位置は論理値'1'にセットされた。
4.3.1.3.1.3 マイクロ命令セット・オン
マイクロ命令セット・オン・コマンドは、PUフィールドにおいてアドレスさ
れたPUに対してのみ有効である。即ち、それらのPUだけがそのコマンドを処
理するであろう。
このコマンドの実行結果として、PUフィールドによって指定されたそれらの
PUは直ちに内部ラッチ「マイクロ命令ステップ」を上げるであろう。状態「有
効マイクロ命令ステップ」もオンにされるであろう。
4.3.1.3.1.4 マイクロ命令ステップ・オフ
マイクロ命令ステップ・オフ・コマンドはPUフィールドにおいてアドレスさ
れたPUに対してのみ有効である。即ち、それらのPUだけがそのコマンドを処
理する。
このコマンドの実行結果として、PUフィールドによって指定されたPUは内
部ラッチ「マイクロ命令ステップ」をオフにするであろう。更に、状態「有効マ
イクロ命令ステップ」が次のスタート・パルス・コマンドの実行時にオフにされ
る。
4.3.1.3.1.5 マイクロ・アドレス比較オン
マイクロ・アドレス比較オン・コマンドは、PUフィールドにおいてアドレス
されたPUに対してのみ有効である。即ち、それらのPUがだけそのコマンドを
処理するであろう。
このコマンドの実行結果として、PUフィールドによって指定されたPUが直
ちに内部ラッチ「マイクロ・アドレス比較」を上げるであろう。状態「有効マイ
クロ・アドレス比較」もオンにされる。
4.3.1.3.1.6 マイクロ・アドレス比較オフ
マイクロ・アドレス比較オフ・コマンドは、PUフィールドにおいてアドレス
されたPUに対してのみ有効である。即ち、それらのPUだけがそのコマンドを
処理するであろう。
このコマンドの実行結果として、PUフィールドによって指定されたPUが直
ちに内部ラッチ「マイクロ・アドレス比較」をオフにする。更に、状態「有効マ
イクロ・アドレス比較」が次のスタート・パルス・コマンドの実行時にオフにさ
れる。
4.3.1.3.1.7 スタート・パルス
スタート・パルス・コマンドはPUフィールドにおいてアドレスされたPUに
対してのみ有効である。即ち、それらのPUだけがそのコマンドを処理するであ
ろう。
実行結果として、「スタート・パルス」コマンドは、「有効マイクロ命令ステ
ップ/有効マイクロ・アドレス比較」において低レベルのパルスを発生するか、
或いはこれらの信号を低レベルにセットする。「マイクロ命令ステップ/マイク
ロ・アドレス比較」ラッチがセットされる場合、有効信号は単一のサイクルの間
ドロップする。さもなければ、有効信号は、新しいコマンドによって再びセット
されるまでドロップする。
4.3.1.3.2 コマンド優先順位及びデフォルト・コマンド処理
コミュニケーション回路は、幾つかのコマンドがクロック・コンポーネントの
実行のために同時にリクエスト可能であることをサポートする。各コマンドは、
幾つものコマンドが実行のために待ち行列化されそして直列化される場合に重要
である実行優先順位に関連する。
これらのコマンドは、次のような優先順位の下降順序に従って、クロック・コ
ンポーネントにおいて直列化される。
(1)誤動作警報
(2)アクティブPU
(3)マイクロ命令・ステップ・オン
(4)マイクロ命令・ステップ・オフ
(5)マイクロ・アドレス比較オン
(6)マイクロ・アドレス比較オフ
(7)スタート・パルス
クロック・コンポーネントはデフォルトコマンド処理動態を提供する。上記の
コマンドの特定リクエストの未決のものがない場合、例えば、SPによって発生
されたものがない場合、特定のデフォルト・コマンド・リクエストがデータ・フ
レームのCMDフィールドに書き込まれ、PUによる実行をリクエストされる。
このデフォルト・コマンドは「アクティブPU」コマンドである。すべてのPU
の前の応答、即ち、センス・ビットから、クロック・コンポーネントは、そのシ
ステムにおける現在アクティブなPUコンポーネントの正確な表示を発生する。
その表示は「アクティブPU」コマンドによってすべてのPUに伝播され、現在
のシステム全体のステータスを個々の各PUに知らせる。
誤動作警報コマンドはアクティブPUを変化させる。従って、高い優先順位の
「アクティブPU」コマンドは、「誤動作警報」コマンドの直後に実行される。
4.3.1.4 チェックサム
チェックサム・フィールドはチェック情報をコード化して、受信側が送信エラ
ー検出及びエラー訂正を実行することを可能にする。従って、チェックサム・フ
ィールドは、ともかくエラー検出及び訂正を可能にするための基本である。チェ
ックサム・フィールドは、冗長度情報として、PU及びCMDフィールドに含ま
れた1ビットの数を記憶する。それはクロック・コンポーネントによって計算さ
れ、そしてPUによって再計算され、その送信されたチェックサム値に比較され
なければならない。
PUは、チェックサムが首尾良く妥当性検査された場合及びその場合にのみ、
そのリクエストされたコマンドを実行する。
4.3.1.5 応答フィールド
プロセッサ・システム内の各PUコンポーネントに対して、1つの専用の応答
フィールドがデータ・フレームに設けられる。その応答フィールドは、特定のP
Uがそれの応答を送ることを可能にするタイム・スロットによって、各独自のP
Uコンポーネントに関連付けられる。この関連付けは、個々の各PUコンポーネ
ントを独自に特徴付けるPU番号を基礎にして行われる。
現在、その実施例は、データ・フレームにおいて同じ数の応答フィールドを必
要とする16個までのPUコンポーネントをサポートする。応答フィールドは8
ビットの長さである。PUからクロック・コンポーネントまでの可能な応答のス
ペクトルが表3に示される。応答フィールドにおける各ビット位置が初歩的な応
答に関連する場合、コード化法が再び利用された。この方法は、1つの応答フィ
ールドにおいて一組の異なる応答を同時に送ることを可能にする。
実施された方法は、データ・フレームを増大させることによって、(追加の応
答フィールドの導入により)サポートされるPUの数を増加すること及び(個々
の応答フィールドの幅を拡張することにより)可能なPU応答のスペクトルを拡
大することを容易に可能にする。
PU応答を送るためのタイム・スロット、従って、応答フィールドの予約は、
クロック・コンポーネントによって送られたPUフィールド及びCMDフィール
ドに関係なく生じる。
たとえ或PUが或CMDフィールドを処理しなくても、その応答フィールドはP
Uコンポーネントに利用可能にされ、及びチェックサムを妥当性検査した各PU
コンポーネントは、コマンドがそのPUに影響を与えるかどうかに関係なく、応
答フィールドにおいてオンにされた「コマンド受付済み」ビットを戻さなければ
ならない。
直列リンク結合回路(第2図参照)は、クロック・コンポーネントにおけるす
べての信号線を内部的にORすることによって、単一の論理的直列リンクを実現
する。従って、クロック・コンポーネントによって受信された応答は、クロック
・コンポーネント及びPUコンポーネントにおける検出機構に依存するだけであ
り、クロック・コンポーネントとPUコンポーネントとの間の実際の信号配線に
は依存しない。直列リンクにおける唯一のものとして起こり得る応答妨害はなく
、各タイム・スロットにおいて1つのPUだけが応答しようとする。しかし、こ
のインターフェースに関係ないPU発生のチェック状態のような任意のタイプの
エラー状況、或いはPU対クロックのリンク上の残り'1'を生じる他の理由に対
してシステム全体を保護するために、特定のライン・クリアランス信号発生の概
念が導入された。そのライン・クリアランス法による直列コミュニケーション・
リンクにおけるエラー状況に対する安定化は、クロック・コンポーネントが、各
応答フィールドの第1ビットを表す並列直列コミュニケーション・インターフェ
ース線すべてにおいて'0'を、個々のPU
の各応答の前に送ることを意味する。これは、すべての信号線がクロック・コン
ポーネントにおいて内部的にORされるので、クロック・コンポーネントが次の
コマンドを送るまで、'1'に固定された1つの信号線がインターフェース全体を
ブロックする場合の正しいオペレーションを保証する。すべてのインターフェー
ス線を介してクロック・コンポーネントにより'0'を送ることはそのインターフ
ェースを再びクリアする。
4.3.2 エラー処理
本発明の技術範囲において、単なる単方向の信号転送を教示する従来の技術に
比べて、本発明の2つの最も重要な特徴はエラー処理において新しい次元を開く
。
■ 従来の技術によって教示される上記単方向信号伝播法の代わりにクロック
・コンポーネントとPUコンポーネントとの間の双方向コミュニケーション・プ
ロトコルを導入することによって、クロック及びPUがコミュニケーション及び
シグナリング・エラーを相互に知らせるフィードバック・ループを設定すること
が初めて可能になる。
■ 送信されたデータにおける冗長度情報をチェックサム・フィールドの形で
導入することによって、コミュニケーション・パートナはエラー検出及びエラー
訂正手順の設定が容易になる。
その結果、システム全体はエラー状況に対して大いに安定
化可能である。
本実施例では、クロック・コンポーネント及びPUコンポーネントにおけるコ
ミュニケーション回路によって、次のようなクラスのエラーが処理される。
■ 無効スタート状態
上記のように、コミュニケーション回路は、データ・フレームの独自のヘ
ッダがフレーム・データの一部分として生じないことを保証する。この原理と対
立して、既にヘッダ・パターンを検出しており且つ第1のヘッダによって信号さ
れた第1データ・フレームに応答できるようになる前に他のヘッダ・パターンを
検出するPUがチェックを発生する(時間クリティカルなチェック状態のための
別個の「任意チェック」線を通して信号される)。
■ チェックサム・エラー
データ・フレームの一部分である送信されたチェックサムが送信されたP
U及びCMDフィールドに基づいて計算された再計算チェックサムに一致しない
場合、送信エラーが生じたことになる。この状態を検出するいずれのPUもチェ
ックを発生する。
■ 非RZ(ゼロ復帰)信号
この状態は、コミュニケーション・パートナによって検出される最も一般
的なエラー状態である。それは、RZコード化法に従って明らかにバイナリ'0'
が期待
されるべき時にバイナリ'1'が信号線に存在する場合に生じる。この状態は、ク
ロック・コンポーネントによって及びPUによって検出可能である。
本実施例はエラー検出に集中しているが、エラー訂正を含む拡張がコミュニケ
ーション・コンポーネントにおける追加のロジックによって容易に実現可能であ
る。
4.4 サービス・プロセッサ(SP)コマンド処理への影響
上記の設計のものに比べて異なる実施方法はSPとクロックとの間のインター
フェースに影響を与える(例えば、第1図参照)。一方において、直ちに有効と
なったモード・レジスタへの書込オペレーションが効果的になるには数サイクル
が必要である。もう一方において、それは「ソフトストップ状態」をサービス・
プロセッサに信号するために数サイクルが必要である。
4.4.1 書込モード・レジスタ
書込モード・レジスタは、マイクロ命令ステップ処理のオン/オフを切り換え
るためにクロック・コンポーネント上に設けられた特定のレジスタである。クロ
ック・コンポーネントは、SPからの「書込モード・レジスタ」コマンドをPU
フィールドを持った次の4つのPUクロック・インターフェース・コマンドのシ
ーケンスに分割する。
(1)マイクロ命令ステップ・オン
(2)マイクロ命令ステップ・オフ
(3)マイクロ・アドレス比較オン
(4)マイクロ・アドレス比較オフ
クロック・コンポーネントは、第3図において「コマンド・リクエスト」30
2として示された内部レジスタにおけるこの4つのアクションに対するリクエス
ト・ビットをオンにする。高い優先順位を持った未決のリクエストがない場合、
これらの4つのコマンドが次の4つのフレームにおいて実行される。
未決の「書込モード・レジスタ」コマンドは、クロック・コンポーネントにお
ける特定のステータス・レジスタの一部分であるステータス・センス・ビット3
2において表示される。このセンス・ビットは、電流がクロック・コンポーネン
トによって完全には受け付けられていない間、SPが次のコマンドを発生しない
ようにする。
4.4.2 スタート・パルス
「スタート・パルス」コマンドは対応するビットをインターフェース・コマン
ド・レジスタにセットする。そのコマンドは、実際には、より高い優先順位を持
った未決のリクエストが存在しない場合に実行される。
未決の「スタート・パルス」コマンドは、クロック・コンポーネントにおける
特定のステータス・レジスタの一部分であるステータス・センス・ビット33に
おいて表示される。このセンス・ビットは、電流がクロック・コンポーネントに
よって完全には受け付けられていない間、SPが次のコマンドを発生しないよう
にする。
4.4.3 デバッグ・フィーチャ
クロック・コンポーネントにおいて、特別のデバッグ・フィーチャが実施され
る。サービス・プロセッサ(SP)は、データ・フレームにおけるPU、CMD
、及びチェックサム・フィールドに対する特定の値を記憶するためのシャドウ・
レジスタをクロック・コンポーネント内に設定することができる。SPからの特
別コマンドはこれらのコマンドをデータ・ストリームに、即ち、データ・フレー
ムの対応するフィールドに挿入するであろう。その結果、シャドウ・レジスタ法
は、例えば、自動的なチェックサム計算等を明示的に回避して、データ・フレー
ムおける個々のフィールドを設定するための側線を提供する。
このフィーチャの利用は、現在ではハードウエアによって自動的には発生され
ないこのインターフェースの幾つかの高度のフィーチャ(例えば、「コマンド・
マージング」又は「エラー・インジェクション」)のエミュレーションを可能に
する。
コマンド・マージングは、1サイクル内で多数のコマンドが特定のPUに送ら
れることを意味する(例えば、単一のコマンド内でマイクロ命令ステップをオン
にする、及びマイクロ・アドレス比較をオンにする)。
エラー・インジェクションは、無効のチェックサムをシャドウ・レジスタに書
き込むことによってSPにより遂行可能である。クロック・コンポーネント及び
PUコンポーネント
におけるエラー認識回路によって認識されるべき意図的な無効チェックサムを作
る場合、「チェッカをチェックする」という周知の問題を解決するチェック回路
そのものを検証することが可能である。
5.略語
HZ 高インピーダンス
IML 初期マイクロプログラム・ロード
MCM マルチ・チップ・モジュール
PU 処理装置
RZ ゼロ復帰エンコーディング
SMI システム計測インターフェース
SP サービス・プロセッサ
─────────────────────────────────────────────────────
フロントページの続き
(72)発明者 ハルラー、ウイルヘルム
ドイツ国レームシャルダン、レーエンシュ
トラーセ 38
(72)発明者 ゲザラフ、クラウス ヨルグ
ドイツ国、シュナイッヒ、フリーゼンベッ
ク 26
(72)発明者 シュムンカンプ、デイートマー
ドイツ国イーニンゲン、ハウッフシュトラ
ーセ 14
Claims (1)
- 【特許請求の範囲】 1.種々の機能的コンポーネント、特に、クロック・コンポーネント(100) 及び少なくとも1つのPUコンポーネント(103)を有し、前記コンポーネン トの各々が単一のチップ内に統合されるか或いはチップ・セット内に統合された 個別のチップとして形成されるプロセッサ・システムにして、 前記コンポーネントの間のコミュニケーション配線を単一の信号線にまで減少 させる、前記コンポーネントの間で直列リンク(105)を通してコミュニケー トするための、前記クロック・コンポーネント及び前記PUコンポーネント上の コミュニケーション回路手段を具備したことを特徴とするプロセッサ・システム 。 2.前記クロック・コンポーネントとN個のPUとの間のコミュニケーションの ために、単一の直列リンクからN個の並列直列リンクまでの任意の数の直列リン クをサポートして単一の直列リンクを実現する直列リンク結合手段(202)を 含み、 前記直列リンクの数は外部環境に従って選択可能であることを特徴とする請求 の範囲第1項に記載のプロセッサ・システム。 3.データ・フレームと呼ばれる良く定義された構造を持ったデータのブロック として情報を送ることによって前記直列リンクを操作する双方向同期コミュニケ ーション・リンクを 含むことを特徴とする請求の範囲第1項又は第2項記載のプロセッサ・システム 。 4.前記クロック・コンポーネントは特別のプロトコルを実行してコミュニケー ションを駆動するためのマスタであること、 前記クロック・コンポーネントはデータ・フレームを反復的に送ること、 送信の開始及び前記データ・フレームの開始が、前記データ・フレーム内で固 有なものであることを前記コミュニケーション回路手段によって保証されたデー タ・ヘッダにより識別されること、 すべてのPUコンポーネントが前記同じデータ・フレームを受信し且つ処理す ること、 前記PUコンポーネントの各々は、事前定義された長さのデータ・ブロックを 前記クロック・コンポーネントに送ることによりデータ・フレーム送信の間に前 記PUコンポーネントの各々に特有のタイム・スロットにおいて前記データ・フ レームに応答すること、 を特徴とする請求の範囲第2項又は第3項若しくは第2項及び第3項に記載の プロセッサ・システム。 5.前記データ・フレームの長さは前記プロセッサ・システムおける前記PUコ ンポーネントの数に適応され得ること、 前記データ・フレームは前記データ・フレーム内で固有なものであることを前 記コミュニケーション回路手段により保 証された前記データ・ヘッダを含むこと、 前記データ・フレームは前記PUコンポーネントの少なくとも1つをPU番号 によって選択及び識別するようにPUフィールドを含み、前記PU番号は前記プ ロセッサ・システムにおける前記PUコンポーネントの1つを正確に識別するこ と、 前記データ・フレームは、前記PUコンポーネントの少なくとも1つにおいて 実行するための一組のコマンドのうちの少なくとも1つのコマンドを前記PUフ ィールドの内容に従って選択するコマンド・フィールドを含むこと、 前記データ・フレームは受信側が送信エラー検出及びエラー訂正を実行するこ とを可能にするチェックサム・フィールドを含むこと、 前記データ・フレームは前記プロセッサ・システムにおける前記PUコンポー ネントの各々に対して、関連付けられるPUコンポーネントによって充填される べき固有のPU応答フィールドを含むこと、 を特徴とする請求の範囲第4項に記載のプロセッサ・システム。 6.前記データ・ヘッダの固有性は各データ・ビットの後にバイナリ0を送って 2つ以上の連続したバイナリ1のビット・パターンを回避することを含む前記デ ータ・フレームにおけるデータのいわゆるゼロ復帰コード化法によって達成され 、前記連続したバイナリ1を持ったビット・パターンは前記デ ータ・ヘッダの部分として作用することを特徴とする請求の範囲第4項又は第5 項に記載のプロセッサ・システム。 7.前記コマンド・フィールドにおいてコード化されたコマンドは、一旦前記チ ェックサム・フィールドが前記PUコンポーネントの各々によって妥当性検査さ れると、前記受信PUコンポーネントすべてにおいて同期的に実行されることを 特徴とする請求の範囲第5項に記載のプロセッサ・システム。 8.前記クロック・コンポーネントは前記PUコンポーネントの少なくとも1つ において処理されるべきコマンドを発生し且つ処理結果を戻すための対応する配 線を持った外部インターフェース(102)を含むこと、 前記クロック・コンポーネントは前記リクエストされたコマンドを前記データ ・フレームにマップし、前記データ・フレームを処理のために前記PUコンポー ネントに転送し、前記外部インターフェースを介して前記PUコンポーネントの 応答を戻すこと、 を特徴とする請求の範囲第1項乃至第7項の1つに記載のプロセッサ・システ ム。 9.送信エラーを処理するためのエラー検出及びエラー訂正手段を含むことを特 徴とする請求の範囲第1項乃至第8項の1つに記載のプロセッサ・システム。 10.生じ得る任意の先行のエラーから独立した、保証されたクリアされた直列 リンクに対する前記PU応答フィールドの各々の第1ビットとしてバイナリ0を 前記直列リンク上に 前記クロック・コンポーネントによって送るライン・クリアランス手段を含むこ とを特徴とする請求の範囲第5項乃至第9項の1つに記載のプロセッサ・システ ム。 11.特定のコマンドがリクエストされてない場合、前記PUコンポーネントの うちのアクティブ・コンポーネントの決定を生じ且つ前記PUコンポーネントへ の前記アクティブPUコンポーネントのセットの伝播を生じるデフォルト・コマ ンドを実行する拡張クロック・コンポーネントを含むことを特徴とする請求の範 囲第1項乃至第10項の1つに記載のプロセッサ・システム。 12.前記PUフィールドをセットすることを可能にする前記クロック・コンポ ーネントの拡張外部インターフェースを含み、 前記コマンド・フィールド及び前記チェックサム・フィールドは前記データ・ フレームに整合性エラーを意図的に発生させ、前記PUコンポーネントにおける 前記コミュニケーション回路手段を無故障時の動作に関してチェックすることを 明示的に促すことを特徴とする請求の範囲第5項乃至第11項の1つに記載のプ ロセッサ・システム。
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/EP1995/001451 WO1996033464A1 (en) | 1995-04-18 | 1995-04-18 | Processing unit to clock interface |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH09507938A true JPH09507938A (ja) | 1997-08-12 |
Family
ID=8165993
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP8531417A Pending JPH09507938A (ja) | 1995-04-18 | 1995-04-18 | 処理装置からクロックへのインターフェース |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US5964845A (ja) |
| JP (1) | JPH09507938A (ja) |
| WO (1) | WO1996033464A1 (ja) |
Families Citing this family (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6581126B1 (en) * | 1996-12-20 | 2003-06-17 | Plx Technology, Inc. | Method, system and apparatus for a computer subsystem interconnection using a chain of bus repeaters |
| US6178206B1 (en) * | 1998-01-26 | 2001-01-23 | Intel Corporation | Method and apparatus for source synchronous data transfer |
| US6327205B1 (en) * | 1998-03-16 | 2001-12-04 | Jazio, Inc. | Signal latching of high bandwidth DRAM arrays when skew between different components is higher than signal rate |
| JP3473951B2 (ja) * | 2001-06-01 | 2003-12-08 | Necマイクロシステム株式会社 | データ処理装置およびシステム |
| US6996632B2 (en) * | 2001-06-19 | 2006-02-07 | Intel Corporation | Multiphase encoded protocol and synchronization of buses |
| US7039750B1 (en) | 2001-07-24 | 2006-05-02 | Plx Technology, Inc. | On-chip switch fabric |
| US7346099B2 (en) * | 2002-01-03 | 2008-03-18 | Intel Corporation | Network fabric physical layer |
| CN1315049C (zh) * | 2002-11-12 | 2007-05-09 | 联想(北京)有限公司 | 用于检测计算机故障的诊断电路装置及方法 |
| DE102005055067A1 (de) * | 2005-11-18 | 2007-05-24 | Robert Bosch Gmbh | Vorrichtung und Verfahren zum Beheben von Fehlern bei einem wenigstens zwei Ausführungseinheiten mit Registern aufweisenden System |
| US8165160B2 (en) * | 2006-09-29 | 2012-04-24 | Intel Corporation | Method and system to validate a write for a device on a serial bus |
| US7934045B2 (en) * | 2009-06-09 | 2011-04-26 | International Business Machines Corporation | Redundant and fault tolerant control of an I/O enclosure by multiple hosts |
| GB201201596D0 (en) * | 2012-01-31 | 2012-03-14 | Texas Instruments Ltd | Multi-lane alignment and de-skew circuit and algorithm |
Family Cites Families (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4064486A (en) * | 1975-05-29 | 1977-12-20 | Burroughs Corporation | Data communications loop synchronizer |
| JPS5653484A (en) * | 1979-10-05 | 1981-05-13 | Olympus Optical Co Ltd | Detecting device for integrated time |
| GB2198897A (en) * | 1986-12-18 | 1988-06-22 | Burr Brown Ltd | Analog input system |
| US4918652A (en) * | 1987-02-05 | 1990-04-17 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Real-time simulation clock |
| GB8921143D0 (en) * | 1989-09-19 | 1989-11-08 | Psion Plc | Serial data transmission |
| US5065042A (en) * | 1990-08-01 | 1991-11-12 | Vlsi Technology, Inc. | Self-configuring clock interface circuit |
| US5416918A (en) * | 1991-07-10 | 1995-05-16 | Hewlett-Packard Company | Low skew system for interfacing asics by routing internal clock off-chip to external delay element then feeding back to on-chip drivers |
| US5341480A (en) * | 1992-04-09 | 1994-08-23 | Apple Computer, Inc. | Method and apparatus for providing a two conductor serial bus |
| US5459462A (en) * | 1993-12-09 | 1995-10-17 | Onspec Electronic, Inc. | Keyboard controller state machine |
| US5535405A (en) * | 1993-12-23 | 1996-07-09 | Unisys Corporation | Microsequencer bus controller system |
| US5638542A (en) * | 1993-12-29 | 1997-06-10 | Intel Corporation | Low power non-overlap two phase complementary clock unit using synchronous delay line |
| US5878234A (en) * | 1996-09-10 | 1999-03-02 | Sierra Wireless, Inc. | Low power serial protocol translator for use in multi-circuit board electronic systems |
| US5732036A (en) * | 1997-02-14 | 1998-03-24 | Micron Technology, Inc. | Memory device communication line control |
-
1995
- 1995-04-18 WO PCT/EP1995/001451 patent/WO1996033464A1/en not_active Ceased
- 1995-04-18 US US08/765,418 patent/US5964845A/en not_active Expired - Fee Related
- 1995-04-18 JP JP8531417A patent/JPH09507938A/ja active Pending
Also Published As
| Publication number | Publication date |
|---|---|
| WO1996033464A1 (en) | 1996-10-24 |
| US5964845A (en) | 1999-10-12 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP1629392B1 (en) | Memory module architecture daisy chain topology detects and reports presence of outer memory module to inner module | |
| US4979097A (en) | Method and apparatus for interconnecting busses in a multibus computer system | |
| US4864496A (en) | Bus adapter module for interconnecting busses in a multibus computer system | |
| US6393576B1 (en) | Apparatus and method for communication between integrated circuit connected to each other by a single line | |
| EP0319185B1 (en) | Method and apparatus for checking a state machine | |
| EP1629393B1 (en) | Memory interface protocol for distinguishing status information from read data | |
| US6311245B1 (en) | Method for time multiplexing a low-speed and a high-speed bus over shared signal lines of a physical bus | |
| WO2004109528A2 (en) | Memory channel with unidrectional links | |
| WO2004109526A2 (en) | Memory channel with bit lane fail-over | |
| US5964845A (en) | Processing system having improved bi-directional serial clock communication circuitry | |
| US6425041B1 (en) | Time-multiplexed multi-speed bus | |
| US4858234A (en) | Method and apparatus for error recovery in a multibus computer system | |
| US5859986A (en) | Bandwidth efficient method and means for resynchronizing a master and slave over a clocked, arbitrated, bidirectional multistate parallel bus using local data recirculation, wait states, and cycle stealing | |
| US6810454B2 (en) | Information processing apparatus having a bus using the protocol of the acknowledge type in the source clock synchronous system | |
| US4837767A (en) | Bus adapter module with improved error recovery in a multibus computer system | |
| US5909560A (en) | Target peripheral device detection in a multi-bus system | |
| US20020174282A1 (en) | Multiprocessor system | |
| US5371863A (en) | High speed processor bus extension | |
| US7039750B1 (en) | On-chip switch fabric | |
| US7302508B2 (en) | Apparatus and method for high speed data transfer | |
| EP0983554B1 (en) | Interfacing peripheral devices via a slave group interface device to a bus | |
| JP2000231539A (ja) | データ転送システムおよびデータ転送方法 | |
| EP0130471A2 (en) | Interface controller for connecting multiple asynchronous buses and data processing system including such controller | |
| KR960001270B1 (ko) | 리던던시를 갖는 통신제어회로 | |
| KR100532608B1 (ko) | 직/병렬화회로를 구비한 버스시스템 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20070123 |