Skip to content
heliaAOT
API Reference
HELIA HUB

defines

Machine-readable model

  • SocCapabilityclassSoC capabilities that kernel selection and the operator checks read.
  • MemoryTypeclassThe memories a target can have, spelled in lowercase in configuration (sram).
  • SocPlatformclassBase class for SoC platforms
class

SoC capabilities that kernel selection and the operator checks read.

helia_aot/platforms/defines.py:10

SocCapability()

SoC capabilities that kernel selection and the operator checks read.

class

The memories a target can have, spelled in lowercase in configuration (sram).

helia_aot/platforms/defines.py:28

MemoryType()

The memories a target can have, spelled in lowercase in configuration (sram).

class

Base class for SoC platforms

helia_aot/platforms/defines.py:125

SocPlatform()

Base class for SoC platforms

Provisional: importable, but outside the compatibility promise; a minor release can change or remove it.

attribute

speeds

Python

helia_aot/platforms/defines.py:141

speeds: list[int] = Field(default_factory=list, description='List of supported clock speeds in MHz')

Declared clock speeds in MHz, for display only

attribute

Whether this platform supports Armv8.1-M MVE-FP / FP16 kernels.

helia_aot/platforms/defines.py:187

supports_fp16: bool

Whether this platform supports Armv8.1-M MVE-FP / FP16 kernels.

Resolution order:

  1. When :attr:SocCapability.FP16 is declared explicitly, it is honored as a platform/toolchain capability. It is rejected only when it contradicts a known non-FP16 core (_NON_FP16_CPUS, e.g. Cortex-M4/M7/M33); unknown or custom CPUs are trusted so bespoke or future MVE-FP targets can opt in through the extension point without a library change.
  2. When the capability is absent, FP16 is inferred from a normalized (case-insensitive) match of :attr:cpu against the known FP16-capable cores (_FP16_CPUS) for backward compatibility with platforms that only set cpu.
attribute

Whether this platform declares an attached NPU (Arm Ethos-U).

helia_aot/platforms/defines.py:227

supports_npu: bool

Whether this platform declares an attached NPU (Arm Ethos-U).

Unlike :attr:supports_fp16 there is no CPU-based inference: the NPU is a discrete accelerator that cannot be deduced from the core, so the capability must be declared explicitly via :attr:SocCapability.NPU. Operators that generate NPU-only code (e.g. the Ethos-U custom operator) use this to reject conversion for platforms without an accelerator at convert time, instead of failing later in the integrator’s build.