|
Freescale Technology Forum Japan 2005レポート ARMコアを使ったシステムオンチップ9月8日 開催 PowerPCと共に現在のFreescaleを支えるのがARMコアの製品。そもそもFreescaleはARMコアをARM Holdingから入手し、これを利用したSoC(System on Chip)製品を提供している。SoC、というところがミソで、ARMの単体CPUの製造や販売は行なっていない。ARMベースの最初の製品は、Palm用のSoCであるDragonBall MX、現在のi.MXシリーズに繋がる製品で、ARM9/ARM11をベースにPDA向け機能を集約したSoCである。 これとは別に、携帯電話向けのラインナップが存在する。こちらもSoCで、2G/2.5G/3G向けにそれぞれi.200/i.250/i.300というプラットフォーム(単にコントローラのみならず、フロントエンドチップやシステム管理チップなども対になった、複数チップによるパッケージになっている)を提供している。今回Freescaleが華々しく発表したのは、この携帯電話向けの新しいプラットフォームであるMXC(Mobile Extreme Convergence)プラットフォームで、従来のi.200~i.300とは別のラインナップとして提供していく模様だ。これらもARMコアをベースとしたSoCである。 更にもう1つARMベースのものとして、MAC71000ファミリーと呼ばれるものがある。こちらは自動車関連用途向けの製品。ARM7コアにメモリコントローラや(少量の)フラッシュメモリ/RAMを統合したものだが、一般的ではないのでここでは割愛する。 ●i.200/250/300とMXC
ちょっと説明の順序が逆になるが、今回、基調講演などでも大きく取り上げたということで、まずは携帯電話向けについて説明したい。まずi.200~i.300であるが、例えばi.300の場合を使ったHSDPA対応ソリューションの場合、全体の構成は写真1の様になっている。中央にあるのがARM11コアにSC140(STARCORE DSP)を統合したベースバンドプロセッサ兼アプリケーションプロセッサで、その左に位置するのがWCDMA向けとGSM/EDGE向けのフロントエンド、更にその左には各々用のパワーアンプが位置する。ベースバンドプロセッサの下にあるのは電源管理とオーディオ入出力を担うアナログコントローラで、以上の6チップでCategory 6のHSDPA対応携帯を実現することが出来る。 この構成自体はかなり良く出来たもので、十分競争力があるとFreescaleは考えているわけだが、問題はこれが「携帯(Cellular)」向けのソリューションである事だ。ケータイWatchに寄稿したNTTドコモ永田氏の講演にも出てくるが、欧米では高機能携帯、つまりSmartPhoneの需要はそれほど高くなく、従ってベースバンドプロセッサに求められる性能は高いが、アプリケーションプロセッサに求められるものはそれほどでもない。従って、例えば通信処理の一部をアプリケーションプロセッサ側で分担する事も可能だし、アプリケーション側に必要な機能はそれほど多くない(例えば3Dグラフィックエンジンなどは、こうした用途には不要である)。 ただ、このままだと今度はSmartPhone向けには明らかに性能が不足する事になる。だからといって、「では更にアプリケーションプロセッサを外付けに」では意味がないし、あれこれ追加機能(例えば3Dエンジン)を単純に増やしてゆけばいいというものでもない。そこで今回Freescaleが投入するのが、新しい考え方に基づいたMXCアーキテクチャである。MXCもi.200~i.300同様、MPUコア(ARM11)とDSP(STARCORE)を統合したSoCであるが、異なるのは ・DSPコアとMPUコアを完全に分離し、全ての通信制御はDSPコアで行なう といったあたりである。また周辺回路自体も大幅に強化されている。これをもう少し細かく見ていきたい。 まずDSPコアとMPUコアの分離だが、Layer 3までの通信制御を全てDSP側で実施している(写真2)。このため、MPUコアは完全にアプリケーションプロセッサとしてのみ動作でき、SmartPhoneに必要なアプリケーション処理にMPUの性能をフルに振り分けられる。加えて言えば、MXCの場合DSP側のソフトウェアは基本的にFreescaleから提供される。従って携帯ベンダーはアプリケーションプロセッサの上で独自アプリケーションの開発に専念できるというわけだ。これは、両者を明確に分離したことによるメリットの1つである。 次にメモリインターフェイスであるが、MXCアーキテクチャをインプリメントした最初の製品であるMXC91231の場合、写真3の様な構造になっている。この方式だとフラッシュメモリなどを共用できるのでインターフェイスが簡単で済むとか、メモリを共有できるのでDSPとMPU間のデータ転送が容易でパッケージも小型化できるというメリットがある一方、DPSとMPUの負荷が高い時にはメモリバスがボトルネックになりやすいというデメリットもある。ただこれに関してFreescaleでは、L2キャッシュ(MXC91231ではARM11コアに16KB×2のL1キャッシュと128KBのUnified L2キャッシュを搭載している)のキャッシュヒットレートが高ければそれほど問題にならないとしている。 3つ目のCrossbar Switchだが、FreescaleではこれをSmart Speed Switchと称している。MPUコアの動作速度と同じ最大528MHzで動作し、最大6つのMaster Deviceと5つのSlave Deviceが並行して通信できるため、Switchの帯域は2.66GB/secに達する(写真4)。なぜこれが重要かというと、例えばMPEGのムービーをダウンロードしながらデコード、というケースでデータに著作権保護が掛かっていたりすると、復号化の処理をMPUで、MPEGのデコードと再生をビデオプロセッサユニットで実施するという事になる。ここが従来のShared Busだと、バスがボトルネックになってしまい、MPUもビデオプロセッサユニットもその性能が発揮しきれないケースがありえるからだ。SoCの場合、内部バスを如何に高速化するか、が性能向上のキーになることが多く、MXC91231でCrossbar Switchを導入したのは技術的には非常に理にかなった選択である。
ちなみにMXCは“Architecture”であって、今後もこれに従った次世代製品を投入することをFreescaleは計画している。この“Architecture”の特徴を一口でまとめれば、「Modemは全てDSPで完結させ、MPUはアプリケーション処理に専念する」という話である。今後SmartPhoneは非常に多くの種類の通信をカバーする必要がある(写真5)訳だが、こうした展開の際に、Modem機能は全てDSP側で処理をすることを予定している。すでにMXCのロードマップも示されており(写真6)、用途にあわせてきめ細かな展開を行なう事が予定されている。 もっともこれらで、写真5にある全てが実現できるわけではない。現状のDPSコアは3G程度ならば性能面でゆとりがあるそうだが、3.5Gとか4Gは無理で、次世代のより高速なDSPコアを集積したMXCアーキテクチャ製品になるだろうとしている。あるいは、今のアプリケーションはメールやスケジュールの連携、フルブラウザ、MPEG-4の再生のレベルはARM11程度で十分だが、今後もっと負荷がかかるアプリケーションを動かす必要が出てきた場合は、将来のARMコアを統合する事になると思われる。 ちなみにこのMXC91231、すでに開発用のボード(写真7)とかインターフェイス作成ツール(写真8、9)が展示されるなど、実際の製品展開の準備も着々と進んでいる。
ところでドコモ永田氏の基調講演の中のプレゼンテーションに、こんなもの(写真10)があった。携帯電話の2大OSがSymbianとLinuxなのは当然だが、日本ではITRONを使うベンダーは多いし、またMicrosoftは引き続きMicrosoft Smartphoneでの攻勢を続けている。 ではこれらのOSをFreescaleはどう思っているのか? について展示会場で尋ねたところ、まずMicrosoft Smartphoneに関しては苦笑いをしながら、「まず携帯ベンダーがそれを使いたいと判断するかどうかという話があり、そういう話があれば考えます」という、実に現状を正しく反映した返事が返ってきた。一方ITRONについてはきっぱり「サポートする予定はない」との事。その理由として、「MXCを搭載した製品が市場に出てくるのは、現実問題として2007年になる。今は確かにITRONが使われているが、2007年の時点でITRONは? というとそれはまた別の判断になる」という返事だった。 ちなみにMXCはDSPコアとMPUコアを分離してはいるが、だからといってSymbianとLinuxでDSP部のソフトを共通化できるというところまでは行っておらず、今は別々の開発チームがそれぞれインプリメントを行なっているとの話。また携帯機器ベンダーがイチから新OSへの対応を自前で行なう場合、その作業量はかなり大きくなるだろうとしており、こうしたOSの割り切りは仕方が無いのかもしれない。実際キャリア(ドコモのみならず、殆どのキャリア)からのリクエストは、とにかくハードウェアと通信に関わる基幹ソフトウェアはFreescaleなどのベンダーにまとめて提供してもらい、携帯電話のベンダーはアプリケーションやデザインといったところで製品の差別化を行なうという形で、少しでもTAT(Turn Around Time)を短縮して欲しいというものだそうで、OSの絞り込みはこの面からも必然なのであろう。 ●i.MX もう1つのARMを使った製品群は、携帯というよりはPDAなどに特化したi.MXシリーズである。上にも述べた通りDragonBallシリーズをベースとし、MXCの様なDSPユニットは持たない代わりに、周辺回路を大量に搭載するのが特徴である。写真11ではVoIP向け製品群という書き方がなされているが、VoIP機器=無線LANチップを搭載したPDAと定義すれば理解が早い。もう少し詳細な製品ロードマップは写真12に示すものだ。ローエンドのi.MX1は昔のDragonBall MXに相当するもので、ARM920にMPEG-4のエンコード/デコード、Bluetoothの送受信モジュールを集積した製品である。このMPUを改良型のARM926に交換し、周辺回路を強化したのがi.MX21、MPUをARM11に交換し、周辺回路を更に強化したのがi.MX31、そこから2D/3Dグラフィックを省いたのがi.MX31Lといったラインナップになる。
i.MXシリーズに集積される周辺回路は、なるべく少ないチップ数でPDAを構成しようという意気込みもあってか、かなり多岐に渡る(写真13)。SVGAサイズまでのLCDとMPEG-4/H.263のエンコード/デコードアクセラレーション、4ポートの通信ポートとUSB 2ポート、各種インターフェイスポートが集約されている。内部的にはCPU Complex(CPUにMMU/キャッシュ/バスインターフェイスなど)内に(先ほども出てきた)SmartSpeedSwitchを搭載しており、この外側にさまざまな周辺回路が接続されるという構図だ。この構図はi.MX31でも同じ(写真14)であるが、異なるのは搭載されるインターフェイスの数が大幅に増えている事と、2D/3Dのグラフィックエンジンを搭載している事だ。 この2D/3DエンジンはPowerVR MBXで、前身であるPowerVR(Kyro)がPC向けのマーケットを断念した後で携帯機器向けに特化してImagination Technologiesから提供されている。ARMとも提携している関係でSoft IPコアとして容易に入手が可能になっており、それなりの性能(i.MX31に搭載されるMBX R-Sの場合、66/133MHz動作でフィルレートが100~200MPixel/s、ポリゴンレートが0.5~1Mtriangles/sと公表されている)を持つ。これだけの性能を持つグラフィックエンジンをフルに生かそうとすると、バスの帯域をかなり占有しかねない。そこでi.MXでは高速な周辺機器(イメージプロセッシングエンジンと2D/3Dグラフィックエンジン、MPEG-4のアクセラレータ)も直接SmartSpeedSwitchに接続することで、各エンジンが同時に稼動出来る構成を採っており、これにより533MHz動作とそれほど高い周波数ではないのにスムーズなMPEG-4再生が可能になっている(写真15)。 ちなみにi.MXのターゲットは携帯ほど開発が厳しく、ターゲットの種類が幅広い事もあり、MXCの様にプラットフォームを提供する考えは(今のところ)無いようだ。サポートするOSもLinux/Symbian/Windows CE/Palm/etc…と幅広く、組み合わせるデバイスや構成も種類が多いため、プラットフォームを用意するのはそもそも難しいし、下手な提供の仕方をすると却って最終製品の展開を束縛しかねない、という事情もあるのだろう。 ●今後の展開 Freescale自体は、ARMを特定用途向けCPUと考えている節がある。本来のARMは当然汎用であるが、Freescaleの場合、下はColdFire、上はPowerPCを抱えており、単に性能だけを見れば別にARMコアが無くてもラインナップはカバーできる。ARMにしても、ARM7とかでは昨今のマーケットではあまりに力不足で、最低でもARM9以上が要求されるが、この範囲ならPowerPC G2(e300コア)と同等であり、ARM11でもG3程度である。PowerPCをメインストリームアーキテクチャとして据えているFreescaleの中で、ARMはあくまで携帯向けに特化したCPUという扱いの様だ。その傍証といえるのが、同社のセミカスタム/SoCビジネスのラインナップである。 同社はさまざまなIPを保有しており、これを使ってセミカスタムのSoCやASICを提供するというビジネスを展開しているが、ここで提供されるCPUコアはe300/500/600/700とColdFireのみ。勿論カスタムの世界だから、ライセンスその他の問題をクリアすればARMベースのSoCやASICを作る事もできるのだろうが、標準ではこれらは提供IPに含まれていない。 SmartSpeedSwitchなど、これをIPで提供すればARMベースのセミカスタムには強い武器だろうと思われるのだが、そうした気配が見当たらないのは、あくまでARMコアの製品は完成品の販売のみと割り切っているのかもしれない。実際ARMベースだと競争相手はかなり多く、それを避けている可能性もある。いずれにせよ今のFreescaleを見る限り、ARMベースの製品はMCXとi.MXシリーズに当分限られそうである。 □フリースケール・セミコンダクタ・ジャパンのホームページ (2005年9月13日) [Reported by 大原雄介]
【PC Watchホームページ】
|
|