mo801: tópicos em arquitetura e hardware sandro 1 tópicos em system-level design sandro rigo...

23
MO801: Tópicos em Arquitetura e Hardware http://www.ic.unicamp.br/~sandro 1 Tópicos em System-Level Tópicos em System-Level Design Design Sandro Rigo [email protected] 2 o Semestre de 2006 Introdução Introdução

Upload: vitor-nuncio

Post on 07-Apr-2016

239 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: MO801: Tópicos em Arquitetura e Hardware sandro 1 Tópicos em System-Level Design Sandro Rigo sandro@ic.unicamp.br 2 o Semestre

MO801: Tópicos em Arquitetura e Hardwarehttp://www.ic.unicamp.br/~sandro

1

Tópicos em System-Level Tópicos em System-Level DesignDesign

Sandro [email protected]

2o Semestre de 2006

IntroduçãoIntrodução

Page 2: MO801: Tópicos em Arquitetura e Hardware sandro 1 Tópicos em System-Level Design Sandro Rigo sandro@ic.unicamp.br 2 o Semestre

MO801: Tópicos em Arquitetura e Hardwarehttp://www.ic.unicamp.br/~sandro

2

A Indústria Eletrônica

• Maiores impulsos para avanços na tecnologia de circuitos integrados

• Extremamente competitiva

• Time-to-market reduzido

• Vida útil reduzida para o produto

Page 3: MO801: Tópicos em Arquitetura e Hardware sandro 1 Tópicos em System-Level Design Sandro Rigo sandro@ic.unicamp.br 2 o Semestre

MO801: Tópicos em Arquitetura e Hardwarehttp://www.ic.unicamp.br/~sandro

3

A Indústria Eletrônica

• Dispositivos eletrônicos na visão do consumidor:• Cada vez mais funcionalidades• Cada vez mais rápidos• Cada vez menores• Cada vez mais baratos

Page 4: MO801: Tópicos em Arquitetura e Hardware sandro 1 Tópicos em System-Level Design Sandro Rigo sandro@ic.unicamp.br 2 o Semestre

MO801: Tópicos em Arquitetura e Hardwarehttp://www.ic.unicamp.br/~sandro

4

A Indústria Eletrônica

• Visão do projetista:• Um incessante aumento de complexidade !!!

• Novos padrões precisam ser rapidamente absorvidos

• Novas metodologias de projeto se fazem necessárias

Page 5: MO801: Tópicos em Arquitetura e Hardware sandro 1 Tópicos em System-Level Design Sandro Rigo sandro@ic.unicamp.br 2 o Semestre

MO801: Tópicos em Arquitetura e Hardwarehttp://www.ic.unicamp.br/~sandro

5

A Indústria Eletrônica

• ITRS 2005:• Custo (do design) é a maior ameaça à

continuidade do roadmap para semicondutores• Custos de fabricação (NRE): ~ milhões de U$

• Custo de Projeto: ~ dezenas de milhões de U$

• Tempos do ciclo de fabricação: ~ semanas

• Tempos no ciclo de projeto: ~ meses ou mesmo anos

Page 6: MO801: Tópicos em Arquitetura e Hardware sandro 1 Tópicos em System-Level Design Sandro Rigo sandro@ic.unicamp.br 2 o Semestre

MO801: Tópicos em Arquitetura e Hardwarehttp://www.ic.unicamp.br/~sandro

6

Lei de Moore

Fonte: Intel

A Lei de Moore continua prevalecendo, com o númerode transistores dobrando a cada 2 anos

Page 7: MO801: Tópicos em Arquitetura e Hardware sandro 1 Tópicos em System-Level Design Sandro Rigo sandro@ic.unicamp.br 2 o Semestre

MO801: Tópicos em Arquitetura e Hardwarehttp://www.ic.unicamp.br/~sandro

7

Tecnologia em CI – Estado da Arte

30 nanômetros:

Page 8: MO801: Tópicos em Arquitetura e Hardware sandro 1 Tópicos em System-Level Design Sandro Rigo sandro@ic.unicamp.br 2 o Semestre

MO801: Tópicos em Arquitetura e Hardwarehttp://www.ic.unicamp.br/~sandro

8

Perdas por atraso no desenvolvimento

6 meses de atraso = - 33% de lucro

Page 9: MO801: Tópicos em Arquitetura e Hardware sandro 1 Tópicos em System-Level Design Sandro Rigo sandro@ic.unicamp.br 2 o Semestre

MO801: Tópicos em Arquitetura e Hardwarehttp://www.ic.unicamp.br/~sandro

10

Aumento da capacidade de memória

Page 10: MO801: Tópicos em Arquitetura e Hardware sandro 1 Tópicos em System-Level Design Sandro Rigo sandro@ic.unicamp.br 2 o Semestre

MO801: Tópicos em Arquitetura e Hardwarehttp://www.ic.unicamp.br/~sandro

11

Processador x Memória

Year

Performance

1

10

100

1,000

10,000

100,000

CPU

Memory

Page 11: MO801: Tópicos em Arquitetura e Hardware sandro 1 Tópicos em System-Level Design Sandro Rigo sandro@ic.unicamp.br 2 o Semestre

MO801: Tópicos em Arquitetura e Hardwarehttp://www.ic.unicamp.br/~sandro

12

Consumo de energiaFonte: Intel

Page 12: MO801: Tópicos em Arquitetura e Hardware sandro 1 Tópicos em System-Level Design Sandro Rigo sandro@ic.unicamp.br 2 o Semestre

MO801: Tópicos em Arquitetura e Hardwarehttp://www.ic.unicamp.br/~sandro

13

Modelo inicial de sistema

Glue logic/Bridge

Hardware Especializado

(DSP)

E/S

E/S

E/S

E/S

Memória

Processador

Page 13: MO801: Tópicos em Arquitetura e Hardware sandro 1 Tópicos em System-Level Design Sandro Rigo sandro@ic.unicamp.br 2 o Semestre

MO801: Tópicos em Arquitetura e Hardwarehttp://www.ic.unicamp.br/~sandro

14

System-on-Chip

Processador

Glue logic/Bridge

Hardware Especializado

(DSP)

E/S

E/S

E/S

E/S

Memória

SoC

Page 14: MO801: Tópicos em Arquitetura e Hardware sandro 1 Tópicos em System-Level Design Sandro Rigo sandro@ic.unicamp.br 2 o Semestre

MO801: Tópicos em Arquitetura e Hardwarehttp://www.ic.unicamp.br/~sandro

15

Multiprocessor System-on-Chip

Processador

Glue logic/Bridge

Hardware Especializado

(DSP)

E/S

E/S

E/S

E/S

Memória

MPSoC

Processador

Page 15: MO801: Tópicos em Arquitetura e Hardware sandro 1 Tópicos em System-Level Design Sandro Rigo sandro@ic.unicamp.br 2 o Semestre

MO801: Tópicos em Arquitetura e Hardwarehttp://www.ic.unicamp.br/~sandro

16

Onde estão os problemas?

• Hardware• Acesso à memória externa• Acesso aos periféricos externos (e internos?)• Conversão de níveis de tensão• Transposição de domínios de freqüência• Especificação correta da capacidade da FPGA• Mapeamento dos pinos de I/O• Depuração

Page 16: MO801: Tópicos em Arquitetura e Hardware sandro 1 Tópicos em System-Level Design Sandro Rigo sandro@ic.unicamp.br 2 o Semestre

MO801: Tópicos em Arquitetura e Hardwarehttp://www.ic.unicamp.br/~sandro

17

Onde estão os problemas?

• Software• Compilador• Depurador• Boot Loader (Monitor de Hardware)• Sistema Operacional• Drivers para periféricos• Inteligência do dispositivo final

• Interface com usuário• Configuração remota• Tolerância a falhas

Page 17: MO801: Tópicos em Arquitetura e Hardware sandro 1 Tópicos em System-Level Design Sandro Rigo sandro@ic.unicamp.br 2 o Semestre

MO801: Tópicos em Arquitetura e Hardwarehttp://www.ic.unicamp.br/~sandro

18

Fluxo de Projeto Antigo (Clássico)Especificação

Projeto de Hardware

Projeto de Software

Protótipo

Integração

Validação Fabricação

Sem Comunicação

Page 18: MO801: Tópicos em Arquitetura e Hardware sandro 1 Tópicos em System-Level Design Sandro Rigo sandro@ic.unicamp.br 2 o Semestre

MO801: Tópicos em Arquitetura e Hardwarehttp://www.ic.unicamp.br/~sandro

19

Por que não é adequado?

• Era comum projetistas partirem de uma especificação em papel diretamente para um implementação RTL

• Times de hardware e software não interagem• Problemas que poderiam ser descobertos na fase inicial só

aparecem na prototipação, onde é muito mais caro corrigir

• Alta complexidade leva a alto tempo de desenvolvimento

Page 19: MO801: Tópicos em Arquitetura e Hardware sandro 1 Tópicos em System-Level Design Sandro Rigo sandro@ic.unicamp.br 2 o Semestre

MO801: Tópicos em Arquitetura e Hardwarehttp://www.ic.unicamp.br/~sandro

20

Custo de corrigir um problemaC

usto

TempoVerificação Teste do sistema Usuário

Page 20: MO801: Tópicos em Arquitetura e Hardware sandro 1 Tópicos em System-Level Design Sandro Rigo sandro@ic.unicamp.br 2 o Semestre

MO801: Tópicos em Arquitetura e Hardwarehttp://www.ic.unicamp.br/~sandro

21

Solução???

• Abstração !!!• É uma técnica poderosa para atacar a

alta complexidade;

• Esconde detalhes desnecessários nas fases iniciais: pinos, latências, gates

• Quanto mais detalhes, mais baixo o nível de abstração

Page 21: MO801: Tópicos em Arquitetura e Hardware sandro 1 Tópicos em System-Level Design Sandro Rigo sandro@ic.unicamp.br 2 o Semestre

MO801: Tópicos em Arquitetura e Hardwarehttp://www.ic.unicamp.br/~sandro

22

Fluxo de Projeto para SoC

Especificação

Teste do ChipIntegração do Sistema

Validação do Sistema

Fabricação

Particionamento HW/SW TLM

Projeto de Hardware

Projeto de Software

Projeto concorrente de HW/SW

Page 22: MO801: Tópicos em Arquitetura e Hardware sandro 1 Tópicos em System-Level Design Sandro Rigo sandro@ic.unicamp.br 2 o Semestre

MO801: Tópicos em Arquitetura e Hardwarehttp://www.ic.unicamp.br/~sandro

23

Transaction Level Modeling (TLM)

• Alto nível de abstração: modelo do sistema todo, verificação

• Tipicamente usado para simulação funcional (temporizada ou não), modelagem de plataformas e testbenches

• Comunicação é modelada separado da funcionalidade

• Transferência de dados é feita através de chamadas de funções

Page 23: MO801: Tópicos em Arquitetura e Hardware sandro 1 Tópicos em System-Level Design Sandro Rigo sandro@ic.unicamp.br 2 o Semestre

MO801: Tópicos em Arquitetura e Hardwarehttp://www.ic.unicamp.br/~sandro

24

Referências

• SystemC from the Ground-up - David C. Black e Jack Donovan, Kluwer Academic Press, 2004

• System Design with SystemC. Thorsten Grötker, Stan Liao, Grant Martin and Stuart Swan. Kluwer, 2002.

• Transaction Level Modeling in SystemC – Adam Rose, Stuart Swan, John Pierce, Jean-Michel Fernandez, OSCI TLM Working Group

• Transaction Level Modeling with SystemC – TLM Concepts and Applications. Frank Ghenassia (Ed.). Springer, 2005.

• Artigos de conferências como DAC, DATE e ISSS.