arquitetura e organização de computadores · aumento de clock o sinal de clock é responsável...

51
ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES PROF. DEJAIR PRIEBE

Upload: vothien

Post on 12-Dec-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

ARQUITETURA E ORGANIZAÇÃO

DE COMPUTADORES

PROF. DEJAIR PRIEBE

PROCESSADOR

A função de um computador é executar tarefas

com a finalidade de resolver problemas.

Uma tarefa pode ser executada por meio de

uma sequência ordenada de instruções de

máquina.

O processador é o componente responsável

pelo processamento de instruções e de dados.

Desempenho de Processadores

O aumento de desempenho (velocidade de processamento)

de processadores está relacionado com os seguintes

aspectos:

Aumento de clock

Aumento do número interno de bits

Aumento do número externo de bits

Redução do número de ciclos para executar cada instrução

Aumento da capacidade e velocidade da memória cache

Execução de instruções em paralelo

Aumento de Clock

O sinal de clock é responsável pelo sincronismo entre as

unidades de processamento internas ao microprocessador e

pelas unidades externas.

Quanto maior a frequência de clock mais rápido o

processamento. No entanto, não se pode aumentar de

forma indefinida essa frequência. Isso pode causar falhas de

processamento e sobreaquecimento.

O aumento depende de pesquisas com o objetivo de reduzir

o tamanho dos componentes básicos do microprocessador e

aumento da quantidade de componentes, sem perda de

estabilidade no funcionamento.

Aumento do numero interno de bits

Uma maior quantidade de bits dos

registradores e dos barramentos internos

permite a movimentação de uma maior

quantidade de dados por unidade de tempo,

aumentando o desempenho do

microprocessador.

Aumento do numero externo de bits

Um número maior de bits externos permite a

movimentação de uma maior quantidade de

dados por unidade de tempo com os

periféricos, tais como memória, unidade de

entrada e saída, controlador de acesso direto

à memória (DMA).

Arquitetura de Computadores

7

CPU

Ciclo de instrução:

Busca instrução;

Decodifica a instrução;

Busca operandos;

Executa a instrução;

Escreve os resultados;

Retorna ao primeiro passo.

Redução de ciclos de instrução

A execução de uma instrução normalmente é

feita em duas etapas:

busca (onde a instrução é transferida da

memória para a unidade de decodificação) e

execução (onde os sinais de controle ativam,

em uma sequência lógica, todas as unidades

envolvidas na execução).

Redução de ciclos de instrução

No microprocessador 8085 as instruções

mais rápidas são executadas em quatro

ciclos de clock; as mais lentas, em até 16

ciclos de clock.

A redução do número de ciclos de clock na

execução de uma instrução torna o

processamento mais rápido.

Aumento da capacidade e velocidade

da memória cache

O aumento de velocidade de processamento dos

microprocessadores tem sido muito maior do que o

aumento da velocidade de acesso à memória

principal.

Assim, a velocidade de acesso à memória principal

torna-se um limitador de desempenho dos

processadores.

Em razão desse problema foi criada a memória

cache.

Aumento da capacidade e velocidade

da memória cache

A memória cache ( constituída de memória RAM

estática) é usada para acelerar a transferência de

dados entre a CPU e a memória principal

(constituída de RAM dinâmica, de menor volume,

porém mais lenta).

O aumento da capacidade e da velocidade da

memória cache resulta no aumento da velocidade

de transferência de dados entre a CPU e a

memória principal e, consequentemente, resulta no

aumento do desempenho global do sistema.

Processador

O processador é constituído por centenas de

transistores.

As portas lógicas são implementadas

fisicamente por meio de transistores.

Diferentes encapsulamento de transistores.

Processador

O processador é dividido em três partes

básicas:

14

Organização funcional

UCP

UNIDADE

ARITM ÉTICA

E LOGICA

CLOCK

MEMORIA

MICROPROCESSADOR

PRINCIPAL

SISTEM A CENTRAL

Barrame nto

INTERFACE

UNIDADE

DE

CONTROLE

Barramento

Unidade s

de

Entrada e Saída (E/S)

INTERFACE

PERIFERICO PERIFERICO

... ...

Componentes do Processador

ULA (Unidade Lógica e Aritmética)

É onde as operações lógicas e aritméticas são

realizadas.

Unidade de controle

Controla a execução de qualquer instrução

dentro do processador.

Define o que tem que ser feito a cada momento.

Decodifica a instrução e gera os sinais de

controle para as unidades funcionais.

Componentes do Processador

Registradores

Pequenas memórias dentro do processador.

Armazenam dados que estão sendo

executados no momento.

Dois tipos:

Registradores de propósito geral

Registradores específicos

Arquitetura de Computadores

17

CPU - Processamento

Execução propriamente dita das instruções

Esta função envolve a UAL, FPU’s e

registradores;

Exemplos:

Operações aritméticas;

Operações lógicas;

Movimentação de dados;

Desvios (branch);

Entrada / Saída.

Exemplos de Unidades Funcionais

Microprocessador

Microprocessador Intel 4004 com 2300 transistores (1971)

Faça uma lista com os últimos 15 microprocessadores e

seus anos de lançamento, comparando os fabricados pela

Intel e pela AMD.

Pentium IV com 55.000.000 transistores (2001).

Itanium com 2 bilhões de transistores (2008)

Barramento

Conjunto de condutores por meio dos quais as

informações trafegam de uma parte do

computador para outra

Instruções

Representação elementar que gera uma ação

em um computador.

Determina o que o computador deve fazer

naquele instante. Um programa é composto

por muitas instruções, que são executadas de

forma ordenada pelo processador.

Estrutura de uma instrução

00000010001100100100000000100000

add $t0, $s1, $s2

Tipos de instruções

Matemáticas e lógicas

Soma, subtração, and, or...

Movimentação de dados

registrador – registrador; registrador –

memória; memória – registrador.

Entrada/Saída

Controle

Instruções de salto

26

CPU - Controle

Dispositivos envolvidos nas atividades de

controle:

UC: unidade de controle;

RI (ou IR) - Registrador de instruções

(Instruction Register);

CI (ou PC) - Contador de instruções (Program

Counter)

Clock (Relógio);

RDM (Registador de dados da memória);

REM (Registrador de endereços de memória).

Arquitetura de Computadores

27

CPU - Controle

UC - movimentação de dados e controle da

ALU (ou UAL);

Clock - gerador de pulsos que sincronizam os

trabalhos da CPU. Frequência medida em

MHZ;

RI - armazena a instrução que está sendo

executada;

PC - armazena o endereço da próxima

instrução a ser buscada.

Execução das instruções Monociclo

Sequência das instruções

Busca Le Reg. Mem.ULA Esc. Reg

Execução das instruções Multiciclo

Sequência das instruções

Busca Le Reg. Mem.ULA Esc. Reg

Exemplo de Lavanderia

Tem-se os volumes A, B, C e D de roupas para lavar,

secar e passar

A lavadora leva 30 minutos

A secadora leva 40 minutos

A passadeira leva 20 minutos

A B C D

Pipeline é natural

• A lavanderia sequencial leva 6 horas para 4 volumes

A

B

C

D

30 40 20 30 40 20 30 40 20 30 40 20

6 7 8 9 10 11 Meia noite

T

a

s

k

O

r

d

e

r

Tempo

Lavanderia Sequencial

Lavanderia em Pipeline

• Lavanderia em Pipeline leva 3.5 horas

A

B

C

D

6 7 8 9 10 11 Meia noite

o

r

d

e

m

Tempo

30 40 40 40 40 20

Execução das instruções - Pipeline

Ordem

Paralelismo

O processador perde muito tempo aguardando

os dados da memória.

Para melhorar o desempenho do sistema,

utiliza-se o paralelismo.

Pode ocorrer em dois níveis

Nível de instrução – pipeline

Nível de hardware – mais de um processador

Paralelismo

Multiprocessador

Processadores interligados que executam

instruções do mesmo programa e que

compartilham a mesma memória.

Multicomputador

O mesmo que o anterior, porém, além da

memória compartilhada, possui também uma

memória própria.

Trabalha como se fosse um outro computador,

portanto, melhorando o desempenho.

Paralelismo

Multiprocessador Multicomputador

Conjunto de instruções

CISC (Complex Instruction Set Computer)

Possui como característica um grande número de

instruções.

Idéia: quanto mais instruções fossem

implementas no computador, melhor seria o

desempenho.

Porém, a maior parte das instruções utilizadas

são simples e quase sempre as mesmas

Conjunto de instruções

RISC (Reduced Instruction Set Computer)

Possui número reduzido de instruções

São mais simples do que as CISC

Instruções mais complexas são implementadas

pelo software.

Tempo de execução menor que a CISC, ou seja,

as instruções RISC são executadas mais rápidas.

Entretanto, um programa em RISC utiliza mais

instruções para fazer a mesma coisa.

Mesmo assim, o RISC é mais rápido.

Arquitetura de Computadores

39

Entrada / Saída

Subsistema do computador responsável pelo

fornecimento de informações e exibição dos

resultados produzidos.

Os componentes do sistema de E/S são

chamados de periféricos por se localizarem

fora do núcleo CPU/MP

O processador deve se comunicar com

periféricos que possuem diferentes

velocidades e formas de representar e

transmitir seus dados.

Arquitetura de Computadores

40

Entrada / Saída

É necessário que exista um componente

intermediário entre o processador e cada um

dos periféricos.

As controladoras de periféricos realizam o

papel da comunicação entre os periféricos e o

núcleo CPU / MP.

Arquitetura de Computadores

41

Entrada / Saída

Existem duas formas de comunicação entre a

CPU / MP e os periféricos:

Transmissão serial: Os dados são transmitidos

um bit de cada vez (Ex: Teclado e Mouse).

Transmissão paralela: Os dados são transmitidos

em grupos de bits (Ex: HD’s e Vídeo)

Arquitetura de Computadores

42

Entrada / Saída

Principais dispositivos de E/S:

Teclado;

Mouse;

Monitor de Vídeo;

Impressora;

HD’s, disquetes, CD’s e Fitas Magnéticas;

Scanners;

MODEM’s

Etc.

Arquitetura de Computadores

43

Entrada / Saída

Interrupções: Sempre que uma operação de

E/S é solicitada pelo processador, a

controladora respectiva a executa e, ao final,

realiza uma interrupção para informar o término

da mesma.

DMA (Direct Memory Access): Técnica que

minimiza a participação do processador em

operações de E/S, permitindo que as

controladoras acessem a memória diretamente.

Memória

Tipos de memória

RAM (Random Access Memory)

É uma memória volátil de escrita e leitura.

É aleatória porque permite o acesso direto ao

dado que será lido ou escrito, sem a necessidade

de passar por todas as outras posições de

memória.

Estática (SRAM): armazenada em FLIP-FLOP.

Dinâmica (DRAM): armazenada em capacitor,

necessitando de refresh.

Tipos de memória

ROM (Read Only Memory)

É uma memória apenas de leitura, e não-volátil.

Os dados são previamente gravados pelos

fabricantes.

as instruções de um processador

um programa de controle de temperatura em um

microcontrolador.

Tipos de memória

PROM (Programmable Read Only Memory)

É uma memória somente leitura programável e

não-volátil.

Sua programação pode ser feita pelo próprio

usuário por meio de um dispositivo apropriado

denominado gravador.

Uma vez gravado, não pode ser mais alterado

nem apagado.

Tipos de memória

EPROM (Erasable Programmable Read

Only Memory)

É uma memória somente leitura programável e

apagável e não-volátil.

Pode ser programada pelo usuário e, com

determinado tempo de exposição à luz

ultravioleta em certo ponto do chip, todo seu

conteúdo é apagado, podendo, portanto ser

reprogramado novamente

Tipos de memória

EEPROM (Eletric Erasable Programmable

Read Only Memory)

É uma memória somente leitura programável e

apagável e não-volátil.

Pode ser programada pelo usuário e pode ser

apagada utilizando sinais elétricos ao invés de

luz ultravioleta.

Tipos de memória

Flash

É uma evolução da memória EEPROM.

Enquanto a EEPROM precisa ser totalmente

apagada para ser reprogramada, a memória

Flash pode ser apagada parcialmente,

proporcionando, assim, maior facilidade na hora

de fazer alterações em sua programação.

Muito utilizada em celulares, palms, câmeras

digitais, videogames etc.

Hierarquia de memórias