学位論文要旨



No 116602
著者(漢字) 小沢,基一
著者(英字)
著者(カナ) オザワ,モトカズ
標題(和) プロセス微細化の影響を考慮した非同期式プロセッサの構成に関する研究
標題(洋)
報告番号 116602
報告番号 甲16602
学位授与日 2001.09.20
学位種別 課程博士
学位種類 博士(工学)
学位記番号 博工第5031号
研究科 工学系研究科
専攻 先端学際工学専攻
論文審査委員 主査: 東京大学 教授 南谷,崇
 東京大学 教授 岡部,洋一
 東京大学 教授 堀,浩一
 東京大学 教授 桜井,貴康
 東京大学 助教授 中村,宏
内容要旨 要旨を表示する

 命令セットを固定した場合,プロセッサの性能は1サイクルで実行される命令数IPC(Instructions Per Cycle)とクロック周波数の積で表せる.プロセッサにおける現在までの飛躍的な性能向上はIPCとクロック周波数の向上が同時に実現されてきたことによる.

 まず,クロック周波数の向上はプロセスの微細化によりもたらされた.一般に,プロセスが微細化するとゲート遅延が減少する.これによりクリティカルパス遅延が減少し,クロック周波数の向上が実現される.

 さらに,アーキテクチャの改良によりIPCの向上がもたらされた.特に複数命令の同時実行を実現するスーパースカラ,命令の実行順序を動的に決定するout-of-orderの採用が大幅なIPCの向上を可能とした.一般に,これらのアーキテクチャの改良はプロセッサの複雑化,大規模化をもたらすため,クロック周波数を決定するクリティカルパス遅延の増加が起こりうる.しかし,今まではクリティカルパス遅延の多くがゲート遅延に依存したため,この遅延増加をプロセス微細化によるゲート遅延減少で打ち消すことができた.そのうえ,回路設計技術の進歩でさらに遅延が減少したため,プロセッサが複雑化,大規模化したにも関わらずクロック周波数の向上が実現された.

 しかし,プロセスの微細化では,ゲート遅延は減少しても配線遅延は減少しない.そのため,今後は,遅延の多くが微細化で減少しない配線遅延となる.この場合,プロセス微細化による遅延減少は,長い配線に依存する構造ほど小さくなってしまい,チップ全体における大幅な遅延減少は期待できなくなる.この結果,クリティカルパスが長い配線で決定するようなアーキテクチャではクロック周波数の向上が制限される.

 現行の高性能プロセッサの多くはout-of-order実行を行う.このようなプロセッサのクリティカルパス遅延は,命令の実行順序を決める動的スケジューリング機構,分岐予測機構,キャッシュなどのメモリに基づく構造で決定される.一般に,メモリアクセス遅延の多くは配線遅延であるため,プロセス微細化による遅延減少はそれほど大きくなく,プロセス微細化によるクロック周波数の向上が制限される.

 このような状況でクロック周波数を向上させるには,クリティカルパス遅延を決定する構造のパイプライン化が必要となる.しかし,これらの構造の多くは直前の出力を入力として利用するため,パイプライン化を行ってもストールが多く発生し,クロック周波数の向上による性能の向上が打ち消される.

 このような場合でも,IPCを大幅に向上させることができれば,性能が向上する.しかし,一般のプログラムが持つ並列度は比較的小さいため,実現可能なIPCの上限も比較的小さい.さらに,現行のout-of-orderアーキテクチャでIPCを向上させるには,メモリに基づく構造の容量やポート数を増加させる必要があり,配線長が増加する.その結果,クリティカルパスの遅延が増加し,前述したようなクロック周波数の制限が問題となる.

 これらの結果,現行のout-of-orderアーキテクチャを用いたプロセッサでは,プロセス微細化によるIPCやクロック周波数の大幅な向上が期待できず,性能が頭打ちとなってしまう.

 この問題は,現行のouf-of-orderアーキテクチャのクリティカルパスがプロセス微細化による遅延減少の小さい部分で決定されることによる.そのため,IPCを維持したままクリティカルパスをプロセス微細化による遅延減少が大きい部分に移動できれば,同時実行幅の増加などによりIPCを向上させても,クロック周波数の向上が期待でき,現在までの性能向上率を維持することが可能となる.そこで,本論文では,この条件を満たすCascade ALUアーキテクチャを提案する.

 Cascade ALUアーキテクチャでは,RAW依存を無視して命令を同時発行し,命令実行の際にALUを直列接続してRAW依存を解決する.一般のアプリケーションはRAW依存を多く含むため,命令実行遅延はALU複数個の遅延となり,サイクルタイムをゲート遅延が支配的なALU遅延で制約できる. Cascade ALUアーキテクチャでは,クリティカルパスの遅延が実行する命令列の依存関係で変動するため,非同期式論理を用いた実装が容易である.しかし,現行の非同期式論理を用いたプロセッサの性能は,同期式論理を用いた場合に比べて極端に低く,提案するアーキテクチャの実装には適さない.そこで,本論文では,パイプライン化を用いて非同期式論理に特有なオーバーヘッドを隠蔽する手法を示した.評価の結果,非同期式論理を用いたプロセッサの性能を同期式論理を用いた場合の性能に近づけることができた.

 提案したCascade ALUアーキテクチャの性能をシミュレーションにより評価した結果,Cascade ALUアーキテクチャの性能がALU遅延のみの削減で大幅に向上し,ある程度ALU遅延を削減できれば,Cascade ALUアーキテクチャでout-of-orderアーキテクチャと同等の性能を達成できることがわかった.また,同等の性能となる条件において,分岐予測ミスに伴い破棄される命令数を少なくできることから,Cascade ALUアーキテクチャは消費電力の削減にも効果的であることもわかった.さらに,ALU間配線の利用状況の評価から,連続した命令が割り当てられるALUをできるだけ近くに配置することで,同時発行幅の増加によるALU間配線の遅延増加を抑制できることがわかった.

 また,Cascade ALUアーキテクチャの実装を行った結果,現行の0.25μmプロセスを用いた4命令同時発行のCascade ALUアーキテクチャの性能が,out-of-orderアーキテクチャを用いているMIPS R10000に近いものであることがわかった.また,実装したCascade ALUアーキテクチャの面積は,MIPS R10000より小さくなることがわかった.

 これらの結果から,Cascade ALUアーキテクチャを用いることで,プロセス微細化で配線遅延が減少しないことによるクロック周波数の制約を解決できることが示された.しかし,Cascade ALUアーキテクチャでは,アプリケーションが持つIPCの限界を解決することはできない.そのため,Cascade ALUアーキテクチャに基づいて,近年提案されているSMTアーキテクチャのようなIPCの限界を解決するアーキテクチャを検討する必要があることがわかった.

審査要旨 要旨を表示する

 本論文は「プロセス微細化の影響を考慮した非同期式プロセッサの構成に関する研究」と題し、7章から成っている。マイクロプロセッサの性能は、命令セットを固定した場合、1クロックサイクルで実行される命令数(IPC)とクロック周波数の積で表される.これまで、アーキテクチャ技術の進歩によるIPCの向上と、プロセス微細化によるゲート遅延減少効果でクロック周波数が向上したことによって、汎用プロセッサの性能は飛躍的な向上を遂げてきた。しかしながら、プロセス微細化によって配線遅延は減少しないため、配線遅延が支配的なメモリ構造がクリティカルパスとなるout-of-orderアーキテクチャを用いた現在の高性能プ口セッサでは今後の性能が頭打ちとなると予想される。本論文は、この問題を克服するため、クリテカルパスの支配要因が配線遅延にはならない新しいプロセッサアーキテクチャを提案し、今後予想されるさらなるプロセス微細化に伴う配線遅延問題を解決し得ることを示すシミュレーション実験の結果をまとめたものである。

 第1章「序論」では、本研究の背景と目的を述べ、本論文の構成を述べている。

 第2章「プロセス微細化による遅延の変化」では、プロセス微細化に伴って配線遅延がどのように変化するかを考察している。論理回路規模を一定にしたままプロセス微細化を行う場合には、配線遅延も素子遅延とほぼ同様な割合で減少するが、一般にはプロセス微細化が進むとそれを利用して実現される論理回路規模は大きくなるため、最適なリピータ挿入を行ったとしても配線遅延は減少せず、チップ全体の性能は配線遅延で制約を受けると述べている。

 第3章「プロセス微細化がプロセッサに与える影響」では、プロセス微細化に伴う大規模化が現行プロセッサで用いられているout-of-orderアーキテクチャの性能に対して与える影響について検討している。特に、分岐予測機構、動的スケジューリング機構、フォワーディング機構では、配線遅延が支配的なメモリ構造がクリティカルパスとなり、かつパイプライン化構成が難しいため、プロセス微細化に伴うシステム大規模化を行った場合にクロック周波数の向上を制限する可能性が高いと述べている。

 第4章「Cascade ALUアーキテクチャ」では、現行アーキテクチャの本質的問題点は性能を決めるクリティカルパスがプロセス微細化によって減少しない配線遅延で支配される構造にあることを指摘し、それを解決するアーキテクチャを提案し、その利害得失について検討している。Cascade ALUアーキテクチャは複数命令の同時実行を可能としつつプロセッサのクリティカルパスがALU遅延で決まる効果を持つことに特徴があり、ALU遅延はゲート遅延に支配されることから、現行アーキテクチャと同等のIPCを維持したまま、プロセス微細化に伴ってプロセッサのクロック周波数が向上すると述べている

 第5章「非同期式実装の検討」では、非同期式論理を用いるとCascade ALUアーキテクチャを効率的に実装できると述べている。また、Cascade ALUアーキテクチャを非同期式で実装する場合に問題となる要求・応答動作のオーバーヘッドのほとんどは、パイプラインの物理的なステージ数を増加させる細粒度化手法によって隠蔽され、非同期式実装に伴う性能低下を抑制できると述べている。

 6章「Cascade ALUアーキテクチャの評価」では、サイクルレベルシミュレータを用いたCascade ALUアーキテクチャの性能評価と実装に基づく性能、実装面積の評価を行った結果、現行の0.25umプロセスを用いた4命令同時発行のCascade ALUアーキテクチャの性能はout-of-orderアーキテクチャを用いているMIPS R10000とほぼ同等であり、実装面積はMIPS10000より小さくなると述べている。

 第7章「結論」では、本研究で得られた成果を総括し、今後の課題を指摘している。

 以上を要するに、本論文は、現行の高性能プロセッサで用いられるout-of-orderアーキテクチャの性能を決めるクリテカルパス遅延が配線遅延に支配されているために今後予想されるプロセス微細化の恩恵を享受できないという問題を解決するために、現行と同等のIPCを維持したままプロセッサのクリティカルパス遅延の支配要素をゲート遅延とする新しいスーパスカラアーキテクチャを提案し、シミュレーション評価によってその有効性を明らかにしたもので、その成果は工学的に貢献するところが大きい。よって本論文は博士(工学)の学位請求論文として合格と認められる。

UTokyo Repositoryリンク