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

Uploaded Python 3

File details

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

File metadata

  • Download URL: naps-0.1.dev523.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.dev523.tar.gz
Algorithm Hash digest
SHA256 3249714d7449f69561285b45eba05d49af4917773e00bd1417351c4208b599f1
MD5 dd2830424229f36c0757053d0b3a9c64
BLAKE2b-256 a0d069d89625760995c8cebe846ed3826195136d7f04d284d3c23b06f1cab062

See more details on using hashes here.

File details

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

File metadata

  • Download URL: naps-0.1.dev523-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.dev523-py3-none-any.whl
Algorithm Hash digest
SHA256 74fa1b5212ec5d4d722d99adb52f6378efa0fe406b5fc3e64b3de3e694a4cb64
MD5 511ffe6d322e60557aaf8e0130f097e5
BLAKE2b-256 c11467bc4dfa06ed44059f2a39bd5ccc97221f491887ee7a0dda3264275540e8

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