コンテンツにスキップ

「Lattice Diamond」の版間の差分

提供: ArchWiki
削除された内容 追加された内容
ページの作成:「Category:開発 Category:計算と科学 en:Lattice Diamond 公式には Lattice Diamond は Arch Linux をサポートしていませんが、Xilinx ISE We...」
 
同期
 
1行目: 1行目:
[[Category:開発]]
[[Category:電子設計自動化]]
[[Category:計算と科学]]
[[en:Lattice Diamond]]
[[en:Lattice Diamond]]
[http://www.latticesemi.com/latticediamond Lattice Diamond] は Lattice FPGA アーキテクチャの設計ソフトウェアです。
公式には Lattice Diamond は Arch Linux をサポートしていませんが、[[Xilinx ISE WebPACK]] や [[Xilinx Vivado]] などの他の HDL スイートと同じように、多少の修正で Lattice Diamond のほとんどの機能を使うことができます。

公式には [http://www.latticesemi.com/ Lattice Diamond] は Arch Linux をサポートしていませんが、[[Xilinx ISE WebPACK]] や [[Xilinx Vivado]] などの他の HDL スイートと同じように、多少の修正で Lattice Diamond のほとんどの機能を使うことができます。


== 要件 ==
== 要件 ==
14行目: 15行目:
=== ライセンス ===
=== ライセンス ===


[http://www.latticesemi.com/licenseprocessing/flexlmlicense.cfm?p=diamond&api=true Lattice Semiconductor] からフリーライセンスを得ることができます (登録が必要です)。ノードロックライセンスです (MAC やイーサネットカードに紐付けられます)。ライセンスファイルを入手したら、{{ic|/usr/local/diamond/3.7_x64/license/license.dat}} にコピーすることで、スイートが起動できるようになります。
[http://www.latticesemi.com/Support/Licensing.aspx Lattice Semiconductor] からフリーライセンスを得ることができます (登録が必要です)。ノードロックライセンスです (MAC やイーサネットカードに紐付けられます)。ライセンスファイルを入手したら、{{ic|/usr/local/diamond/3.10_x64/license/license.dat}} にコピーすることで、スイートが起動できるようになります。


== トラブルシューティング ==
== トラブルシューティング ==
29行目: 30行目:


接続を解除するまでプログラマが正しく動作するようになります (プログラマを接続するたびに上のコマンドを実行してください)。
接続を解除するまでプログラマが正しく動作するようになります (プログラマを接続するたびに上のコマンドを実行してください)。

=== FTDI ベースのシリアルインターフェイスが Lattice スターターキットに存在するとき Diamond がクラッシュする ===

"Lattice Diamond 3.9 Installation Notice for Linux" ドキュメントには手動でシリアルドライバーを設定する方法が載っていますが、ドキュメントに書かれている udev ルールの命名方法は機能しません。代わりに以下の手順で上手く行きます。

1. まず {{ic|/etc/group}} ファイルに書かれているユーザー名を探してください。必要ならログアウトしてください。例:

username:x:1000:

2. {{ic|51-lattice.rules}} という名前のファイルを作成してください。

3. {{ic|51-lattice.rules}} ファイルに以下の情報を追加してください:

* Lattice
SUBSYSTEM=="usb",ACTION=="add",ATTRS{idVendor}=="1134",ATTRS{idProduct}=="8001",MODE=="0660",GROUP=="username:x:1000:",SYMLINK+="lattice-%n"
* FTDI
SUBSYSTEM=="usb",ACTION=="add",ATTRS{idVendor}=="0403",ATTRS{idProduct}=="6010",MODE=="0666",GROUP=="username:x:1000:",SYMLINK+="ftdi-%n"
SUBSYSTEM=="usb",ATTRS{idVendor}=="0403",ATTRS{idProduct}=="6010",RUN+="/bin/sh -c 'basename %p > /sys/bus/usb/drivers/ftdi_sio/unbind'"

2018年12月25日 (火) 22:01時点における最新版

Lattice Diamond は Lattice FPGA アーキテクチャの設計ソフトウェアです。

公式には Lattice Diamond は Arch Linux をサポートしていませんが、Xilinx ISE WebPACKXilinx Vivado などの他の HDL スイートと同じように、多少の修正で Lattice Diamond のほとんどの機能を使うことができます。

要件

現在、AUR にあるパッケージは、64ビット版のスイートでしか使うことができません。そのため、Arch Linux の64ビット環境をインストールする必要があります。

インストール

lattice-diamondAUR をインストールしてください。インストール容量がかなり大きいため (4 GB)、パッケージの圧縮時にかなり時間がかかります。PKGBUILD ファイルを編集して圧縮を無効にすることでパッケージの生成を速くすることができます。

ライセンス

Lattice Semiconductor からフリーライセンスを得ることができます (登録が必要です)。ノードロックライセンスです (MAC やイーサネットカードに紐付けられます)。ライセンスファイルを入手したら、/usr/local/diamond/3.10_x64/license/license.dat にコピーすることで、スイートが起動できるようになります。

トラブルシューティング

Place & Route が失敗する

Place & Route が ERROR - par: Switch "-msgsegset" is not allowed. というメッセージを残して失敗する場合、プロジェクトのルートディレクトリに存在する promote.xml ファイルを削除して、再度実行してみてください。それで通常通り実行されるはずです。

FTDI ケーブルを使ってプログラミングできない

ftdi_sio カーネルモジュールがロードされていない場合、FTDI チップが載ったケーブルを使って FPGA をプログラミングすることはできません。プログラマを接続してから、以下を実行してください:

# rmmod ftdi_sio

接続を解除するまでプログラマが正しく動作するようになります (プログラマを接続するたびに上のコマンドを実行してください)。

FTDI ベースのシリアルインターフェイスが Lattice スターターキットに存在するとき Diamond がクラッシュする

"Lattice Diamond 3.9 Installation Notice for Linux" ドキュメントには手動でシリアルドライバーを設定する方法が載っていますが、ドキュメントに書かれている udev ルールの命名方法は機能しません。代わりに以下の手順で上手く行きます。

1. まず /etc/group ファイルに書かれているユーザー名を探してください。必要ならログアウトしてください。例:

username:x:1000:

2. 51-lattice.rules という名前のファイルを作成してください。

3. 51-lattice.rules ファイルに以下の情報を追加してください:

  • Lattice
SUBSYSTEM=="usb",ACTION=="add",ATTRS{idVendor}=="1134",ATTRS{idProduct}=="8001",MODE=="0660",GROUP=="username:x:1000:",SYMLINK+="lattice-%n"
  • FTDI
SUBSYSTEM=="usb",ACTION=="add",ATTRS{idVendor}=="0403",ATTRS{idProduct}=="6010",MODE=="0666",GROUP=="username:x:1000:",SYMLINK+="ftdi-%n"
SUBSYSTEM=="usb",ATTRS{idVendor}=="0403",ATTRS{idProduct}=="6010",RUN+="/bin/sh -c 'basename %p > /sys/bus/usb/drivers/ftdi_sio/unbind'"