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

Uploaded Python 3

File details

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

File metadata

  • Download URL: naps-0.1.dev513.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.dev513.tar.gz
Algorithm Hash digest
SHA256 a0d5071b38fede6a5087c9bebdf06be523a820c8ab66ef458b18db64057b87e0
MD5 0c9fe990c7be7e250ff10cff5140716f
BLAKE2b-256 a2c95fde77cb20014cec94c41302c174f125d8f0218b7bd0bfea2350da41f0ad

See more details on using hashes here.

File details

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

File metadata

  • Download URL: naps-0.1.dev513-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.dev513-py3-none-any.whl
Algorithm Hash digest
SHA256 6612184f59c641d2a7b565ccf7c47d658b816b7c593b2dfa134d07b9366aae5a
MD5 1eff7bdb922f0eb867be1451863b6f0e
BLAKE2b-256 60fe2feab0c99bf1512cb9789ce4e3d57fad36cbc4962b8a652009851eec394f

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