SlideShare a Scribd company logo
1 of 13
Download to read offline
UNIVERSITETI I PRISHTINËS
  FAKULTETI I SHKENCAVE MATEMATIKE–NATYRORE
         DEPARTAMENTI I MATEMATIKËS




        PUNIM SEMINARIK

Lënda: Arkitektura e kompjuterit dhe sistemet operative.
Tema: Dizejni i njësisë përpunuese qendrore (CPU).
Punuar nga: Fidan Abdiu, student.




                      Prishtinë, Janar 2007.
________________________________________________________________________



                     PËRMBAJTJA:
1. Arkitektura e njësisë përpunuese (CPU).
2. Bashkësia e regjistrave.
   2.1. Regjistrat “Memory Access Registers”.
   2.2. Regjistrat “Instruction Fetching Registers”.
   2.3. Regjistrat “Condition Registers”.
3. Shtegu i të dhënave (Datapath).
   3.1. Shtegu i të dhënave me një magjistrale.
   3.2. Shtegu i të dhënave me dy magjistrale.
   3.3. Shtegu i të dhënave me tri magjistrale.
4. Cikli i ekzekutimit të instruksionit.
   4.1. Leximi i instruksionit.
   4.2. Shembull: Ekzekutimi i një veprimi të thjeshtë aritmetik.
   4.3. Procedura “Interrupt Handling”.
5. Njësia kontrolluese (CU).
6. Përmbledhje.
7. Literatura.




                                   2
________________________________________________________________________


1. Arkitektura e njësisë përpunuese (CPU).

Para se të flasim për arkitekturën e njësisë përpunuese, të theksojmë se çdo sistem
kompjuterik përbëhet prej tri pjesëve kryesore:

   1. Njësia përpunuese (CPU),
   2. Memoria, dhe
   3. Sistemi për hyrje/dalje (I/O System).

Tani mund të shtrohen pyetjet:

Çfarë funksioni ka memoria?
Memoria ka për funksion ruajtjen e të dhënave dhe programeve. Programet paraqesin
bashkësi instruksionesh.

Çfarë funksioni ka sistemi për hyrje/dalje?
Sistemi për hyrje/dalje paraqet mekanizmin për bartjen e të dhënave brenda dhe jashtë
rrjetës (Sistemi kompjuterik mund të paraqitet si rrjetë në të cilën lidhen pjesët përbërëse
të tij).

Tani le të flasim për pjesën më kryesore të çdo sistemi kompjuterik e që është njësia
përpunuese.

Çfarë funksioni ka njësia përpunuese?
Njësia përpunuese ka për funksion ekzekutimin e instruksioneve të cilët lexohen nga
memoria. Më vonë do të shohim më gjerësisht se si bëhet leximi dhe ekzekutimi i
instruksioneve.

Çdo njësi përpunuese përbëhet prej tri pjesëve kryesore:
   1. Bashkësia e regjistrave.
   2. Njësia aritmetike-logjike (ALU), dhe
   3. Njësia kontrolluese (CU).

Çfarë janë regjistrat?
Regjistrat janë pjesë harduerike, të cilat për funksion kanë ruajtjen e disa të dhënave.
Regjistrat janë të vendosur brenda njësisë përpunuese, në mënyrë që kjo e fundit t’i
shfrytëzojë më shpejtë të dhënat që ndodhen në regjistra. Të gjithë regjistrat e një njësie
përpunuese përbëjnë bashkësinë e regjistrave të njësisë përpunuese.

Bashkësitë e regjistrave dallojnë nga një arkitekturë në tjetrën, por në përgjithësi,
regjistrat klasifikohen në dy grupe:
    1. Regjistrat “General-Purpose”, dhe
    2. Regjistrat “Special-Purpose”.



                                              3
________________________________________________________________________

Regjistrat “General-Purpose” kanë funksione të shumta, ndërsa, regjistrat “Special-
Purpose” kanë funksione të veçanta. Si shembull mund ta marrim regjistrin PC (Program
Counter) i cili është “Special-Purpose” regjistër, në të cilin ndodhet adresa e instruksionit
që do të ekzekutohet në vijim. Do të shohim më vonë se ekzistojnë edhe klasifikime të
tjera të regjistrave.

Çfarë është njësia aritmetike-logjike?
Njësia aritmetike-logjike paraqet bashkësinë e qarqeve përmes të cilëve kryhen veprimet
aritmetike dhe logjike me të dhëna.

Çfarë është njësia kontrolluese?
Edhe njësia kontrolluese paraqet bashkësi të qarqeve e cila është përgjegjëse për leximin,
dekodimin dhe ekzekutimin e instruksionit.

Tani le ta shohim arkitekturën e njësisë përpunuese, bashkëveprimin e saj me memorien
dhe sistemin për hyrje/dalje.




                       Figura 1: Arkitektura e njësisë përpunuese.

Siç theksuam më lartë, njësia përpunuese ka për detyrë ekzekutimin e instruksioneve. Ato
instruksione së pari duhet të lexohen nga memoria ku edhe ruhen. E gjithë kjo procedurë
mund të përmblidhet në një cikël i cili njihet si cikli i ekzekutimit të instruksionit.

   1. Instruksioni i cili do të ekzekutohet në vijim, adresa e të cilit ndodhet në regjistrin
      PC (Program Counter), vendoset në regjistrin IR (Instruction Register).
   2. Instruksioni dekodohet.
   3. Operandët (adresat) e instruksionit lexohen nga memoria dhe vendosen në
      regjistrat e njësisë përpunuese.

                                             4
________________________________________________________________________

    4. Instruksioni ekzekutohet, dhe në fund
    5. Rezultatet ruhen në memorie.

Të mos harrojmë se ky cikël përsëritet gjithnjë përderisa ka ende instruksione që presin të
ekzekutohen.
         Veprimet e njësisë përpunuese gjatë ciklit të ekzekutimit të instruksionit
përcaktohen nga mikro-procedurat (Micro-orders) të cilat kryhen nga ana e njësisë
kontrolluese. Në fakt, mikro-procedurat paraqesin sinjale kontrolli të cilat u dërgohen
pjesëve përkatëse për kryerjen e detyrave të caktuara.
Ta sqarojmë këtë me një shembull.
         Të supozojmë se dëshirojmë ta bartim përmbajtjen e regjistrit X në regjistrin Y. Të
supozojmë po ashtu se të dy regjistrat janë të lidhur përmes magjistrales D (Siç e dimë të
gjitha pjesët e sistemit janë të lidhura në magjistrale e cila mundëson bartjen e të
dhënave).
         Në këtë rast, njësia kontrolluese ia dërgon një sinjal kontrolli regjistrit X në
mënyrë që ky i fundit ta vendosë përmbajtjen e tij në magjistralen D. Pas një kohe, edhe
regjistrit Y i dërgohet një sinjal kontrolli në mënyrë që ky i fundit tani ta lexojë atë të
dhënë nga magjistralja D.

2. Bashkësia e regjistrave.

         Tani do të flasim më gjerësisht për bashkësinë e regjistrave.
         Siç thamë më parë, regjistrat janë pjesë harduerike në të cilët ruhen të dhënat.
Regjistrat janë të vendosur brenda njësisë përpunuese, në mënyrë që kjo e fundit t’i
shfrytëzojë më shpejtë ato të dhëna.
         Bashkësitë e regjistrave dallojnë nga një arkitekturë në tjetrën. Ato dallojnë për
nga sasia e regjistrave, lloji i tyre, për nga gjatësia e secilit regjistër dhe për nga funksioni
i secilit regjistër.
         Për shembull, regjistrat e adresës (regjistra që ruajnë adresën e ndonjë lokacioni të
caktuar të memories) duhet të jenë aq të gjatë sa të mund ta mbajnë adresën me gjatësinë
më të madhe.
         Regjistrat “General-Purpose” mund të përdoren për qëllime të shumta, ndërsa,
regjistrat “Special-Purpose” mund të përdoren vetëm për qëllime të veçanta.

        2.1. Regjistrat “Memory Access Registers”.

       Regjistrat “Memory Access Registers” për funksion kanë qasjen në memorie,
përkatësisht leximin dhe shkrimin në memorie.
       Në leximin dhe shkrimin e të dhënave në memorie marrin pjesë këta dy regjistra
me rëndësi:
   1. Regjistri MDR (Memory Data Register), dhe
   2. Regjistri MAR (Memory Address Register).

        Të shohim tani se si bëhet shkrimi në një lokacion të caktuar të memories:

                                               5
________________________________________________________________________

   1. Fjala që do të shkruhet në lokacionin e caktuar të memories kopjohet në MDR.
   2. Adresa e lokacionit të memories në të cilin do të vendoset fjala kopjohet në MAR.
   3. Dërgohet një sinjal kontrolli nga njësia kontrolluese në mënyrë që ajo fjalë të
      shkruhet në lokacionin e caktuar të memories.

   Në mënyrë analoge lexohet fjala nga lokacioni i caktuar i memories. Procedura e tillë
zhvillohet si në vijim:

   1. Adresa e lokacionit të memories nga i cili do të lexohet fjala, vendoset në MAR.
   2. Dërgohet një sinjal kontrolli nga njësia kontrolluese në mënyrë që fjala përkatëse
      të lexohet.
   3. Fjala vendoset në MDR, tani e gatshme për përpunim nga njësia përpunuese.

   2.2. Regjistrat “Instruction Fetching Registers”.

    Regjistrat “Instruction Fetching Registers” për detyrë kanë leximin e instruksionit që
do të ekzekutohet në vijim.
    Në leximin e instruksioneve marrin pjesë këta dy regjistra me rëndësi:

   1. Regjistri PC (Program Counter), dhe
   2. Regjistri IR (Instruction Register).

    Regjistri PC mbanë adresën e instruksionit i cili do të lexohet në vijim.
    Pasi të lexohet instruksioni nga memoria, instruksioni vendoset në regjistrin IR, tani i
gatshëm për ekzekutim.
    Pas ekzekutimit të instruksionit në PC vendoset adresa e instruksionit tjetër që do të
lexohet dhe më pas të ekzekutohet.

   2.3. Regjistrat “Condition Registers”.

Regjistrat “Condition Registers” për funksion kanë ruajtjen e informatave në lidhje me
gjendjen momentale në njësinë përpunuese. Disa arkitektura përmbajnë regjistrin e llojit
“Special-Purpose” PSW (Program Status Word). Regjistri PSW i përmban bitët të cilët ia
dërgon njësia përpunuese, për ta treguar gjendjen momentale në lidhje me ekzekutimin e
programit.

3. Shtegu i të dhënave (Datapath).

Njësia përpunuese mund të ndahet në dy pjesë:

   1. Pjesa e të dhënave, dhe
   2. Pjesa e kontrollit.



                                             6
________________________________________________________________________

       Pjesa e të dhënave apo shtegu i të dhënave përbëhet prej bashkësisë së regjistrave
dhe njësisë aritmetike-logjike.
       Shtegu i të dhënave ka për detyrë kryerjen e veprimeve të caktuara mbi të dhënat.
       Pjesa e kontrollit, në fakt, paraqet njësinë kontrolluese. Njësia kontrolluese i
dërgon sinjale kontrolli shtegut të dhënave për kryerjen e detyrave të caktuara.
       Brenda njësisë përpunuese të dhënat barten në këto relacione:

   1. Regjistër-regjistër, dhe
   2. ALU – regjistër.

        Këto bartje mundësohen përmes magjistraleve të caktuara.
        Bartja e të dhënave nga ana e jashtme, d.m.th., nga regjistrat në memorie dhe në
pajisjet e sistemit për hyrje/dalje, zakonisht mundësohet nga ana e magjistrales së sistemit
e cila mundëson komunikim e këtyre pjesëve të sistemit.
        Bartja e brendshme e të dhënave, d.m.th. bartja në relacionet regjistër-regjistër
apo ALU-regjistër mund të kryhet duke përdorur:

   1. Një magjistrale,
   2. Dy magjistrale, ose
   3. Tri magjistrale.

   3.1. Shtegu i të dhënave me një magjistrale.

        Në shtegun e të dhënave me një magjistrale, bartja e të dhënave në relacionet e
lartpërmendura mundësohet nga një magjistrale e vetme.
        Meqenëse me një magjistrale mund të kryhet vetëm një veprim përkatësisht një
bartje e të dhënave brenda një cikli të orës, atëherë, kjo ndikon në ngadalësimin e procesit
të bartjes së të dhënave.
        Normalisht që kjo pastaj ndikon në efektivitetin e përgjithshëm të sistemit.
        Tani le të shohim se si funksionon bartja e të dhënave në mes të pjesëve të shtegut
të dhënave me një magjistrale.




                    Figura 2: Shtegu i të dhënave me një magjistrale.
                                             7
________________________________________________________________________




       3.2. Shtegu i të dhënave me dy magjistrale.

       Bartja e të dhënave brenda shtegut të dhënave me dy magjistrale është zgjidhje
më e mirë se ajo paraprake. Meqenëse kemi dy magjistrale, atëherë, brenda një cikli të
orës mund të kryhen dy veprime. Tani le ta shohim bartjen e të dhënave brenda shtegut
të dhënave me dy magjistrale:




                     Figura 3: Shtegu i të dhënave me dy magjistrale.

       3.3. Shtegu i të dhënave me tri magjistrale.

        Në shtegun e të dhënave me tri magjistrale, dy magjistrale (Out-bus 1, 2) mund
t’i përdorim për nxjerrjen e të dhënave nga regjistrat, ndërsa, magjistralen e tretë (In-bus)
mund ta përdorim për të futur të dhëna në regjistra.




                     Figura 4: Shtegu i të dhënave me tri magjistrale.


                                             8
________________________________________________________________________


Çfarë kuptuam nga shembujt e mësipërm?
Nga shembujt e mësipërm kuptuam se sa më shumë magjistrale të kemi në shtegun e të
dhënave aq më e shpejtë do të jetë bartja e të dhënave brenda pjesëve përkatëse.
Të mos harrojmë se sa më shumë magjistrale të kemi, aq më kompleks do të jetë
hardueri.

4. Cikli i ekzekutimit të instruksionit.

        Siç kemi thënë më parë, cikli i ekzekutimit të instruksionit vazhdon të përsëritet
përderisa ka ende instruksione që presin të ekzekutohen.
Instruksioni ekzekutohet bazuar në fushën e Opcode-it (Varg i caktuar bitësh) ku
përcaktohet veprimi apo lloji i instruksionit. Pas ekzekutimit të instruksionit, bëhet një
test në rast të ndërprerjeve (Interrupts) të mundshme.
Në rast se ka ndonjë ndërprerje në punën e njësisë përpunuese, atëherë ekziston një
procedurë përkatëse për rregullimin e saj “Interrupt Handling”. Do të shohim më vonë se
si zhvillohet procedura “Interrupt Handling”.

Le ta shohim vargun e hapave për ekzekutimin e instruksionit:




                      Figura 5: Cikli i ekzekutimit të instruksionit.

       4.1. Leximi i instruksionit.

        Të gjitha veprimet gjatë ciklit të ekzekutimit të instruksionit siç ishin: leximi i
instruksionit, ekzekutimi i instruksionit apo “’Interrupt Handling” mund të paraqiten si
vargje te mikro-veprimeve (Micro-operations).
        Të shohim se si leximi i instruksionit nga memoria mund të paraqitet si varg i
mikro-veprimeve:

   1. Përmbajtja në PC kopjohet në MAR,
   2. Vlera në PC rritet,

                                            9
________________________________________________________________________

   3. Instruksioni vendoset në MDR, dhe në fund
   4. Nga MDR, instruksioni vendoset në IR.


   4.2. Shembull: Ekzekutimi i një veprimi të thjeshtë aritmetik.

         Të supozojmë se kemi instruksionin Add R1, R2, R0.
Çfarë bën instruksioni i mësipërm?
Ky instruksion ia shton regjistrit R2, përmbajtjen e regjistrit R1, dhe e ruan rezultatin në
regjistrin R0.
Vargu i hapave për ekzekutimin e këtij instruksioni paraqitet si në vijim:

   1. Regjistrat R0, R1, dhe R2 ekstraktohen nga IR.
   2. Përmbajtjet e regjistrave R1 dhe R2 transferohen në ALU për mbledhje, dhe në
      fund
   3. Rezultati ruhet në regjistrin R0.

Në qoftë se kemi shtegun e të dhënave me një magjistrale atëherë mbledhja e tillë mund
të kryhet në tre hapa, siç tregon tabela:




            Tabela 1: Ekzekutimi i instruksionit Add R1, R2, R0 në tre hapa.

Në qoftë se kemi shtegun e të dhënave me dy magjistrale, atëherë, instruksioni për
mbledhjen e mësipërme do të kryhet në dy hapa:




            Tabela 2: Ekzekutimi i instruksionit Add R1, R2, R0 në dy hapa.

Në qoftë se kemi shtegun e të dhënave me tri magjistrale, atëherë, instruksioni për
mbledhjen e mësipërme do të kryhet po ashtu në dy hapa:




            Tabela 3: Ekzekutimi i instruksionit Add R1, R2, R0 në dy hapa.
                                          10
________________________________________________________________________


       4.3. Procedura “Interrupt Handling”.

Siç kemi thënë më parë, pas çdo ekzekutimi të instruksioneve, bëhet një test nëse ka
ndonjë ndërprerje (Interrupts).

Pse shkaktohen ndërprerjet?
Ndërprerjet mund të shkaktohen nga kërkesat e sistemit për hyrje/dalje, për shkak të
gabimeve aritmetikore (për shembull pjesëtimi me zero) ose kur jepen instruksione të
pavlefshme.

Procedura “Interrupt Handling” zhvillohet si varg i këtyre hapave:

   1. Përmbajtja në PC kopjohet në MDR (në mënyrë që ajo të ruhet),
   2. Në MAR kopjohet adresa ku do të ruhet përmbajtja që është në MDR,
   3. Në PC kopjohet adresa e instruksionit të parë të procedurës “Interrupt Handling”,
      dhe
   4. Përmbajtja që ndodhet në MDR (përmbajtja e vjetër që ishte në PC) ruhet në
      memorie.

Tabela e mëposhtme na tregon se si zhvillohet kjo procedurë:




                 Tabela 4: Zhvillimi i procedurës “Interrupt Handling”.

5. Njësia kontrolluese (CU).
Njësia kontrolluese paraqet pjesën kryesore të njësisë përpunuese. Ajo e udhëheqë punën
brenda njësisë përpunuese duke i dërguar sinjale kontrolli shtegut të dhënave për kryerjen
e detyrave të saj.
Njësia kontrolluese kontrollon rrjedhën e të dhënave brenda njësisë përpunuese dhe është
përgjegjëse për leximin, dekodimin dhe ekzekutimin e instruksioneve.
Njësinë kontrolluese mund ta krahasojmë me “policin në trafik” i cili kontrollon trafikun.
Ora sistemore prodhon në mënyrë të vazhdueshme vargje të pulseve në një frekuencë të
caktuar. Instruksionet ekzekutohen në një varg të caktuar hapash.




                                           11
________________________________________________________________________

Tani le të shohim figurën:




                     Figura 6: Prodhimi i pulseve nga ora sistemore.

Siç e theksuam më lartë, njësia kontrolluese i udhëheqë të gjitha punët brenda njësisë
përpunuese përmes dërgimit të sinjaleve të kontrollit.

Tani mund të shtrohet pyetja:
Si gjenerohen sinjalet e tilla?
Së pari, fusha e Opcode-it e instruksionit të lexuar nga memoria dekodohet nga një
dekodues i caktuar. Pas kësaj, gjeneruesi i sinjaleve të kontrollit pajiset me informacione
mbi instruksionin i cili do të ekzekutohet (Informacione që kanë të bëjnë me llojin e
instruksionit). Përveç dekoduesit dhe gjeneruesit të sinjaleve të kontrollit, në gjenerimin
e sinjaleve, merr pjesë edhe një qark logjik i cili vendosë për hapin që do të ndërmerret
për ekzekutimin e instruksionit.

Tani le të shohim përmes figurës së mëposhtme se si bëhet gjenerimi i sinjaleve të
kontrollit:




                      Figura 7: Gjenerimi i sinjaleve të kontrollit.

                                            12
________________________________________________________________________


6. Përmbledhje.
Çfarë mësuam nga ky punim?

Nga ky punim mësuam se:

   1. Njësia përpunuese i ekzekuton instruksionet të cilët janë pjesë përbërëse të
      programeve qe ne i shkruajmë.
   2. Njësia përpunuese përbëhet prej: bashkësisë së regjistrave, njësisë aritmetike-
      logjike (ALU) dhe njësisë kontrolluese (CU).
   3. Regjistrat janë pjesë harduerike që ruajnë të dhëna.
   4. Regjistrat janë të vendosur brenda njësisë përpunuese në mënyrë që kjo e fundit
      t’i shfrytëzojë të dhënat më shpejtë.
   5. Njësia aritmetike-logjike i kryen veprimet aritmetike dhe logjike mbi të dhënat.
   6. Njësia kontrolluese është pjesa kryesore e njësisë përpunuese.
   7. Njësia kontrolluese i udhëheqë punët brenda njësisë përpunuese përmes dërgimit
      të sinjaleve të kontrollit shtegut të dhënave.

7. Literatura.

   1. “Fundamentals of Computer Organization and Architecture”, Mostafa Abd-El-
      Barr, Hesham El-Rewini, John Wiley & Sons, Inc. © 2005.
   2. “The Essentials of Computer Organization and Architecture”, Linda Null, Julia
      Lobur, Jones and Bartlett Publishers © 2003.




                                         13

More Related Content

Viewers also liked

Projekt 2
Projekt 2Projekt 2
Projekt 2Mersi
 
Proteinat ..............Ekzistojnë më tepër se 10000 proteina
Proteinat ..............Ekzistojnë më tepër se 10000 proteinaProteinat ..............Ekzistojnë më tepër se 10000 proteina
Proteinat ..............Ekzistojnë më tepër se 10000 proteina#MesueseAurela Elezaj
 
Projekt Kimi - Karbohidratet
Projekt Kimi - KarbohidratetProjekt Kimi - Karbohidratet
Projekt Kimi - KarbohidratetMarinela Abedini
 
Karbohidratet dhe funksioni i tyre kimik
Karbohidratet dhe funksioni i tyre kimikKarbohidratet dhe funksioni i tyre kimik
Karbohidratet dhe funksioni i tyre kimikSeptic Flesh
 
Proteinat dhe Vitaminat.roli i tyre ne jeten e perditshme.
Proteinat dhe Vitaminat.roli i tyre ne jeten e perditshme.Proteinat dhe Vitaminat.roli i tyre ne jeten e perditshme.
Proteinat dhe Vitaminat.roli i tyre ne jeten e perditshme.Eva Ciciku
 
Proteinat yndyrnat dhe karbohidratet
Proteinat yndyrnat dhe karbohidratetProteinat yndyrnat dhe karbohidratet
Proteinat yndyrnat dhe karbohidratetKorba Ferizaj
 
Proteinat, yndyrnat dhe karbohidratet
Proteinat, yndyrnat dhe karbohidratetProteinat, yndyrnat dhe karbohidratet
Proteinat, yndyrnat dhe karbohidratetBurim Derveni
 

Viewers also liked (9)

Projekt 2
Projekt 2Projekt 2
Projekt 2
 
Proteinat ..............Ekzistojnë më tepër se 10000 proteina
Proteinat ..............Ekzistojnë më tepër se 10000 proteinaProteinat ..............Ekzistojnë më tepër se 10000 proteina
Proteinat ..............Ekzistojnë më tepër se 10000 proteina
 
Projekt Kimi - Karbohidratet
Projekt Kimi - KarbohidratetProjekt Kimi - Karbohidratet
Projekt Kimi - Karbohidratet
 
Karbohidratet dhe funksioni i tyre kimik
Karbohidratet dhe funksioni i tyre kimikKarbohidratet dhe funksioni i tyre kimik
Karbohidratet dhe funksioni i tyre kimik
 
Proteinat dhe Vitaminat.roli i tyre ne jeten e perditshme.
Proteinat dhe Vitaminat.roli i tyre ne jeten e perditshme.Proteinat dhe Vitaminat.roli i tyre ne jeten e perditshme.
Proteinat dhe Vitaminat.roli i tyre ne jeten e perditshme.
 
Yndyrat dhe sheqernat
Yndyrat dhe sheqernatYndyrat dhe sheqernat
Yndyrat dhe sheqernat
 
Proteinat yndyrnat dhe karbohidratet
Proteinat yndyrnat dhe karbohidratetProteinat yndyrnat dhe karbohidratet
Proteinat yndyrnat dhe karbohidratet
 
Proteinat, yndyrnat dhe karbohidratet
Proteinat, yndyrnat dhe karbohidratetProteinat, yndyrnat dhe karbohidratet
Proteinat, yndyrnat dhe karbohidratet
 
Projekt kimi
Projekt kimiProjekt kimi
Projekt kimi
 

Similar to Tofudi com perpunuesi

Deyrat e portofolit te Tik me Zgjedhje 12 Semestri i 1
Deyrat e portofolit te Tik me Zgjedhje 12 Semestri i 1Deyrat e portofolit te Tik me Zgjedhje 12 Semestri i 1
Deyrat e portofolit te Tik me Zgjedhje 12 Semestri i 1Rexhino Kovaci
 
Kompjuteri, Historiku i tij dhe pjeset harduerike te tij ( CPU - Mikroproces...
Kompjuteri,  Historiku i tij dhe pjeset harduerike te tij ( CPU - Mikroproces...Kompjuteri,  Historiku i tij dhe pjeset harduerike te tij ( CPU - Mikroproces...
Kompjuteri, Historiku i tij dhe pjeset harduerike te tij ( CPU - Mikroproces...Lirim Jahiu
 
Deyrat e portofolit te Tik me Zgjedhje
Deyrat e portofolit te Tik me Zgjedhje Deyrat e portofolit te Tik me Zgjedhje
Deyrat e portofolit te Tik me Zgjedhje Rexhino Kovaci
 
JEygfyttyftftftftftyrdrrdesdeseseseses.docx
JEygfyttyftftftftftyrdrrdesdeseseseses.docxJEygfyttyftftftftftyrdrrdesdeseseseses.docx
JEygfyttyftftftftftyrdrrdesdeseseseses.docxJurgenMyzyri
 
Praktika kompjuterike- Nderim Rahmani
Praktika kompjuterike- Nderim RahmaniPraktika kompjuterike- Nderim Rahmani
Praktika kompjuterike- Nderim RahmaniNderim Rahmani
 
Siguria e të Dhënave
Siguria e të DhënaveSiguria e të Dhënave
Siguria e të DhënaveEgzonSe
 
Ligj 2 mimoza_luta
Ligj 2 mimoza_lutaLigj 2 mimoza_luta
Ligj 2 mimoza_lutaValdet Shala
 
Pyetje nga lënda e informatikës për vitin e parë
Pyetje nga lënda e informatikës për vitin e parëPyetje nga lënda e informatikës për vitin e parë
Pyetje nga lënda e informatikës për vitin e parëLirie Memeti
 
Enkel vela nje krahasim midis arkitekturave te driver
Enkel vela nje krahasim midis arkitekturave te driverEnkel vela nje krahasim midis arkitekturave te driver
Enkel vela nje krahasim midis arkitekturave te driverEnkel Vela
 
Detyre Kursi - Pjeset fizike te Kompjuterit
Detyre Kursi - Pjeset fizike te KompjuteritDetyre Kursi - Pjeset fizike te Kompjuterit
Detyre Kursi - Pjeset fizike te KompjuteritDurim Hysa
 

Similar to Tofudi com perpunuesi (20)

Sistemet operative so
Sistemet operative soSistemet operative so
Sistemet operative so
 
Deyrat e portofolit te Tik me Zgjedhje 12 Semestri i 1
Deyrat e portofolit te Tik me Zgjedhje 12 Semestri i 1Deyrat e portofolit te Tik me Zgjedhje 12 Semestri i 1
Deyrat e portofolit te Tik me Zgjedhje 12 Semestri i 1
 
Kompjuteri, Historiku i tij dhe pjeset harduerike te tij ( CPU - Mikroproces...
Kompjuteri,  Historiku i tij dhe pjeset harduerike te tij ( CPU - Mikroproces...Kompjuteri,  Historiku i tij dhe pjeset harduerike te tij ( CPU - Mikroproces...
Kompjuteri, Historiku i tij dhe pjeset harduerike te tij ( CPU - Mikroproces...
 
Deyrat e portofolit te Tik me Zgjedhje
Deyrat e portofolit te Tik me Zgjedhje Deyrat e portofolit te Tik me Zgjedhje
Deyrat e portofolit te Tik me Zgjedhje
 
Informatik,
Informatik,Informatik,
Informatik,
 
Ligjerata 5
Ligjerata 5Ligjerata 5
Ligjerata 5
 
JEygfyttyftftftftftyrdrrdesdeseseseses.docx
JEygfyttyftftftftftyrdrrdesdeseseseses.docxJEygfyttyftftftftftyrdrrdesdeseseseses.docx
JEygfyttyftftftftftyrdrrdesdeseseseses.docx
 
Praktika kompjuterike- Nderim Rahmani
Praktika kompjuterike- Nderim RahmaniPraktika kompjuterike- Nderim Rahmani
Praktika kompjuterike- Nderim Rahmani
 
Mikrokontrolloret
Mikrokontrolloret  Mikrokontrolloret
Mikrokontrolloret
 
ligjerata.ppt
ligjerata.pptligjerata.ppt
ligjerata.ppt
 
ligjerata.ppt
ligjerata.pptligjerata.ppt
ligjerata.ppt
 
Sisteme operative
Sisteme operativeSisteme operative
Sisteme operative
 
Siguria e të Dhënave
Siguria e të DhënaveSiguria e të Dhënave
Siguria e të Dhënave
 
Ligjerata e dytë
Ligjerata e dytëLigjerata e dytë
Ligjerata e dytë
 
Ligj 2 mimoza_luta
Ligj 2 mimoza_lutaLigj 2 mimoza_luta
Ligj 2 mimoza_luta
 
Pyetje nga lënda e informatikës për vitin e parë
Pyetje nga lënda e informatikës për vitin e parëPyetje nga lënda e informatikës për vitin e parë
Pyetje nga lënda e informatikës për vitin e parë
 
Informatike
InformatikeInformatike
Informatike
 
Enkel vela nje krahasim midis arkitekturave te driver
Enkel vela nje krahasim midis arkitekturave te driverEnkel vela nje krahasim midis arkitekturave te driver
Enkel vela nje krahasim midis arkitekturave te driver
 
Leksioni 3 procesori
Leksioni 3   procesoriLeksioni 3   procesori
Leksioni 3 procesori
 
Detyre Kursi - Pjeset fizike te Kompjuterit
Detyre Kursi - Pjeset fizike te KompjuteritDetyre Kursi - Pjeset fizike te Kompjuterit
Detyre Kursi - Pjeset fizike te Kompjuterit
 

More from Ramë Hajraj

Kontratë nbi shiteblerjen e baneses
Kontratë nbi shiteblerjen e banesesKontratë nbi shiteblerjen e baneses
Kontratë nbi shiteblerjen e banesesRamë Hajraj
 
Menaxhimi i-prodhimit-1234780563841933-3
Menaxhimi i-prodhimit-1234780563841933-3Menaxhimi i-prodhimit-1234780563841933-3
Menaxhimi i-prodhimit-1234780563841933-3Ramë Hajraj
 
Plan i biznesit ne bazat e biznesit
Plan i biznesit ne bazat e biznesitPlan i biznesit ne bazat e biznesit
Plan i biznesit ne bazat e biznesitRamë Hajraj
 
Plan i biznesit për fitore hysenaj
Plan i biznesit për fitore hysenajPlan i biznesit për fitore hysenaj
Plan i biznesit për fitore hysenajRamë Hajraj
 
Plani i biznesit_2012_burimi i jetes_pejë
Plani i biznesit_2012_burimi i jetes_pejëPlani i biznesit_2012_burimi i jetes_pejë
Plani i biznesit_2012_burimi i jetes_pejëRamë Hajraj
 
Plani i biznesit_2012_burimi i jetes_pejë (2)
Plani i biznesit_2012_burimi i jetes_pejë (2)Plani i biznesit_2012_burimi i jetes_pejë (2)
Plani i biznesit_2012_burimi i jetes_pejë (2)Ramë Hajraj
 
Plani i biznesit_2012_hidrodrini_peje0
Plani i biznesit_2012_hidrodrini_peje0Plani i biznesit_2012_hidrodrini_peje0
Plani i biznesit_2012_hidrodrini_peje0Ramë Hajraj
 
Plani i biznesit_2012_kmdk_korigjuar
Plani i biznesit_2012_kmdk_korigjuarPlani i biznesit_2012_kmdk_korigjuar
Plani i biznesit_2012_kmdk_korigjuarRamë Hajraj
 
Punim seminarik ne menaxhment (2)
Punim seminarik ne menaxhment (2)Punim seminarik ne menaxhment (2)
Punim seminarik ne menaxhment (2)Ramë Hajraj
 
Punim seminarik ne menaxhment
Punim seminarik ne menaxhmentPunim seminarik ne menaxhment
Punim seminarik ne menaxhmentRamë Hajraj
 
Punim seminarik ne menaxhment
Punim seminarik ne menaxhmentPunim seminarik ne menaxhment
Punim seminarik ne menaxhmentRamë Hajraj
 
Punimi seminarik ne menaxhment
Punimi seminarik ne menaxhmentPunimi seminarik ne menaxhment
Punimi seminarik ne menaxhmentRamë Hajraj
 
Punimiseminarik bankatqendrore-110513164651-phpapp02
Punimiseminarik bankatqendrore-110513164651-phpapp02Punimiseminarik bankatqendrore-110513164651-phpapp02
Punimiseminarik bankatqendrore-110513164651-phpapp02Ramë Hajraj
 
Punimiseminarikneekonomi 121216134908-phpapp01
Punimiseminarikneekonomi 121216134908-phpapp01Punimiseminarikneekonomi 121216134908-phpapp01
Punimiseminarikneekonomi 121216134908-phpapp01Ramë Hajraj
 
Punimseminarik 111001044117-phpapp01
Punimseminarik 111001044117-phpapp01Punimseminarik 111001044117-phpapp01
Punimseminarik 111001044117-phpapp01Ramë Hajraj
 
Punimseminarikmergimhotiarlindkallaba 121129003805-phpapp01
Punimseminarikmergimhotiarlindkallaba 121129003805-phpapp01Punimseminarikmergimhotiarlindkallaba 121129003805-phpapp01
Punimseminarikmergimhotiarlindkallaba 121129003805-phpapp01Ramë Hajraj
 
Punimseminariknmenaxhmen
PunimseminariknmenaxhmenPunimseminariknmenaxhmen
PunimseminariknmenaxhmenRamë Hajraj
 

More from Ramë Hajraj (20)

Kontratë nbi shiteblerjen e baneses
Kontratë nbi shiteblerjen e banesesKontratë nbi shiteblerjen e baneses
Kontratë nbi shiteblerjen e baneses
 
Menaxhimi i-prodhimit-1234780563841933-3
Menaxhimi i-prodhimit-1234780563841933-3Menaxhimi i-prodhimit-1234780563841933-3
Menaxhimi i-prodhimit-1234780563841933-3
 
Plan i biznesit ne bazat e biznesit
Plan i biznesit ne bazat e biznesitPlan i biznesit ne bazat e biznesit
Plan i biznesit ne bazat e biznesit
 
Plan i biznesit për fitore hysenaj
Plan i biznesit për fitore hysenajPlan i biznesit për fitore hysenaj
Plan i biznesit për fitore hysenaj
 
Plani i biznesit_2012_burimi i jetes_pejë
Plani i biznesit_2012_burimi i jetes_pejëPlani i biznesit_2012_burimi i jetes_pejë
Plani i biznesit_2012_burimi i jetes_pejë
 
Plani i biznesit_2012_burimi i jetes_pejë (2)
Plani i biznesit_2012_burimi i jetes_pejë (2)Plani i biznesit_2012_burimi i jetes_pejë (2)
Plani i biznesit_2012_burimi i jetes_pejë (2)
 
Plani i biznesit_2012_hidrodrini_peje0
Plani i biznesit_2012_hidrodrini_peje0Plani i biznesit_2012_hidrodrini_peje0
Plani i biznesit_2012_hidrodrini_peje0
 
Plani i biznesit_2012_kmdk_korigjuar
Plani i biznesit_2012_kmdk_korigjuarPlani i biznesit_2012_kmdk_korigjuar
Plani i biznesit_2012_kmdk_korigjuar
 
Punim seminarik ne menaxhment (2)
Punim seminarik ne menaxhment (2)Punim seminarik ne menaxhment (2)
Punim seminarik ne menaxhment (2)
 
Punim seminarik ne menaxhment
Punim seminarik ne menaxhmentPunim seminarik ne menaxhment
Punim seminarik ne menaxhment
 
Punim seminarik ne menaxhment
Punim seminarik ne menaxhmentPunim seminarik ne menaxhment
Punim seminarik ne menaxhment
 
Punim seminarik
Punim seminarikPunim seminarik
Punim seminarik
 
Punimi seminarik
Punimi seminarik Punimi seminarik
Punimi seminarik
 
Punimi seminarik ne menaxhment
Punimi seminarik ne menaxhmentPunimi seminarik ne menaxhment
Punimi seminarik ne menaxhment
 
Punimiseminarik bankatqendrore-110513164651-phpapp02
Punimiseminarik bankatqendrore-110513164651-phpapp02Punimiseminarik bankatqendrore-110513164651-phpapp02
Punimiseminarik bankatqendrore-110513164651-phpapp02
 
Punimiseminarikneekonomi 121216134908-phpapp01
Punimiseminarikneekonomi 121216134908-phpapp01Punimiseminarikneekonomi 121216134908-phpapp01
Punimiseminarikneekonomi 121216134908-phpapp01
 
Punimseminarik 111001044117-phpapp01
Punimseminarik 111001044117-phpapp01Punimseminarik 111001044117-phpapp01
Punimseminarik 111001044117-phpapp01
 
Punimseminarikmergimhotiarlindkallaba 121129003805-phpapp01
Punimseminarikmergimhotiarlindkallaba 121129003805-phpapp01Punimseminarikmergimhotiarlindkallaba 121129003805-phpapp01
Punimseminarikmergimhotiarlindkallaba 121129003805-phpapp01
 
Punimseminariknmenaxhmen
PunimseminariknmenaxhmenPunimseminariknmenaxhmen
Punimseminariknmenaxhmen
 
Rame hajraj (2)
Rame hajraj (2)Rame hajraj (2)
Rame hajraj (2)
 

Tofudi com perpunuesi

  • 1. UNIVERSITETI I PRISHTINËS FAKULTETI I SHKENCAVE MATEMATIKE–NATYRORE DEPARTAMENTI I MATEMATIKËS PUNIM SEMINARIK Lënda: Arkitektura e kompjuterit dhe sistemet operative. Tema: Dizejni i njësisë përpunuese qendrore (CPU). Punuar nga: Fidan Abdiu, student. Prishtinë, Janar 2007.
  • 2. ________________________________________________________________________ PËRMBAJTJA: 1. Arkitektura e njësisë përpunuese (CPU). 2. Bashkësia e regjistrave. 2.1. Regjistrat “Memory Access Registers”. 2.2. Regjistrat “Instruction Fetching Registers”. 2.3. Regjistrat “Condition Registers”. 3. Shtegu i të dhënave (Datapath). 3.1. Shtegu i të dhënave me një magjistrale. 3.2. Shtegu i të dhënave me dy magjistrale. 3.3. Shtegu i të dhënave me tri magjistrale. 4. Cikli i ekzekutimit të instruksionit. 4.1. Leximi i instruksionit. 4.2. Shembull: Ekzekutimi i një veprimi të thjeshtë aritmetik. 4.3. Procedura “Interrupt Handling”. 5. Njësia kontrolluese (CU). 6. Përmbledhje. 7. Literatura. 2
  • 3. ________________________________________________________________________ 1. Arkitektura e njësisë përpunuese (CPU). Para se të flasim për arkitekturën e njësisë përpunuese, të theksojmë se çdo sistem kompjuterik përbëhet prej tri pjesëve kryesore: 1. Njësia përpunuese (CPU), 2. Memoria, dhe 3. Sistemi për hyrje/dalje (I/O System). Tani mund të shtrohen pyetjet: Çfarë funksioni ka memoria? Memoria ka për funksion ruajtjen e të dhënave dhe programeve. Programet paraqesin bashkësi instruksionesh. Çfarë funksioni ka sistemi për hyrje/dalje? Sistemi për hyrje/dalje paraqet mekanizmin për bartjen e të dhënave brenda dhe jashtë rrjetës (Sistemi kompjuterik mund të paraqitet si rrjetë në të cilën lidhen pjesët përbërëse të tij). Tani le të flasim për pjesën më kryesore të çdo sistemi kompjuterik e që është njësia përpunuese. Çfarë funksioni ka njësia përpunuese? Njësia përpunuese ka për funksion ekzekutimin e instruksioneve të cilët lexohen nga memoria. Më vonë do të shohim më gjerësisht se si bëhet leximi dhe ekzekutimi i instruksioneve. Çdo njësi përpunuese përbëhet prej tri pjesëve kryesore: 1. Bashkësia e regjistrave. 2. Njësia aritmetike-logjike (ALU), dhe 3. Njësia kontrolluese (CU). Çfarë janë regjistrat? Regjistrat janë pjesë harduerike, të cilat për funksion kanë ruajtjen e disa të dhënave. Regjistrat janë të vendosur brenda njësisë përpunuese, në mënyrë që kjo e fundit t’i shfrytëzojë më shpejtë të dhënat që ndodhen në regjistra. Të gjithë regjistrat e një njësie përpunuese përbëjnë bashkësinë e regjistrave të njësisë përpunuese. Bashkësitë e regjistrave dallojnë nga një arkitekturë në tjetrën, por në përgjithësi, regjistrat klasifikohen në dy grupe: 1. Regjistrat “General-Purpose”, dhe 2. Regjistrat “Special-Purpose”. 3
  • 4. ________________________________________________________________________ Regjistrat “General-Purpose” kanë funksione të shumta, ndërsa, regjistrat “Special- Purpose” kanë funksione të veçanta. Si shembull mund ta marrim regjistrin PC (Program Counter) i cili është “Special-Purpose” regjistër, në të cilin ndodhet adresa e instruksionit që do të ekzekutohet në vijim. Do të shohim më vonë se ekzistojnë edhe klasifikime të tjera të regjistrave. Çfarë është njësia aritmetike-logjike? Njësia aritmetike-logjike paraqet bashkësinë e qarqeve përmes të cilëve kryhen veprimet aritmetike dhe logjike me të dhëna. Çfarë është njësia kontrolluese? Edhe njësia kontrolluese paraqet bashkësi të qarqeve e cila është përgjegjëse për leximin, dekodimin dhe ekzekutimin e instruksionit. Tani le ta shohim arkitekturën e njësisë përpunuese, bashkëveprimin e saj me memorien dhe sistemin për hyrje/dalje. Figura 1: Arkitektura e njësisë përpunuese. Siç theksuam më lartë, njësia përpunuese ka për detyrë ekzekutimin e instruksioneve. Ato instruksione së pari duhet të lexohen nga memoria ku edhe ruhen. E gjithë kjo procedurë mund të përmblidhet në një cikël i cili njihet si cikli i ekzekutimit të instruksionit. 1. Instruksioni i cili do të ekzekutohet në vijim, adresa e të cilit ndodhet në regjistrin PC (Program Counter), vendoset në regjistrin IR (Instruction Register). 2. Instruksioni dekodohet. 3. Operandët (adresat) e instruksionit lexohen nga memoria dhe vendosen në regjistrat e njësisë përpunuese. 4
  • 5. ________________________________________________________________________ 4. Instruksioni ekzekutohet, dhe në fund 5. Rezultatet ruhen në memorie. Të mos harrojmë se ky cikël përsëritet gjithnjë përderisa ka ende instruksione që presin të ekzekutohen. Veprimet e njësisë përpunuese gjatë ciklit të ekzekutimit të instruksionit përcaktohen nga mikro-procedurat (Micro-orders) të cilat kryhen nga ana e njësisë kontrolluese. Në fakt, mikro-procedurat paraqesin sinjale kontrolli të cilat u dërgohen pjesëve përkatëse për kryerjen e detyrave të caktuara. Ta sqarojmë këtë me një shembull. Të supozojmë se dëshirojmë ta bartim përmbajtjen e regjistrit X në regjistrin Y. Të supozojmë po ashtu se të dy regjistrat janë të lidhur përmes magjistrales D (Siç e dimë të gjitha pjesët e sistemit janë të lidhura në magjistrale e cila mundëson bartjen e të dhënave). Në këtë rast, njësia kontrolluese ia dërgon një sinjal kontrolli regjistrit X në mënyrë që ky i fundit ta vendosë përmbajtjen e tij në magjistralen D. Pas një kohe, edhe regjistrit Y i dërgohet një sinjal kontrolli në mënyrë që ky i fundit tani ta lexojë atë të dhënë nga magjistralja D. 2. Bashkësia e regjistrave. Tani do të flasim më gjerësisht për bashkësinë e regjistrave. Siç thamë më parë, regjistrat janë pjesë harduerike në të cilët ruhen të dhënat. Regjistrat janë të vendosur brenda njësisë përpunuese, në mënyrë që kjo e fundit t’i shfrytëzojë më shpejtë ato të dhëna. Bashkësitë e regjistrave dallojnë nga një arkitekturë në tjetrën. Ato dallojnë për nga sasia e regjistrave, lloji i tyre, për nga gjatësia e secilit regjistër dhe për nga funksioni i secilit regjistër. Për shembull, regjistrat e adresës (regjistra që ruajnë adresën e ndonjë lokacioni të caktuar të memories) duhet të jenë aq të gjatë sa të mund ta mbajnë adresën me gjatësinë më të madhe. Regjistrat “General-Purpose” mund të përdoren për qëllime të shumta, ndërsa, regjistrat “Special-Purpose” mund të përdoren vetëm për qëllime të veçanta. 2.1. Regjistrat “Memory Access Registers”. Regjistrat “Memory Access Registers” për funksion kanë qasjen në memorie, përkatësisht leximin dhe shkrimin në memorie. Në leximin dhe shkrimin e të dhënave në memorie marrin pjesë këta dy regjistra me rëndësi: 1. Regjistri MDR (Memory Data Register), dhe 2. Regjistri MAR (Memory Address Register). Të shohim tani se si bëhet shkrimi në një lokacion të caktuar të memories: 5
  • 6. ________________________________________________________________________ 1. Fjala që do të shkruhet në lokacionin e caktuar të memories kopjohet në MDR. 2. Adresa e lokacionit të memories në të cilin do të vendoset fjala kopjohet në MAR. 3. Dërgohet një sinjal kontrolli nga njësia kontrolluese në mënyrë që ajo fjalë të shkruhet në lokacionin e caktuar të memories. Në mënyrë analoge lexohet fjala nga lokacioni i caktuar i memories. Procedura e tillë zhvillohet si në vijim: 1. Adresa e lokacionit të memories nga i cili do të lexohet fjala, vendoset në MAR. 2. Dërgohet një sinjal kontrolli nga njësia kontrolluese në mënyrë që fjala përkatëse të lexohet. 3. Fjala vendoset në MDR, tani e gatshme për përpunim nga njësia përpunuese. 2.2. Regjistrat “Instruction Fetching Registers”. Regjistrat “Instruction Fetching Registers” për detyrë kanë leximin e instruksionit që do të ekzekutohet në vijim. Në leximin e instruksioneve marrin pjesë këta dy regjistra me rëndësi: 1. Regjistri PC (Program Counter), dhe 2. Regjistri IR (Instruction Register). Regjistri PC mbanë adresën e instruksionit i cili do të lexohet në vijim. Pasi të lexohet instruksioni nga memoria, instruksioni vendoset në regjistrin IR, tani i gatshëm për ekzekutim. Pas ekzekutimit të instruksionit në PC vendoset adresa e instruksionit tjetër që do të lexohet dhe më pas të ekzekutohet. 2.3. Regjistrat “Condition Registers”. Regjistrat “Condition Registers” për funksion kanë ruajtjen e informatave në lidhje me gjendjen momentale në njësinë përpunuese. Disa arkitektura përmbajnë regjistrin e llojit “Special-Purpose” PSW (Program Status Word). Regjistri PSW i përmban bitët të cilët ia dërgon njësia përpunuese, për ta treguar gjendjen momentale në lidhje me ekzekutimin e programit. 3. Shtegu i të dhënave (Datapath). Njësia përpunuese mund të ndahet në dy pjesë: 1. Pjesa e të dhënave, dhe 2. Pjesa e kontrollit. 6
  • 7. ________________________________________________________________________ Pjesa e të dhënave apo shtegu i të dhënave përbëhet prej bashkësisë së regjistrave dhe njësisë aritmetike-logjike. Shtegu i të dhënave ka për detyrë kryerjen e veprimeve të caktuara mbi të dhënat. Pjesa e kontrollit, në fakt, paraqet njësinë kontrolluese. Njësia kontrolluese i dërgon sinjale kontrolli shtegut të dhënave për kryerjen e detyrave të caktuara. Brenda njësisë përpunuese të dhënat barten në këto relacione: 1. Regjistër-regjistër, dhe 2. ALU – regjistër. Këto bartje mundësohen përmes magjistraleve të caktuara. Bartja e të dhënave nga ana e jashtme, d.m.th., nga regjistrat në memorie dhe në pajisjet e sistemit për hyrje/dalje, zakonisht mundësohet nga ana e magjistrales së sistemit e cila mundëson komunikim e këtyre pjesëve të sistemit. Bartja e brendshme e të dhënave, d.m.th. bartja në relacionet regjistër-regjistër apo ALU-regjistër mund të kryhet duke përdorur: 1. Një magjistrale, 2. Dy magjistrale, ose 3. Tri magjistrale. 3.1. Shtegu i të dhënave me një magjistrale. Në shtegun e të dhënave me një magjistrale, bartja e të dhënave në relacionet e lartpërmendura mundësohet nga një magjistrale e vetme. Meqenëse me një magjistrale mund të kryhet vetëm një veprim përkatësisht një bartje e të dhënave brenda një cikli të orës, atëherë, kjo ndikon në ngadalësimin e procesit të bartjes së të dhënave. Normalisht që kjo pastaj ndikon në efektivitetin e përgjithshëm të sistemit. Tani le të shohim se si funksionon bartja e të dhënave në mes të pjesëve të shtegut të dhënave me një magjistrale. Figura 2: Shtegu i të dhënave me një magjistrale. 7
  • 8. ________________________________________________________________________ 3.2. Shtegu i të dhënave me dy magjistrale. Bartja e të dhënave brenda shtegut të dhënave me dy magjistrale është zgjidhje më e mirë se ajo paraprake. Meqenëse kemi dy magjistrale, atëherë, brenda një cikli të orës mund të kryhen dy veprime. Tani le ta shohim bartjen e të dhënave brenda shtegut të dhënave me dy magjistrale: Figura 3: Shtegu i të dhënave me dy magjistrale. 3.3. Shtegu i të dhënave me tri magjistrale. Në shtegun e të dhënave me tri magjistrale, dy magjistrale (Out-bus 1, 2) mund t’i përdorim për nxjerrjen e të dhënave nga regjistrat, ndërsa, magjistralen e tretë (In-bus) mund ta përdorim për të futur të dhëna në regjistra. Figura 4: Shtegu i të dhënave me tri magjistrale. 8
  • 9. ________________________________________________________________________ Çfarë kuptuam nga shembujt e mësipërm? Nga shembujt e mësipërm kuptuam se sa më shumë magjistrale të kemi në shtegun e të dhënave aq më e shpejtë do të jetë bartja e të dhënave brenda pjesëve përkatëse. Të mos harrojmë se sa më shumë magjistrale të kemi, aq më kompleks do të jetë hardueri. 4. Cikli i ekzekutimit të instruksionit. Siç kemi thënë më parë, cikli i ekzekutimit të instruksionit vazhdon të përsëritet përderisa ka ende instruksione që presin të ekzekutohen. Instruksioni ekzekutohet bazuar në fushën e Opcode-it (Varg i caktuar bitësh) ku përcaktohet veprimi apo lloji i instruksionit. Pas ekzekutimit të instruksionit, bëhet një test në rast të ndërprerjeve (Interrupts) të mundshme. Në rast se ka ndonjë ndërprerje në punën e njësisë përpunuese, atëherë ekziston një procedurë përkatëse për rregullimin e saj “Interrupt Handling”. Do të shohim më vonë se si zhvillohet procedura “Interrupt Handling”. Le ta shohim vargun e hapave për ekzekutimin e instruksionit: Figura 5: Cikli i ekzekutimit të instruksionit. 4.1. Leximi i instruksionit. Të gjitha veprimet gjatë ciklit të ekzekutimit të instruksionit siç ishin: leximi i instruksionit, ekzekutimi i instruksionit apo “’Interrupt Handling” mund të paraqiten si vargje te mikro-veprimeve (Micro-operations). Të shohim se si leximi i instruksionit nga memoria mund të paraqitet si varg i mikro-veprimeve: 1. Përmbajtja në PC kopjohet në MAR, 2. Vlera në PC rritet, 9
  • 10. ________________________________________________________________________ 3. Instruksioni vendoset në MDR, dhe në fund 4. Nga MDR, instruksioni vendoset në IR. 4.2. Shembull: Ekzekutimi i një veprimi të thjeshtë aritmetik. Të supozojmë se kemi instruksionin Add R1, R2, R0. Çfarë bën instruksioni i mësipërm? Ky instruksion ia shton regjistrit R2, përmbajtjen e regjistrit R1, dhe e ruan rezultatin në regjistrin R0. Vargu i hapave për ekzekutimin e këtij instruksioni paraqitet si në vijim: 1. Regjistrat R0, R1, dhe R2 ekstraktohen nga IR. 2. Përmbajtjet e regjistrave R1 dhe R2 transferohen në ALU për mbledhje, dhe në fund 3. Rezultati ruhet në regjistrin R0. Në qoftë se kemi shtegun e të dhënave me një magjistrale atëherë mbledhja e tillë mund të kryhet në tre hapa, siç tregon tabela: Tabela 1: Ekzekutimi i instruksionit Add R1, R2, R0 në tre hapa. Në qoftë se kemi shtegun e të dhënave me dy magjistrale, atëherë, instruksioni për mbledhjen e mësipërme do të kryhet në dy hapa: Tabela 2: Ekzekutimi i instruksionit Add R1, R2, R0 në dy hapa. Në qoftë se kemi shtegun e të dhënave me tri magjistrale, atëherë, instruksioni për mbledhjen e mësipërme do të kryhet po ashtu në dy hapa: Tabela 3: Ekzekutimi i instruksionit Add R1, R2, R0 në dy hapa. 10
  • 11. ________________________________________________________________________ 4.3. Procedura “Interrupt Handling”. Siç kemi thënë më parë, pas çdo ekzekutimi të instruksioneve, bëhet një test nëse ka ndonjë ndërprerje (Interrupts). Pse shkaktohen ndërprerjet? Ndërprerjet mund të shkaktohen nga kërkesat e sistemit për hyrje/dalje, për shkak të gabimeve aritmetikore (për shembull pjesëtimi me zero) ose kur jepen instruksione të pavlefshme. Procedura “Interrupt Handling” zhvillohet si varg i këtyre hapave: 1. Përmbajtja në PC kopjohet në MDR (në mënyrë që ajo të ruhet), 2. Në MAR kopjohet adresa ku do të ruhet përmbajtja që është në MDR, 3. Në PC kopjohet adresa e instruksionit të parë të procedurës “Interrupt Handling”, dhe 4. Përmbajtja që ndodhet në MDR (përmbajtja e vjetër që ishte në PC) ruhet në memorie. Tabela e mëposhtme na tregon se si zhvillohet kjo procedurë: Tabela 4: Zhvillimi i procedurës “Interrupt Handling”. 5. Njësia kontrolluese (CU). Njësia kontrolluese paraqet pjesën kryesore të njësisë përpunuese. Ajo e udhëheqë punën brenda njësisë përpunuese duke i dërguar sinjale kontrolli shtegut të dhënave për kryerjen e detyrave të saj. Njësia kontrolluese kontrollon rrjedhën e të dhënave brenda njësisë përpunuese dhe është përgjegjëse për leximin, dekodimin dhe ekzekutimin e instruksioneve. Njësinë kontrolluese mund ta krahasojmë me “policin në trafik” i cili kontrollon trafikun. Ora sistemore prodhon në mënyrë të vazhdueshme vargje të pulseve në një frekuencë të caktuar. Instruksionet ekzekutohen në një varg të caktuar hapash. 11
  • 12. ________________________________________________________________________ Tani le të shohim figurën: Figura 6: Prodhimi i pulseve nga ora sistemore. Siç e theksuam më lartë, njësia kontrolluese i udhëheqë të gjitha punët brenda njësisë përpunuese përmes dërgimit të sinjaleve të kontrollit. Tani mund të shtrohet pyetja: Si gjenerohen sinjalet e tilla? Së pari, fusha e Opcode-it e instruksionit të lexuar nga memoria dekodohet nga një dekodues i caktuar. Pas kësaj, gjeneruesi i sinjaleve të kontrollit pajiset me informacione mbi instruksionin i cili do të ekzekutohet (Informacione që kanë të bëjnë me llojin e instruksionit). Përveç dekoduesit dhe gjeneruesit të sinjaleve të kontrollit, në gjenerimin e sinjaleve, merr pjesë edhe një qark logjik i cili vendosë për hapin që do të ndërmerret për ekzekutimin e instruksionit. Tani le të shohim përmes figurës së mëposhtme se si bëhet gjenerimi i sinjaleve të kontrollit: Figura 7: Gjenerimi i sinjaleve të kontrollit. 12
  • 13. ________________________________________________________________________ 6. Përmbledhje. Çfarë mësuam nga ky punim? Nga ky punim mësuam se: 1. Njësia përpunuese i ekzekuton instruksionet të cilët janë pjesë përbërëse të programeve qe ne i shkruajmë. 2. Njësia përpunuese përbëhet prej: bashkësisë së regjistrave, njësisë aritmetike- logjike (ALU) dhe njësisë kontrolluese (CU). 3. Regjistrat janë pjesë harduerike që ruajnë të dhëna. 4. Regjistrat janë të vendosur brenda njësisë përpunuese në mënyrë që kjo e fundit t’i shfrytëzojë të dhënat më shpejtë. 5. Njësia aritmetike-logjike i kryen veprimet aritmetike dhe logjike mbi të dhënat. 6. Njësia kontrolluese është pjesa kryesore e njësisë përpunuese. 7. Njësia kontrolluese i udhëheqë punët brenda njësisë përpunuese përmes dërgimit të sinjaleve të kontrollit shtegut të dhënave. 7. Literatura. 1. “Fundamentals of Computer Organization and Architecture”, Mostafa Abd-El- Barr, Hesham El-Rewini, John Wiley & Sons, Inc. © 2005. 2. “The Essentials of Computer Organization and Architecture”, Linda Null, Julia Lobur, Jones and Bartlett Publishers © 2003. 13