Workshops na ESC Silicon Valley 2019

- por Sergio Prado

Categorias: Eventos, Palestras Tags: ,

No período de 27 a 29 de agosto vai acontecer a ESC Silicon Valley 2019 em Santa Clara, Califórnia.

A Embedded Systems Conference é uma conferência tradicional focada na área de sistemas embarcados com mais de 20 anos de vida. Apesar de ter perdido um pouco de espaço e sofrido diversas reformulações nos últimos anos, continua sendo um evento relevante na área, com a participação de alguns dos principais players do mercado. Este ano a ESC vai acontecer em conjunto com a Drive World Conference (conferência focada na área automobilística), o que pode trazer mais público para o evento.

Este ano eu estarei lá junto com o Prof. Rodrigo Almeida representando o Brasil com dois workshops práticos! :-)

Estive lá há alguns anos como visitante e até escrevi alguns posts no blog (dia 1, dia 2, dia 3, dia 4). Agora volto como palestrante. E será fantástico apresentar dois workshops em um evento onde estarão algumas das referências da área como Jack Ganssle, Max Maxfield, Chris Shore, Jean Labrosse, etc!

O primeiro workshop que apresentaremos será sobre o desenvolvimento de sistemas de tempo-real utilizando SoCs com núcleos assimétricos.

Developing Embedded Real-Time Applications with Heterogeneous Multiprocessing Systems

“Lots of embedded applications have conflicting requirements like high throughput and data processing, responsive user interface, low-latency operations and determinism to handle hard real-time events. It is very cumbersome (and most of the times impossible) to meet all these requirements with just a single processor. A common approach to meet these conflicting requirements is to use multiple heterogeneous processors, where a high-end processor takes care of general computing like network communication, user interface and data processing, and a low-end processor is responsible to handle low-latency and real-time events. These type of systems are called Heterogeneous Multiprocessing Systems or HMP. In this workshop, we will present all the theory behind embedded applications development using heterogeneous multiprocessing systems and practice it with some hands-on exercises. We will use a board with a heterogeneous multicore SoC. It contains both a Cortex-A and a Cortex-M processor, capable of running a different operating system on each core. The hands-on will have two parts. The first will focus on running an RTOS (FreeRTOS) with the low-end processor to handle deterministic and real-time events and report them to the communication channel. The second part compromises the deployment of a full-featured OS (GNU/Linux), on the high-end processor, which will log the events and communicate them to the user. We will use this hands-on to show how the communication between the cores works by using an implementation of the OpenAMP standard.”

O segundo workshop será um tutorial sobre o desenvolvimento de um kernel de sistema operacional:

Embedded Operating Systems Development: From Project to Implementation

“The workshop is an introduction to operational systems design with a heavy hands-on approach. The main idea is to build from the ground up a full-featured kernel, with task scheduler, time management, and a device driver controller. The kernel will be built in the first half of the course and used to teach some of the restrictions on embedded software and real time. The hardware to be used is composed of microcontroller, LED, LCD, and potentiometer. All programming will be done without external headers, to get the attendees to understand the low-level electronics-programming relationship. Regarding the microcontroller peripherals, the IO ports, PWM output, and the AD converter will be covered, as the timing requirements, to enable the LCD-microcontroller communication. The second part of the workshop is devoted to the development and testing of a kernel. The kernel development is going to be divided into three steps: tasks creation (though function pointers), task management (using a circular buffer) and timing requirements (using timer interrupt). In the third part of the workshop, a device driver controller will be presented and the driver’s standardization process will be discussed. Examples are going to be presented using the peripherals available (I/O, PWM, ADC, and timer). The final experience will cover a full system using the ADC end of conversion callback to create a task that will get the value and set the PWM in real time, while another task will output the systems information on the LCD.”

A conferência está ainda repleta de palestras interessantes, incluindo temas como sistemas operacionais de tempo-real, inteligência artificial, arquitetura de CPU, segurança, conectividade, FPGA, projeto de PCB, RISC-V, debugging, programação C/C++, ARM, machine learning, Linux embarcado, RF, Python, CAN, etc. Serão 5 trilhas e mais de 60 palestras!

Como é minha primeira apresentação internacional, será uma experiência bem interessante.

Sei que é longe, mas se você aparecer por lá, deixa um alô! :-)

Um abraço,

Sergio Prado

Faça um Comentário

Navegue
Creative Commons Este trabalho de Sergio Prado é licenciado pelo
Creative Commons BY-NC-SA 3.0.