Skip to content

Repository files navigation

LicenseBuild_AC6Test_Alif_E7Test_Alif_E8Test_ST_KeywordSpottingTest_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.

ExampleDescription
Alif/AppKit-E7_USBSDS connecting via USB to Alif AppKit-E7 board.
Alif/DevKit-E8_ETHSDS connecting via Ethernet to Alif DevKit-E8 board.
ST/B-U585I-IOT02A/MotionRecognitionSDS connecting via USB to STMicroelectronics B-U585I-IOT02A board. Implements motion recognition algorithm with sensor interface.
ST/B-U585I-IOT02A/KeywordSpottingSDS connection via USB to STMicroelectronics B-U585I-IOT02A board. Implements keyword spotting algorithm with audio interface.
SDS-STM32N6SDS connecting via USB to STM32N6570-DK board

Tip

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

MoreDescription
Alif/AppKit-E7_USBSDS connecting via USB to Alif AppKit-E7 board.
Alif/DevKit-E8_ETHSDS connecting via Ethernet to Alif DevKit-E8 board.
ST/B-U585I-IOT02A/MotionRecognitionSDS connecting via USB to STMicroelectronics B-U585I-IOT02A board. Implements motion recognition algorithm with sensor interface.
ST/B-U585I-IOT02A/KeywordSpottingSDS connection via USB to STMicroelectronics B-U585I-IOT02A board. Implements keyword spotting algorithm with audio interface.

Tool and CI Directory Structure

File/DirectoryContent
vcpkg-configuration.jsonSetup for development tools on desktop.
.ciFiles that are related to the Continuous Integration (CI) tests.
.github/workflowsGitHub 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_AC6Use Arm Compiler for Embedded (AC6) to create binaries for different configuration of targets, build types, and boards.
Test_Alif_E7Build 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_E8Build 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_KeywordSpottingBuild 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_MotionRecognitionBuild 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.

Related

About

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

Topics

Resources

Stars

1 star

Watchers

7 watching

Forks

Used by

Contributors

Languages