連載
» 2009年01月29日 00時00分 UPDATE

−ザ・組み込み−ソフトウェアのハードウェア化(6):追い出したソフトウェアを“ハードウェア化”する準備 (1/4)

本来マイコンで処理しなくてもよいソフトウェア部分を、FPGAを用いてハードウェア化する。まずは開発環境の準備からだ!!

[鳥海佳孝 設計アナリスト,@IT MONOist]

 前回「『これって本来マイコンがするべき仕事なの?』に注目」では、マイコンで本来コントロールしなくてもよいと思われるソフトウェア部分を検討し、それに伴うソフトウェア部分の書き換えを行いました。今回からは、追い出したソフトウェア部分を実際にハードウェア化していきたいと思います。

 まずは、追い出したソフトウェア部分、つまりハードウェア化する部分を搭載するためのFPGAボードの選定から行いましょう。

FPGAボードの選定

 以下に、本連載で使用するFPGAボードの仕様・条件を示します。

  • 安価であること。
  • マイコンボード(AKI−H8/3069F)と接続できるようなI/Oを持っていること。
  • スイッチやLED、LCDなどのI/Oができるだけ豊富に搭載されていること。
  • FPGAの設計データをダウンロードする際にUSB経由でできること。
  • USB経由でダウンロードする際に特別なダウンロードケーブルを必要としないこと(特別なダウンロードケーブルが高価なため)。
  • ホストマシンがLinuxなので、その上で無償の開発環境が動作すること。
  • Linux上からFPGAデータをダウンロードできること。

 今回はこれらの要求を満たすFPGAボードとして、ザイリンクス社の「Spartan-3E スタータ キット」を選択しました(たまたま所有していたということもあり、筆者の独断と偏見で選定しました)。

Spartan-3E スタータ キット 画像1 Spartan-3E スタータ キット
http://japan.xilinx.com/products/devkits/HW-SPAR3E-SK-US-G.htm

 また、Spartan-3E スタータ キットとほぼ同じスペックの以下2つのFPGAボードも紹介しておきます。もし、Spartan-3E スタータ キットが手に入らなければこちらを利用してください。いずれも2万円前後でザイリンクス社の販売代理店から入手可能です。

「Spartan-3AN スタータ キット」
「Spartan-3A スタータ キット」


開発環境の準備

 それでは、開発環境を入手して、ホストPC(KOHJINSHA SA5SX12A)にインストールすることからはじめましょう。ザイリンクス社の無償ISE WebPACK ソフトウェアのページにアクセスして、「ISE WebPACK ソフトウェアをダウンロード」のリンクから開発環境をダウンロードします。なお、今回使用する開発環境「ISE WebPACK」をダウンロードするにはザイリンクス社のアカウントが必要です。アカウントを持っていない場合は「ザイリンクス アカウントをお持ちでない方」の[アカウント作成]からユーザー登録をしてください。

 作成したアカウントでログインし、画面の指示に従い情報を入力するとダウンロード可能なツールの一覧が表示されます。ここで、「ISE WebPACK 10.1 (Free Download)」にチェックを入れて、[Next]ボタンを押してください。すると以下のような画面が表示されますので、画面上部のRegistration IDをメモし(インストール時に必要)、[DOWNLOAD]ボタンを押してください(画面1)。

ISE WebPACK(10.1_Webinstall.zip)のダウンロード 画面1 ISE WebPACK(10.1_Webinstall.zip)のダウンロード

 ファイル「10.1_Webinstall.zip」のダウンロードが完了したら、任意のディレクトリ(今回は、/home/tori/Xilinx)に展開します。そして、以下のコマンドで展開先までディレクトリを移動して、インストールを行います(インストールに際してはroot権限で行ってください)。

# cd /home/tori/Xilinx
# ./setup 

 ISEのインストーラーが起動したら、基本的には[Next]ボタンで先に進めてください。途中、Registration IDを入力する画面「Enter Registration ID」がありますので、先ほどメモしたIDを入力してください。また、「Select Products to Install」の画面が表示されたら、少なくとも「Standalone Programming Tools」と「ISE Design Tools」の2つを選択してください。

 続く「Accept Software license」の画面では、「I accept the terms of this software license.」にチェックを入れてください。「Select Destination Directory」の画面では、インストール先(/opt/Xilinx/10.1)を指定します。

 さらに、「WebInstall Options」の画面でインターネットの接続形態の指定(プロキシを介している場合は、プロキシサーバの指定)をしてください。そして、「Select Installation Options」の画面で、画面2に示す項目にチェックが入っていることを確認し、[Next]ボタンを押してインストーラを進めます。

ISEのインストール(1) 画面2 ISEのインストール(1)

 画面3が表示されたら「Launch XilinxUpdate」のチェックを外してください(本連載では不要としますが、もし、常に最新バージョンにしておきたい場合はチェックを入れておいてください)。

ISEのインストール(2) 画面3 ISEのインストール(2)

 最後に、「Begin Installation」の画面が表示されますので、内容を確認して[Install]ボタンを押してください。これでインストールが開始されます。

※注:現在公開されているISE WebPACKは、いままでのバージョンと異なり、Registration IDを入力しなければならないのと、インストールに際してはネットワークに接続されていなければならないので注意してください(ネットワークインストールです)。


 インストールが完了したら、再起動して以下のコマンドで「/dev/windrvr6」というファイルが存在するかどうかを確認してください。

# ls -l /dev/windrvr6  

 さらに、ファイル「/etc/rc.local」の中に以下のコマンドが含まれているかどうかを確認してください。

/lib/modules/2.6.16-0vl76.33/kernel/drivers/misc/install_windrvr6 windrvr6 no
/lib/modules/2.6.16-0vl76.33/kernel/drivers/misc/install_xpc4drvr
chmod 666 /dev/windrvr6  

 「/etc/rc.local」に書かれたコマンドによって、「/dev/windrvr6」のデバイスドライバがシステム起動時にロードされます。うまくロードされているかどうかは、以下のコマンドで確認できます。

# lsmod | grep windrvr6
windrvr6              168032  0  ←windrvr6が見つかればOK 

 もし、「/dev/windrvr6」が存在しない場合や、上記で確認したドライバがロードされていない場合は、展開したISEのインストールディレクトリ下から、以下のコマンドを実行します。

# cd /home/tori/Xilinx/bin/lin/install_script/install_drivers
# ./install_drivers 

 再起動後、前述の方法で「/dev/windrvr6」の存在やドライバがロードされているかどうかを確認してください。

       1|2|3|4 次のページへ

Copyright© 2017 ITmedia, Inc. All Rights Reserved.