seep sistemas eletrônicos embarcados baseados em plataforma

31
1 de 31 SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma UFRGS Instituto de Informática Departamento de Engenharia Elétrica Grupo de Microeletrônica LSE – Laboratório de Sistemas Embarcados

Upload: adena-chang

Post on 02-Jan-2016

25 views

Category:

Documents


0 download

DESCRIPTION

SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma. UFRGS Instituto de Informática Departamento de Engenharia Elétrica Grupo de Microeletrônica LSE – Laboratório de Sistemas Embarcados. Introdução. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

1 de 31

SEEP

Sistemas Eletrônicos EmbarcadosBaseados em Plataforma

UFRGS

Instituto de Informática

Departamento de Engenharia Elétrica

Grupo de Microeletrônica

LSE – Laboratório de Sistemas Embarcados

Page 2: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

2 de 31

Introdução

• projeto aprovado pelo programa PD&I-TI (Pesquisa, Desenvolvimento e Inovação em Tecnologias da Informação)– financiado com recursos do CT-Info (fundo setorial de Informática)

• realização pelo Laboratório de Sistemas Embarcados da UFRGS– Flávio, Susin, Luigi, Luba, Carlos Eduardo

• desenvolvimento no período de janeiro 2003 a dezembro 2006 – aprovação inicial por 2 anos, com renovação após avaliação

• orçamento geral de R$ 931 mil, para período de 4 anos– R$ 450 mil em bolsas DTI

– R$ 307 mil em custeio

– R$ 174 mil em capital

Page 3: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

3 de 31

Resultados gerais principais

• plataforma arquitetural configurável para SoCs embarcados– com componentes IP de HW (processadores, memórias, outros)

– com componentes IP de SW (orientados para os domínios de aplicação)

– com diversas estruturas de comunicação

– fortemente direcionada à transformação da realidade nacional, mas atingindo o estado-da-arte mesmo em mercados internacionais

• metodologia completa de projeto de SoCs embarcados, visando a configuração da plataforma, principalmente através do software de aplicação, incluindo ferramentas de:– exploração arquitetural – co-simulação

– geração do software de aplicação – geração do RTOS

– síntese de processadores dedicados – integração de componentes IP

– estimativas de desempenho e potência – teste

Page 4: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

4 de 31

Resultados gerais complementares

• desenvolvimento, prototipação e avaliação de duas aplicações de porte e relevância industrial, utilizando a plataforma e a metodologia de concepção resultantes do projeto

• biblioteca de IPs para plataformas direcionadas a aplicações industriais relevantes para o país

• disponibilização de resultados (processos, técnicas, ferramentas, componentes de hardware e software, aplicações) para a comunidade de P&D nacional, inclusive através da internet

• acréscimo de 20% na produção científica atual do grupo, com publicação no período de 18 artigos completos em periódicos internacionais indexados e 40 artigos completos em eventos internacionais, como resultado direto do projeto.

• formação de pelo menos 8 doutores e 20 mestres no período do projeto• organização do material resultante do projeto em um livro “Projeto de

Sistemas Embarcados Baseado em Plataformas”

Page 5: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

5 de 31

Atividades

• Atividades básicas– PLAT – plataforma de hardware– IP – integração de componentes IP hw/sw– CO-SIM – co-simulação distribuída– JAVA – síntese automática de microcontroladores JAVA– RTOS – sistema operacional de tempo real

• Atividades integradoras– ESTIM – estimativas de desempenho e potência– EXPLOR – ambiente de exploração arquitetural– TESTE – metodologia de teste– SOFT – geração automática de software

• Aplicações– APLIC1 – aplicação de porte industrial, internacional (domótica?)– APLIC2 – aplicação de porte industrial, nacional (terminal internet?)– PROTO – prototipação, teste, avaliação e refinamento das aplicações

Page 6: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

6 de 31

PLAT

• definição de duas plataformas de hardware para sistemas eletrônicos embarcados complementares, orientadas para as aplicações previstas

• plataformas incrementam reuso de componentes de hw e sw

• configuráveis especialmente pelo software da aplicação e pela parametrização de componentes– parametrização em termos de desempenho, potência, área

• hardware– processadores e blocos dedicados de hardware

– estrutura de comunicação dedicada à aplicação

– possível substrato: FPGAs

• software– RTOS

Page 7: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

7 de 31

PLAT

• 2003/1 a 2004/2

• bolsistas DTI: 1 recém-doutor, 1 recém-graduado

• indicadores de progresso ano 1– definição inicial de duas plataformas, uma para cada aplicação-alvo,

atendendo requisitos distintos de custo, potência, desempenho

• indicadores de progresso ano 2– definição final das plataformas, contendo processadores e blocos dedicados

de hardware, interconectados por uma estrutura de comunicação dedicada à aplicação

Page 8: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

8 de 31

IP

• mecanismo de integração de componentes IP homogêneos ou heterogêneos de hardware e software

• componentes homogêneos: padrões• padrões de hardware

– barramento: AMBA?– interfaces de componentes: OCP? VCI?

• padrões de software: API com primitivas de comunicação de alto nível• componentes heterogêneos

– construção automática ou semi-automática de adaptadores de interfaces– uso de templates de hardware– adaptação do código fonte de componentes de software

Page 9: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

9 de 31

IP

• 2003/1 a 2004/2• bolsistas DTI: 1 recém-doutor• indicadores de progresso ano 1

– biblioteca de adaptadores de componentes IP para o padrão OCP– adaptadores para processador femtoJava, memórias e interfaces de

periféricos– componentes descritos nas linguagens C e Java

• indicadores de progresso ano 2– ambiente completo de modelagem com suporte para a integração de

componentes IP– biblioteca de adaptadores para padrões AMBA e VCI– componentes descritos na linguagem SystemC

Page 10: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

10 de 31

CO-SIM

• ambiente de co-simulação distribuída multi-nível

• uso do backbone DCB

• suporte para avaliação remota de componentes IP– integração virtual ao modelo

– comunicação apenas através das interfaces

• suporte para construção de modelos contendo componentes homgêneos ou heterogêneos– heterogeneidade de interfaces, linguagens, níveis de abstração

• construção automática dos adaptadores de linguagens

• suporte para construção dos adaptadores de interfaces (atividade IP)

Page 11: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

11 de 31

CO-SIM

• 2003/1 a 2004/2

• bolsistas DTI: 1 recém-mestre

• indicadores de progresso ano 1– recursos para integração entre componentes C e Java

– geração de código de co-simulação para modelos distribuídos e heterogêneos

• indicadores de progresso ano 2– recursos para integração de componentes SystemC e VHDL

– geração de código de co-simulação para modelos não-distribuídos e homogêneos

Page 12: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

12 de 31

JAVA

• ambiente de síntese automática de microcontroladores dedicados e otimizados– plataforma combinando alto desempenho e baixa potência

• capazes de executar "byte-codes" Java– portabilidade das aplicações, reuso de software

• síntese a partir de uma especificação Java da aplicação

• síntese de variantes do microcontrolador, suportando de forma mais eficientes diferentes modelos de computação– DSP

– multithread

Page 13: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

13 de 31

JAVA

• 2003/1 a 2004/2

• bolsistas DTI: 1 recém-graduado

• indicadores de progresso ano 1– definição de variantes arquiteturais do processador femtoJava, em especial

a versão DSP e a versão multi-thread, para uso na plataforma de baixa potência

• indicadores de progresso ano 2– ambiente de síntese automática de microcontroladores dedicados e

otimizados, capazes de executar "byte-codes" Java, a partir de uma especificação Java da aplicação

Page 14: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

14 de 31

RTOS

• geração automática de RTOS dedicado e otimizado para uma dada aplicação embarcada

• configuração automática para a plataforma de hardware selecionada• otimização de aspectos particulares de uma aplicação (desempenho,

potência)• recursos

– escalonamento de processos– atendimento de requisitos de tempo real– gerência de sistemas distribuídos– suporte à comunicação entre processos e processadores

Page 15: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

15 de 31

RTOS

• 2003/2 a 2005/1• bolsistas DTI: 1 recém-mestre• indicadores de progresso ano 1

– definição dos módulos que deverão compor o RTOS, considerando o espaço de automação de projeto

• indicadores de progresso ano 2– desenvolvimento das rotinas para síntese do RTOS a partir da

especificação de alto nível do sistema embarcado

• indicadores de progresso ano 3– conclusão da técnica de geração automática de RTOS

Page 16: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

16 de 31

ESTIM

• metodologia de estimativas de desempenho, consumo de potência e memória utilizada, a partir de especificações de alto nível da aplicação

• suporte à exploração do espaço de projeto

• estimativas para uma combinação aplicação – arquitetura-alvo– plataforma de hardware (componentes IP, considerando diferentes tipos de

processadores)

– RTOS

– mecanismos de comunicação de hardware e software

Page 17: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

17 de 31

ESTIM

• 2004/1 a 2005/2

• bolsistas DTI: 1 recém-mestre

• indicadores de progresso ano 2– levantamento de características físicas de IPs, estruturas de comunicação e

software, para obter subsídios para estimação de desempenho, potência e memória em alto nível de abstração

• indicadores de progresso ano 3– ferramentas de estimativa de desempenho, potência e memória a partir de

especificação de alto nível da aplicação, orientadas para as plataformas definidas no projeto

Page 18: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

18 de 31

EXPLOR

• ambiente de exploração arquitetural de SoC

• estimativa de desempenho e potência de alternativas de distribuição das funções computacionais entre processadores– número e tipo de processadores

• estimativa de desempenho e potência de alternativas de estruturas de comunicação– barramentos simples

– NoC

• impacto do mapeamento de funções em diferentes posições da NoC

Page 19: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

19 de 31

EXPLOR

• 2004/1 a 2005/2

• bolsistas DTI: 1 recém-mestre

• indicadores de progresso ano 2– biblioteca de IPs com versões de componentes (minimizando área, potência,

espaço de memória, tempo de processamento) para exploração do espaço de projeto

• indicadores de progresso ano 3– ferramenta de catalogação e seleção de IPs baseada em requisitos da

aplicação

Page 20: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

20 de 31

TESTE

• metodologia de teste de software e hardware, considerando arquitetura-alvo– plataforma de hardware (componentes de processamento e estruturas de

comunicação)

– plataforma de software (RTOS)

• desenvolvimento de técnicas de teste– com redução do tempo de teste

– com baixo custo (reuso das estruturas já existentes no sistema)

– com aumento da testabilidade

Page 21: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

21 de 31

TESTE

• 2005/1 a 2006/2

• bolsistas DTI: 1 recém-doutor

• indicadores de progresso ano 3– técnicas de teste de software aplicáveis a descrições VHDL: estudos de caso

– sequência de teste externo para o microcontrolador femtoJava

• indicadores de progresso ano 4– ferramentas de auxílio ao planejamento de teste de SoCs baseados em

controladores integrados e em NoCs

Page 22: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

22 de 31

SOFT

• geração automática de software a partir de uma especificação de alto nível

• mapeamento automático para programas otimizados para o paradigma computacional dos processadores considerados (microcontroladores, DSP, ASIPs, VLIW, multithread, etc.)

• otimização segundo requisitos de desempenho, potência, memória

• exploração do espaço de projeto

• desenvolvimento de conjunto de classes para diferentes modelos de computação

• definição de linguagem abstrata de modelagem para especificação de alto nível (UML, Rosetta)

Page 23: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

23 de 31

SOFT

• 2005/1 a 2006/2

• bolsistas DTI: 1 recém-doutor

• indicadores de progresso ano 3– levantamento de características comuns de aplicações embarcadas, para

captura de diferentes modelos comportamentais de software, visando sua automação

• indicadores de progresso ano 4– geração automática de software de aplicação, sobre a plataforma de

hardware e software, a partir de especificações de alto nível em diferentes modelos de computação

Page 24: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

24 de 31

APLIC1

• especificação e desenvolvimento de uma aplicação de porte industrial e relevância internacional, na área da domótica, para validação da metodologia completa de projeto– modelagem de alto nível, seleção da arquitetura, refinamento arquitetural,

simulação em diferentes níveis de abstração, desenvolvimento e integração dos componentes (IPs) necessários e geração do software

• 2004/1 a 2005/2

• bolsistas DTI: 1 recém-mestre, 1 recém-graduado

• indicadores de progresso– ano 2: modelagem de alto nível da aplicação, exploração de soluções

arquiteturais, desenvolvimento e busca de componentes IP necessários

– ano 3: conclusão da aplicação, com síntese final do software e hardware

Page 25: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

25 de 31

APLIC2

• especificação e desenvolvimento de uma segunda aplicação de porte industrial, com impacto mais voltado à realidade social brasileira– possível aplicação: terminal portátil de acesso à Internet de baixíssimo

custo, para aumentar a acessibilidade da população a tecnologias mais complexas

• 2005/1 a 2006/2

• bolsistas DTI: 1 recém-doutor, 1 recém-graduado (15)

• indicadores de progresso– ano 3: modelagem de alto nível da aplicação, exploração de soluções

arquiteturais, desenvolvimento e busca de componentes IP necessários

– ano 4: conclusão da aplicação, com síntese final do software e hardware

Page 26: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

26 de 31

PROTO

• prototipação das aplicações em FPGAs– teste dos protótipos segundo a metodologia de teste– avaliação dos protótipos, em termos de desempenho e potência consumida,

através de benchmarks de domínio público– refinamento das aplicações, segundo interesse de parceiros industriais, a

partir de parâmetros fornecidos pela própria indústria

• 2005/1 a 2006/2• bolsistas DTI: 1 recém-graduado• indicadores de progresso

– ano 3: montagem da primeira aplicação em placas de FPGAs, para validação de metodologia e ferramentas de projeto e identificação de pontos críticos da implementação do protótipo

– ano 4: montagem da segunda aplicação, comparação de resultados, montagem de outra versão de uma das aplicações para exploração do espaço de projeto e avaliações comparativas

Page 27: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

27 de 31

Cronograma

ATIVIDADE 2003/1 2003/2 2004/1 2004/2 2005/1 2005/2 2006/1 2006/2 1. PLAT ////////////// ////////////// ////////////// ////////////// 2. IP ////////////// ////////////// ////////////// ////////////// 3. CO-SIM ////////////// ////////////// ////////////// ////////////// 4. JAV A ////////////// ////////////// ////////////// ////////////// 5. RTOS ////////////// ////////////// ////////////// ////////////// 6. TESTE ////////////// ////////////// ////////////// ////////////// 7. ESTIM ////////////// ////////////// ////////////// ////////////// 8. SOFT ////////////// ////////////// ////////////// ////////////// 9. EXPLOR ////////////// ////////////// ////////////// ////////////// 10. APLIC1 ////////////// ////////////// ////////////// ////////////// 11. APLIC2 ////////////// ////////////// ////////////// ////////////// 12. PROTO ////////////// ////////////// ////////////// //////////////

Page 28: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

28 de 31

Outros indicadores de progresso

ano 1

ano 2

ano 3

ano 4

formação de 5 mestres e 1 doutorsubmissão de artigos: 2 periódicos e 10 eventos internacionaisrelatórios de pesquisa

1ª versão do site para disponibilização de resultadosformação de 5 mestres e 2 doutoressubmissão de artigos: 2 periódicos e 10 eventos internacionaisrelatórios de pesquisa

2ª versão do siteformação de 5 mestres e 2 doutoressubmissão de artigos: 6 periódicos e 10 eventos internacionaisrelatórios de pesquisa

versão final do site, com componentes IP de HW e SWformação de 5 mestres e 3 doutoressubmissão de artigos: 8 periódicos e 10 eventos internacionaisrelatórios de pesquisa

Page 29: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

29 de 31

Orçamento

2003 2004 2005 2006 Diárias no país 3.835,05

3.835,05

3.835,05

3.835,05

Diárias internacionais 3.835,05

3.835,05

3.835,05

3.835,05

Material de consumo 2.000,00

2.000,00

2.000,00

2.000,00

Passagens nacionais 5.000,00

5.000,00

5.000,00

5.000,00

Passagens internacionais 25.000,00

25.000,00

25.000,00

25.000,00

Terceiros pessoa física 5.000,00

5.000,00 5.000,00

5.000,00

Terceiros pessoa jurídica 33.820,00

33.820,00

33.820,00

33.820,00

Material permanente 56.000,00

26.000,00

58.000,00

18.000,00

Material bibliográfico 4.000,00

4.000,00

4.000,00

4.000,00

138.490,10 108.490,10 140.490,10 100.490,10

Page 30: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

30 de 31

Bolsistas DTI

2003/1 2003/2 2004/1 2004/2 2005/1 2005/2 2006/1 2006/2 DTI-7D (doutor) PLAT PLAT PLAT PLAT DTI-7H (grad) PLAT PLAT PLAT PLAT DTI-7D (doutor) IP IP IP IP DTI-7G (mestre) CO-SIM CO-SIM CO-SIM CO-SIM DTI-7H (grad) JAVA JAVA JAVA JAVA DTI-7G (mestre) RTOS RTOS RTOS RTOS DTI-7G (mestre) ESTIM ESTIM ESTIM ESTIM DTI-7G (mestre) EXPLO EXPLO EXPLO EXPLO DTI-7G (mestre) APLIC1 APLIC1 APLIC1 APLIC1 DTI-7H (grad) APLIC1 APLIC1 APLIC1 APLIC1 DTI-7D (doutor) TESTE TESTE TESTE TESTE DTI-7D (doutor) SOFT SOFT SOFT SOFT DTI-7D (doutor) APLIC2 APLIC2 APLIC2 APLIC2 DTI-7H (grad) APLIC2 APLIC2 APLIC2 APLIC2 DTI-7H (grad) PROTO PROTO PROTO PROTO

Page 31: SEEP Sistemas Eletrônicos Embarcados Baseados em Plataforma

31 de 31

Coordenação científica

• reuniões técnicas semanais dentro de cada atividade– presença de toda a sub-equipe– discussão detalhada de problemas e soluções

• seminários quinzenais, envolvendo toda a equipe– discussão dos trabalhos em andamento– prévias de apresentações em conferências– palestras convidadas, etc.

• reuniões de coordenação científica mensais– restritas aos pesquisadores líderes– avaliação de resultados– planejamento de atividades– integração das grandes linhas e estratégias científicas

• workshops de todo o grupo, abertos à comunidade nacional– realizados em paralelo com eventos nacionais significativos (SBCCI, p.ex.)– divulgação de resultados parciais do projeto