|
Spring Processor Forum 2006レポート 最終回:特色のあるプロセッサたち会期:5月15日~17日(現地時間) 会場:米カリフォルニア州サンノゼ さて、そろそろSPF2006のレポートも終わりにしたいと思う。ということで、最後は恒例の「妙なもの」を色々とご紹介したい。 ●Silicon Hive Moustique-IC2
Silicon Hiveの製品をレポートするのはこれが初めてだが、実はSPF/FPFなどでは割と頻繁に登場するベンダーである。具体的には MPF2003:A Massively Parallel Reconfigurable ULIW Core といった具合に、毎年1回は必ず何か発表している。で、これらの講演タイトルを見てもわかるとおり、ULIW(Ultra Long Instruction Word:VLIWよりもさらに命令長が長いということで同社が作った造語)のプロセッサとこの周辺技術を追いつづけている会社である。実はこのSilicon Hiveは前回レポートしたHandshake Solution同様、Philipsの事業部門の1つであり、だからこそこんな特殊なマーケットを追いつづけていられる、ともいえるのだが。 さてそのSilicon Hive、従来はULIWベースの汎用……というとやや語弊が残る気がする……プロセッサとそれ用のコンパイラ、あるいはややマルチメディア系に特化したプロセッサといった、割と応用範囲を広く取るアプローチで製品開発を行なっていたが、「何にでも使える」はしばしば「何にもできない」と表裏一体の関係にあるわけで、一応いくつかの採用例はアナウンスされているものの、やはりもう少し絞り込まないと難しいと判断したらしい。で、どういうわけかいきなりカメラのコントローラ分野に参入することにしたようだ。 今回発表された「Moustique-IC2」は、カメラ専用プロセッサとして、汎用カメラと携帯用カメラの2つをマーケットとして開発された(写真02)。当初は3Mpixel程度のCCDまでカバーするが、コアを拡張することで8MPixel程度までスケーラブルに対応できる(写真03)。内部的にはBase processoer PSEと呼ばれる汎用プロセッサに近い構成(写真04)と、SIMD processor PSEと呼ばれるSIMDエンジン(写真05)からなり、このSIMD部をスケーラブルに拡張することでピクセル数の増加に対応しようという目論見(写真06)だ。 この手のプロセッサの場合、画像の「味付け」をどう調整するか、が割とポイントになるわけだが、これに関してはフランスのDxO Labsと共同開発を行なっており、同社のDxO ISPをすでにMoustique-IC2に搭載しており、「味付け」は半ばこちら任せといった感じになっている(写真08)。
今回どこまでSilicon Hiveがカメラにフォーカスしているかというと、非常に怪しい感じである。ただ、ただのVLIWプロセッサですら適用範囲が少なくて困っている現状では、ULIWともなるとさらに適用範囲が狭まり、待っていても誰も使ってくれないので、こちらから提案する形の一例、といった見方が一番妥当なのだろう。 ちなみに「ローエンドのカメラや携帯ベンダーはそもそも自前でSoCなどを作れたりしないし、力のあるカメラメーカーは自社でImage Processorを持っている。ディスクリートではNewcore Techのようなベンダーが既に汎用Image Processorを提供しているという現状で、誰がこれを使うのか?」と意地悪な質問をしたところ、一番有力なのは携帯向けのチップセットを提供しようとしているベンダー、という答えが返ってきた。しかしそうなると、Freescale、Samsung、TIなどといった、割と限られたところになりそうな気もするのだが、Silicon Hive自体がPhilipsの事業会社であることを考えると、一番有力なのはPhilips Semiconductorなのかもしれない。 ●Connex Technology CA1024 Array Processorという発想には、ある種のArchitectの関心を引いて止まない何らかの魅力があるらしい。古くはNeoMagicが発表した「MiMagic 6」などはその代表例だと思うが、Connex Technology CA1024もこれの一種。HDTVのソリューション(まずはMPEG-2やH.264のデコード、将来はエンコード)を最初のターゲットとしたというプロセッサは、32×32で1,024個のCellを並べ、周囲にI/OとSequencerを配した構成である(写真10)。面白いのは、各々のCellが自前でRAMも持っていることで、これによりArray全体での処理のスループットを上げることができるようになっている(写真11)。
では実際にどんな形で演算が行なわれるか、を端的に示したのが写真12である。実のところCellが32×32という正方形をしていることにあまり意味はなく、論理的には1,024(なり4,096)のElementが横一列に並び、これが一斉に同じ命令で処理を行なうという、言わば「超SIMD」構成なのが、この「CA1024」である。なので、Arrayであることは間違いないのだが、この場合演算方向はあくまでLine間の処理に限られる。つまりCell #0とCell #1の間で演算を行ない、結果をCell #2に入れるなんてことは、直接的には不可能だ。もちろん写真11にあるように、レジスタ間での通信は可能なので、これを使うことでCell間の連携も取れる。写真13はDCTの例だが、適切に配置を行なえば同時に128組のDCTを処理することも可能だ。 ちなみに全てのCellが必ず同時に処理されるわけではない。写真11で、下のほうに“Select”というレジスタがあるが、これをSetすれば処理され、Resetすると処理されないため、これを使ってCell単位で演算する/しないを制御できる。このあたりの制御を行なうのが、写真10に出てきたSequencerである。写真11からもわかるとおり、各Cellは命令の実行部しか持っておらず、命令の解釈やそもそも命令のロード自体、単独では不可能である。そこで各Cellに対して命令をロードしたりするのは、全てこのSequencerが行なうことになっている。 一方各メモリに対しての処理は、同じく写真10に出てきたI/O Planeが行なう。I/O PlaneはFablicでメモリコントローラに繋がっており、これで外部から各Cellのメモリにロードする、あるいはCellのメモリの内容を外部にストアするといった形になる(写真14)。Fablicの性能などは今回明らかにされなかったが、実際のCA1024ではかなり大規模なSOCとなる(写真15)関係で、かなり高速なものと想像される。 さて、これだけのものを作ると何が実現できるかだが、例えばPerforemanceで言えば、DCTが0.35 clock cycle/pixel、SADだと0.0025 clock cycle/pixelという数字が公表されている。ダイサイズなどは不明だが、TSMCの0.13μmプロセスで製造されたCA1024は2GOPS/平方mmという、評価が今一つ難しい数字が示された。もう少し現実的なところでは、H.264の1080iのDual Stream Decodingの試算(写真16)が示されたが、十分能力的に足りることが示されている。 ●IntellaSys SEA このArrayの集積度をさらに上げれば、もっと性能が出ると考えたのがIntellaSysである。SEA(Scalable Embedded Array)と名づけられた同社のアーキテクチャは、一言でまとめれば「数で勝負」。そこでいかに数を集積するか、がキーとなる。この結果、SEAは非常に小さな18bit長の命令で構成されるForthマシン(IntellaSysはこれをnodeと呼んでいる)を非同期で繋ぐ、という他に類を見ない代物になった(写真18)。高集積疎結合マルチチップ、というのが1番適切ではないかと思うが、これが全て非同期で動作している、というのがSEAの特徴である。
さらにややこしいのは、このnodeをどれだけ集積するか、というのも自由度が異様に高いことで(写真21)、おまけにChip間の接続形態を選ばない(写真22)という話が出てくるに至り、すでに通常のCPUの範疇からも逸脱しつつある(写真21)。これを支えるのは、不可解なほどの高いI/O能力である。On-Chipでワイヤレス用のDACを搭載しており(写真22)、これを使ってデジタル家電なども簡単に作れる(写真23)というのが同社の主張だが、こうなってくるともうどう判断したものか。 ちなみに性能は明確になってないが、1nodeで概ね1,000MIPSというのが同社の主張だ(写真24)。で、例えば48nodeのチップを100個集積すれば4,800,000MIPS(4.8TIPS)、これを10枚重ねて48TIPS(!)のスーパーコンピュータができる……というのはもう何と言うか(写真25)。ただ消費電力は案外に多く、24node構成で2.7平方mm、最大500mWということなので、熱密度はかなり高そうだ(写真26)。2006年Q4には24nodeチップを、OEM価格1個$10でボリューム出荷を始めるとしているが、使う人はいるのだろうか。 ●Vivace Semiconductor ViViD 別の意味で特徴的なマルチコアCPUがVivace Semiconductorの「ViViD」コアである。同社は2005年10月設立の非常に新しいメーカーで、これが同社の初めての製品ということになる。同社はViViDというマルチメディアエンジンと、これを利用したVSP200/VSP300という製品を発表したが(写真28)、今回はこのViVIDコアの詳細がメインである。そのViViDコア、ブロック図からもわかるように4つのエンジン(写真29)から成立するSoCである。問題がこのエンジンが揃いも揃ってまったく異なるアーキテクチャになっていることだ。
まずビデオ部は3種類のエンジンから構成されるが(写真30)、この3種類がまるで命令長が違う(写真31~33)という、なぜ汎用プロセッサ構成にしているのかすでに不明な構成になっている。これはオーディオ側も同様で、構造自体はシンプルであるが(写真34)、内部構造は相変わらずである(写真35)。 これを搭載した「VSP-200/300」は比較的コンサバティブなSoC(写真36)である。今回説明されたのはVSP-300だが、VSP-200では多少デバイスが減らされ(SATA HDD/Ethernet/HDMI/ITU-R-656が省略される)、動作周波数がやや控えめ(CPUが最大250MHzのARM926、ViViDコアは150MHz駆動)な以外は違いが無い。従来では、こうしたチップでメディアエンジンは、自前でがりがり作るのが普通であったが、そこにJazzDSPを使って生成したVLIWエンジンを流用することで、デザインの時間を短縮する、というのが実のところ最大のミソなのかもしれない。カスタムデザインは(CPUそのものを作るよりは高速とは言え)開発の負荷は大きいし、仮にこうしたReconfigurableなコアを使って同じことができるならばその方が確実なのかもしれない。
プレゼンターがTechnical Personではないために細かいニュアンスは判らなかったが、Vivace自体はViViDコア内部の4つのVLIWエンジンを汎用プロセッサとして使わせることはあまり意図していないようで、ファームウェアの形でVivaceから複数バージョンが提供され、これをロードすることで(ちなみにloadable on demandだそうだ)利用できるようになるAPIを上位アプリケーションか叩く、といった使い方を考えているようだ。カスタムロジックをReconfigurable Processorで作成することでTATを減らす、というデザイン例と言ってもいいかもしれない。 ●まとめ 今回のSPF、それなりに盛況であったのは事実だが、ますます規模が小さくなっているのがちょっと気になるところ。大手ではARMが目立つ程度で、MIPSは2月に発表したMIPS32 34Kの内容の繰り返し。PowerPC勢はP.A.SemiのDan Dobberpuhl氏による基調講演があった程度で、内容的にも目新しいことはない(テクニックとしては色々面白い話があったが、アーキテクチャ的には前年のFPFでの発表から何も変わっていない)程度だった。 ほかに面白いと感じたのはNSとFreescaleがどちらも電圧制御メカニズムを発表したことだが、NSはEPF2003で発表されたAVSの進化系で、複数の電圧ドメインを管理できるようにしたもの。FreescaleはAVS相当の電圧制御機能に周辺回路を統合したワンチップコントローラを作成、というもの。実装面ではどちらも面白かったが、技術的な面ではTransmetaの発表で言い尽くされている感があり、今回レポートは見送った。 謎だったのがTarari。こちらも発表を行なう予定だったCTO & co-founderのJeff Carmichael氏が急用で参加できず、Vice President MarketingのJohn Bromhead氏が登場しての発表だった。Contents Processorを使ってWME9のエンコードを20~30倍高速化するという話はあったものの、「なぜContents ProcessorでWMVE9が高速化されるのか」(あるいは、Contents Processorは何をやっているのか」に関しては語られずじまい。Bromhead氏自体「おりゃーTechnical Guyじゃないんで、Q&Aを受けても答えられない。後でメールでくれれば折り返し返事するよ」とか言い出す始末で、結局謎のまま終わってしまった。TarariはSPF Japan 2006には不参加らしく、結局肝心なところがわからずじまいで終わってしまったのはちょっと残念だ。 それにしても、「うーん」である。だんだんSPFやMPFが、「中小ベンダーが新製品をロハでAnnounce出来る場」になりつつある現状が、ちょっと不安である。確かにMicroProcessor Forumはそうした面を多分に備えたイベントであったのは事実だが、かつてはIntel、AMD、IBM、Motorola(現Freescale)、Sunなどといった大手メーカーの発表も少なくなかった。これがうまくバランスしているからこそここまで続いてきたわけだが、この先も続けてゆくためには、もう少し大手の参加が必要な感じを受けた。 幸い、というべきか不幸にも、というべきか、SPF Japan 2006にはルネサス、富士通、NECなどが参加するので、バランスが取れた方向にシフトしている。こうしたベンダーが参加しているのがSPF Japan 2006にとって幸運であり、ところが本国のSPF2006に参加していないのが不幸である。次回もSPF2007のレポートをできるといいのだが、一抹の不安を感じざるをえない。 □Spring Processor Forum2006のホームページ(英文) (2006年6月1日) [Reported by 大原雄介]
【PC Watchホームページ】
|
|