O documento apresenta os principais conceitos de organização e arquitetura de computadores, incluindo o modelo de Von Neumann, a execução de instruções, a memória e o gargalo de Von Neumann.
2. Sumário
• Introdução • Gargalo de Von Neumann
• Bibliografia Recomendada • Noções de Desempenho
• O que é um computador
• Organização de um
Computador
• Modelo de Von Neumann
• IAS – Máquina de Von
Neuman
• Memória
• Execução de instruções
3. Introdução
• Plano de aula
• Avaliações
– Três provas e um projeto
• Uso da linguagem VHDL
• Fórum de Estudantes 2004
• Design Contest
4. Bibliografia Recomendada
• Arquitetura e Organização de Computadores - Quinta
Edição - William Stallings - Prentice Hall - 2002
• Organização estruturada de computadores, quarta
edição, Andrew S. Tanenbaum
• Computer Organization & Design: The
Hardware/Software Interface - David A. Patterson,
John L. Hennessy - Morgan Kaufmann - 1994
• Analysis and Design of Digital Systems with VHDL -
Allen Dewey - PWS Publishing Company - 1997
5. O que é um Computador
• Um computador é uma máquina eletrônica lógica
• Programável
– Programa
• Instruções
• Representável por uma hierarquia de níveis de
abstração (Tanenbaum)
– Microeletrônica (mais baixo)
– Sistema Operacional (mais alto)
6. Níveis de Abstração
Linguagem orientada a problemas
Linguagens de alto nível
Linguagem deAssembly
Linguagem Montágem
Gerencia de sistema e interface
Sistema Operacional
de usuário
Máquina Convencional
Conjunto de instruções
Interpretador em firware
Microprogramação
Unidades lógicas combinacionais e
Lógica Digital
sequenciais
Caracteristicas físicas, malha de
Microeletrônica
transistores
7. Organização de um Computador
• Modelo de Von Neumann (1945)
– Concito de programa armazenado
– Separação da Unidade Aritmética e de Controle
– Utilização de barramentos e registradores
– Hardware de entrada e saída (I/O)
UCP Memória I/O
8. Modelo de Von Neumann
Controle de
Execução
Controle
Execução de
Operações
Aritmética
Memória I/O
Instruções
e Dados
9. Modelo de Von Neumann
operação
Bloco de controle Bloco operacional
CPU
endereços dados
Memória
instruções dados
10. Modelo de Von Neumann
• Memória: Conjunto de posições/locações
endereçáveis
• Palavras: Posição/locação da memória. Contém
dados e instruções.
• Palavra: Unidade básica de transferência de/para
memória.
• Palavras são localizadas através de um endereço
• Dados, instruções e endereços são codificados em
binário
11. Modelo de Von Neumann
• Programa é uma seqüência de instruções,
colocadas numa seqüência de endereços
• A execução de um programa corresponde à
execução seqüencial de suas instruções
• A seqüência das instruções é definida de
forma dinâmica em tempo de execução
– Existência de instruções de controle de fluxo
12. IAS – Máquina de Von Neumann
Unidade Central de Processamento
Unidade Lógica e Aritmética
Acumulador MQ
Circuitos de Lógica e Aritmética
Hardware MBR
de Entrada Dados e
Instruções Memória
e Saída
Principal
IBR PC
MAR
IR Circuitos
de Controle
Endereço
Unidade de Controle
13. IAS – Máquina de Von Neumann
Unidade Central de Processamento
Unidade Lógica e Aritmética
Acumulador MQ
Circuitos de Lógica e Aritmética
Hardware MBR
de Entrada Dados e
Instruções Memória
e Saída
Principal
IBR PC
MAR
IR Circuitos
de Controle
Endereço
Unidade de Controle
14. Conceitos e Convenções
• Registradores: Posições de memória
internas a UCP.
– Dedicados e de Uso Geral
• Barramento: Via de comunicação
– Dados e Instruções, Endereços e Controle
– Comunicação Síncrona e Assincrona
15. Memória
• Em um computador geralmente existe uma
hierarquia de memória.
• Cada nível da hierarquia é dividido em
palavras de N bits cada
• A palavra é a unidade básica de
transferência entre a UCP e a memória.
• Uma memória com 2M palavras necessita de
M bits de endereço
16. Memória
N Bits
Posição 0
M Bits 2M posições
Endereço
Posição 2M - 1
N Bits
17. Execução de Instruções
• busca da próxima instrução na memória
– manda endereço, volta instrução
• decodificação da instrução
– interpreta código da instrução
• se a instrução precisa de dados (na memória)
– manda endereço, busca dado
• execução da instrução
– executa ações específicas para cada instrução
18. Execução de Instruções
endereço instrução
BC MEM
instrução
MEM BC operação
endereço operando 1
Bloco Bloco
BC MEM Controle Operativa
operando 1
MEM BO
endereço operando 2
BC MEM
operando 2
dados
MEM BO endereço
ordem de execução
BC BO Memória
executa soma instrução dados
BO
endereço resultado
BC MEM
resultado
BO MEM
19. Gargalo de Von Neuman
• Refere-se ao tráfego no barramento
– vai endereço da instrução volta instrução
– vão endereços dos operandos
– vão e voltam operandos
• Para eliminar gargalo: diminuir tráfego de
informações
– manter informações na CPU
– diminuir tamanho em bits das informações transferidas
– Inclusão de registradores
20. Noções de Desempenho
• Ciclo de relógio (clock): intervalos básicos de tempo nos
quais são executadas as operações elementares de uma
instrução
– transferências de valores entre registradores
– operações aritméticas na ALU
• Período do relógio (T): Tempo de duração de um ciclo do
relógio
• Freqüência do relógio (f): Freqüência de repetição de
ciclos de clock por unidade de tempo
• Exemplo: Se o período do relógio é de T = 4 ns = 4x10-9
f = 1/T = 1/4x10-9 = 250 MHz
21. Isto significa que?
Circuito Seqüencial
• Para um período de T=4ns
a máquina pode executar
250 milhões de operações
elementares
Circuito
• As operações elementares Combinatório
são executadas de forma
síncrona com o relógio
• O desempenho da T
máquina e proporcional a:
nº ciclos x período =
nº ciclos ÷ freqüência
Relógio
22. Noções de Desempenho
• Tempo de UCP de execução de um programa pode
se dividido em tempo do usuário e tempo do
sistema
– tempo de usuário – execução de instruções do programa
do usuário
– tempo de sistema – tarefas do S.O. necessárias para a
execução do programa do usuário
• Além do tempo UCP há o tempo de resposta (ou
tempo relógio real) que inclui:
– acessos a disco, atividades de I/O
– overhead do sistema operacional