...

平成23年度戦略的基盤技術高度化支援事業 「Ultra

by user

on
Category: Documents
3

views

Report

Comments

Transcript

平成23年度戦略的基盤技術高度化支援事業 「Ultra
平成23年度戦略的基盤技術高度化支援事業
「Ultra-Android:
マルチコア対応組込みソフトウェア・プラットフォームの研究開発」
研究開発成果等報告書
平成24年 3月
委託者
委託先
関東経済産業局
株式会社つくば研究支援センター
目
次
第1章 研究開発の概要 ········································································································ 1
1-1 研究開発の背景・研究目的及び目標 ············································································· 1
1-2 研究体制 ················································································································· 5
1-3 成果概要 ················································································································· 6
第2章 本論 ······················································································································ 8
2-1-1 ①-1.仕様設計 ···························································································· 8
2-1-2 ①-2.Ultra-Android ソフトウェア・プラットフォームの開発(実装) ····················· 9
2-2 ②.評価システムの開発 ·························································································· 12
2-2-1 ②-1.評価システム仕様設計 ········································································ 12
2-2-2 ②-2.評価システムの作成 ··········································································· 14
2-2-3 ②-3.システム性能評価 ·············································································· 19
第3章 全体総括 ·············································································································· 20
3-1 過年度を含む(平成 21 年度~平成 23 年度)研究開発成果 ············································· 20
3-2 研究開発後の課題と対応策 ······················································································· 20
3-3 事業化展開 ············································································································ 20
3-3-1 事業化展開 ··································································································· 20
3-3-2 実用化目標 ··································································································· 21
3-3-3 製品展開 ······································································································ 22
付録······························································································································· 23
付録1.専門用語等の解説 ·································································································· 23
付録2.過年度を含む(平成 21 年度~平成 23 年度)成果発表と論文、展示会出展 ······················· 24
第1章 研究開発の概要
1-1 研究開発の背景・研究目的及び目標
【研究背景】
インターネットとの親和性が高く、パソコンの機能をベースとして作られた多機能携帯電話である
スマートフォンは、2007 年 6 月に Apple 社が iOS を搭載した初代 iPhone を発売。その後 2008 年
10 月には Google 社が無償で提供するオープンソースの Android™ソフトウェア・プラットフォーム
を搭載した初代 Android™スマートフォンである T-Mobile G1 が発売された。
株式会社トプスシステムズは、Android™ソフトウェア・プラットフォームの急速な普及を予測す
るとともに、その処理速度・消費電力・リアルタイム性の課題を先見し、またその普及により日本が
得意とする組込み情報機器や半導体が非競争力となることを懸念し、2009 年に独立行政法人産業技術
総合研究所と共同で本研究開発を開始した。
その後、iPhone はおよそ 1 年に 1 回のペースで高機能化された新機種が発売され、Android™ソフ
トウェア・プラットフォームは、それとほぼ同じペースで version 1.0、2.0、3.0 と進化し、数多くの
携帯端末メーカから様々な Android™スマートフォンが発売された。スマートフォンの市場は、わず
か 3 年余りで急拡大し、2012 年には全世界で累計 3 億台を超え、そのうち約半数の 1.5 億台が
Android™スマートフォンになると予測されている。さらに、2015 年までに全世界で 15 億台のスマ
ートフォンが出荷され、そのうち 48.8%(約 7.3 億台)が Android™スマートフォンになると予測さ
れている(表 1)。
本研究開発を開始した 2009 年に当社が予測した Android™スマートフォンの市場は、2013 年に約
1 億台であり(図 1)、Android™ソフトウェア・プラットフォームは、当初予測の 2 倍以上のスピー
ドで普及している。
表 1
世界スマートフォン市場予測(2010 年のランク順)[資料:Gartner]
OS 名
2012 年(%)
2015 年(%)
Symbian
5.2
0.1
Android
49.2
48.8
RIM
12.6
11.1
iOS
18.9
17.2
Microsoft
10.8
19.5
その他
3.4
3.3
Android™ スマートフォン
(2009年当社予測)
出典:フォワードコンセプト社(米国)
図 1
スマートフォン市場における Android™スマートフォンの成長速度
1
【Android TM スマートフォンの課題】
高機能化によりユーザの利便性を追求するスマートフォンであるが、性能面でのユーザの不満は少
なくない。Web ブラウザ、メール、ゲームに代表される高機能なアプリケーションでは、高解像度画
像のスムーズな表示や、タッチスクリーンからのサクサクとした入力と応答、そして少なくとも 1 日
以上のバッテリの持ちなどのユーザの要求を、スマートフォンは充分に満たせていない。
特に、その言語特性から、処理のオーバーヘッドの大きい Java 言語を用いてアプリケーション・
ソフトを実現している Android™スマートフォンは、高速化・低消費電力化・リアルタイム化に対す
るユーザの要求は少なくない。
Android™スマートフォンに関するこれらの背景と課題から、日本の得意とする半導体や端末等の
ハードウェアで利益を追求するためには、Android™向けアプリケーション・ソフトの互換性を維持
しつつ、ユーザの要求に応える高速化・低消費電力化・リアルタイム化で大幅に差別化することがで
きるアプリケーション・プロセッサ(CPU)と、Android™ソフトウェア・プラットフォームに関す
るイノベーティブな技術開発が必要であると考えている(図 2)。
日本の情報家電が世界で勝つために、Ultra-Androidプロジェクトを成功させる!
高性能&高機能スマートフォン/情報家電
桁違いの大幅な差別化
従来の携帯電話開発の課題



機種に依存するSW組込み
SWの複雑化(1,000万行~)
短い製品投入サイクル(6ヶ月)
クラウド
Ultra-Android化
日本の課題
・ガラパゴス携帯
・高速化
・低消費電力化
・リアルタイム化
Android™の課題


Javaは遅い
HWの差別化困難
日本

リアルタイム性がない
米国
従来の課題を解決し、普及するAndroid™
低コスト化
プログラマ数の増大
オープンソース化
アプリケーション(Java言語)
差別化領域
カーネル
ミドルウェア
(800万行:オープンソース)
非差別化領域
Android™化
ハードウェア
(CPU:ARM, x86)
携帯電話 > PCの時代
コンテンツイノベーション
図 2
なぜ、Ultra-Android か?
【Android TM ソフトウェア・プラットフォームに関する開発経緯】
Android™ソフトウェア・プラットフォームは、2008 年 9 月に最初のバージョン 1.0 がリリース
されてから、ほぼ 1 年に 1 回の頻度で、メジャーなバージョンアップによる機能追加が行われてきた。
更にこれらのメジャーなバージョンアップの間に、1.1、1.5、1.6、2.1、2.2、2.3、3.1、3.2 という
マイナーなバージョンアップによる小さな機能追加が行われており、その頻度はほぼ 3 ヶ月に 1 回で
ある。
2
スマートフォンのメーカ各社は、様々な Android™スマートフォン製品を発売しており、Android™
ソフトウェア・プラットフォームのバージョン 3.0 からタブレットも製品化されている。2011 年には、
70 機種以上の Android™スマートフォンが製品化されたが、搭載されている Android™ソフトウェ
ア・プラットフォームのバージョンは、2.1 から 3.2 まで様々である(図 3)。
株式会社トプスシステムズと独立行政法人産業技術総合研究所とは、2007 年 9 月に「ヘテロジニ
アス・マルチコア上でのオブジェクト分散処理」に関する共同研究を開始した。そして Android™ソ
フトウェア・プラットフォーム・バージョン 1.0 のリリースの 6 ヶ月後の 2009 年 4 月には、
Ultra-Android の基本方式であるヘテロジニアス・マルチコア上で分散並列処理方式について Cool
Chips XII で発表した("Ultra Android: High Energy Efficiency Parallel Java Objects Processing
via Object Request Broker on Heterogeneous Multi-core Processor", Takeshi Ohkawa, Yukoh
Matsumoto, and Kenji Toda, National Institute of Advanced Industrial Science and Technology
(AIST), Japan)。
本研究開発は、Android™ソフトウェア・プラットフォーム・バージョン 1.6 がリリースされた 2009
年 9 月に開始し、2012 年 2 月までに基本アプリケーションに対応する「Ultra-Android ソフトウェア・
プラットフォーム」を開発し終了した。
株式会社トプスシステムズは、2012 年 12 月までに汎用性を高めた「Ultra-Android ソフトウェア・
プラットフォーム ver.1.0」の製品化を目指している。
2009年9月
平成21年度サポイン(補正)採択
2007年9月
トプスシステムズ社と
産総研との
共同研究開始
2010年6月~
平成22年度・23年度サポイン採択
2012年12月
2009年4月、5月
Ultra-Androidの開発
Ultra-Android発表
(COOL Chips XII, ESEC)
分析
「 Androidの父」
開発
Android Market
開設(米国、英国)
2009年 3月
評価
Motorola
XOOM
製品化
ASUS TF201
Docomo
Motorola
Google Galaxy S
DROID Nexus One
T-Mobile G1
Docomo HT-03A
MSM7201A
(528MHz)
Andy Rubin氏
OMAP3430
(550MHz)
OHAが Android ™発表
2003年 10月に
Android社を設立
2007年 11月 5日
2008年 10月 22日
米国
規格団体OHA
( Google, Qualcomm,
T-Mobileなど34社)
Googleが
Android社を買収
2009年 7月 10日
日本
Android ™
1.0
2008年 9月
2008
2005
QSD8250
(1GHz)
MSM7201A
(528MHz)
Android ™
1.6
Donut
2009年 9月
2009
S5PC110
(1GHz)
2011年 1月
米国 Tegra2
2009年 11月 2010年 1月2010年 10月
米国
日本
米国
Android ™
2.0
Eclair
2009年 10月
2010
Android ™ 2.2
Froyo
2010年 11月
(1GHz ② )
Android ™ 3.0
Honeycomb
2011年 1月
2011
Android™ ソフトウェア・プラットフォームに関する開発経緯
3
Android ™ 4.0
IceCreamSandwitch
2012年 1月
2012
Googleが Motorola
Mobilityの買収を発
表
2011年 8月
図 3
2012年 1月
日本
Tegra3
(1.3GHz④ )
【研究目的及び目標】
本研究開発の目的は、Android™用のアプリケーション・ソフトウェアを変更せずに、処理能力が
高く消費電力を大幅に抑えられるヘテロジニアス・マルチコア・プロセッサの利用を可能とする
「Ultra-Android ソフトウェア・プラットフォーム」を開発することである(図 4)。
Ultra-Android ソフトウェア・プラットフォームを株式会社トプスシステムズのヘテロジニアス・
マルチコア・プロセッサ「TOPSTREAM™ Ultra-Android」
(開発中)上で動作させた場合に、ARM
を用いるスマートフォン等に対し、以下に示す大幅な性能向上を達成することを目標とする。
①
10 倍以上の高速化(アプリの処理に掛かる時間が 1/10 以下)
②
10 分の 1 以下の低消費電力化(アプリの処理に必要な電力が 1/10 以下)
③
リアルタイム化(応答時間が 1 ミリ秒以下)
図 4
本研究開発の概要
4
1-2 研究体制
【研究組織(全体)】
株式会社つくば研究支援センター
再委託
株式会社トプスシステムズ
再委託
独立行政法人産業技術総合研究所
【管理体制】
<事業管理機関>
[株式会社つくば研究支援センター]
代表取締役社長
総務企画担当
常務取締役
総務企画部
(経理担当者)
事業担当
常務取締役
研究支援部
(業務管理者:常務取締役)
再委託
株式会社
トプスシステムズ
再委託
独立行政法人
産業技術総合研究所
<再委託先>
[株式会社トプスシステムズ]
(経理担当者)
代表取締役
総務部
(業務管理者:総務部)
(業務管理者:代表取締役)
マイクロプロセッサ開発部
[独立行政法人産業技術総合研究所]
理事長
イノベーション推進本部
産学官連携推進部
プロジェクト支援室
総務本部
財務部
経理室
(経理担当者)
知能システム研究部門
(業務管理者:部門長)
5
統合知能研究グループ
1-3 成果概要
【平成 23 年度の目標】
今年度の目標は、開発した Ultra-Android ソフトウェア・プラットフォームを評価システム上で動
作させた場合の性能として、以下の当初目標値を達成することである。
A) ソフトウェアの並列化(担当:株式会社トプスシステムズ)
Java アプリケーションのソースコード変更:0%
Android™用に Java 言語で開発されたアプリケーション・プログラムのソースコードを一
切変更せずに並列実行できることを目標とする。
B) ソフトウェアの処理速度向上(担当:株式会社トプスシステムズ)
高速化:10 倍以上(処理時間:1/10 以下)
従来のシングル CPU による Android™の処理速度に対し、10 倍以上の高速化を目標とする。
C) ソフトウェアの低消費電力化(担当:株式会社トプスシステムズ)
消費電力:1/10 (プロセッサの必要動作周波数:1/10)
従来のシングル CPU による Android™の消費電力に対し、1/10 以下への低消費を目標とす
る。
D) ソフトウェアのリアルタイム化(担当:独立行政法人産業技術総合研究所)
リアルタイム性:ハードリアルタイム(1 ミリ秒以下)
必ずデッドラインの時間までに終了するハードリアルタイム処理を目標とする。リアルタイ
ム性の精度は 1 ミリ秒以下とする。
各目標値の比較対象は、《最初の Google Android 携帯「G1」》とする。これは、アプリケーション
プロセッサとして 528MHz の ARM11 を搭載した携帯端末であり、一般に入手可能なものである。例
えば、
「消費電力 2 分の 1」であれば、この携帯端末「G1」に比較して 2 分の 1、という目標である。
【基準機】
台湾 HTC 社製
参考 URL:
Dream
(Google Android 携帯「G1」)
http://htcdream.com/
<スペック(抜粋)>
・メインチップ Qualcomm 社製 MSM7201A
・アプリケーションコア:ARM11@528MHz
・メモリ Samsung 社製 K5E2G1GACM
・256MB
NAND フラッシュメモリ
・128MB
DDR SDRAM
6
【平成 23 年度の研究開発実施状況】
① Ultra-Android ソフトウェア・プラットフォームの開発(担当:株式会社トプスシステムズ)
Ultra-Android ソフトウェア・プラットフォームの仕様 Rev.3.0 を策定し、仕様に基づいて実装を
進めた。
①-1.仕様設計
Ultra-Android ソフトウェア・プラットフォームの仕様 Rev.3.0 を策定した。
① 2.プラットフォーム開発(実装)
平成 22 年度に開発したアプリケーション・フレームワーク及びランタイム(Java 仮想マ
シン)を改善し、評価システムに必要な開発を行った。
Ultra-Android ソフトウェア・プラットフォームの仕様 Rev.3.0 に従って、マルチコア向
けに仕様拡張したコンポーネントを実装し、基本的なアプリケーション(キー入力など)を
用いてテストを行い基本動作を確認した。
② 評価システムの開発(担当:株式会社トプスシステムズ、独立行政法人産業技術総合研究所)
Ultra-Android ソフトウェア・プラットフォームを搭載するシステム性能を実証する。ハードウェ
アを含むシステム性能を評価するために評価システムを開発した。
②-1.評価システム仕様設計
Ultra-Android ソフトウェア・プラットフォームの性能を評価するためのハードウェアお
よびソフトウェアに関わる評価システムの仕様を設計した。
②-2.評価システム作成
以下の 2 つの手順により、システム性能評価が可能な標準的 FPGA 搭載評価ボードを入手
し、その上でプロセッサ設計を進めた。
ア.基板製造:FPGA を搭載した評価ボードをレンタル・サービスにより入手した。
イ.プロセッサ設計:評価ボード上の FPGA にプログラム可能な、TOPSTREAM™ヘ
テロジニアス・マルチコア・プロセッサの設計実装をした。
②-3.システム性能評価
評価システムを用いて、Ultra-Android ソフトウェア・プラットフォームの性能評価を行
った。性能評価項目と目標値は次のとおりである。
A) ソフトウェアの並列化(ソースコードの修正なし)
B) 処理速度(10 倍以上)
C) 消費電力(1/10 以下)
D) リアルタイム性(1 ミリ秒以下)
【平成 23 年度の成果一覧】
研究開発項目別の成果を次に示す(詳細は第 2 章参照)。
・Ultra-Android ソフトウェア・プラットフォーム仕様書(Rev.3.0)
・Ultra-Android ソフトウェア・プラットフォーム
・Android™リアルタイム性能評価環境・改良版リアルタイム性能評価環境
・評価システム仕様書
7
第2章 本論
平成 23 年度の本研究開発では、Ultra-Android ソフトウェア・プラットフォームの仕様 Rev.3.0 を
策定し、仕様に基づいて実装を進めた。また、Ultra-Android ソフトウェア・プラットフォームのソ
フトウェア性能評価環境として、評価システムの開発を進めている。完了次第、その性能を評価する。
以下に、各ステップにおける研究開発の詳細について記載する(図 5)。
1.Android™の分析
1-1. Android ™ 分析環境の構築
1-2. Android ™ アプリケーションの分析
1-3. Android ™プラットフォームの分析
VTune Performance Analyzer
VisualSim
TS-ISIM
並列化
高速化
低消費電力化
リアルタイム化
2.Ultra-Androidソフトウェア・
プラットフォームの開発
2-1. 仕様設計
2-2. 評価環境の構築
2-3. プラットフォーム開発(実装)
2-4. ソフトウェア性能評価
システム性能評価
平成23年度の研究開発項目
3.評価システムの開発
3-1. 評価システム仕様設計
3-2. 評価ボード作成
3-3. システム性能評価
製品化
評価システム
図 5
研究開発のステップ
2-1 ①.Ultra-Android ソフトウェア・プラットフォームの開発
2-1-1 ①-1.仕様設計
◆Ultra-Android ソフトウェア・プラットフォーム仕様書作成ステップ
(1) Android™ソフトウェア・プラットフォーム(バージョン 2.2)仕様書の作成
(2) Ultra-Android ソフトウェア・プラットフォーム仕様書の作成
(1) Android™ソフトウェア・プラットフォーム仕様書の作成
Android™ソフトウェア・プラットフォーム仕様書は、並列分散処理化が可能な部分を明確
にするために、UML のクラス図とシーケンス図を用いて表現することにした。
①クラス図:モジュール間の依存関係の明確化「見える化」
②シーケンス図:処理順序とモジュール間の API の明確化「見える化」
8
【Android™ソフトウェア・プラットフォーム仕様書作成自動化の課題と対策】
研究開発開始当初に予定していた Android™ソフトウェア・プラットフォームの仕様書の
クラス図及びシーケンス図の自動作成に関しては、次の 3 つの課題が発生し、一部を手動で
行う必要があったため仕様書作成の工数が増大した(図 6)。
①複数言語で記述されたソースコード群の場合、自動処理が困難
②C 言語で記述されたソースコード群の場合、自動処理が困難
③バッチ処理化が困難
Android™ソフトウェア・プ
ラットフォーム
・C言語
・C++言語
・Java言語
(約100万行)
自動作成
手動作成
・クラス図
・シーケンス図
Android™
ソフトウェア・
プラットフォーム
仕様書
仕様
追加
仕様
拡張
・クラス図
・シーケンス図
Ultra-Android
ソフトウェア・
プラットフォーム
仕様書
図 6
複数言語の場合
C言語の場合
複数ソースの場合
Ultra-Android ソフトウェア・プラットフォーム仕様書作成フロー
(2) Ultra-Android ソフトウェア・プラットフォーム仕様書の作成
Ultra-Android ソフトウェア・プラットフォーム仕様書は、Android™ソフトウェア・プラ
ットフォーム仕様書に基づいて、機能追加及び機能拡張を 3 つのステップに分けて定義した(表
2、図 7)。
◆Ultra-Android ソフトウェア・プラットフォーム仕様書 Rev. 3.0
平成 23 年度は、代表的なアプリケーションについて性能目標値を達成するために「UltraAndroid ソフトウェア・プラットフォーム仕様書 Rev.2.0」に対し、デバイス・ドライバを高速
化するためにデバイス・ドライバの仕様を拡張し、
「Ultra-Android ソフトウェア・プラットフォ
ーム仕様書 Rev. 3.0(基本アプリ対応版)」を作成した(図 8)。
2-1-2 ①-2.Ultra-Android ソフトウェア・プラットフォームの開発(実装)
Ultra-Android ソフトウェア・プラットフォーム Rev. 3.0 の仕様に従って、6 つのコンポーネント
を実装し、基本的なアプリケーション(キー入力など)を用いて、基本機能を確認した。
9
表 2
Ultra-Android ソフトウェア・プラットフォーム仕様書
分類
コンポーネント
Rev.1.0
(拡張(変更点)の内容)
Application
Framework
Activity Manager
Window Manager
Contents Manager
Android Runtime
製品版
Android ™ での役割説明
アクティビティ状態に応じた
プロセッサ配置のスケジューリング
○
アプリケーションのライフサイクルを管理
ウィンドウごとの機能分散化
○
ウィンドウを管理
→
○
アプリケーション間のデータ共有を管理
機能分散化
Notification
Manager
リアルタイム情報表示のための
機能分散化
○
ステータスバーへのアラート表示を管理
Package Manager
→
○
インストールを管理
Telephony Manager
→
○
電話機能の管理
Resource Manager
→
○
非コード資源を管理
Location Manager
→
○
位置情報の管理
XMPP Service
→
○
メッセージングサービスを管理
○
ユーザインターフェイスを管理
TOPSTREAMのアーキテクチャの
ストリーム処理機能を活用した
パフォーマンスライブラリを使用
(算術演算・メモリ転送等)
○
Java言語に準拠したコアライブラリ機能
豊富なレジスタによる高速実行
メソッド呼び出し高速化
○
.dex形式のバイトコードを実行する仮想マ
シン
Surface Manager
→
○
複数アプリケーション間の2D/3D画像合成
Media Framework
TOPSTREAMのアーキテクチャの
ストリーム処理機能を活用した
パフォーマンスライブラリを使用
○
ビデオ形式の再生と記録
Core Libraries
SQLite
→
○
リレーショナルデータベース
OpenGL ES
→
○
3Dグラフィックス・エンジン
→
○
ビットマップとベクタフォントのレンダラ
Free Type
SGL
TOPSTREAMのアーキテクチャの
ストリーム処理機能を活用した
パフォーマンスライブラリを使用
→
SSL
→
libc
→
○
標準的なC言語ライブラリ
Display Driver
デバイス毎担当コアで機能分散
○
ディスプレイデバイス
Camera Driver
デバイス毎担当コアで機能分散
○
カメラデバイス
Bluetooth Driver
デバイス毎担当コアで機能分散
○
Bluetoothデバイス
デバイス毎担当コアで機能分散
○
フラッシュメモリデバイス
マイクロORBエンジンで実現
(50us程度)
○
共有メモリによるプロセス間通信(2ms程
度)
USB Driver
デバイス毎担当コアで機能分散
○
USBデバイス
Keypad Driver
デバイス毎担当コアで機能分散
WiFi Driver
デバイス毎担当コアで機能分散
○
Wifi無線LANデバイス
Audio Driver
デバイス毎担当コアで機能分散
○
音声デバイス
Power Manager
デバイス毎担当コアで機能分散
WebKit
Linux Kernel
Rev.3.0
View System
Dalvik VM
Libraries
Rev.2.0
Flash Memory
Driver
Binder (IPC)
Driver
○
ブラウザ表示を行うためのHTMLレンダラ
○
2Dグラフィックスエンジン
○
セキュアな通信ライブラリ
○
キーパッドデバイス
○
10
電源管理デバイス
図 7
Ultra-Android ソフトウェア・プラットフォームの構成図
拡 張
Android™
Ultra- Android
ソフトウェア・プラットフォーム
シングルコアCPU
Linux
Kernel
アプリ
Camera
Driver
マルチコア
Linux
Kernel
アプリ
read
read
read(*
Camera
Driver
フレーム入力
read(*
処理
フレーム入力
データ出力
処理
データ出力
* i2c_attach_client() で初期化後
図 8
Android™のマルチコア向け仕様拡張
11
2-2 ②.評価システムの開発
次の 2 つの目的を達成するために Android™スマートフォンの基本機能を模擬する評価システムを
開発した。
① 定量的性能評価
処理速度、リアルタイム性などの定量的な性能評価
② 評価システムの提供
ユーザ候補企業による「Ultra-Android ソフトウェア・プラットフォーム」及び
「TOPSTREAM™ Ultra-Android」の性能評価
2-2-1 ②-1.評価システム仕様設計
【評価システムの要件】
<機能要件>
① Android™ソフトウェア・プラットフォームが起動すること(Android™2.2 の起動)
② 性能評価用アプリケーション(キー入力テキスト表示アプリケーション、モグラたたきゲ
ーム、顔認識アプリ)が実行できること
③ 性能評価用ベンチマーク・プログラム(BrwosingBench™、CoreMark™)が実行できる
こと
④ 入力機能(タッチパネル入力、カメラ入力)
⑤ 出力機能(モニタ出力)
⑥ システム機能(アプリケーション・プロセッサを搭載すること(TOPSTREAM™
Ultra-Android)
⑦ アプリケーション実行時の処理時間を測定可能なこと(測定精度:1 ミリ秒)
⑧ セットアップ機能
・Ultra-Android ソフトウェア・プラットフォームを書換可能なこと
・性能評価用アプリケーションを書換可能なこと
・性能評価用ベンチマーク・プログラムを書換可能なこと
<性能要件>
① 最終システムと同等の動作速度で動作すること(入出力:実速度、アプリケーション・プ
ロセッサ:50MHz~100MHz)
<その他の要件>
① スマートフォンやタブレットをイメージできること
② 持ち運び可能であること(サイズ:A4 程度、重さ:5kg 以下)
<制約条件>
① 消費電力の評価は要件から除外する
② 無線通信機能は要件から除外する
【評価システムの仕様】
上記の評価システム要件を満たす仕様を検討し、下記のとおり決定した。
○アプリケーション・プロセッサの仕様
ヘテロジニアス・マルチコア・プロセッサ:TOPSTREAM™ Ultra-Android 高速版(図 9)。
12
○メモリの仕様
・RAM:DDR2(動作周波数:200MHz、容量:256MByte)
・ROM:FPGA 内部 ROM(容量:128kByte)
○I/O の仕様
・モニタ:7 インチ液晶パネル、解像度:VGA、接続:DVI
・タッチスクリーン:静電容量型(モニタ一体型)、接続:シリアル
・カメラ:小型カメラモジュール、解像度:VGA、接続:I2C
外部 RAM
Bus I/F
システム制御
32-bit RISC $
Bus
Controller
MC
外部 I/O
L1-I
L1-D
Bus Bridge
GPR
TOPSTREAM™ S-bus (128-bit)
TOPSTREAM™ D-bus (128-bit)
TOPSTREAM™ I-bus (128-bit)
BFP
BFP
32-bit RISC 32-bit RISC
拡張命令
拡張命令
GPR
GPR
図 9
SCP
SCP
32-bit 64-bit
RISC DP
32-bit 64-bit
RISC DP
GPR
GPR
DR
DR
DCP
DCP
32-bit128-bit 32-bit128-bit 32-bit256-bit
RISC DP
RISC DP
RISC DP
GPR DR
GPR DR
アプリケーションプロセッサの構成図
【評価システムの構成】(図 10、図 11)
○FPGA 搭載ボード
「LSI プロトタイプ評価プラットフォーム」TB-5V-LX330-EX
○タッチスクリーン
・型番:NEWAY CL7669NT-RS
○カメラ・モジュール
・型番:CAMERA30W-OV7670
13
QCP
GPR DR
図 10
評価システム写真
Application
Home
Contacts
Phone
・・・
Browser
Application Framework
Activity
Manager
モニタ
NEWAY
CL7699NT-RS
VGA
タッチパネル
シリアル
VGA
Bus Bridge
TOPSTREAM™ S-bus (128-bit)
TOPSTREAM™ D-bus (128-bit)
TOPSTREAM™ I-bus (128-bit)
BFP
BFP
SCP
SCP
32-bit RISC
拡張命令
GPR
32-bit RISC
拡張命令
GPR
32-bit 64-bit
RISC DP
GPR DR
32-bit 64-bit
RISC DP
GPR DR
DCP
DCP
QCP
32-bit 128-bit 32-bit 128-bit 32-bit 256-bit
RISC DP
RISC DP
RISC DP
GPR DR
GPR DR
GPR DR
TOPSTERM ™ Ultra-Android
(RTL 17 万行)
Content
Providers
Telephony
Manager
Resource
Manager
View
System
Location
Manager
カメラIF
Notification
Manager
Android™ Runtime
Libraries
Surface
Manager
Media
Framework
SQLite
OpenGL|ES
FreeType
WebKit
SGL
SSL
Libc
Core Libraries
DalvikVirtual
Machine
Remote Call
Extension
Linux Kernel
FPGA Xilinx社 Virtex-5
LX-330
メモリ
DDR2
ダウンロード
L1-D
設計データの書き込み
L1-I
Package
Manager
I2C
シリアル
DVIIF
Bus I/F
システム制御
32-bit RISC $ Bus
Controller
MC
GPR
カメラ
OmniVision
OV7670 CMOS
VGA 640x480
Window
Manager
Display Driver
Camera
Driver
Flash Memory
Driver
Binder(IPC)
Driver
Keypad
Driver
WiFiDriver
Audio Drivers
Power
Management
Distributed Processing Middleware
評価ボード(TED: TB-5V-LX330-EX)
評価システム
図 11
Micro ORB
Engine
Static Mapper
Dynamic Mapper
Ultra-Android ソフトウェアプラットフォーム
評価システム構成図
2-2-2 ②-2.評価システムの作成
本研究開発では、図 12 に示すフローで「TOPSTREAM™ Ultra-Android ヘテロジニアス・マルチ
コア」と「Ultra-Android ソフトウェア・プラットフォーム」の機能検証を行った。
14
ハードウェア(HW)
ソフトウェア(SW)
TOPSTREAM™ Ultra-Android
ヘテロジニアス・マルチコア
Ultra-Android
ソフトウェア・プラットフォーム
基本機能検証
〔RTL〕
基本機能検証
〔ISIM〕
TS-ISIM for Ultra-Android
HW/SW 協調機能検証
〔Veloce〕
RTLシミュレータ(Questa)
システムレベル検証
〔評価システム〕
ハードウェア・エミュレータ
Veloce Solo
Ultra-Android評価システム
図 12
Ultra-Android ソフトウェア・プラットフォームと TOPSTREAM™ の機能検証
◆Ultra-Android ソフトウェア・プラットフォームと TOPSTREAM™ Ultra-Android の機能検証
(1) 命令セットシミュレータ(ISIM)を用いた基本機能検証
・検 証 結 果:Android™が起動することを確認
TS-ISIM for Ultra-Android 上で、Android™の起動時の画面(GUI)が正し
く表示された。
(2) RTL での基本機能検証
・検 証 結 果:全ての命令テストと機能テストをパスした。
(3) ハードウェア・ソフトウェア協調機能検証
・検証結果:検証実施中
(4) システムレベル検証
・検 証 結 果:検証実施中
◆リアルタイム性能評価環境構築
昨年度は、測定対象として ARM プロセッサに既存の Android™ OS を搭載する評価基板
(Armadillo-500-fx)を対象とした FPGA による性能評価システムを開発し、Android™ OS の
実時間性能に関する測定を行った 1。本年度は、その成果を踏まえ、新たに測定対象として、独自
のヘテロジニアス・マルチコアプロセッサ「TOPSTREAM™ Ultra-Android」を市販の FPGA
FPGA を用いた Android™ OS 性能評価システムの開発、戸田 賢二(産総研)、大川 猛、宮崎 崇史、松本 祐教(ト
プスシステムズ)、信学技報、NS2010-159、pp.97-102、2011/01
1
15
基板に実装し、それに Android™ OS を対応させた Ultra-Android をターゲットとした性能評価
システムを開発した(図 13、図 14、図 15、図 16)。
・
・
・
・
FPGA Xilinx Virtex5 (LX330)
DVI 入出力,RS-232C,GbE,USB 付
DDR2-SDRAM×2,DDR-SDRAM
拡張コネクタ(AMBA バスとして使用)
図 13
・ FPGA Xilinx Virtex5 (FF1738C 対応)
・ PCI-Express カードエッジ(16 レーン)
・ DRAM ソケット 2 個、SATA ソケット 8 個、
10GbE ポート 6 個装備
・ 拡張コネクタで Ultra-Android システム
と AMBA バス接続、DVI、USB I/F 装備
Ultra-Android 用 FPGA 基板
図 14
性能測定用 FPGA 基板(REX3)
PC *1
Linux *2
擬似プロセッサプログラム
*2.1
応答時間測定プログラム
*2.3
USBデバイスドライバ
*2.2
PCIeデバイスドライバ
*2.4
USBケーブル
PCIeスロット
Ultra-Android用FPGA基板 *3
性能測定用FPGA基板(REX3) *7
FPGAチップ *8
USBコントローラ
*3.1
ケーブル
FPGAチップ *4
PCIeインターフェイス
*8.1
接続基板 *5
USBインターフェイス回路
*4.1
信号接続配線
*5.1
応答時間測定回路
*8.2
I/Oアダプタ *6
デュアルポートメモリ
*4.2
AMBAバスコントローラ
*8.3
変換コネクタ
*6.1
AMBAバス
AMBAバスコントローラ
*4.3
AMBAバス
図 15
Ultra-Android 用性能評価システムの構成
16
図 16
PC+REX3+IO アダプタ+接続基板+Ultra-Android 用 FPGA 基板
(2) 性能評価システムにおける処理の流れ
システムのブロック間での処理の流れである。
①応答時間測定プログラム→デュアルポートメモリ
②デュアルポートメモリ→擬似プロセッサプログラム
③擬似プロセッサプログラム→デュアルポートメモリ
④デュアルポートメモリ→応答時間測定プログラム
(3) 予備的性能評価
PC 上の擬似プロセッサを用い以下の計測試験を行った。(図 17A、図 18B)
図 17
A.タイマー開始タイミング(AMBA バス上でフラグリード)
図 18
B.タイマー停止タイミング(AMBA バス上でフラグクリア)
17
(4) まとめ
性能測定用 FPGA と Ultra-Android プロセッサ基板をバス接続する方式で、以下の機能を
有する Ultra-Android の性能評価システムを開発した。
・Ultra-Android システムのバスモニタ
・Ultra-Android 側へ所望のタイミングでの入力発生、及びイベントタイミングの測定
18
2-2-3 ②-3.システム性能評価
次の指標を測定し評価する。
①ソフトウェアの並列化
②処理速度
③消費電力
④リアルタイム性
評価対象アプリケーションは、次のとおりである。
(1) キー入力テキスト表示アプリケーション(autotext):スマートフォンのキー入力およびキー入
力によるテキスト表示を模擬した性能評価用アプリケーション(株式会社トプスシステムズが
独自に作成)。①ソフトウェア並列化、②処理速度、④リアルタイム性の評価に使用。
(2) モグラたたきゲーム:ゲームを模擬した性能評価用アプリケーション。①ソフトウェア並列化、
②処理速度、④リアルタイム性の評価に使用。
(3) BrowsingBench™:EEMBC が提供するスマートフォンなどのモバイル・デバイスのブラウジ
ング性能を客観的に測定することができるベンチマークソフトウェア。①ソフトウェア並列化、
②処理速度の評価に使用。
(4) CoreMark™:EEMBC が提供するプロセッサ・コアの性能を測定することができるベンチマー
クソフトウェア。①ソフトウェア並列化、②処理速度の評価に使用。
(5) 顔認識アプリ:顔認識アプリケーションの性能評価用アプリケーション(株式会社トプスシス
テムズが独自に作成)。①ソフトウェア並列化、②処理速度の評価に使用。
19
第3章 全体総括
3-1 過年度を含む(平成 21 年度~平成 23 年度)研究開発成果
 Ultra-Android ソフトウェア・プラットフォーム(仕様 Rev.2.0、Rev.3.0 に基づく)
基本アプリケーションに対して、Android™アプリケーションのソースコードの変更なしで
ソフトウェア並列化可能であり、さらに高速化、低消費電力化、リアルタイム化が可能な
Ultra-Android ソフトウェア・プラットフォームを開発した。
 評価システム
Android™スマートフォンを模擬できるように策定した評価システム仕様書に従って、汎用
FGPA ボードをベースに評価システムを作成した。
 Android™リアルタイム性能評価環境
Ultra-Android の評価ボードと接続して、アプリケーションのリアルタイム性能を計測・分
析することにより、Ultra-Android において 1 ミリ秒以下のレスポンスが可能な評価システム
を作成した。
 性能評価用アプリケーション
性能評価に使用するアプリケーションとして次の 2 つを作成した。
・キー入力テキスト表示アプリケーション
・顔認識アプリケーション
3-2 研究開発後の課題と対応策
研究開発の工程
Android™の分析
項目
課題
対応策
Android™の詳細
Java のソースコードに
時間測定用の API を用意する
CPU 負荷分析
対応した処理時間が測
(API の挿入に工数がかかる)
れない
Ultra-Android ソ
Android™仕様書
バッチ処理化が困難
自動化するためのプラグインを
フトウェア・プラッ の自動化
作成する(ただしプラグインの
トフォームの仕様
作成には工数がかかる)
3-3 事業化展開
3-3-1 事業化展開
トプスシステムズは、本研究開発と並行して、世界のトップレベルのスマートフォン・メーカによ
る採用を目指して、共同開発に向けたコラボレーション、及び国内外の顧客開拓活動を進めてきた。
その結果、これらの企業より「Ultra-Android ソフトウェア・プラットフォーム」の評価システムに
20
期待する要件について具体的なアドバイスをもらっている。また、現在、国内 6 社、海外 6 社(米国
4 社、韓国 2 社)から、
「Ultra-Android ソフトウェア・プラットフォーム」の評価システムを用いた
評価について要請がある。
平成 24 年 1 月 27 日には、トプスシステムズの 100%子会社として株式会社 Cool Soft を設立した。
株式会社 Cool Soft は、Ultra-Android ソフトウェア・プラットフォーム開発と販売、最適化ソフト
ウェア開発サービス事業等を推進していく(図 19)。
株式会社 Cool
Soft
Ultra-Android
ソフトウェア・プラットフォーム
セッ ト メ ーカ ー各社
ラ イ セ ン ス 販売
お客様に合わせた付加価値の提供
Ultra-Android
カスタム・ソフトウェア
株式会社 ト
開発サービ ス
プスシステムズ
TOPSTREAM™Ultra-Android
ヘテロジニアス・マルチコア
スマート フ ォ ン など
ラ イ セ ン ス 販売
設計データ
LSIチッ プ
半導体ベン ダー
図 19
事業スキーム
3-3-2 実用化目標
本研究開発の成果である「Ultra-Android ソフトウェア・プラットフォーム」の製品化は、平成 24
年 12 月末を予定している。ソフトウェア専門の子会社(株式会社 Cool Soft)設立等により製品化の
加速と、サポート体制の強化を進めている(図 20)。
汎用版
2012年1月
(株)Cool Soft 設立
2012/1
図 20
Ultra-Android
(α版)の開発
基本アプリ
対応版
4
Ultra-Android
(β版)の開発
8
製品化
Ultra-Android
ver.1.0
10
12
Ultra-Android ソフトウェア・プラットフォームの製品化スケジュール
また、本研究開発と並行して株式会社トプスシステムズが開発している TOPSTREAM™
Ultra-Android ヘテロジニアス・マルチコア・プロセッサ(ハードウェア IP 製品)については、スマ
ートフォン・メーカからの要求に基づいて、次の 2 種類の製品化を目指す。
(1) TOPSTREAM™ 高速型 Ultra-Android プロセッサ(ハードウェア IP)
(2) TOPSTREAM™ 低消費電力型 Ultra-Android プロセッサ(ハードウェア IP)
21
3-3-3 製品展開
「Ultra-Android ソフトウェア・プラットフォーム」の製品化後に、製品展開として、更なる高速
化と機能向上を計画している。
22
付録
付録1.専門用語等の解説
【Android™】携帯電話用ソフトウェアのオープンソース・プラットフォーム。ミドルウェア、ユー
ザーインターフェース、電話帳などの標準的なアプリケーション・ソフトウェアを含んでおり、
Windows Mobile や SymbianOS に近い。Linix がカーネルに採用されているが、カーネル以外は
Linux 関連技術を使用していない。
【マルチコア】1つのプロセッサ LSI 内に複数のプロセッサ・コアを集積する技術。プロセッサの動
作周波数の向上が困難になってきたため、プロセッサの数を増やすことで性能向上を目指す方式。同
一のプロセッサ・コアを複数個集積するホモジニアス・マルチコアと、異なる種類のプロセッサ・コ
アを複数個集積するヘテロジニアス・マルチコアとがある。
【ヘテロジニアス・マルチコア】異種のアーキテクチャをもつマイクロプロセッサを統合したもの。
プロセッサ・コアをアプリケーションの処理に特化することにより、ある動作周波数で達成できる演
算処理性能を高めることができる。ヘテロジニアス・マルチコア上のソフトウェア処理方式は、機能
分散処理になる。
【機能分散処理】複数のコンピュータやプロセッサを利用して、機能を分散して計算処理を行うこと。
1 台のコンピュータに多数のプロセッサを搭載して処理する方法と、ネットワークを通じて複数のコ
ンピュータを結びつけて処理する方法の 2 種類に大別できる。ヘテロジニアス・マルチコアによる機
能分散処理は、前者になる。
【オブジェクト指向】ソフトウェアの設計や開発において、操作手順よりも操作対象に重点を置く考
え方。関連するデータの集合と、それに対する手続きであるメソッドを「オブジェクト」と呼ばれる
一つのまとまりとして管理し、その組み合わせによってソフトウェアを構築する。既に存在するオブ
ジェクトについては、利用に際してその内部構造や動作原理の詳細を知る必要はなく、外部からメッ
セージを送れば機能するため、特に大規模なソフトウェア開発において有効な考え方であるとされて
いる。データやその集合を現実世界の「モノ」になぞらえた考え方であることから、「オブジェクト」
指向と呼ばれる。
23
付録2.過年度を含む(平成 21 年度~平成 23 年度)成果発表と論文、展示会出展
■研究発表:3 件(予定を含む)
No.
1
2
発表タイトル
学会名
「FPGA を用いた Android™ OS 性能評価シ
ネットワークシステム研究会
ステムの開発」
開催日
(電子情報通信学会)
「FPGA を用いた Ultra-Android 用性能評
価システムの開発」
ETNET2012
(電子情報通信学会、情報処理学会)
2011 年 1 月 20 日~21 日
2012 年 3 月 2 日~3 日
「 Distributed Processing Heterogeneous
Multicore / Manycore / 3D Multichip SoC
3
with Zero-Overhead Message Passing and
MPSoC 2012
2012 年 7 月 9 日~13 日
セミナー・講演会名
開催日
JASVA Day Tokyo 2009
2009 年 12 月 9 日
Stream Processing HW/SW mechanism」
<MiniKeynote>
■セミナー・講演会:6 件
No.
1
2
3
4
5
6
発表タイトル
「日本型研究開発ベンチャーで世界 No.1 を
目指す!」
「省エネを追及する ELS 設計! Android~リ
EDS Fair 2010
アルタイム・レイトレーシング」
出展者セミナー
「 Ultra-Android : ヘ テ ロ マ ル チ コ ア 対 応
EDS Fair 2011
Android™の設計・検証手法」
出展者セミナー
「スマートフォンのブラウザ性能は、マルチ
コア化で向上するか」
「Android 端末の高速化・低消費電力化の課
2011 年 1 月 28 日
2011 年 9 月 22 日
日経エレクトロニクスセミナー
CEATEC JAPAN 2011
題と今後の展望」
出展者セミナー
「マルチコア時代のハード・ソフト開発、高
スマートフォン&タブレット
2011
速・低消費電力化の勘所」
2010 年 1 月 29 日
冬
2011 年 10 月 4 日
2011 年 12 月 15 日
■展示会出展による販路開拓:9件
No.
展示会名
会期
会場
1
CEATEC JAPAN 2010
2010 年 10 月 6 日~9 日
幕張メッセ
2
Embedded Technology 2010
2010 年 12 月 1 日~3 日
パシフィコ横浜
3
2011 International CES
2011 年 1 月 6 日~9 日
米国ラスベガス
4
EDSFair 2011
2011 年 1 月 27 日~28 日
パシフィコ横浜
5
ESEC2011
2011 年 5 月 11 日~13 日
東京ビッグサイト
6
IFA2011
2011 年 9 月 2 日~7 日
独国ベルリン
7
CEATEC JAPAN 2011
2011 年 10 月 4 日~8 日
幕張メッセ
8
Embedded Technology 2011
2011 年 11 月 16 日~18 日
パシフィコ横浜
9
2012 International CES
2012 年 1 月 10 日~13 日
米国ラスベガス
24
この報告書には、委託業務の成果として、産業財産権等の対象となる技術情報(未出願又は未公開の産
業財産権等又は未公開論文)、ノウハウ等の秘匿情報が含まれているので、通例の取扱いにおいて非公
開とする。ただし、行政機関の保有する情報の公開に関する法律(平成11年法律第42号)に基づく
情報開示請求の対象の文書となります。
25
Fly UP