SUZAKUを使って、EDK(評価版)の動作確認をします。
SUZAKUのデフォルトにGPIOを追加して、単色LEDを点灯させるアプリケーションを作ります。
GPIOをOPBバスに接続し、GPIOの出力を単色LEDに接続します。
(suzaku_starter_kit_guide_fpga_ja参照)
SUZAKUのデフォルトは、開発用CDROMをSUZAKUディレクトリに展開してできた、/suzaku/fpga_proj/10.1i/sz130ディレクトリの中にあります。
zipファイルなのでこれを展開して、SUZAKUディレクトリの作ったTESTディレクトリにコピーします。
コピーしたSUZAKUのデフォルトのフォルダの名前をsz130-add_uart_gpioに変更します。
端末よりxpsを入力してEDKを起動します。
起動したら、Open recent projectを選択します。
作成したsz130-add_uart_gpioフォルダに移動して、xps_proj.xmpを選択しOpenをクリックします。
SUZAKUのデフォルトのプロジェクトが開きます。
GPIOのIPコアを追加します。
IP Catalogのタブをクリックし、General Purpuse IOの中のopb_gpioをダブルクリックするとIPコアが追加されます。
追加されたGPIOの横の丸をクリックして、OPBバスに接続します。
IPコアの設定をおこないます。
追加したGPIOを右クリックして、Configure IPを選択します。
単色LEDをひとつ光らせるだけなので、バスの幅は1ビットにします。
Channel1を選択し、Bi-directionalをFALSEにします。
SystemタブをクリックしてBase AddressとHigh Addressを入力します。
・Base Address :0xffffa400
・High Address :0xffffa5ff
入力したらOKをクリックします。
GPIOの出力をExternal Portsに登録します。
Portsタブをクリックして、追加したGIPO(opb_gpio_1)を開きます。
GPIO_d_outのNetの部分をクリックしてNet名nLEを入力します。
欄外をクリックして確定させます。
入力したNet名の右にある▼をクリックして、Make Extenalを選択します。
External Portsに、nLE_pinが追加されます。
ピンアサインをおこないます。
Projectタブをクリックし、UCF File:data/xps_proj.ucfをダブルクリックします。
UCFファイルが開いたら、下の一行を追加して保存します。
Net nLE_pin<0> LOC=E12 | IOSTANDARD = LVCMOS33;
上側メニューよりHardwareをクリックして、Generate Netlistを選択してネットリストを作成します。
上側メニューよりHardwareをクリックして、Genarate Bitstreamをクリックして、ソフトウェアを含まないBitファイルを作成します。
以上でハードウェアの設定は終了です。
次にソフトウェアの設定をおこないます。
ライブラリ、ドライバの設定をおこないます。
上側メニューよりSoftwareをクリックして、Software Platform Settingsを選択します。
追加したGPIOのドライバーをgenericに変更してOKをクリックします。
上側メニューよりSoftwareをクリックして、Generate Libraries and BSPsを選択します。
ヘッダファイルが作成されます。
単色LEDを点灯させるアプリケーションを作成します。
上側メニューよりSoftwareをクリックして、Add Software Application Project…を選択します。
Project Nameにhello-ledを入力してOKをクリックします。
出来上がったプロジェクトhello-ledの中にあるSourceを右クリックして、Add New Fileを選択します。
hello-ledという新しいフォルダを作成し、その中にファイルmain.cを作成します。
Sourceに作成されたmain.cをダブルクリックして開き、単色LEDを点灯させるソースコードを記述します。
#include “xparameters.h”
int main(void)
{
*(volatile unsigned long *) XPAR_OPB_GPIO_1_BASEADDR = 0;
return 0;
}
記述が終わったら保存します。
Project:hello-ledを右クリックして、Make to Initiakize BRAMsをクリックします。
hello-ledがBRAMに初期値として書き込まれます。
上側メニューよりSoftwareをクリックして、Bild All User Applicationsを選択します。
コンパイラが起動します。
上側メニューよりDevice Configurationをクリックして、Update Bitstreamを選択します。
アプリケーションが追加されたbitファイルが生成されます。
生成されたbitファイルをJTAGでコンフィギュレーションします。
SUZAKUのCON7にダウンロードケーブルを接続し、JP2をショートさせて電源を入れます。
上側メニューよりDevice Configurationをクリックして、Download Bitstreamを選択します。
FPGAにbitファイルがコンフィギュレーションされ単色LEDが点灯します。