第 6 章

ARMコアの導入の仕方からシステムLSIの設計まで

システムLSI設計をするためのARMプロセッサ・コアの選び方
丹羽清司
ARM といえば，システム LSI 設計に使われるプロセッサ最終製品の目標仕様から，その中に組み込まれるシステIP（Intellectual Property）コアだということは知られ

ム LSI への要求が決まってきます．その要求はさまざまなている．ここでは，システム LSI 設計で使う上で理解し要因間のトレード・オフによって絞られていきます．表 2ておかなくてはならない ARM コアの基礎事項を，その開に示すように，システム LSI 仕様の重要な三つの要素（テ発環境とともに紹介する．ARM コアの導入からシステムクノロジ，消費電力，ゲート規模）がトレード・オフのパLSI の設計まで，段階を追って解説する．

ラメータになります．

（編集部）

英国 ARM 社からは，CPU コアが使用される状況を考慮

1．ARM コアを含むシステム候補の選定して，系統的なシリーズが提供されています．想定される主な用途と，対応する主な CPU コアの種類を表 3 に示しまシステム LSI を設計しようとするとき，まずどのような用途を目的としたシステムを LSI 上に実現するのかを考えす．ARM 社は，どのような用途にはどのような機能が重要になるかを検討して CPU コアに実装しています．
表 3 にCPU コアに接続するバスの種類を示します．CPUます．その上で，どの CPU が目的とするシステムに有効かを検討します（図 1）．
表1

実装条件の事例（処理能力，ハードウェア，ソフトウェア）● 仕様と実装のトレードオフ
表 1，表 2 に目標仕様に向けた実装および性能に関して考慮する項目を示します．実際にはもっと詳細に検討されると予想されますが，ここでは概略の項目を示します．

必要あるいは制約検討事項

処理能力

ビデオ CODEC リアルタイム処 アルゴリズム変更をOS で管理する
理．複数のCODEC アルゴリズ か，変更ごとに異なるソフトウェ
ムに対応．
アに入れ替えるか．

ハードウェア

最終製品の大きさ，ボード・サ 部品点数の削減，標準 LSI かシス
イズ，消費電力（電池使用の有 テム LSI かの選択，OS に対応する無），上記処理能力への対応． かそうでないかで CPU を選択．

ソフトウェア単独のアプリケーション実行か OS
上記処理能力及びハードウェアを使った操作および処理にするか．
制約を満たすこと，コード・サ
候補 CPU 向けにコンパイルしたイズ制限など．
コードのサイズ．実行サイクル数．

表 2 目標性能：スピード，消費電力，製品の大きさ（使用条件，設計・製造条件）
製品での条件（例） 製品（システム）仕様

図1

システムとして何をさせたいか

Keywordシステム LSI 仕様

スピード CIF 画像実時間圧縮 クロック周波数

テクノロジ ？μ m

消費電力 電池駆動

ボードでの消費電力

消費電力

大きさ

ボードでの実装面積

ゲート規模 ？ gate

手のひらサイズ？ mWシステム LSI，テクノロジ，消費電力，ゲート規模，ハード・マクロ，ソフト・マクロ，ソフトウェア実行・検証，システム・レベル検証，SPIRIT，DSM

Design Wave Magazine 2008 June89

表3

CPU（種類）とバス＋ペリフェラル（AHB，AXI）事例（概略）

表4

候補システムの例： MPEG4 ビデオCODEC

主な用途

ARM CPU

バスなど

想 定

アプリケー
ション

ARM926，ARM1176,
ARM11-MPCore，Cortex-A

AHB，
AXI

OS を使用する
ような環境

ARM7

AHB

単独では難しいCPU か画像処理
エンジン追加リアルタイム ARM7，ARM946，ARM156,
組み込み処理 Cortex-R

AHB，
AXI

高速実時間処理

ARM9

AHB

高解像度のエンコードに余裕がない

Encode 処理
ハードウェア追加

マイクロコン
ARM7，Cortex-M
トローラ

AHB

コスト重視，
小規模

ARM11

AXI

高解像度に十分対応

この用途では十分

AXI

超高解像度またはほかの処理追加可能

ほかの用途も追加可能

CPU

Cortex-A

バスなど

性 能

備 考の処理能力を十分に生かすためには，システムの状況にそこで，ARM CPU コアのライセンスを持っている半導よってバスの性能も重要になります．
例えば，検討中のシステムLSI がMPEG4 ビデオCODEC

体メーカは，多くの場合ソフト・マクロをあらかじめ設計の機能を必要としているとします．この場合どの CPU をしてハード・マクロを作成しておき，システムLSI 設計の際選択するかについて，想定される検討内容を表 4 に示しまに，そのまま使うという手法（図 2）を取っているようです．
コア・ベース設計によって得られた性能の事例を，表 5す．
システム LSI に搭載可能なゲート規模が大きいため，さに示します．

まざまな可能性があります．システム LSI 上で ARM CPUにどのような役目をさせるかについても，トレード・オフ● 設計検証と開発期間のトレード・オフ
システム LSI は機能面での拡充がますます進んでいます．の要因になります．
ARM CPU コアそのものの性能はどの程度でしょうか．

どれだけの仕様をシステム LSI に盛り込むかを決めるには，CPU コアだけでは性能を見積もることができません．どのソフトウェア面での検討が重要です．一方，LSI で実行さ半導体メーカのどのテクノロジを選択するかによって性能れるソフトウェアが大きくなっていること，および製品寿が異なります．ARM CPU コアの初期の頃は，物理的レイ命が短くなってきているという状況があります．従って，アウト実装を設計済みの CPU コア（ハード・マクロ）を提設計の早い段階からソフトウェアの検討および開発を実施供していました．ハード・マクロでは半導体メーカの製造することが求められています．
ソフトウェアの早期検討は，すなわち早い段階におけるテクノロジに合わせ込むことで，性能が決まってきます．
最近の ARM 社は，レイアウトされていない CPU コア

仕様内容の取捨選択につながると考えます．

（ソフト・マクロ）を提供しています．ソフト・マクロの図 3 に示すように，ハードウェア設計と並行してソフト場合，設計と製造テクノロジの双方の要素で性能が決まりウェア開発が可能になれば，設計期間を大幅に短縮できまます．

す．また設計の早期段階におけるシステム実装とシステム検証において，ソフトウェアによる検討が実施されれば，コア・ベースSOC仕様内容の早期見直しが可能になります．

固定コア

実行可能な仕様を引き渡す¡早期のデザイン・サイクルでソフトウェア開発が可能に¡シリコン入手前にシステムの検証が可能に

図2
コア・ベース設計

表5
C P U コアのみの性能
ARM7TDMI-S（Speed Optimize）

90

要求定義

テクノロジ（μ m）

0.18

0.130.09

システム
実装

システム
検証

ソフトウェア・ドライバ

100

184

245

ダイ・サイズ（mm2）

0.62

0.35

0.21

ハードウェア/ソフトウェア開発の並行化が可能になるポイント

消費電力（mW/MHz） 0.28

0.180.09

図3

設計・開発フロー

シリコン
実装

アプリケー
ション開発

機能実装

動作周波数（MHz）

Design Wave Magazine 2008 JuneOS
ポーティング

機能検証

ネット・
リストから
GDS II