資料1 - 横浜 ITクラスター交流会

第18回新横浜ITクラスター交流会
マルチプロセッサSoCの
現状と将来動向
2007年7月12日
大阪大学 大学院情報科学研究科
今井 正治
2007/07/12
©2007, Masaharu Imai
1
講演内容
† VLSI製造技術のトレンド
† マルチプロセッサSoC
† 電子システム設計手法のトレンド
† ASIP開発システム: ASIP Meister
† 今後の課題
2007/07/12
©2007, Masaharu Imai
2
Trend of Design Rule
Moore’s Law
10
Year Rate -15%
-0.1528x
Design Rule (μm)
y = 1E+132e
1
0.1
0.01
1975
1980
1985
1990
1995
2000
2005
2010
Year
2007/07/12
©2007, Masaharu Imai
3
Trend of Density
1000
Year Rate 35%
Density (MTr's)
100
10
1
0.3506x
y = 6E-304e
0.1
0.01
0.001
1975
1980
1985
1990
1995
2000
2005
2010
Year
2007/07/12
©2007, Masaharu Imai
4
Trend of Clock Frequency
10000
Year Rate 29%
Clock (MHz)
1000
100
0.2897x
y = 1E-249e
10
1
1975
1980
1985
1990
1995
2000
2005
2010
Year
2007/07/12
©2007, Masaharu Imai
5
ITRS 2006 – Lithography-related
Characteristics (ITRS 2006)
100
Length (nm)
DRAM Ml1 1/2 Pitch (nm)
MPU/ASIC M11/2 Pitch (nm)
Flash Mem. Poly-Si 1/2 Pitch
(nm)
MPU Litho Gate Length (nm)
10
MPU Physical Gate Length
(nm)
2020
2019
2018
2017
2016
2015
2014
2013
2012
2011
2010
2009
2008
2007
2006
2005
1
Year
2007/07/12
©2007, Masaharu Imai
6
Pitch Definition
† DRAM ½ Pitch
= DRAM Metal Pitch / 2
† MPU/ASIC M1 ½ Pitch
= MPU/ASIC M1 Pitch / 2
† FLASH Poly Si ½ Pitch
= Flash Poly Pitch / 2
Metal Pitch
Poly Pitch
Typical DRAM/MPU/ASIC
Stagger-contacted Metal Bit Line
2007/07/12
Typical flash Un-contacted Poly
©2007, Masaharu Imai
7
講演内容
† VLSI製造技術のトレンド
† マルチプロセッサSoC
† 電子システム設計手法のトレンド
† ASIP開発システム: ASIP Meister
† 今後の課題
2007/07/12
©2007, Masaharu Imai
8
SoCの概念
† 複数の異質な
コンポーネントをチップ上
に集積化
RF
Analog
(Radio Freq.)
„ ディジタル回路
† プロセッサ, ASIC
„ メモリ
† RAM, ROM, Flash
„ アナログ回路
† 高周波回路
† センサー
† アクチュエータ
2007/07/12
©2007, Masaharu Imai
FPGA
RAM
ASIC
DSP
ROM
CPU
Flash
Memory
9
Example: Mobile Phone
(Heterogeneous System)
Main
Processor
2007/07/12
Accelerator
Baseband
MODEM
©2007, Masaharu Imai
RF Ciecuit
10
「2010年におけるSiPの代表事例」
(STRJ H18年度報告書 p.159)
Si貫通via
・チップ搭載数 10個
・最大積層数 8個
最薄チップ上
樹脂厚0.1 mm
1.0
mm
0.025 mm
基盤厚さ
0.16 mm
Ball端子
ピッチ0.8 mm
2007/07/12
端子径
0.4 mm
©2007, Masaharu Imai
11
SoC vs. SiP
2007/07/12
SoC
SiP
バスのビット幅
大
小
バスの動作周波数
高
低
バスのバンド幅
広
狭
消費電力
少
多
アナログ回路へのノイズ
多
少
歩留まり
低
高
製造費用
高
低
©2007, Masaharu Imai
12
なぜマルチプロセッサか? (1)
単一プロセッサのハードウェア量と性能の関係
† 同時に1つのスレッド
(プログラム)しか実行
できない
† 利用できる並列性は
命令レベルのみ
(VLIW, SIMD)
性能
† 性能はハードウェア
量に比例しない
† 性能には限界がある
2007/07/12
©2007, Masaharu Imai
ハードウェア量
13
なぜマルチプロセッサか? (2)
マルチプロセッサのPE数と性能の関係
† 同時に複数のスレッド
を実行可能
† 関数レベル,プロセス
(タスク)レベルの並
列性も利用可能
† プロセスレベルでの
パイプライン(ストリー
ム)処理も可能
† 性能はプロセスの依
存性に影響される
2007/07/12
性能
©2007, Masaharu Imai
理想的なス
ピードアップ
プロセッサ数
14
なぜマルチプロセッサか? (3)
動作周波数と消費電力
† 消費電力
„ P = F x C x V2
† P: 電力,F: 動作周波数,C: 静電容量,V: 電源電圧
† マルチプロセッサは,単一プロセッサよりも高性
能なので,動作周波数(F),電源電圧(V)構成
を採用すると
„ 単一プロセッサよりも動作周波数(F)を低くできる
„ 単一プロセッサよりも電源電圧(V)を低くできる
„ 従って,消費電力を低く抑えられる
2007/07/12
©2007, Masaharu Imai
15
マルチプロセッサSoCの分類
† 均質性
„ 均質(Homogeneous)システム
† 応用例: スーパーコンピュータ
† 適した演算: マトリックス演算,有限要素法による解析
„ 非均質(Heterogeneous)システム
† 応用例: 複合機能を持つ組込みシステム
† 適した演算例: 通信+マルチメディア信号処理
† 対称性
„ 対称(Symmetric)システム
„ 非対称(Asymmetric )システム
† 結合方法
„ 密結合: マルチコア+共有メモリ
„ 疎結合: マルチプロセッサ+通信路
2007/07/12
©2007, Masaharu Imai
16
プロセッサの接続方式: 抽象度による分類
† ネットワーク・レベル
„ CDMA,TDMA
† システム・レベル
„ コミュニケーション・リンク
† アーキテクチャ・レベル
„ バス(ex.: AMBA, CoreConnect, … )
† 回路レベル
„ 信号線
„ クロック
2007/07/12
©2007, Masaharu Imai
17
Network on Chip (NoC)
2007/07/12
©2007, Masaharu Imai
18
CELL Architecture
† Multi-Core
„ 1 x 64-bit Power Processor
„ 8 x Synergistic Processor Elements (SPE)
† Flexible Architecture
„ Multi-OS support
† Broadband Architecture
„ SPE is a RISC architecture with SIMD
organization and Local Store
„ 128+ concurrent transactions to memory per
processor
2007/07/12
©2007, Masaharu Imai
19
CELL Processor
SPE
SPE
SPE
SPE
PPE
SPE
SPE
©2007, Masaharu Imai
SPE
Rambus FlexIO
EIB: Element Interconnect Bus
IO controller
Test &
Debugging Logic
Memory Controller
Rambus XDRAM Interface
2007/07/12
L2
Cache
SPE
20
講演内容
† VLSI製造技術のトレンド
† マルチプロセッサSoC
† 電子システム設計手法のトレンド
† ASIP開発システム: ASIP Meister
† 今後の課題
2007/07/12
©2007, Masaharu Imai
21
Design Productivity Crisis
100M
1G
Logic Tr./Chip
10M
Tr. / Staff-Mo
1M
100M
10M
58% / Yr. Compound
100K
Complexity Growth Rate
10K
1M
1K
100K
21% / Yr. Compound
10K
1K
1980
100
Productivity Growth Rate
1990
2000
Tr. / Staff-Month
Logic Tr. / Chip
10G
10
2010
Year
Source: SEMATECH
2007/07/12
©2007, Masaharu Imai
22
集積回路設計での抽象度レベルの推移
Abstraction Level
System
Level IP
IP
Behavior
Beh.
RT
RT
Gate
Gate
Transistor
Mask
Tr.
Mask
1960
2007/07/12
1970
1980
1990
©2007, Masaharu Imai
2000
2010
2020
23
システムレベルのIP
† プロセッサ
„ 汎用プロセッサ(GPP)
„ 応用分野向きプロセッサ(ASIP)
† メモリーブロック
„ マルチポートメモリ
„ 多機能メモリ
† バスIF回路
„ 調停回路など
† 専用HWブロック
„ ディジタル信号処理(MPRG, JPEG)
„ 通信プロトコルハンドラ
2007/07/12
©2007, Masaharu Imai
24
講演内容
† VLSI製造技術のトレンド
† マルチプロセッサSoC
† 電子システム設計手法のトレンド
† ASIP開発システム: ASIP Meister
† 今後の課題
2007/07/12
©2007, Masaharu Imai
25
ASIPとは?
† ASIP: Application Specific
Instruction set Processor
„ 特定応用分野向けプロセッサ
† 汎用プロセッサとの違いは何か?
„ 「汎用」プロセッサは現実には
「PC用」のプロセッサ
† 応用分野ごとに,より適したプロ
セッサ(ASIP)が存在するはず
† 適用可能な応用分野
„ マルチメディア情報処理
(例: 積和演算の繰返し)
„ 通信(例: ビット演算)
„ 制御(例: ステートマシン)
2007/07/12
©2007, Masaharu Imai
General Purpose
vs.
Special Purpose
26
ASIPの利点
汎用プロセッサ並の
プログラマビリティ
性能
MIPS /
Area
ASIC
MIPS /
Watt
ASIP
ASIC並みの高性能・
低消費電力
汎用プロセッサ
プログラマビリティ(柔軟性)
2007/07/12
©2007, Masaharu Imai
27
講演内容
† 汎用プロセッサと専用プロセッサ
† コンフィギュラブル・プロセッサ
† コンフィギュラブル・プロセッサ開発環境
ASIP Meister
† ケーススタディ
† まとめ
2007/07/12
©2007, Masaharu Imai
28
アーキテクチャ・パラメータ
†
†
†
†
†
†
†
命令セット
命令発行方式
命令実行方式
パイプ数
パイプライン段数
レジスタ構成
メモリ構成(ハーバード/ノンハーバード)
2007/07/12
©2007, Masaharu Imai
29
既存プロセッサ拡張方式
† システム例
„ PEAS-I, PEAS-II (TUT and Osaka University, Japan)
„ Satsuki (Kyushu University, Japan)
„ MeP (Toshiba, Japan)
„ Xtensa (Tensilica, USA)
„ ARC Cores (ARCtangent, UK)
† 特徴
„ 基本命令セットアーキテクチャは固定
„ ユーザ定義命令の追加が可能
„ 応用プログラム開発環境の構築が容易
† 限界
„ パイプライン構造の変更が困難
„ 追加できる命令の範囲に制限
2007/07/12
©2007, Masaharu Imai
30
アーキテクチャ記述からの生成
† システム例
„ MetaCore (KAIST, Korea)
„ AIDL (Tsukuba University, Japan)
„ MIMOLA (Univ. of Dortmund, Germany)
„ EXPRESS (UC Irvine, USA)
„ LISA (Aahen University, Germany / CoWare, Belgium)
„ Chess, Checker, Go (Target Compiler Technologies, Belgium)
† 特徴
„ 専用のアーキテクチャ記述言語 (ADL)
„ 複雑なアーキテクチャも記述可能
† 限界
„ 専用ADLの習得に多大の労力が必要
2007/07/12
©2007, Masaharu Imai
31
講演内容
† 汎用プロセッサと専用プロセッサ
† コンフィギュラブル・プロセッサ
† コンフィギュラブル・プロセッサ開発環境
ASIP Meister
† ケーススタディ
† まとめ
2007/07/12
©2007, Masaharu Imai
32
ASIP Meisterの特徴
† 設計記述の入力方法
„ GUI と アーキテクチャ記述の併用
† ベース・プロセッサの選択が可能
„ 既存のプロセッサコア(RISC, CISC)
„ 新規設計も容易
† 応用プログラム開発ツールを自動生成
„ コンパイラ,アセンブラ
„ ISS
† プロセッサの開発効率の大幅な向上
„ 設計生産性の向上: ~100倍
„ 開発期間: 数ヶ月 ⇒ 数日
2007/07/12
©2007, Masaharu Imai
33
Configuration of ASIP Meister
Architecture
Spec.
Architecture Design Entry (GUI)
Processor Synthesizer
FHM-DBMS
Synthesis Simulation
Model
Model
Application
Program (C)
SW Development
Tool Generator
Compiler &
Assembler
Co-verification
& Estimation
Object Code
Module A
Behavior
RT
Gate
RTL
Description
Report
Area, Delay,
Power, etc.
Logic Synthesis
2007/07/12
©2007, Masaharu Imai
34
講演内容
† 汎用プロセッサと専用プロセッサ
† コンフィギュラブル・プロセッサ
† コンフィギュラブル・プロセッサ開発環境
ASIP Meister
† ケーススタディ
† まとめ
2007/07/12
©2007, Masaharu Imai
35
ケーススタディ (1)
† MIPS R3000 互換プロセッサ (PEAS R3K)
„ 新規設計での設計工数
† DLX 互換プロセッサ (PEAS DLX)
„ 派生品の設計工数
† PEAS-I コア・プロセッサ
„ 手設計との性能の比較
† H8S/2600サブセット
„ CISCへの適用可能性
2007/07/12
©2007, Masaharu Imai
36
ケーススタディ (2)
† 商用RISCコントローラ
„ 重大な設計変更が起きた場合の設計工数
† M32R互換プロセッサ
„ トラップ命令を含むサイクル互換プロセッサの設計
† 画像圧縮プロセッサ
„ JPEGエンコーダ向きASIP
2007/07/12
©2007, Masaharu Imai
37
ケーススタディ
†
†
†
†
†
†
†
MIPS R3000 互換プロセッサ (PEAS R3K)
DLX 互換プロセッサ (PEAS DLX)
PEAS-I コア・プロセッサ
H8S/2600サブセット
商用RISCコントローラ
M32Rサイクル互換プロセッサ
画像圧縮プロセッサ
2007/07/12
©2007, Masaharu Imai
38
MIPSおよびDLX互換プロセッサ
† プロセッサ名
„ PEAS R3K: MIPS R3000のサブセット
(割込み系およびコプロセッサ系の命令以外)
„ PEAS DLX: DLXのサブセット(固定小数点演算のみ実装)
† アーキテクチャの特徴
„ 32ビットRISC, ハーバード, 5ステージの命令パイプライン
命令数
(実装/仕様)
PEAS R3K
52 / 89
PEAS DLX
51 / 91
2007/07/12
実装した命令
ALU-operation, shift, multiply,
divide, Load, store, branch, jump
©2007, Masaharu Imai
39
設計条件とその結果
† 設計者: ASIP Meisterの開発者(エキスパート)
† セルライブラリ: TSMC 90nm (Typical)
† PEAS DLXは,PEAS R3Kの派生品として設計
設計時間
(H)
生成された
HDLの行数
ゲート数
(KGate)
動作周波数
(MHz)
PEAS R3K
8
9,269
36.7
775
PEAS DLX
3.5
24,899
72.5
500
2007/07/12
©2007, Masaharu Imai
40
ケーススタディ
†
†
†
†
†
†
†
MIPS R3000 互換プロセッサ (PEAS R3K)
DLX 互換プロセッサ (PEAS DLX)
PEAS-I コア・プロセッサ
H8S/2600サブセット
商用RISCコントローラ
M32Rサイクル互換プロセッサ
画像圧縮プロセッサ
2007/07/12
©2007, Masaharu Imai
41
人手による設計との比較
† プロセッサ名
„ PEAS-I Core
† アーキテクチャの特徴
„ 32ビットRISC, ハーバード, 5ステージ・パイプライン
„ 85命令 (Load/Store, ALU演算, 分岐)
† 設計者
„ ASIP Meisterの初心者(HDL設計のエキスパート)
† セルライブラリ: TSMC 90nm (Typical)
2007/07/12
©2007, Masaharu Imai
42
設計結果
† HDLの行数: 47%増加
† ゲート数:
61%増加(割込処理等の追加)
Manual Design
† 動作周波数: 42%向上
ASIP Meister
5872
6000
5000
4000
2
1.5
3969
1.9
1.3
1
3000
2000
0.5
1000
0
2007/07/12
0
Gen. HDL (lines)
Delay (ns)
©2007, Masaharu Imai
16
14
12
10
8
6
4
2
0
15.2
9.44
Gate Count (Kgate)
43
ケーススタディ
†
†
†
†
†
†
†
MIPS R3000 互換プロセッサ (PEAS R3K)
DLX 互換プロセッサ (PEAS DLX)
PEAS-I コア・プロセッサ
H8S/2600サブセット
商用RISCコントローラ
M32Rサイクル互換プロセッサ
画像圧縮プロセッサ
2007/07/12
©2007, Masaharu Imai
44
CISCプロセッサ設計へのチャレンジ
† プロセッサ
„ ルネサステクノロジ製(日立製作所) H8/2600 のサブセット
† アーキテクチャの特徴
„ 32ビットCISC, ノン・パイプライン
„ 複数種類の命令長
† ASIP Meisterでの設計方針
„ 32ビット, ハーバード, 8ステージ・パイプライン
„ 数百の命令のうち,94命令のみを実装
† ALU演算命令, シフト命令, 乗算, 除算, Load, Store, 分岐,
MAC (積和演算), LDM/STM (Load/Store Multiple)
2007/07/12
©2007, Masaharu Imai
45
設計条件とその結果
† 設計者
„ ASIP Meisterの初心者
† セルライブラリ
„ TSMC 90nm (Typical)
† 結果
設計
時間(H)
13
設計ステップ
使用方法の習得
アーキテクチャ設計
12
モジュール設計
59
„ 複雑なCISC命令でも実 ASIP Meisterでの作業
装可能
„ レガシーなCISCの復刻 設計品質
が可能
ゲート数
動作周波数
2007/07/12
©2007, Masaharu Imai
11
60.2 KGate
578 MHz
46
ケーススタディ
†
†
†
†
†
†
†
MIPS R3000 互換プロセッサ (PEAS R3K)
DLX 互換プロセッサ (PEAS DLX)
PEAS-I コア・プロセッサ
H8S/2600サブセット
商用RISCコントローラ
M32Rサイクル互換プロセッサ
画像圧縮プロセッサ
2007/07/12
©2007, Masaharu Imai
47
企業の製品に組込まれたRISCコントローラ
† プロセッサ
„ 企業の製品に実際に組込まれた
RISCコントローラと同じ仕様
† アーキテクチャの特徴
„ NDAのため公開不能
„ 当初の命令のビット幅は32ビット
(途中で24ビットに仕様変更)
† 設計者
„ ASIP Meisterの初心者
2007/07/12
©2007, Masaharu Imai
48
設計結果
† 人手での設計との比較
„ 設計期間: 86%短縮
„ 設計品質: 人手での設計とほぼ同等
„ 大規模な仕様変更にも容易に対応可
設計ステップ
アーキテクチャ設計
ASIP Meisterでの作業
その他
合
計
2007/07/12
32ビット版の
設計時間(H)
12
40
5
57
©2007, Masaharu Imai
24ビット版への
変更時間(H)
8
2
3
13
49
ケーススタディ
†
†
†
†
†
†
†
MIPS R3000 互換プロセッサ (PEAS R3K)
DLX 互換プロセッサ (PEAS DLX)
PEAS-I コア・プロセッサ
H8S/2600サブセット
商用RISCコントローラ
M32Rサイクル互換プロセッサ
画像圧縮プロセッサ
2007/07/12
©2007, Masaharu Imai
50
M32Rサイクル互換プロセッサ
† プロセッサ
„ ルネサス・テクノロジ製
商用プロセッサ
† アーキテクチャの特徴
„ 32ビットRISC
† 設計者のスキル
„ 熟練者
† テクノロジ
„ TSMC 90nm (Typical)
2007/07/12
設計時間
(H)
41
生成された
HDLの行数
19,062
ゲート数
(KGate)
52.6
動作周波数
(MHz)
746
©2007, Masaharu Imai
51
ケーススタディ
†
†
†
†
†
†
†
MIPS R3000 互換プロセッサ (PEAS R3K)
DLX 互換プロセッサ (PEAS DLX)
PEAS-I コア・プロセッサ
H8S/2600サブセット
商用RISCコントローラ
M32Rサイクル互換プロセッサ
画像圧縮プロセッサ
2007/07/12
©2007, Masaharu Imai
52
JPEGエンコーダ向きASIP
† 応用分野
„ JPEGエンコーダ
† ベースプロセッサ
„ MIPS R3000
† 追加した演算モジュール
„ バタフライ演算器
„ DCT補助演算器
2007/07/12
©2007, Masaharu Imai
53
設計結果
Processor
Results
BP Only
BP + Butterfly
BP + DCT
Area (Kgate)
39.43
57.30
+45%
71.17
+80%
Clock Freq.
(M Hz)
151
149
-1%
151
0%
Exec. Cycles
(M cycle)
61.28
53.57
-13%
39.62
-35%
Power Cons.
(mW/MHz)
2.40
2.48
+3%
2.49
+4%
Total Energy
(mJ)
147.1
132.9
-10%
98.65
-33%
2007/07/12
©2007, Masaharu Imai
54
Area vs. Performance
Exec. Cycles (M Cycle)
65
60
55
BP Only
BP + Butterfly
BP + DCT
50
45
40
35
30
20
30
40
50
60
70
80
Area (K gate)
2007/07/12
©2007, Masaharu Imai
55
Area vs. Energy Consumption
160
Total Energy (mJ)
150
140
130
BP Only
120
BP + Butterfly
110
BP + DCT
100
90
80
20
30
40
50
60
70
80
Area (Kgate)
2007/07/12
©2007, Masaharu Imai
56
評価結果のまとめ
† 新規設計効率の大幅な向上
„ 数ヶ月⇒数日
† 設計変更時の対応も容易
„ 数ヶ月⇒数日
† 応用プログラム開発ツールも生成可能
„ 総合的な設計効率の向上は約100倍
† 設計品質は人手での設計と同程度
„ 人手設計と同程度の動作周波数が達成可能
† RISCだけでなく,CISCの設計も可能
„ ベースプロセッサを多数の候補の中から選択可能
2007/07/12
©2007, Masaharu Imai
57
ASIP Meisterの普及状況
† 全世界の教育機関に無償提供
„ 2005年12月10日時点で,36の国と地域で176 のユーザ登録
3 21
Japan
37
Asia
Oceania
64
North America.
EURO
32
20
2007/07/12
17
©2007, Masaharu Imai
Mid./So. America.
Africa
Middle East
58
講演内容
† VLSI製造技術のトレンド
† マルチプロセッサSoC
† 電子システム設計手法のトレンド
† ASIP開発システム: ASIP Meister
† 今後の課題
2007/07/12
©2007, Masaharu Imai
59
MPSoC専門の学会
† MPSoC (International Forum on Application
Specific Multi-Processor on Chip)
† http://tima.imag.fr/MPSoC
† 2001年から2005年まで欧州で開催
† 2006年は米国(コロラド)で開催
† 2007年は淡路島で開催
† 2008年はドイツ(Aahen)で開催
2007/07/12
©2007, Masaharu Imai
60
今後の課題(1)
† MPSoC
„ プロセス(タスク)分割およびプロセッサへのマッピン
グの最適化
„ プロセス間通信(バス構成,ネットワーク)の最適化
„ RTOSを含むシステムの最適化(モデル化,プロファ
イリング,性能予測)
† プロセッサ間の通信方式
„ スイッチング遅延と信号の伝播遅延の乖離
„ 近傍PEと遠隔PEとの伝播時間の格差
„ 同期通信と非同期通信の併用
2007/07/12
©2007, Masaharu Imai
61
今後の課題(2)
† ディペンダビリティ(Dependability)
„ 仕様と設計の検証
† 仕様の無矛盾性
† 設計が仕様を正しく実現していることの検証
„ ハードウェア,ソフトウェアの信頼性
† 耐故障性
„ 頑強性(Robustness)
† システムの一部に故障が生じてもシステム全体の機能
が保たれる
† ソフトエラーへの対応
2007/07/12
©2007, Masaharu Imai
62