You are on page 1of 31

Introduo Organizao de Computadores

Sistemas da Computao
Prof. Rossano Pablo Pinto, Msc. rossano at gmail com 2 semestre 2007

Tpicos

Processadores Memria Principal Memria Secundria Entrada e Sada

Copyleft Rossano Pablo Pinto

Processadores

Copyleft Rossano Pablo Pinto

Processadores

CPU (Central Processing Unit) o coordenador de todas as atividades de um computador (crebro) interligado aos outros elementos do computador a partir de um barramento:

Barramento: coleo de fios para transmitir endereos, dados e sinais de controle.

Existem barramentos internos e externos ao processador


Copyleft Rossano Pablo Pinto 4

Processadores
Busca e decodificao Operaes lgicas e aritmticas Armazenamento p/ processar

Copyleft Rossano Pablo Pinto

Processadores

Funo do processador: executar instrues obtidas a partir da memria principal A CPU composta por diversas partes:

Unidade de Controle (UC) Unidade Lgica e Aritmtica (ULA) Registradores (propsito geral e propsito especfico)

PC (Program Counter), IR (Instruction Register)


Copyleft Rossano Pablo Pinto 6

Processadores

Data Path da CPU de von Neumann Exemplo de adio de A eB

Copyleft Rossano Pablo Pinto

Processadores

Data Path da CPU de von Neumann


registradores (tipicamente por volta de 32) ULA (Unidade lgica e aritmtica) vrios barramentos que conectam as partes da CPU Registradores alimentam as entradas da ALU Sada armazenada no registrador de sada da ALU. O resultado pode ser escrito novamente em outros registradores
Copyleft Rossano Pablo Pinto 8

Processadores

Data Path da CPU de von Neumann

A maioria das instrues pode ser divididas em 2 categorias:


registrador-memria registrador-registrador

O processo de operar 2 operandos pela ULA e armazena-los de volta em algum registrador conhecido por: data path cycle (ciclo de caminho de dados). Quanto mais rpido o data path cycle, mais rpida a mquina.
Copyleft Rossano Pablo Pinto

Processadores

Execuo de instrues
1. Busca prxima instruo da memria e armazena no IR 2. Incrementa PC para apontar p/ a prxima instruo 3. Determina o tipo de instruo (decode) 4. Se instruo faz uso de operandos vindos da memria, determina seu endereo 5. Busca operandos (palavra) da memria e armazena nos registradores
Copyleft Rossano Pablo Pinto 10

Processadores

Execuo de instrues
6. Busca prxima instruo da memria e armazena no IR 7. Executa a instruo 8. Volta ao passo 1. para executar a prxima instruo

Copyleft Rossano Pablo Pinto

11

Processadores

Exemplo de processador Hipottico

Copyleft Rossano Pablo Pinto

12

Processadores

Exemplo de processador Hipottico: ciclo de busca e execuo, formato de inst.

Copyleft Rossano Pablo Pinto

13

Qual o resultado destas operaes?

Copyleft Rossano Pablo Pinto 14

Processadores

Implementao de Instrues via Hardware x Software


Hardwired (Hardware) Microprogramado (software) usa interpretao de instrues. Ler seo 2.1.2 do livro Organizao Estruturada de Computadores AST 4a ou 5a edio

Copyleft Rossano Pablo Pinto

15

Processadores

Instrues complexas

Uma das motivaes: 2 ou mais instrues executadas sempre em conjunto podiam dar origem uma nica instruo com a mesma funo Uma das motivaes: tempo de execuo das instrues quase sempre igual, fcil implementar tudo em hardware.
Copyleft Rossano Pablo Pinto 16

Instrues simples

Processadores

RISC x CISC (Ler Seo 2.1.3)

1970s muita experimentao com instrues complexas minicomputador 801 foi na contra-mo. Possua um projeto bem simples, voltado para alta-performance (no usava interpretao). 1980 Berkeley Projeto de CPUs VLSI sem o uso de interpretao Surgia o Termo RISC. Reduced Instruction Set Computer.
Copyleft Rossano Pablo Pinto 17

Processadores

RISC x CISC (Ler Seo 2.1.3)


Processador RISC I e II tornou-se o SPARC 1981 - MIPS (projeto diferente mas com idias semelhantes) deu origem ao processador MIPS Processadores Intel x86 i386 so CISC Processadores Intel i486 atual so hbridos (ncleo RISC p/ instrues mais simples + interpretao p/ instrues mais complexas)
Copyleft Rossano Pablo Pinto 18

Processadores

Princpios de projeto p/ computadores modernos (Seo 2.1.4)

Instrues comuns so diretamente executadas por hardware instrues complexas so interpretadas Maximizar taxa de incio de instrues Instrues devem ser fceis de decodificar Apenas LOADs e STOREs devem referenciar memria Prover MUITOS registradores
Copyleft Rossano Pablo Pinto 19

Processadores

Como aumentar a velocidade dos processadores?

Aumento do clock/freqncia do processador.

Problema: o limite a velocidade da luz. O mximo que consegue-se no cobre ou fibra tica 20 cm/nanosegundo. Quanto maior a freqncia, maior o calor que tem que ser dissipado.

Duplicar unidades funcionais !!!

Copyleft Rossano Pablo Pinto

20

Processadores

Paralelismo por meio de Instrues (Seo 2.1.5)


Pipelining Arquiteturas Super-escalares

Copyleft Rossano Pablo Pinto

21

Processadores

Pipeline (ex.: 5 estgios e 9 ciclos de clock)

Copyleft Rossano Pablo Pinto

22

Processadores

Pipeline (ex.: 5 estgios e 9 ciclos de clock)


Suponha um tempo de ciclo de 2 ns Leva 10 ns p/ uma instruo ser executada Qual o MIPS desta mquina? 100 MIPS ? No! 500 MIPS

Copyleft Rossano Pablo Pinto

23

Processadores

Pipeline

Latncia x largura de banda de processador Latncia -> TEMPO que uma instruo leva para ser executada Largura de banda do processador -> quantos MIPS a CPU tem Exemplo de processador com pipeline: 486

Copyleft Rossano Pablo Pinto

24

Processadores

Arquiteturas Super-Escalares

Pipeline duplo de 5 estgios com uma nica unidade de busca

Copyleft Rossano Pablo Pinto

25

Processadores

Arquiteturas Super-Escalares

O exemplo anterior de 2 pipelines somente possvel se:


as 2 instrues no tiverem conflito em uso de recursos (ex.: registradores) nenhuma delas pode depender do resultado da outra

Exemplo de processador com pipeline duplo: Pentium (similar ao da figura anterior)

Copyleft Rossano Pablo Pinto

26

Processadores

Arquiteturas Super-Escalares

Compiladores otimizados p/ Pentium podem gerar cdigo 2 vezes mais rpido que os otimizados p/ 486.

Copyleft Rossano Pablo Pinto

27

Processadores

Arquiteturas Super-Escalares

Pentium II tem um nico Pipeline mas com vrias unidades funcionais, similar ao da figura:

Neste caso, S3 tem que ser consideravelmente mais rpido que S4


Copyleft Rossano Pablo Pinto 28

Processadores

Paralelismo por meio de Processadores


Computadores em Array: Conjunto de processadors idnticos que executam a mesma instruo em paralelo em dados distintos

Copyleft Rossano Pablo Pinto

29

Processadores

Paralelismo por meio de Processadores

Multi-processadores: vrios processadores compartilhando mesma memria. a) SMP b) NUMA

Copyleft Rossano Pablo Pinto

30

Processadores

Paralelismo por meio de Processadores

Multi-Computadores: vrios computadores interligados por rede.

Copyleft Rossano Pablo Pinto

31

You might also like