CPUアーキテクチャーの進化
CPU高速化の常套手段 パイプライン処理の基本 【その1】
2010年09月06日 12時00分更新
これを補正するために登場するのが、ラッチ回路である(図3)。ラッチ回路というのはようするに、図1のSRAMそのものであり、「入力された値を保持し続ける」機能を持つ。
![図3 図3](/img/2010/09/06/896386/l/b5a2c54327b6f9ec.jpg)
図3 図2にラッチ回路を加えた状態
先の例の場合だと、Dに入力される2つの信号にラッチを挟み込むことで、2つの信号が同じタイミングで出力されるようになる。このタイミングを決めるために使われているのが、いわゆるクロック信号である。つまりCPUの動作周波数とか言われているものは、実際には内部のラッチの動作タイミングを決定しているわけだ。
「動作周波数を上げると、その分トランジスターが高速に動く」と勘違いしている(実際ラッチ回路の内部に関してはそうなのだが)人もいるかもしれないが、図3で言えば、A~Dの回路にクロック信号は供給されていない。これらの回路内部のゲート回路やその中のトランジスターは、クロック信号とは無関係に動作する。
こうした形で、複数の回路の間にラッチ回路を挟み、そこに外部からクロック信号を入れる方式を、一般に「同期回路」と呼ぶ。最終的にはラッチ回路により、クロックのタイミングに同期して動作が進行するからだ。
同期回路があるということは、もちろん「非同期回路」もある。こちらはラッチを省く形で実装される。ぶっちゃけた話、CPUの消費電力の大きな部分はこのラッチ回路が占めており、これを省けば大幅な消費電力削減が可能となる。また図2と図3を見比べればわかるとおり、ラッチ回路は機能としては「信号を遅れさせる」ことになり、これは広い意味で性能低下の要素となる。
にも関わらず、非同期回路で製造されたCPUというのは、x86では皆無であり、もっと広い範囲で見てもARMとマンチェスター大学が共同で研究開発をした「Amulet」シリーズや、Philips(現NXP Semiconductor)の事業会社であったHandshake Solutions社の「ARM996HS」といったあたりのみ。製品化されたもので筆者が唯一知っているのは、シャープの「DDMP」(Data-Driven Media Processor)くらいしかない。
なぜかといえば単純な話で、ラッチなしではタイミング設計が極度に難しくなるからだ。実際、100ゲート程度の回路であっても、ラッチ無しで設計するのはかなり難しい。10000ゲートを越えると、CADなどでもかなり設計は困難になるだろう。タイミングのずれ方は一意に決まるとは限らない。特に昨今のように、プロセスの微細化にともなってトランジスターの動作特性のバラつきが大きくなっている状況では、相当マージンを多く取らないとまともに動くものは作れない。そうなると、むしろラッチを入れたほうが安定するし、設計も遥かに簡単だからだ。
![](/img/blank.gif)
この連載の記事
-
第775回
PC
安定した転送速度を確保できたSCSI 消え去ったI/F史 -
第774回
PC
日本の半導体メーカーが開発協力に名乗りを上げた次世代Esperanto ET-SoC AIプロセッサーの昨今 -
第773回
PC
Sound Blasterが普及に大きく貢献したGame Port 消え去ったI/F史 -
第772回
PC
スーパーコンピューターの系譜 本格稼働で大きく性能を伸ばしたAuroraだが世界一には届かなかった -
第771回
PC
277もの特許を使用して標準化した高速シリアルバスIEEE 1394 消え去ったI/F史 -
第770回
PC
キーボードとマウスをつなぐDINおよびPS/2コネクター 消え去ったI/F史 -
第769回
PC
HDDのコントローラーとI/Fを一体化して爆発的に普及したIDE 消え去ったI/F史 -
第768回
PC
AIアクセラレーター「Gaudi 3」の性能は前世代の2~4倍 インテル CPUロードマップ -
第767回
PC
Lunar LakeはWindows 12の要件である40TOPSを超えるNPU性能 インテル CPUロードマップ -
第766回
デジタル
Instinct MI300のI/OダイはXCDとCCDのどちらにも搭載できる驚きの構造 AMD GPUロードマップ -
第765回
PC
GB200 Grace Blackwell SuperchipのTDPは1200W NVIDIA GPUロードマップ - この連載の一覧へ