Skip to main content
Python Software Foundation 20th Year Anniversary Fundraiser  Donate today!

An open source FPGA

Project description


Build Status

kFPGA is an opensource platform for creating and programming FPGA cores.


Using pip

python3 -m pip install kfpga

From source

git clone
python3 kfpga/ install


Creating a new kFPGA core

First, create the kFPGA core

kfpga-creator createcore \
    --width 5 \
    --height 5 \
    --io 4 \
    --clocks 1 \
    --sets 1 \
    --resets 1 \
    --enables 1 \
    --interconnect_width 10 \
    --le 4 \
    --lut 4 \

Then, you can generate the RTL of the core like this

kfpga-creator generatertl \


kFPGA cores can be implemented on FPGA for testing purpose, as an ASIC or integrated in a SoC.



kFPGA cores are programmed with the kfpga-programmer command



Currently, the architecture of kFPGA core is very simple: only LUTs and interconnect. The following functionalities are planned:

  • DSP blocks
  • memory blocks
  • carry chain
  • support for generated clock, set, reset and enable signals

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for kfpga, version 0.0.1
Filename, size File type Python version Upload date Hashes
Filename, size kfpga-0.0.1-py3-none-any.whl (56.7 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size kfpga-0.0.1.tar.gz (15.5 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page