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.
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 deaula
• Avaliações
– Três provas e um projeto
• Uso da linguagem VHDL
• Fórum de Estudantes 2004
• Design Contest
4.
Bibliografia Recomendada
• Arquiteturae 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
Linguagemorientada 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 umComputador
• 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 VonNeumann
Controle de
Execução
Controle
Execução de
Operações
Aritmética
Memória I/O
Instruções
e Dados
9.
Modelo de VonNeumann
operação
Bloco de controle Bloco operacional
CPU
endereços dados
Memória
instruções dados
10.
Modelo de VonNeumann
• 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 VonNeumann
• 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áquinade 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áquinade 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 umcomputador 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 VonNeuman
• 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