Giter Site home page Giter Site logo

sv-axi-cores's Introduction

sv-axi-cores

This repository contains a collection of IP cores with AXI4 and AXI4-Stream interfaces, written in (System)Verilog. The cores in this repository have been verified using Icarus verilog and cocotb, and formal proofs are under development for some of the cores (see the formal branch for more details).

Contents

axis_bram_writer

This core facilitates writing AXI4-Stream packets to FPGA block RAM; it contains an AXI4-Stream slave interface and a BRAM write-only interface. The BRAM is not included inside this core, and has to be instantiated seperately.

Packet contents are written to successive memory addresses starting at address 0. The TLAST signal indicates the end of a packet, at which point the data will be written to address 0 again. An interrupt output is provided which indicates the end of a packet. An optional trigger input can be enabled, to indicate that the next packet should be written to BRAM. When the trigger input is disabled the core is in continuous mode, where all packets are recorded and packet data will immediately be overwritten by the next packet.

axis_bram_reader

This core faciliates reading AXI4-Stream packets from FPGA block RAM; it contains an AXI4-Stream master interface and a BRAM read-only interface. The BRAM is not included inside this core and must be instantiated separately.

Packet contents are read from successive memory addresses starting at address 0. The input signal limit controls the size of the packet (if limit is 0 the packet is considered to fill the whole BRAM). The TLAST signal is used to indicate the end of a packet.

axi_bram_interface

This core provides a translation between an AXI4-Lite interface and a BRAM memory block; it contains an AXI4-Lite (memory-mapped) slave interface and one BRAM (read and write) interface. The BRAM is not included inside this core, and has to be instantiated seperately.

axi_axis_recorder

This core records data from an AXI4-Stream, buffers it in Block RAM and allows it to be read via an AXI4-Lite interface.

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.