aula 1 – introdução a arquitetura de...
TRANSCRIPT
Anderson Moreira Arquitetura de Computadores 1
Aula 1 – Introdução a Arquitetura de Computadores
Anderson L. S. [email protected]
http://dase.ifpe.edu.br/~alsm
Anderson Moreira Arquitetura de Computadores 2
O que fazer com essa apresentação
Anderson Moreira Arquitetura de Computadores 3
Agenda
• Introdução;• Histórico;• Crescimento dos recursos computacionais;• Arquitetura de Computadores;• Sistemas Embarcados;• Principais Características;• Tecnologias dos processadores;• Tecnologia de Projeto.
Anderson Moreira Arquitetura de Computadores 4
Programa
Anderson Moreira Arquitetura de Computadores 5
Programa
Anderson Moreira Arquitetura de Computadores 6
Sistema de Avaliação
Descrição Data
1ª prática
2ª prática
Prática de Reposição
Apresentação Projeto
Final
Anderson Moreira Arquitetura de Computadores 7
Exemplo de Projeto
Anderson Moreira Arquitetura de Computadores 8
Computadores mecânicos
Anderson Moreira Arquitetura de Computadores 9
Charles Babbage,o avô do computadores (Inglaterra, 1791-1871)
Anderson Moreira Arquitetura de Computadores 10
Ada, condessa de Lovelace,a primeira programadora(Inglaterra, 1815-1851)
Anderson Moreira Arquitetura de Computadores 11
Ada, condessa de Lovelace,a primeira programadora(Inglaterra, 1815-1851)
Anderson Moreira Arquitetura de Computadores 12
Computador Elétrico
Anderson Moreira Arquitetura de Computadores 13
Computador eletrônico
Anderson Moreira Arquitetura de Computadores 14
Computador eletrônico
Anderson Moreira Arquitetura de Computadores 15
Alan Turing (1912-1954)
Anderson Moreira Arquitetura de Computadores 16
Alan Turing e o ACE
Anderson Moreira Arquitetura de Computadores 17
1ª Geração (1945-1955)
Anderson Moreira Arquitetura de Computadores 18
1ª Geração (1945-1955)
Anderson Moreira Arquitetura de Computadores 19
1ª Geração (1945-1955)
Anderson Moreira Arquitetura de Computadores 20
1ª Geração (1945-1955)
Anderson Moreira Arquitetura de Computadores 21
1ª Geração (1945-1955)
Anderson Moreira Arquitetura de Computadores 22
John von Neumann(1903-1957)
Anderson Moreira Arquitetura de Computadores 23
John von Neumann (1903-1957)
Anderson Moreira Arquitetura de Computadores 24
1ª Geração (1945-1955)
Anderson Moreira Arquitetura de Computadores 25
Exercícios
1. Explique de forma resumida quais as principais características de cada geração dos computadores.
2. Qual a primeira máquina utilizada para a realização de cálculos? Explique porque você acha isso.
3. Quem foi considerado o pai da informática? Descreva a máquina criada por ele.
4. Escreva um texto destacando como o avanço da comunicação permitiu que a informação fosse melhor compartilhada e a conseqüência disso para o avanço da tecnologia.
Anderson Moreira Arquitetura de Computadores 26
Máquina multinível
Aproximar os seres humanos aos computadores
Anderson Moreira Arquitetura de Computadores 27
Camadas de um Sistema Computacional
Anderson Moreira Arquitetura de Computadores 28
1ª Geração (1945-1955)
Anderson Moreira Arquitetura de Computadores 29
2ª Geração (1955 -1965)
Anderson Moreira Arquitetura de Computadores 30
2ª Geração (1955 -1965)
Anderson Moreira Arquitetura de Computadores 31
3ª Geração (1965 -1980)
Anderson Moreira Arquitetura de Computadores 32
3ª Geração (1965 -1980)
Anderson Moreira Arquitetura de Computadores 33
4ª Geração (1980 -?)
Anderson Moreira Arquitetura de Computadores 34
4ª Geração (1980 -?)
Anderson Moreira Arquitetura de Computadores
Estudar Arquitetura de Computadores é entendimento para o funcionamento dos
recursos computacionais.
Anderson Moreira Arquitetura de Computadores 36
Arquitetura de Computadores
Anderson Moreira Arquitetura de Computadores 37
Exercícios
1. Explique como funciona a idéia de fazer uma arquitetura de Computadores em Camadas.
2. Como a evolução dos componentes eletrônicos tornou possível a popularização dos computadores?
3. A redução do tamanho dos computadores ao longo do tempo colabora para torná-los cada vez mais populares? Justifique sua resposta.
Anderson Moreira Arquitetura de Computadores 38
Sistemas Computacionais
Notável crescimento do uso de sistemas computacionais emdiferentes tipos de aplicações
Anderson Moreira Arquitetura de Computadores 39
Sistemas Computacionais
Notável crescimento do uso de sistemas computacionais emdiferentes tipos de aplicações
Anderson Moreira Arquitetura de Computadores 40
Sistemas Computacionais
Notável crescimento do uso de sistemas computacionais emdiferentes tipos de aplicações
Anderson Moreira Arquitetura de Computadores 41
Sistemas Computacionais
Notável crescimento do uso de sistemas computacionais emdiferentes tipos de aplicações
Anderson Moreira Arquitetura de Computadores 42
Sistemas Computacionais
Notável crescimento do uso de sistemas computacionais emdiferentes tipos de aplicações
Anderson Moreira Arquitetura de Computadores 43
Sistemas Computacionais
Notável crescimento do uso de sistemas computacionais emdiferentes tipos de aplicações
Anderson Moreira Arquitetura de Computadores 44
Sistemas Computacionais
Notável crescimento do uso de sistemas computacionais emdiferentes tipos de aplicações
-Sistemas cada vez menores
Anderson Moreira Arquitetura de Computadores 45
Sistemas Computacionais
“Um sistema embarcado é similar a qualquer sistemacomputacional que não seja um desktop”
(VAHID-UCR)
Anderson Moreira Arquitetura de Computadores 46
Sistemas Embarcados
Um sistema embarcado pode ser:
Hardware
Anderson Moreira Arquitetura de Computadores 47
Sistemas Embarcados
Um sistema embarcado pode ser:
Hardware
Software + Hardware
Anderson Moreira Arquitetura de Computadores 48
Sistemas Embarcados
Exemplo de Sistema Embarcado
Anderson Moreira Arquitetura de Computadores 49
Sistemas Embarcados
Trilhas de comunicação
Anderson Moreira Arquitetura de Computadores 50
Sistemas Embarcados
Unidades de Controle e Processamento
Anderson Moreira Arquitetura de Computadores 51
Sistemas Embarcados
Unidades de armazenamento
Anderson Moreira Arquitetura de Computadores 52
Sistemas Embarcados
Dispositivos e periféricos
Anderson Moreira Arquitetura de Computadores 53
Sistemas Embarcados
Barramentos
Anderson Moreira Arquitetura de Computadores 54
Máquina digital
Diagrama em Bloco de uma Câmera Digital
Fonte: aulas de prototipação do Prof. Cristiano Araújo – CIn/UFPE
Anderson Moreira Arquitetura de Computadores 55
Componentes
Analógico Digital Analógico
Memória
Coprocessadores
Controladores
Conversores
Processador
Interface
Software(Aplicação)
ASIC
Fonte: aulas de prototipação do Prof. Cristiano Araújo – CIn/UFPE
Anderson Moreira Arquitetura de Computadores 56
Principais Características
Funcionalidade definidaExecuta um único programa repetitivamente
Restrições mais rígidasBaixo custo, baixo consumo de energia, pequenos, rápidos, etc.
Reativos e de tempo realAtua continuamente com o ambiente e reage a suas mudançasDeve computar alguns resultados em tempo real (sem atrasos)
Anderson Moreira Arquitetura de Computadores 57
Projeto de Sistemas Embarcados
Objetivo principal:Desenvolver uma implementação com a desejada funcionalidade
Desafios de projeto:Otimização “simultânea” das diferentes métricas de projeto
Métrica de Projeto:Uma característica mensurável de uma implementação
Anderson Moreira Arquitetura de Computadores 58
Principais Métricas
Custo unitário: custo par a produzir cada unidade do sistema (excluindo os custos de projeto – não recorrentes)
Custo NRE (Non-Recurring Engineering cost ): custo de projeto do sistema
Tamanho
Desempenho: tempo de execução ou taxa de processamento do sistema
Consumo de Potência
Flexibilidade: a habilidade de mudar a funcionalidade sem grande aumento do custo NRE
Anderson Moreira Arquitetura de Computadores 59
Principais Métricas
Tempo de prototipação
Time-to-market
Corretude, segurança, etc...
Anderson Moreira Arquitetura de Computadores 60
Perfil do Projetista
Conhecimentos de HARDWARE e SOFTWARE são necessários para otimização das métricas
O projetista deve conhecer as várias tecnologias para escolher a melhor implementação para uma dada aplicação e restrições de projeto.
Anderson Moreira Arquitetura de Computadores 61
Três abordagens principais
FPGA - (Field Programmable Gate Array) - é um chip que suporta a implementação de circuitos lógicos relativamente grandes. Consiste de um grande arranjo de células lógicas ou blocos lógicos configuráveis contidos em um único circuito integrado. Cada célula contém capacidade computacional para implementar funções lógicas e realizar roteamento para comunicação entre elas.
ASIC – (Application Specific Integrated Circuit) é um circuito integrado (CI) construído para executar uma tarefa específica, ou seja, customizado para um uso particular ao contrário dos CIs de uso geral. Por exemplo, um chip projetado somente para rodar um telefone celular é um ASIC.
VLSI – (Very Large Scale Integrated) é o processo de criar circuitos integrados combinando milhares de transistores e circuitos baseados em um único microchip.
Anderson Moreira Arquitetura de Computadores 62
Time-to-market
Tempo
Concepçãodo sistema
Lucr
os
Time-to-market Tempo de vida
WW
O percentual de perda de lucro, do lucro possível, é dado pela área do maior retângulo menos a área do menor retângulo.
Máximo lucro possívelO volume representaperda do lucro sobre avida do produto
Lucro máximo daentrada com atrasodo produto
AtrasoASIC*FPGA*
Anderson Moreira Arquitetura de Computadores 63
Time-to-market
Em um mercado competitivo, qualquer atraso incorpora perda da parte deste mercado:– Perda da janela de mercado– Atraso para lançamento em função do longo ciclo de
desenvolvimento – O efeito da perda em lucro devido o atraso no lançamento
do produto é maior que aquele custo de desenvolvimento
Anderson Moreira Arquitetura de Computadores 64
Tecnologias
Conceito:
“A maneira de realizar uma tarefa, especialmente utilizando processos, métodos ou conhecimento”
Para o projeto de sistemas embarcados:
Tecnologia dos Processadores
Tecnologia para IC
Tecnologia de Projeto
Anderson Moreira Arquitetura de Computadores 65
Tecnologia dos Processadores
Anderson Moreira Arquitetura de Computadores
Como Implementar meu chip em sílicio?
Anderson Moreira Arquitetura de Computadores 67
Tecnologias de Implementação
Três abordagens, programabilidade crescente e eficiência decrescenteCircuitos Integrados de Aplicação Específica
SSI/MSI/LSI/VLSI
Lógica ProgramávelFPGA, CPLD
Processadores ProgramáveisMicrocontroladores, NPUs, DSP’s
Anderson Moreira Arquitetura de Computadores 68
Alta capacidade -- 10-100M transistorsAlta velocidade – 500MHz+
IntegraçãoUso específico
Uso de vários estilos de projetoFull CustomStandard-cell (synthesized) – metodologia dominanteHíbrido
Tempo de fabricação longoSemanas a meses do projeto completo até o produto
Economicamente viável para grandes volumesFazer as máscaras necessárias para fabricação está se tornando
caro, da ordem de $1M por projeto
Application Specific Integrated Circuits (ASICs)
Anderson Moreira Arquitetura de Computadores 69
Full custom
IN Out
Vdd
Gnd
J.Christiansen/CERN/98
Anderson Moreira Arquitetura de Computadores 70
Standard-cell - Exemplo
canais pararoteamento
células ativas
Exemplo: Máquina de vender refrigerante
Anderson Moreira Arquitetura de Computadores 71
Macrocell
Exemplo: Processador
Anderson Moreira Arquitetura de Computadores 72
Dual port RAMGate array
Full custom
Standard cell
Exemplo: Um ASIC com mistura de full custom, RAM e standard cells
FIFO
Single port RAM
J.Christiansen/CERN/98
Anderson Moreira Arquitetura de Computadores 73
Exemplo: Processador Pentium
J.Christiansen/CERN/98
Anderson Moreira Arquitetura de Computadores 74
Single-Chip Microprocessor/FPGA
Triscend E5 chip
Lógi
ca R
econ
figur
ável
8051 processor + outros periféricos
Memory
Triscend E5: baseado no 8-bit 8051 CISC core10 Dhrystone MIPS at 40MHz60 kbytes on-chip RAMAté 40K de gates lógicosCusto em torno de $4 (em
volume)
Anderson Moreira Arquitetura de Computadores 75
Vantagens de Lógica Programável
Baixo tempo de retorno (total turnaround time)Nenhum ou bem baixo NRE (non-recurring expenses )ReprogramávelProjeto baseado na plataforma
Anderson Moreira Arquitetura de Computadores 76
Tecnologia para IC
Tecnologia Desemp. Taman. Potên. NRE Time-to-Market
Full-Custom (VLSI)
Alto Pequeno Baixo Alto Longo
Semi-Custom(ASIC)
Médio Médio Médio Alto* Longo*
PLD (FPGA)
Baixo Grande Alto Baixo Curto*
Anderson Moreira Arquitetura de Computadores 77
Tecnologia de Projeto
“O número de transistores praticamente dobra a cada 18 meses.”Gordon Moore (1965)
Anderson Moreira Arquitetura de Computadores 78
Tecnologia de Projeto
Aumento de transistores
Anderson Moreira Arquitetura de Computadores 79
Tecnologia de Projeto
Aumento de produtividade
Anderson Moreira Arquitetura de Computadores 80
Tecnologia de Projeto
Transistores x Produtividade
Anderson Moreira Arquitetura de Computadores 81
Tamanho da equipe x Produtividade
“The mythical man-month”Brooks (1975)
Tecnologia de Projeto
Anderson Moreira Arquitetura de Computadores 82
Produtividade:
Foco em tecnologias com visão unificada de hardware e softwareAutomaçãoProgramas substituem projeto manualCompilação / Síntese
ReusoComponentes pré-definidosIP-coresProcessadores de propósito geral e de propósito único em um mesmo IC
VerificaçãoGarantir corretude e completude de cada etapa de projetoCo-simulação Hardware / Software
Tecnologia de Projeto
Anderson Moreira Arquitetura de Computadores 83
Tecnologia de Projeto
Tecnologia de Projeto
Anderson Moreira Arquitetura de Computadores 842006.2
Projeto, Fabricação e Comercialização de CIs
DH
PROJETO
FAB 1
FABRICAÇÃO TESTE MERCADO
FAB 2
Permite negociar preço e prazo !!
99% erros !!
1% erros !!Erro: volta !!
Anderson Moreira Arquitetura de Computadores 852006.2
System Level Design: Módulos de Propriedade Intelectual
Componentes Comerciais “ off-the-shelf “ (COTS)
IC´s pre-projetados e pre-fabricadosImplementam GPP ou SPPReduz tempo de projeto/depuraçãoFacilidade de aquisição
System-on-a-chip (SOC)Todos os componentes do sistema
implementados em um único CHIPMuda forma de negócio:
Como Propriedade Intelectual e não como IC
SOC construído pela integração de múltiplas descrições
•Processor•Memory•Peripheral•Board
•Memory•Peripheral•Board
•Peripheral •Mem
•Processor
•IP cores
•Core library•PeripheralA
•PeripheralB
•ProcessorX
•Peripheral •Mem
•Processor
•IP cores
•Core library•PeripheralA
•PeripheralB
•ProcessorX
•IP-core library•PeripheralA
•PeripheralB
•ProcessorX
•Processor
Anderson Moreira Arquitetura de Computadores 86
Dúvidas