Você está na página 1de 19

Microprocessadores Arquitectura Geral de Microprocessador

Antnio M. Gonalves Pinheiro Departamento de Fsica Universidade da Beira Interior Covilh - Portugal pinheiro@ubi.pt

Microprocessadores

Modelo de von Neuman

Barramento de Endereos

Processador

Memria

Entrada/Sada

Barramento de Dados

Sinais de Controlo

Universidade da Beira Interior

Microprocessadores

Estrutura de Processadores

A ALU F

B M2 M1 M0 R WR S1 S0

R0 DEMUX MUX D1 D0 R1 R2 R3

FLAGS Fov Fs

WF

Fz

Universidade da Beira Interior

MUX

Microprocessadores

Estrutura de Processadores

A ALU F

B M2 M1 M0 R WR S1 S0

R0 DEMUX MUX R1 R2 R3 D1 D0

MUX

WD RD

WF

FLAGS Fov Fs "Buffer" de dados

Fz

Barramento de Dados

Universidade da Beira Interior

Microprocessadores

Estrutura de Processadores

WSP RSP "STACK POINTER" MUX WPC RPC Contador de Programa M2 M1 M0 R WR S1 S0 WE RE IE Registo de Endereo MUX WD RD MUX

A ALU F

Barramento de Endereos

R0 DEMUX R1 R2 R3 D1 D0

WF

FLAGS Fov Fs "Buffer" de dados

Fz

Barramento de Dados

Universidade da Beira Interior

Microprocessadores

Estrutura de Processadores

WSP RSP "STACK POINTER" MUX WPC RPC Contador de Programa M2 M1 M0 R WR S1 S0 WE RE IE Registo de Endereo MUX WD RD MUX

A ALU F

Barramento de Endereos

R0 DEMUX R1 R2 R3 D1 D0

WF

FLAGS Fov Fs "Buffer" de dados

Fz

Barramento de Dados

CK

Controlador
M0 D0 S0 R M2 WF WI RSP RE RDRPC IE M1 D1 S1 WR WSP WE WD W PC

Registo de Instruco

WI

Universidade da Beira Interior

Microprocessadores

ALU - Unidade Lgica e Aritmtica

M2 M1 M0 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1

O PERAO A+B A-B A+1 A-1 A AND B A OR B A EXOR B NOT (A)

Universidade da Beira Interior

Microprocessadores

Instruces

T RS G RUPOS : - O PERAES DE M OVIMENTO DE DADOS - O PERAES A RITMTICAS E L GICAS - O PERAES DE C ONTROLO DE P ROGRAMA E XEMPLO : I NSTRUCES DE 8 BITS : I7 0 1 1 I6 0 1 T IPO DE O PERAO A RITMTICAS E L GICAS M OVIMENTO DE DADOS C ONTROLO DE P ROGRAMA

Universidade da Beira Interior

Microprocessadores

Instruces

O PERAES DE M OVIMENTO DE DADOS I7 I6 I5 I4 I3 I2 I1 I0 M NEMNICA O PERAO 1 0 0 0 s1 s0 d1 d0 1 0 1 0 0 0 d1 d0 0 1 0 MOV Rd ,Rs LD Rd ST Rs MOV RE ,Rs MOV SP,Rs M OVE C ONTEDO DE Rs PARA Rd C ARREGA Rd COM CONTEDO DO
ENDEREO A RMAZENA Rs NO ENDEREO M OVE Rs PARA O R EGISTO DE EN DEREO M OVE Rs PARA O S TACK P OINTER " M OVE R EGISTO DE ENDEREO PARA O

1 0 1 1 s1 s0 0 1 0 0 1 s1 s0 0 1 0 0 1 s1 s0 1 1 0 0 1 s1 s0 1

1 MOV PC,EH

C ONTADOR DE P ROGRAMA

Universidade da Beira Interior

Microprocessadores

Instruces

O PERAES A RITMTICAS E L GICAS I7 0 0 0 0 0 0 0 0 0 I6 0 0 0 0 0 1 1 1 1 I5 0 1 1 0 0 1 1 0 0 I4 0 0 1 0 1 0 1 0 1 I3 0 d1 d1 d1 d1 d1 d1 d1 d1 I2 0 d0 d0 d0 d0 d0 d0 d0 d0 I1 0 s1 s1 1 1 s1 s1 s1 1 I0 M NEMNICA 0 NOP s0 ADD Rd ,Rs s0 SUB Rd ,Rs INC Rd 1 DEC Rd 1 s0 AND Rd ,Rs s0 OR Rd ,Rs s0 EXOR Rd ,Rs 1 NOT Rd O PERAO N O O PERATION " Rd Rd + Rs Rd Rd - Rs Rd Rd + 1 Rd Rd - 1 Rd Rd AND Rs Rd Rd OR Rs Rd Rd EXOR Rs Rd NOT(Rd )

Universidade da Beira Interior

Microprocessadores

Instruces

O PERAES DE C ONTROLO DE P ROGRAMA I7 1 1 1 1 1 I6 1 1 1 1 1 I5 0 0 0 0 0 I4 0 0 0 0 1 I3 0 0 1 1 0 I2 I1 I0 M NEMNICA 0 0 0 JMP C2 C1 C0 J CC 0 0 0 CALL C2 C1 C0 C CC 0 0 0 RET O PERAO S ALTO INCONDICIONAL S ALTO CONDICIONAL ROTINA INCONDICIONAL ROTINA CONDICIONAL R ETORNO DE ROTINA

Universidade da Beira Interior

Microprocessadores

Arquitecturas de Microprocessadores
Modelo de Von Neumann
Barramento de Endereos

Processador

Memria

Entrada/Sada

Barramento de Dados

Sinais de Controlo

Universidade da Beira Interior

Microprocessadores

Arquitecturas de Microprocessadores
Arquitectura Geral
Interligao Barramento de Endereos Ponteiro do Stack Contador de Programa Registo de Endereo Interligao Barramento de Dados Registos Gerais Registo de Instruo

ALU Registo de Flags

Unidade de Controlo

Universidade da Beira Interior

Microprocessadores

Arquitecturas de Microprocessadores
Arquitectura Geral Linguagem de Alto Nvel Variveis com Nome Multidimensionais - Rotinas e Retornos - Parmetros - Memria Dinmica Dados = Instruco

Microprocessador Array" Linear Unidimensionais Operaes de Stack" Dados = Instruco

Organizao da Memria Estrutura de Dados Programao Tipo de Memria

Normalmente feitas para superar o Semantic Gp

Universidade da Beira Interior

Microprocessadores

Arquitecturas de Microprocessadores
Arquitectura Geral Arquitectura e Ecincia de Execuo Tipos de Dados +/ idnticos no Microprocessador e na Linguagem de Alto Nvel Modos de Endereamento Denem mecansimos para aceder aos dados Podem proporcionar mecanismos ecientes para mapear estruturas de dados complexas Conjunto de Instruces Podem aumentar ecincia de duas formas: CISC - Complex Instruction Set Computer RISC - Reduced Instruction Set Computer

Universidade da Beira Interior

Microprocessadores

Ciclos de Instruco
Ciclo Bsico de Instruco

Incio

Ciclo de Busca

Ciclo de Execuo

Halt
Universidade da Beira Interior

Microprocessadores

Ciclos de Instruco
Ciclo Bsico de Instruco com Interrupes

Incio

Ciclo de Busca No Processa Interrupo Sim Interrupo? Ciclo de Execuo

Halt
Universidade da Beira Interior

Microprocessadores

FPU - Floating Point Unit


Representao de Nmeros Reais

Ponto Fixo
Parte Inteira Parte Decimal

Ponto Flutuante 1
Sinal Mantissa

x(10)2

Expoente

Underow Nmero com valor absoluto muito pequeno diferente de zero que no pode ser representado. Overow Nmero com valor absoluto muito grande que no pode ser representado. FPU - Floating Point Unit Circuito que se destina a fazer operaes com nmeros em vrgula utuante.

Universidade da Beira Interior

Microprocessadores

FPU - Floating Point Unit


Norma do IEEE 754-1985 Nmero de bits Preciso Simples 32 Preciso Dupla 64 Nome Sinal Mantissa Expoente Polarizao 1 1 23 52 8 11 127 1023

Valor representado em decimal:


p1

(1)Sinal

1+
n=1

Mantissa(n) 2n

2Expoente-Polarizao

Formato: Sinal Expoente Mantissa

Casos especiais: Tipo Expoente Mantissa Zero 00...000 00...000 Innito 11...111 00...000 NaN 11...111 =0 Num. no normalizado 00...000 =0

Universidade da Beira Interior

Você também pode gostar