1
0
mirror of https://github.com/YosysHQ/nextpnr.git synced 2026-01-13 07:20:04 +00:00
Clifford Wolf 72b4bba0e7 Add ice40 geometry information
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-06 16:42:42 +02:00
2018-06-06 16:42:42 +02:00
2018-06-05 21:03:06 +02:00
2018-06-06 16:42:42 +02:00
2018-06-05 21:03:06 +02:00

nextpnr -- a portable FPGA place and route tool

Supported Architectures

  • iCE40

Prequisites

  • CMake 3.3 or later
  • Modern C++11 compiler, clang recommended
  • Python 3.5 or later, including development libraries (python3-dev for Ubuntu)
  • Boost libraries (libboost-all-dev for Ubuntu)
  • Icestorm, with chipdbs installed in /usr/local/share/icebox

Building

  • Use CMake to generate the Makefiles (only needs to be done when CMakeLists.txt changes)
    • For a debug build, run cmake -DCMAKE_BUILD_TYPE=Debug .
    • For a release build, run cmake .
  • Use Make to run the build itself
    • For all targets, just run make
    • For just the iCE40 CLI binary, run make nextpnr-ice40
    • For just the iCE40 Python module, run make nextpnrpy_ice40
    • Using too many parallel jobs may lead to out-of-memory issues due to the significant memory needed to build the chipdbs

Running

  • To run the CLI binary, just run ./nextpnr-ice40
  • The Python module is called nextpnrpy_ice40.so. To test it, run PYTHONPATH=. python3 python/python_test.py
Description
nextpnr portable FPGA place and route tool
Readme 24 MiB
Languages
C++ 82.8%
Python 6%
Verilog 4%
C 3.8%
Assembly 1.5%
Other 1.8%