Skip to content

Latest commit

 

History

History
107 lines (66 loc) · 9.73 KB

README.md

File metadata and controls

107 lines (66 loc) · 9.73 KB

Analog Devices AI Documentation

This is the home for IC, EV Kit, MSDK, and AI documentation for the Analog Devices MAX78000/MAX78002 AI product family.

START HERE:

->->-> Getting Started with the MAX78000 Evaluation Kit

->->-> Getting Started with the MAX78000 Feather Board

->->-> Getting Started with the MAX78002 Evaluation Kit

->->-> Getting Started with the MAXREFDES178# Cube Camera

->->-> Understanding Artificial Intelligence Video Series


Project Structure

The project consists of five repositories:

  1. This repo (“Documentation”)

  2. The microcontroller software development kit (MSDK), which contains peripheral drivers and example programs ready to run on the Evaluation Kit: Analog Devices MSDK (includes support for both MAX78000 and MAX78002). See here for the most recent MSDK Installation Guide.

  3. The training repo, which is used for deep learning model development and training: ai8x-training

  4. The synthesis repo, which is used to convert a trained model into C code using the “izer” tool: ai8x-synthesis

  5. The reference design repo, which contains application code and documentation for the reference designs: refdes

Links to MAX78000/MAX78002 Documentation

Application Notes

  1. Developing Power-optimized Applications on the MAX78000:

    Abstract: Power consumption is a key factor for edge Artificial Intelligence (AI) applications where the entire system is powered by small battery cells and is expected to operate for months without recharging or replacing the batteries. The MAX78000 ultra-low power AI microcontroller is built to target such applications at the edge of the IoT. In this document, various configurations are described to enable users to develop power-optimized applications on the MAX78000, along with benchmarking examples. The power optimization methods are applied to two case study applications—Keyword Spotting with 20 keywords (KWS20) and Face Identification (FaceID), and the reported results can be used as a guideline for the user’s application.

  2. Face Identification Using MAX78000:

    Abstract: The MAX78000 is an ultra-low power Convolutional Neural Network (CNN) inference engine to run Artificial Intelligence (AI) computations on tiny edges of IoT. Yet the device can execute many complex networks to achieve critical and popular applications. This document describes an approach for Face Identification (FaceID) running on the MAX78000 where the model is built with ADI’s development flow on PyTorch, trained with different open datasets and deployed on the MAX78000 evaluation board.

  3. Keywords Spotting Using the MAX78000:

    Abstract: Audio assistants have become very popular with range of applications from household to automotive and industrial products and IoT. Such devices constantly listen to their surroundings and wake up on pretrained keywords to execute certain commands. Power consumption is a key factor for many of such resource constrained edge applications, where the connectivity to the cloud for processing of raw data is not feasibly. The MAX78000 is a new breed of Artificial Intelligence (AI) microcontroller built to enable neural networks to execute at ultra-low power and live at the edge of the IoT. In this document, we show case the implementation of a keyword spotting application on the MAX78000. The machine learning model is built with ADI’s development flow on PyTorch, trained with a subset of Google’s speech command dataset with 20 keywords, and deployed on the MAX78000EVKIT.

  4. Data Loader Design for MAX78000 Model Training:

    Abstract: The MAX78000, Artificial Intelligence Microcontroller with Ultra-Low-Power Convolutional Neural Network Accelerator, can effectively run artificial intelligence models on the chip. Users should first develop a neural network model, using Analog Devices’s development flow on PyTorch. The MAX78000 synthesizer tool then accepts the PyTorch checkpoint and the model description in the YAML format to automatically generate the C code to be compiled and executed on the MAX78000. One of the essential software components used in the model development phase is the data loader, which is responsible for application-specific data preparation tasks. This document describes principles and design considerations on a data loader implementation when preparing application-specific training and validation/test set entities suited for the MAX78000 model training.

  5. Developing Power-Optimized Applications on MAX78002

    Abstract: Power consumption is a key factor for edge AI applications, where the entire system is powered by small battery cells and is expected to operate for months without recharging or replacing the batteries. The MAX78002 ultra-low power AI microcontroller is built to target such applications at the edge of the internet-of-things (IoT). This document describes various options to develop power-optimized applications on the MAX78002 and presents benchmarking examples.

Additional MAX78000/MAX78002 and Machine Learning Education Resources

Videos, Webinars, Presentations, Books and More

Interested in the MAX78000/MAX78002, or just getting started with Machine Learning? Here’s a set of videos and books to get you going.