GithubHelp home page GithubHelp logo

pothosware / pothoszynq Goto Github PK

View Code? Open in Web Editor NEW
21.0 18.0 16.0 18.24 MB

DMA source and sink blocks for Xilinx Zynq FPGAs

Home Page: https://github.com/pothosware/PothosZynq/wiki

License: Boost Software License 1.0

C++ 0.04% Makefile 0.01% C 4.21% Shell 0.01% VHDL 78.45% Tcl 0.20% Verilog 0.22% SystemVerilog 0.07% CMake 0.01% HTML 10.19% Coq 6.61%
pothos zynq dma fpga xilinx vivado pothos-framework

pothoszynq's Introduction

DMA source and sink blocks for Xilinx Zynq FPGAs

The Pothos Zynq support package provides:

  • DMA source and sink blocks for zero-copy buffer integration with a Pothos data flow
  • a linux kernel module for interfacing with an AXI DMA engine in the programmable logic
  • loopback examples in Vivado, Zynq boot files, and documentation to recreate the demo

Layout

  • kernel/ - the Pothos AXI DMA support linux kernel module
  • driver/ - the Pothos AXI DMA userspace driver with C API
  • blocks/ - Pothos framework DMA source and sink blocks
  • loopback_microzed/ - example Vivado loopback project and boot files

Dependencies

  • Pothos library
  • Zynq processor running linux

Building

Configure, build, and install with CMake

Using DMA blocks

insmod pothos_zynq_dma.ko
ls /dev/pothos_zynq_dma*

Licensing information

Use, modification and distribution is subject to the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

pothoszynq's People

Contributors

guruofquality avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pothoszynq's Issues

FPGA logic to create tuser from stat/ctrl user data

We want to create a AXI DMA channel support "lite" that can deal with tuser without requiring the AXI DMA channel mode which requires additional resources and has S2MM limitations for automatic SG table advancement.

The control bus already forwards arbitrary user data from scatter gather entries and vice-versa for status bus. This can be used with a simple state machine to drive/read-in tuser.

Source/Sink for ADC/DAC interface

Hi,
We have a small data rate ADC and DACs upto 4MSPS which are interfaced with ZYNQ using LVDS channels.
We created the IP which produces ADC Samples over axi-stream interface. Can we use this frame work for data copy from PS to PL and PL to PS? Or its only designed for some computation acceleration blocks to pass data from Pothos framework running in ZYNQ PS.

DMA Performance

Hi, I just found your project and was curious if you've done any performance benchmarking of your driver for data transfer rates between CPU/FPGA? I've been working with the zynq-xdma driver from bmartini and while it works fairly well, it doesn't support scatter/gather so I was curious if that really improves performance or not.
Thanks,
-Austin

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.