Last Update 2023/04/17

携帯機器に広く使用されるCPUのアーキテクチャから開発事例まで
ARM9/11/XScaleハンドブック

Interface編集部 編
B5判 256ページ
定価2,640円(税込)
JAN9784789849876
2010年9月1日発行
[品切れ重版未定2023.4.30] ARM9/11/XScaleハンドブック
大変恐縮ですが,こちらの商品は品切れ重版未定となりました.

 Webブラウジング可能な携帯電話や携帯情報端末など高性能な携帯機器では,低消費電力でありながら高性能なCPUが要求されます.このような分野に使われる代表的なCPUとして,ARM9,ARM11,XScaleなどのARM系プロセッサが挙げられます.これらのCPUにはMMU(Manned Maneuvering Unit)が搭載されており,LinuxやWindows CEなどの大規模OSも実行することが可能です.
 本書では,ARMアーキテクチャの基礎知識からARM926をベースにMMUやキャッシュの制御方法について詳しく解説します.後半ではARM9,ARM11,XScaleの各コアを搭載した各社のCPUをいくつか取り上げ,それぞれのCPUボードの設計事例やクロックやDRAMの初期化例,基本的なサンプル・プログラムの作成事例などについて解説します.
目次

第1部 ARMアーキテクチャ解説編

 ARMアーキテクチャの基本からARM9/ARM10/ARM11ファミリの紹介まで
第1章 ARMアーキテクチャ詳解
 1 ARMプロセッサの概要
 2 ARMアーキテクチャとプログラマ・モデル
 3 ARMプロセッサの各種機能
 4 ARMファミリの特徴(インプリメンテーション)
 コラム1 ARMのビジネス・モデル
 コラム2 ARMプロセッサはどこで買える?

 ARMの基本命令からThumb,Jazelle,マルチメディア命令まで
第2章 ARM命令セットの詳細
 1 ARM命令セットの特徴
 2 ARM基本命令セットの概要
 3 ARM拡張機能,および命令セットの概要

 仮想記憶だけじゃない.組み込みシステムのセキュリティ強化に応用できる
第3章 MMUのメモリ保護機能を使ったプログラミング
 1 MMUとは何か
 2 ARMのアドレス変換
 3 アクセス保護の詳細
 4 データ・キャッシュのアルゴリズム
 5 TLB(Translation Lookaside Buffer)
 6 ARMv6での拡張機能
 7 プログラム例
 コラム1 ARMアーキテクチャのMMUとデータ・キャッシュの関係

 MMUが使えるようになったら次はキャッシュを制御してみよう
第4章 CPU性能を引き出すキャッシュ制御プログラミング
 1 キャッシュ制御の基本
 2 ARM926のキャッシュの特徴
 3 ARM926のキャッシュ操作事例
 コラム1 Dhrystone(ドライストーン)ベンチマークとは?


第2部 ARM9プロセッサ編


 PC/104バスによる拡張も容易な組み込み向けボードArmadillo-9
第5章 Cirrus Logic EP9315搭載評価ボードの概要と活用方法
 1 Armadillo-9のハードウェア構成
 2 Armadillo-9のソフトウェア構成
 3 組み込み機器向けディストリビューションatmark-dist
 4 atmark-distに含まれないソフトウェアのポーティング

 ARM920Tコア搭載ネットワーク機器向けプロセッサの使い方
第6章 Cirrus Logic EP9307のメモリ・コントローラとブート手順
 1 EP93xxシリーズとEP9307
 2 EP9307の電源およびクロック周辺
 3 EP9307のメモリ・コントローラ
 4 EP9307のブート手順
 5 EP9307の割り込みコントローラ
 6 EP9307のコプロセッサ“MaverickCrunch”
 7 LCDコントローラとグラフィックス・アクセラレータ
 コラム1 Armadillo-200シリーズ

 ARM926EJ-Sコア内蔵CPU搭載TOPPERS対応評価ボードの使い方
第7章 Digi International NS9360と評価ボードAZ9360MBの概要
 1 小型CPUボードAZ9360MBの概要
 2 NS9360 CPUの概要
 3 小型CPUボードAZ9360MBの詳細
 4 AZ9360MBでTOPPERS/JSPを動作させる
 コラム1 NET+ARMベースのネットワーク・ソリューション

 Coffee Break 1 ARMコアのいろいろ

 ARM926EJ-SコアCPU搭載Linux&Android対応評価ボードの使い方
第8章 Freescale i.MX25シリーズ概要とArmadillo-400の使い方
 1 i.MX25シリーズの概要
 2 i.MX25の電源およびクロック
 3 i.MX25のメモリ・コントローラ
 4 i.MX25の起動モード
 5 i.MX25の電力管理
 6 i.MX25の信号マルチプレクス
 7 i.MX257搭載CPUボードArmadillo-400シリーズ

 Coffee Break 2 そのほかのARM9コアCPU

 リアルタイム・ビデオ・エンコーディング機器開発を例にした
第9章 Freescale i.MX27採用画像処理システムの開発事例
 1 クロックとリセット系統の設計
 2 電源とI/O電圧
 3 メモリとブート・モード
 4 内蔵周辺機能
 コラム1 i.MX27ファミリについて

 LCDコントローラやカメラ・モジュールもつなげられる
第10章 Atmel AT91SAM9シリーズとAT91SAM9260の使い方
 1 AT91SAM9シリーズ概要
 2 SAM9シリーズのシステム・コントローラ
 3 システムのブート手順
 4 SAM9とSAM7の主要周辺機器の違い
 5 MCIインターフェースの使い方
 6 ISIインターフェースの使い方
 7 MCIとISIを使った画像取り込み&SDカード保存システム

 ARM926EJ-Sコア+フラッシュROM&RAM内蔵1チップ・マイコン
第11章 Atmel AT91SAM9XEシリーズ搭載評価ボードの設計と使い方
 1 ARM9 CPUカードのハードウェア
 2 ARM9 CPUカードの初期化ルーチン
 3 ARM9 CPUカード対応サンプル・プログラム

 シリアル・コントローラやGPIOを直接制御してみよう
第12章 Marvell ARMプロセッサ搭載 玄箱PROの活用事例
 1 玄箱PROとU-Boot
 2 玄箱PROのハードウェアとソフトウェアの準備
 3 プログラムのコンパイルと実行
 4 U-Bootのサンプル・プログラムhello_worldのコンパイル
 5 シリアル・ポートのレジスタを操作してみる
 6 汎用I/Oを使ってみる

 NXP Semiconductors社製LPC3131やCirrus Logic社製EP9302など
Appendix そのほかのARM9コア搭載CPU評価ボード
 1 NXP LPC3131搭載評価キット
 2 Freescale i.MX25搭載評価キット
 3 Cirrus Logic EP9302搭載評価ボード
 4 Atmel AT91SAM9261搭載評価ボード
 コラム1 ARM9対応低価格JTAGデバッガ


第3部 ARM11プロセッサ編


 ARM11コア搭載CPUモジュールにビデオ/オーディオ/USBなどを拡張する
第13章 Freescale i.MX31搭載CPUモジュール対応拡張ボードの設計
 1 ARM11コア搭載CPUモジュール「Armadillo-500」とは?
 2 A500 CPUモジュールの概要
 3 A500を拡張する


第4部 XScaleプロセッサ編


 高性能携帯端末で使われるXScaleプロセッサ
第14章 Marvell PXA310の特徴と周辺機能の概要
 1 PXAシリーズの歴史
 2 XScaleコア概要
 3 クロックおよび電源制御
 4 起動シーケンスおよびブートROM
 5 メモリ・コントローラ
 6 I/Oポートおよびピン設定と割り込み制御
 7 各種周辺機能の概要
 コラム1 Marvell社最新CPU ARMADAシリーズ
 コラム2 PXA310開発用ツール

 初代XScaleのクロックや電源,メモリ,内蔵機能の概要
第15章 Marvell PXA25x/PXA26xアプリケーション・プロセッサ紹介
 1 XScaleマイクロアーキテクチャ概要
 2 クロックおよび電源制御
 3 メモリ・コントローラ
 4 I/Oポート
 5 割り込み制御
 6 DMAコントローラ
 7 LCDコントローラ
 8 シリアル・インターフェース
 9 MMC/SDコントローラ

 PXA250搭載評価ボードを使ったサンプル・プログラムの紹介
第16章 XScaleプロセッサのプログラミング事例
 1 外部メモリの初期化例
 2 タイマ割り込みプログラム
 3 プッシュ・スイッチによる外部割り込みプログラム
 4 シリアル通信プログラム
 5 RAMテスト・プログラム
 6 CPUモード&キャッシュ設定プログラム