3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

VSCodeを用いたTang Nano 9K開発環境構築

Last updated at Posted at 2024-08-07

はじめに

Tang Nano 9KをVSCodeで使うための方法です
参考サイト:Tang Nano 9K: Getting Setup

準備

Toolchain

WSLでVSCodeを立ち上げ、"FPGA Toolchain"をクリック
image.png
解凍したoss-cad-suitbinフォルダを参照する

USBを接続

参考サイト:USB デバイスを接続する

Ubuntu操作

Ubuntu上のターミナルで以下のコマンドを実行

lsusb -t

実行結果

/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=vhci_hcd/8p, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=vhci_hcd/8p, 480M

Tang Nano 9Kが認識されていないことを確認
下記のコマンドを実行

sudo apt install linux-tools-generic hwdata
sudo update-alternatives --install /usr/local/bin/usbip usbip /usr/lib/linux-tools/*-generic/usbip 20

Windows操作

管理者権限PowerShellで以下のコマンドを実行

PS C:\> winget install --interactive --exact dorssel.usbipd-win

接続されているBUSIDを確認

PS C:\> usbipd list

USBデバイスを接続

PS C:\> usbipd bind --busid <BUSID>
PS C:\> usbipd attach --wsl --busid <BUSID>

Ubuntuで

lsusb -t

を実行すると,接続したデバイスが表示される

コード作成

Ubuntu上の任意のフォルダでcounter.vを作成

counter.v
module top
(
    input clk,
    output [5:0] led
);

localparam WAIT_TIME = 13500000;
reg [5:0] ledCounter = 0;
reg [23:0] clockCounter = 0;

always @(posedge clk) begin
    clockCounter <= clockCounter + 1;
    if (clockCounter == WAIT_TIME) begin
        clockCounter <= 0;
        ledCounter <= ledCounter + 1;
    end
end

assign led = ledCounter;
endmodule

同じフォルダ内にtangnano9k.cstを作成
image.png
"Add From Template"をクリック
image.png
"Clock"と"LEDs"にチェックを入れて"Add Constraints"をクリック

書き込み実行

"FPGA Toolchain"をクリック
image.png
"Build and Program"を選択すると書き込みが実行される.

エラーが出た場合

特に設定していなければ以下のエラーが出る

unable to open ftdi device: -4 (usb_open() failed)
JTAG init failed with: unable to open ftdi device

こちらを参考に,Ubuntuで以下のファイルを作成

/etc/udev/rules.d/99-ftdi.rules
ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6010", MODE="0666"
  • 自分の環境ではUbuntuの再起動が必要でした(再起動をするとUSBの接続が切れるので再接続が必要)
  • 異なるボードを使用している場合はidVendoridProductを相応しいものに充ててください
3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?