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

An open source FPGA

Project description

kFPGA

Build Status

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

Installation

Using pip

python3 -m pip install kfpga

From source

git clone https://git.slaanesh.org/killruana/kfpga.git
python3 kfpga/setup.py install

Usage

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 \
    kFPGADemoCore 

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

kfpga-creator generatertl \
    kFPGADemoCore/kFPGADemoCore.kcp

Implementation

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

TODO

Programming

kFPGA cores are programmed with the kfpga-programmer command

TODO

Architecture

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