XilinxFPGA/CPLD 組み込み 実装 設計製作 VHDL 開発 | |||
3.PROMにプログラムを書き込む
CPLDとちがいFPGAは内部がRAMによって構成されています。RAMは揮発性メモリのため、電源を投入したときには コンフィギュレーション動作を行います。
Spartan3E Startter KITの基板にはXCF04FというXilinx社のフラッシュROMがついてします。ここにプログラムを書き込んでおくと、電源起動時に自動的に ROMから FPGAにデータを読み込みます。(configuration コンフィギュレーションといいます)
SPARTAN-3E STARTER KITの基板とPCをUSBケーブルで接続します。
USB付近のLEDが緑色に光っていることを確認します。
<Processes> ウィンドウの <Generate Programming File> - <Generate PROM,ACE,or JTAG File>を右クリックし、 RUNを選択します。
エラーが発見されれば、その時点で停止しますが、今回はサンプルファイルなので最後まで順に実行されます。
iMPACTが起動します。
Prepare a PROM File を選択し、[Finish]をクリックします。
上の選択肢から順に
I want to target a
PROM Format
Checksum Fill Value(2Hex Digits)
PROM File Name
空白なしの英数字であればどんな名前でもOK。(初期値は Untitled)
Location
今のプロジェクトと同じフォルダにします。(初期値はプロジェクトと同じフォルダ)
これは データの書き込み先が Xilinxの PROMで、 PROMのファイルフォーマットがMCSであることを示します。
PROMを選択します。
StarterKITに搭載しているPROMを選択します。
Select a PROM: [xcf][xcf04s [524288]]
として、[Add]をクリックします。
[Add]をクリックすると
Position | Part Name |
0 | xcf04s |
と一つだけ 中央に表示します。
この状態で[Next >]をクリックします。
確認のダイアログです。[Finish]をクリックします。
PROM File Formatter でPROMのアイコンを表示します。この直後確認ダイアログが表示されます。[OK]を押します。
Fileダイアログが.BITファイルを選択します。
ここでは一つしかありません。 left_right_leds.bitを選択します。
ここでは [No]をクリックします。
ウィザードが終了しました。[OK]をクリックします。
[Operation]→[Generate File..]
または iMPACT Processesウィンドウの [Generate File]
または アイコンがあるウィンドウのアイコンがない空白の部分を右クリックして、ポップダイアログの[Generate File]をクリックします。
これで PROMに書き込むファイルが出来上がりました。
今回の例では Untitled.mcs というファイル名になります。
プロジェクトのフォルダを見ると Untitled.mcsというファイルができているのが確認できます。
Flowsウィンドウの Boundary Scan をクリックします。
Xilinxのデバイスのチェーン状態のアイコンが表示されていない、場合には右クリックして、ボップアップメニューの [Initialize Chain]をクリックします。
または、[File]→[Initialze Chain ] または
このアイコンをクリックします。
JTAGチェーンの初期化が実行されます。
正しく認識されると JATGチェーンの様子がアイコンで表示されます。
今回は Spartan3e(xc3s500e)→PROM(xcf04s)→CoolRunnerII(xc2c64a) の順番でつながっています。
左のデバイスから順番にダウンロードするコンフィギュレーションファイルを指定するためのダイアログがでてきます。
最初にSpartan3e ( xc3s500e )のダイアログ。
FPGAに直接書き込んでデバッグなどをする場合には left_ritgh_leds.bit を選択して [Open]とします。FPGAに直接書き込むことはなければ[Bypass]をクリックします。
次に PROM(xcf04s)のダイアログが開きます。
先ほど作成した Untitled.mcs を選択します。
次は CoolrunnerII のダイアログが出てきます。
[Bypass]をクリックします。
PROM(xdf04s)のアイコン上で右クリックして、ポップアップメニューの[Program]をクリックします。または、iMPACT Processesの[Program]をクリックでもOKです。
[OK]をクリックします。
書き込み動作中・・
次回電源起動時からは、今書き込んだプログラムがPROMからFPGAにダウンロードされます。
もしも、購入時の状態に戻したい場合 以下のファイルをXilinxのサイトからダウンロードします。
URLは http://www.xilinx.co.jp/products/boards/s3estarter/reference_designs.htm
表の一番上のInitial Design for the Spartan-3E Starter Kit Board
の ファイル s3esk_startup.zip
このファイルを解凍して、同様の手順でMCSを作り、ファイルにダウンロードします。
この状態で [File]→[Save Project]をクリックしていまのプロジェクトを保存します。
次回からは mcsファイルを作り、PROMにダウンロードするだけの操作になります。
ファイル名は英数字のみとし、倍角文字(日本語)や空白文字は避けます。
※iMPACTはファイル情報を絶対パスで保存します。プロジェクトを別ディレクトリに移動したり、フォルダ名を変更したときには、新規プロジェクトで最初から設定しなおします。