「組み込み」ならではの基礎知識 ――スタートアップ・ルーチンからハードウェアまで

セサミアン3人組

tag: 組み込み

技術解説 2003年5月14日

 一方,一つの番地とやりとりできるデータ量は,データ・バスの信号線の本数を上限とした大きさになります.データ・バスにm本の線があれば,mビットの情報を一つの番地と1回でやりとりできます.

 CPUがデバイスから情報を読み出すときはリード信号を有効にします.また,CPUがデバイスに情報を書き込むときはライト信号を有効にします.

 CPUが接続されているデバイスに対してどのように読み書きするかのタイミング図を示します(図8-4)

 メモリ・マップドI/O方式のCPUは,すべてのデバイスをメモリとして扱います(つまり,部品としてのメモリICもI/Oもすべてメモリ空間に割り当てる).メモリ空間にアクセスするためには,メモリ・アクセス命令を使います.メモリ・アクセス命令には,メモリの内容を読み出す「リード命令」,メモリに書き込む「ライト命令」という2種類の命令があり,それぞれの命令に応じて,リード信号,ライト信号が有効になります.

 リード命令を実行すると,CPUはアドレス・バスで番地を指定して,リード信号を有効にします.これに対応して,アドレス・バスで指定されている番地につながれているデバイスがデータ・バスにその内容を置き,CPUはリード信号の立ち上がりタイミングでデータ・バスの内容を取り込みます.ライト命令を実行すると,CPUはアドレス・バスで番地を指定して,データ・バスに書き込みたい内容を置き,ライト信号を有効にします.アドレス・バスで指定されているデバイスは,ライト信号の立ち上がりでデータ・バスの内容を取り込みます.

 メモリがつながっている番地と区別するために,I/Oがつながっている番地を「I/Oポート」,もしくは単に「ポート」といいます.コンピュータが操作する論理世界とデバイスがつながっている現実世界をつなぐ場所をポート(港)とは,よく言ったものです.

f08_04.gif
〔図8-4〕CPUによるデバイスの読み書きのタイミング図
(1)デバイスからデータを読み出すときは,CPUがアドレス・バスに読みたい番地を出力し,リード信号を有効にする.指定された番地の内容をデバイスがデータ・バスに置く.CPUは,リード信号線の立ち上がりタイミングで,データ・バスの内容を取り込む.(2)デバイスにデータを書き込むときは,CPUがアドレス・バスに書き込む番地を出力し,データ・バスに書き込むデータを置いて,ライト信号を有効にする.デバイスは,ライト信号の立ち上がりでデータ・バスの内容を取り込む.

組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! FPGAマガジン No.12『ARMコアFPGA×Linux初体験』好評発売中

FPGAマガジン No.11『性能UP! アルゴリズム×手仕上げHDL』好評発売中! PDF版もあります

PICK UP用語

EV(電気自動車)

関連記事

EnOcean

関連記事

Android

関連記事

ニュース 一覧を見る
Tech Villageブログ

渡辺のぼるのロボコン・プロモータ日記

2年ぶりのブログ更新w

2016年10月 9日

Hamana Project

Hamana-8最終打ち上げ報告(その2)

2012年6月26日