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

川岡 圭一

tag: 組み込み 半導体

技術解説 2004年8月16日

● LANコントローラ

 ネットワーク接続機器を考慮したボードでは,LAN接続機能(100Base-TX/10Base-T対応)が必須です.

 LAN接続を実現するには,二つの方法が考えられます.

  • FPGA内にEthernet MAC回路を搭載し,FPGAの外にPHYチップを乗せる.
  • MAC/PHYが一体となったLANコントローラLSIを外付けする.

 FPGA内にEthernet MAC回路を搭載する場合,当然ですが,MACを独自に開発するか,市販のIPコアを利用することになります.設計期間の短縮を目ざすためには市販のIPコアを利用することになりますが,MAC機能は比較的高価という問題がありました.独自に設計する場合は,ハードウェアのみならずソフトウェア(OSのデバイス・ドライバ)のことも考える必要があり,手間がかかります.

 MAC回路を内蔵するとFPGAのゲート規模が大きくなるという問題もありました.FPGAの規模が大きくなってしまうと,価格の面で不利になります.また,ユーザの利便性に配慮して,無償のFPGA設計ツール「ISE Web PACK」で設計できるようにしておきたいところです.このためには,40万ゲートのSpartan-3より小さい品種ということになります.

 LANコントローラLSIを外付けするのであれば,FPGA 内の回路が大きくなることもなく,Linuxのデバイス・ドライバもすでに存在しています.このような検討を行った結果,FPGAの外部に100Base-TX/10Base-T対応のLANコントローラLSI(MAC/PHY)を接続することにしました.

 LANコントローラLSIには,米国Standard Micro-systems社(SMSC)の「LAN91C113」を使用しました.本LSIは国内の製品にも多数使用されているようです.LANというほかのコンピュータとインターフェースになる部分に対して,できるだけ世の中で広く採用されているメーカの製品を使用することで,なるべく障害を少なくしたいと考え,本LSIを選択しました.

 例えば,あるネットワークで通信エラーが発生したとき,通信相手の問題か,自分自身のソフトウェアの問題なのかという原因の切り分けが必要です.このようなときに,世の中で広く採用されているLSIとドライバを使用していれば,原因を追求しやすくなると考えられます.組み込み用途では,通信相手もカスタム設計された製品の場合が多いので,エラー発生時への配慮も重要です.

組み込みキャッチアップ

お知らせ 一覧を見る

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