Electrónica de Computadores EC 1.1 16-09-2008
ELECTRÓNICA DE COMPUTADORES
1ª Aula
Introdução
Sistemas Electrónicos de Computadores
Sumário
Electrónica de Computadores EC 1.3 16-09-2008
Sistemas de computadores
• Os sistemas com computadores encontram-se amiúde • Pensamos imediatamente em computadores
– PC’s – Laptops – Mainframes – Servidores
• Mas há outro tipo de sistemas com computadores – Muito mais utilizados...
Electrónica de Computadores EC
1.4
Electrónica de computadores
• Sistemas computacionais embebidos
– Em dispositivos electrónicos de grande consumo – Milhares de milhões de unidades produzidas
anualmente
• Só milhões de computadores
Electrónica de Computadores EC 1.5 16-09-2008
Sistemas Electrónicos embebidos
Anti-lock brakes Auto-focus cameras Automatic teller machines Automatic toll systems Automatic transmission Avionic systems Battery chargers Camcorders Cell phones Cell-phone base stations Cordless phones Cruise control Curbside check-in systems Digital cameras Disk drives Electronic card readers Electronic instruments Electronic toys/games Factory control Fax machines Fingerprint identifiers Home security systems Life-support systems Medical testing systems
Modems MPEG decoders Network cards Network switches/routers On-board navigation Pagers Photocopiers Point-of-sale systems Portable video games Printers Satellite phones Scanners Smart ovens/dishwashers Speech recognizers Stereo systems Teleconferencing systems Televisions Temperature controllers Theft tracking systems TV set-top boxes VCR’s, DVD players Video game consoles Video phones Washers and dryers
Sistemas Electrónicos Embebidos
• Funcionalidade simples
– Executa um único programa, repetidamente • Especificações apertadas
– Baixo custo, consumo de potência reduzido, rápido, …
• Reactivo e de tempo real
– Reage a alterações no ambiente envolvente
Electrónica de Computadores EC 1.7 16-09-2008
Câmara digital
Microcontroller
CCD preprocessor Pixel coprocessor
A2D D2A
JPEG codec
DMA controller
Memory controller ISA bus interface UART LCD ctrl Display ctrl Multiplier/Accum Digital camera chip
lens CCD
Função única – câmara digital
Especificações – baixo custo e baixo consumo de potência, pequeno, rápido Reactivo – apenas numa pequena extensão
Electrónica de Computadores EC
1.8
Métricas para avaliação de projecto
• Métricas para avaliação do projecto de sistemas
– Características mensuráveis associadas à
implementação de um sistema
– Optimizar as métricas é fundamental para o sucesso de um projecto
• Algumas das métricas mais usadas
– Custo NRE (Non-Recurring Engineering cost): custo do projecto do sistema
– Custo por unidade: custo de fabricação de uma cópia do sistema, exluindo o NRE
Electrónica de Computadores EC 1.9 16-09-2008
Métricas para avaliação de projecto
– Desempenho: tempo de execução ou ritmo de processamento
– Potência: potência consumida pelo sistema
– Flexibilidade: inverso do custo NRE associado a alterações na funcionalidade do sistema
– Time-to-prototype: tempo gasto a desenvolver um protótipo do sistema
– Time-to-market: tempo gasto a desenvolver um sistema de forma a poder ser colocado no mercado
Métricas para avaliação de projecto
• Conhecimentos e experiência simultaneamente em
software (programação) e hardware (circuitos) são
indispensáveis para optimizar os parâmetros de pojecto
Microcontroller CCD preprocessor Pixel coprocessor
A2D D2A
JPEG codec DMA controller
Memory controller ISA bus interface UART LCD ctrl Display ctrl Multiplier/Accum Digital camera chip
Electrónica de Computadores EC 1.11 16-09-2008
Time-to-market
• Janela de mercado
– Período durante o qual o producto/sistema tem a mais alta taxa de vendas
• time-to-market médio:8 meses
– Atrasos podem ser catastróficos
R et or no ( €) Tempo (meses) Electrónica de Computadores EC 1.12
Perdas devido a atrasos
• Modelo simplificado de retorno
– Vida do producto = 2W (Pico em W) – Área do triângulo = retorno
• Perdas
– Diferença entre as áreas dos triângulos com e sem atraso
Entrada Entrada no tempo atrasada
Valor máximo do retorno Valor máximo do retorno com entrada
Electrónica de Computadores EC 1.13 16-09-2008
Perdas devido a atrasos
• Área = 1/2 * base * altura – A-tempo = 1/2 * 2W * W
– Atrasado = 1/2 * (W-D+W)*(W-D)
• % de perdas no retorno = (D(3W-D)/2W2)*100%
• Exemplos:
– Tempo de vida2W=52sem atrasoD=4
– (4*(3*26 –4)/2*26^2) = 22%
– Tempo de vida2W=52sem atrasoD=10
(10*(3*26 –10)/2*26^2) = 50%
ATRASOS SAEM MUITO CAROS!!
NRE e métricas de custos
• Custo real:
– custo_total= NRE + custo_unidade * #unidades – custo real por unidade= custo_total / #unidades
= (NRE / #unidades) + custo_unidad
• Exemplo
– NRE= 2000 €, custo_unidade=100€ – Para 10 unidades
• Custo_total = 2000 + 10*100 = 3000€
• Custo real por unidade = 2000/10 + 100 = 300€
Electrónica de Computadores EC 1.15 16-09-2008
Desempenho
• Medidas mais utilizada, mas não significa as melhores – Frequência de relógio (F) e CPI ou 1/CPI
– Exemplo da câmara digital – o importante é quão rápido as imagens são processadas e não F ou CPI
• Latência(Tempo de resposta)
– Tempo entre o início e o fim de uma tarefa • câmara digital – processa uma imagem em 100 ms
• Ritmo de processamento(Throughput)
– Nº de tarefas realizadas/s
• câmara digital – processa 50 imagens por segundo, o que significa que processa 5 imagens em paralelo
Electrónica de Computadores EC
1.16
Factores tecnológicos
• Aceleração(Speedup) de B em relação a A
– S = throughput(B) / throughput (A) – S = latência (A) / latência (B)
• Para a optimização há três níveis fundamentais
– processadores – IC
Electrónica de Computadores EC 1.17 16-09-2008
Tecnologia dos processadores
• Arquitectura do elemento computacional
– Processadores programáveis (general purpose) versus processadores especializados (DSP) versus processadores dedicados (single purpose)
Específico Registers Custom ALU Datapath Controller Program memory Assembly code for: total = 0 for i =1 to … Control logic and State register Data memory IR PC Single-purpose (“hardware”) Datapath Controller Control logic State register Data memory index total + IR PC Register file General ALU Datapath Controller Program memory Assembly code for: total = 0 for i =1 to … Control logic and State register Data memory General-purpose(“software”) Reduzido time-to-market e NRE
elevada flexibibilidade Rápido, baixo consumo e pequeno
Tecnologia dos processadores
total = 0
for i = 1 to N loop total += M[i] end loop
General-purpose Especializado Single-purpose
Electrónica de Computadores EC 1.19 16-09-2008
Tecnologia dos IC
• Implementação em IC do circuito, ao nível das portas lógicas e das respectivas interligações
– Tecnologias IC diferem pelo nível a que os desenhos são talhadas para as aplicações
• Full-custom/VLSI
• Semi-custom/ASIC (gate array e standard cell)
• Programmable Logic Device (PLD) e Field Programmable
Gate Array(FPGA)
Electrónica de Computadores EC
1.20
Tecnologia dos IC
– IC’s são fabricados com um número elevado de camadas (mais de 10)
• Full Custom/VLSI
– Todas as camadas são optimizadas para a implementação dum circuito digital em particular
• Localização e dimensionamento dos transistors e o
routing
source channel drain oxide
gate
Silicon substrate
Electrónica de Computadores EC 1.21 16-09-2008
Tecnologia dos IC
• Semi-custom/ASIC
– Apenas o routing é feito manualmente, e eventualmente a localização de alguns blocos • Programmable Logic Device (PLD) e Field
Programmable Gate Array(FPGA)
– Ligações no IC são criadas, destruídas ou
configuradas de forma a implementar a
funcionalidade desejada
– Field-Programmable Gate Array (FPGA) são dispositivos muito usados, fundamentalmente para prototipagem!
Lei de Moore
• Previsão em 1965 de Gordon Moore (co-fundador da Intel) para a evolução da capacidade dos circuitos electrónicos
IC transistor capacity has doubled roughly every 18 months for the past several decades
Electrónica de Computadores EC 1.23 16-09-2008
Lei de Moore
1981 1984 1987 1990 1993 1996 1999 2002 10,000 transistores Leading edge chip in 2002 150,000,000 transistores• A duplicação a este ritmo leva a um crescimento acelerado! – Um IC em 2002 pode albergar 15.000 ICs dos desenvolvidos
Electrónica de Computadores EC 1.25 16-09-2008
Tecnologia de projecto
Libraries/IP:Incorporates pre-designed implementation from lower abstraction level into higher level. System specification Behavioral specification RT specification Logic specification To final implementation Compilation/Synthesis:
Automates exploration and insertion of implementation details for lower level.
Test/Verification:Ensures correct functionality at each level, thus reducing costly iterations between levels. Compilation/ Synthesis Libraries/ IP Test/ Verification System synthesis Behavior synthesis RT synthesis Logic synthesis Hw/Sw/ OS Cores RT components Gates/ Cells Model simulat./ checkers Hw-Sw cosimulators HDL simulators Gate simulators
• Forma de converter uma descrição de alto nível numa implementação
Tecnologia de projecto
• Tecnologias de projecto de hardware e de software muito diferentes • A recente maturação de ferramentas de síntese permite uma visão
unificada do hardware e do software
Implementation Assembly instructions Machine instructions Register transfers Compilers (1960's,1970's) Assemblers, linkers (1950's, 1960's) Behavioral synthesis (1990's) RT synthesis (1980's, 1990's) Logic synthesis (1970's, 1980's) Microprocessor plus program bits: “software”
VLSI, ASIC, or PLD implementation: “hardware”
Electrónica de Computadores EC 1.27 16-09-2008
Tecnologia: Processadores ICs são independentes
Processador
de uso-geral ASIP Processador dedicado
Semi-custom
PLD Full-custom
Consumo Desempenho
Dimensão custo (grande volume) Flexibilidade
NRE Time- to-prototype
Time-to-market custo (pequeno volume)
Electrónica de Computadores EC
1.28
Conclusões
• Sistemas e electrónica de computadores encontram-se actualmente em todos os dispositivos e productos • Métricas e parâmetros de projecto
– Compromissos a estabelecer • Tecnologias
– Processador: general-purpose, especializado e dedicado
– IC: Full-custom, semi-custom, FPGA
– Projecto: Compilação/síntese, bibliotecas/IP,