A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Unidade Central de Processamento

Apresentações semelhantes


Apresentação em tema: "Unidade Central de Processamento"— Transcrição da apresentação:

1 Unidade Central de Processamento
Sistemas Digitais CIn-UFPE

2 Como funciona um computador simples
IR – Instruction Register PC – Program Counter MAR – Memory Address Register MBR – Memory Bus Register Vídeo Teclado Memória Programas + Dados E/S Buffers ALU PC IR Gerais MAR MBR Unid. processamento Unid. controle

3 Como funciona um computador?
Início Busca a próxima instrução Executa a instrução Término

4 Executando um programa
Busca instrução Executa instrução Busca operando Decodifica instrução Armazena resultado Incrementa PC

5 Exemplo - Simple statements
/* Programa que repete uma seqüência de adições de três sinais de entrada (a+b+c) e mostra o resultado (z = a=b+c) Sigad: CLRLD /* Clear acumulador Y, Z e carrega valor de A em X ADD /*ADD 1o. valor, guarda resultado e lë novo valor ADD /*ADD 2o .valor, guarda resultado e lë novo valor ADD /*ADD 3o .valor, guarda resultado DISP Sigad /*mostra resultado e repete cálculo em Z Como construir uma unidade de controle que implemente este programa? Estado Estado/saída QA Sigad: QB/CLRLD QB QC/ADD QC QD/ADD QD QE/ADD QE QA/DISP Y saída Tx entrada Z A X + Tz Ty clk controle

6 Z = a+b+c Y Z + X Q B ADD A=b Y=0 X=a Z=0 A = b a Q C ADD A=c Y=a X=b
Clk Y saída QA Sigad: QB/CLRLD QB QC/ADD QC QD/ADD QD QE/ADD QE QA/DISP Q B ADD A=b Y=0 X=a Z=0 Ty=1 Tx=1 Tz=2 A = b a Q C ADD A=c Y=a X=b Z=0 Ty=1 Tx=1 Tz=2 A = c b a Q D ADD A=- Y=a+b X=c Z=0 Ty=1 Tx=1 Tz=2 A = - c a+b A = a - Q E A=- Y=a+b+c X=- Z=0 Ty=0 Tx=0 Tz=1 DISP A = - - a+b+c A=- Y=- X=- Z= a+b+c Q A A = - - a+b+c Ty Z entrada X + Tz Q A CLRLD A=a Y=- X=- Z=- Ty=0 Tx=1 Tz=0 Tx controle Clk T [0] = clear [1] = load [2] = hold Clk

7 X = -; Y= a+b+c; Z =a+b+c;
Execução de um progama memória Y + X controle Tx Ty Z Tz entrada A clk saída cpu memória memória Contador de programa cpu Inst |dados memória Memória: Instruções end(dados) Contador do Programa (PC) cpu Z = a + b + c CLRD end+0(a) X = a; Y=0; Z=0; X = -; Y=-; Z=-; ADD end+1(b) X = b; Y=a; Z=0; ADD end+2(c) X = c ; Y= a+b; Z =0; ADD X = -; Y= a+b+c; Z =0; X = -; Y= a+b+c; Z =a+b+c; DISP Instruções end (dados)

8 Memória Dado Instrução sinal magnitude 15 3 Opcode Endereço 4 Opcode
15 sinal magnitude Instrução 15 3 Opcode Endereço 4 Opcode

9 Executando um programa
Memória Opcode | endereço dados Registradores da CPU 3 0 0 3 0 0 PC (endereço) 3 0 1 AC (operando) 3 0 2 IR (Instrução) ... 9 4 0 9 4 1

10 Executando um programa
Memória Opcode | endereço dados Registradores da CPU 3 0 0 3 0 0 PC 3 0 1 AC 3 0 2 IR ... 9 4 0 9 4 1

11 Executando um programa
Memória Opcode | endereço dados Registradores da CPU 3 0 0 3 0 1 PC 3 0 1 AC 3 0 2 IR ... 9 4 0 9 4 1

12 Executando um programa
Memória Opcode | endereço dados Registradores da CPU 3 0 0 3 0 1 PC 3 0 1 AC 3 0 2 IR ... 9 4 0 9 4 1

13 Executando um programa
Memória Opcode | endereço dados Registradores da CPU 3 0 0 3 0 2 PC 3 0 1 AC 3 0 2 IR ... 9 4 0 9 4 1

14 Executando um programa
Memória Opcode | endereço dados Registradores da CPU 3 0 0 3 0 2 PC 3 0 1 AC 3 0 2 IR ... 9 4 0 9 4 1

15 Arquitetura do computador
Dispositivo de entrada e saída(E/S) Memória Processor Memory Input/Ouput PC IR AC MAR Address Bus Data Bus MDR ALU PC = Program counter IR = Instruction register AC = Acumulador MAR = Memory Address Register MDR = Memory Data Register ALU = Arithmetic & Logic Unit Control Unit

16 Arquitetura do computador
PC - program counter – indica a próxima instrução a ser executada. IR - Instruction register – recebe a instrução a ser decodificada pela CPU. AC – Acumulador (registrador auxiliar). Guarda temporariamente valores sendo calculados. MAR – Registrador que indica a próxima posição de memória a ser referenciada. Conectado ao barramento de endereços. MDR – Registrador usado para receber ou transmitir dados. Conectado ao barramento de dados. ALU (ULA) – Unidade Lógica

17 Instruções básicas Formato da instrução do computador

18 CPU - P1 Conjunto de instruções básicas
Exemplo de um programa no P1: A = B+C A (acumulador), B e C são endereços de memória Assembly Language MachineLanguage LOAD B ADD C

19 CPU - P1 Fluxo de execução de instruções

20 CPU - P1 Fluxo de execução de instruções detalhada

21 1. 2. PC Load address AC<- conteúdo do endereço de memória A = B+C
A (acumulador), B e C são endereços de memória Assembly Language MachineLanguage LOAD B ADD C 0012 CPU - P1 02 11 00 12 00 03 00 04 Opcode address PC 00 04 1. 2. 00 07 00 LOAD B 00 07 00 04 02 11 00 03 00 12 00 04 01 ADD C 01 01 12 12 11 01 12 01 11 Load B 1. ADD C 00 12 00 03 00 04 02 11 Load address AC<- conteúdo do endereço de memória


Carregar ppt "Unidade Central de Processamento"

Apresentações semelhantes


Anúncios Google