Skip to main content

naps - The Relaxed Amaranth Packages Collection

Project description

Building Blocks & Tools for FPGA Design with Python & Amaranth HDL. Mostly a place to experiment and figure out how to build things. Also the incubator for the future AXIOM Beta camera gateware & the home of the current AXIOM micro gateware.

This repo contains:

  • Prototypes of the upcoming Amaranth data types PackedStruct and Interface (here called Bundle) (in src/lib/data_structure/)

  • A stream Abstraction with various building Blocks: (in src/lib/stream/)

    • FIFOs

    • A gearbox for changing the width

    • Helpers for building other Stream cores

    • Miscellaneous Debug and Inspection tools

  • various Amaranth cores (in src/lib/) for:

    • AXI and AXI Lite including a Buffer reader and Writer

    • A CSR bank that can be wired to an AXI bus

    • HDMI (currently the DVI subset; derived from Litevideo)

    • A HISPI reciever (for the use with aptina / onsemi image sensors)

    • A core for streaming data over USB3 using the ft601

    • Some utility video processing (like debayering)

  • tools for gluing together SOCs (currently supports the Xilinx Zynq and JTAG based plattoforms) in src/soc/

    • Making heavy use of Amaranth HDL Platform abstractions (wrapping existing plattforms)

    • Provides a bus agnostic way to describe (low speed) peripherals

    • Emits Python code that can be used to access the designs CSRs (“pydriver”)

    • Generate devicetree overlays for loading linux device drivers

    • pack “fatbitstreams” that bundle setup logic, drivers and the bitstream

    • there is a Poster about the naps soc infrastructure.

  • platform definitions for both the AXIOM Beta and the AXIOM Micro in src/devices/

  • a variety of other smaller half-working experiments in src/experiments/

    • linux framebuffer HDMI output

    • USB3 Plugin module gateware (wip)

    • AXIOM micro camera gateware (wip)

    • test gateware to test connectors for their ability to transmit high speed data (via a loopback test)

    • test gateware for the axi writer & reader

Installation

Installing

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

naps-0.1.dev525.tar.gz (16.4 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

naps-0.1.dev525-py3-none-any.whl (16.5 MB view details)

Uploaded Python 3

File details

Details for the file naps-0.1.dev525.tar.gz.

File metadata

  • Download URL: naps-0.1.dev525.tar.gz
  • Upload date:
  • Size: 16.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.12

File hashes

Hashes for naps-0.1.dev525.tar.gz
Algorithm Hash digest
SHA256 4b1b7e84f16b925d14148cba2c96da55d3c2352af223b96f91b4f637c21ffd04
MD5 8a5a8379282c162080ce20be9d2dccfe
BLAKE2b-256 4cafd9c113505bdce371f7d88b21096a93ced6cf8c82166e66db3e2e445f8b1e

See more details on using hashes here.

File details

Details for the file naps-0.1.dev525-py3-none-any.whl.

File metadata

  • Download URL: naps-0.1.dev525-py3-none-any.whl
  • Upload date:
  • Size: 16.5 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.12

File hashes

Hashes for naps-0.1.dev525-py3-none-any.whl
Algorithm Hash digest
SHA256 8c042fa9f6f9066db6f8d67ad4eb6419f7de7350c5e4a90653e4860164f75847
MD5 e8ee9661c84ec0b4ea47d1ccf08e3270
BLAKE2b-256 e658d486d81d6ca6e41dc6d53cf5d0a898668beb2b598fb6e98b0deb1d1c6e3a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page