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

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

Ciclos de operação em processador

Apresentações semelhantes


Apresentação em tema: "Ciclos de operação em processador"— Transcrição da apresentação:

1 Ciclos de operação em processador
Como é realizada uma operação de soma entre um dado de memória e um registrador interno à CPU Ciclos de operação em processador

2 Será apresentado: Os ciclos da CPU numa operação de soma entre um dado que está armazenado na memória e o conteúdo de um registrador interno à CPU; Como é realizada uma operação de soma entre um dado de memória e um registrador interno à CPU

3 Como ocorre o movimento de dados e endereços pelos barramentos de dados e endereços, respectivamente. Como é realizada uma operação de soma entre um dado de memória e um registrador interno à CPU

4 Como é a ação da unidade de controle atuando nos dispositivos do sistema para executar as ações computacionais; Como é realizada uma operação de soma entre um dado de memória e um registrador interno à CPU

5 Como atuam os registradores envolvidos na operação assim como os registradores de apoio ao processamento, tais como o contador de programa, o decodificador de instruções, os “buffers” de dados e endereços,...; ... Como é realizada uma operação de soma entre um dado de memória e um registrador interno à CPU

6 Tocci: Microcomputadores e Microprocessadores;
Referências Tocci: Microcomputadores e Microprocessadores; Mário Monteiro: Introdução à Organização de Computadores Norton: Assembly para IBM-PC

7 O contador de Programa tem o valor 0100H: [PC]=0100;
Ciclos da CPU: busca, decodificação e execução. Condições iniciais: O contador de Programa tem o valor 0100H: [PC]=0100; O registrador A tem o valor 05H: [A]=05 O conteúdo dos endereços de memória são: End. Da Memória Palavra da Memória C4 C

8 CPU PC 0100 05 C4 57 ..... A 03 05 Endereço Memória Principal 0100
0101 0102 C457 05 C4 57 ..... 03 A 05 ULA UC

9 CPU O Contador do Programa – PC – Indica o a CPU irá buscar a próxima instrução. No exemplo o PC aponta para o endereço 0100. OBS: Em alguns sistemas, o Contador de Programa (PC) é denominado Instruction Pointer (IP). PC 0100

10 CPU O registrador A tem o valor 05H [A]=05 A 05

11 Endereços e conteúdos -de memória:
Nos endereços 0100 /0101 /0102 está carregada a instrução. No endereço C457 está um dado que será usado pela instrução. Endereço Memória Principal 0100 0101 0102 C437 05 C4 57 ..... 03

12 O Contador do Programa – PC – Indica o a CPU irá buscar a próxima instrução. No exemplo o PC aponta para o endereço 0100. O Registrador A tem a função de acumular resultados, isto é, ele recebe o resultado da operação realizada., A memória contém dados e programa armazenados; Nas posições de memória 0100 / 0101 / 0102 está armazenada a instrução. Na posição de memória C457 está o dado. Mnemõnico da instrução:ADD A,C457; Código de máquina correspondente: 05C457 Significado: SOMAR o conteúdo do registrador A com o conteúdo de posição de memória C457. Guardar o resultado em A.

13 Descrição dos ciclos de processamento:
Busca da instrução; Decodificação da instrução; Execução da instrução: ...

14 A execução de uma instrução pode ser:
Busca de dados na memória; Realização de uma operação aritmética ou lógica; Decisão lógica (if) ...

15 Barramento interno de endereço
Retentor Buffer de endereços Barramento interno de endereço DAR PC Memória Registrador dos Endereços de dados Contador de programa Contador de programa 0100 0100 05 Barramento de Dados Retentor Buffer de endereços DR Barramento de Dados Registrador de instruções Registrador De dados ULA AC R/W=1 Decodificador De instruções . . . R/W Lógica de temporização E controle ... Barramento de Controle Para os demais elementos da MPU ... UC habilita o PC para liberar endereço (0100) no barramento de endereços. A seguir, a UC habilita a memória para disponibilizar o conteúdo do endereço 0100 no barramento de dados. Para isso: R/W =1.

16 Barramento interno de endereço
Retentor Buffer de endereços Barramento interno de endereço DAR PC Memória R/W Registrador dos Endereços de dados Contador de programa 101 Retentor Buffer de endereços Retentor Buffer de endereços Barramento de Dados Barramento de Dados Barramento de Dados Barramento de Dados DR Registrador de instruções 05 RI Registrador De dados ULA AC Decodificador De instruções . . . R/W Lógica de temporização E controle ... Barramento de Controle Para os demais elementos da MPU ... Via Barramento de dados, o valor 05 será carregado no RI; - incrementa o PC; [PC] <- [PC]+1.

17 O Registrador de Instruções (RI) – instruído pela UC – recebe o valor 05 que esta no barramento de dados. O registrador RI interpreta o valor 05 como uma instrução para somar o conteúdo do acumulador com um valor de memória (endereço 0101/0102). Sob ação da Unidade de Controle (UC): 1)O Contador de Programa é incrementado para o próximo endereço: PC<-0101 2) Realizar a busca ao endereço de memória 0101

18 Barramento interno de endereço
Retentor Buffer de endereços Barramento interno de endereço DAR PC Memória R/W Registrador dos Endereços de dados Contador de programa 101 Retentor Buffer de endereços Barramento de Dados Barramento de Dados DR Registrador de instruções 05 Registrador De dados ULA AC ADD Decodificador De instruções Decodificador De instruções . . . R/W Lógica de temporização E controle Lógica de temporização E controle ... Barramento de Controle Para os demais elementos da MPU ... O Decodificador de instrução a identificação da instrução 05 (ADD, SOMA) e se prepara para duas leituras na memória para ler os endereços consecutivos 0101 e 0102

19 NOTAS O decodificador de instruções contém circuitos especiais que através da informação 05 cria ações para direcionar o processamento para realizar a operação SOMA assim como a ativação dos elementos envolvidos nesta operação. No exemplo, ADD AX,C envolve o acumulador e um dado que está no endereço C457. Após identificação da instrução, os circuitos de temporização e controle produzem os sinais adequados para que essas ações ocorram na ordem correta e no tempo certo.

20 Retentor Buffer de endereços Retentor Buffer de endereços Barramento interno de endereço Barramento interno de endereço DAR PC Memória R/W Registrador dos Endereços de dados Registrador dos Endereços de dados Contador de programa Contador de programa 102 Retentor Buffer de endereços Retentor Buffer de endereços Barramento de Dados Barramento de Dados Barramento de Dados Barramento de Dados DR Registrador de instruções Registrador De dados ULA AC C4 Decodificador De instruções . . . R/W Lógica de temporização E controle ... Barramento de Controle Para os demais elementos da MPU ... (Leitura do endereço 0101), [PC]=0101 -> Barramento de endereço; A memória libera o dado da memória e coloca o dado na parte alta do DAR; O PC é incrementado de uma unidade: [PC]<- PC+1 = 0102.

21 R/W R/W C457 Barramento interno de endereço
Retentor Buffer de endereços Retentor Buffer de endereços Barramento interno de endereço Barramento interno de endereço DAR PC Memória R/W Registrador dos Endereços de dados Registrador dos Endereços de dados Contador de programa Contador de programa 103 Retentor Buffer de endereços Retentor Buffer de endereços Barramento de Dados Barramento de Dados Barramento de Dados Barramento de Dados DAR Registrador de instruções Registrador De dados ULA AC C457 Decodificador De instruções . . . R/W Lógica de temporização E controle ... Barramento de Controle Para os demais elementos da MPU ... Leitura do conteúdo de memória: [PC=0102] -> Barramento de endereço, Liberar o dado [57] da memória. Colocar o dado na parte BAIXA do DAR Incrementar o contador de programa: PC]<- PC+1 = 0103.

22 NOTA: Data Adress Register – Registrador de endereços de dados. Contém endereços para busca de dados que serão processados na instrução atual. Neste exemplo, é necessário buscar o conteúdo do endereço de memória C457, que neste exemplo é o valor 03.

23 Retentor Buffer de endereços Retentor Buffer de endereços Barramento interno de endereço Barramento interno de endereço DAR PC Memória R/W Registrador dos Endereços de dados Registrador dos Endereços de dados Contador de programa C457 Retentor Buffer de endereços Barramento de Dados Barramento de Dados DR Registrador de instruções Registrador De dados ULA AC Decodificador De instruções . . . R/W Lógica de temporização E controle ... Barramento de Controle Para os demais elementos da MPU ... Busca o próximo termo da soma. O DAR aponta o endereço C457 A unidade de controle libera a leitura do dado na memória. Conteúdo de memória [C457] -> Barramento de dados = [03]

24 Barramento interno de endereço
Retentor Buffer de endereços Barramento interno de endereço DAR PC Memória R/W Registrador dos Endereços de dados Contador de programa Retentor Buffer de endereços Retentor Buffer de endereços Barramento de Dados Barramento de Dados Barramento de Dados Barramento de Dados DR 03 Registrador de instruções Registrador De dados ULA ULA AC AC 05 Decodificador De instruções . . . R/W Lógica de temporização E controle ... Barramento de Controle Para os demais elementos da MPU ... Realização da Soma. O conteúdo [03] é levado para a ULA, assim como o conteúdo do acumulador[05]. A ULA é comandada pela UC para somar os valores recebidos e enviar o resultado para o acumulador: [AC]=08.

25 Barramento interno de endereço
Retentor Buffer de endereços Barramento interno de endereço DAR PC Memória R/W Registrador dos Endereços de dados Contador de programa Retentor Buffer de endereços Retentor Buffer de endereços Barramento de Dados Barramento de Dados Barramento de Dados Barramento de Dados DR Registrador de instruções Registrador De dados ULA ULA AC AC c45c Decodificador De instruções . . . R/W Lógica de temporização E controle ... Barramento de Controle Para os demais elementos da MPU ... 6º Realização da Soma. O conteúdo do Barramento de Dados [03] é levado para a ULA, e em seguida o conteúdo do acumulador[05]. A ULA é levada a somar os valores e o resultado enviado para o acumulador [AC]=08.


Carregar ppt "Ciclos de operação em processador"

Apresentações semelhantes


Anúncios Google