March 2-5, 2020

DoubleTree Hotel, San Jose, CA

MP Associates, Inc.

THURSDAY March 05, 8:30am - 11:30am | Donner

Application Optimized HW/SW Design & Verification of a Machine Learning SoC

Russell Klein - Mentor, A Siemens Business
Stephen Bailey - Mentor, A Siemens Business
Andrew Meier - Mentor, A Siemens Business
Lauro Rizzatti - Rizzatti LLC
Mathilde Karsenti - Mentor, A Siemens Business

Today, many embedded systems embody algorithms that were originally developed as software on general-purpose computers. For example, an audio wake-word recognition algorithm or a video object recognition program. However, due to application (product) constraints, these algorithms usually cannot be run as software on embedded processors – they simply will not meet the performance or power requirements of the system, the algorithm needs to be accelerated with greater power efficiency.

Transforming an algorithm from software to a fast and efficient hardware implementation is a challenging task. Ensuring that the functionality is not compromised as development progresses is critical. Often, not all of the algorithms are appropriate to be implemented in hardware, resulting in a need to design both the hardware and the software in concert.

This tutorial walks through the process of migrating an algorithm from generic software to a hardware implementation customized to the specific requirements of your system; making intelligent trade-offs between hardware and software along the way. It will explain the tools and techniques needed to go from “Software to Systems” and cover a broad range of solutions including simulation, emulation, prototyping, and High-Level Synthesis to design and verify SoCs and the software that runs on them.

The tutorial will use an example algorithm of an AI/ML object classification accelerator that takes a live camera feed and overlays bounding boxes and labels of objects classified in the feed. It can classify 20 objects and will be implemented as a combination of hardware and a software application running on a complete embedded Linux stack. This tutorial will cover everything from traditional UVM RTL verification to complex HW/SW verification to running real AI workloads and integration with AI/Deep Learning Frameworks such as TensorFlow.

Thank you to our Sponsor: