173b886314 | ||
---|---|---|
.travis | ||
ERI_demo | ||
OpenSTA@7592f12e54 | ||
abc | ||
ace2 | ||
cmake | ||
docs | ||
fpga_flow | ||
libs | ||
openfpga_flow | ||
tutorials | ||
vpr7_x2p | ||
yosys | ||
.dockerignore | ||
.gitignore | ||
.gitmodules | ||
.travis.yml | ||
CMakeLists.txt | ||
Dockerfile | ||
LICENSE | ||
README.md | ||
README_Benchmarks.md | ||
run_local.bat | ||
run_local.sh | ||
run_test.sh |
README.md
Getting Started with OpenFPGA
Introduction
The OpenFPGA framework is the first open-source FPGA IP generator supporting highly-customizable homogeneous FPGA architectures. OpenFPGA provides a full set of EDA support for customized FPGAs, including Verilog-to-bitstream generation and self-testing verification testbenches/scripts. OpenFPGA opens the door to democratizing FPGA technology and EDA techniques, with agile prototyping approaches and constantly evolving EDA tools for chip designers and researchers.
Compilation
Dependencies and help using docker can be found at ./tutorials/building.md.
Compilation Steps:
- git clone https://github.com/LNIS-Projects/OpenFPGA.git && cd OpenFPGA # Clone the repository and go inside it
- mkdir build && cd build # Create a folder named build in the OpenPFGA repository
- cmake .. -DCMAKE_BUILD_TYPE=debug # Create a Makefile in this folder using cmake
- make # Compile the tool and its dependencies
We currently implemented OpenFPGA for:
1. Ubuntu 16.04
2. Red Hat 7.5
3. MacOS Mojave 10.14.4
Please note that those were the versions for which the tool was tested. It might work with earlier versions and other distributions.
Documentation
OpenFPGA's full documentation includes tutorials, descriptions of the design flow, and tool options.
Tutorials
You can find some tutorials in the ./tutorials folder. This will help you get more familiar with the tool and use OpenFPGA under different configurations.
Through those tutorials, users can learn how to use the flow and install the different dependencies.
The tutorial index will guide you through training and explain the folder oraganization as well as introducing some tips and commonly used keywords.