Programa de Ensino 20091
Aprovado pelo Departamento em: 26-11-2008
- Identificação:
- Disciplina: INE5439 - Sistemas Embarcados
- Carga horária: 72 horas-aula
Teóricas: 56
Práticas: 16
- Período:
Início da oferta da disciplina até a presente data
- Curso(s):
- Ciências da Computação (208)
- Requisito(s):
- Ciências da Computação (208)
- INE5411 - Organização de Computadores I
- Ementa:
- Especificação (requisitos, linguagens, níveis e estilos de descrição). Hardware: entrada e saída (sample-hold, conversores A/D e D/A, sensores e atuadores), unidades de processamento (microprocessadores, DSPs, ASIPs e lógica reconfigurável) e memórias (flash, cache e scratch pad). Eficiência energética: compiladores energeticamente conscientes e gerenciamento de potência (DVS e DPM). Compactação de código. Ferramentas de projeto de hardware e de software (simulador, síntese comportamental e lógica, gerador de código e depurador). Systems-on-Chip e co-projeto de hardware e software.
- Objetivo(s):
- Geral: Apresentar os princípios de projeto e otimização de sistemas embarcados desde sua especificação até a implementação de seus componentes de hardware e software, passando pelo refinamento estrutural e comportamental ao longo de diferentes níveis e estilos de descrição.
- Específicos:
- Introduzir linguagens de descrição de sistemas, de arquiteturas (ADLs) e de hardware (HDLs).
- Familiarizar os estudantes com as alternativas de implementação de sistemas embarcados (ASICs, ASIPs, FPGAS, cores programáveis e não-programáveis, SoCs).
- Destacar os principais requisitos de sistemas embarcados: desempenho, baixo consumo de energia e potência, restrições de tempo real, eficiência energética e código compacto.
- Introduzir metodologias de co-projeto de hardware e software.
- Familiarizar os estudantes com técnicas de síntese de hardware.
- Explorar técnicas para otimização de código voltadas à eficiência energética de sistemas embarcados.
- Apresentar os princípios básicos de gerenciamento de potência dinâmica a serem utilizados por sistema operacional embarcado.
- Conteúdo Programático:
- CONTEXTO DA COMPUTAÇÃO EMBARCADA [4 horas-aula]
- Aplicações de sistemas embarcados
- Requisitos de sistemas embarcados
- Systems-on-Chip (SoCs)
- Tendências tecnológicas
- ESPECIFICAÇÃO DE SISTEMAS EMBARCADOS [14 horas-aula]
- Linguagens para especificação
- Modelos de computação subjacentes
- HARDWARE PARA SISTEMAS EMBARCADOS [14 horas-aula]
- Interface de entrada: sensores, sample-hold, conversores A/D
- Interface de saída: conversores D/A, atuadores
- Alternativas de implementação para unidades de processamento programáveis e não-programáveis: processadores, DSPs, ASIPs, lógica reconfigurável, ASICs.
- Alternativas de implementação para elementos de memória embarcada (cache e “scratch pad memory”) e externa (flash e DRAM).
- OTIMIZAÇÃO DE SISTEMAS EMBARCADOS [18 horas-aula]
- Funções-custo multi-objetivo e curvas de Pareto
- Exploração da hierarquia de memória
- Compressão de código
- Exploração de técnicas de compiladores-otimizadores
- Compiladores com redirecionamento automático
- Compiladores energeticamente conscientes
- Exploração de transformações de código
- Impacto da otimização nas garantias de tempo real
- GERENCIAMENTO DE EFICIÊNCIA ENERGÉTICA [4 horas-aula]
- Gerenciamento dinâmico de potência (DPM)
- Gerenciamento dinâmico via redução de tensão (DVS)
- METODOLOGIAS E FERRAMENTAS DE PROJETO [18 horas-aula]
- Particionamento hardware-software
- Co-projeto de hardware e software
- Projeto baseado em plataforma
- Níveis e estilos de descrição do sistema
- Refinamento do projeto de hardware
- Níveis e estilos de descrição de hardware
- Síntese comportamental
- Síntese lógica
- Co-verificação hardware-software
- Software dependente de hardware
- Suporte à co-verificação (geradores de código, simuladores e emuladores)
- Teste e projeto para testabilidade.
- Bibliografia Básica:
- Peter Marwedel, “Embedded System Design”, Springer, 2006.
- Bibliografia Complementar:
- Sandro Rigo, Rodolfo Azevedo, Luiz Santos, “Electronic System Level Design: an open-source approach, Springer, 2009.