Você está na página 1de 37

Arquitetura de computadores I

Computador de Von Neumann


Arquitetura de computadores I

Arquitetura de Von Neumann

ENIAC
Arquitetura de computadores I

A primeira geração:
ENIAC (Electrical Numerical Integrator and Computer)
• Primeiro computador de propósito geral
• 30 toneladas, ocupando 140 metros quadrados
• Consumo de 140 Kw
• Utilizava 18 mil válvulas
• 5 mil adições por segundo
Arquitetura de computadores I
A primeira geração:
ENIAC (Electrical Numerical Integrator and Computer)
Arquitetura de computadores I
A primeira geração:
Dica de Filme:
Arquitetura de computadores I
A primeira geração:
ENIAC (Electrical Numerical Integrator and Computer)
• Representação na base decimal
• Memória constituída por 20 acumuladores com capacidade de
armazenar um número de 10 dígitos.
• Cada dígito representado por 10 válvulas
• Programado manualmente
(conexão de cabos e chaves)
Arquitetura de computadores I
A primeira geração:
Fundamentos da proposta de von Neumann

• Deverá executar com mais freqüência as operações


elementares da aritmética
• Controle lógico por meio de um controle central
• Deve ter um mecanismo de armazenamento
• Possuir meios para transferência de dados internamente e
externamente

Aplica-se ao computadores genéricos atuais?


Arquitetura de computadores I
A primeira geração:
Máquina de von Neumann
• Conceito de programa e dados armazenados
• obtenção dos dados para processamento direto da memória
• programa após processar atualiza a memória
Arquitetura de computadores I
A primeira geração:
Máquina de von Neumann
Proposta de implementação do computador IAS ( Instituto de
Estudos Avançados de Princepton)

• Memória para dados e instruções


• ULA para operações matemáticas
• Unidade de Controle interpreta e
executa instruções
• Dispositivos para E/S
Arquitetura de computadores I
A primeira geração:
Máquina de von Neumann
Implementação do computador IAS
• Memória com mil posições (palavras) de 40 bits
• Dados e instruções armazenados na memória
• A unidade de controle controla a operação efetuando a busca de
instruções na memória e executando uma de cada vez.
Arquitetura de computadores I
A primeira geração:
Máquina de von Neumann
Implementação do computador IAS
• Cada número é representado por um bit de sinal e o valor em 39
bits
Arquitetura de computadores I
A primeira geração:
Máquina de von Neumann
Implementação do computador IAS
• A palavra pode conter duas instruções de 20 bits cada uma
contendo o código da instrução (opcode) de 8 bits e um endereço
que designa uma palavra na memória.
Arquitetura de computadores I
A primeira geração:
Máquina de von Neumann
• Codificação de instrução x86

Fonte: Intel 64 and IA-32 Architectures Software Developer’s Manual Volume 2


Arquitetura de computadores I
A primeira geração:
Máquina de von Neumann
• Codificação de instrução x86

x86

IAS
Arquitetura de computadores I
Estrutura do computador IAS Central Processing Unit

Arithmetic and Logic Unit

Accumulator MQ

Arithmetic & Logic Circuits

Input MBR
Output Instructions
& Data Main
Equipment
Memory

IBR PC
MAR
IR Control
Circuits
Address
Program Control Unit

MBR – Memory Buffer Register


Arquitetura de computadores I
Estrutura do computador IAS Central Processing Unit

Arithmetic and Logic Unit

Accumulator MQ

Arithmetic & Logic Circuits

Input MBR
Output Instructions
& Data Main
Equipment
Memory

IBR PC
MAR
IR Control
Circuits
Address
Program Control Unit

MAR – Memory Address Register – Registro para Endereço de Memória


Arquitetura de computadores I
Estrutura do computador IAS Central Processing Unit

Arithmetic and Logic Unit

Accumulator MQ

Arithmetic & Logic Circuits

Input MBR
Output Instructions
& Data Main
Equipment
Memory

IBR PC
MAR
IR Control
Circuits
Address
Program Control Unit

IR – Instruction Register - Armazena código da instrução em execução


Arquitetura de computadores I
Estrutura do computador IAS Central Processing Unit

Arithmetic and Logic Unit

Accumulator MQ

Arithmetic & Logic Circuits

Input MBR
Output Instructions
& Data Main
Equipment
Memory

IBR PC
MAR
IR Control
Circuits
Address
Program Control Unit

IBR – Instruction Buffer Register - Armazena código da instrução a direita na palavra


Arquitetura de computadores I
Estrutura do computador IAS Central Processing Unit

Arithmetic and Logic Unit

Accumulator MQ

Arithmetic & Logic Circuits

Input MBR
Output Instructions
& Data Main
Equipment
Memory

IBR PC
MAR
IR Control
Circuits
Address
Program Control Unit

PC – Program Counter - endereço de memória da próxima instrução


Arquitetura de computadores I
Estrutura do computador IAS Central Processing Unit

Arithmetic and Logic Unit

Accumulator AC e MQ

Arithmetic & Logic Circuits

Input MBR
Output Instructions
& Data Main
Equipment
Memory

IBR PC
MAR
IR Control
Circuits
Address
Program Control Unit

MC e AC – Accumulator- armazenamento temporário das operações executadas na ULA


Arquitetura de computadores I
Conjunto de instruções do computador IAS
• Transferência de dados entre memória e registradores

• Desvio incondicional

• Desvio condicional
Arquitetura de computadores I
Conjunto de instruções do computador IAS
• Aritmética

• Alteração de Endereço
Arquitetura de computadores I
Fluxo para execução das instruções no IAS
IBR – Instruction Buffer Register
IR – Instruction Register
MAR – Memory Address Register –
Registro para Endereço de Memória
MBR – Memory Buffer Register
Arquitetura de computadores

Endereço

Memória CPU
Dados

Computador mínimo
Arquitetura de computadores

Armazenamento
Dados e
instruções Execução de
Endereço instruções,
operações E/S

Memória CPU
Dados

Computador mínimo
Arquitetura de computadores
Endereço
palavras

Endereço

Dados

Memória
Arquitetura de computadores
palavras

Endereço

Espaço de
Endereçamento

Dados

Memória
Arquitetura de computadores

Tamanho da palavra em bits

Endereço

Dados

Memória
CPU
PC
(Program Counter) Registradores

ULA

Decodificador
Instruções
Endereço
Salto,
decisão,
pilha, ...
Dados
Busca
Arquitetura de computadores

Palavra de memória

Código de Instrução Dado e/ou Endereço


Arquitetura de computadores

Palavra de memória

0 1 1 0 0 1 0 0 1 0 1

Código de Instrução Dado e/ou Endereço


Conjunto de instruções

0 1 1 0 0 1 0 0 1 0 1

Código de Instrução Dado e/ou Endereço

0110 - não
0001 - E
0011 - sub
...
...
CPU

Instrução 0110
ULA

Decodificador
Instruções
Endereço

Dados
Busca 01100100101
CPU

Instrução 0110
ULA

Decodificador
Instruções Dado 0100101
Endereço

Dados
Busca 01100100101
CPU
Instrução 0110
1011010

ULA

Dado 0100101

Conjunto de Instruções
Endereço 0110 - não
0001 - E
0011 - sub
...
Dados ...
Exercício:
Um computador com arquitetura von Neumman possui as seguintes características: palavra de memória com 8 bits, um
registrador de 8 bits REG1, contador de programa PC e registrador de Instruções RI. As instruções na palavra estão
codificadas com os dois bits a esquerda representando o código da instrução e o 6 bits restantes contendo o operando.
Alguns códigos de instrução são:
00 – Carrega REG1 com o conteúdo apontado pelo endereço
01 – Armazena no endereço de memória apontado pelo operando o conteúdo de REG1
10 – Adiciona o valor contido em REG1 com o valor do endereço do operando, REG1 recebe o resultado.

Com base nessas informações escreva um programa que adicione duas posições de memória e armazene o resultado na
posição 42. Demonstre a execução do programa passo a passo preenchendo os quadros

Passo: 1 2 n
End. Palavra End. Palavra End. Palavra

mem

......

Valor Valor Valor


REG1 REG1 REG1
CPU PC PC PC
RI RI RI
Arquitetura de computadores

Roteiro para estudo:


• Características Maquina de Von Neumman
• Decodificador de instruções
• ULA
• Memória: Palavra, Endereço, espaço de endereçamento
• Conceito de conjunto de Instruções
• PC (Program Counter ) Contador de programa
• Ciclo de busca, decodificação e execução

Você também pode gostar