集:英国株式会社(2)cAV向けマルチスレッドの並`プロセッサ
イギリスの半導企業は、主に4つの地域に集積している。英国半導協会であるNMI(National Microelectronics Institute)が2006QにレポートをまとめたNMI Design Survey Report 2006によると、SEEDA(South East England Development Agency)とSE(Scottish Enterprise)、EEDA(East of England Development Agency)、SWRDA(South West Regional Development Agency)の4つの地域だという。
SEEDAはロンドンのシ辺の地区、SEはスコットランド、EEDAはケンブリッジを中心とする東地区、SWRDAはブリストルを中心とする地域、である(図4)。
これらの4つの地域の中から、ベンチャー企業の例を、、ら東へブリストル、バース、サーエンセスタ、アビントン、ケンブリッジの順で紹介していく。的には、XMOS Semiconductor社、Icera社、PicoChip Designs社、Innovision Research & Technology社、Toumaz Technology社、DisplayLink社、CamSemi社を採り屬欧襦いずれも擇泙譴憧屬發覆ぅ戰鵐船磧爾能来性のある企業ばかりだ。彼らのグローバルなものの考えが日本企業にとってjきな影xを及ぼすことになろう。
来性lかな並`プロセッサXcore
XMOS Semiconductor社は、ブリストルを代表するベンチャー企業である。創業vのk人であるDavid Mayは、今でもブリストルj学教bであり、かつての@門企業Inmos社で並`コンピュータチップのトランスピュータを開発指導してきた先端のエンジニアだ。最Z、Electronic Engineering Times誌創刊35周Q記念企画の「今後期待される35の人、場所、もの」において、人の靆腓覇Dり屬欧蕕譴6人のうちの1人に屬っている。ちなみに他の5人はゴア元副j統襦iPhone・iTouchなどの発vのk人Tony Fadellなどである。
XMOS社は、C言語でプログラムし、HDL(ハードウエア記述言語)には変換しない、というフロー_のアーキテクチャをeち、加えてマルチスレッドの32ビットマイクロプロセッサを開発しているベンチャーである。ポピュラーなC言語を使えるということで、Software Defined Radio(ソフトウエア無線)をもじってSoftware Defined Siliconと称していたが、その中身についてはo開していなかったようだ。昨Q12月に日本で記v会見を開き、日本のメディアのいくつかが90nmプロセスで作ったXcoreをSoftware Defined Siliconとして紹介していたが、どのメディアも中身は何も伝えていない。
今vのD材でらかになったことは、マルチスレッドのプロセッサであり、並`動作を実行させるためのスケジューリングに工夫していることや、マルチコア化への拡張性も優れていること、C言語でのソフトウエアでフローチャートにpって命令を実行するような「流れ」を主とする擬阿任△襪燭瓠▲好肇蝓璽潺鵐綾萢に向いている、というような機εな長もある。加えて、実行したいアルゴリズムをFPGAやDSPではなく、マルチスレッドすなわちALUはわずか1個しかeたないプロセッサで実現するため、チップC積が小さい、すなわち価格がWい、という徴もある。このため場合によってはDSPやFGPAを~dする可性もあるため、来へのインパクトはかなりjきい。
EE Times誌が来の35テーマのkつとして、David Mayを採り屬欧燭里蓮△海離廛蹈札奪気瓦垢觸来性をAったからである。すなわち並`処理可Δ如⊂嫡J電が低く、小さくてWい32ビットプロセッサチップを開発したことによって、来性が科あることにつながっている。
C言語で設できるストリーミング応
「Xcoreは、同じC言語でもFPGAのようにハードウエア記述言語であるVHDLやVerilogなどにはく変換しないため、プログラムをいくら変えてもVHDLなどへはく影xを及ぼさない。ハードウエア記述言語だと、小さな霾を書きなおしてもほかの霾にも影xを及ぼす。基本的にはチップ陲鮟颪直してしまうことがHい。XcoreはマイクロプロセッサをベースにしてCのプログラミング言語で書くため、プログラミング言語が直接、命令セットに変換される。他の霾への影xはくない。書き直しが~単で、効率が常に良い。だからいくらでも書き換えが容易にできる」と同社マーケティング担当峙乕社長のRichard Terrillは言う。
「k気FPGAでは、ブール代数へ変換しb理合成する要があり、プログラマブルとはいえハードウエア言語へ変換しているため、書き換えに時間がかかる。マイクロブレーンやNiosといったFPGAメーカーのプロセッサコアはjきすぎてマイクロプロセッサとはいえない」、とかつてFPGAメーカーに在籍していた同は}のうちをよく瑤蠅弔している。
この32ビットRISCプロセッサコアはC言語だけでプログラムするソフトウエアのフローをeつため、プログラムの変は~単だ。When、If、Thenの基本的なプログラム構文をそのまま命令セットに変換しプログラムを実行できるため、アセンブラにコンパイルする仕気皀離ぅ泪鷏燭離灰鵐團紂璽燭比く同じにプログラムできる。C言語のプログラムの経xのある人間なら、誰でもマイクロプロセッサで電子v路を実現できる。
8スレッド管理するスケジューラがキモ
Xcoreは8個のタスクを同時に実行する8スレッドのマイクロプロセッサである。外陲らは8個のマイクロプロセッサが働いているように見えるが、駘的には1個のALUだけしかeたないため、チップC積は小さいというわけだ。しかもマルチコアへの拡張も容易だとしている。デュアルコアであれば16個のスレッドが動くことになる。
並`処理をつかさどる機Δハードウエアスケジューラで、8個の異なるスレッドを管理している。ハードウエアスケジューラはソフトウエアのOSのようなものにZい。しかもイベントドリブン擬阿妊好譽奪匹魎浜している。この擬阿世函△發珪鴕Pが要求されない場合には、プロセッサは動かない。だから消J電はその分食わない。
スレッドはあるまった時刻ごとに待つ。例えばスレッド1は2クロック後まで動作しなくてもいいと、スケジューラが管理する。スケジューラは常にタイマーを監していて、そのまった時間にスレッドが動作しなければ、次のスレッドを動かすように任后
たとえば、32ビットデータを流すイーサネットでは、k度に4ビット分を動作させる。32ビットワードではQワードに瓦靴8個のトランザクションを処理する。I/Oピンでは、32ビットデータが入ってくると、シリアルデータをパラレルに変換して、4バイトデータに作り直す。スケジューラはイーサネットパケットが入ってきたと認識し、その後ビデオデータが入ってくると、ビデオ処理のスレッドがき出し処理を開始する。つまり、ビデオというイベントがやってきて初めて動作するため、イベントドリブン擬阿扉}んでいる。それまでビデオ処理のスレッドはそれまでの間寝ているため、消J電は食わない。
このプロセッサコアに瓦靴董⇔磴┐弌FPGAで同じ機Δ鮗存修靴茲Δ箸垢襪函▲ぁ璽汽優奪箸筌織ぅ沺爾覆匹髻▲蓮璽疋Ε┘△箸靴謄船奪廚暴言僂垢襪燭瓠▲船奪C積がjきくなる。これに瓦靴董Xcoreはあくまでもプログラム}順にってソフトウエアを流していくため、チップC積はALUという演Q霾だけで済む。Xcoreプロセッサコアで_要なのは、スケジューリングに_点をいていることだ。どれだけの処理をスレッドに切り出して処理するか、がノウハウになっている。
チップはわずか2ドル
kつのコアをタイルと}んでいるが、タイルの性Δ8スレッドの動作、400MHzのクロックで最j400MIPSである。プロセッサコア1個でマルチスレッドアーキテクチャをとっているため、チップC積はかなり小さいと思われるが、残念ながらチップC積はらかにしなかった。この8スレッドの1タイルのチップ単価は量巤にわずか2ドルで販売する予定だという。
アルゴリズムによってはDSPで処理する気]いかもしれない。しかし、「DSPは25ドルもする。設する機_によってはWい価格帯のDSPとXcoreを組み合わせて使うのも}である。」とTerrillは言う。応によっては積和演Qがずしも高]だとは限らない。FPGAはDSPよりももっと高い。電子のライフスパンを考えると、FPGAはが変わればFPGAもはじめから変えなければならない。Xcoreだと、リコンパイルだけですむ。
応としては、フラットパネルディスプレイ(FPD)、セットトップボックス、デジタルオーディオなどがある。FPDではLCDのバックライトを調Dして度を変えても色味が変わらないように調Dする、あるいは独Oの仕様にディスプレイを変えてしまい差別化を図る、といった応があるという。セットトップボックスでは、ナ星放送テレビ、ケーブルテレビ、通信放送テレビ、地Sテレビ、デジタルビデオカメラなど、ソースが違えば色合いなどの映気微に違ってくる。プログラマブルだから何にでも変えることができる。
ソフトウエアの流れにpったXcoreの処理はストリーミングなどのオーディオ応にはうってつけである。というのは、オーディオストリーミングはクロックとぴったり同期しなければならず、}順から外れることはされないからである。
その他、格がまだ定まっていないような応にはに威を発ァする。どのような格であれ、あらかじめプログラムしておくだけでどの擬阿砲皀泪奪舛垢襪海箸できることがこのチップの咾澆任△襦
マルチコアから新ビジネスモデルまでフレキシブル
現在、1コアのタイルだけではなく、2コア、4コア、16コアのチップを設している。16コアだと、400MHz×16で、6400MIPSにもなる。もちろん、ハイエンドの応である。マルチコア擬阿任△蹐Δ函ずマルチスレッドを使うため、単純なXけQで性Δ朗まる。
チップサイズはらかにしないが、チップを封入するパッケージサイズは、4コアデバイスが10mm角、1コアデバイスは5mm角になる。最初に量するチップは4コアデバイスになるという。
最初はチップを電子機_メーカーに売るが、後にチップセットとして供給したり、マルチチップモジュールとして供給することも考えている。ワイヤレスへの応では、RFv路やアナログv路とこの65nmで設しているプロセッサとはデザインルールが違いすぎるためだとしている。来は、IPとして半導メーカーや機_メーカーに販売することも野に入れているという。
90nmで設した試作はすでに2007Q12月に日本で記v会見を開きデモしたが、65nmの量は、2四半期には発売する予定だという。同社は株式をまだ崗譴靴討い覆ぁ