Below are summaries of various interests associated with developing a SoC, about our community, or this our community web site. You can use the navigation scheme above to get more details of each area of interest.

Name Description Resources
Student Area

Welcome to the Student Area!

Getting Started with SoC Labs

SoC Labs is in one view a shared repository of resources, tools and other materials to help you in your System on Chip development activity. More importantly in our view, it is a collection of experience and a way to have many potentially beneficial collaborations.

Hardware Design Environment

In digital/mixed signal design there are a lot of different software packages that may be needed. Setting up your environment for these is an important step to get started with your designs.

Hardware design

This area of 'interest' is for the hardware design ecosystem for Arm based System on Chip developments. This area is for discussion of design techniques. Specific design flow actions should be discussed in the design flow section.

Low power design

Designing components and systems with an emphasis on minimizing active (dynamic) and standby (static) power consumption.

RF and Analog Design

When designing a high-speed chip, whether that is for high-speed digital applications or analog wireless applications, radio frequency (RF) design is involved. 

Packaging

Once a System on Chip (SoC) design has fabricated in a foundry the individual items need to be put into an  electronic package that protects it from the external environment and also interconnects it to other parts of a larger system, often a Printed Circuit Board.

Machine Learning

Research into Machine Learning and Artificial Intelligence is a very active field. This Machine Learning 'interest' area covers topics at the intersection of Machine Learning and SoC design from both the hardware and software perspective.

PyTorch

PyTorch is a popular library used for Artificial Intelligence / Machine Learning ("AI/ML") development among the academic community.

ExecuTorch and TOSA enabling PyTorch on Arm platformsBuilding and Running ExecuTorch with ARM Ethos-U Backend
TensorFlow

TensorFlow is one of a number of environments to build and deploy ML models. TensorFlow offers multiple levels of abstraction to allow model designers to be removed from specific choices of description language or hardware platform. 

Convert a network into a CMSIS-NN implementationCMSIS NN Git repositoryImage recognition on Arm Cortex-M with CMSIS-NN
hls4ml

hls4ml is one of a number of environments that support behavioural design for machine learning. It is a Python package that takes machine learning models and translates them into an High Level Syntesis (HLS) implementation.

hls4ml documentationSiemens Catapult + HLS4ML for Inference at the Edge
Software

This area of 'interest' is for the software ecosystem for Arm based System on Chip developments. Software covers a large field of activity from basic boot sequence, firmware, operating system kernel, device drivers, middleware and application level. 
 

Debugging

In computer programming and software development, debugging is the process of finding and resolving bugs (defects or problems that prevent correct operation) within computer programs, software, or systems.

Firmware

The definition of firmware varies but most describe a specialist form of software that is by design tightly coupled to hardware behaviour and intrinsically linked to the operation of the hardware.

CMSIS-Core (Cortex-M) implements a basic run-time system
SystemC®

Is not a programming language, it is an IEEE Standard C++ class library for system and hardware design. Knowledge of the SystemC library allows it to be extended using the C++ language to enable SoC design and verification activities.

SoC Labs site

This area of interest is for this web site, the SoC Labs community portal. Here we discuss the site's structure, operations and any issues the community feel need improvement. 

Moderation

All content on the SoC Labs portal is moderated. This is to ensure the content is useful to the community.

Site structure

Projects