Skip to content
  1. Jul 16, 2025
  2. Jul 14, 2025
  3. Jun 13, 2025
    • Vivek Choradia's avatar
      MLECO-6135: Update MLEK dependencies to 25.05 components · 06885133
      Vivek Choradia authored and Alex Tawse's avatar Alex Tawse committed
      Updating third party dependencies to 25.05 versions. The full list
      can be found here:
      https://gitlab.arm.com/artificial-intelligence/ethos-u/ethos-u/-/blob/main/25.05.json
      
      
      
      +-------------------+------------------------------------------+
      | Dependency        | Commit/Tag                               |
      +-------------------+------------------------------------------+
      | cmsis-6           | efba702bbdb5610e866a745740fdf68f2d4d4af5 |
      | cmsis-nn          | 1438b3328d7f910423a7057f1abcb6d6576325f2 |
      | core-driver       | 25.05                                    |
      | core-platform     | 25.05                                    |
      | cortex-dfp        | 36d0d3b118ab8493865044551d05248a5fe53427 |
      | tensorflow        | 9d35a74b03fa313026982abb4d2c4ffe29de88bc |
      +-------------------+------------------------------------------+
      
      Vela version used by default has been bumped to 4.3.0.
      
      Dependencies not updated with this change:
      * cmsis-dsp: `v1.16.2` is still the latest stable release.
      * avh: No major updates since 925049e8.
      
      Change-Id: I21acdff4880f3ea634e398a5bf9ed9adaf36cdf9
      Signed-off-by: Vivek Choradia's avatarVivek Choradia <vivek.choradia@arm.com>
      Signed-off-by: Alex Tawse's avatarAlex Tawse <alex.tawse@arm.com>
      2 tags
      06885133
  4. May 30, 2025
  5. May 13, 2025
    • Kshitij Sisodia's avatar
      MLECO-6072: Adding ATfE/LLVM support · a4be1b2e
      Kshitij Sisodia authored
      
      
      Adding support for newer LLVM based Arm Toolchain for
      Embedded (ATfE). This is experimental at this stage but
      has been tested with versions 19.1.5, 20.0.0 and 20.1.0.
      For platforms, these changes have been tested on FPGA
      implementations AN552 and AN555 and all variants for FVPs
      supported.
      
      Major additions are the CMake toolchain file and linker
      scripts, along with required plumbing. CMake presets and
      documentation have been updated too. Linker scripts now
      have toolchain ID and extensions as suffix instead of just
      the extension.
      
      With the associated CMake toolchain file changes, support
      for semihosting has also been refreshed, making it possible
      to build and run semihosted applications on FVPs easily for
      all toolchains. To enable easy boot verification, a simple
      HAL test has been added. This needs to be built explicitly
      and will produce a small application that boots the target
      platform and calls HAL initialisation function.
      
      Change-Id: Id114ca45ed53411c2647a2a0f775ba76609068ac
      Signed-off-by: Kshitij Sisodia's avatarKshitij Sisodia <kshitij.sisodia@arm.com>
      a4be1b2e
  6. May 09, 2025
  7. May 05, 2025
  8. Apr 14, 2025
  9. Mar 25, 2025
    • Kshitij Sisodia's avatar
      MLECO-5658: Adding function sections · eb7dcd57
      Kshitij Sisodia authored
      
      
      Updated bare-metal toolchain files to always add function
      and data sections for both toolchains. This will reduce
      runtime code footprint. Again, it was previously disabled
      for legacy reasons (timing adapter driver implementation)
      that are no longer relevant.
      
      Change-Id: I15aa57d1cadcf2b92a5b9e01bd1d113161c67e84
      Signed-off-by: Kshitij Sisodia's avatarKshitij Sisodia <kshitij.sisodia@arm.com>
      eb7dcd57
  10. Mar 19, 2025
    • Kshitij Sisodia's avatar
      MLECO-5653: CMSIS-DSP build update · 38303940
      Kshitij Sisodia authored
      Addressing couple of issues raised here:
      
      * https://github.com/ARM-software/CMSIS-DSP/issues/242
      * #1
      
      
      
      CMSIS-DSP was previously using MLEK wrapper to set up the
      sources and compilation flags. This was done for legacy
      reasons that are no longer relevant. With these changes we
      rely completely on the CMSIS-DSP project's CMake config to
      avoid unnecessary duplication and maintenance cost.
      
      Compile option passed to Arm(R) Compiler `-ffp-mode=full`
      has been dropped as it is no longer required. This has been
      replaced with recommended `-ffast-math` option instead.
      
      Minor Jinja2 version bump (Python environment requirement)
      is also included.
      
      Change-Id: I826d0b4dd3f248cb4d91fe095717805b8d341467
      Signed-off-by: Kshitij Sisodia's avatarKshitij Sisodia <kshitij.sisodia@arm.com>
      38303940
  11. Mar 14, 2025
    • Kshitij Sisodia's avatar
      MLECO-5655: Updating to 25.02 dependencies · 528b515f
      Kshitij Sisodia authored
      Updating third party dependencies to 25.02 versions. The
      full list can be found here:
      https://gitlab.arm.com/artificial-intelligence/ethos-u/ethos-u/-/blob/9c339ddd5369e37ed554f7e39647f4e0967a3e2d/25.02.json
      
      Remote URLs for core-driver and core-platform have been
      updated to track these sources from https://gitlab.arm.com/
      
      
      as mlplatform is a read-only mirror for now and will not
      have any new changes.
      
      +--------------+------------------------------------------+
      | Dependency   |  Commit/Tag                              |
      +--------------+------------------------------------------+
      |avh           | 925049e8ab010388e48fab01fc0411cd9bd38899 |
      |cmsis-6       | 1a1799c6c58c47e737bb19523483344a25d29895 |
      |cmsis-nn      | e096196a0c49f065abc03d943c583cd50de424ba |
      |core-driver   | 25.02                                    |
      |core-platform | 25.02                                    |
      |tensorflow    | ef64591270691022a329cf04ba9e73ecfb15ddb8 |
      +--------------+------------------------------------------+
      
      Vela version used by default has been bumped to 4.2.0.
      
      Dependencies not updated with this change:
      
      * cmsis-dsp: `v1.16.2` is still the latest stable release
      * cortex-dfp: No major source change to current `c2c70a97`
      
      Change-Id: If5eccbb509e919dd9d101957d0915116a4e036e5
      Signed-off-by: Kshitij Sisodia's avatarKshitij Sisodia <kshitij.sisodia@arm.com>
      2 tags
      528b515f
  12. Feb 05, 2025
  13. Dec 24, 2024
    • Kshitij Sisodia's avatar
      MLECO-5105: cmsis_device target updates · c9c62cf1
      Kshitij Sisodia authored
      
      
      Minor change to `cmsis_device` target with the `CMSIS_device_header`
      definition used instead of `CPU_HEADER_FILE`. This is done to help
      with portability as other related repositories use this specific
      definition.
      
      Some other changes have been made to address concerns about cyclic
      dependency on platform headers from VSI camera interface. Platform
      driver target will not add header path to cmsis_device target so the
      VSI CMake file doesn't need to know/guess path to platform-drivers
      target to get to IRQ definitions it needs.
      
      Change-Id: Ia6b4d22bcdfb1f44886be7afbd00f53fcbc057ee
      Signed-off-by: Kshitij Sisodia's avatarKshitij Sisodia <kshitij.sisodia@arm.com>
      c9c62cf1
  14. Dec 13, 2024
    • Kshitij Sisodia's avatar
      MLECO-5415: Fix for CMSIS-NN usage · 89e99fda
      Kshitij Sisodia authored
      
      
      Fix for recent change to use CMake wrapper for building TensorFlow
      Lite Micro - CMSIS-NN kernels were not being included in the build
      heavily impacting performance for CPU-only path. This patch has a
      minor change to correctly set `CORE_SOFTWARE_ACCELERATOR` CMake
      variable to ensure the CMake wrapper actually adds CMSIS-NN to the
      build.
      
      Also, with the CMake build flow for CMSIS-NN and TensorFlow Lite
      Micro together, the linker scripts have been modified to allow object
      file name based memory placement to still work as it was for Makefile
      based flow earlier.
      
      Change-Id: Iedd91d4db7bbaa40603df6a7e93e99274be547d6
      Signed-off-by: Kshitij Sisodia's avatarKshitij Sisodia <kshitij.sisodia@arm.com>
      2 tags
      89e99fda
  15. Dec 12, 2024
  16. Dec 05, 2024
    • Alex Tawse's avatar
      MLECO-5413: 24.11 Release · b685fb14
      Alex Tawse authored
      
      
      Updating submodules to pinned 24.11 components
      
      * core-platform:	24.11 tag
      * core-driver:		24.11 tag
      * cmsis-nn:		22080c68d040c98139e6cb1549473e3149735f4d
      * cmsis-dsp:		v1.16.2 tag
      * cmsis-6:		8c4dc58928b3347f6aa98b6fb2bf6770f32a72b7
      * tensorflow:		f91dd916e5de773fd2150136d025ae2dfd31d48f
      
      Vela compiler (fetched from PyPi) version updated to 4.1.0.
      
      Change-Id: I07d3d92fa70bbfb8551cf0a2c133ee9101795d29
      Signed-off-by: Alex Tawse's avatarAlex Tawse <alex.tawse@arm.com>
      24.11-rc1
      b685fb14
  17. Nov 26, 2024
    • Kshitij Sisodia's avatar
      MLECO-5966: Update for Sram_Only memory mode · 68df2d29
      Kshitij Sisodia authored
      
      
      For `Sram_Only` memory mode the "weights" RO traffic was previously
      wired through the second set of AXI ports and the timing adapter
      settings were kept the same as the first set so this traffic also
      sees the same bandwidth and lateny envelope. However, it is quite
      possible to see slightly better performance if we only use one set
      of AXI ports. For Sram_Only memory mode, the Vela compiler schedules
      the R/W expecting to use only one set so this change also aligns
      with how Vela intends such a model to be deployed on the NPU.
      
      Change-Id: I7b37c3548e2ab00dda55ac1e13a7883f8e588f9f
      Signed-off-by: Kshitij Sisodia's avatarKshitij Sisodia <kshitij.sisodia@arm.com>
      68df2d29
  18. Nov 14, 2024
  19. Nov 05, 2024
  20. Nov 04, 2024
    • Kshitij Sisodia's avatar
      MLECO-5340: Initial VSI support · 58d9dd0b
      Kshitij Sisodia authored
      
      
      Adding basic Virtual Streaming Interface (VSI) support for HAL camera
      interface alongside the default `hal_camera_static_images` library.
      Platform drivers for MPS3 and MPS4 targets can enable use of this
      library based on a new CMake configuration parameter `FVP_VSI_ENABLED`
      By default this is turned OFF.
      
      This will allow all vision-based examples to stream images from camera
      connected to a host machine. Although VSI could also be used to read
      frames from an input video file on disk (on host), provision for this
      has not been added.
      
      Change-Id: I56bd2fa07742170b146cae51e6ff10ee1900a63f
      Signed-off-by: Kshitij Sisodia's avatarKshitij Sisodia <kshitij.sisodia@arm.com>
      58d9dd0b
  21. Oct 30, 2024
    • Alex Tawse's avatar
      Bumping Vela to 4.0.1 · 1e3af1ab
      Alex Tawse authored
      
      
      * Moving to Vela 4.0.1
      * Done primarily to use prebuilt wheels
        for non-Linux platforms
      
      Signed-off-by: Alex Tawse's avatarAlex Tawse <alex.tawse@arm.com>
      Change-Id: I9f55462a2a48d849ec2b5584e3cb5269842167ab
      1e3af1ab
    • Kshitij Sisodia's avatar
      MLECO-5339: Adding HAL camera and audio interfaces · 259b3057
      Kshitij Sisodia authored
      
      
      Adding a HAL camera and audio interface to allow these as standard
      APIs used across use cases. This exercise is primarily to pave the
      way for adding Virtual Streaming Interface (VSI) support for Arm
      Fixed Virtual Platforms (FVPs) in future work. However, this also
      makes the application more portable and easier to add support for
      physical (camera or microphone) devices, should we choose to do so.
      
      This patch is big as it cuts across use cases and HAL layers with
      platform support. The implementation of baked-in sample images and
      audio data is quite old in this repository. To wire things up via
      HAL for something which was only application level required touching
      quite a few files.
      
      General outline of changes:
      --------------------------
       * File generation part has been changed so it generates a self
         contained set of C files in a separate directory that provide
         strongly linked functions that HAL camera or audio interface
         relies on.
       * Two new "components" (camera and audio) under HAL. They have
         weak implementations of functions that should be overridden by
         application sources. The reason for doing it this way is different
         files are generated for different use cases but the there is only
         one target we need under HAL - it is built only once but different
         application sources can override and use this module differently.
       * All the use cases changed to move away from using the generated
         files' functions directly. Instead the static baked-in data is now
         accessed via the HAL provided API's.
       * Tests for all use cases changed for same reason as above.
      
      Byproduct of above changes:
      --------------------------
       * Apps don't need to be interactive (user input). The application
         level cannot have knowledge of how many baked in samples we have
         or the filenames. This knowledge only lives below HAL.
       * Tests which were validating inferences by index have been removed.
      
      Change-Id: I09964ce87ea5cea5700d141eef199d3d2be6686c
      Signed-off-by: Kshitij Sisodia's avatarKshitij Sisodia <kshitij.sisodia@arm.com>
      259b3057
  22. Oct 24, 2024
  23. Oct 17, 2024
  24. Oct 15, 2024
    • Kshitij Sisodia's avatar
      MLECO-5410: Minor changes for LCD component · df17f79a
      Kshitij Sisodia authored
      
      
      Allowing some minor customizations for LCD display by passing some
      additional configuration parameters to the `lcd` component under HAL.
      
       - LCD title display can be turned ON/OFF (default is ON). CMake
         configuration parameter: `LCD_TITLE_EN`.
       - The title string itself can be changed. CMake configuration
         parameter: `LCD_TITLE_STRING`.
      
      Additionally, at application level, ImageUtils.hpp now has some more
      colours for background and text colours to choose from. These could
      potentially be used to drive a "light" or "dark" theme.
      
      Change-Id: Ia7c7b4f0e818ce02ba5bc94beac0da390efdf985
      Signed-off-by: Kshitij Sisodia's avatarKshitij Sisodia <kshitij.sisodia@arm.com>
      df17f79a
  25. Oct 04, 2024
  26. Oct 02, 2024
  27. Sep 27, 2024
  28. Sep 23, 2024
  29. Sep 11, 2024
  30. Sep 06, 2024
  31. Jul 18, 2024
  32. Jul 05, 2024
    • Kshitij Sisodia's avatar
      MLECO-5117: Improving auto-generation of test files · 97478530
      Kshitij Sisodia authored
      
      
      The tests expected all the data types across input and output tensors
      to be same. These were also limited to 8-bit signed/unsigned values.
      This patch make it possible to have the test vectors be of different
      types while being able to get a generic (void) pointer to arrays from
      the generated getter functions.
      
      Change-Id: Id6d8b13803cd2f2ed66fee52eaed86af194b995d
      Signed-off-by: Kshitij Sisodia's avatarKshitij Sisodia <kshitij.sisodia@arm.com>
      97478530
  33. Jun 26, 2024
  34. Jun 19, 2024
Loading