Microprocessador

De Cacauet Wiki
Salta a la navegació Salta a la cerca

Introducció

Un Microprocessador (wikipedia) és un circuit integrat complex programable de propòsit general, que executa programes a la RAM amb instruccions de baix nivell per realitzar càlculs matemàtics amb dades digitals.

Sol ser el "cervell" dels dispositius digitals actuals com PCs, mòbils, tablets, però també altres dispositius electrodomèstics com televisions, etc. que han passat del terreny analògic al digital.

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.