Git Product home page Git Product logo

xbsv's Introduction

Connectal

Connectal provides a hardware-software interface for applications split between user mode code and custom hardware in an FPGA. Portal can automatically build the software and hardware glue for a message based interface and also provides for configuring and using shared memory between applications and hardware. Communications between hardware and software are provided by a bidirectional flow of events and regions of memory shared between hardware and software. Events from software to hardware are called requests and events from hardware to software are called indications, but in fact they are symmetric.

A logical request/indication pair is referred to as a portal". An application can make use of multiple portals, which may be specified independently. A portal is specified by a BSV interface declaration, from which connectalgen generates BSV and C++ wrappers and proxies.

Connectal has a mailing list: https://groups.google.com/forum/#!forum/connectal

The Connectal repo has moved to https://github.com/cambridgehackers/connectal

The old xbsv code is available on the "archive" branch of this repository.

xbsv's People

Contributors

jankcorn avatar jameyhicks avatar chamdoo avatar lstewart avatar

Stargazers

 avatar  avatar Yukimasa Sugizaki avatar Kamyar Mohajerani avatar Han Wang avatar Cody Planteen avatar  avatar godspeed1989 avatar

Watchers

Martin Pompéry avatar  avatar James Cloos avatar  avatar  avatar  avatar MaxMax avatar Vinayaka Jyothi avatar  avatar  avatar

xbsv's Issues

PCIe arbiter/dispatcher enhancements

[ ] combine arbiter/dispatcher
[ ] tag request TLPs to the bus
[ ] use those tags to dispatch TLP responses to the appropriate internal clients

Reduce knowledge of hardware in pcieportal and zynqportal drivers

This is really only needed for the PCIe case, but let's keep them consistent.

  1. Move the control interface to offset 0
  2. Add a register for the number of FIFOs and the number of addresses per FIFO
  3. Add a register containing the offset of the first FIFO of the interface
  4. Add a register containing the offset of the next interface

We will still have the address of a small number of registers hardcoded into the software, but we should not have to hardcode the other offsets into the drivers.

Specify HW/SW Request and Indication interfaces on the command line

In order to eliminate some horrible hacks, let's specify the hardware's request and indication interfaces on the command line.

Also, specify the top module of the hardware on the command line. The top module shall implement an interface that includes the specified request interfaces and shall take interface parameters for each of the indication interfaces.

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.