Você está na página 1de 20

Universidade Federal de Mato Grosso – UFMT

Faculdade de Arquitetura, Engenharia e Tecnologia – FAET


Departamento de Engenharia Elétrica

Microprocessadores

Aula 4: Arquitetura de um Microprocessador

Prof. Nicolás Eusebio Cortez Ledesma

2018/1
INTRODUÇÃO: O que eles têm em comum?
INTRODUÇÃO: Microprocessadores ou Microcontroladores
µP µC

Arduino

RaspBerry Pi
Primeiro computador digital - 1940

Desde os primeiros computadores digitais até os poderosos e revolucionários


computadores dos dias atuais, poucas mudanças ocorreram no princípio básico
de operação.

( Tamanho Físico / Custo / Velocidade / Tamanho da palavra / Capacidade de armazenagem)

Os modernos computadores digitais ainda trabalham com “0” e “1” utilizando-se


das mesmas operações lógicas básicas.

Dessa forma a disciplina Microprocessadores abordará Conceitos / Princípios /


Operações que são comúns a todos os tipos de computadores digitais.

- Microprocessadores -
Linha e tempo na evolução dos Microprocessadores
Zilog
Z-80 Arduíno
8 bits (Atmel Beaglebone
(1976) AVR
AMD Power PCAtmel Cortex-A8
8008 8085 8088 286A PIC RISC AVR RISC) (ARM)
8 bits 8 bits 16 bits 16 bits 8 bits 32 bits 8 bits 8 bits 32, 64 bits
(1972) (1976) (1979) (1982) (1985) (1993) (1996) (2005) (2011)

4004 8080 8086 8051 ARM Texas Pentium Rasperry pi


4 bits 8 bits 16 bits 8 bits 32 bits IA 200MMX (ARM)
(1971) (1974) (1978) (1980) (1983) 32 bits 64 bits 32, 64 bits
(1987) (1997) (2012)
Linha e tempo na evolução dos Microprocessadores
Linha de tempo – Lei de Moore
O um processo evolutivo da eletrônica dos
semicondutores é regido por um
comportamento muito bem definido.
“O número de transistores dos chips teria
um aumento de 100%, pelo mesmo custo, a
cada período de 18 meses”.
“O poder de processamento dos
computadores dobraria a cada 18 meses”.
Especificações e Características dos Microprocessadores

Barram. Memoria
Ano Fabricante Modelo Reg. Freq. Nº Tr. Nº instr. MIPS µArq.
Dados endereçável
1971 Intel 4004 4b 4b 4k 108 kHz 2,3 k 45 0,092 10 µm
1972 Intel 8008 8b 8b 16 k 200 kHz 3,5 k 10 µm
1973 Intel 8080 8b 8b 64 k 2 MHz 6k 0,64 6 µm
1976 Zilog Z80 8b 8b 64 k 4 MHz
1976 Intel 8085 8b 8b 64 k 6,14 MHz 6,5 k 3 µm
1979 Zilog Z8000 16 b 16 b 64 k 10 MHz 110 2,5
1976 Texas TMS9900 16 b 16 b 32 k 69
1978 Intel 8086 16 b 16 b 1M 10 MHz 29 k 0,75 3 µm
1979 Intel 8088 16 b 16/8 b 1M 8 MHz 29 k 0,66 3 µm
1982 Intel 80186 16 b 16 b 1M 6 MHz 29 k 1 2 µm
1982 Intel 80188 16 b 16/8 b 1M 6 MHz 29 k 1 2 µm
1983 Intel 80286 16 b 16 b 16 M 6 MHz 134 k 2.66 1,5 µm
1985 Intel 80386 32 b 32/1 6 b 4G 16 MHz 275 k 9.9 1 µm
Especificações e Características dos Microprocessadores

Barram. Barram.
Ano Fabricante Modelo Reg. Freq.  Nº Tr. Nº instr. MIPS uArq. 
Dados endereços
1989 Intel 80486 32 b 32 b 4G 100 MHz 1,6 M 70,7 0,6 µm
1993 Intel Pentium 32 b 64 b 4G 200 MHz 3,3 M 270 0,35 µm
1995 Intel Pentium Pro 32 b 64 b 4G 200 MHz 5,5 M 541 0,35 µm
1996 Intel Pentium MMX 32 b 64 b 4G 300 MHz 4,5 M + 57 0,35 µm
1997 Intel Pentium II 32 b 64 b 64 G 500 MHz 27,4 M 300 0,25 µm
1999 Intel Pentium III 32 b 64 b 64 G 1,4 GHz 28,1 M 2,054 k 0,13 µm
2000 Intel Pentium IV 32 b 64 b 64 G 4 GHz 42 M 9,726 K 65 nm
2003 Intel Pentium M 32 b 64 b 64 G 2,26 GHz 140 M 65 nm
2005 Intel Pentium D 64 b 64 b 64 G 3,6 GHz 376 M 65 nm
2007 Intel Pentium Dual Core 64 b 64 b 64 G 3,33 GHz 176 M 65 nm
2006 Intel Core 2 Duo/Quad 64 b 64 b 64 G 3,5 GHz 820 M 59,455 k 45 nm
2008 Intel Core i3, I5, I7 64 b 64 b 64 G 4 GHz 2,27 G 317,9 k 14 nm
atual
Desempenho de um Microprocessador

• Frequência de Clock
O sinal de clock determina a base de tempo do µP. Portanto, é 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

CLK

Ciclo de Clock

• Índice de Desempenho de um Microprocessador (velocidade de processamento)


𝑡𝑒𝑚𝑝𝑜 𝑛ú𝑚𝑒𝑟𝑜 𝑑𝑒 𝑐𝑖𝑐𝑙𝑜𝑠 𝑖𝑛𝑠𝑡𝑟𝑢çõ𝑒𝑠
𝑇𝑒𝑚𝑝𝑜 𝑑𝑒 𝑝𝑟𝑜𝑐𝑒𝑠𝑠𝑎𝑚𝑒𝑛𝑡𝑜 = × ×
𝑐𝑖𝑐𝑙𝑜 𝑖𝑛𝑠𝑡𝑟𝑢çã𝑜 𝑝𝑟𝑜𝑔𝑟𝑎𝑚𝑎
1. Aumento da frequência de clock
2. Aumento do número interno de bits
3. Aumento do número externo de bits
4. Aumento da capacidade e velocidade da memória cache
5. Redução do número de ciclos para execução de cada instrução
6. Execução de instruções em paralelo
Arquitetura básica de um Microprocessador (µP)
PC: Contador de programa Buffer de Barramento de dados
IR: Registrador de instrução dados
MAR: Registrador de endereço de memória
MBR: Registrador de buffer de memória
AC: Registrador Acumulador
SP: Apontador de Pilha

End
AC
Acumulador
Código de Informação
IR Instrução complementar
X R1
X
Apontador ..
SP de pilha
Apontador
..
CPU .
de Pilha C
ULA
Decodi-
Decodi-
ficador
PC
Contador
de programa Rn ULA DC
C Carry

Unidade DC
ficador
Lógica
Unidade Registradores ZZ Zero
Aritmética
de
Unidade S Sinal
S
de
Controle MAR P Paridade
Unidade de controle
O P
Controle Buffer de endereço Transbordo
Sinais de
controle Flags
Barramento de endereços
Microprocessador: Execução de uma Instrução

Ciclo de Instrução:
O Microprocessador executa cada instrução em uma série de micro-operações para:
1. Trazer a próxima instrução da memória até o registrador de instruções (IR);
2. Alterar o contador de programa (PC) para indicar a localização da próxima instrução.
3. Determinar o tipo de instrução trazida.
4. Se instrução usar uma palavra na memória, determinar onde essa palavra está.
5. Trazer a palavra para dentro de um registrador da CPU, se necessário.
6. Executar a instrução.
7. Voltar à etapa 1 para iniciar a busca e execução da instrução seguinte..

Sinal de Controle µOperação µOperação µOperação Ciclo


T0: IR  MP[PC] Busca
T1: End  IR<3:0> Op-code  IR<7:4> PC = PC + 1 Decodificação
T2: Operando  MD[End] Indireto
T3: Habilita operação ULA Executa operação Op-dest  Resposta Execução
Arquitetura de computador: Von Neumann vs Harvard

Memória Entrada/Saída
Von Neumann CPU dados ou prog (E/S)

B. de Dados
Barramentos
B. de Endereços
do Sistema
B. de Controle

Endereço Endereço
Memória CPU Memória de
Harvard n1 n2
de Dados (µP) Programa
Dado Instrução
Arquitetura de computador: Von Neumann vs Harvard

Busca instruções e dados de uma memória só


• Limita a largura de banda operacional.

Existe espaços de memória separados para


instruções e dados
• Aumenta a taxa de transferência;
• É possível ter diferentes larguras nos
barramentos de programas e dados.
Arquitetura de processador: CISC vs RISC

Arquiteturas em uso nos computadores atuais:


• CISC: Complex Instruction Set Computing
Computador com Conjunto Complexo de Instruções) Exemplos: Intel e AMD
• RISC: Reduced Instruction Set Computing
Computador com Conjunto Reduzido de Instruções (Exemplos: PowerPC da
Apple, Motorola, IBM, SPARC da SUN, e MIPS R2000)
• Híbrida: Combinação de ambas arquiteturas. Exemplo: Pentium Pro. O núcleo mais
interno usa filosofia RISC.
𝒕𝒆𝒎𝒑𝒐 𝒏ú𝒎𝒆𝒓𝒐 𝒅𝒆 𝒄𝒊𝒄𝒍𝒐𝒔 𝒊𝒏𝒔𝒕𝒓𝒖çõ𝒆𝒔
𝑻𝒆𝒎𝒑𝒐 𝒅𝒆 𝒑𝒓𝒐𝒄𝒆𝒔𝒔𝒂𝒎𝒆𝒏𝒕𝒐 = × ×
𝒄𝒊𝒄𝒍𝒐 𝒊𝒏𝒔𝒕𝒓𝒖çã𝒐 𝒑𝒓𝒐𝒈𝒓𝒂𝒎𝒂

RISC: Número reduzidos de ciclos CISC: Reduzido número de


de instrução. Alto desempenho. instruções por programa, uma
Execução em paralelo de vez que cada instrução executa
instruções (com pipeline). tarefas complexas.
Algumas Características: RISC vs CISC

Características RISC CISC


Arquitetura Registrador-Registrador Registrador-Memória
Tipos de Dados Pouca variedade Muito variada
Formato das Instruções Instruções com poucos endereços Instruções com muitos endereços
Modo de Endereçamento Pouca variedade Muita variedade
Estágios de Pipeline Entre 4 e 10 Entre 20 e 30
Acesso aos dados Via registradores Via memória
Tipos de instruções Simples (1 um ciclo) Complexas (múltiplos ciclos)
Instruções de tamanho Fixo (PIC 14b) Variável (8085: 1, 2 e 3 bytes)
Número de registradores Muitos Poucos
Unidade de controle (decodificação) Hardwired (simples) Microprogramada (complexa)
Número de instruções Pequeno (PIC gama média: 35) Elevado (8085: 74)
Execução Eficiente (menor tempo) Mais lento
Número de linha de código Mais extenso Mais pequeno
Algumas Características: RISC vs CISC

Vantagens RISC Desvantagens RISC


• Velocidade de execução. • O desempenho de um processador RISC depende
• O uso de pipeline torna os processadores RISC diretamente do código gerado pelo programador.
duas a quatro vezes mais rápidos que um CISC de Um código mal desenvolvido pode resultar em
mesmo clock. tempo de execução muito grande
• Simplicidade de Hardware. • Um programa originalmente compilado para uma
máquina CISC tem um equivalente compilado
• Circuitos mais simples, devido ao fato de trabalhar para máquina RISC com uma quantidade muito
com instruções simples. maior de códigos assembly, ocupando um espaço
• Instruções de máquina simples e pequenas, o que maior na memória.
aumenta sua performance. • A arquitetura RISC requer sistema de memória
• Menor consumo de energia. rápida para alimentar suas instruções.
Etapas de Execução de uma Instrução: CISC vs RISC
RISC CISC
RISC: As instruções são executadas em um único ciclo de
instrução.
Alguns µP não implementam as operações de
multiplicação e divisão. Essas instruções devem ser
resolvidas com adições e deslocamentos.

CISC: Antes de executar uma instrução, há necessidade de busca da


instrução na memória. Utiliza-se micro-códigos gravados no processador,
para decodificações e execução das instruções.

PIPELINE
• Técnica usada para acelerar a execução de instruções. O processador executa múltiplas
instruções paralelamente em estágios diferentes.
• Semelhante a uma linha de montagem, enquanto uma instrução se encontra na fase de execução,
uma outra instrução pode estar no ciclo fetch, simultaneamente.
• O resultado global é que, a cada ciclo, uma nova instrução é iniciada e uma instrução é encerrada.
Pipeline de 4 estágios
C1 C2 C3 C4

Ciclo de Ciclo de Ciclo de


Ciclo de
busca Decodificação busca de
Execução
(Fetch) de Instrução dado

C1 Instr.1 Instr.2 Instr.3 Instr.4 Instr.5 Instr.6 Instr.7 Instr.8

C2 Instr.1 Instr.2 Instr.3 Instr.4 Instr.5 Instr.6 Instr.7

C3 Instr.1 Instr.2 Instr.3 Instr.4 Instr.5 Instr.6

C4 Instr.1 Instr.2 Instr.3 Instr.4 Instr.5


Microprocessador Básico

D3-0 Bus de dados Dis4

74126 7475 7475


In3-0 74125
REG S REG A REG B

Dis1 Dis2 Dis3 clk


ACC
R/W 4 4
Cn 4 74171
GS A3-0 B3-0
4
GA
GB S3-0
M ULA 74181

Controle F3-0

A=B

Você também pode gostar