Transcript of Laboratório de Sistemas Embarcados Instituto de Informática Universidade Federal do Rio Grande do...
- Slide 1
- Laboratrio de Sistemas Embarcados Instituto de Informtica
Universidade Federal do Rio Grande do Sul Porto Alegre RS Brasil
Programa de Ps-Graduao em Computao Arquitetura de Sistemas
Embarcados Exame de Qualificao em Abrangncia (prestado em
09/12/2005) Carlos Arthur Lang Lisba Orientador: Prof. Luigi
Carro
- Slide 2
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
2 Definies Sistema Embarcado Qualquer dispositivo que inclui um
computador programvel mas que no , ele mesmo, um computador de uso
geral. Wayne Wolf, 2000 Processador Embarcado Um processador
programvel, cuja interface de programao no est acessvel para o
usurio final do produto. A nica interao com o usurio atravs do
aplicativo. Jan Rabaey, 2000
- Slide 3
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
3 The Intel Pentium Processor Extreme Edition with the processing
capabilities of four threads delivers more computing capabilities
enabling you to explore new ways to accomplish and enjoy
performance intensive tasks on your PC. Uso Geral vs. Embarcados
Qual a diferena ? Featuring advanced technologies that offer high
performance, flexibility and robust functionality, the Intel PXA270
processor is packaged specifically for the embedded market and is
ideal for the low-power framework of battery-powered devices.
- Slide 4
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
4 calculadoras simples ou programveis eletrodomsticos inteligentes
telefones celulares jogos eletrnicos controle, segurana e conforto
em veculos set-top boxes sistemas GPS som, fotografia e vdeo
copiadoras, impressoras e outros perifricos... a criatividade
humana no tem limites ! Uso Geral vs. Embarcados... mas no apenas
isto !
- Slide 5
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
5 Roteiro da Apresentao Introduo Processadores Memrias Sistemas com
mltiplos ncleos Comunicao: barramentos e NOCs Aspectos relacionados
a software Concluso
- Slide 6
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
6 consumo nem sempre problema; custo sim rea e desempenho podem ser
crticos (soft / hard deadlines) tolerncia a falhas pode ser fator
crtico mltiplos processadores heterogneos necessidade de comunicao
e redes (NOCs) capacidade grfica antenas, som, vdeo: processamento
digital de sinais (DSP) embries de sistemas operacionais (RTOS)
aplicativos residentes em memria / download Introduo: Requisitos
Especiais
- Slide 7
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
7 Introduo: Complexidade do Projeto portabilidade dos produtos
limitao de consumo especificao de desempenho mnimo: hard deadlines
baixa capacidade de memria (rea, consumo) segurana e confiabilidade
operao em rede (mltiplos ncleos) metodologia de teste adequada
- Slide 8
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
8 Introduo Amplo espao de projeto a ser explorado particionamento
hardware / software tipo(s) de processador(es) hierarquias de
memrias interfaces para perifricos comunicao entre componentes
sistema operacional e aplicativos Prazo de projeto: poucos meses
Custos elevados (pessoal, ferramentas, mscaras) requer volume de
produo
- Slide 9
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
9 Roteiro da Apresentao Introduo Processadores Memrias Sistemas com
mltiplos ncleos Comunicao: barramentos e NOCs Aspectos relacionados
a software Concluso
- Slide 10
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
10 Processadores: Arquitetura Selecionar a mais adequada aplicao
uso de lgica programvel (conforme volume) FPGAs (Field Programmable
Gate Array) - baixo volume ASICs (Application Specific Integrated
Circuit) - alto ASIPs (Application Specific Instruction Set
Processor) - alto microprocessadores de prateleira, especficos ou
IPs pipeline superescalar VLIW (Very Large Instruction Word)
processamento digital de sinais (DSP) mltiplos processadores no
mesmo chip reconfigurabilidade reduo do consumo de energia
- Slide 11
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
11 Processadores Arquiteturas com Pipeline paralelismo de estgios
da execuo de instrues na prtica: 12 a 20 estgios com pipeline
cheio: 1 instruo por ciclo custo maior em potncia (mais
chaveamentos) Jan Rabaey, 2000
- Slide 12
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
12 Processadores Pipelines - hazards: structural, data, control
estrutural: faltam componentes (FUs, registradores) dependncia de
dados reordenao pelo compilador - limitada reordenao pelo
processador (forwarding) - mais consumo controle: desvios
condicionais (> 20% ! ) por software: insero de NOPs (mais
lento, mais memria) insero de bolhas remoo de instrues do pipeline
quanto mais estgios, maior o custo em desempenho para amenizar o
custo: predio de saltos laos - probabilidade maior repetir mquina
de estados - predio estatstica
- Slide 13
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
13 Processadores Pipelines: dimensionamento custo produtividade
mxima: 1 instruo por ciclo mais estgios ciclos mais curtos ciclos
mais curtos maior freqncia maior freqncia maior potncia clock mais
rpido requer redistribuio redistribuio de clock mais rea, mais
potncia
- Slide 14
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
14 Arquiteturas superescalares: exemplo vrios pipelines em paralelo
- paralelismo explcito Processadores Jan Rabaey, 2000
- Slide 15
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
15 Arquiteturas superescalares: exemplo real hyperthreading: 1
superescalar por thread (Intel Pentium Extreme Edition)Intel
Pentium Extreme Edition Processadores Intel Pentium 4
- Slide 16
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
16 Exemplo: processadores Pentium
- Slide 17
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
17 Exemplo: processadores Pentium
- Slide 18
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
18 Exemplo: processadores Pentium
- Slide 19
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
19 Exemplo: processadores Pentium
- Slide 20
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
20 Processadores Arquiteturas superescalares - dificuldades
programas da vida real tm pouco paralelismo na compilao: loop
unrolling = mais dependncia reduo da dependncia de dados pelo
processador execuo de instrues fora de ordem busca instrues cuja
dependncia de dados esteja resolvida e as executa antes das demais
renomeao de registradores (aliases) maior custo em potncia: hw
extra mantm unidades ocupadas a maior parte do tempo uso principal:
processadores de uso geral
- Slide 21
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
21 Processadores Arquiteturas VLIW: instrues em paralelo data cache
16KB mmu 64-bit memory bus multi-port 128 words x 64 bits register
file FU instruction cache 32 KB instruction cache 32 KB mmu bypass
network PC exceptions 32-bit peripheral bus VLIW instruction decode
and launch Jan Rabaey, 2000
- Slide 22
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
22 Processadores Arquiteturas VLIW - prs e contras mais econmica em
potncia: sem deteco de paralelismo durante execuo sem predio de
saltos paralelismo resolvido pelo compilador (custa caro)
dependncia de dados desperdcio de memria requer recompilao quando
muda a largura do VLIW ideal para sistemas em que o cdigo no muda
durante a operao do processador embarcado mais usadas em
processamento de sinais e multimedia, onde aplicaes tm mais
paralelismo
- Slide 23
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
23 Processadores Arquiteturas DSP - processamento de sinais
aplicaes: telefone celular, modems, controle,... digital analgico -
repetibilidade e facilidade projeto processadores digitais de uso
geral: muitos recursos no utilizveis em DSP carncia de recursos
otimizados para DSP consumo de potncia elevado processadores
digitais de sinais otimizaes de hardware para acelerar a execuo dos
algoritmos especficos para DSP (filtros, FFT, DCT,...) resultados:
maior desempenho, menor potncia
- Slide 24
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
24 Processadores Arquiteturas DSP - otimizaes especficas stream de
entrada contnuo - taxa fixa grande quantidade de dados que no podem
ser perdidos no pode ler um lote e esperar enquanto processa soluo:
buffer circular - implementao em hardware arquitetura Harvard:
memrias para instrues e dados separadas, com acesso em paralelo
vrios bancos de memria para dados, com acesso em paralelo
interrupes simplificadas para atender E/S sem necessidade de
chavear contexto
- Slide 25
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
25 Arquiteturas DSP - otimizaes especficas instruo
multiplica-e-acumula endereamento de bit reverso registradores com
auto incremento controle de laos em hardware muitas destas
otimizaes esto migrando para processadores de uso geral nos
sistemas embarcados, podem ser usados: co-processadores DSP
processadores VLIW adaptados para processamento de sinais
Processadores
- Slide 26
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
26 Roteiro da Apresentao Introduo Processadores Memrias Sistemas
com mltiplos ncleos Comunicao: barramentos e NOCs Aspectos
relacionados a software Concluso
- Slide 27
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
27 Memrias: hierarquia MAIORCAPACIDADEMAIORCAPACIDADE
MAIORVELOCIDADEMAIORVELOCIDADE MAIORCUSTO/BYTEMAIORCUSTO/BYTE Cache
Externa (L2) - SRAM Memria Principal DRAM CPU Register File Cache -
Interna (L1) SRAM Memria Secundria - Disco, Flash
- Slide 28
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
28 Memrias: principais dificuldades velocidade capacidade memrias
estticas (caches) rpidas, mas ocupam muita rea grande consumo de
potncia se beneficiam de: localidade temporal localidade espacial
aplicabilidade a sistemas embarcados no unanimidade Compaq/Digital
StrongARM
- Slide 29
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
29 Memrias: principais dificuldades velocidade capacidade memrias
dinmicas (memria principal) vrias ordens de grandeza mais lentas
ocupam menos rea, tm maior capacidade alto custo em potncia
consumida para acessos cache + principal tempo de resposta
imprevisvel outros tipos de memria usados em SEs memrias FLASH
(tambm como memria virtual) EEPROMs - grandes capacidades (ex:
cmeras) FRAM ( ferromagnetic RAM ) - mesma rea, sem refresh
- Slide 30
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
30 Roteiro da Apresentao Introduo Processadores Memrias: hierarquia
Sistemas com mltiplos ncleos Comunicao: barramentos e NOCs Aspectos
relacionados a software Concluso
- Slide 31
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
31 Sistemas com Mltiplos Ncleos Vrios processadores num chip
(MP-SOCs): homogneos: processadores iguais - uso geral exemplos:
Intel Pentium D e Intel Pentium Extreme heterogneos: processadores
distintos - sistemas embarcados Video Subsyst. Out System
Interconnect ARM Audio Subsystem In DSOC Scheduler SMP Scheduler
SRAM DSP 3D Subsyst. DSP Nomadik Mobile Multimedia
STMicroelectronics
- Slide 32
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
32 Roteiro da Apresentao Introduo Processadores Memrias: hierarquia
Sistemas com mltiplos ncleos Comunicao: barramentos e NOCs Aspectos
relacionados a software Concluso
- Slide 33
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
33 evoluo da tecnologia: mais transistores menores / chip custo:
reuso de ncleos de propriedade intelectual (IPs) necessidade:
interconexo entre muitos ncleos alternativas: conexo ponto-a-ponto:
no reusvel barramentos: uma transferncia por ciclo capacitncia
elevada (fios longos e muitos ncleos) freqncia mxima limitada
barramentos hierrquicos: paralelismo limitado Comunicao:
barramentos/NOCs
- Slide 34
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
34 alternativas (continuao): NOCs: networks on chip conjunto de
canais e roteadores conexes ponto-a-ponto entre roteadores permitem
freqncias mais altas do que barramentos diversas topologias:
grelha, torus, rvore, hipercubo, etc. maior capacidade de
paralelismo: vrios caminhos escalveis de acordo com a quantidade de
ncleos fatores que determinam eficincia: largura do canal de
roteamento (# fios) topologia poltica de prioridades e controle de
fluxo Comunicao: barramentos/NOCs
- Slide 35
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
35 Roteiro da Apresentao Introduo Processadores Memrias: hierarquia
Comunicao: barramentos e NOCs Sistemas com mltiplos ncleos Aspectos
relacionados a software Concluso
- Slide 36
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
36 Aspectos relacionados a software antigamente: fixo (microondas,
automveis,...) atualmente: mutante (celulares, PDAs,...) tendncia:
sistemas baseados em plataformas, com especializao por software
(alto custo de mscaras) novos requisitos em software: compiladores
otimizados para VLIW sistemas operacionais de tempo real - RTOS
software retargeting (binary translation)
- Slide 37
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
37 Roteiro da Apresentao Introduo Processadores Memrias: hierarquia
Comunicao: barramentos e NOCs Sistemas com mltiplos ncleos Aspectos
relacionados a software Concluso
- Slide 38
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
38 Concluso Espaos abertos para pesquisa (exemplos): hierarquia de
memria tipo de aplicao reuso de traces da cache para reduzir
potncia uso de arrays reconfigurveis dinamicamente e binary
translation para reduzir consumo de energia tolerncia a mltiplas
falhas simultneas (2010 ) compiladores mais eficientes para
arquiteturas VLIW para reduzir consumo de energia (uso de instrues
low power) estruturao de cdigo p/aumentar hit rate das caches
- Slide 39
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
39 Perguntas ?
- Slide 40
- Exame de Qualificao em Abrangncia Carlos A. L. Lisba 09/12/2005
40 Referncias bibliogrficas [Wayne Wolf, 2000] Wolf, W. Computers
as Components: Principles of Embedded Computer Systems Design.
Academic Press, San Diego, CA, 2001. ISBN 1-55860-693-9. Patterson,
D.A. e Hennessy,J. L. Computer Architecture: A Quantitative
Approach. Morgan Kaufmann Publishers, San Francisco, CA, 2003. ISBN
1-55860-724-2. [Jan Rabaey, 2000] Rabaey, J e Keutzer, K. Notas de
aula da disciplinaCS252 - Advanced Computer Architecture,
ministrada pelos Profs. Drs. Jan Rabaey e Kurt Keutzer, na
University of California at Berkeley, USA, primavera de 2000.
Carro, L. e Wagner, Flvio R. Notas de aula do curso Sistemas
Computacionais Embarcados ministrado pelos Profs. Drs. Flvio Rech
Wagner e Luigi Carro nas XII Jornadas de Atualizao em Informtica
(JAI), no XXIII Congresso da Sociedade Brasileira de Computao, 2 e
3 de agosto de 2003, Campinas, SP, Brasil.