試行錯誤の結果、動作確認まで成功しました。
やり方を共有します。
全体像
- Java8の設定
- syntesijerのダウンロード
- Javaからvhdを生成
- 生成したvhdをISEのプロジェクトに追加
- ucfファイルを設定
- bitファイルの作成
- bitファイルの書き込み
- 動作確認
Java8の設定
下記のコマンドでJava8をインストールします。sudo add-apt-repository ppa:webupd8team/java sudo apt-get update sudo apt-get install oracle-java8-installer
Java8 に切り替えます。
sudo update-java-alternatives -s java-8-oracle
Javaのバージョンが8になっていることを確認します。
java -version
synthesijerのダウンロード
下記のページからsynthesijerをダウンロードしてください。Synthesijer Files
今回はsynthesijer-20150426.jarを使います。
Javaからvhdを生成
Test.javaを作成します。
Test.java
public class Test{ public boolean flag; private int count; public void run(){ while(true){ count++; if(count > 5000000){ count = 0; flag = !flag; } } } }
下記コマンドでTest.vhdを生成します。
java -cp synthesijer-20150311.jar synthesijer.Main Test.java
Test.javaと同じフォルダで、Top.javaを作成します。
Top.java
import synthesijer.rt.*; @synthesijerhdl public class Top{ private final Test test = new Test(); @auto public boolean flag(){ return test.flag; } @auto public void main(){ test.run(); } }
下記コマンドでTop.vhdを生成します。
java -cp synthesijer-20150311.jar synthesijer.Main Test.java Top.java
生成したvhdをISEのプロジェクトに追加
まず、ISEのプロジェクトを作ります。ISEの設定がまだな方は、こちらが参考になるかもしれません。
ubuntuからminiSpartan6+にテストプログラムを送信する
File -> New Project
今回は「SynthesijerTest」という名前のプロジェクトを作ります。
プロジェクトのフォルダにTest.vhdとTop.vhdをコピーしただけでは、ISEがファイルを認識してくれません。
そのため、下記の手順でファイルを追加します。
Project -> New Source
VHDL Packageを選択して、ファイル名にTestと入力します。
Test.vhdがISEで作られます。
SynthesijerTestのTest.vhdを先ほど作成したTest.vhdと置き換えます。
cp (path for vhd from java)/Test.vhd (path for ISE projects)/synthesijerTest/
Top.vhdも同じように作成します。
cp (path for vhd from java)/Top.vhd (path for ISE projects)/synthesijerTest/
ucfファイルを設定
HierarchyのTopを選択した状態で、Source -> Source PropertiesView AssociationをImplementationにして、Applyを押した後にOKを押します。
Project -> New Srouce -> Implementation Constraints Fileを選択し、ファイル名をminiSpartan6とします。
下記内容を記述します。
miniSpartan6.ucf
NET clk LOC ="K3"; NET flag_return LOC="P11";
他のピンを割り当てたい場合は、データシートから期待するピンを探します。
miniSpartan6+_Rev_B.pdf
bitファイルの作成
Process -> Implement Top Moduleうまくいくと、warningを出しつつもProcessが成功します。
Generate Programming Fileをダブルクリックして、bitファイルを作成します。
bitファイルの書き込み
ISEプロジェクトとして作成したsynthesijerTestのフォルダまで、コンソールで移動します。cp (path for ISE projects)/synthesijerTest/
xc3sprogでspartan6に書き込みます。
sudo sudo xc3sprog -c ftdi Top.bit
動作確認
チッカチッカと0番のLEDが点滅していたら成功です。以上です。
0 件のコメント :
コメントを投稿