「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'"