Flash in linux
It's suggested to use openFPGALoader to flash te development board in Ubuntu.
Other linux distributions have not been verified.
The steps are as shown:
Using the following commands in terminal:
# preprocess sudo apt-get install libftdi1-2 libftdi1-dev libhidapi-hidraw0 libhidapi-dev libudev-dev zlib1g-dev cmake pkg-config make g++ # compile git clone https://github.com/trabucayre/openFPGALoader.git cd openFPGALoader mkdir build cd build cmake ../ # add -DBUILD_STATIC=ON to build a static version # add -DENABLE_UDEV=OFF to disable udev support and -d /dev/xxx # add -DENABLE_CMSISDAP=OFF to disable CMSIS DAP support cmake --build . # or # make -j$(nproc) # install sudo make install
$ sudo ./openFPGALoader --detect # This command should be executed in the directory where you previously executed make install # The log of succeed running is shown below Jtag frequency : requested 6.00MHz -> real 6.00MHz index 0: idcode 0x100481b manufacturer Gowin family GW1N model GW1N(R)-9C irlength 8
$ sudo ./openFPGALoader -b tangnano9k -f ../../nano9k_lcd/impl/pnr/Tang_nano_9K_LCD.fs # -b means target model，this can be found in the form below # -f means download to flash，with it means download to sram # The last is what need to be downloaded, it should be the related .fs file # The log of succeed running is shown below write to flash Jtag frequency : requested 6.00MHz -> real 6.00MHz Parse file Parse ../../nano9k_lcd/impl/pnr/Tang_nano_9K_LCD.fs: Done DONE Jtag frequency : requested 2.50MHz -> real 2.00MHz erase SRAM Done erase Flash Done write Flash: [==================================================] 100.00% Done CRC check: Success
-b means target development board, should be decided from the form below：
|tangnano||GW1N-1 QN48||OK||Internal Flash|
|tangnano1k||GW1NZ-1 QN48||OK||Internal Flash|
|tangnano4k||GW1NSR-4C QN48||OK||Internal Flash|
|tangnano9k||GW1NR-9C QN88P||OK||Internal Flash|
|tangnano20k||GW2AR-18C QN88||OK||External Flash|
|tangprimer20k||GW2A-18C BGA256||OK||External Flash|