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

Uploaded Python 3

File details

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

File metadata

  • Download URL: naps-0.1.dev514.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.dev514.tar.gz
Algorithm Hash digest
SHA256 389231f11b2074445048ace316e449d388ed14d421c6915c8cfcbb265d57e66d
MD5 10559dd1c3e4d0d0375a8696d49f4da0
BLAKE2b-256 226d73d7c70f29d4d508abd21bbe5eb0d8c6a6dc8658b6c741d8b35b3161cd5d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: naps-0.1.dev514-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.dev514-py3-none-any.whl
Algorithm Hash digest
SHA256 b4b7a298aa5cbd51bf2034c6a15570bee9e6c842fc01aad0cc59201e15503632
MD5 af8c52d94ec39103ff0b34a11d0a1228
BLAKE2b-256 c6a0e3221a76e8a1e3ab796cf406d1ae25778b7935f416079286d5da7bec0bea

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