Closed zaun closed 6 months ago
This is not a nextpnr-gowin specific bug and probably won't solve your current problem, but please don't use nextpnr-gowin - starting around May 1st I plan to ask for this part to be removed from nextpnr.
Gowin chips are supported via nextpnr-himbaechel:
cmake . -DARCH="himbaechel" -DHIMBAECHEL_GOWIN_DEVICES="all"
make -j$(nproc)
sudo make install
nextpnr-himbaechel --json synthesis.json --write bitstream.json --device GW2AR-LV18QN88C8/I7 --vopt family GW2AR-18 --vopt cst tangnano20k.cst
Also, this seems like the same problem as #1297 and #1292: there's a problem with your boost libraries.
@yrabbit - no worries, I'm happy to move over to nextpnr-himbaechel. I've got it compiled and am trying to run the nextpnr-himbaechel
but am getting an error about the chipdb not being found:
nextpnr-himbaechel --json synthesis.json --write bitstream.json --device GW2AR-LV18QN88C8/I7 --vopt family GW2AR-18 --vopt cst tangnano20k.cst
Info: Using uarch 'gowin' for device 'GW2AR-LV18QN88C8/I7'
ERROR: Unable to read chipdb /Users/justinzaun/local/bin/../share/nextpnr//himbaechel/gowin/chipdb-.bin
0 warnings, 1 error
make: *** [bitstream.json] Error 255
╭─justinzaun@Hogsmeade ~/Development/fpgs/blink
╰─$ ls /Users/justinzaun/local/bin/../share/nextpnr//himbaechel/gowin/ 2 ↵
chipdb-GW1N-1.bin chipdb-GW1N-9.bin chipdb-GW1NS-4.bin chipdb-GW2A-18.bin
chipdb-GW1N-4.bin chipdb-GW1N-9C.bin chipdb-GW1NZ-1.bin chipdb-GW2A-18C.bin
The build and install went fine:
╭─justinzaun@Hogsmeade ~/Development/nextpnr ‹master●›
╰─$ cmake . -DARCH="himbaechel" -DHIMBAECHEL_GOWIN_DEVICES="all" -DCMAKE_INSTALL_PREFIX=/
make -j$(nproc)
-- Building with IPO
-- Found Python3: /Users/justinzaun/local/brew/opt/python@3.11/Frameworks/Python.framework/Versions/3.11/include/python3.11 (found suitable version "3.11.8", minimum required is "3.5") found components: Development Development.Module Development.Embed
-- Found Boost: /Users/justinzaun/local/brew/include (found version "1.84.0") found components: filesystem program_options iostreams system thread regex chrono atomic
-- Found Boost: /Users/justinzaun/local/brew/include (found version "1.84.0") found components: program_options filesystem system
-- Configuring architecture: himbaechel
-- Configuring Himbaechel-Example uarch
-- Configuring Himbaechel-Gowin uarch
-- Found Python3: /Users/justinzaun/local/brew/Frameworks/Python.framework/Versions/3.11/bin/python3.11 (found suitable version "3.11.8", minimum required is "3.5") found components: Interpreter
-- Enabled Himbaechel-Gowin devices: GW1N-1;GW1NZ-1;GW1N-4;GW1N-9;GW1N-9C;GW1NS-4;GW2A-18;GW2A-18C
-- Apycula install prefix: (using system Python)
-- Configuring Xilinx uarch
-- Enabled Himbaechel-Xilinx devices:
-- Configuring done (0.7s)
-- Generating done (0.0s)
-- Build files have been written to: /Users/justinzaun/Development/nextpnr
zsh: command not found: nproc
[ 0%] Built target chipdb-himbaechel-xilinx
[ 2%] Built target bbasm
[ 14%] Built target chipdb-himbaechel-gowin
[100%] Built target nextpnr-himbaechel
╭─justinzaun@Hogsmeade ~/Development/nextpnr ‹master●›
╰─$ DESTDIR=$HOME/local make install
[ 85%] Built target nextpnr-himbaechel
[ 88%] Built target bbasm
[100%] Built target chipdb-himbaechel-gowin
[100%] Built target chipdb-himbaechel-xilinx
Install the project...
-- Install configuration: "Release"
-- Installing: /Users/justinzaun/local/bin/nextpnr-himbaechel
-- Installing: /Users/justinzaun/local/share/nextpnr/himbaechel/gowin
-- Installing: /Users/justinzaun/local/share/nextpnr/himbaechel/gowin/chipdb-GW1N-9.bin
-- Installing: /Users/justinzaun/local/share/nextpnr/himbaechel/gowin/chipdb-GW1N-9C.bin
-- Installing: /Users/justinzaun/local/share/nextpnr/himbaechel/gowin/chipdb-GW1NS-4.bin
-- Installing: /Users/justinzaun/local/share/nextpnr/himbaechel/gowin/chipdb-GW2A-18.bin
-- Installing: /Users/justinzaun/local/share/nextpnr/himbaechel/gowin/chipdb-GW2A-18C.bin
-- Installing: /Users/justinzaun/local/share/nextpnr/himbaechel/gowin/chipdb-GW1N-1.bin
-- Installing: /Users/justinzaun/local/share/nextpnr/himbaechel/gowin/chipdb-GW1NZ-1.bin
-- Installing: /Users/justinzaun/local/share/nextpnr/himbaechel/gowin/chipdb-GW1N-4.bin
-- Installing: /Users/justinzaun/local/share/nextpnr/himbaechel/xilinx
I tried GW2A-18
rather than GW2AR-18
but the same thing happens:
nextpnr-himbaechel --json synthesis.json --write bitstream.json --device GW2A-LV18QN88C8/I7 --vopt family GW2A-18 --vopt cst tangnano20k.cst
Info: Using uarch 'gowin' for device 'GW2A-LV18QN88C8/I7'
ERROR: Unable to read chipdb /Users/justinzaun/local/bin/../share/nextpnr//himbaechel/gowin/chipdb-.bin
0 warnings, 1 error
I wonder where I got it wrong. Try
--device GW2AR-LV18QN88C8/I7 --vopt family=GW2A-18C
If it doesn’t work, then I’ll compile the latest nextpnr and see what’s wrong.
@yrabbit - Everything is working. Thank you for the help!
Not sure if this is the best place to ask or not, but I can compile and install nextpnr but when I try to run the app it gives me a Symbol not found error. I'm on MacOS 14.3.1 (23D60)
Config:
Build:
Install:
Error:
I did check and
/Users/justinzaun/local/brew/Cellar/boost/1.84.0_1/lib/libboost_filesystem-mt.dylib
does exist.