Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

v0.1.0

@rodrigomelo9 rodrigomelo9 tagged this 15 May 02:08
NOTE: originally released on 2020-02-29 at https://gitlab.com/rodrigomelo9/pyfpga

* FPGA Helpers switched to be a Python package which provides an API to manage projects
* Supported FPGA EDA Tools:
    - ISE and Vivado from Xilinx: bitstream generation and transfer to an FPGA
      (ISE also support  SPI/BPI memories)
    - Quartus Prime from Intel/Altera: bitstream generation and transfer to an FPGA
    - Libero-SoC from Microchip/Microsemi: bitstream generation
    - Yosys: generic synthesizer or combined with ISE/Vivado
      (implementation and bitstream  generation)
* The API implemented by the Project class provides:
    - A constructor where the TOOL must be specified and an optional PROJECT NAME can
      be specified  (TOOL is used by default)
    - A method to set the target device PART (default values per TOOL are provided)
    - A method to add multiple HDL, Constraint and Tcl files to the project
      (in case of VHDL an optional PACKAGE NAME can be specified)
    - A method to specify the TOP-LEVEL (NAME or FILE)
    - A method to specify a different OUTPUT directory (build by default)
    - Methods to generate a bitstream and transfer it to a device
      (running the selected EDA Tool)
    - The capability of specifying an optimization strategy (area, power or speed)
      when the bitstream is generated
    - A method to add Verilog Included File directories
    - A method to specify generics/parameters values
    - Methods to add Tcl commands in up to six different parts of the Flow
      (workaround for not yet implemented features)
    - Optional logging capabilities which include the display of the Tool Execution Time
    - A method to get some project configurations for debug purposes
    - Methods to specify where to search an ip-repo, add a block design and export the
      hardware (Only supported for Xilinx Vivado)
* Documentation:
    - User Guide
    - API Reference
    - Development notes
    - Tools notes
* Examples:
    - General-purpose (boilerplate and capture)
    - Multi-purpose (memory, parameters, projects, strategies, verilog and vhdl)
    - Specific of each Tool where Constraint files are included (for the boards s6micro,
      mkr, de10nano and zybo)
* Testing:
    - Examples are used to test the correct Tool behaviour
    - The PART specification is particularly tested for ISE and Libero
    - The master Tcl is checked using Tclsh
    - The top-level specification is tested with different alternatives
Assets 2
Loading
Morty Proxy This is a proxified and sanitized view of the page, visit original site.