1.3.1 Protsessori arhitektuur

iDevice ikoon 1.3.1 Protsessori arhitektuur

Protsessor ehk CPU (Central Processing Unit) on keskne arvuti komponent, mis täites mälust loetud käske töötleb andmeid ja juhib nii kogu arvuti tööd. Protsessor on ühendatud muu arvutisüsteemiga andme-, aadressi- ja juhtsiini abil. Et protsessor saaks töötada peavad tal minimaalselt olema sisemised andmeregistrid ja juhtregistrid, töötlemisplokk, juhtplokk ja käsustik, mida protsessor tunneb ja mis võimaldab talle käske anda.Protsessori tööd sünkroniseerib väline taktsignaal. Selle signaali järgi toimub käskude lugemine protsessorisse ja nende täitmine. Taksignaali sagedus määrab ära protsessori töö kiiruse aga see ei ole ainus parameeter protsessori jõudluse hindamiseks. Esimestel 8-bitistel protsessoritel oli taktsagedus ~4 MHz, tänapäevastel protsessoritel ulatub see gigahertsidesse.
Joonis 1-14. Protsessori arhitektuur

 

Protsessori erinevate osade kirjeldus:

  • Juhtplokk (Control Unit) dekodeerib käsu mikrooperatsioonideks ja annab protsessori teistele osadele vastavad korraldused käsu täitmiseks ning vastutab hiljem tulemi tagasikirjutamise eest. Kasutab spetsiaalseid registreid: programmiloendur (Program Counter) ja käsuregister (Instruction Register).
  • Töötlemisplokk (Processing Unit) sisaldabaritmeetikaseadme (ALU - Arithmetic Logic Unit), mis suudab teostada arvutustehteid etteantud andmetega ehk liita, teostada loogikatehteid ja korrutada ning kombineerida neid tegevusi ning ujukoma seadme (FPU - Floating Point Unit) keeruliste arvutuste jaoks, mis ei ole sooritatavad ALU abil. Töötlemisplokk kasutab spetsiaalseid registreid: olekuregister (Status Register) ja akuregister (Accumulator Register).
Registrid on protsessori sisemiseks töömäluks ja jagunevad järgmiselt:
  • Üldotstarbelised registrid. Need on mõeldud käskude poolt kasutatavate andmete ja/või operandide hoidmiseks.
  • Spetsiaalsed registrid, millel on täita spetsiaalsed funktsioonid protsessori töös. Spetsiaalsed registrid on järgmised:
    • Akuregister (A - Accumulator Register) hoiab käskude täitmise vahetulemusi
    • Käsuloendur (PC - Program Counter) sisaldab järgmise käsu mäluaadressi. Seda suurendatakse automaatselt iga käsutsükli jaoks. Alamprogrammid ja katkestused muudavad selle registri tavalist töötsüklit, sisestades käsuloendurisse uue väärtuse
    • Käsuregister (IR - Instruction Register) sisaldab mälust loetud käsku
    • Olekuregister (SR - Status Register) sisaldab protsessori tehete teostamise olekut
    • Pinuviit (SP - Stack Pointer) sisaldab pinumälu järgmist vaba aadressi. Pinumälu kasutatakse protsessori registrite seisu salvestamiseks. Näiteks on see vajalik katkestust teenindava alamprogrammi käivitamise eel, et salvestada protsessori jooksev tööseis ja taastada see peale katkestuse alamprogrammi lõpetamist, et naasta põhiprogrammi täitmise juurde. Pinumälu töötab viimasena sisse esimesena välja (LIFO - Last In First Out) struktuurina.