はじめに
Intel Edison Compute Moduleについて、技術的なことあるいはちょっと作ってみたことなどを書いてきましたが、今回はちょっとわき道にそれて「Intel Edison Compute Module」のSoCはいったい「何」なんだろうか?ということを書いてみたいと思います。
Intel Edisonの発表から仕様の変更まで
現在の仕様であるコードネーム「Silvermont」アーキテクチャーのデュアル・コアAtomにMCUとしてコードネーム「Lakemont Core」アーキテクチャーのQuarkを加えた構成のSoCに落ち着く前には、別の仕様のIntel Edisonが存在していました。それが米国時間1月6日にラスベガスのConsumer Electronics Show(CES)2014でIntel CEOのBrian Krzanich氏が発表したIntel Edisonです。
Intel at CES 2014 – News Roomより引用
このIntel EdisonはIntel Quarkプロセッサーを2つ搭載し、その他にマイクロ・コントロール・ユニットとして別のプログラマブル・プロセッサー、無線通信(Wi-FiおよびBluetooth LE)、各種I/O、メモリー・コントローラーとLPDDR2メモリー、NANDフラッシュ・ストレージなどを搭載し、SDカード型のフォーム・ファクターに独自のコネクターを追加したものとしていました。
他に類似するプラットフォームがIntelの製品群に存在しなかったことや、Intel Edisonが見える形で組み込まれて動作している例がなかったり、仕様の一部が不明確であったり、また報道用資料として公開された写真が切り貼りや不鮮明化加工がなされたものであったりしたことから、同形状で実働するものはなく、私は当初モックアップだったのではないかと考えていました。
Intel at CES 2014 – News Roomより引用
しかし、さらに調べてみたところこの初期Intel Edisonには複数のリビジョンが存在していることから、現在は実際に開発されていたものであると考えを改めました。※1
この初期のIntel Edisonが別のものになったことが確認されたのは、2014年3月28日(米国時間)に発表された「wearables Tailoring Intel® Edison Technology to Provide Expanded Benefits – Technology@Intel」という公式ブログの記事でした。この記事の著者はIntel CorporationのVice president and general manager of the New Devices GroupであるMichael A. Bell氏です。
これによれば、プロセッサーはIntel QuarkからSilvermontアーキテクチャーのデュアル・コアのAtom 500MHz、それに加えてMCUが搭載され、30本以上のI/Oを搭載して、コネクターは70ピンというスペックに改められています。開発ツールもArduino IDEのほか、各種Linux上で動作するツール類が使用できることが明記されました。そして、そのフォーム・ファクターはSDカードではなくなり、サイズ的にはSDカードよりもやや大きいものになるとされていました。
ここまでくると現在のIntel Edison(コードネーム「Bodega Bay」)とほぼ同じように見えます。しかし、2014年1月6日に発表されたIntel Edisonから同年3月28日に発表された新しいIntel Edisonまでの期間はたったの81日しかありません。続く中国・深セン(Shenzhen)市におけるIDFでの発表が行われたこともあり、イベントやプレゼンテーションの準備があるでしょうし、ブログへの掲載でも事前の準備がいろいろとあると考えられ、実際に新たなIntel Edisonの準備に使用することができた日数はもっと少ないと思われます。
現在のIntel Edison Compute Moduleになったあと
この少ない日数で、新たなチップを設計し、動くレベルまで持っていくのは困難です。このことから、Intel Edison Compute Moduleに使用されたSoCは他の製品からスライドして派生させたものであると考えることが合理的です。
候補はいくつかあるのですが、今現在手元にあるIntel Edison Compute Moduleの資料や動作から垣間見える状況によって予想される、そのチップとは、コードネーム「Merrifield」と呼ばれていたIntel Atom Z3400シリーズでしょう。
MerrifieldというSoCはどのようなチップか?
Merrifieldはスマートフォンおよびタブレット市場向けに開発されたSoCで、以下のようなハードウェア上の特徴があります※2:
- Intelの22nmプロセス・テクノロジーによるSilvermontマイクロアーキテクチャー
- VP8エンコード/デコードのハードウェアによる高速化
- 専用のプログラム可能なハードウェア Video Signal Processor(VSP)によるビジュアル・クオリティの向上とより滑らかな再生
- サードパーティの無線ソリューションをサポート
- セキュア・ブート
- セキュア・ストレージ
- Intel® Virtualization Technology (Intel® VT-x)
- Intel® Advanced Encryption Standard New Instructions (Intel® AES-NI)による高速化
- Digital Rights Management (DRM)のサポート
- HDMIにおけるプレミアム・コンテンツのためのHDCP 2.x
各種仕様は以下の通りです:
Intel® Atom™ プロセッサー Z34XX シリーズ | アウトオブオーダー実行を搭載する 2コア/2スレッド 最大コア周波数 2.13 GHz |
マイクロアーキテクチャー | Silvermont マイクロアーキテクチャー (22 nm プロセス・テクノロジー) |
フォーム・ファクター | 4インチ以上 |
グラフィックス | Imagination PowerVR* G6400 |
CPU性能 | Intel® Atom™ プロセッサー Z2580と比較してシングルスレッド性能が最大で1.7倍にアップ |
グラフィックス性能 | OpenGL ES 3.0 APIにおいて、 Intel® Atom™ プロセッサー Z2580と比較して最大で2倍にアップ |
グラフィックス計算性能 | Intel® Atom™ プロセッサー Z2580と比較してグラフィックスのGPU計算が4倍にアップ、さらにIntelベースのスマートフォンにおいて、初めてOpenCLとRenderScriptのGPU処理が有効になった。 |
Image Signal Processor (ISP) | 13 MPをハードウェア実装; Form Factor Device (FFD)において8 MPが有効 |
Intel® XMM™ 7160 マルチバンド, マルチモード LTE モデム |
最大で15 LTE バンドをサポート、最大で 150 Mbpsのダウンロード/50 Mbpsのアップロード・スピード |
メモリー | LPDDR3 (COPoP); 2×32 ビット, 最大 4 GB; 8.5 GB/s |
内蔵ディスプレイ | 最大 19×12※3 |
外部ディスプレイ | 1080p 60 fps |
入出力とストレージ | USB 3.0; eMMC 4.5 |
OSのサポート | Android* 4.4.2 |
マルチバンドの接続性 | 4G, 3G, 2G |
サードパーティの 無線ソリューションのサポート |
Bluetooth* 4.0 Low Energy; Wi-Fi* (802.11a/b/g/n/ac) |
パッケージ | 12 mm x 12 mm |
※提示した特徴をすべてのSKUで提供するとは限りません。
出典 「Intel® Atom™ Processor Z34XX Series for Smartphones and Tablets」より
Merrifieldは本当にIntel Edison Compute ModuleのSoCなのか?
Intel Edison Compute Moduleを使用しているとよく「Merrifield」あるいは「MERRIFIELD」という文字列を目にします。例えばIntel Edison Compute Moduleをパソコンに接続した際に表示される一覧に「MERRIFIELD」という表示があります。
また、Linuxカーネルが出力するエラーにも「Merrifield」が含まれていることがあります。
このようにIntel Edison Compute ModuleのSoCがMerrifieldの派生版であることを示す兆候は多数あります。しかし、決定的なのは初期の「Intel® Edison Module Hardware Guide / September 2014 / Revision 002 / Document Number: 331189-002」というドキュメントに記載されている以下の内容です:
The Intel® Edison compute module does not include any video input or output interfaces (MIPI CSI, MIPI DSI, HDMI, etc.). Internal image processing and graphics processing cores are disabled (ISP, PowerVR, VED, VEC, VSP, etc.).
さかきけい意訳:
Intel® Edison Compute Moduleは、いかなるビデオ入力および出力インターフェース(MIPI CSI, MIPI DSI, HDMI, など)も含みません。内蔵イメージ・プロセッシングおよびグラフィックス・プロセッシング・コアは無効にされています(ISP, PowerVR, VED, VEC, VSP, など)。
出典 Intel® Edison Module Hardware Guide / September 2014 / Revision 002 / Document Number: 331189-002 / Page.7より引用
このようにSoCとしてはビデオ関連機能を搭載しつつもそれを無効にしていると読める記述があります(現在のドキュメント「Intel® Edison Compute Module / Hardware Guide / January 2015 / Revision 004 / Document Number: 331189-004※4」には記載がありません※5)。
また同ドキュメントでは、プロセッサーは「Dual Core IA-32 @ 500 MHz, 32-bit Intel® Atom™ Processor Z34xx Series @ 100 MHz※6」という記載もあり、Merrifieldから派生したSoCであることがわかります。
これらのことから、ほぼ間違いのないの事実として「Intel Edison Compute Moduleに搭載されているSoCはコードネームMerrifieldである」ということができます。
MerrifieldをIntel Edison Compute Moduleで使用するにあたって制限したもの
元となったMerrifieldを転用してIntel Edison Compute ModuleのSoCとする際に制限をかけたと明確に判明しているものとをまとめてみました:
項目 | 内容 |
---|---|
プロセッサー関連 | Intel 64の無効化(それに伴う一部命令の削除) |
クロック周波数の制限 最大コア周波数 2.13 GHz(1.60 GHz) → 500 MHz | |
グラフィックス関連 | GPU、VSP、HDMI、カメラ用ポート、その他、丸ごとすべて削除 |
メモリー関連 | LPDDR3 1033 MT/s → 800 MT/s |
USB | USB 2.0+USB 3.0各1 → USB 2.0 × 1 |
GPIO | 175 → 40 |
UART | 3 → 2 |
他にもいろいろと削られているとは思いますが、Merrifieldが小売り向けのチップではないため、細かい内容の記載された資料が見当たりませんでした。ざっくりとではありますが、こんな感じに機能制限されたMerrifieldがIntel Edison Compute ModuleのSoCとして使われているようです。
Merrifieldに搭載されたMCUであるIntel Quarkの謎
Intel Edison Compute ModuleではメインのプロセッサーであるSilvermontアーキテクチャーのデュアル・コアAtomのほかに、Lakemont Coreアーキテクチャーと思われるIntel Quark(100 MHz)がMicro Control Unit(MCU)として搭載されています。
これはMerrifieldの特徴としては公式には述べられていないものです。しかし、Intel Edison Compute ModuleのSoCが同一のものであることを前提とすれば、Merrifieldにも当然Intel Quarkが搭載されていることになります。
なお、現時点ではIntel Edison Compute Moduleで使用できるIntel Quarkに関する情報は限られており、確実にこれがLakemont Coreアーキテクチャーであると断言することはできません。しかし、Lakemont Coreアーキテクチャとは別のアーキテクチャーの設計を起こす時間はとてもなかったのではないかと推測していますし、仮に別アーキテクチャーであればQuarkではない別の名前を冠するのではないかと考えられます。
Lakemont CoreアーキテクチャーのIntel Quark Coreを最初に搭載したと発表されたIntel Quark SoC X1000シリーズ(コードネーム「Clanton」)は2013年9月11日に発表されました。一方、Merrifieldは2014年2月24日に「Intel Atom プロセッサー Z3400シリーズ」として発表されました。このように両者は5カ月しか発表が離れていません。また、2013年9月11日のIntel QuarkがIntel Quark SoC X1000として発表された際に、Merrifieldはその存在が再度確認されるという位置づけであり、準備期間はオーバー・ラップしているとみることができます。
このMerrifieldにIntel Quark Coreが搭載されているのであれば、Intel Quark SoC X1000シリーズとMerrifieldの開発期間はかぶっているか、Intel Quark SoC X1000シリーズの開発はもっと早期に行われており、発表まで間があったのいずれかではないかと思われます。というのも、Merrifieldは既存プロダクトであるコードネーム「Medfield」の後継製品であり、早くからその存在と内容は語られていました。したがって、MerrifieldがLakemont Coreの開発に合わせて時期を決定するということはなく、Merrifieldの設計開始時にはLakemont Coreも完成していたのではないかと考えられるからです。
これは私の勝手な想像なのですが、Intel Quark SoC X1000シリーズはIntel Quark Coreの動作確認用としてIntel社内評価向けに試作されたものがベースとなっているか、あるいはそれそのものではないかと考えています。
とてもArduino互換用に設計されたとも思えず、実際にArduino互換ボードとして設計されたIntel Galileo Development Board(コードネーム「Kips Bay Fab D」)およびIntel Galileo Gen 2 Board(コードネーム「Kips Bay Fab H」)を見ると数々の他社製チップが載っている状態です。したがって後付けで用途が決められたのではないかと考えるのが合理的だと思えるのです。これが前述のようにIntel Quark SoC X1000の開発が社内検証目的にMerrifieldより先行していたと考える理由です。さらに付け加えるなら、Intel Quark SoC X1000シリーズは後付けでかなり大きな機能制限が加えられており、これはバリデーションが後手に回った結果ではないかと考えられます。
いずれIntel Edison Compute Moduleに搭載されているMCUであるIntel Quarkに触れることができるようになることで、これらの答え合わせの一部ができるようになることでしょう。
まとめ
今回はIntel Edison Compute Moduleが、どのような成り立ちによるのかということについて取り上げてみました。一部は事実として検証可能であり、また別の一部分は私の想像によるものです。どの程度正確であるかは何とも言えませんが、こういったことを情報を集めつつ考えてみることは楽しいものです。今後も機会があれば書いてみたいと思います。
※“「Intel QuarkなIntel Edison」と「Intel AtomなIntel Edison」”へ続きます。
2015年4月5日追記
“初期発表時の「Intel Edison」のモックアップ説の一部を撤回”で書いたように、旧Intel Edisonをすべてモックアップだったとする説を撤回しましたので、関連する部分の記述を変更および追記を行いました。
関連記事
- (2014/01/07) IntelがSDカードサイズの「Intel Edison Development Board」を発表
- (2014/05/20) Intel Edisonは発表時と異なるIntel Edisonに変わった
- (2014/05/23) Intel EdisonはSDカード・サイズに戻って夏ごろ登場するらしい
- 詳しくは“初期発表時の「Intel Edison」のモックアップ説の一部を撤回”を参照ください。
- 1920×1280のことを示す省略記法です。同様に19×10であれば1920×1080のことを指します。
- 筆者による日本語意訳(翻訳)版があります。
- ただし、派生する記述は大量に残っており、「Intel® Edison Compute Module / Hardware Guide / January 2015 / Revision 004 / Document Number: 331189-004」以下のような記述があります:
Intel® Edison supports 1 GB LPDDR3 memory at speeds up to 1033 MT/s.
(さかきけい意訳)
Intel® Edisonは最大速度1033 MT/sの1 GB LPDDR3メモリーをサポートします。Page.12より引用
このように記述がありますが、Intel Edison Compute Moduleが実際にサポートするメモリー転送速度は最大1033 MT/sではなく最大800 MT/sです。また、静電気放電特性関連では以下のような記述があります:
Table 32 ESD performance
Model Passing voltages Notes Human body model (HBM) ±1 kV Charged device model (CDM) ±500 V For all pins, other than mentioned below. Charged device model (CDM) ±250 V For USB3, HDMI, DSI, CSI, and LPDDR3 pins. (さかきけい意訳)
表32 ESD 性能モデル 通過電圧 注記 人体帯電モデル (HBM) ±1 kV デバイス帯電モデル (CDM) ±500 V 後述で言及される対象を除くすべてのピン デバイス帯電モデル (CDM) ±250 V USB3, HDMI, DSI, CSI, および LPDDR3のピン Page.38より引用
このようにIntel Edison Compute Moduleには存在しない各種機能(USB 3.0、HDMI、DSI、CSI)に対する言及が存在しています。これはMerrifieldのドキュメント類からの転用の際に修正漏れが起ったものであると考えられます。
さらに面白いことがこのドキュメントには書かれています:
Intel® Edison takes advantage of the Intel® Atom™ Processor 22 nm System-on-Chip, targeted for the smartphone market segment.
(さかきけい意訳)
Intel® Edisonは先進性のあるIntel® Atom™ プロセッサーを採用し、スマートフォン市場に向けた22nm System-on-Chipです。あえて書くまでもありませんが、Intel Edisonはスマートフォン市場向けの製品ではありません…。完全に修正漏れです。
- 若干おかしな表記ですが原文ママです。