All Projects → KastnerRG → Riffa

KastnerRG / Riffa

Licence: other
The RIFFA development repository

Labels

Projects that are alternatives of or similar to Riffa

32-Verilog-Mini-Projects
Implementing 32 Verilog Mini Projects. 32 bit adder, Array Multiplier, Barrel Shifter, Binary Divider 16 by 8, Booth Multiplication, CRC Coding, Carry Select and Carry Look Ahead Adder, Carry Skip and Carry Save Adder, Complex Multiplier, Dice Game, FIFO, Fixed Point Adder and Subtractor, Fixed Point Multiplier and Divider, Floating Point IEEE 7…
Stars: ✭ 66 (-79.37%)
Mutual labels:  verilog
Openroad
OpenROAD's unified application implementing an RTL-to-GDS Flow
Stars: ✭ 270 (-15.62%)
Mutual labels:  verilog
Verilogboy
A Pi emulating a GameBoy sounds cheap. What about an FPGA?
Stars: ✭ 287 (-10.31%)
Mutual labels:  verilog
sv-tests
Test suite designed to check compliance with the SystemVerilog standard.
Stars: ✭ 148 (-53.75%)
Mutual labels:  verilog
Cores
Various HDL (Verilog) IP Cores
Stars: ✭ 271 (-15.31%)
Mutual labels:  verilog
Icezum
🌟 IceZUM Alhambra: an Arduino-like Open FPGA electronic board
Stars: ✭ 280 (-12.5%)
Mutual labels:  verilog
intfftk
Fully pipelined Integer Scaled / Unscaled Radix-2 Forward/Inverse Fast Fourier Transform (FFT) IP-core for newest Xilinx FPGAs (Source language - VHDL / Verilog). GNU GPL 3.0.
Stars: ✭ 43 (-86.56%)
Mutual labels:  verilog
Beagle sdr gps
KiwiSDR: BeagleBone web-accessible shortwave receiver and software-defined GPS
Stars: ✭ 300 (-6.25%)
Mutual labels:  verilog
Prjtrellis
Documenting the Lattice ECP5 bit-stream format.
Stars: ✭ 272 (-15%)
Mutual labels:  verilog
Ucr Eecs168 Lab
The lab schedules for EECS168 at UC Riverside
Stars: ✭ 285 (-10.94%)
Mutual labels:  verilog
Fake-SDcard
Imitate SDcard using FPGAs.
Stars: ✭ 26 (-91.87%)
Mutual labels:  verilog
Edalize
An abstraction library for interfacing EDA tools
Stars: ✭ 270 (-15.62%)
Mutual labels:  verilog
Netfpga
NetFPGA 1G infrastructure and gateware
Stars: ✭ 280 (-12.5%)
Mutual labels:  verilog
blarney
Haskell library for hardware description
Stars: ✭ 81 (-74.69%)
Mutual labels:  verilog
Openlane
OpenLANE is an automated RTL to GDSII flow based on several components including OpenROAD, Yosys, Magic, Netgen, Fault and custom methodology scripts for design exploration and optimization.
Stars: ✭ 293 (-8.44%)
Mutual labels:  verilog
ofdm
Chisel Things for OFDM
Stars: ✭ 23 (-92.81%)
Mutual labels:  verilog
Riscv
RISC-V CPU Core (RV32IM)
Stars: ✭ 272 (-15%)
Mutual labels:  verilog
Reduceron
FPGA Haskell machine with game changing performance. Reduceron is Matthew Naylor, Colin Runciman and Jason Reich's high performance FPGA softcore for running lazy functional programs, including hardware garbage collection. Reduceron has been implemented on various FPGAs with clock frequency ranging from 60 to 150 MHz depending on the FPGA. A high degree of parallelism allows Reduceron to implement graph evaluation very efficiently. This fork aims to continue development on this, with a view to practical applications. Comments, questions, etc are welcome.
Stars: ✭ 308 (-3.75%)
Mutual labels:  verilog
Verilog
Repository for basic (and not so basic) Verilog blocks with high re-use potential
Stars: ✭ 296 (-7.5%)
Mutual labels:  verilog
Openpiton
The OpenPiton Platform
Stars: ✭ 282 (-11.87%)
Mutual labels:  verilog

riffa

RIFFA (Reusable Integration Framework for FPGA Accelerators) is a simple framework for communicating data from a host CPU to a FPGA via a PCI Express bus. The framework requires a PCIe enabled workstation and a FPGA on a board with a PCIe connector. RIFFA supports Windows and Linux, Altera and Xilinx, with bindings for C/C++, Python, MATLAB and Java.

On the software side there are two main functions: data send and data receive. These functions are exposed via user libraries in C/C++, Python, MATLAB, and Java. The driver supports multiple FPGAs (up to 5) per system. The software bindings work on Linux and Windows operating systems. Users can communicate with FPGA IP cores by writing only a few lines of code.

On the hardware side, users access an interface with independent transmit and receive signals. The signals provide transaction handshaking and a first word fall through FIFO interface for reading/writing data. No knowledge of bus addresses, buffer sizes, or PCIe packet formats is required. Simply send data on a FIFO interface and receive data on a FIFO interface. RIFFA does not rely on a PCIe Bridge and therefore is not subject to the limitations of a bridge implementation. Instead, RIFFA works directly with the PCIe Endpoint and can run fast enough to saturate the PCIe link. Both the software and hardware interfaces have been greatly simplified. Details can be found on the hardware interface page.

RIFFA communicates data using direct memory access (DMA) transfers and interrupt signaling. This achieves high bandwidth over the PCIe link. In our tests we are able to saturate (or near saturate) the link in all our tests. We have implemented RIFFA on the AVNet Spartan LX150T, Xilinx ML605, and Xilinx VC707, as well as the Altera DE5-Net, DE4 and DE2i boards. The RIFFA distribution contains examples and guides for setting up designs on the three development boards listed above. In addition, this website has examples of how to access your design from all the software bindings. RIFFA has been tested on Fedora 13 & 17 (32/64 bit vers.) and Ubuntu Desktop 10.04 LTS & 12.04 LTS (32/64 bit vers.). RIFFA relies on a custom Linux kernel driver which is supported on Linux kernels 2.6.27+ (tested on versions between 2.6.32 - 3.3.0). The Windows driver is supported on: Windows 7 in both 32 bit and 64 bit variants

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].