Updated March 2023. Content subject to change. Copyright (c) 2023 Sienda Multimedia Ltd. All rights reserved.
The Sienda Time Sensitive Network Stack is a software library written in C++ that provides full protocol support for the IEEE Time Sensitive Networking (TSN) standards defined in IEEE 802.1BA.
It can be used to implement Audio Video Bridging (AVB) or TSN endpoints, and supports the following standards:
The library can be deployed on a variety of architectures, including ARM Cortex M MCUs, Cortex A MPUs, and desktop environments (OSX, Windows, Linux). The library is portable and should build on any system with a C++14 compliant compiler, (double) floating point support and 64 bit integer (uint64_t) support.
The library is fully encapsulated and interfaces with an application (and hardware) via a well defined API. While the library provides the majority of the processing and protocol handling required by an AVB endpoint, the application must interface with the hardware and provide the following services:
The library provides full AVDECC 1722.1 support. The entity model may be described by an XML file or a binary file.
Architecture Guide The Architecture Guide details the hardware requirements of an AVB endpoint, and how the hardware and firmware interacts with the Sienda TSN Stack.
Programming Guide The Programming Guide details everything you need to know to develop firmware for a TSN audio endpoint using the Sienda TSN Stack.
API Reference Doxygen docs for the Stack API.
Various reference AVB endpoints with AVB/MILAN firmware are available from Sienda. Firmware images are available to evaluate performance, and full source code is available to licencees of the Sienda TSN stack. All designs use off-the-shelf evaluation boards to reduce cost and enable customers to get started straight-away. This means that clock recovery, persistent storage, and multiple talker streams are not supported in all cases, due to external component requirements.
Eval Board | Silicon | Brief | Documentation |
---|---|---|---|
STM32F429 Nucleo-144 (STM32F4) |
Low-cost solution Up to 32 audio channels (STM32H7) RTOS |
STM32 Nucleo EP | |
Beagleboard X15 TI AM5728 |
Mid-tier solution Up to 128 audio channels RTOS / Linux Additional DSP |
X15 EP | |
ADI EV-SC598 (ADI ADSP-SC598) |
Mid-tier solution Up to 128 audio channels RTOS / Linux Additional DSP |
ADSP-SC598 EP | |
Adlink I-Pi SMARC (Intel Elkhart Lake) |
Mid-tier solution >128 audio channels Linux Additional processing |
ElkhartLake EP |