FPGAチップが今後バカみたいに安くなるかもしれない話

ふと、今後5年でFPGAはバカみたいに安くなってくるかもしれないと思ったので、まとめておきます。
ただし、材料はブログで見た話とか人に聞いた話とかで、しかもそれをいいように解釈しての話なので、妄想レベルであることを最初に断っておきます。
用語として、FPGAのようなプログラム可能なチップに対して、出荷段階で回路が決まっているようなチップをまとめてASICと呼びます。(ASICの正確な定義は知らない)

今のFPGAは「なんでもできるけど高くて遅い」

前に、「CPUはオワコン」というタイトルでFPGAが来るよという話を書いたときにあった意見として、「CPUは終わらないでしょう」という話よりも「FPGAだけじゃないでしょう」という話が多かったように思います。
その根底には、FPGAはチップとしては遅いということと、もっと大きい要因として高いということがあります。


FPGAは、同じ回路であればASICよりも遅くてかなり高いです。安い製品が出しにくい構造も(おそらく)あります。
価格ですが、だいたい1チップで3000円とかします。そういう話をしたときに「いやいや安いのは500円とかで」というのも出てきますが、おそらく他のチップより1桁高いです。
ARMプロセッサなんかは、32bitで100円〜200円、16bitなら数十円という価格の製品があるようです。
そうすると、DSPやCPU、GPUを使ったほうがいいよとなります。


遅いという話ですが、いまのASICでは2GHzや3GHzは当たり前の状況ですが、FPGAは500MHzがやっと、がんばって1GHzとかのようです。ただ、その速度差はソフトウェア処理を回路化することで挽回できるし、価格が安くなれば大きな問題ではないように思います。

微細プロセスがFPGA低価格化に有利

さて、数日前こんなニュースがありました。FPGA界隈の人には驚きだったようです。
ビジネスニュース 企業動向:Intel、Altera向けに14nmプロセスのFPGAを製造へ - EE Times Japan


いま、AlteraのFPGAがCycloneVで28nmプロセスなので、ASICで22nmプロセスだ20nmプロセスだと言っている世の中では半世代遅れています。
Cyclone FPGA シリーズについて
先日のFPGA会の飲み会でも「Alteraががんばっても、Intelがんばってるし中々製造プロセスでは追いつけないよね〜(だからまだCPU優勢)」みたいな話になったりしてたのですが、このAlteraとIntelの提携によって、Intelの製造プロセスがそのままAlteraに来ることになります。


14nmプロセスだと単純に言えば4倍の回路規模、もしくは同規模で1/4の価格になるということですね。
もちろんチップとはそう単純なものではないという話もあるし、FPGAの特性としてもそう単純はない事情があるようです。
また、14nmプロセスになったところでASICチップと肩を並べるだけで、相対的にFPGAが高い状況は変わらないのではないか、というツッコミもあると思います。


ところが、14nmプロセスというのは、FPGAの低価格化にASICよりも有利ではないかという材料があります。
今のプロセスでも、ひとつのウェハーを完全に欠陥なく製造することは不可能で、たとえば6コアのCPUを製造しておいて、1〜2コアのどこかに欠陥があるチップを4コア製品、3〜4コアのどこかに欠陥があるチップを2コア製品、1コアしかまともに動かないチップを1コア製品として売るということが行われています。
ASICチップでは、欠陥のあるチップを機能単位で殺して廉価版にすることになるので、殺された機能の欠陥のない部分がムダになります。そして、14nmプロセスでは欠陥率が高くなると考えられていて、そうするとムダが多くなっていくと思われます。
一方でFPGAでは、1万以上あるロジックセルごとに欠陥のある部分を殺すことが可能で、ムダを大きく減らすことができます。
このことから、14nmプロセスになって欠陥率があがることは、ASICに比べてFPGAに価格面で有利に働くと思われます。

用途特定されることで小規模チップも可能になる

先ほど、FPGAでは価格が安くならない事情があるということを書きました。
製造プロセスが微細化すると、ASICでは同程度の製品が安く提供され、どんどん昔のチップ相当のチップが安くなっていきますが、FPGAでは回路規模が大きくなるだけでなかなか安いチップが出ないという状況があるようです。


FPGAには外部接続用のピンがたくさんあるのですが、「FPGAの場合はI/Oピン数が多い方が喜ばれる」ことがあり、ピンを最大化する方向で設計が行われるようです。
ある寺の黒猫:FPGAの進化と値段:ALTERAでいこう!
そして、このことが、なかなか安い製品が出ないことにつながっているのではないでしょうか。


では、なぜ「I/Oピン数が多い方が喜ばれる」かというと、FPGAが現状ではASICのプロトタイプか少量生産品でつかわれていて「何でもできる」ことが求められているからではないかと思います。コストやスピードでデメリットがあるけど「何でもできる」から使っているのであって、そうすると何でもできる「I/Oピン数が多い」製品が求められるということになります。
これがもし、低レイテンシ計算用に用途を限られてくると、ピン数は不要になり回路規模も少なくてよくなるので、回路規模やピン数が少なくて安い製品が出てくるのではないかと思います。とはいえそのころには、いまの普及品と同程度の回路規模ということになっているんじゃないでしょうか。


ただ、もちろん、そのためには数が多く出る必要があります。
現状、FPGAチップは次のような記事からも1千万個出ればいいほうという状況ではないかということがうかがえます。
iCE FPGA、出荷数1,500万個を突破
主な用途がプロトタイプや少量生産といった、数が出ないものに使われているわけなので、あまり数が出ないわけです。高いし。


一方でCPUはARMコアの出荷が100億個を上回ったという話があります。
ビジネスニュース 企業動向:100億個規模のCPUコア市場、ARMが独占状態 - EE Times Japan
3桁違いますね。


そのため、「数が出るから安くなる」という状況になるにはまだまだ時間がかかると思います。でも、一度安くなり始めたら爆発的に安くなるということになるんじゃないかと思います。
やはり、ASICの代替ではなくFPGAFPGAとして使う計算用途での利用が増えないと、数が出ないでしょう。
14nmプロセス製品が2年くらいして出て価格競争力が出たきたあと、利用が進むようになって製品ラインナップが充実、量産効果でさらに安くなるという感じでしょうか。
そうなったとき、コンピューティングが面白い状況になっている気がします。