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.dev524.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.dev524-py3-none-any.whl (16.5 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: naps-0.1.dev524.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.dev524.tar.gz
Algorithm Hash digest
SHA256 de1c59ea36ff0313258b7dd6fb70b2496a01a72a2a52924f7a4e11c45830f37c
MD5 1b29e4d915c3bf6295d903b896e603fd
BLAKE2b-256 43279e97fa79956b08a21ee8068b13615d5c8205de8d3a1c20ca6c5ec12ad652

See more details on using hashes here.

File details

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

File metadata

  • Download URL: naps-0.1.dev524-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.dev524-py3-none-any.whl
Algorithm Hash digest
SHA256 88e5d60e2e92c14f85bf151311c6c14d57f1ac19510812bf65bcf953128ed4db
MD5 b47ff54fbefe099d90f5d4c81ed43ecb
BLAKE2b-256 0435eee7a2cf8edcced4a9609804d2d9f418f0c709c8f1a351c69f7dfa63aeaf

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