Engenharia de Sistemas Embarcados -...

28
Aula 1 Engenharia de Sistemas Embarcados Prof. Abel Guilhermino Tópico: Introdução a Engenharia de Sistemas Embarcados

Transcript of Engenharia de Sistemas Embarcados -...

Page 1: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Aula 1

Engenharia de Sistemas EmbarcadosProf. Abel Guilhermino

Tópico: Introdução a Engenharia de Sistemas Embarcados

Page 2: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Engenharia de Sistemas Embarcados

• Professor– Abel Guilhermino

• e-mail x página– [email protected]– www.cin.ufpe.br/~agsf

• Horário

Engenharia de Sistemas Embarcados 2

• Horário– Segunda : 2ª (13-15hs) e– Quarta: 4ª (17-19hs).

Page 3: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Avaliação

• Avaliação– Prova + Seminários 50%– Projeto 50%

Engenharia de Sistemas Embarcados 3

Page 4: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Características do Projeto

• Uso do Processador ARM• Focar em problema:

– Gerenciamento de Energia ou– Processamento de Imagem ou– Alto Desempenho ou– Teste

Engenharia de Sistemas Embarcados 4

– Teste

Page 5: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Critérios do Projeto

• Uso de uma plataforma Processador• Plano de projeto• Apresentação• Avaliação do projeto• Relatório (formato de artigo)

Engenharia de Sistemas Embarcados 5

Page 6: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Critérios do Projeto

• Demonstrações parciais do projeto– Toda a equipe– Equipe deve definir com antecedência o que serámostrado

– Será comparado o demonstrado com o que foi planejado

Engenharia de Sistemas Embarcados 6

Page 7: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Material de Leitura

• Livros

– Embedded System Design: A Unified

Hardware/Software Introduction

Frank Vahid and Tony GivargisJohn Wiley & Sons; ISBN: 0471386782. Copyright (c)2002. Book site at Wiley

• Websites

Engenharia de Sistemas Embarcados 7

• Websites– www.embedded.com, www.eet.com

Page 8: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Sistemas Embarcados

• Sistemas embarcados =– Sistemas de processamento de informações

embarcados em um produto maior

– Peter Marwedel• Dois tipos de computação

– Desktop – produção milhões/ano

Engenharia de Sistemas Embarcados 8

– Embarcado – bilhões/ano

• Sistemas não embarcados– PCs, servidores, e notebooks

• O futuro da computação!– Automóveis, TV digital, entretenimento,

comunicação, aviação, dispositivos ,equipamentos médicos e militares.

Page 9: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Um Exemplo de Sistema Embarcado

Diagrama em Bloco de uma Câmera Digital

Engenharia de Sistemas Embarcados 9

Page 10: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Componentes de um Sistema Embarcado

Memória Controladores Interface

Software(Aplicação)

Engenharia de Sistemas Embarcados 10

Analógico Digital Analógico

Coprocessadores

Conversores

Processador

ASIC

Page 11: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Componentes de um Sistema Embarcado

• Componentes Analógicos– Sensores, atuadores, …

• Componentes Digitais– Processadores, coprocessadores, memórias, barramentos– Controladores, hardware de aplicação específica– Controllers, Application Specific Hardwares

Engenharia de Sistemas Embarcados 11

– Controllers, Application Specific Hardwares

• Conversores– Conversor Analógico-Digital (ADC), DAC …

• Software– Sistema Operacional– Middleware– Applicações (MPEG-x, GSM-kernel, …)

Page 12: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Exemplo: BMW 745i

• 2, 000, 000 LOC• SO Windows CE• 53 8-bit µP• 11 32-bit µP• 7 16-bit µP

Engenharia de Sistemas Embarcados 12

• 7 16-bit µP• Múltiplas redes

Page 13: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Características dos Sistemas Embarcados

• Aplicação Específica– Aplicações são conhecidas a priori– Otimização para custo, área, potência, e desempenho

• Processamento Digital de Sinais– Sinais são representados digitalmente

• Sistemas Reativos

Engenharia de Sistemas Embarcados 13

• Sistemas Reativos– Reage a mudanças no ambiente do sistema

• Tempo Real– Tarefas devem ser computadas antes de um deadline

• Distribuído, em Rede, …

Page 14: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Características dos Sistemas Embarcados

• Confiabilidade– Probabilidade do sistema funcionar corretamente dadoque o mesmo estava funcionando em t = 0

• Manutenabilidade– Probabilidade do sistema funcionar corretamente dunidades de tempo após a ocorrência de um erro.

Engenharia de Sistemas Embarcados 14

unidades de tempo após a ocorrência de um erro.

• Segurança (Safety)– Não oferece perigo ao usuário

• Segurança (Security)– Comunicação confidêncial e autêntica

Page 15: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Desafio de Projeto: otimização das métricas de projeto

• Objetivo óbvio do projeto:– Construir uma implementação com a funcionalidadedesejada

• Desafios chave do projeto:– Otimizar simultaneamente várias métricas do projeto

• Métrica de projeto

Engenharia de Sistemas Embarcados 15

• Métrica de projeto– Uma característica mensurável da implementação dosistema embarcado

Page 16: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Desafio de Projeto: otimização das métricas de projeto

• Métricas comuns– Custo unitário: custo monetário para a manufatura decada cópia do sistema, excluindo custo NRE

– Custo NRE (Non-Recurring Engineering): custo monetáriode projeto do sistema

– Tamanho: espaço físico necessário para o sistema

Engenharia de Sistemas Embarcados 16

– Desempenho: tempo de execução ou throughput dosistema

– Potência: quantidade de potência consumida pelosistema

– Flexibilidade: a habilidade de se alterar a funcionalidadedo sistema sem acarretar em custos NRE pesados

Page 17: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Desafio de Projeto: otimização das métricas de projeto

• Métricas Comuns (continuação)– Tempo de prototipação: tempo necessário para aconstrução de uma versão funcional do sistema

– Time-to-market: tempo necessário para se desenvolver osistema ao ponto que possa ser vendido aos consumidores

– Manutenabilidade: habilidade de se modificar o sistemaapós seu lançamento inicial

Engenharia de Sistemas Embarcados 17

após seu lançamento inicial– Corretude, seguranças, etc…

Page 18: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Competição entre Métricas: melhoramento de uma pode piorar outras

• Expertise tanto emsoftware quanto hardware

é necessária para seotimizar métricas deprojeto– Não apenas a especialista

em hardware ou software,

TamanhoDesempenho

Potência

Engenharia de Sistemas Embarcados 18

em hardware ou software,como é comum

– Um projetista deve estarconfortável com váriastecnologias para quepossa escolher a melhoruma dada aplicação erestrições.

Custo NRE

Page 19: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Desafios de Projeto Tradicionais

• Baixo custo• Light weight

• Confiabilidade

• Baixo consumo

• Requisitos mistosdigital/analógico

• Time-to-market reduzido

• Tempo de vida curto

Engenharia de Sistemas Embarcados 19

• Baixo consumo

• Portável

• Complexidade do projeto

• Facilidade de uso

• Tempo de vida curto

• Processamento em temporeal

• Concorrência inerente

• HW/SW co-design

Page 20: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Desafios Recentes

• Complexidade do projeto

• Ultra low power– Altamente adaptativo– Gerenciamento ativo de potência (voltage scaling, MSV, etc.)– Fontes de energia alternativa (energia limpa, solar, etc.)

• Internet aware– Incorporação de tecnologias RF

Engenharia de Sistemas Embarcados 20

– Incorporação de tecnologias RF– Capacidade de operação em Rede

• Sistemas Operacionais maiores, middleware, etc.• Entendimento de vários protocolos em constante mudança

• Verificação

• Segurança

Page 21: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Complexidade de Projeto

1981 1984 1987 1990 1993 1996 1999 2002

10,000 150,000,000

Engenharia de Sistemas Embarcados 21

Crescimento Exponencial – o dobro de transistores a cada dois anos

Dois fatores: Tecnologia e Demanda

10,000transistores

150,000,000transistors

Page 22: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Time-to-Market

• Tempo necessário para sedesenvolver um produto aoponto que ele pode servendido para os clientes

• Janela de mercado– Período durante o qual o

produto teria as maiores

Engenharia de Sistemas Embarcados 22

produto teria as maioresvendas

• Restrição de time-to-market éde aproximadamente 8 meses

• Atrasos podem ter um custoalto

Page 23: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Perdas devido a Lançamento com Atrasos

• Modelo de rendimentosimplificado– Vida do produto = 2W, pico em

W– Tempo de lançamento define

um triângulo, representando apenetração de mercado

Pico de rendimento

Pico de rendimento da entrada com atraso

No prazo

Ren

dim

ento

($)

Engenharia de Sistemas Embarcados 23

penetração de mercado– Área do triângulo é igual ao

rendimento

• Perda– A diferença entre as áreas dos

triângulos de lançamento noprazo e com atraso (áreaachuriada)

Lançamento Lançamentono prazo atrasado

Subida de mercado

Queda de mercado

W 2W

Tempo

D

No prazo

Atrasado

Ren

dim

ento

($)

Page 24: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Entrada com Atraso no Mercado (cont.)

• Area = 1/2 * base * altura– No prazo = 1/2 * 2W * W– Atrasado = 1/2 * (W-D+W)*(W-D)

• Porcentagem de perda derendimento= (D(3W-D)/2W2)*100%

• Tente alguns exemplos

Pico de rendimento

Pico de rendimento da entrada com atraso

No prazo

Ren

dim

ento

($)

Engenharia de Sistemas Embarcados 24

• Tente alguns exemplos

1. Tempo de vida 2W=52 semanas, atraso D=4 semanasPerda = (4*(3*26 –4)/2*262) = 22%

2. Tempo de vida 2W=52 semanas, atraso D=10 semanasPerda = (10*(3*26 –10)/2*262) = 50%

� Atrasos custam caro!

Lançamento Lançamentono prazo atrasado

Subida de mercado

Queda de mercado

W 2W

Tempo

D

No prazo

Atrasado

Ren

dim

ento

($)

Page 25: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Exercício

• Calcular a perda na nota por atraso na entrega doprojeto de acordo com os seguintes dados– W = 5 dias– Atraso para 1 dia:– Atraso para 2 dias:– Atraso para 3 dias:

Engenharia de Sistemas Embarcados 25

– Atraso para 3 dias:– Atraso para 4 dias:– Atraso para 5 dias:

Page 26: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Custo

• Custo Unitário– O custo monetário de manufatura de cada cópia dosistema, excluindo o custo NRE

• Custo NRE (Non-Recurring Engineering cost)– Custo monetário para o projeto do sistema. Realizadouma única vez

Engenharia de Sistemas Embarcados 26

uma única vez

• Custo Total

– Custo NRE + custo unitário * # de unidades

• Custo por produto

– Custo total / # de unidades = (custo NRE / # deunidades) + custo unitário

Page 27: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Custo

Amortização do custo NRE nas unidades resulta

• Exemplo– NRE=$2000, unitário=$100– Para 10 unidades

– Custo total = $2000 + 10*$100 = $3000– Custo por produto = $2000/10 + $100 = $300

Engenharia de Sistemas Embarcados 27

em um adicional de $200 por unidade

Page 28: Engenharia de Sistemas Embarcados - cin.ufpe.bragsf/disciplinas/msc_engenharia_se/aulas/ese-aula... · Sistemas Embarcados • Sistemasembarcados= – Sistemas de processamento de

Custo

$200,000A

$200A

• Comparando diferentes tecnologias– Tecnologia A: NRE=$2,000, unidade=$100– Tecnologia B: NRE=$30,000, unidade =$30– Tecnologia C: NRE=$100,000, unidade =$2

Supor 3 tecnologias disponíveis para uso em um produto particular !

A melhor escolha de tecnologia

Engenharia de Sistemas Embarcados 28

$0

$40,000

$80,000

$120,000

$160,000

0 800 1600 2400

A

B

C

$0

$40

$80

$120

$160

0 800 1600 2400

Number of units (volume)

A

B

C

Number of units (volume)

tota

l co

st (

x100

0)

pe

r p

rod

uc

t c

ost

• Mas, deve também considerar o time-to-market

A melhor escolha de tecnologia dependerá do número de

unidades que planeja produzir