(57)【特許請求の範囲】
【請求項１】
データ処理のための装置であって、前記装置は複数のパイプライン・ステージで形成されるセルフ・タイムのパイプラインを有し、前記パイプライン・ステージの少なくとも１つは以下を含んでなる：
（ｉ）複数の出力データ信号を発生すべき複数の入力データ信号を評価するための動的論理回路と、
（ｉｉ）複数の出力データ信号をラッチするラッチ回路と、
（ｉｉｉ）前記動的論理回路と前記ラッチ回路を制御するためのパイプライン・ステージ制御回路を有し、ここで、
（ｉｖ）前記パイプライン制御回路は、下記の両方を受け取った時に前記複数の入力データ信号の評価を開始する：
（ａ）前記複数の入力データ信号が利用可能な信号であることを示す信号と、
（ｂ）前記動的論理回路によって現在評価されつつある前記複数の出力データ信号が前記動的論理回路の固有の電荷の漏洩により無効になる前に前記ラッチ回路によってラッチされるまでに、先行のサイクルで評価され現在前記ラッチ回路内にラッチされている複数の出力データ信号を読み取りつつある下流の回路がその読み取りを完了するであろうことを示す信号。
【請求項２】
前記下流の回路は、下流のパイプライン・ステージである請求項１記載の装置。
【請求項３】
前記複数の入力データ信号が、上流のパイプライン・ステージにより発生される請求項１記載の装置。
【請求項４】
前記パイプライン・ステージ制御回路は、入力要求信号線、入力承認信号線、出力要求信号線、出力承認信号線を有する請求項１記載の装置。
【請求項５】
前記パイプライン・ステージ制御回路は、前記入力要求信号線、前記入力承認信号線、前記出力要求信号線、前記出力承認信号線上のエッジの移行に応答する請求項４記載の装置。
【請求項６】
前記入力要求信号線上の第１のエッジの移行は前記複数の入力データ信号が利用可能であることを示す前記信号が表し、前記出力承認信号線上の第２のエッジの移行は前記ラッチ回路内に現在ラッチされている前記複数の出力データ信号が下流の回路に読まれつつあることを示す前記信号を表し、前記出力承認信号線上の第３のエッジの移行は前記ラッチ回路内に現在ラッチされている前記複数の出力データ信号を前記下流の回路が読み取り完了して、今や前記ラッチ回路が新しい前記複数の出力データ信号をラッチする準備ができていることを示す前記信号を表す請求項５記載の装置。
【請求項７】
１つのエッジの移行が：
（ａ）  前記複数の入力データ信号が利用可能であることを示す前記信号と、
（ｂ）  前記動的論理回路によって評価されつつある前記複数の出力データ信号が前記動的論理回路の固有の電荷の漏洩により無効になる前に前記ラッチ回路によってラッチされるまでに、先行のサイクルで評価され現在前記ラッチ回路内にラッチされている複数の出力データ信号を読み取りつつある下流の回路がその読み取りを完了するであろうことを示す前記信号
を表す請求項１記載の装置。
【請求項８】
前記ラッチ回路は前記パイプライン・ステージ・コントローラからのクロック信号によりエッジ・トリガされ、これにより前記クロック信号内のエッジの移行に際して、前記ラッチ回路が前記複数の出力データ信号を変化させるようにした請求項１記載の装置。
【請求項９】
前記セルフ・タイムのパイプラインは、中央処理装置の一部である請求項１記載の装置。
【請求項１０】
前記装置は、集積回路である請求項１記載の装置。
【請求項１１】
データ処理のための方法であって、前記方法は複数のパイプライン・ステージで形成されるセルフ・タイムのパイプラインを使用し、前記パイプライン・ステージの少なくとも１つは以下のステップを実行する：
（ｉ）複数の出力データ信号を発生すべき複数の入力データ信号を動的論理回路で評価するステップと、
（ｉｉ）複数の出力データ信号をラッチ回路でラッチするステップと、
（ｉｉｉ）前記動的論理回路と前記ラッチ回路をパイプライン・ステージ制御回路で制御するステップを有し、ここで、
（ｉｖ）前記パイプライン制御回路は、下記の両方を受け取った時に前記複数の入力データ信号の評価を開始する：
（ａ）前記複数の入力データ信号が利用可能な信号であることを示す信号と、
（ｂ）現在評価されつつある前記複数の出力データ信号が前記動的論理回路の固有の電荷の漏洩により無効になる前に前記ラッチ回路によってラッチされるまでに、先行のサイクルで評価され現在前記ラッチ回路内にラッチされている複数の出力データ信号を読み取りつつある下流の回路がその読み取りを完了するであろうことを示す信号。
【発明の詳細な説明】
【０００１】
【発明の属する技術の分野】
この発明は、データ処理システムに関する。特に、この発明は、動的論理を使用するパイプラインを組み込んだデータ処理システムに関する。
【０００２】
【従来の技術】
２フェーズにバンドルしたデータ・プロトコルを採用したセルフ・タイムのパイプライン回路が、Ｉ．Ｅ．サザランドによって、「コミュニケーション・オブ・ジ・ＡＣＭ」第３２巻、１９８９年１１月６日付、７２０頁から７３８頁までの「マイクロ・パイプラインズ」によって提案された。１９９１年から１９９４年の間にマンチェスター大学で開発されたＡＭＵＬＥＴ１プロセッサは、類似のマイクロ・パイプラインの設計スタイルを使用している。このＡＭＵＬＥＴ１プロセッサは、Ｓ．Ｓ．ファーバー、Ｐ．デイ、Ｊ．Ｄ．ガーサイド、Ｎ．Ｃ．ペイバー、Ｊ．Ｖ．ウッズによる「マイクロ・パイプラインドＡＲＭ」（ＩＦＩＰＴＣ／ＷＧ１０．５  超大規模集積回路の国際会議（ＶＬＳＩ’９３）の論文集、編集Ｔ．ヤナガワとＰ．Ａ．アイベイ、発行ノース・ホランド社）と、Ｓ．Ｂ．ファーバー、Ｐ．デイ、Ｊ．Ｄ．ガーサイド、Ｎ．Ｃ．ペイバー、Ｊ．Ｄ．ウッヅによる「ＡＭＵＬＥＴ１−マイクロ・パイプラインドＡＲＭ」（ＩＥＥＥコンピュータ会議、１９９４年３月の論文集）と、Ｎ．Ｃ．ペイバー「非同期型マイクロ・プロセッサの設計と実装」（マンチェスター大学博士論文、１９９４年６月）に記述されている。このＡＭＵＬＥＴ１プロセッサも２フェーズの制御を用いている。
【０００３】
ＡＭＵＬＥＴ１プロセッサはそのデータ・パスのある部分で動的論理の技法を用いている。しかしながら、こうしたプロセッサのなかの遅延に鈍感な制御回路は、どの状態でも立ち往生し得るので、特別な回路が含まれる。動的回路は、特に小型で節電型のプロセッサを作れるので、望ましいと考えられている。しかしながら、疑似の静的動作を生じるために追加の回路を備えることが必要ならば、これらの長所は、かなりの程度まで打ち消されるであろう。
【０００４】
動的論理は、ある条件が満たされれば、こうした追加の回路なしに使用できる。回路内の固有の電荷の漏洩が原因で、短時間しか回路の出力が有効でない。従って、動的論理回路は、その出力ラッチが解放になるまで評価を開始すべきでないと、提案されてきた。さらに、動的論理回路は、評価が完了するまで、その入力が安定に保たれることをも必要とする。この結果は、動的論理回路は評価を実行しているときに、その入力ラッチと出力ラッチの両方を制約するということである。
【０００５】
添付した図面のうち、図１は、動的論理回路４を組み込んだパイプライン・ステージ２を図解する。ラッチ回路６が、動的論理回路４からの出力データをラッチして、固有の電荷漏洩により出力データが失われないようにし、それから、これらの出力データを次のパイプライン・ステージへ渡す。パイプライン・ステージ制御回路８が、動的論理回路４とラッチ回路６の運転を、隣接したパイプライン・ステージと調和させる。
【０００６】
添付した図面のうち、図２および図３は、図１のパイプライン・ステージの多数から構成されるパイプラインの運転中を示す。図２について考えると、レ点でマークされた動的論理回路はアクティブであり、入力データ信号から出力データ信号を評価する工程の中にある。レ点でマークされたラッチ回路は、次の動的論理回路で評価されている有効な信号をラッチしている。Ｘ点でマークされたラッチ回路は、その連合した動的論理回路から出力データ信号を受け取るのを待っている。
【０００７】
パイプライン・ステージ１０を考察すると、そのアクティブ状態は、ラッチ回路１２と１４を拘束している。ラッチ回路１２はパイプライン・ステージ１０への出力を保持しなければならないので、ラッチ回路１２は自分の動的論理回路１６に利用できないものであり、従って、動的論理回路１６は休止したままでなければならない。ラッチ回路１４は、パイプライン・ステージ１０からの出力信号を受け取る用意ができてなければならないので、動的論理回路１８への入力データ信号を維持するのに利用できない。したがつて、動的論理回路１８もまた休止したままでなければならない。
【０００８】
図３は、パイプライン・ステージ１０がその評価を完了したことを示す。ラッチ回路１２と１４への制約は今や取り除かれ、他の条件が満たされれば、その時は、これら２つの隣接したパイプラインは運転可能であり、それらのそれぞれの動的論理回路１６と１８が信号値を評価する。パイプライン・ステージ１０のこの分析は、帰納法により全てのパイプライン・ステージに拡張できる。こうして、このようなシステムは、同時にせいぜい半数の動的論理回路がアクティブであることが理解されよう。
【０００９】
【発明が解決しようとする課題】
この発明は、図２と図３に関して記述したシステムが制約しすぎであることを認識し、利用する。連合した動的論理回路の中で評価が始まる以前に出力のラッチが解放されていることは、厳密に必要ではない。むしろ、出力データが失われる前にラッチできるように出力ラッチをフリーにできればよい。動的論理回路内の評価の開始条件のこの緩和は、パイプライン全体の処理能力を大きく改良する。
【００１０】
【課題を解決するための手段】
一面から見れば、この発明は次の装置を提供する。すなわち、
データ処理のための装置であって、前記装置は複数のパイプライン・ステージで形成されるセルフ・タイムのパイプラインを有し、前記パイプライン・ステージの少なくとも１つは以下を含んでなる：
複数の出力データ信号を発生すべき複数の入力データを評価するための動的論理回路と、
複数の出力データ信号をラッチするラッチ回路と、
前記動的論理回路と前記ラッチ回路を制御するためのパイプライン・ステージ制御回路を有し、ここで、
前記パイプライン制御回路は、下記の両方を受け取った時に前記複数の入力データ信号の評価を開始する。
（ｉ）前記複数の入力信号が利用可能な信号であることを示す信号と、
（ｉｉ）現在評価されている前記複数の出力信号が前記動的論理回路の固有の電荷の漏洩により無効になる前に、先行のサイクルで評価され現在前記ラッチ回路にラッチされている複数の出力データ信号が、前記ラッチ回路にラッチされるために前記動的論理回路により評価されつつある前記複数の出力データ信号の読み取りを完了するであろう下流の回路により読まれたことを示す信号。
【００１１】
下流の回路は多くの形を取り得ることが理解されよう。しかしながら、長いパイプラインのなかにパイプライン・ステージが埋め込まれた場合は、下流の回路は下流のパイプライン・ステージである。
【００１２】
同様な仕方で長いパイプラインが使用された場合、前記複数の入力データ信号が利用可能であることを示す信号は、上流のパイプライン・ステージによって発生させられる。
【００１３】
マルチ・ステージのパイプライン内のパイプライン・ステージ制御回路は、互いに連絡し合う必要がある。消費された回線の領域と通信の容量や高度さとの間の好ましいバランスは、前記パイプライン・ステージ制御回路が入力要求信号線、入力確認信号線、出力要求信号線、出力確認信号線を有する実施例において達成される。
【００１４】
パイプライン・ステージ制御回路は、その探索する静的信号レベルに応答することがあり得る。しかしながら、この発明の好ましい実施例において、、前記パイプライン制御回路は、前記入力要求信号線、前記入力確認信号線、前記出力要求信号線、前記出力確認信号線上のエッジの変位に応答する。
【００１５】
静的な信号のレベルにではなく、エッジの変位に応答することにより、２本の制御線で制御可能な一定時間内のイベントの数を増すことができる。
【００１６】
信号線上で利用可能なエッジの変位は、多くの異なった方法で、パイプライン制御回路により割り当てられた手段で有り得る。しかしながら、この発明の好ましい実施例においては、前記入力要求信号線での第１の変位は前記複数の入力データ信号が利用可能であることを示し、前記出力確認信号線上での第２のエッジの変位は、前記ラッチ回路内で現在ラッチされている前記複数の出力データ信号が下流の回路に読まれていることを示し、前記出力確認信号線上での第３のエッジの変位は、前記下流の回路が前記ラッチ回路内に現在ラッチされている前記複数の出力データ信号の読み取りを完了していて、前記ラッチ回路が今は新しい前記複数の出力データ信号をラッチする準備ができていることを示す。
【００１７】
第２のエッジの変位は、下記のものを示すためになされ得る。
（ｉ）前記複数の入力信号が利用可能であること、
（ｉｉ）前記複数の出力信号が前記動的論理回路の固有の電荷の漏洩により無効になる前に、現在前記ラッチ回路にラッチされている前記複数の出力データ信号が、前記ラッチ回路にラッチされるために前記動的論理回路により評価されつつある前記複数の出力データ信号の読み取りを完了するであろう下流の回路により読まれたことを示す信号。
【００１８】
ラッチ回路は種々な方法で形成され得る。しかしながら、好ましい実施例においては、前記ラッチ回路は前記パイプライン・ステージ・コントローラからのクロック信号によりエッジ・トリガされ、これにより、前記ラッチ回路が、前記クロック信号内のエッジの変位に際してラッチされた前記複数の出力データ信号を変化させる。
【００１９】
エッジ・トリガされたラッチを有することにより、ラッチ回路によりなされる一層精密な時間の制御が可能になり、これにより、過渡的な信号がラッチを通じて伝わってしまうといった問題を避けることができる。
【００２０】
この発明が関係しているセルフ・タイムのパイプラインは、多くの異なった種類のディジタル回路に使用し得る。しかしながら、こうしたセルフ・タイムのパイプラインは、、小サイズ、低電力消費、高速運転において有利な中央処理装置の一部として、とりわけ有用である。
【００２１】
この発明の装置は、個別部品でも構成できる。しかし、集積回路の方法が小型化と電力消費の減少について最大の利益を達成できるので、集積回路の形成が強く望まれる。
【００２２】
他の面から見ると、この発明は、下記の方法を提供する。すなわち、
データ処理のための方法であって、前記方法は複数のパイプライン・ステージで形成されるセルフ・タイムのパイプラインを使用し、前記パイプライン・ステージの少なくとも１つは以下のステップを実行する：
複数の出力データ信号を発生すべき複数の入力データを動的論理回路で評価するステップと、
複数の出力データ信号をラッチ回路でラッチするステップと、
前記動的論理回路と前記ラッチ回路をパイプライン・ステージ制御回路で制御するステップを有し、ここで、
前記パイプライン制御回路は、下記の両方を受け取った時に前記複数の入力データ信号の評価を開始する。
（ｉ）前記複数の入力信号が利用可能な信号であることを示す信号と、
（ｉｉ）現在評価されている前記複数の出力信号が前記動的論理回路の固有の電荷の漏洩により無効になる前に、先行のサイクルで評価され現在前記ラッチ回路にラッチされている複数の出力データ信号が、前記ラッチ回路にラッチされるために前記動的論理回路により評価されつつある前記複数の出力データ信号の読み取りを完了するであろう下流の回路により読まれたことを示す信号。
【００２３】
上記の、またその他のこの発明の目的、特徴、長所は、付属の図面と結び付けて読むべき以下の具体例の詳細な説明により明らかになるであろう。
【００２４】
【発明の実施の形態】
図４は、「初期の」プロトコルとも呼ぶべき４フェーズのハンドシェイク・プロトコルを図解する。これは、要求線の立ち上がりエッジを「データ利用可能」り指示に用い、承認線の立ち上がりエッジを「データがラッチされた」との指示に用いている。立ち下がりエッジは何の意味も持っていない。要求線の立ち上がりエッジと承認線の立ち上がりエッジの間の点線は、動的論理回路４が、それに印加されたデータ入力信号をその間に評価しなければならない時限を示す。
【００２５】
代わりのプロトコルとしては、要求線と承認線の両方を利用する「後期の」プロトコルが考えられる。
【００２６】
もう１つのハンドシェイク・プロトコルを図５に図解する。このプロトコルは、「幅広い」プロトコルとも呼ぶべきもので、要求線の立ち上がりエッジと承認線の立ち下がりエッジを使用している。このプロトコルでは、承認線の未使用の立ち上がりエッジを、評価が動的論理回路により開始されるであろうことの指示に使用できる。承認線のこの立ち上がりエッジは、データ利用可能の指示とデータがラッチされたとの指示の間に、要求に応じて、位置する。
【００２７】
承認線の立ち上がりエッジで渡される情報は、パイプライン・ステージ制御回路の間に追加の線を使用して渡すこともできるが、これは必要な回線の数の増加という望ましくない結果になる。
【００２８】
上記のハンドシェイクのためのプロトコルは、いずれも、データの送り手が転送を開始するという視点に立っている。受け手が開始するならば、更なるプロトコルが可能であろう。
【００２９】
図１に戻ると、図５で説明したハンドシェイク・プロトコルを用いたこの回路の動作は下記の通りである。動的論理回路４とラッチ回路６は、入力要求信号線Ｒｉｎ、入力承認信号線Ｒｏｕｔ、出力承認信号線Ａｏｕｔを使用して制御される。
【００３０】
動的論理回路４は、そのイネーブル信号Ｅ（Ａｉｎに対応する）がハイになる時に評価を開始する。動的論理回路４は、パイプライン・ステージ制御回路８に終了信号Ｄを主張して、有効な出力を生み出したことを指示する。動的論理回路４は、イネーブル信号Ｅがロウである時にプレチャージされていて、プレチャージの完了は、終了信号Ｄがロウなることで動的制御回路４により合図される。
【００３１】
動的制御回路４により評価された出力データ信号を受け取るラッチ回路６は、トランスペアレントなラッチで、パイプライン・ステージ制御回路８により発生されるラッチ・イネーブル信号Ｌｔがロウならばデータを通し、ラッチ・イネーブル信号Ｌｔがハイならばその値を保持するものであってよい。代わりに、ラッチ６は、ボジティブ・エッジ・トリガード・フリップフロップであってもよい。図２と図３で図解されたマルチ・ステージ・パイプラインは、各パイプライン・ステージが、同様な隣のものに接続されると仮定している。パイプラインの終端では、パイプライン・ステージは、異なった回路にインターフェースで接続され得る。
【００３２】
図６は、図２と図３のマルチ・ステージ・パイプラインでの制約が緩和されたマルチ・ステージ・パイプラインの運転を示す。あるステージのあるラッチ回路内のレ点は、そのラッチ回路が信号値をラッチしていることを示す。あるラッチ回路内のＸ点は、そのラッチ回路が現在いかなる信号もラッチしていないが、ラッチの入力の読み取り過程にあり、これらを新しくラッチされる値として有するようになることを示している。
【００３３】
動的論理回路内のレ点は、それが現在アクティブであり、信号値を評価していることを示す。動的論理回路４とラッチ回路６の間を通った出力データ信号は、種々の状態を有すると考えられる。ステージ２０では、動的論理回路４はその評価を開始したばかりであり、出力データ信号はその有効な信号レベルへ形成しつつある。これは小さなレ点で示されている。後の段階のステージ２２で評価に達して、これはより大きなレ点で示され、最後にステージ２４で評価が完成して、これは更に大きなレ点で示されている。異なったパイプライン・ステージ２０、２２、２４は、みな異なった入力データのセットを操作していて、異なった出力データ信号を形成することが理解されよう。
【００３４】
ステージ２６において、動的論理回路はその評価を完了し、出力データ信号は有効であるが、しかし、パイプライン・ステージ内の固有の電荷の漏洩により徐々に崩壊しつつある。これは点線のレ点により示されている。このラッチ回路は、まだ出力データ信号を読んでいないし、ラッチしていないが、しかし、まさにこれを始める過程にあり、これはラッチ・イネーブル信号Ｌｔ上のレ点によって図解されている。
【００３５】
パイプライン・ステージ２８は、先行するステージのラッチ回路自身が新しい値を記憶しつつあるので、信頼できる入力データ信号が何も印加されていない（Ｘ点で示されている）。従ってステージ２８の動的論理回路は遊休している。パイプライン・ステージ２８のラッチ回路は、事前にステージ２８の動的論理回路により発生された出力データ信号値をラッチしている。
【００３６】
図７は、図６のパイプラインを僅かに後の時点で示す。各パイプライン・ステージの段階は進行している。有効な出力データ信号の形成、徐々な電荷の漏洩にさらされているこれらの信号の保持、それから、弱まり過ぎる以前にこれらの信号をラッチすることを通じて、個別のパイプライン・ステージごとに、この過程が進行する。
【００３７】
図６と図７に示された例において、３つのパイプライン・ステージはアクティブなものとして示され、一方、２つのパイプライン・ステージは、アイドルなものとして示されている。実際には、アイドルなステージに対するアクティブなステージの比率は、更に高くなり得る。
【００３８】
図８は、トランスペアレントなラッチを制御するために使用し得るパイプライン・ステージ制御回路のための信号の移行のグラフを図解する。信号移行グラフは、Ｔ．−Ａ．チュウ「グラフ理論的仕様からのセルフ・タイムＶＬＳＩ回路の総合」（ＩＥＥＥのＩＣＣＤ’８７論文集、２２０頁−２２３頁、１９８７年１０月）に論じられている。
【００３９】
使用した表記法では、立ち上がりエッジ移行を示す「＋」と、立ち下がりエッジ移行を示す「−」が付いている。実線の矢印は、制御回路が実行しなければならない移行の間の臨時の依存を示す。点線の矢印は、外部回路が従わなければならない一時的な依存を示す。黒い点は最初のマーキングである。移行の各入力にマーカーがある場合にのみ、移行が発射される。移行が発射されたときは、その入力にあるマーカーが除去されて、マーカーはその出力の各々に置かれて、更なる移行が可能なようにする。１つを超える移行がイネーブルされると、これらの移行は、どんな順序にも発射される。図８の信号移行グラフは、状態変数Ａを組み込んでいて、これが必要とされる運転を達成するのに用いられる。この実施例では、動的論理回路がその評価を完了した時（Ｄ＋）に、出力データ信号がラッチされ（Ｌｔ＋）、次のステージがこれらの使用を完了するまで（Ａｏｕｔ−）保持される。入力データがレデイ（Ｒｉｎ＋）で、先行する結果が次のステージでの処理に入った時（Ａｏｕｔ＋）に、評価が始まる（Ｅ＋）。この条件は、出力ラッチ回路が「すぐに」解放になること、すなわち、出力データ信号が固有の電荷の漏洩により減衰する以前に解放になることにおいて充分である。
【００４０】
この「すぐに」が、勝手な永久的な遅延にさらされない期間であるべきこと、すなわち、内部的なセルフ・タイムの遅延のみの結果であることが重要である。もし次のステージが現在のステージに類似のものであれば、それはＲｏｕｔ＋とＡｏｕｔ＋の間のＳでマークした矢印でのみ立ち往生できる。もしこれが真であるならば、この性質を入力にまでさかのぼつて伝搬できるし、こうして数学的帰納により類似のステージに伝搬できる。これらの要求が満たされるのを保証するために、終了の条件について注意が必要である。
【００４１】
評価のフェーズ（Ｅ）とプレチャージのフェーズ（Ｐ）が、少数の内部制御の遅延とともに、このステージのサイクルタイムとパイプラインのスループットを決定する。
【００４２】
もしパイプライン・ステージ制御回路８が、図８の通りにトランスペアレントなラッチを制御するために働くならば、その時はラッチ回路６が常時解放になって、移行がパイプラインを伝搬してしまい、動力を浪費することになる。この望ましくない現象を避けるために、、エッジ・トリガード・ラッチを使用して、有効な値だけを伝搬するようにできる。
【００４３】
エッジ・トリガード・ラッチは、そのクロックがハイに保たれていても、ロウに保たれていても、通常、静的な振舞いをする。しかしながら、この要件を完全に満たすには、弱いフィードバックの部品のフルセットが組み込まれ、かなり複雑な回路になる。この代わりに、クロックが決してハイに保持されず、クロックがロウに保持されている場合にのみ弱いフィードバックが必要とされるようにパイプライン制御回路が設計されれば、図９に図解したような特に単純な形のダイナミック・シングルフェーズ・クロック・エッジ・トリガード・ラッチを使用することができる。
【００４４】
図１０は、図９のエッジ・トリガード・ラッチ回路を制御するための信号移行グラフを図解する。図１０に用いられた表記法は、図８のものと同じである。図８と図９に用いられた信号移行グラフは、その基礎になっているペトリ・ネットの法則（Ｊ．ピーターセン、「ペトリネット理論とシステムのモデリング」プレンティスホール、１９８１年）に従うことにより状態グラフを導くのに使用できるし、次に、通常の技法に従って、この状態のグラフから１つのインプリメンテーションを導くことができる。この導出は、、ＦＯＲＣＡＧＥ（Ｍ．キシネスフキー、Ａ．コンドラチェフ、Ｖ．バーシャフスキー「コンカレント・ハードウェア  −  セルフタイム回路の理論と実際」パラレル・コンピューティングにおけるウイリー・シリーズ、１９９４年）のようなツールを使用して自動化できる。この場合、インプリメンテーションは、Ｒ−ＳフリップフロップまたはミュラーＣゲートに変換できる論理等式の形式で表現されている。
【００４５】
図１１は、ミュラーＣゲートのために用いられた表記法が、ＦＥＴ回路素子にどのように関係するかを示す。非対称Ｃゲートのために用いられた図１２と図１３の表記法は、１つの入力がゲートのメイン・ボディに結び付けられた場合に、出力の両方のエッジを制御することを示す。入力は、「＋」でマークされたエクステンションに結合された場合は、出力の立ち上がりエッジのみを制御する。入力は、「−」でマークされたエクステンションに結合された場合は、出力の立ち下がりエッジのみを制御する。
【００４６】
図１２は、トランスペアレントなラッチ６の制御のためのパイプライン・ステージ制御回路８のインプリメンテーションを図解する。動的論理回路４は、イネーブル入力Ｅを受け取り、終了した入力Ｄを発生するものとして図解されている。
【００４７】
図１３は、図９のエッジ・トリガード・ラッチ回路の制御のためのパイプライン・ステージ制御回路を示す。
【００４８】
設計の全体にわたって幅広いハンド・シェイク・プロトコルを使用できるが、初期プロトコル、セミ減結合やフル減結合やロング・ホールドのラッチ・コントローラのような代替のプロトコルとインターフェースすることが望ましい場合が有り得る。
【００４９】
初期のプロトコルから上に論じたような動的パイプラインへインターフェースするには、出力の承認が下りるまで入力データを保持するだけでよい。（言い換えれば、出力側に幅広いプロトコルを使用することである。）ロング・ホールドのラッチ・コントローラがこれに必要な特性を有している。
【００５０】
動的パイプラインを初期プロトコルのラッチにインターフェースすることが簡単なように見えるであろう。なぜならば、より幅広いプロトコルは、初期プロトコルのラッチの入力仕様をカバーするのに充分すぎるからである。しかしながら、動的パイプラインは、単に幅広いプロトコルを使用しているだけでなく、追加の情報の信号を出してもいるのである。特に出力装置は、Ａｏｕｔ＋とＡｏｕｔ−の間で立ち往生してはならない。この条件は、フル減結合コントローラで充足できるが、セミ減結合のコントローラでは充足できない。
【００５１】
要約すると、上述した実施例では、パイプライン中の動的論理回路が、保持回路へのチャージによることなく、また過度に厳しい制約によりシステムの性能を不必要に制限することなく、非同期の枠組のなかに支持されている。出力ラッチがまもなく利用可能になることとが知られている時に動的論理回路が評価を始めるのを許すことにより、これが達成された。この情報は、「ほとんど準備完了」信号を出す幅広い４フェーズのプロトコルの従来冗長であった移行を使用することにより、パイプラインを遡及して伝搬される。
【００５２】
添付の図面を参照しながら実施の具体例を詳細に説明してきたが、この発明はこれらの厳密な具体例に限られるものでなく、本書の「特許請求の範囲」に定義されたこの発明の範囲と精神から離れることなく、さまざまな変更と修正が、この技術に熟達した者によって可能であることが理解されるべきである。
【図面の簡単な説明】
【図１】動的論理回路を使用したパイプライン・ステージを図解する。
【図２】図１で図解したパイプライン・ステージで構成したパイプラインの運転を図解する。
【図３】後の時点における図２のパイプラインを図解する。
【図４】パイプライン制御回路の間のハンドシェイクのプロトコルを図解する。
【図５】パイプライン制御回路の間のハンドシェイクのプロトコルの代案を図解する。
【図６】図２と図３で図解したものに修正した制約をつけたパイプラインの運転を図解する。
【図７】後の時点における図６のパイプラインを図解する。
【図８】パイプライン制御回路の１つの具体例の信号移行グラフを図解する。
【図９】エッジ・トリガード・ラッチ回路を図解する。
【図１０】図９のエッジ・トリガード・ラッチを制御するためのパイプライン制御回路の信号移行グラフを図解する。
【図１１】非対称のＣゲートのために使用された表記法を図解する。
【図１２】トランスペアレントなラッチとともに運転するためのパイプライン制御回路を図解する。
【図１３】エッジ・トリガード・ラッチとともに運転するためのパイプライン制御回路を図解する。
【符号の説明】
２，１０  パイプライン・ステージ
４，１６，１８  動的論理回路
６，１２，１４  ラッチ回路
８  パイプライン・ステージ制御回路
２０，２２，２４，２６，２８  パイプライン・ステージ
【図１】
0003698838.tif 000002
【図２】
0003698838.tif 000003
【図３】
0003698838.tif 000004
【図４】
0003698838.tif 000005
【図５】
0003698838.tif 000006
【図６】
0003698838.tif 000007
【図７】
0003698838.tif 000008
【図８】
0003698838.tif 000009
【図９】
0003698838.tif 000010
【図１０】
0003698838.tif 000011
【図１１】
0003698838.tif 000012
【図１２】
0003698838.tif 000013
【図１３】
0003698838.tif 000014