Ethos-U65 is a neural processing unit (NPU) designed to accelerate machine learning inference. This NPU is integrated with i.MX93 processor and works in concert with the Cortex-M core and on-chip SRAM of the SoC. Currently, it provides the following main features:
Runs at 1 GHz and provides 0.5 Tops computation power (256 MAC/cycle).
Targets quantized Convolutional Neural Networks (CNN) and supports 8 bit weights and 8/16 bit activations.
Supports TensorFlow Lite (TFLite) inference with fallback to Cortex-A.
Supports TensorFlow Lite Micro (TFLite-Micro) inference with fallback to Cortex-M.
Supports inference API to offload the entire model to TFLite-Micro and NPU on Cortex-M.
Supports TFLite API to offload the customized
ethos-uoperator to NPU on Cortex-M.
Provides Vela compiler to optimize the model performance and memory usage for the Ethos-U65 target.
For more details on this topic, check eIQ machine learning toolkit.
You can manage the i.MX93 Ethos-U65 driver support through the kernel configuration option Arm Ethos-U NPU driver (
This option is enabled as built-in on the ConnectCore 93 Development Kit kernel configuration file.
The Ethos-U65 driver for the i.MX93 is located at
The driver creates a node under
# ls -la /dev/ethosu0
crw------- 1 root root 510, 0 Jun 20 15:48 /dev/ethosu0
Device tree bindings
There are no specific device tree bindings for the NPU.
NPU is enabled by default via a device tree overlay on the ConnectCore 93 variants that support it.
The Digi Embedded Yocto boot script automatically detects if the variant supports it and adds the NPU overlay to the U-Boot environment
To disable NPU, set the following environment variable in U-Boot:
=> setenv disable_npu 1
This prevents the boot script from adding the NPU overlay, which results in the system disabling the NPU interface.
See eIQ machine learning toolkit for information on how to use it.