Armadilloを使った組み込みシステム開発

3.1. Armadilloシリーズの概要

「Armadillo」は、株式会社アットマークテクノが開発、販売しているARM CPUを搭載した組み込み用途向けの小型汎用ボードコンピューターのシリーズ名称です。

動物のアルマジロ(Armadillo)はスペイン語の「armado (英:armed)」に縮小辞[18]「illo」を付けた「武装した小さなもの」が語源とされていますが、ボードコンピューターのArmadilloは「ARM CPU搭載の小さなもの」との意味になっており、開発コードネームがそのまま製品シリーズの名称として使われています。

[注記]Armadillo のロゴ

図3.1「Armadillo ロゴ」がArmadilloシリーズのキャラクタです。アルマジロの上にペンギン(Tux)が乗っています。TuxはLinuxの公式マスコット[19]ですので、Armadilloというハードウェアの上にLinuxというソフトウェアが載っていることを表します。

Armadillo ロゴ

図3.1 Armadillo ロゴ


[注記]ARMとSoC

ARMプロセッサは、英ARMが開発する32bit RISCプロセッサです。同クラスの処理能力を持つ他のプロセッサと比較して、低消費電力で動作するという特長を持ちます。

任天堂のNintendo DSや米 AppleのiPhone、iPadなど近年話題になったモバイルデバイスの多くがARMプロセッサを採用するなど、多くの身近な機器で使用されています。特に携帯電話で圧倒的なシェアを持ち、携帯電話1台にARMプロセッサ搭載チップが平均2.6 個使用されている[20]と言われています。

ARMは、ARMプロセッサのアーキテクチャを各社にライセンス販売し、自社ではCPUを生産しないというビジネスモデルを取っています。ARMからライセンスを供与された半導体メーカーは、ARMコアにコンピュータとして必要な周辺機能を追加し、SoC(System on Chip)としてパッケージ化して製造、販売します。

Appleや任天堂のほか、Cirrus Logic、Freescale、Intel、Marvel、Texas Instrumentsなど多数の半導体メーカーがARMからライセンスを受けています。また、これまで独自アーキテクチャのプロセッサを製造してきた、ルネサス エレクトロニクスなど日本の半導体メーカーもARMプロセッサを採用したSoCを製造しています。

初代Armadillo(HT1070)が2001年11月に発売されてから、Armadillo-400シリーズが2010年に発売されるまで、毎年のように新製品を発表してきました。表3.1「Armadilloシリーズの発表時期とCPU」にArmadilloシリーズの一覧表を示します。

表3.1 Armadilloシリーズの発表時期とCPU

製品名 発表時期 LSIメーカー/型番 CPUコア/動作クロック

Armadillo (HT1070)

2001年 11月

Cirrus Logic/EP7312

ARM720T/74MHz

Armadillo-J

2003年 10月

Digi International/NS7520

ARM7TDMI/55MHz

Armadillo-9

2004年 7月

Cirrus Logic/EP9315

ARM920T/200MHz

Armadillo-210

2005年 11月

Cirrus Logic/EP9307

ARM920T/200MHz

Armadillo-220/230/240

2006年 4月

Cirrus Logic/EP9307

ARM920T/200MHz

Armadillo-300

2006年 11月

Digi International/NS9750

ARM926EJ-S/200MHz

Armadillo-500 開発セット

2007年 5月

Freescale/i.MX31[a]

ARM1136JF-S/533MHz[b]

Armadillo-500 FX 液晶モデル

2008年 11月

Freescale/i.MX31

ARM1136JF-S/533MHz[b]

Armadillo-440 液晶モデル

2010年 2月

Freescale/i.MX257

ARM926EJ-S/400MHz

Armadillo-420 ベーシックモデル

2010年 5月

Freescale/i.MX257

ARM926EJ-S/400MHz

Armadillo-460 ベーシックモデル

2011年 7月

Freescale/i.MX257

ARM926EJ-S/400MHz

[a] 初期モデルはi.MX31L

[b] 初期モデルは400MHz 動作


Armadilloシリーズは、大きく4つの流れに分類できます。1つ目は、外部拡張バスを持つ汎用製品群です。2つ目は、搭載するインターフェースを絞って小型、低価格な機能特化型の製品群です。3つ目は、無線LAN機能を有した製品の流れです。そして、4つ目の最新の製品群がタッチパネル搭載製品群です。

Armadillo シリーズ

図3.2 Armadillo シリーズ


汎用製品群の最初の製品は、Armadilloシリーズ最初の製品でもある初代Armadillo (HT1070[21]) です。初代Armadilloは、外部拡張バスとしてPC/104拡張バスを持った、汎用ボードとして設計されました。

初代Armadilloの流れを組むのがArmadillo-9です。USBホスト、VGA出力、CompactFlash、100Mbps対応LAN、ATAなど多くのインターフェースが追加され、より多くの用途に対応できるようになりました。

それをさらに発展させたのが、Armadillo-500シリーズです。Armadillo-500シリーズは、CPUやメモリというコア機能はArmadillo-500 CPUモジュールに集約し、拡張基板で機能を拡張するというコンセプトで設計されています。Armadillo-500開発セット付属の拡張基板(ベースボード)では、Armadillo-9と比べ USBホストがHigh-Speedになった他、ストレージとしてIDEの代わりにNANDフラッシュメモリとSDカードスロットが搭載されました。開発セット購入者にはベースボードの回路図が公開されており、自由にカスタマイズ可能です。周辺機能が自由に拡張可能という意味で、Armadillo-500は究極の汎用ボードといえるでしょう。

Armadillo-460は、Armadillo-9の後継モデルです。後述するArmadillo-440の基本機能に加え、PC/104バスを搭載した拡張性の高い製品です。

汎用性を追求した初代Armadilloの流れとは異なり、Armadillo-Jは、インターフェースをシリアルとLAN、GPIOのみに絞った機能特化型の製品です。組み込み機器では、インターフェースはこれで必要十分というケースも多々あります。また、機能を絞ることで、サイズと値段を抑えることができるため量産に適したモデルとなっています。

この流れは、Armadillo-200シリーズに受け継がれています。Armadillo-210は、Armadillo-Jと同様に、シリアル、LAN、GPIOしか持っていません。Armadillo-220は、それに加えて USBホスト機能を有しています。Armadillo-230は、USBの代わりにLANが二つあります。Armadillo-240は、シリアルを一つ少なくする代わりに、VGA出力を備えています。Armadillo-200シリーズとArmadillo-9はソフトウェア互換なので、機能が豊富な Armadillo-9で試作をおこない、量産は必要十分な機能を持ったArmadillo-200シリーズで、といった選択が可能になりました。

機能特化型の製品であるArmadillo-420は、Armadillo-220とピン互換で処理能力が約2倍になった製品です。また、Armadillo-200シリーズではNANDストレージはオプション品でしたが、Armadillo-420ではmicroSDスロットを標準搭載しており、使い勝手も向上しています。

無線LAN機能を有した製品としては、Armadillo-300があります。それまで、産業用の組み込み用途としてボード製品を提供する場合、長期供給保証の面から無線LAN機能を提供するのは、困難でした。Armadillo-300では、サイレックステクノロジー社から無線LAN モジュールの供給を受け、長期供給保証できる製品として提供可能になりました。

無線LAN機能は、Armadillo-WLANモジュールに受け継がれています。Armadillo-WLANモジュールは、SDIOまたはSPIホスト機能を持ったボートであれば接続可能なので、様々なボードに無線LAN機能を付加することができます。現在、Armadillo-500開発セット、Armadillo-500 FX液晶モデル、Armadillo-400シリーズが標準で対応しています。

Armadilloシリーズの最新の流れは、液晶付きのパネルコンピュータ向けの製品です。この流れの最初の製品は、Armadillo-500 FX液晶モデルです。Armadillo-500 FX液晶モデルは、5.7インチTFTタッチパネル液晶とオーディオ、SSDを搭載しており、パネルコンピュータ開発のプラットフォームとして活用できます。いち早く、Google社が発表した携帯電話用OSであるAndroidに対応したこともあり、大きな反響を呼びました。

Armadillo-440は、Armadillo-500 FX液晶モデルより小型にし、値段も抑え、より量産に適したパネルコンピュータプラットフォームとしての製品です。

Armadillo-400シリーズについては次章で詳しく紹介します。

Armadilloシリーズの詳しい仕様は、Armadillo開発者サイトのArmadillo シリーズ仕様比較[22]をご参照ください。

3.2. Armadillo-400シリーズ

Armadillo-420、Armadillo-440、Armadillo-460を合わせてArmadillo-400シリーズと呼びます。本書の内容の多くはArmadilloを使った開発全般に応用できるものですが、具体例はArmadillo-400シリーズを対象としています。本章では、Armadillo-400シリーズについて詳しく解説します。

3.2.1. Armadillo-400 シリーズの基本仕様

Armadillo-400シリーズは、Freescale社製ARM9プロセッサi.MX257、LPDDR SDRAM、NORフラッシュメモリを中心に、LAN、HighSpeed対応USB 2.0ホスト、microSD/SDスロット、GPIOといった組み込み機器に求められる機能を小さな基板面積に凝縮した、汎用CPU ボードです。Armadillo-420は、Armadillo-220の後継モデルです。Armadillo-220とピン互換を維持しながら、CPUクロック、RAM容量、フラッシュメモリ容量がそれぞれ2倍になっています。Armadillo-440は、Armadillo-400シリーズの基本機能に加え、液晶、タッチパネル、オーディオといったマルチメディア機能を拡張基板によって追加可能な製品です。Armadillo-460 は、Armadillo-9の後継モデルです。Armadillo-440の機能に加え、PC/104バスを搭載した拡張性の高い製品です。

Armadillo-400シリーズの基本仕様とブロック図を表3.2「Armadillo-400 シリーズ基本仕様」図3.3「Armadillo-420/440 ブロック図」図3.4「Armadillo-460 ブロック図」に示します。

表3.2 Armadillo-400 シリーズ基本仕様

Armadillo-420 Armadillo-440 Armadillo-460

プロセッサ

Freescale i.MX257 (MCIMX257)

CPUコアクロック

400MHz

RAM

LPDDR SDRAM: 64MByte

LPDDR SDRAM: 128MByte

フラッシュメモリ

NOR 16MByte

NOR 32MByte

本体基板サイズ

75.0mm × 50.0mm

90.2 × 95.9mm

電源電圧

DC3.1~0 5.25V

DC4.75V~5.25V

消費電力

約1.2W

使用温度範囲

-20~70℃ (ただし結露なきこと)


Armadillo-420/440 ブロック図

図3.3 Armadillo-420/440 ブロック図


Armadillo-460 ブロック図

図3.4 Armadillo-460 ブロック図


Armadillo-400シリーズは、拡張インターフェースに拡張基板を接続することで、機能を追加することができます。各製品の拡張インターフェースで追加可能な機能を表3.3「Armadillo-400シリーズ拡張インターフェース」に示します[23]

表3.3 Armadillo-400シリーズ拡張インターフェース

Armadillo-420 Armadillo-440 Armadillo-460

拡張インターフェース1 (CON9)

GPIO、UART、SPI、one wire、PWM、SDHC、Audio

拡張インターフェース2 (CON14)

GPIO、I2C、CAN

LCDインターフェース (CON11)

(なし)

GPIO、UART、I2C、Audio、LCD、Keypad

拡張バスインターフェース (J1/J2)

(なし)

信号配列PC/104バス準拠(16bit)


Armadillo-400シリーズの開発セットには、これらの拡張インターフェースに接続可能な拡張基板が付属します。Armadillo-420 ベーシックモデル開発セットには、拡張インターフェース2(CON14)に接続可能な「Armadillo-400シリーズ RTC オプションモジュール」が、Armadillo-440 液晶モデル開発セットには、LCDインターフェース(CON11)に接続可能な「Armadillo-400 シリーズ LCD拡張ボード」が付属します。開発セット購入者にはこれらの拡張基板の回路図が公開されており、オリジナルの拡張基板を作成する際に参考にすることができます。

Armadillo-420 ベーシックモデル、Armadillo-420 WLANモデル、Armadillo-440 液晶モデル、Armadillo-460 ベーシックモデルの見取り図、及びフラッシュメモリの標準メモリマップについて以下に示します。

Armadillo-420 ベーシックモデル見取り図

図3.5 Armadillo-420 ベーシックモデル見取り図


Armadillo-420 WLAN モデル見取り図

図3.6 Armadillo-420 WLAN モデル見取り図


表3.4 Armadillo-420 ベーシックモデル, Armadillo-420 WLAN モデル フラッシュメモリ メモリマップ

物理アドレス リージョン名 サイズ

0xa00000000xa001ffff

ブートローダー

128KB

0xa00200000xa021ffff

カーネル

2MB

0xa02200000xa0fdffff

ユーザーランド

13.75MB

0xa0fe00000xa0ffffff

コンフィグ

128KB


Armadillo-440 液晶モデル見取り図

図3.7 Armadillo-440 液晶モデル見取り図


Armadillo-460 ベーシックモデル見取り図

図3.8 Armadillo-460 ベーシックモデル見取り図


表3.5 Armadillo-440 液晶モデル, Armadillo-460 ベーシックモデル フラッシュメモリ メモリマップ

物理アドレス リージョン名 サイズ

0xa00000000xa001ffff

ブートローダー

128KB

0xa00200000xa021ffff

カーネル

2MB

0xa02200000xa1fdffff

ユーザーランド

29.75MB

0xa0fe00000xa1ffffff

コンフィグ

128KB


Armadillo-400シリーズの詳細な仕様については、「Armadillo-400シリーズハードウェアマニュアル」及び「Armadillo-400シリーズソフトウェアマニュアル」を参照してください。

3.2.2. Armadillo-400シリーズでできること

Armadillo-400 シリーズの特長として、ハードウェア、ソフトウェア両面でのカスタマイズの自由度が高い点が挙げられます。Armadillo-400シリーズでは、以下のことが実現できます。

  1. 様々なハードウェア機能を追加することができます
  2. オリジナルのアプリケーションを作成することができます
  3. 豊富なオープンソースソフトウェア資産を活用することができます
  4. Armadillo-400シリーズに標準対応した有償ソフトウェアを活用することができます
Armadillo-400シリーズでできること

図3.9 Armadillo-400シリーズでできること


3.2.2.1. ハードウェア機能の追加

Armadillo-400シリーズは、USBやLAN、シリアル(RS-232C)といった標準インターフェースを持っていますので、豊富な外部機器を接続することができます。また、前章でも述べたように、拡張インターフェースに拡張基板を接続することで、ハードウェア機能を追加することもできます。

Armadillo-400で使用可能なインターフェースの一覧を、表3.6「Armadillo-400シリーズで使用可能なインターフェース」に示します。Armadillo-400シリーズは標準のOSとしてLinuxを採用しており、これらのインターフェースに関するデバイスドライバはすべて提供されます。

表3.6 Armadillo-400シリーズで使用可能なインターフェース

インターフェース コネクタ i.MX25モジュール名 備考

シリアル RS-232Cレベル

CON3 (CON4)

UART2

標準で有効

CON19

UART4

CON11 AUD5と排他[a]

シリアル3.3V  レベル

CON9

UART3

標準で有効、CON11 UART3と排他

CON9

UART5

標準で有効

CON11

UART3

CON9 UART3、キーパッドの一部のピンと排他

CON11

UART4

CON11 AUD5、キーパッドの一部のピンと排他

LAN

CON2 (CON7)

標準で有効

CAN

CON14

CAN2

CON14 I2C2、PWM4と排他

USB2.0 ホスト HighSpeed

CON5下段(CON6)

標準で有効

USB2.0 ホスト FullSpeed

CON5上段

[b][c]

CON17(CON18)

[a]

SD/SDIO/MMC

CON9

eSDHC2

CON9 SPI3、CON9 AUD6と排他

microSD/SDIO/MMC

CON1

eSDHC1

[b]

SD/SDIO/MMC

CON1

eSDHC1

[a]

I2C マスター

CON11

I2C3

キーパッドの一部のピンと排他

CON14

I2C2

CON14 CAN2、PWM4と排他

SPI マスター

CON9

SPI1

CON9 UART3と排他、スレーブ最大2つ(CON9 PWM2使用時1つ)

CON9

SPI3

CON9 eSDHC2、CON9 MXC_OWIREと排他、スレーブ最大4つ(CON9 AUD6使用時2つ)

one wire

CON9

MXC_OWIRE

最大1ピン

CON9

GPIO

最大1ピン、CON9 SPI1と排他

PWM

CON9

PWM2

最大1ピン、CON9 SPI1のSS信号の1つと排他

CON14

PWM4

CON14 I2C2、CAN2と排他

I2S

CON9

AUD6

CON11 AUD5、CON9 eSDHC2、CON9 SPI3のSS信号の2つと排他

CON11

AUD5

CON9 AUD6、キーパッドの一部のピン、CON11 UART4と排他

16bit LCD

CON11

標準で有効

4線式タッチパネル

CON11

標準で有効

キーパッド

CON11

キーパッド用のピンを使用する他のインターフェースと排他、最大6×4

JTAG

CON10

標準で使用可

GPIO

CON9

標準で18ピン有効、CON9を使用する他のインターフェースと排他、最大22ピン

CON11

CON11を使用する他のインターフェースと排他、最大10ピン

CON14

CON14を使用する他のインターフェースと排他、最大2ピン

拡張バス

J1,J2

「PC/104拡張バス互換モード」と「ダイレクトCPUバスモード」があります[a]

[a] Armadillo-460の標準で有効

[b] Armadillo-420/440の標準で有効

[c] Armadillo-460で選択可能


USBインターフェースに接続できる機器のリストの一部を、以下に示します。Armadillo-400シリーズで動作可能な機器はこれがすべてではありません。動作確認が取れているデバイスは、Armadillo開発者サイトの動作デバイスのページ[24]に随時追加していますので、そちらもご参照ください。

  1. USB to Ehternet変換ケーブル
  2. USB無線LANアダプタ
  3. USB通信モジュール(G3モデム)
  4. USB to シリアル変換ケーブル
  5. USBメモリ
  6. USBマウス
  7. USBキーボード
  8. USBオーディオ
  9. USBディスプレイ
  10. UVC対応USBカメラ

3.2.2.2. オリジナルアプリケーションプログラムの追加

Armadillo-400シリーズは汎用ボードとして設計されているため、オリジナルのアプリケーションプログラムを作成し、それをArmadilloに組み込むことができます。ArmadilloはLinuxシステムですので、他のLinuxシステム用に作成したプログラムの多くは、ほとんど修正せずにArmadilloでも動作することでしょう。アプリケーションプログラムは、C/C++言語や各種スクリプト言語(シェルスクリプト、PHP、Perlなど)で作成することができます。Armadillo用に新しい言語を習得する必要はありません。

3.2.2.3. オープンソースソフトウェア資産の活用

近年の複雑、大規模化したシステムを構築するにあたり、すべての機能を自前で開発することは現実的ではありません。ネットワークプロトコルスタックや、ファイルシステムなど汎用的なソフトウェアコンポーネントにオープンソースソフトウェアを活用することで、オリジナルのアプリケーション開発にリソースを集中することができます。

Armadillo-400シリーズでは、標準の開発ディストリビューションとしてアットマークテクノ独自のAtmark Distを採用しています。Atmark Distは、多くのユーザーランドアプリケーション及びライブラリを含んでおり、これらを簡単にArmadilloに組み込んで動作させることができます。

また、Atmark Distの代わりに、Debian GNU/Linuxを選択することもできます。Debian GNU/Linuxには、オープンソースのアプリケーションやライブラリなどのパッケージが24,000個以上用意されており、これらの多くを簡単な手順でArmadillo-400シリーズで動作させることができます。

オープンソースソフトウェアを活用することにより、Armadillo-400シリーズで実現可能なソフトウェア機能の一覧を表3.7「Armadillo-400 シリーズで実現可能なソフトウェア機能一覧」に示します。このリストは実現可能な機能のほんの一部にすぎません。

表3.7 Armadillo-400 シリーズで実現可能なソフトウェア機能一覧

分類 機能 アプリケーション/ライブラリ名 実現方法

ネットワーク

Web(HTTP)サーバー

lighttpd

A[a]

Apache2

B[b]

FTPサーバー/クライアント

ftpd/ftp

A

Telnetサーバー/クライアント

telnetd/telnet

A

SSHサーバー/クライアント

OpenSSH

A

DHCPサーバー/クライアント

dhcpd/udhcpc

A

NTPサーバー/クライアント

ntpd/ntpclient

A

PPP

pppd

A

カメラサーバー

mjpg-streamer

A

HTTP/FTPクライアント

wget/ftpget/ftpput

A

Zeroconf

avahi

A

メール送信(SMTP)

mail

A

sendmail

B

ファイヤーウォール

iptables

A

SNMP

net-snmp

A

マルチメディア

オーディオ再生/録音

alsa-utils

A

MP3再生

mp3play

A

画像処理ライブラリ

libjpeg62/libpng12

B

データベース

データベース

sqlite3

A

ファイルシステム

VFAT(FAT32)

mkdosfs

A, C[c]

EXT2

mke2fs

A, C

EXT3

mke2fs

A, C

jffs2

flasherase

A, C

NFS

-

A, C

samba

samba

B, C

GUI

ウィンドウシステム

The KDrive Tiny X Server

A

X.org X Window System

B

GUI ツールキット

Gtk+ 2.0

B

言語

Perl

Perl 5.0

A

PHP

PHP 5.2

B

Python

Python 2.5

B

Ruby

Ruby 4.2

B

その他

シェル

ash

A

bash

B

[a] Atmark Dist に含まれます

[b] Debian パッケージに含まれます

[c] Linux カーネル機能に含まれます


さらに、Armadillo-440ではオープンソースのOSであるAndroidを選択することもできます[25]。Androidを使うことによって、更に可能性が広がります。

3.2.2.4. 有償ソフトウェアの活用

Armadillo-400シリーズではオープンソースソフトウェアだけではなく、Armadillo-400シリーズ用にポーティングされた、プロプライエタリなソフトウェアも使用することができます。オープンソースソフトウェアと組み合わせることで、更にシステム開発の効率を上げることができるでしょう。

表3.8 Armadillo-400シリーズで使用可能なソフトウェア製品

製品名 概要 参照

eSOL Flash Lite

Flash Player

http://armadillo.atmark-techno.com/adobe-flash-lite

Windows Embedded CE 6

組み込み OS

http://armadillo.atmark-techno.com/windows-embedded

Windows Embedded Compact 7

組み込み OS


3.3. Armadilloの開発環境

アットマークテクノではArmadillo用の標準開発環境として、クロス開発用ツールチェイン、クロスライブラリ、フラッシュライタ(ダウンローダー)などをインストールし、設定済みの環境をATDE(AtmarkTechno Development Environment) という名称で提供しています。ATDEを使うと、簡単に開発環境を構築することができます。

また、Armadillo用の開発ディストリビューションとして、Atmark Distというアットマークテクノ独自の開発ディストリビューションも提供しています。Atmark Distを使うと、ターゲットに最適なカーネルのビルド、ルートファイルシステムの作成、及び、それらをフラッシュメモリに書き込むためのイメージファイルの作成を自動でおこなうことができます。

ATDE及びAtmark Distを使った開発の手順は、7章開発の基本的な流れで説明します。

これらの開発に最低限必要なものは、すべて開発セット付属のDVDかArmadillo 開発者サイト[26]から無償で入手することができます。

さらに、有償のサードパーティ製ツールを活用することで、開発効率をあげることができます。

Windows上で動作する統合開発環境として、株式会社エスパークが提供するμSPax[27]を使用することができます。μSPaxを使用すると、グラフィカルな統合開発環境で、GUI/CUIアプリケーションの開発やリモートデバッグが可能になります。

また、ArmadilloではJTAG-ICEを使用することも可能です。Armadillo-400シリーズのJTAG インターフェース(CON10、8 ピン 2.54 mm ピッチ)を、ARM標準コネクタ(20 ピン、2.54 mm ピッチ)に変換するJTAG変換ケーブルをオプション品として販売していますので、サードパーティー製のJTAG-ICEを使用して、Armadillo-400シリーズのデバッグを行うことができます。

3.4. Armadilloを採用した場合の製品開発サイクル

Armadilloは、開発セットによる試作開発から多品種少量生産の量産品にまで対応できるよう、様々なサービスを提供しています。

図3.10「Armadilloを採用した場合の開発の流れ」 にArmadilloをプラットフォームとして採用した場合の開発の流れを示します。

Armadillo を採用した場合の開発の流れ

図3.10 Armadilloを採用した場合の開発の流れ[28]


3.4.1. 検討、試作

検討段階においては、まず、表3.6「Armadillo-400シリーズで使用可能なインターフェース」や「Armadillo-400シリーズ ハードウェアマニュアル」を参照し、必要な機能がハードウェア的に実現可能か検討します。

ハードウェア的に実現可能であれば、次はソフトウェアプラットフォームの選択をおこないます。Armadillo-400シリーズの場合は、OSとしてLinux システム(Atmark Dist または Debian GNU/Linux)、Windows Embedded CE 6.0、Windows Embedded Compact 7、Androidが選択できます。OSとしてLinuxシステムを採用した場合のGUI環境としてはX Window Systemや、その上で動作するGTK+、異なる種類の選択肢としてAdobe Flash Lite[29]であったり、μSPax[30]などといったものが候補になります。また、表3.7「Armadillo-400 シリーズで実現可能なソフトウェア機能一覧」に示したようなオープンソースソフトウェアを活用できないかも検討の価値があります。

ハードウェア、ソフトウェア的に実現可能であると判断できれば、試作に取りかかります。Armadilloは、1台から購入可能な開発セットと無償の開発環境があるので、すぐに試作開発を開始することが可能です。

3.4.2. 設計、開発

設計、開発段階においては、様々なサポートサービスを受けることができます。

無償で誰でもアクセス可能な情報源として、Armadllo開発者サイト[31]を運営しています。Armadillo開発者サイトには、マニュアル類、最新ソフトウェアのソースコードとすぐに動かすことができるイメージファイル、豊富な Howto、FAQや動作確認デバイス一覧などの情報が満載です。

Armadillo開発者サイトで探してみても疑問が解決しない場合は、Armadilloメーリングリスト[32]に質問することもできます。メーリングリストでは、数百人規模の読者がいるので、同じような問題に遭遇したことのある人から、ヒントが得られるかもしれません。また、これまでメーリングリストでやりとりされた内容はすべてアーカイブされ、検索できるようになっています。質問する前にアーカイブを検索することで、答えが見つかる場合も多々あります。

3.4.3. 量産

量産時への対応として、カスタマイズサービスを提供しています。カスタマイズサービスでは、フラッシュメモリへのユーザー指定のイメージ書き込み、コネクタの実装/非実装の選択、シリアルナンバーなどのシール貼り付け、ケーシング、梱包といったカスタマイズを Armadilloに施し、お客様へ納品します。

[注記]何台から量産?

量産といっても、対象とするものによって規模感がまったく異なるものです。Armadilloのカスタマイズサービスでは、1ロット50台以上を量産と定義し、サービスを適用することができます。

3.4.4. 保守

組み込みシステムを製造、販売する場合には、どのような保守サービスが受けられるかも重要なポイントです。

製品購入後にユーザー登録を行って頂いたユーザーに対しては、ハードウェアやソフトウェアに重要な変更(リビジョン変更、バグフィックス等)があれば、通知を行っています。ハードウェアの既知のエラッタ及びその対応については、リビジョン情報として常時公開しています。リビジョン情報はArmadillo開発者サイトからダウンロードできる他、開発セット付属のCD/DVDに収録されています。

また、アットマークテクノ製品は製品ポリシーとして、製品発売から5年間は製品を供給できるよう設計開発を行っています[33]。もし製造中止となる場合は、5ヶ月前にアナウンスを行います。

このように、量産後の保守に必要な様々な情報を提供しているため、Armadilloは安心して量産にお使い頂けます。



[18] 「小さい」「少し」といった意味を表す接辞のこと。http://ja.wikipedia.org/wiki/縮小辞

[20] ARM Ltd. 2010年度第2四半期業績報告http://www.jp.arm.com/pressroom/10/100728.html

[21] 初代Armadilloは梅澤無線電機株式会社と共同で開発が進められたため、HT1070という梅澤無線電機製品ラインナップとしての名称も持っています。

[23] Armadillo-400シリーズでは、一つのピンに複数の機能が割り当てられているため、これらの機能がすべて同時に使えるわけではありません。どの機能を使用するかは、ソフトウェアで選択します。

[28] カスタマイズサービスのケーシングは、Armadillo-420/440で対応可能です。

[30] エスパーク社μSPaxのご紹介のサイトhttp://uspax.espark.co.jp/

[33] 他の部品への置き換えや基板改版など対応方法が存在する限り、供給継続努力を行います。万一CPUなど置き換え不能な部品が製造中止となるなど、やむを得ない事由により調達できなくなった場合、5年の期間をまたず該当製品の販売を終了することがありますのでご了承ください。