Giter VIP home page Giter VIP logo

sshyran / openfpga Goto Github PK

View Code? Open in Web Editor NEW

This project forked from lnis-uofu/openfpga

0.0 1.0 0.0 81.01 MB

An Open-source FPGA IP Generator

Home Page: https://openfpga.readthedocs.io/en/master/

License: MIT License

Shell 0.70% JavaScript 0.01% C++ 20.00% Python 0.19% Perl 0.02% C 60.66% Emacs Lisp 0.01% Lua 0.01% Fortran 0.01% Tcl 2.56% VHDL 0.01% Verilog 15.27% C# 0.06% Assembly 0.16% Ada 0.10% CSS 0.02% Pascal 0.09% BlitzBasic 0.13% SourcePawn 0.01% SAS 0.01%

openfpga's Introduction

Getting Started with OpenFPGA

linux build Documentation Status Binder

Version: see VERSION.md

Introduction

The award-winning OpenFPGA framework is the first open-source FPGA IP generator supporting highly-customizable homogeneous FPGA architectures. OpenFPGA provides complete EDA support for customized FPGAs, including Verilog-to-bitstream generation and self-testing verification. 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.

If this is your first time working with OpenFPGA, we strongly recommend you watch the introduction video about OpenFPGA

A quick overview of OpenFPGA tools can be found here. We also recommend potential users check out the summary of technical capabilities before compiling.

Compilation

A tutorial video about how to compile can be found here

Before starting, we strongly recommend you read the required dependencies at compilation guidelines. It also includes detailed information about the docker image.


Compilation Steps:

# Clone the repository and go inside it
git clone https://github.com/LNIS-Projects/OpenFPGA.git && cd OpenFPGA
make all

Quick Compilation Verification

To quickly verify the tool is well compiled, the user can run the following command from the OpenFPGA root directory.

source openfpga.sh
run-task compilation_verification --debug --show_thread_logs

Python3 and iVerilog v10.1+ are required. GUI will pop up if enabled during compilation.


Supported Operating Systems

We currently target OpenFPGA for:

  1. Ubuntu 18.04
  2. Red Hat 7.5

The tool was tested with these operating systems. It might work with earlier versions and other distributions.

Running with pre-built docker image

# To get the docker image from the repository, 
docker pull ghcr.io/lnis-uofu/openfpga-master:latest

# To invoke openfpga_shell
docker run -it ghcr.io/lnis-uofu/openfpga-master:latest openfpga/openfpga bash

Documentation

OpenFPGA's full documentation includes tutorials, descriptions of the design flow, and tool options.

Tutorials

You can find a set of tutorials, with which you get familiar with the tool and use OpenFPGA for various purposes.

openfpga's People

Contributors

apond308 avatar aram-rs avatar aurelienuou avatar awaisabbas-rs avatar baudouinchauviere avatar bbleaptrot avatar coolbreeze413 avatar dependabot[bot] avatar eemincetin avatar ganeshgore avatar github-actions[bot] avatar hitblunders avatar komaljaved-rs avatar lnis-projects avatar lukefahr avatar manadherrs avatar mkurc-ant avatar nachiket avatar nadeemyaseen-rs avatar olofk avatar pegaillardon avatar rweischedel avatar sharmaln avatar srtemp avatar stevecorey avatar tangxifan avatar tpagarani avatar xtofalex avatar yashton avatar yitian4debug avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.