
電子機器、特に同期デジタル回路において、クロック信号(歴史的にはロジックビートとも呼ばれる)[1]は、一定の周波数で高状態と低状態の間を振動する電子ロジック信号(電圧または電流)であり、デジタル回路の動作を同期させるためにメトロノームのように使用されます。最も一般的なタイプのデジタル回路である同期ロジック回路では、クロック信号がすべてのストレージデバイス、フリップフロップ、ラッチに適用され、それらすべての状態が同時に変化して競合状態が防止されます。
クロック信号は、クロック ジェネレータと呼ばれる電子発振器によって生成されます。最も一般的なクロック信号は、50% のデューティ サイクルの矩形波です。同期のためにクロック信号を使用する回路は、クロック サイクルの立ち上がりエッジ、立ち下がりエッジ、またはダブル データ レートの場合は立ち上がりエッジと立ち下がりエッジの両方でアクティブになることがあります。
デジタル回路
十分に複雑な集積回路(IC) のほとんどは、回路のさまざまな部分を同期させるために、最悪の内部伝播遅延よりも遅い速度でサイクルするクロック信号を使用します。予測可能な動作を実行するために、複数のクロック サイクルが必要になる場合もあります。IC が複雑になるにつれて、すべての回路に正確で同期されたクロックを供給するという問題はますます困難になります。このような複雑なチップの代表的な例は、現代のコンピューターの中心的なコンポーネントであるマイクロプロセッサで、水晶発振器からのクロックに依存しています。唯一の例外は、非同期 CPUなどの非同期回路です。
クロック信号はゲートされる場合もあります。つまり、回路の特定の部分でクロック信号を有効または無効にする制御信号と組み合わせられます。この手法は、使用されていないデジタル回路の一部を効果的にシャットダウンすることで電力を節約するためによく使用されますが、タイミング分析の複雑さが増すという代償を伴います。
単相クロック
最新の同期回路のほとんどは「単相クロック」のみを使用します。つまり、すべてのクロック信号は(実質的に) 1 本のワイヤで送信されます。
2相クロック
同期回路では、「2 相クロック」とは、それぞれが重複しないパルスを持つ 2 本のワイヤに分配されるクロック信号を指します。伝統的に、1 本のワイヤは「位相 1」または「φ1」( phi 1) と呼ばれ、もう 1 本のワイヤは「位相 2」または「φ2」信号を伝送します。[2] [3] [4] [5] 2 つの位相が重複しないことが保証されているため、 1 つの位相のラッチへの入力が他の位相のラッチからの出力にのみ依存する限り、エッジ トリガー フリップフロップではなくゲート ラッチを使用して状態情報を保存できます。ゲート ラッチは 4 つのゲートのみを使用するのに対し、エッジ トリガー フリップフロップは 6 つのゲートを使用するため、2 相クロックを使用すると、全体的なゲート数が少なくなる場合がありますが、通常は設計の難易度とパフォーマンスにいくらかのペナルティが伴います。
1970年代、金属酸化膜半導体(MOS)ICは、デュアルクロック信号(2相クロック)を一般的に使用していました。これらは、モトローラ6800とインテル8080マイクロプロセッサの両方で外部的に生成されました。[6]次の世代のマイクロプロセッサは、クロック生成をチップ上に組み込みました。8080は2MHzクロックを使用しますが、処理スループットは1MHzの6800と同等です。8080は、プロセッサ命令を実行するためにより多くのクロックサイクルを必要とします。ダイナミックロジックのため、6800の最小クロックレートは100kHz、8080の最小クロックレートは500kHzです。両方のマイクロプロセッサのより高速なバージョンは、1976年までにリリースされました。[7]
6501には、外部の 2 相クロック ジェネレータが必要です。MOS Technology 6502 は、内部で同じ 2 相ロジックを使用しますが、オンチップに 2 相クロック ジェネレータも含まれているため、必要なのは 1 相クロック入力のみで、システム設計が簡素化されます。
4相クロック
初期の集積回路の中には4相ロジックを使用するものがあり、4つの別々の重複しないクロック信号からなる4相クロック入力を必要としました。[8] これは、ナショナルセミコンダクターの IMP-16、テキサスインスツルメンツのTMS9900、DEC LSI-11で使用されたウェスタンデジタルの MCP-1600チップセットなどの初期のマイクロプロセッサで特に一般的でした。
4相クロックは、DEC WRL MultiTitanマイクロプロセッサ[9]やIntrinsityのFast14テクノロジーなどの新しいCMOSプロセッサではほとんど使用されていません。ほとんどの最新のマイクロプロセッサとマイクロコントローラは、単相クロックを使用しています。
クロック乗算器
最近のマイクロコンピュータの多くは、「クロック乗算器」を使用しており、これは低周波数の外部クロックをマイクロプロセッサの適切なクロック レートに乗算します。これにより、CPU はコンピュータの他の部分よりもはるかに高い周波数で動作できるようになり、CPU が外部要因 (メモリや入出力など)を待つ必要がない状況でパフォーマンスが向上します。
動的周波数変更
デジタル デバイスの大部分は、固定された一定周波数のクロックを必要としません。最小および最大のクロック周期が守られている限り、クロック エッジ間の時間は、エッジ間で大きく変化してもかまいません。このようなデジタル デバイスは、拡散スペクトル クロック生成、動的周波数スケーリングなど、周波数を動的に変更するクロック ジェネレーターでも同様に動作します。静的ロジックを使用するデバイスには、最大クロック周期 (つまり、最小クロック周波数) さえありません。このようなデバイスは、無期限に速度を落としたり一時停止したりすることができ、その後いつでもフル クロック速度で再開できます。
その他の回路
高精度アナログ-デジタル コンバータなどの一部の敏感なミックスド シグナル回路では、クロック信号として方形波ではなく正弦波を使用します。方形波には高周波の高調波が含まれており、アナログ回路に干渉してノイズの原因となる可能性があるためです。このような正弦波クロックは差動信号であることが多いです。差動信号は、同じ電圧範囲のシングルエンド信号に比べてスルー レートが 2 倍で、タイミングの不確実性が半分になるためです。差動信号は、単一ラインよりも放射が弱くなります。代わりに、電源ラインとグランド ラインでシールドされた単一ラインを使用することもできます。
CMOS 回路では、ゲート容量は継続的に充電および放電されます。コンデンサはエネルギーを消費しませんが、駆動トランジスタでエネルギーが浪費されます。可逆コンピューティングでは、インダクタを使用してこのエネルギーを蓄積し、エネルギー損失を減らすことができますが、インダクタは非常に大きくなる傾向があります。代わりに、正弦波クロック、CMOS伝送ゲート、および省エネ技術を使用して、電力要件を削減できます。[引用が必要]
分布
クロック信号をチップの必要なすべての部分に最小のスキューで届ける最も効果的な方法は、金属グリッドです。大型のマイクロプロセッサでは、クロック信号を駆動するために使用される電力は、チップ全体の総電力の 30% 以上になることがあります。両端のゲートとその間のすべてのアンプを含む構造全体は、サイクルごとにロードおよびアンロードする必要があります。[10] [11]エネルギーを節約するために、クロック ゲーティングはツリーの一部を一時的にシャット ダウンします。
クロック分配ネットワーク(またはクロック ツリー、このネットワークがH ツリーなどのツリーを形成する場合) は、共通ポイントから必要なすべての要素にクロック信号を分配します。この機能は同期システムの動作に不可欠であるため、これらのクロック信号の特性と、その分配に使用される電気ネットワークに多くの注意が払われています。クロック信号は単純な制御信号と見なされることがよくありますが、これらの信号には非常に特殊な特性と属性があります。
クロック信号は、通常、最大のファンアウトでロードされ、同期システム内のどの信号よりも高速で動作します。データ信号にはクロック信号によって時間基準が提供されるため、クロック波形は特にクリーンかつシャープでなければなりません。さらに、これらのクロック信号は、特にテクノロジのスケーリング (ムーアの法則を参照) の影響を受けます。つまり、長いグローバル相互接続ラインは、ライン寸法が減少するにつれて抵抗が大幅に増加します。このライン抵抗の増加は、同期パフォーマンスにおけるクロック分配の重要性が高まっている主な理由の 1 つです。最後に、クロック信号の到着時間の差や不確実性を制御すると、システム全体の最大パフォーマンスが大幅に制限され、誤ったデータ信号がレジスタ内にラッチされるという 壊滅的な競合状態が発生する可能性があります。
ほとんどの同期デジタルシステムは、各レジスタ セット間の組み合わせロジックを備えた、カスケード接続された連続レジスタ バンクで構成されています。デジタル システムの機能要件は、ロジック ステージによって満たされます。各ロジック ステージは、タイミング パフォーマンスに影響を与える遅延を導入します。デジタル設計のタイミング パフォーマンスは、タイミング解析によってタイミング要件と比較して評価できます。タイミング要件を満たすには、多くの場合、特別な考慮が必要です。たとえば、グローバル パフォーマンスとローカル タイミング要件は、パイプライン レジスタを等間隔の時間ウィンドウに慎重に挿入して、クリティカルな最悪ケースのタイミング制約を満たすことで満たすことができます。クロック分配ネットワークを適切に設計すると、クリティカルなタイミング要件が満たされ、競合状態が存在しないことが保証されます (クロック スキューも参照)。
一般的な同期システムを構成する遅延コンポーネントは、メモリ ストレージ要素、ロジック要素、およびクロック回路と配布ネットワークという 3 つの個別のサブシステムで構成されます。
これらの問題を改善し、効果的な解決策を提供するための新しい構造が現在開発中です。重要な研究分野には、共振クロック技術(「共振クロックメッシュ」)、[12] [13] [14] [15] オンチップ光相互接続、およびローカル同期方法論が含まれます。
参照
- ビット同期動作
- クロックドメインクロッシング – デジタル電子設計におけるクロッシング
- クロックレート – CPUチップまたはコアが動作する周波数
- 設計フロー(EDA) – 電子設計ツールスイート
- 電子設計自動化 – 電子システムを設計するためのソフトウェア
- 4 フェーズ ロジック - 動的ロジックの種類と設計方法
- 集積回路設計 - 電子ハードウェアのエンジニアリングプロセス
- インターフェースロジックモデル
- ジッター – 完全な周期性からのクロックの偏差
- パルス信号 – 電気信号のクラス
- セルフクロック信号 – 外部同期ソースなしでデコードできる信号
参考文献
- ^ FM1600B マイクロサーキットコンピュータ Ferranti Digital Systems (PDF)。英国バークシャー州 Bracknell: Ferranti Limited、デジタルシステム部門。1968 年 10 月 [1968 年 9 月]。リスト DSD 68/6。2020年 5 月 19 日のオリジナルからアーカイブ(PDF) 。2020年 5 月 19 日に取得。
- ^ 2相クロック 2007年11月9日アーカイブ、Wayback Machine
- ^ 2相非重複クロックジェネレータ、Tams-www.informatik.uni-hamburg.de、2011年12月26日にオリジナルからアーカイブ、2012年1月8日に取得
- ^ デジタルイメージングの概念 - 2 相 CCD クロッキング、Micro.magnet.fsu.edu 、 2012 年 1 月 8 日取得
- ^ Cell cgf104: 2 相非重複クロック ジェネレーター、Hpc.msstate.edu、2012 年 2 月 8 日にオリジナルからアーカイブ、2012 年 1 月 8 日に取得
- ^ 「マイクロプロセッサ の駆動方法」。エレクトロニクス。49 (8)。ニューヨーク:マグロウヒル:159。1976年4月15日。モトローラのコンポーネント製品部門は、水晶発振器を含むハイブリッド IC を販売していました。これらの IC は、6800 と 8080 に必要な 2 相の非重複波形を生成しました。その後、インテルは 8224 クロック ジェネレータを、モトローラは MC6875 を製造しました。インテル 8085 とモトローラ 6802 には、マイクロプロセッサ チップ上にこの回路が組み込まれています。
- ^ 「Intelのより高速な8080 μP」(PDF)。Microcomputer Digest。2 (3) 。Cupertino CA:Microcomputer Associates:1975年9月7日。 2019年1月23日時点のオリジナル(PDF)からアーカイブ。 2011年1月24日閲覧。
- ^ デジタルイメージングの概念 - 4 相 CCD クロッキング、Micro.magnet.fsu.edu 、 2012 年 1 月 8 日取得
- ^ Jouppi, NP ; Tang, JF (1989). 「持続性能とピーク性能の比率が高い 20 MIPS 持続 32 ビット CMOS マイクロプロセッサ」IEEE Journal of Solid-State Circuits . 24 (5): 1348–59. Bibcode :1989IJSSC..24.1348J. doi :10.1109/JSSC.1989.572612.
- ^ Anand Lal Shimpi (2008)、Intel の Atom アーキテクチャ: 旅の始まり
- ^ Paul V. Bolotoff (2007)、「Alpha: The history in facts and comments」、2012-02-18 のオリジナルからアーカイブ、2012-01-03取得、
EV6 のクロック サブシステムによって消費される電力は、コア電力全体の約 32% でした。比較すると、EV56 では約 25%、EV5 では約 37%、EV4 では約 40% でした。
- ^ Chan, SC; Shepard, KL; Restle, PJ (2005). 「均一位相均一振幅共振負荷グローバルクロック分布」. IEEE Journal of Solid-State Circuits . 40 (1): 102. Bibcode :2005IJSSC..40..102C. doi :10.1109/JSSC.2004.838005. S2CID 16239014.
- ^ David Shan 他「IBM z13 向け共振クロック メガメッシュ」2015 年。
- ^ 劉武龍;陳国清;王裕;楊華中さん。 「低電力共振クロックメッシュのモデリングと最適化」。 2015年。
- ^ 「クロックツリー合成」。
さらに読む
- Eby G. Friedman (編)、Clock Distribution Networks in VLSI Circuits and Systems、ISBN 0-7803-1058-6、IEEE Press、1995 年。
- Eby G. Friedman、「同期デジタル集積回路のクロック分配ネットワーク」、Proceedings of the IEEE、Vol. 89、No. 5、pp. 665–692、2001 年 5 月。
- 「ISPD 2010 高性能クロック ネットワーク合成コンテスト」、物理設計に関する国際シンポジウム、Intel、IBM、2010 年。
- D.-J. Lee、「変動がある場合の高性能かつ低電力のクロック ネットワーク合成」、博士論文、ミシガン大学、2011 年。
- IL Markov、D.-J. Lee、「クロック ツリーと派生した非ツリー構造のアルゴリズム チューニング」、Proc. Int'l. Conf. Comp.-Aided Design (ICCAD)、2011 年。
- VG Oklobdzija、VM Stojanovic、DM Markovic、NM Nedovic、「デジタル システム クロッキング: 高性能と低電力の側面」、ISBN 0-471-27447-X、IEEE Press/Wiley-Interscience、2003 年。
- Mitch Dale、「RTL クロック ゲーティングの威力」、Electronic Systems Design Engineering Incorporating Chip Design、2007 年 1 月 20 日。
Eby Friedman から引用。Wayback Machineに 2014-08-12 アーカイブ。Igor Markov による ACM SIGDA 電子ニュースレターのコラム。
原文は https://web.archive.org/web/20100711135550/http://www.sigda.org/newsletter/2005/eNews_051201.html でご覧いただけます。
