Titulo Estágio
RTEMS BSP for Guidance Computer” Pacote de Sofware de Suporte RTEMS para o “Guidance Computer
Área Tecnológica
RTEMS
Local do Estágio
Coimbra
Enquadramento
Este estágio visa o desenvolvimento do
pacote de software de suporte RTEMS (Real-Time Executive for Multiprocessor
Systems) para o hardware e dispositivos que compõem o “Guidance Computer”.
“Guidance Computer” é computador desenvolvido com vista a equipar o sistema
electrónico de condução de veículos. Estes computadores são baseadas no System-On-Chip
MPC8548 integrado num conjunto placa CPU mais placa Carrier Board desenvolvidas
pela MEN Mikro Elektronik GmbH.
O RTEMS (Real-Time Operating System for
Multiprocessor Systems) é um sistema operativo de tempo real desenvolvido para embedded
systems. Trata-se de um sistema Open Source cujas principais
características são:
-
Suporte de vários standards (POSIX
1003.1b API, Classic API baseada em RTEID/ORKID, uITRON 3.0, TCP/IP, etc);
-
Suporte para multi-processamento
(homogéneo/hererogéneo);
-
Escalonamento preemptivo, baseado
em prioridades e em eventos;
-
Mecanismos de comunicação e
sincronização entre tarefas;
-
Implementação de mecanismos de
prevenção de deadlocks (priority inheritance, priority ceiling);
-
Suporte de diversas plataformas
(SPARC, PowerPC, x86, etc).
Os computadores para sistemas embarcados são
geralmente equipamentos bastante específicos, servem apenas a função para a
qual foram desenhados, sendo constituídos exclusivamente pelos dispositivos
necessários ao desempenho das suas funções. O “Guidance Computer”, assim
baptizado por fazer parte de um sistema designado “Guidance Control System”, é
um computador que dispõem de diversos dispositivos e controladores que permitem
que o software de controlo tenha acesso às várias redes de dados que compõem o
sistema guiado. Sendo que estas redes são de diversos tipos, por exemplo, rede
ethernet, rede ethernet peer-to-peer e redes CAN.
O RTOS oferece a camada de abstracção de
hardware às aplicações para ele desenvolvidas. Um RTOS típico é constituído por
uma camada independente do hardware alvo e que implementa a API oferecida as
aplicações. E por outra camada que contem o software que interage directamente
com o hardware alvo. A esta camada e por cada computador embarcado ter
características distintas convencionou-se chamar BSP (Board Suport Package).
Esta camada inclui software de suporte para todos os dispositivos e
controladores de um determinado hardware alvo. O que significa “drivers” e
código de suporte para o processador e arquitectura do processador.
Objetivo
O presente projecto pretende que se chegue a
uma solução para a BSP RTEMS para o “Guidance Computer”. O desenvolvimento
deste pacote de software deverá seguir o processo normal de desenvolvimento de
software utilizado na Critical Software SA.
A BSP para o “Guidance Computer” deverá
incluir como elementos prioritários suporte para os seguintes controladores e
dispositivos:
-
Suporte para os 4 controladores de
ethernet MPC8548 TSEC;
-
Suporte para os 6 controladores
CAN MEN 16z029;
-
Suporte para XM50 RTC e PLD
Watchdog;
-
Suporte para o Solid State Disk
integrado no “Guidance Computer”;
-
Suporte para os Controladores de
GPIO;
-
Suporte para o Controlador de SMBus.
Plano de Trabalhos - Semestre 1
T1 – Analise Preliminar do Sistema
Operativo RTMES e de outras BSPs.
T2 – Levantamento de
requisitos – Avaliar com
rigor quais principais objectivos da BSP RTEMS.
Plano de Trabalhos - Semestre 2
T3 – Concepção da arquitectura e design – Desenhar a
arquitectura da BSP RTEMS tendo em conta os requisitos identificados em T1.
T4 – Especificação de testes – Elaboração de um plano de testes. O plano de testes deverá
assegurar que os requisitos identificados em T1 serão validados.
T5 – Construção e unit-testing
– Codificação e unit-testing
da BSP RTEMS segundo a arquitectura e design estabelecidos em T3.
T6 – Testes – Execução dos testes e correcção de problemas.
T7 – Elaboração do Relatório
de Estágio – Preparação do relatório final de estágio.
A elaboração do relatório de estágio deverá ser efectuada gradualmente ao longo
de todo o estágio.
Condições
Bolsa de estágio e prémio de desempenho
Orientador
Filipe Pedrosa
fjdpedrosa@criticalsoftware.com 📩