Skip to main content

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


Release history Release notifications

This version

0.0.1

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

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page