57
Arkitektura e Kompjuterave Leksioni V Njesia qendrore e perpunimit (CPU)

Leksioni v Arkitektura e Kompjuterave 2014 UPT

  • Upload
    enrik

  • View
    49

  • Download
    27

Embed Size (px)

DESCRIPTION

computer

Citation preview

Page 1: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Arkitektura e Kompjuterave

Leksioni V Njesia qendrore e perpunimit (CPU)

Page 2: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Hardware i njesise se perpunimit

Page 3: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Struktura e pergjithshme per perpunim

Page 4: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Micro-Operacionet • Kompjuteri ekzekuton nje program • Nje cikel Fetch/Execute • Cdo cikel ka nje numer hapash • Te cilat quhen mikro-operacione • Cdo hap kryen shume pak pune • Operacione atomike te CPU

Page 5: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Elementet perberes te ekzekutimit te nje programi

Page 6: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Ndarja e hardware-it

Page 7: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Ngarkimi (Fetch) - 4 Regjistra te perdorur • Memory Address Register (MAR)

—Lidhet e busin e adreses —Specifikon adresen per operacion leximi ose

shkrimi • Memory Data Register (MDR)

—Lidhet me busin e te dhenave —Mban te dhenat qe do te shkruhen ose te

dhenat qe jane lexuar se fundmi • Program Counter (PC)

—Mban adresen e instruksionit te ardhshem qe do te ngarkohet

• Instruction Register (IR) —Mban instruksionin e fundit te ngarkuar

Page 8: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Sekuenca e ngarkimit(Fetch) • Adresa e instruksionit te ardhshem ndodhet

ne PC • Adresa (MAR) vendoset ne busin e adresave • Njesia e kontrollit gjeneron nje sinjal LEXIMI

(READ) • Rezultatet (te dhenat nga memoria)

vendosen ne busin e te dhenave • Te dhenat nga busi vendosen ne MDR • PC inkrementohet me 4 (ne paralel me

ngarkimin e te dhenave nga memoria) • Instruksioni zhvendoset nga MDR ne IR • MDR tani eshte i lire per ngarkime te tjera te

dhenash

Page 9: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Sekuenca e ngarkimit (simbolike) • t1: MAR <- (PC) • t2: MDR <- (memory) • PC <- (PC) +4 • t3: IR <- (MDR) • (tx = njesia e kohes/cikli i ores) • ose • t1: MAR <- (PC) • t2: MDR <- (memory) • t3: PC <- (PC) +4 • IR <- (MDR)

Page 10: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Rregulla per grupimin e operacioneve ne cikel

• Sekuenca e duhur duhet te jete —MAR <- (PC) duhet te paraprije MDR <- (memory)

• Konfliktet duhet te shmangen —Nuk duhet te lexojme&shkruajme te njejtin

regjister ne te njejten kohe —MDR <- (memory) & IR <- (MDR) nuk duhen te

jene ne te njejtin cikel

Page 11: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Cikli indirekt • MAR <- (IRaddress) - fusha e adreses se IR • MDR <- (memory) • IRaddress <- (MDRaddress)

• MDR mban nje adrese • IR eshte ne te njejten gjendje sikur eshte

perdorur adresimi direkt

Page 12: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Cikli i nderprerjes (Interrupt) • t1: MDR <-(PC) • t2: MAR <- adresa e ruajtjes PC <- adresa e rutines • t3: memory <- (MDR) • Kjo eshte sekuenca minimale e hapave

—Mund te na duhen mikro-operacione shtese —Shenim: ruajtja e kontekstit kryhet nga rutina

e thirrur, jo nga mikro-operacione

Page 13: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Cikli i ekzekutimit (ADD) • I ndryshem per cdo instruksion • p.sh. ADD R1,X – mbledh permbajtjen e

vendodhjes x me regjistrin R1 , rezultati ne R1

t1: MAR <- (IRaddress) PC<-(PC)+4 t2: MDR <- (memory) t3: R1 <- R1 + (MDR)

• Veme re qe nuk kemi mbivendosje te operacioneve

Page 14: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Cikli i ekzekutimit (Load) • Load R5,X(R7) – ngarkon ne R5 vleren e

lexuar nga memoria

t1: MAR <- (PC) t2: IR <- (memory), PC<-(PC)+4 t3: Rz <- (R7) + X t4: R5<- memory(Rz)

Page 15: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Cikli i instruksionit • Cdo faze dekompozohet ne nje sekuence

mikro-operacionesh • P.sh. Ciklet e fetch, indirect, dhe interrupt • Cikli i ekzekutimit

—Nje sekuence mikro-operacionesh per cdo opcode

Page 16: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Kerkesat funksionale • Percakto elementet kryesore te procesorit • Pershkruaj mikro-operacionet qe

ekzekuton procesori • Percakto funksionet qe duhet te kryeje

njesia e kontrollit

Page 17: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Elementet kryesore te procesorit • ALU • Regjistrat • Rruget e brendshme te te dhenave • Rruget e jashtme te te dhenave • Njesia e kontrollit

Page 18: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Tipet e mikro-operacioneve • Transferimi ndermjet regjistrave • Transferimi i te dhenave nga regjistri ne

busin e jashtem • Transferimi i te dhenave nga busi i

jashtem ne regjister • Kryerja e operacioneve arithmetike dhe

llogjike

Page 19: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Funksionet e njesise se kontrollit • Sekuencimi

—Duke shkaktuar qe CPU te kaloje ne nje sekuence operacionesh

• Ekzekutimi —Shkakton ekzekutimin e cdo mikro-operacioni

• Kjo arrihet duke perdorur sinjalet e kontrollit

Page 20: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Sinjalet e kontrollit • Sinjalet e Ores (clock)

—Nje mikro-operacion per cikel ore • Sinjalet e Instruction Register

—Opcodi per instruksionin —Percakton se cilet mikro-operacione do te

kryhen • Flamujt

—Gjendja e CPU —Rezultatet e operacioneve te meperparshme

• Nga busi i kontrollit —Interruptet —Sinjalet e ack

Page 21: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Modeli i njesise se kontrollit

Page 22: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Sinjalet e kontrollit - output • Brenda ne CPU

—Shkakton zhvendosjen e te dhenave —Aktivizon funksione specifike

• Drejt busit te kontrollit —Drejt memories —Drejt moduleve I/O

Page 23: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Shembull i sekuences se sinjaleve te kontrollit- Ngarkimi(Fetch) • MAR <- (PC)

—Njesia e kontrollit aktivizon sinjale qe hapin porten e PC dhe MAR

• MDR <- (memory) —Hapet porta ndermjet MAR-it dhe busit te

adresave —Gjenerohet sinjali i leximit te memories —Hapet porta ndermjet busit te te dhenave dhe

MDR

Page 24: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Rrugezimet e te dhenave dhe sinjalet e kontrollit

D

Page 25: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Organizimi i brendshem • Zakonisht nje bus i vetem i brendshem • Portat kontrollojne levizjen e te dhenave,

ne bus dhe jashte tij • Sinjalet e kontrollit kontrollojne

transferimin e te dhenave nga dhe drejt busit te jashtem

• Regjistrat e perkohshem jane te nevojshem per punen e ALU

Page 26: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Bus i brendshem i CPU

Page 27: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Ekzekutimi i nje instruksioni te plote

Add (R3), R1

Page 28: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Organizimi me disa buse

Page 29: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Implementimi i Kablluar(1) • Hyrjet e njesise se kontrollit • Flamujt dhe busi i kontrollit

—Cdo bit ka nje kuptim • Instruction register

—Opcodi shkakton sinjale kontrolli te ndryshme per instruksione te ndryshme

—Llogjika e njejte per cdo opcod —Dekoderat marrin hyrjen dhe prodhojne nje

dalje —n hyrje binare dhe 2n dalje

Page 30: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Implementimi i Kablluar(2) • Gjeneruesi i hapave

—Sekuence periodike impulsesh —Mat kohezgjadjen e mikro-operacioneve —Duhet te jete mjaftueshmerisht e gjate per te

lejuar perhapjen e sinjaleve —Sinjale kontrolli te ndryshme ne kohe te

ndryshme brenda ciklit te instruksionit —Duhet nje numrator me sinjale te ndryshme

kontrollit per castet t1, t2 etj.

Page 31: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Njesia e kontrollit me hyrjet e dekoduara

Page 32: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Probleme me projektimet e kablluara • Sekuenca komplekse • E veshtire per tu projektuar dhe testuar • Projektim jo fleksibel (sot e permiresuar) • Veshtire per te shtuar instruksione te reja

Page 33: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Kontrolli i mikroprogramuar

• Perdor sekuenca mikro-operacionesh per te kontrolluar operacionet komplekse

• Mikro-operacionet percaktohen si mikroinstruksione apo fjale kontrolli

• Quhet ndryshe mikroprogramim ose firmware

Page 34: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Implementimi (1) • Gjithcka cfare ben njesia e kontrollit eshte

gjenerimi i nje grupi sinjalesh kontrolli • Cdo sinjal kontrolli eshte 1 ose 0 • Perfaqeso cdo sinjal kontrolli me 1 bit • Kemi nje fjale kontrolli per cdo mikro-

operacion • Per cdo instruksion makine kemi nje

sekuence fjalesh kontrolli • Shto nje adrese per te specifikuar mikro-

operacionin qe vijon por ne varesi te kushteve

Page 35: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Implementimi (2) • Sot mikroprocesoret e medhenj

—Shume instruksione dhe hardware-in perkates —Shume pika kontrolli qe duhet te manipulohen

• Kjo rezulton ne nje memorie kontrolli qe —Permban nje numer te madh fjalesh

– Qe i korespondojne numrit te instruksioneve qe do te ekzekutohen

—Ka nje gjeresi te madhe te fjales – Per shkak te numrit te madh te pikave te kontrollit

Page 36: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Organizimi i njesise se kontrollit

Page 37: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Gjeresia e fjales ne mikroprogramim

• Bazohet kryesisht ne tre faktore —Numri maksimal i mikro-operacioneve qe

mundesohen ne paralel —Menyra se si informacioni i kontrollit

perfaqesohet ose enkodohet —Menyra se si adresa e mikro-instruksionit

tjeter jepet

Page 38: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Tipet e mikroinstruksioneve • Cdo mikro-instruksion perfaqeson nje (ose

pak) mikro-operacione qe do te kryen — (mikro-programimi vertikal)

• Cdo mikro-instruksion perfaqeson disa mikro-operacione qe do te kryen ne paralel —(mikro-programimi horizontal)

Page 39: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Formatet e mikro-instruksioneve

Page 40: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Mikro-programimi vertikal

• Gjeresia eshte e vogel • n sinjale kontrolli perfaqesohen nga log2 n

bite • Aftesi e kufizuar per te shprehur

paralelizem • Enkodimi i nje sasie te madhe

informacioni kontrolli kerkon nje dekoder jashte memories per te identifikuar linjat e kontrollit qe manipulohen

Page 41: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Mikro-programimi horizontal

• Fjala ne memorie eshte e gjere • Shkalle e larte mundesie per paralelizim • Enkodim i paket i informacionit te

kontrollit

Page 42: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Kompromise • Ndajme sinjalet e kontrollit ne disa grupe • Cdo grup implementohet si nje fushe e

vecante ne fjalen ne memorie • Mbeshtet nje nivel te mire paralelizmi pa

nje kompleksitet te madh

Page 43: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Organizimi i memories se kontrollit

Page 44: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Funksioni i njesise se kontrollit • Njesia sekuenciale gjeneron nje komande leximi • Fjala qe specifikohet nga adresa ne regjistrin e

kontrollit, lexohet dhe ruhet ne regjistrin buffer te kontrollit

• Regjistri buffer i kontrollit gjeneron sinjalet e kontrollit dhe adresen e fjales te kontrollit pasaardhese

• Adresa e re ngarkohet nga njesia sekuenciale ne regjistrin buffer te kontrollit bazuar ne informacionin e fjales se kontrollit dhe flamujt e ALU

Page 45: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Vendimi per adresen e ardhshme • Ne varesi te flamujve te ALU dhe regjistrit

buffer te kontrollit —Merret instruksioni i ri

– Shtohet me 1 regjistri i adreses se kontrollit —Kerce tek rutina e re bazuar ne mikro-

instruksionin jump – Ngarko fushen e adreses nga regjistri buffer ne

regjistrin e adreses —Kerce tek rutina e instruksionit makine

– Ngarko regjistrin adrese bazuar ne opcodin ne IR

Page 46: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Funksionimi i njesise se mikroprogramuar te kontrollit

Page 47: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Avantazhet dhe disavantazhet e mikroprogramimit • Thjeshtezon projektimin e njesise se

kontrollit —Me e lire —Ka pak probabilitet per gabime

• Me e ngadalte

Page 48: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Detyrat qe kryhen nga njesia e kontrollit e mikroprogramuar

• Perzgjedhja e mikro-instruksioneve • Ekzekutimi i mikro-instruksioneve • Duhet te konsiderohet mundesia per ti

bere te dyja ne paralel

Page 49: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Konsiderata te ndryshme

• Madhesia e mikro-instruksioneve • Koha e gjenerimit te adreses

—Percaktuar nga regjistri i instruksioneve – Njehere per cikel pasi ngarkohet instruksioni

—Adresa e ardhshme sekuenciale —Kercimet

– Te kushtezuara dhe te pakushtezuara

Page 50: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Teknikat e zgjedhjes sekuenciale • Adresa e memories se kontrollit duhet te

gjenerohet bazuar ne mikro-instruksionin e momentit, flamujt e kushteve, permbajtjet e IR.

• Ne varesi te formatit te adreses —Dy fusha adrese —Nje fushe e vetme adrese —Formati variabel

Page 51: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Llogjika e kontrollit te kerc.: Dy fusha adresash

Page 52: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Llogjika e kontrollit te kerc.: Nje fushe adresash

Page 53: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Llogjika e kontrollit te kerc.: Format variabel

Page 54: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Teknika te ndryshme enkodimi te mikro-ins. • Mikroinstrksioni organizohet si nje grup fushash • Cdo fushe permban nje kod • Aktivizon nje ose me shume sinjale kontrolli • Formati i organizimit me fusha te pavarura

—Fushat tregojne nje grup veprimesh —Veprimet nga fusha te ndryshme mund te

ndodhin njekohesisht • Alternativa: veprimet qe percaktohen nga nje

fushe mund te jene perjashtues —Vetem nje veprim i specifikuar nga nje fushe

mund te ndodhi ne nje kohe

Page 55: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Enkodimi direkt i mikro-instruksioneve

Page 56: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Enkodimi indirekt i mikro-instruksioneve

Page 57: Leksioni v Arkitektura e Kompjuterave 2014 UPT

Literatura 1. Kapitulli 4, Arkitektura e Kompjuterave

(A.Cami) 2. Materiale shtese ne website-in e kursit