ソフト・マクロのCPUでLinuxを動かす(前編) ――FPGAベースのボード・コンピュータを設計する

川岡 圭一

tag: 組み込み 半導体

技術解説 2004年8月16日

3)SDRAM

 Linuxは従来の組み込み機器用OSと比べて,多くのデータ・メモリを必要とします.このため,16MバイトのSDRAMをFPGAの外部に置きました.16Mバイトの容量があれば,データ収集装置などのようなアプリケーションや,一度に多数のプロセスを動作させる必要のあるLinuxアプリケーションにも対応可能であると考えています.

 FPGAとのインターフェースとして,OPB SDRAMコントローラ(以下,「OPB SDRAM」)を使用しています.OPB SDRAMでは,バス幅,自動リフレッシュ周期,CASレイテンシなどを指定できます.バースト長は,32ビット幅のデータ・バスのアクセスに合うように自動調整され,出力されます.例えばSDRAMのデータ・バスが16ビットの場合,2バーストになります.

 OPB EMCとOPB SDRAMのアドレス/データ・バスは,共通のバスを使用する構成としました.これは,FPGAとしては比較的小型のパッケージ(256ピンBGA)を使用しており,メモリ・インターフェースのために必要となるI/Oピンの数を抑えたかったためです.

 アドレス・バスとデータ・バスの信号の扱いには注意が必要です.OBPでは,MSBをビット0と表現します.しかし,多くの部品ではビット0はLSBとして扱われています.信号名の数字を合わせてしまうと,正しく動作しないということになります.このため,信号名の数字を入れ替えて使用しなければなりません(図3)

f03_01.gif
図3  アドレス・バスとデータ・バスの信号の扱い
OBPでは,MSBをビット0と表現する.多くの部品では,ビット0はLSBと表現している.このため,信号名の入れ替えが必要.

組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! 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日