Skip to content

Arm-Examples/SDS-Examples

Repository files navigation

License Build_AC6 Test_Alif_E7 Test_Alif_E8 Test_ST_KeywordSpotting Test_ST_MotionRecognition

SDS-Examples

SDS-Framework: Workbench for AI model and DSP development

This repository contains examples that show the usage of the Synchronous Data Streaming (SDS) Framework.

Watch this video and explore the projects below.


Quick Start

  1. Install Keil Studio and Arm SDS from the VS Code marketplace.
  2. Clone this Git repository into a VS Code workspace.
  3. Open the CMSIS View in VS Code and use the ... menu to choose an example via Select Active Solution from workspace.
  4. The related tools and software packs are downloaded and installed. Review progress with View - Output - CMSIS Solution.
  5. In the CMSIS view, use the Action buttons to build, load and debug the example on target hardware.
  6. Follow the instructions in the example README and use the SDS view to show, record, and playback data streams.

Example Description

The SDS examples are configured for various Evaluation Boards and use the MDK-Middleware for the SDSIO Interface. New hardware targets can be added using board layers that provide the required API interfaces. The examples are configured for Keil Studio for VS Code. Run a Blinky example for the related board first to verify tool installation.

Example Description
Alif/AppKit-E7_USB SDS connecting via USB to Alif AppKit-E7 board.
Alif/DevKit-E8_ETH SDS connecting via Ethernet to Alif DevKit-E8 board.
ST/B-U585I-IOT02A/MotionRecognition SDS connecting via USB to STMicroelectronics B-U585I-IOT02A board. Implements motion recognition algorithm with sensor interface.
ST/B-U585I-IOT02A/KeywordSpotting SDS connection via USB to STMicroelectronics B-U585I-IOT02A board. Implements keyword spotting algorithm with audio interface.

Tip

Each example is self-contained in a directory. The tool configuration and CI workflows are in separate directories listed below.

Tool and CI Directory Structure

File/Directory Content
vcpkg-configuration.json Setup for development tools on desktop.
.ci Files that are related to the Continuous Integration (CI) tests.
.github/workflows GitHub Actions scripts for build and execution tests.

Continuous Integration (CI)

The repository uses GitHub Actions to test project build with AC6 and execute algorithm tests. Refer to Understanding GitHub Actions and Arm FVPs documentation for more information.

CI Workflow
Description
Build_AC6 Use Arm Compiler for Embedded (AC6) to create binaries for different configuration of targets, build types, and boards.
Test_Alif_E7 Build the binary for an object detection algorithm and execute a regression test using an FVP model. Compare the original SDS recording with the newly generated recording produced during the simulator run. Store the build outputs and SDS recordings as workflow artifacts.
Test_Alif_E8 Build the binary for an object detection algorithm and execute a regression test using an FVP model. Compare the original SDS recording with the newly generated recording produced during the simulator run. Store the build outputs and SDS recordings as workflow artifacts.
Test_ST_KeywordSpotting Build the binary for a keyword spotting algorithm and execute a regression test using an FVP model. Compare the original SDS recording with the newly generated recording produced during the simulator run. Store the build outputs and SDS recordings as workflow artifacts.
Test_ST_MotionRecognition Build the binary for a motion recognition algorithm and execute a regression test using an FVP model. Compare the original SDS recording with the newly generated recording produced during the simulator run. Store the build outputs and SDS recordings as workflow artifacts.

Issues or Questions

Raise questions or issues for these examples on the repository github.com/ARM-software/SDS-Framework.

About

This repository contains examples that show how to use the Synchronous Data Streaming (SDS) framework.

Topics

Resources

License

Stars

1 star

Watchers

7 watching

Forks

Releases

No releases published

Contributors

Languages