270 Items of type "Resource"

Tutorial

AXI-Lite and GPIOs
Arm Education

Design and implement AXI-Lite peripheral to control General Purpose Input and Output Ports (GPIOs). At the end of this module, you will be able to:

  • Configure and integrate an AXI-Lite peripheral with a Cortex-A9 Processing System.
  • Modify a C code to program the Cortex-A9 processor so that it reads the state of switches and control the LEDs.
  • Demonstrate a functional simple system that lights up the LEDs based on the status of the switches.

Interests: General Purpose Input Output (GPIO)

Tutorial
[thumbnail of Cache Coherency Protocols - MSI-N0glmhANHfU.mp4]

Cache Coherency Protocols: MSI
University of British Columbia

A very clear video explanation of the need for and details of Cache Coherency Protocols.


Interests: cache coherence protocol

Lecture

DSP Education Kit Random Signals Materials
Heriot Watt University

Additional lecture slides, laboratory exercise instructions and files covering random signals. These complement the DSP Education Kit. The C file provided will run on the Cypress FM4 Pioneer board. It may be ported to run on the STM32F746 Discovery board in due course.


Interests: Analogue Digital Converter (ADC) , Discrete time signal , Digital Signal Processing (DSP)

Lecture
[thumbnail of Embedded Systems & IoT Concepts understood as simple as ABCD! with Simple Examples (1) [9PoUSxeUMbU].mkv]

Embedded Systems & IoT Concepts understood as simple as ABCD! with Simple Examples

We can understand the Embedded Systems and IoT by relating with ABCD! in this Video Presentation! 


Assignment

Final Lab: Activity Recognition
Arm Education

Internet of Things Education Kit


Interests: The Cloud

Lecture

Memory coherency and MSI lecture
University of Southampton

Single lecture that introduces multicore and gives an overview of MSI coherency protocol


Subjects: Technology > Processors
Interests: cache coherence protocol

Lab

Module 01: Lab 0 Getting Started (Adv SoC)
Arm Education

Setting up all the tools needed for completing the labs in this education kit.


Lab

Module 04: Lab 01: Programming a Processor
Arm Education

At the end of this lab, you will be able to:

  • Modify a C program with assembly subroutines to perform string copy and capitalization operations.
  • Compile a C program and execute the program on a Fixed Virtual Platform in the Arm Development Studio tool.
  • Demonstrate how to step through the code and examine register and variable values in debug mode.
  • Identify known issues related to connection issues in the debug configuration and apply troubleshooting solutions.

Lab
[thumbnail of Lab02_AXILiteAndGPIO.zip]

Module 07: Lab 02 AXI Lite and GPIO
Arm Education

In this lab, we will design and implement AXI-Lite peripheral to control General Purpose Input and Output Ports (GPIOs).


Lab

Module 09: Lab 03 HDMI
Arm Education

In this module, we will design and implement an AXI4-Stream HDMI peripheral to display a simple colored image onto an HDMI monitor.


Lab
[thumbnail of Lab04_AndroidAppHR.zip]

Module 10: Lab 04 Android App Heartrate
Arm Education

Design and build an app to connect to a heart rate sensor, using Bluetooth Low Energy (BLE), and display the information on-screen.


Lab

Module 10: Lab 05 Fast Fourier Transform
Arm Education

The examples in this exercise introduce some of the concepts behind the Fast Fourier Transform (FFT). You will write a C function to implement the Discrete Fourier transform (DFT) and assess its computational efficiency. Next, you will modify that function to use pre-computed “twiddle factors” and measure the time taken to execute the modified function. You will compare this with the time taken to execute fast Fourier transforms written in C and implemented using the CMSIS DSP library. Finally, you will embed these functions in a real-time program that acts as a simple spectrum analyzer.


Interests: Fast Fourier Transform (FFT)

Lab

Module 10: Lab 06 Real-time Operating Systems
Arm Education

Lab exercise to understand common RTOS concepts.


Lab
[thumbnail of Lab07_ArmCMSISandSoftwareDrivers.zip]

Module 10: Lab 07 Arm CMSIS and Software Drivers
Arm Education

In this lab, we will introduce Cortex Microcontroller Software Interface Standard (CMSIS), which is an abstraction layer for the microcontroller, and defines generic tool interfaces. It simplifies software reuse.


Lecture

Module 10: The Cloud
Arm Education

Internet of Things Education Kit


Interests: The Cloud

Lab
[thumbnail of Lab05_IoTSensors.zip]

Module 11: Lab 05 IoT Sensors
Arm Education

Covers security aspects relevant to IoT, including different types of attacks and technical solutions designed to mitigate these.


Lab
[thumbnail of Lab06_IoTSensorAndApp.zip]

Module 11: Lab 06 IoT Sensor and App
Arm Education

Program the DISCO-L475VG-IOT01A board to operate as a weather station. This builds on previous labs where we learned how to send BLE advertisements, read from different sensors (including temperature), and connect to an embedded device via an app that we developed.


Lab

Module 11: Lab 07 Final Project
Arm Education

Lab exercise that brings together all of the previous labs into one project, a music player.


Lab
[thumbnail of Lab08_APIandFinalApp.zip]

Module 11: Lab 08 API and Final App
Arm Education

In this lab, we will develop an API that has more generic and easy-to-use functions. Then, based on the API, we will develop a final game application: Snake.


Lab
[thumbnail of Lab07_WiFiLab.zip]

Module 12: Lab 07 WiFi
Arm Education

Learn how to program the DISCO-L475VG-IOT01A board that has an on-board WiFi module to send and receive sensor data from the device management platform.


Lab
[thumbnail of Lab09_PMOD.zip]

Module 12: Lab 09 PMOD
Arm Education

In this lab, we will use the Expansion headers of the Basys 3 development board to expand our SoC with additional joystick peripherals and develop the final application further with a new API.


Lab

Module 13: Lab 06 Adaptive Filters
Arm Education

The examples in these exercise concern different applications of an adaptive FIR filter using the Least Mean Squares (LMS) algorithm.


Lab
[thumbnail of Lab08_ActivityRecognition.zip]

Module 13: Lab 08 Activity Recognition
Arm Education

Design a full-stack Internet of Things (IoT) system for real-time classification of user activities. You will use an IoT board with accelerometer and gyroscope sensors, a cloud platform where you can instantiate a virtual machine (e.g., Google Cloud Platform), and an Android mobile phone.


Lab

Module 1: Lab 0 Getting Started
Arm Education

Getting started manual for the digital signal processing education kit.


Lab
[thumbnail of Lab01_AnalogIO.zip]

Module 1: Lab 01 Analog IO
Arm Education

Lab exercise with code and documentation for analog IO. From the digital signal processing education kit.


Lab

Module 3: Lab 02 Sampling Aliasing and Reconstruction
Arm Education

Lab exercise involving sampling aliasing and reconstruction. Related to the digital signal processing education kit.


Lab
[thumbnail of Lab01_CortexM0AHBLiteImplementation.zip]

Module 4: Lab 01 Cortex-M0 AHB Lite Implementation
Arm Education

In this lab, we will begin designing a simple SoC platform that contains a Cortex-M0 microprocessor, an LED peripheral, and an on-chip memory.


Lab
[thumbnail of Lab01_ProgrammingAProcessor.zip]

Module 4: Lab 1 Programming a Processor
Arm Education

In this module, we will program an Arm processor on a Fixed Virtual Platform using a mixture of Assembly language and C code.


Lab

Module 4: Lab00 Getting Started
Arm Education

Getting started documents for the rapid embedded education kit.


Lab
[thumbnail of Lab02_AHBVGAPeripheral.zip]

Module 5: Lab 02 AHB VGA Peripheral
Arm Education

In this lab, we will implement an AHB VGA peripheral and write simple program for the processor to display images onto a VGA monitor.


Lab

Module 5: Lab 2: Introduction to Kernel Modules under Yocto
Arm Education

Code for a simple device driver "hello world" program and BitBake recipe.


Lab

Module 5: Lab01 Digital Input and Output
Arm Education

Lab exercise covering how to utilize digital input and output within an embedded system.


Lab

Module 6: Lab 02 Interrupts
Arm Education

Lab exercise to understand how to utilize interrupts within the context of embedded systems.


Lab
[thumbnail of Lab03_AHBUARTPeripheral.zip]

Module 6: Lab 03 AHB UART Peripheral
Arm Education

In this lab, we will implement an AHB UART peripheral and write simple program for the processor to communicate with a PC or laptop.


Lab
[thumbnail of Lab03_FIRFilters.zip]

Module 6: Lab 03 FIR Filters
Arm Education

The examples in this exercise introduce some of the concepts of Finite Impulse Response (FIR) filtering. Also explored are various methods of estimating the magnitude frequency response of a filter implemented in real-time and the relative computational efficiency of different implementation options.


Lab

Module 6: Lab 3: Lab Code
Arm Education

Code for a Linux kernel driver for GPIO


Lab

Module 7: Lab 0 Getting Started (IoT)
Arm Education

How to create a new Mbed project, import code example, compile, and execute applications for embedded devices.


Lab

Module 7: Lab 03 Analog Input and Output
Arm Education

Lab exercise to understand analog input and output features in embedded systems.


Lab
[thumbnail of Lab04_TimerGPIOand7SegmentPeripherals.zip]

Module 7: Lab 04 Timer GPIO and 7-Segment Peripheral
Arm Education

In this lab, we implement three AHB peripherals: an internal timer, a general-purpose input output (GPIO), and a 7-segment display.


Lab

Module 7: Lab 4: Lab Code
Arm Education

Code for creating a Linux kernel device driver for a ranging sensor module.


Lab
[thumbnail of Lab01_IOAndGPIO.zip]

Module 8: Lab 01 IO and GPIO
Arm Education

Learn how to configure and use the General Purpose Input/Output (GPIO) capability of a development board, at the register level without the use of an Application Programming Interface (API).


Lab
[thumbnail of Lab04_IIRFilters.zip]

Module 8: Lab 04 IIR Filters
Arm Education

The examples in this exercise introduce some of the concepts of Infinite Impulse Response (IIR) filtering. Also explored are various methods of estimating the magnitude frequency response of a filter implemented in real time and the relative computational efficiency of different implementation options.


Lab

Module 8: Lab 04 Pulse-width Modulation
Arm Education

Lab exercise to understand pulse-width modulation and how it can be utilized in embedded systems.


Lab
[thumbnail of Lab05_InterruptMechanisms.zip]

Module 8: Lab 05 Interrupt Mechanisms
Arm Education

In this lab, we will implement an interrupt mechanism for the timer and the UART peripherals.


Lab

Module 8: Lab 5: Lab Code
Arm Education

Code for running an application and using GDB debugger and Streamline to analyze performance.


Lab
[thumbnail of Lab02_BasicMobileApp.zip]

Module 9: Lab 02 Basic Mobile App
Arm Education

Create and build a simple Hello World application for your Android device.


Lab
[thumbnail of Lab03_BLEProgram.zip]

Module 9: Lab 03 BLE Program
Arm Education

Learn how to program the DISCO-L475VG-IOT01A board, which has an on-board Bluetooth V4.1 module (SPBTLE-RF), and subsequently use a mobile device to connect to it via Bluetooth Low Energy (BLE).


Lab

Module 9: Lab 05 Serial Communication
Arm Education

Lab exercise to understand serial communication such as I2C, UART and SPI.


Lab
[thumbnail of Lab06_ProgrammingAnSoCUsingC.zip]

Module 9: Lab 06 Programming an SoC using C
Arm Education

How to program an SoC using the C programming language.


Lab
[thumbnail of Lab04_EvaluatingSchedulerResponsiveness.zip]

RTOS - Module 10: Lab 04 Evaluating Scheduler Responsiveness
Arm Education

In this lab you will evaluate how changing the scheduling approach (prioritisation and pre-emption) affects how quickly a multithreaded program responds to an input event.


Lab
[thumbnail of Lab05_ProducerAndConsumer.zip]

RTOS - Module 11: Lab 05 Producer and Consumer
Arm Education

In this exercise, you will focus on the producer-consumer problem. You may want to use some primitives of the RTX in order to solve the problem. There may be many possible solutions and you are expected to evaluate their advantages and disadvantages.


Lab
[thumbnail of Lab06_OSDebugging.zip]

RTOS - Module 12: Lab 06 OS Debugging
Arm Education

Tuning a program to a good, if not optimal, state is a time-consuming task. In this lab, you are expected to improve the performance of the provided project. You will first be introduced to how to evaluate the performance of the provided project with various debugging tools and techniques. By doing so, you will notice performance or, in some cases, even functional bugs.


Lab

RTOS - Module 1: Lab 0 Getting Started
Arm Education

Getting started with Keil MDK. KEIL µVision5 is a widely-used IDE particularly in the embedded software region. It has full support for the STM32F4 Discovery Board and is really easy-to-use.


Lab
[thumbnail of Lab01_OCAssembly.zip]

RTOS - Module 3: Lab 1 Processing Text in Assembly Language
Arm Education

In this exercise you will execute assembly code on your board using the debugger in order to examine its execution at the processor level. This lab aims to get you familiar with the development environment and understand how the hardware “plumbing” is hard.


Lab
[thumbnail of Lab02_RTXBasics.zip]

RTOS - Module 3: Lab 2 RTX Basics
Arm Education

In this lab you will configure the RTX and create and destroy some tasks using the RTX RTOS. You are expected to walk through how the OS performs task creation, termination and switching operations.


Lab
[thumbnail of Lab03_ImplementingMutex.zip]

RTOS - Module 5: Lab 03 Implementing Mutex
Arm Education

In this exercise, a simulated environment based on the RTX RTOS is created. From here you will explore some of the concepts and algorithms introduced during the lectures.


Other

U.Porto version of DSP Education Kit main: LAB 01
University of Porto

This is an adaptation of the original ARM University DSP Education Kit (https://github.com/arm-university/Digital-Signal-Processing-Education-Kit) to serve the specificities of an undergraduate signal processing course at the University of Porto - Faculty of Engineering


Other

U.Porto version of DSP Education Kit main: LAB 02
University of Porto

This is an adaptation of the original ARM University DSP Education Kit (https://github.com/arm-university/Digital-Signal-Processing-Education-Kit) to serve the specificities of an undergraduate signal processing course at the University of Porto - Faculty of Engineering


Other

U.Porto version of DSP Education Kit main: LAB 03
University of Porto

This is an adaptation of the original ARM University DSP Education Kit (https://github.com/arm-university/Digital-Signal-Processing-Education-Kit) to serve the specificities of an undergraduate signal processing course at the University of Porto - Faculty of Engineering


Other

U.Porto version of DSP Education Kit main: LAB 04
University of Porto

This is an adaptation of the original ARM University DSP Education Kit (https://github.com/arm-university/Digital-Signal-Processing-Education-Kit) to serve the specificities of an undergraduate signal processing course at the University of Porto - Faculty of Engineering


Other

U.Porto version of DSP Education Kit main: LAB 05
University of Porto

This is an adaptation of the original ARM University DSP Education Kit (https://github.com/arm-university/Digital-Signal-Processing-Education-Kit) to serve the specificities of an undergraduate signal processing course at the University of Porto - Faculty of Engineering


Other

U.Porto version of DSP Education Kit main: LAB 06
University of Porto

This is an adaptation of the original ARM University DSP Education Kit (https://github.com/arm-university/Digital-Signal-Processing-Education-Kit) to serve the specificities of an undergraduate signal processing course at the University of Porto - Faculty of Engineering


Other

U.Porto version of DSP Education Kit main: LAB 07
University of Porto

This is an adaptation of the original ARM University DSP Education Kit (https://github.com/arm-university/Digital-Signal-Processing-Education-Kit) to serve the specificities of an undergraduate signal processing course at the University of Porto - Faculty of Engineering


Other

U.Porto version of DSP Education Kit main: LAB 08
University of Porto

This is an adaptation of the original ARM University DSP Education Kit (https://github.com/arm-university/Digital-Signal-Processing-Education-Kit) to serve the specificities of an undergraduate signal processing course at the University of Porto - Faculty of Engineering


Other

U.Porto version of DSP Education Kit main: LAB 09
University of Porto

This is an adaptation of the original ARM University DSP Education Kit (https://github.com/arm-university/Digital-Signal-Processing-Education-Kit) to serve the specificities of an undergraduate signal processing course at the University of Porto - Faculty of Engineering


Other

U.Porto version of DSP Education Kit main: LAB 10
University of Porto

This is an adaptation of the original ARM University DSP Education Kit (https://github.com/arm-university/Digital-Signal-Processing-Education-Kit) to serve the specificities of an undergraduate signal processing course at the University of Porto - Faculty of Engineering


Other

U.Porto version of DSP Education Kit main: LAB 11
University of Porto

This is an adaptation of the original ARM University DSP Education Kit (https://github.com/arm-university/Digital-Signal-Processing-Education-Kit) to serve the specificities of an undergraduate signal processing course at the University of Porto - Faculty of Engineering


Other

U.Porto version of DSP Education Kit main: LAB 12
University of Porto

This is an adaptation of the original ARM University DSP Education Kit (https://github.com/arm-university/Digital-Signal-Processing-Education-Kit) to serve the specificities of an undergraduate signal processing course at the University of Porto - Faculty of Engineering


Other

U.Porto version of DSP Education Kit main: Protective casing
University of Porto

This is an adaptation of the original ARM University DSP Education Kit (https://github.com/arm-university/Digital-Signal-Processing-Education-Kit) to serve the specificities of an undergraduate signal processing course at the University of Porto - Faculty of Engineering


Other

Verilog Tutorial
University of Washington

UNSPECIFIED

Subjects: Design Flow > Behavioural Design
Interests: Verilog

This list was generated on Mon Dec 30 10:21:05 2024 UTC.