Buscar

Aula 03 22%2F03%2F17 Organização de Sistemas de Computadores (CPU)

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 29 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 29 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 29 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Organização de 
Computadores
Aula 03
Prof.ª Larissa
2016
Sumário
• Organização de sistemas de computadores:
– Estrutura de um computador
• Processadores
– Introdução
– Organização da CPU
– Execução de Instrução
– RISC versus CISC
– Princípios de projetos para computadores modernos
– Paralelismo no nível de instrução
Estrutura de um computador
• Componentes básicos que definem um computador:
1. Processador: Considerado o “cérebro” do
computador, sua principal função é realizar
operações funcionais sobre os dados de
entrada, devolvendo uma saída, ou seja
informação.
2. Memória: serve para armazenar dados. Não é
possível haver processamento sem uma
memória para armazenar os dados de entrada,
os dados de saída e os dados que estão sendo
processados.
Estrutura de um computador
• Componentes básicos que definem um computador:
3. Periféricos de E/S – Entrada/Saída: promovem a
comunicação com o mundo externo. Meios pelos
quais os dados de entrada são inseridos, ou por
onde os dados de saída podem ser exibidos ao
operador, ou ainda enviados a outro dispositivo.
(Ex: teclado, mouse, monitor, impressora, display).
4. Barramentos: Sistema de conexões (Ex: condutor elétrico, fibra
óptica) que permitem a interligação entre dispositivos de um
sistema de computacional. Portanto, promovem a comunicação
entre processador, memórias e periféricos (barramento externo à
CPU), além da comunicação interna da CPU (barramento interno).
Estrutura de um computador
• Componentes básicos que definem um computador:
Estrutura de um computador
• Qualquer dispositivo programável cuja estrutura seja a da figura
abaixo pode ser um computador. Desde um supercomputador de
milhões de dólares a um microcontrolador que custa centavos.
Um computador digital consiste em
um sistema interconectado de
processador(es), memórias e
dispositivos de entrada e saída.
Estrutura de um computador: Processador
• Introdução ao Processador:
• A unidade central de processamento (UCP ou CPU – Central
Processing Unit) é cérebro do computador. É composta
essencialmente por 4 elementos:
1. ULA (Unidade Lógica e Aritmética): onde a execução do
processamento dos dados ocorre, por meio de operações lógicas e
aritméticas realizadas pelos circuitos digitais.
2. Registradores: memória de alta velocidade onde os dados de
entrada (operandos) ou saída (resultado) das operações são
armazenados. Geralmente, todos os registradores de dada CPU
possuem o mesmo tamanho em bits (Ex: 32 ou 64 bits).
Estrutura de um computador: Processador
3. UC (Unidade de Controle): gera os sinais que coordenam o
funcionamento da CPU. Responsável por buscar instruções na
memória e decodificá-las. A etapa de decodificação inclui:
determinar o tipo de instrução a ser realizada e interpretá-las em
instruções mais simples (quando necessário). A UC também
determina a ordem de execução das instruções pela ULA e realiza a
busca de operandos.
Denominamos instrução a cada ordem fornecida 
ao computador para que este realize uma 
operação específica com os dados.
Estrutura de um computador: Processador
4. Barramentos internos da CPU: conjunto de fios paralelos que
promove a comunicação (movimento de dados) entre os outros três
elementos da CPU (UC, ULA e Registradores).
Disponível em: <https://computersciencestudies.wordpress.com/tag/processador/>
UC
ULA
Estrutura de um computador: Processador
• Resumo da estrutura de um sistema computacional:
Estrutura de um computador contendo uma CPU e dois periféricos de E/S
CPU
UC
ULA
Registradores
Barramento externo
Memória 
Principal
Monitor Impressora
Dispositivos de E/S
Estrutura de um computador: Processador
• Tipos de registradores:
Existem registradores com funções distintas. Os tipos mais conhecidos são:
• Contador de Programa (PC): Um dos registradores mais
importantes, que indica a próxima instrução a ser buscada para
execução.
• Registrador de Instrução (IR): que contém a instrução que está
sendo executada, ou seja, a informação captada da memória cache,
principal, E/S, etc.
• A maioria dos computadores também tem diversos outros
registradores, alguns de uso geral, outros de uso específico.
Estrutura de um computador: Processador
• Organização interna da CPU:
ULA
BA
A+B
A
B
A+B
Registradores
Registrador de 
entrada da ULA
Barramento de 
entrada da ULA
Registrador de 
saída da ULA
A organização interna de parte de uma típica CPU
é mostrada ao lado. Esta parte é chamada de
caminho de dados, e abrange registradores
(tipicamente de 1 a 32), a ULA e os barramentos
internos de conexão.
Na figura, temos a representação dos
registradores de entrada que recebem os valores
hipotéticos A e B que serão somados na ALU e
enviados ao registrador de saída. Os resultados
são armazenados em registradores para novos
cálculos e posteriormente podem ser
armazenados (escritos) em memória.
Estrutura de um computador: Processador
• Organização interna da CPU:
ULA
BA
A+B
A
B
A+B
Registradores
Registrador de 
entrada da ULA
Barramento de 
entrada da ULA
Registrador de 
saída da ULA
A comunicação entre os registradores e a ALU
acontecem por meio de barramentos internos
da CPU.
O processo de submeter dois valores à ULA e
obter um resultado é chamado de ciclo do
caminho de dados. Quanto mais rápido for este
ciclo, mais rápido será o funcionamento da
máquina.
Resumidamente, uma operação normal do
caminho de dados consiste em selecionar o
conteúdo de registradores, submetê-lo à ALU e
movimentar o resultado para outro registrador.
Estrutura de um computador: Processador
• Organização interna da CPU:
Instruções podem ser divididas em duas categorias:
Instruções registrador-memória: permitem que palavras de memória sejam
trazidas aos registradores, onde podem ser usadas como entradas da ULA em
instruções subsequentes. Também permitem que o conteúdo de registradores
sejam armazenados na memória.
Instruções registrador-registrador: utiliza dados já disponíveis nos registradores.
Uma típica instrução registrador-registrador busca dois operandos nos
registradores, os traz até os registradores de entrada da ULA, efetua alguma
operação entre eles e armazena o resultado em outro registrador.
Palavra: unidade natural de informação usada por um computador. É a quantidade de bits 
que a CPU processa por vez. Em geral, os barramentos deverão ter a largura de uma palavra, 
assim como os registradores possuem o tamanho de uma palavra (portanto, é a quantidade de 
dados movida entre memória e registradores por vez). Quando dizemos que um processador 
“é de 64 bits”, estamos nos referindo ao tamanho da palavra.
Estrutura de um computador: Processador
• Execução de instrução:
A CPU segue os seguintes passos na execução de instruções:
1- Traz a próxima instrução da memória até o registrador IR;
2- Altera o registrador PC para indicar a próxima instrução;
3- Determina o tipo da instrução (decodificação);
4- Se a instrução necessitar de uma palavra da memória, determina
onde está a palavra;
5- Traz a palavra para dentro de um registrador da CPU, se necessário;
6- Executa a instrução;
7- Voltar à etapa 1 para iniciar a execução da instrução seguinte.
Estrutura de um computador: Processador
• Execução de instrução:
Esta sequência seguida pela CPU costuma ser denominada ciclo buscar-
decodificar-executar. É fundamental para a operação de todos os computadores.
Buscar
DecodificarExecutar
Localiza instrução na 
memória principal
Determina o tipo de 
instrução 
Executa “de fato” a 
instrução (ALU)
Estrutura de um computador: Processador
• RISC x CISC:
RISC e CISC são duas linhas de arquiteturas de processadores:
RISC (Reduced Instruction Set Computer): processadores com conjunto de
instruções simples.Processadores RISC têm poucas e simples instruções,
executando o nível ISA diretamente por hardware. Acarreta em processamento
mais rápido da maioria das instruções comuns por não haver etapa de
interpretação.
CISC (Complex Instruction Set Computer): processadores com conjunto de
instruções complexo. Processadores CISC executam uma variedade maior de
instruções de máquina, e utilizam interpretação do nível ISA por microprograma.
Uma única instrução CISC costuma executar funções que demandariam diversas
instruções RISC. (Ex: 386, da Intel).
Estrutura de um computador: Processador
• RISC x CISC:
Principalmente por questões de compatibilidade, a Intel manteve sua arquitetura
CISC, porém, a partir do 486, seus chips possuem um núcleo RISC que executa as
instruções mais simples (e tipicamente mais comuns) em um único ciclo de
caminho de dados, enquanto interpreta as instruções mais complexas na forma
CISC.
O resultado é que instruções comuns são rápidas (RISC) e instruções menos
comuns são mais lentas (CISC). Esta solução permite que seu desempenho seja
satisfatório, mantendo a compatibilidade com softwares antigos.
Atualmente, a maioria dos processadores possuem arquiteturas híbridas, que são
essencialmente processadores CISC, mas incorporam muitos recursos
encontrados nos processadores RISC, ou vice-versa.
Estrutura de um computador: Processador
• RISC x CISC:
A quantidade de etapas
necessárias para a execução de
uma instrução nos processadores
de arquitetura CISC é maior do
que nos RISC, causando uma
maior demora no processamento
das instruções.
Disponível em: <http://www.gruponetcampos.com.br/2011/03/arquitetura-cisc-e-risc-qual-diferenca/>
Estrutura de um computador: Processador
• Princípios de projetos para computadores modernos:
Segundo Tanenbaum, há um conjunto de regras que designers de novas CPUs de
uso geral tentam seguir. Estas regras são baseadas na tecnologia atual, e não são
leis (podem mudar caso haja mudanças na tecnologia de fabricação dos
dispositivos, ou precisam ser adaptadas devido a compatibilidade com outras
arquiteturas). São baseadas nos princípios RISC:
1. Todas as instruções são diretamente executadas por hardware.
Portanto, não deve haver etapa de microprograma (interpretação).
2. Maximize a taxa de emissão das instruções.
Tentar iniciar o máximo possível de instruções por segundo. Um processador
de 500 MIPS, por exemplo, emite 500 milhões de instruções por segundo.
Este princípio sugere que o paralelismo pode desempenhar um importante
papel no desempenho do processador.
Estrutura de um computador: Processador
• Princípios de projetos para computadores modernos:
3. Instruções devem ser fáceis de decodificar.
Um limite crítico para a taxa de emissão de instruções é sua decodificação,
para avaliar quais recursos elas necessitam. Aconselha-se fazer instruções
regulares, de comprimento fixo, com pequeno número de campos.
4. Somente LOAD e STORE devem referenciar a memória.
Apenas as instruções LOAD e STORE devem referenciar a memória, já que
este acesso pode levar um longo e imprevisível tempo. Todas as outras
instruções devem operar somente em registradores, que são mais rápidos.
5. Providencie muitos registradores.
Já que o acesso à memória é relativamente lento, é preciso providenciar
muitos registradores (no mínimo 32), de modo que, assim que uma palavra for
buscada, ela possa ser mantida nos registradores até não ser mais necessária.
Estrutura de um computador: Processador
• Paralelismo no nível de instrução:
Paralelismo: fazer duas ou mais coisas simultaneamente. Há
duas formas gerais: paralelismo no nível de instrução e
paralelismo no nível de processador.
No nível de instrução, o paralelismo é explorado dentro de instruções individuais 
para conseguir mais instruções por segundo.
Buscar instruções na memória é um gargalo na velocidade da execução de
instruções. Por isso, o paralelismo propõe que as instruções sejam divididas em
diversas partes, cada uma manipulada por uma parte dedicada do hardware, e
todas elas podem operar em paralelo. Isso é também conhecido como pipeline.
Estrutura de um computador: Processador
• Paralelismo no nível de instrução:
(a) Pipeline de cinco estágios (S1 a S5
são unidades dedicadas do hardware)
(b) Execução paralela de instruções (1,
2, 3, 4...) pelas 5 unidades dedicadas,
durante 9 ciclos de clock do
processador. Instrução 1 em destaque.
(a)
(b)
Clock: circuito que emite 
sinais elétricos através 
de um cristal
de quartzo e realiza a 
sincronização entre as 
instruções a serem 
processadas. As 
oscilações são medidas 
em hertz (Hz).
Estrutura de um computador: Processador
• Paralelismo no nível de instrução:
Funcionamento do pipeline de 5 estágios:
• O estágio S1 busca a instrução da memória e armazena num buffer até chegar
a hora de executá-la
• No estágio S2 ocorre a decodificação da instrução, determinando tipo e
operandos
• No estágio S3 ocorre a busca dos operandos na memória ou nos registradores
• No estágio S4 temos a execução - passagem pelo caminho de dados
• No estágio S5 o resultado do processamento é escrito num registrador
A fig. anterior mostra o funcionamento do pipeline mostrando que os estágios de cada
processamento são aplicados a várias instruções simultaneamente. Por exemplo: no tempo 1 a
instrução 1 está sendo lida; no tempo 2 a instrução 1 está sendo decodificada enquanto a
instrução 2 está sendo lida, e assim por diante.
Estrutura de um computador: Processador
• Paralelismo no nível de instrução:
Latência (L) [s]: tempo que demora para uma instrução ser executada.
Largura de banda do processador (LBP) [MIPS]: velocidade de
processamento (quantos MIPS tem a CPU).
Estágios (n): número de estágios de pipeline do processador.
𝐿𝐿 𝑠𝑠 = 𝑇𝑇[𝑠𝑠] × 𝑛𝑛Tempo de ciclo (T) [s]: tempo de cada ciclo de clock do processador.LBP 𝑀𝑀𝑀𝑀𝑀𝑀𝑀𝑀 = 𝑛𝑛
𝐿𝐿[𝑠𝑠] × 106
Estamos supondo que cada estágio ocorra 
exatamente em um ciclo de clock!
Estrutura de um computador: Processador
• Paralelismo no nível de instrução:
1-a) Supondo que o ciclo da máquina de um pipeline de 5 estágios dure
2ns, quantos segundos demora uma instrução para percorrer todo o
caminho do pipeline (latência), sabendo que cada estágio se completa
em um ciclo?
b) Qual é a velocidade de processamento deste processador (LBP), em
MIPS?
𝐿𝐿 𝑠𝑠 = 𝑇𝑇[𝑠𝑠] × 𝑛𝑛
LBP 𝑀𝑀𝑀𝑀𝑀𝑀𝑀𝑀 = 𝑛𝑛
𝐿𝐿[𝑠𝑠] × 106
𝐿𝐿 𝑛𝑛𝑠𝑠 = 2[𝑛𝑛𝑠𝑠] × 5 𝐿𝐿 = 10𝑛𝑛𝑠𝑠
LBP = 510. 10−9 × 106 LBP = 500𝑀𝑀𝑀𝑀𝑀𝑀𝑀𝑀
Estrutura de um computador: Processador
• Paralelismo no nível de instrução:
2) No caminho de dados de uma máquina, carregar os registradores da
ULA leva 5ns, executar a ULA leva 10ns e registrar o valor da
informação de saída num registrador leva 5ns. Não há nenhuma outra
etapa de execução de instrução. Qual é o número máximo de MIPS de
que esta máquina é capaz na ausência de paralelismo?
LBP 𝑀𝑀𝑀𝑀𝑀𝑀𝑀𝑀 = 𝑛𝑛
𝐿𝐿[𝑠𝑠] × 106
𝐿𝐿 𝑛𝑛𝑠𝑠 = 5 + 10 + 5 𝐿𝐿 = 20𝑛𝑛𝑠𝑠
LBP = 120. 10−9 × 106 LBP = 50𝑀𝑀𝑀𝑀𝑀𝑀𝑀𝑀
Estrutura de um computador: Processador
• Paralelismo no nível de instrução:
3) No computador 1, o tempo total de execução de uma instrução é
10ns, sendo que há um pipeline de 5 estágios. No computador 2, o
tempo de execução é de 5ns, porém não há pipeline. Qual é a largura
de banda dos respectivos processadores?
𝐿𝐿 = 10𝑛𝑛𝑠𝑠LBP = 510. 10−9 × 106LBP = 500𝑀𝑀𝑀𝑀𝑀𝑀𝑀𝑀
Computador 1: Computador 2:
𝐿𝐿 = 5𝑛𝑛𝑠𝑠𝑛𝑛 = 5 𝑛𝑛 = 1LBP = 15. 10−9 × 106LBP = 200𝑀𝑀𝑀𝑀𝑀𝑀𝑀𝑀
Estrutura de um computador: Processador
• Paralelismo no nível de instrução:
4) Qual é a finalidade da etapa 2 na lista de passos de execução de
instrução? O que aconteceria se esta etapa fosse omitida?
“2- Alterar o registrador PC para indicar a próxima instrução”A finalidade da etapa é fazer o contador de programa apontar para a
próxima instrução a ser executada. Caso esta etapa seja omitida, o
computador executaria a primeira instrução infinitamente.
	Organização de Computadores
	Sumário
	Estrutura de um computador
	Estrutura de um computador
	Estrutura de um computador
	Estrutura de um computador
	Estrutura de um computador: Processador
	Estrutura de um computador: Processador
	Estrutura de um computador: Processador
	Estrutura de um computador: Processador
	Estrutura de um computador: Processador
	Estrutura de um computador: Processador
	Estrutura de um computador: Processador
	Estrutura de um computador: Processador
	Estrutura de um computador: Processador
	Estrutura de um computador: Processador
	Estrutura de um computador: Processador
	Estrutura de um computador: Processador
	Estrutura de um computador: Processador
	Estrutura de um computador: Processador
	Estrutura de um computador: Processador
	Estrutura de um computador: Processador
	Estrutura de um computador: Processador
	Estrutura de um computador: Processador
	Estrutura de um computador: Processador
	Estrutura de um computador: Processador
	Estrutura de um computador: Processador
	Estrutura de um computador: Processador
	Estrutura de um computador: Processador

Outros materiais