/Introduction-to-System-on-Chip-Design-Online-Course

To develop Arm Cortex-M0 based SoCs, from creating high-level functional specifications to design, implementation and testing on FPGA platforms using standard hardware description and software programming languages

Primary LanguageVerilogMIT LicenseMIT

Introduction-to-System-on-Chip-Design-Online-Course

The Internet of Things promises billions of devices endowed with processing, memory and communication capabilities. These processing nodes will be, in effect, simple Systems on Chips (SoCs) and will need to be inexpensive and able to operate under stringent performance, power and area constraints. This course focuses on building SoCs around Arm Cortex-M0 processors, perfectly suited for IoT needs. Using FPGAs as prototyping platforms, this course explores a typical SoC development process: from creating high level functional specifications to design, implementation and testing on real FPGA hardware using standard hardware description and software programming languages.

Course Aim

To develop Arm Cortex-M0 based SoCs, from creating high-level functional specifications to design, implementation and testing on FPGA platforms using standard hardware description and software programming languages

Learning Outcomes

A- Knowledge and understanding of

1- Arm Cortex-M processor architectures and Arm Cortex-M based SoCs

2-Design of Arm Cortex-M based SoCs in a standard hardware description language

3-Low-level software design for Arm Cortex-M based SoCs and high-level application development

B- Intellectual

1- Ability to use and choose between different techniques for digital system design and capture

2- Ability to evaluate implementation results (e.g. speed, area, power) and correlate them with the corresponding high level design and capture

C-Practical

1- Ability to use commercial tools to develop Arm Cortex-M based SoCs

Prerequisites

1- Basics of hardware description language (Verilog or VHDL)

2- Basic C and assembly programming

3- Separate purchase of hardware and/or software tools, in order to replicate the course labs