Microprocessador

De Cacauet Wiki
La revisió el 12:00, 5 nov 2015 per Enric (discussió | contribucions) (execució CPU)
Salta a la navegació Salta a la cerca

Introducció

...

Arquitectura Von-Neumann

El funcionament dels microprocessadors actuals es basa encara en el paradigma de l'arquitectura Von-Neumann (pronunciat "fon noiman"). Podeu llegir l'article de la Wikipedia com a referència.

Us recordo que l'esquema vist a classe té una pinta com aquesta:

Arquitectura-von-neumann.jpg Esquema-microprocessador.jpg

Cal recordar que tenim 3 busos:

  • Bus d'adreces: on la CPU indica quina adreça de memòria vol accedir.
  • Bus de dades: on es transmeten les dades.
  • Bus de control: senyals vàries per mantenir una transmissió en ordre i sense errors.


La CPU disposa de:

  • UC - Unitat de Control: governa el funcionament general del dispositiu.
  • ALU - Arithmetic-Logic Unit: realitza els càlculs i operacions lògiques.
  • Registres interns:
    • Registres de DADES: contenen dades descarregades de la RAM o dels perifèrics.
      • Solen numerar-se com a A, B, C, etc.
    • Registres de CONTROL: serveixen per governar el comportament de la CPU.
      • PC - Program Counter: porta el control de l'execució, indicant quina instrucció del programa s'està executant.
      • IR - Instruction Register: és on s'emmagatzema la instrucció per després ser executada.


Execució de programes en la CPU

Els programes s'emmagatzemen en una regió de la RAM (en les màquines antigues o més senzilles de vegades està en una ROM).

Una altra regió de la RAM conté les dades a tractar.

Execucio cpu 1.svg

En la següent seqüència observem com s'executen les instruccions del programa seqüencialment:

Execucio cpu 2.svg

Execucio cpu 3.svg

Execucio cpu 4.svg

Execucio cpu 5.svg


Transaccions de dades

Diagrama de les transferències de dades en l'arquitectura Von-Neumann. Es poden veure la ocupació dels busos i les senyals de control.

Transfer-bus-micro2.gif

Cal remarcar que l'activitat en els busos està governada pel CLOCK (rellotge).

La seqüència de LOAD (LD) o càrrega de dades de la RAM a la CPU està seqüenciada de la següent manera:

  1. La CPU pren la iniciativa i escriu al bus d'adreces la direcció que es vol obtenir.
  2. La CPU avisa la RAM que vol la dada amb els senyals de control MREQ i RD (Memory Request i Read).
  3. La RAM reconeix la demanda i demana a la CPU que s'esperi a través de la senyal de WAIT (espera).
  4. Quan la senyal de WAIT torna a 1, la dada està disponible al bus de DADES perquè la CPU el llegeixi.