『半導体業界の第一人者,AI業界を行く!』 Vol.10:Xilinx社 新FPGA Versal -Part2-

『半導体業界の第一人者,AI業界を行く!』  Vol.10:Xilinx社 新FPGA Versal -Part2-

こんにちは,HACARUS 東京R&Dセンター所属のエッジ・エバンジェリスト 田胡治之です.この連載では,半導体業界で長年知識や情報を得てきた私,田胡がこれまでと異なるAI業界に飛び込み,そこから感じる業界のニュースやトピックを独自の視点で紹介したいと思います.

前回の記事で,Xilinx社の新FPGA Versal (ヴァーサル)の Intelligent Engines(AI Engine) を紹介しました.今回は,Versal チップ設計面の特徴について見ていきましょう.

 

Versal の位置付け

Xilinx社は,ACAP (Adaptive Compute Acceleration Platform) コンセプトを 2018年8月を発表しました.Versal は製品シリーズ名です.

同社によれば,「このたび発表した Versal ACAP は,・スカラーエンジン,・適応型エンジン,・およびインテリジェ ントエンジンを組み合わせた完全にソフトウェアプログラマブルなヘテロジニアス演算プラットフ ォームで,データセンター,有線ネットワーク,5G無線,および先進運転支援システムなどのアプリケーションにおいて現在最速のFPGAインプリ メンテーションに比べ最大20倍,現在最速のCPUインプリメンテーションに比べ100 倍以上という劇的な性能向上を実現します.」となっています[1] [2] [6].Zynq Ultrascale + MPSoC の次世代 FPGAという位置付けです.

Zynq Ultrascale + MPSoC は TSMC社の 16nm FinFET 半導体プロセス技術で製造されていました.Versal は,TSMC社の 7nm FinFET 半導体プロセス技術を使っています.微細化と大規模化に伴って配線がますます混雑し,配線遅延の増大によりタイミング設計の困難さも増大します.それらを克服するため,Versal はチップ設計面でも新機軸を採用しました.本稿では(1)微細化に伴う配線遅延の増大,と(2)NoC (Network on Chip) 導入を取り上げます.

 

微細化に伴う配線遅延の増大

半導体製造プロセスルール微細化に伴う FPGA論理ゲート遅れ時間の推移を Figure 1 に示します[3].横軸は半導体製造プロセスルールの呼称で,右に行くほど微細なルールです.Zynq Ultrascale + MPSoC は 16nm ルールで製造され,Versal は 7nm ルールで製造されています.

論理ゲートの遅れ時間は,大雑把にはトランジスタの遅れ時間(Transistor Delay 青色棒グラフ)と配線の遅れ時間(Metal Delay 緑色棒グラフ)の合計です.前者は右下がりで,即ち半導体製造プロセスルールが微細になるにつれて短くなっています.

一方,配線による遅れは,16nm から 7nm に微細化されるとむしろ増加します.遅れ時間合計は,16nm から 7nm に微細化するとかえって大きくなっています.即ち動作周波数の低下につながります.そのような製品はマーケットに受け入れられないでしょう.

それにも関わらず,微細化を進める理由をおさらいします.

TSMCは,16nm から 7nm への微細化により,チップ面積を約43~33%に縮小できると発表しています[4][5][7].シリコンウェハー1枚から製造できるチップ数が約2.2倍(1/0.43)~ 3倍に増加します.

ウェハーあたりの製造コストは微細化により上昇するものの,チップあたりの製造コストを下げることができます.即ち微細化にはチップ製造量を増やし,同時に製造コストを下げられる大きな経済的メリットがあります.これが半導体メーカーが微細化を進める最大のモーティベーションです.1970年代から一貫して変わりません.

加えて2010年頃まではトランジスタ遅延に比べて配線遅延が相対的に小さく,微細化によってトランジスタ遅延が減少すると,動作周波数向上や消費電力低減のメリットも享受出来ました.微細化は,三度(製造チップ数増,製造コスト減,性能向上)美味しかったのです.

しかし,近年では,Figure 1 に示すように配線遅延増加等の要因により,微細化によって性能低下が起きかねない状況です.微細化によるメリットを引き続き享受するため,微細化はもう限界と言われながらも,製造プロセスと設計の工夫を懸命に続けているのが現状と言えるでしょう.

 

Figure 1 Metal and Transistor Delays For a Quad Routing Resource Across Different Technology Nodes(normalized to total delay at 28nm) [3]

Figure 1 Metal and Transistor Delays For a Quad Routing Resource Across Different Technology Nodes(normalized to total delay at 28nm) [3]

論理ゲートの遅れ時間を,簡略化したモデルを使って説明します(Figure 2).

一番シンプルな論理ゲートであるインバータ2個(Inv1, Inv2)が接続されたモデルを考えます.Figure 2 左上は,Inv1 と Inv2 が短い配線で接続されたモデル,Figure 2 下は,長い配線で接続されたモデルです.回路上のノード(n1, n2, n3, n4)の電圧波形を Figure 2 右上に示します.

n1 に time 0 で立ち上がる波形を印加します.トランジスタ遅延時間後(Figure 2 右上 Transistor delay),Inv1出力 n2 にn1波形を反転した波形が現れます.短い配線(長さ L)で接続された次段 Inv2 入力 n3 には,n2 とほぼ同じ波形が現れます.

配線抵抗 r , 配線容量 c を持つ配線による遅延はRC遅延(RC Delay)と呼ばれ,rc に比例します.ここで RC遅延はトランジスタ遅延に比べ十分小さいとしています.

一方,Inv1 に長い配線(長さ 7L)が接続された場合(Figure 2 下図)は,配線遅延( Figure 2 右上 RC delay)が顕著になり,Inv2 入力 n4 には鈍った波形(赤)が現れます.例示した長さ 7L の配線は長さLの配線が7個縦続接続されたものと考えられ,RC遅延時間は 7r x 7c = 49rc となります.

長さの二乗に比例した遅延になることに注意が必要です.微細化に伴い配線抵抗が増加し,配線遅延が大きくなることが大きな問題となっています.

 

Figure 2 Circuit models of inverters with short and long wiring and their node waveforms.

Figure 2 Circuit models of inverters with short and long wiring and their node waveforms.

 

TSMC 7nm の学会発表 [4] から配線断面構造を Figure 3 に示します.写真一番下の Fin がトランジスタ,黒い台形がメタル配線の断面です.メタル配線は信号配線用の合計13層(M0 ~ M12)と,電源配線などに使われる最上層の厚いメタル層(Thick Metal)から構成されます.

メタル配線第0層(M0) ~メタル配線第4層(M4) の配線ピッチ(配線幅+配線間隔)が一番狭く近距離配線に使われます.なぜならば,数の多い近距離配線のため配線を多くする必要があり,一方で配線長は短いのでRC遅延は問題となりにくいからです.

メタル配線第5層(M5) ~ 第10層(M10)は配線ピッチがそれより広く中距離配線向けです.中距離配線の配線数は短距離配線より少ないと想定され,一方で配線長が長くRC遅延が問題になりやすいので,配線幅を広くして配線抵抗を下げています.

メタル配線第11層(M11)~第12層(M12)は長距離配線用です.配線数は更に少ないと想定されるので,配線幅を更に広くし配線厚みも厚くして配線抵抗を下げています.このような努力をもってしても,設計はますます難しくなっています.

 

Figure 3 TSMCの7nm SRAMチップの配線層の断面(図:IEDM)[4]に加筆

Figure 3 TSMC 7nm SRAMチップ配線層の断面図(IEDM[4]に加筆)

16nm プロセスと 7nm プロセスでの配線抵抗値を見積もってみます(Figure 4).1997年IBM社による銅配線導入以降,配線材料には銅(Cu)が使われています.

銅配線には半導体中に銅原子が拡散する問題があるため,コバルト(Co)などのバリアメタル(barrier metal)で銅配線を包みます.配線断面を長方形とし,バリアメタル厚を一様とした簡略モデルを使って配線抵抗を計算してみました.

各部の寸法は筆者の推定です.16nm プロセスから 7nm プロセスに微細化されると抵抗比は約3.3倍に上昇します.理由は(1)銅の幅は配線幅からコバルト層の厚み×2 を引きとても細くなる,(2)コバルトの抵抗率は銅の抵抗率の約3.5倍(バルクの値)高いため多くの電流は細くなった銅を流れる,ためです.

 

Figure 4 メタル配線の簡略モデルと抵抗比

Figure 4 メタル配線の簡略モデルと抵抗比

 

TSMCの学会発表[5]によると,16nm プロセスから 7nm プロセスへの微細化で配線抵抗は約3倍に増加します(Figure 5 右側の赤いプロット).簡略モデル計算による約3.3倍(Figure 5 左側)に近い値と言えるのではないでしょうか.

 

Figure 5 微細化に伴うメタル配線抵抗の増加(左側:筆者による簡略モデル計算,右側:TSMCの学会発表 [5] )

Figure 5 微細化に伴うメタル配線抵抗の増加(左側:筆者による簡略モデル計算,右側:TSMCの学会発表 [5] )

このように配線問題は深刻です.マイクロプロセッサ(例えばx86チップ)やモバイルSoC(System On Chip,例えばApple社A14)は,設計部門がチップ設計を最初から最後まで行うカスタム設計のため,設計部門の経験,技と努力でかなり克服できると思います.

しかしFPGAではユーザが設計するため,そうは行きません.ユーザの設計負担を極力増やさずに配線問題を克服する手段が必要になります.Versal にはいくつかの工夫が盛り込まれています.本稿では,NoC (Network on Chip)を取り上げます.

 

NoC (Network on Chip) の導入

近年の大規模FPGA チップには,マイクロプロセッサコア,プログラマブルロジック(PLまたはFabric),画像処理 IP,メモリコントローラ,各種I/O など沢山の機能ブロック(IP :Intellectual Property) が集積され,インターコネクト(AXI4 など)がそれらを繋いでいます.

前世代までは,ユーザが使うのと同じプログラマブルロジックを使ってクロスバー(Crossbar)ベースのインターコネクトが実装されていました.Versal ではそれに代わって NoC (Network on Chip)を導入しました.Versalのチップレイアウトを Figure 3 に示します[3].NoC と書かれた細長い領域がそれです.

 

Figure 6 Versal シリーズ VC1902チップのフロアプラン [3]

Figure 6 Versal シリーズ VC1902チップのフロアプラン [3]

NoC は,チップ内のパケット交換式通信路です.送信側で通信データをパケットに分割してから通信路に送り込みます.通信路内でパケットはバケツリレー式に転送され,受信側で組み立て直されます.LANやインターネット通信で使われているパケット交換式通信を半導体チップ内に持ち込んだと言えます.

NoC は Arteris社が2000年代からSoC設計向けIPとして提供しており[9],半導体チップへの導入は初めてではありませんが,FPGAでの採用は初めてと思われます.目的は,微細化大規模化によって深刻になった配線問題を克服するためと考えます.前世代まではユーザーが設計したロジック回路とインターコネクトのロジック回路が同じプログラマブル領域(PL)を使っていました.そのため相互に干渉が生じ,配置配線設計の収束が難しくなり,NoC専用回路と領域を設ける判断をしたのかもしれません.

Versalのオンチップネットワークは水平方向に細長い2本の領域と,垂直方向に細長い4本の領域で構成されています(Figure 7).水平の領域には4本の物理チャネルがあり全体では2Tbps(Tera bit per second)以上の双方向バンド幅を持っています.

垂直の領域は2本の物理チャネルを持ち,4つの領域の合計のバンド幅は,水平の領域と同じ 2Tbps以上です.Figure 7 中央と Figure 8 [3]に,NoCの概念的な構造が示されています.左側から入力が入り,クリーム色の丸で書かれているスイッチで経路を選択するメッシュ構造になっています.右側から出力されます.プログラマブルロジック(PL)やその他のブロックは,このオンチップネットワークで接続されます [8].

NoC 採用により,インターコネクトはNoC専用領域にあらかじめ組み込まれているネットワーク配線と回路を使います.通信時間や消費電力の予測が容易になり,またプログラマブルロジックをほぼ消費しないと考えられます.配線問題を克服するひとつのアプローチと考えます.

 

Figure 7 Versal NoC (Network-on-Chip) [8]

Figure 7 Versal NoC (Network-on-Chip) [8]

Figure 8 NoC Conceptual Diagram [3]

Figure 8 NoC Conceptual Diagram [3]

まとめ

Xilinx社の新FPGA Versal (ヴァーサル)のチップ設計面の特徴を取り上げました.

半導体製造プロセスの 16nm から 7nm への微細化に伴い,特に配線抵抗増大が顕著になり,チップ設計の困難さが増しました.その原因を考察しました.

FPGA大規模化と配線抵抗増大に起因するインターコネクト設計の課題を解決するため,Versal はFPGAで初めて NoC (Network on Chip) を導入しました.

 

参考文献

[1] Xilinx Versal
https://japan.xilinx.com/products/silicon-devices/acap/versal.html

[2] ベールを脱いだザイリンクスの次世代FPGA,CEOらが講演 (2018/8/27)
https://xtech.nikkei.com/atcl/nxt/column/18/00001/00901/?P=2

[3] B.Gaide, et.al., Xilinx Adaptive Compute Acceleration Platform: VersalTM Architecture
https://www.xilinx.com/support/documentation/white_papers/ACAP%20Paper.pdf

[4] いざ7nm世代の製造プロセスへ,TSMCやIBMらが発表 (2016/12/7)
https://xtech.nikkei.com/dm/atcl/event/15/112800090/120700011/

[5] TSMCがISSCCで5nmプロセスまでのプロセス技術を展望
https://pc.watch.impress.co.jp/docs/column/kaigai/1043026.html

[6] 後藤弘茂のWeekly海外ニュース AIアクセラレータコアをFPGAに組み込んだXilinxの新カテゴリ「Versal」(2019/9/30)
https://pc.watch.impress.co.jp/docs/column/kaigai/1209345.html

[7] 後藤弘茂のWeekly海外ニュース 7nmで作られた第3世代Ryzenのトランジスタ密度が低い理由 (20201/29)
https://pc.watch.impress.co.jp/docs/column/kaigai/1231965.html

[8] AIエンジンを持ったXilinxの「Versal FPGA」
https://news.mynavi.jp/article/hotchips31_ml-14/

[9] 微細化に向かう車載半導体に注力 – SoCの配線IPコアを提供するArteris 2016/1/8
https://news.mynavi.jp/article/siliconvalley_venture-3/

ニュースレター購読Newsletter

登録はこちら