Transcript
Page 1: SDAC-ficha execução de instruções passo a passo

1

3º Ano do Curso Profissional

Técnico  de Gestão  de  Equipamentos  Informáticos Disciplina: SDAC

Professor Responsável: Anselmo Pinheiro Ano Letivo: 2012/2013

MÓDULO 9 – Arquitetura de microprocessadores FICHA DE TRABALHO N.º 7

Funcionamento  do  microprocessador,  operação  2+2,  passo  a  passo  

1. Quando   se   prime   a   tecla   2,   é   enviado  um   sinal   ao   processador   e   pede-­‐se   à   unidade  de   prefetch   para  pesquisar   na  memória   principal   do   computador   uma   instrução   específica   sobre   os   dados   novos,   dado  que  não  há  nada  acerca  disso  na  cache  de  instruções.  

2. As   instruções   chegam   ao   microprocessador   através   da   unidade   de   barramentos,   vindas   da   memória  principal,  e  são  armazenadas  na  cache  de  instruções  como  “2=X”.  

3. A   unidade   de   prefetch   solicita   então   à   cache   de   instruções   uma   cópia   do   código   “2=X”   e   envia-­‐o   à  unidade  de  descodificação  para  processamento.  

4. Seguidamente,   na   unidade   de   descodificação   “2=X”,   o   código   é   descodificado   numa   string   de   código  binário,  que  é  enviado  para  a  unidade  de  controlo  e  para  a  cache  de  dados.  

5. Agora  a  unidade  de  controlo  executa  a  instrução  para  “2=X”.  Isso  faz  com  que  o  número  2  seja  enviado  para  um  endereço  X  na  cache  de  dados,  onde  aguarda  por  outras  instruções.  

6. Quando   se   prime   a   tecla   2,   novamente   a   unidade   de   prefetch,   pergunta   à   memória   principal   do  computador  e  à  cache  de   instruções  quais  são  as   instruções  específicas  para  esses  dados  novos.  Como  não  encontra  nenhuma  informação  na  cache  de  instruções,  as  ordens  vêm  da  memória  principal.  

7. Similarmente   ao   que   aconteceu   com   o   “2=X”,   os   novos   dados   vêm   da   memória   principal   e   são  armazenados  na  cache  de  instruções  como“2=Y”.      

8. A   unidade   de   prefetch   vai   à   cache   de   instruções   buscar   uma   cópia   do   código“2=Y”   e   envia-­‐a   para   a  unidade  de  descodificação  onde  será  processada.  

9. Na  unidade  de  descodificação,  a  instrução  “2=Y”  é  descodificada  e  transformada  numa  string  de  código  binário,  que  será  enviada  para  a  unidade  de  controlo  e  para  a  cache  de  dados,  e  que  lhes  dirá  o  que  fazer  com  a  instrução.  

10. Dado  que  a  unidade  de   controlo   sabe  que  o  número  2   será   armazenado  para  uso   futuro  na   cache  de  dados,  executa  a   instrução  para“2=Y”.   Isto  faz  com  que  o  número  2  seja  enviado  para  um  endereço  na  cache  de  dados  chamado  Y,  onde,  tal  como  o  outro  2,  aguardará  futuras  ordens.  

11. Quando  premimos  a  tecla  “+”,  a  unidades  de  prefetch  pergunta  à  memória  principal  do  computador  e  à  cache   de   instruções   o   que   há-­‐de   fazer   com   os   novos   dados   recebidos,   que   devem   ser   “pescados”   da  memória  principal.  

12. Dado   que   é   uma   instrução   nova,   “+”   vem   para   o   microprocessador,   da   memória   principal,   e   é  armazenado  num  endereço  da  cache  de  instruções  como  “X+Y=Z”,  indicando  que  os  dois  valores  vão  ser  adicionados  um  ao  outro.  

13. Então  a  unidade  de  prefetch  pede  à  cache  de  instruções  uma  cópia  do  código  “X+Y=Z”  e  envia-­‐a  para  a  unidade  de  controlo  para  posterior  processamento.    

14. Na  unidade  de  descodificação,   “X+Y=Z”  é   traduzido  e  descodificado,   sendo  em  seguida  enviado  para  a  cache  de  dados,  dando  indicação  do  que  hão-­‐de  fazer  com  a   instrução.  Além  disso,  também  a  unidade  aritmética  e  lógica  é  informada  de  que  uma  operação  ADD  vai  ser  executada.  

15. A   unidade   de   controlo   envia   um   comando   ADD   para   a   unidade   aritmética   e   lógica,   onde   X   e   Y   são  adicionados,  após  serem  chamados  da  cache  de  dados.  Após  realizar  a  operação,  a  unidade  aritmética  e  lógica  envia  o  resultado  para  ser  armazenado  num  dos  endereços  dos  registos.  

16. Quando   de   prime   a   tecla   “=”,   novamente   aunidade   de   prefetch   verifica   a   cache   de   instruções   para  solicitar  instruções  sobre  os  novos  dados,  mas  não  vai  encontrar  lá  nada.  

17. A   instrução   sobre   “=”   vem   da   memória   principal   para   o   microprocessador   através   da   unidade   de  barramentos  e  fica  armazenada  num  endereço  da  cache  de  instruções  como  código  “PRINT  Z”.  

18. A   unidade   de   prefetch   pede   à   cache   de   instruções   uma   cópia   do   código   “PRINT   Z”   e   envia-­‐a   para   a  unidade  de  descodificação  para  posterior  processamento.  

Page 2: SDAC-ficha execução de instruções passo a passo

2

19. Na  unidade  de  descodificação,  “PRINT  Z”  é  traduzido  e  descodificado  numa  string  de  código  binário,  que  é  enviada  para  a  unidade  de  controlo  para  lhe  dizer  o  que  fazer  com  a  instrução.  

20. Agora  que  o   valor  de   “Z”   foi   calculado  e  está   armazenado  nos   registos,   o   comando  print   só   tem  de   ir  buscar  o  conteúdo  do  registo  e  apresenta-­‐lo  no  ecrã  do  computador.  E  assim  o  microprocessador  acaba  o  seu  serviço,  pelo  menos  de  momento.                                  Associe  corretamente  as  seguintes  imagens  à  respetiva  descrição  da  operação  (1  a  20)  

   

     


Recommended