Você está na página 1de 23

SVEUILITE U MOSTARU

FAKULTET STROJARSTVA I RAUNARSTVA

Arhitektura i organizacija
digitalnog raunala
Nastavnik: Prof.dr.sc. Sven Gotovac
Asistent: Goran Kraljevi, dipl.ing.ra.

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/1

Projektiranje procesora

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/2

Koraci u procesu projektiranja procesora

Neformalni opis procesora i njegovih naredbi.


Formalan opis naredbi na programerskoj razini, apstraktan
RTN.
Specifikacija putova podataka na razini vieg jezika kojim
je mogue ostvariti apstraktno opisan procesor iz
prethodne toke.
Definiranje konkretnog RTN-a za svaku pojedinu naredbu
polazei od odreene konfiguracije putova podataka.
Projektiranje logikih sklopova (polazei od konkretnog
RTN opisa naredbi) i specifikacija potrebnih upravljakih
signala.
Definiranje upravljake sekvence svake pojedine naredbe.
Projektiranje upravljake jedinice koja generira (prema
zadanom vremenskom dijagramu) upravljaku sekvencu.

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/3

Jedno-sabirnika mikroarhitektura SRC-a

Osnovni podsustavi raunala su:


centralna procesna jedinica (CPU),
glavna memorija i
ulazno/izlazni ureaji.

Putovi podataka (data path)


su spremnici i meuveze koji se
koriste u procesu promjena
podatka kojima se realiziraju
naredbe.
Putovi podataka su povezani s
upravljakom jedinicom.

Upravljaka jedinica dobiva


informacije, signale, od putova
podataka temeljem kojih generira
upravljake signale.

Upravljaki signali upravljaju


tokovima podataka unutar CPU-a,
izmeu CPU-a i glavne memorije,
te izmeu CPU-a i U/I ureaja.

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/4

Jedno-sabirnika mikroarhitektura SRC-a

Postoje dodatni spremnici


koji nisu opisani
apstraktnim RTN opisom:
A, C, MA, MD.

Spremnici A i C su potrebni
u mikroarhitekturi za
privremenu pohranu
operanda i rezultata
prilikom obavljanja ALU
naredbi.
MA (memory address) i
MD (memory data)
koriste se kao meuveza s
memorijom i
ulazno/izlaznim ureajima.
MA sadri memorijsku
adresu operanda
MD je meuspremnik
podataka koje ulaze u CPU
ili izlaze iz njega

Ak.god. 2011/2012

31

R0

31..0
32

31

PC
32 32 BITOVNA
SPREMNIKA
OPE NAMJENE

PUTOVI PODATAKA
31

IR

R31

A
31

ALU
C

MA

NA MEMORIJSKI SUSTAV
31

MD
C

Arhitektura i organizacija digitalnog raunala

V/5

Pribavi i izvri (fetch & execute)


Raunalo se tijekom izvoenja programa uvijek nalazi u jednoj od
dvije mogue faze (ili stanja): PRIBAVI ili IZVRI.

PRIBAVI tijekom te faze upravljaka jedinica dohvaa (pribavlja)


instrukciju iz memorije

IZVRI tijekom te faze izvrava se instrukcija koja je bila dohvaena u


prethodnoj fazi PRIBAVI (podaci dohvaeni iz memorije ili poslani memoriji
tumae se kao operandi, odnosno rezultati).

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/6

Apstraktan i konkretan RTN

Apstraktan RTN
Apstraktan opis je potpuno neovisan o domeni implementacije
i definira statika svojstva procesora (spremnike i memoriju)
te dinamika svojstva (operacije)
Konkretan RTN
Konkretan RTN opisuje detalje prijenosa podataka izmeu
spremnika, odnosno radnje koji se dogaaju na putovima
podataka i rezultiraju konanim efektom obrade
Proces izvoenja naredbe je osnovna jedinica apstraktnog
opisa, dok koraci konkretnog RTN-a odgovaraju
aktivnostima sinkroniziranim s procesorskim taktom.

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/7

Apstraktan RTN naredbe za zbrajanje add

Apstraktni RTN:
(IR M[PC]: PC PC + 4; izvoenje_naredbe);
izvoenje_naredbe := (

add (:= op = 12) R[ra] R[rb] + R[rc]:

Za primijetiti je da nije opisano kako procesor izvodi zbrajanje.


To ovisi iskljuivo o samoj realizaciji putova podataka.

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/8

Konkretan RTN naredbe za zbrajanje add

Konkretan RTN opis naredbe za zbrajanje (za procesor


temeljen na jednosabirnikoj mikroarhitekturi)

Na konkretnom sklopovlju dohvat i izvoenje naredbe add zahtijeva


est koraka (tri za dohvat naredbe i tri za njeno izvoenje)
Prva tri koraka (koja predstavljaju dohvat naredbe) su identina za
svaku naredbu kod ovakve mikroarhitekture

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/9

Konkretan RTN naredbe za zbrajanje add

1)

Postavi sadraj PC-a i upii u MA. Ujedno inkrementiraj sadraj


PC-a pomou ALU i rezultat pohrani u privremeni spremnik C.

2)

Oitaj sadraj memorijske lokacije na adresi na koju pokazuje


sadraj MA i upii u meuspremnik MD. Postavi sadraj
privremenog spremnika C na sabirnicu i upii u PC.

3)

Postavi sadraj MD-a na sabirnicu i upii u IR. Sklopovi sada


dekodiraju naredbu i zakljuuju da se radi o zbrajanju.

4)

Postavi sadraj spremnika rb na sabirnicu i upii ga u


privremeni spremnik A.

5)

Postavi sadraj spremnika rc na sabirnicu, naredi ALU da


izvede zbrajanje sadraja privremenog spremnika A i sadraja
na sabirnici te rezultat upii u privremeni spremnik C.

6)

Postavi sadraj spremnika C na sabirnicu i upii ga u spremnik


ra.

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/10

Aritmetike naredbe

Naredba za neposredno zbrajanje addi

Naredba za neposredno zbrajanje pribraja sadraju spremnika rb


konstantu c2 koja je sastavni dio naredbe.
addi (:= op = 13) R[ra] R[rb] + c216..0 {2ki
komplement, proirenje predznaka}:

Konkretan RTN opis:

Naredbe add i addi se razlikuju samo u koraku T4 kada se drugi


operand na sabirnicu postavlja direktno iz spremnika naredbe (IR)
uz proirenje predznaka bitova 17..31

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/11

Naredbe za pristup memoriji

load i store

Apstraktan RTN opis:


ld (:= op = 1) R[ra] M[disp]: Upii u spremnik iz memorije
st (:= op = 2) M[disp] R[ra]: Upii u memoriju iz spremnika
disp31..0 := ((rb = 0) c216..0 {proirenje predznaka}:
(rb 0) R[rb] + c216..0 {proirenje predznaka}):

Konkretan RTN opis:

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/12

Naredbe za pristup memoriji

load i store

T0-T2 Dohvat naredbe

T3 U etvrtom koraku (T3) odreuje se baza adrese. U privremeni


spremnik A upisuje 0 ako je rb = 0, odnosno sadraj spremnika rb ako je
rb 0
T4 U petom koraku (T4) izrauna se efektivna adresa pribrajanjem
konstante (pomaka) koja je sastavni dio naredbe (uz proirenje njenog
predznaka) s bazom koja se nalazi upisana u privremenom spremniku A.
T5 U estom koraku (T5) upisuje se memorijska adresa u spremnik
MA.
T6-T7 Sedmi i osmi korak razlikuje se kod naredbi ld i st u smjeru
prijenosa podatka.
Kod naredbe ld, podatak se iz memorije prebacuje u meuspremnik
MD u sedmom koraku (T6) te iz MD u odredini spremnika ra u
osmom koraku (T7)
Kod naredbe st, podatak se iz spremnika ra prebacuje u MD u
sedmom koraku (T6) te u osmom koraku (T7) iz MD u memoriju

Napomena: MD je poseban spremnik koji moe itati sa i pisati na dvije


sabirnice (unutarnju sabirnicu procesora i memorijsku sabirnicu)

Arhitektura i organizacija digitalnog raunala

Ak.god. 2011/2012

V/13

Primjeri

add R1,R2,R3

sub R5,R7,R9

T0

MAPC: CPC+4;

MAPC: CPC+4;

MAPC: CPC+4;

T1

MDM[MA]: PCC;

MDM[MA]: PCC;

MDM[MA]: PCC;

T2

IRMD;

IRMD;

IRMD;

T3

AR2;

AR7;

AR3;

T4

CA+R3;

CAR9;

CA+5;

T5

R1C;

R5C;

R1C;

Ak.god. 2011/2012

addi R1,R3,5

Arhitektura i organizacija digitalnog raunala

V/14

Primjeri

ld R7,100

st R7,100

T0

MAPC: CPC+4;

MAPC: CPC+4;

T1

MDM[MA]: PCC;

MDM[MA]: PCC;

T2

IRMD;

IRMD;

T3

A0;

A0;

T4

CA+100;

CA+100;

T5

MAC;

MAC;

T6

MDM[MA];

MDR7;

T7

R7MD;

M[MA]MD;

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/15

Primjeri

ld R7,12(R3)

st R7,12(R3)

T0

MAPC: CPC+4;

MAPC: CPC+4;

T1

MDM[MA]: PCC;

MDM[MA]: PCC;

T2

IRMD;

IRMD;

T3

AR3;

AR3;

T4

CA+12;

CA+12;

T5

MAC;

MAC;

T6

MDM[MA];

MDR7;

T7

R7MD;

M[MA]MD;

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/16

Upravljaka jedinica

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/17

Upravljaka sekvenca jednosabirnikog SRC-a

Upravljakom sekvencom se realizira procedura dohvata i


izvoenja naredbe.
Nakon definiranja upravljake sekvence svake pojedine
naredbe, pristupa se projektiranju upravljake jedinice koja
ima zadatak generirati projektiranu upravljaku sekvencu prema
zadanom vremenskom dijagramu.
Upravljaka sekvenca je slijed signala kojim se upravlja
putovima podataka.
Upravljaki signali upisuju sadraj u spremnike (strobe) te
postavljaju sadraj spremnika na odreenim linijama ( gate).

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/18

Upravljaka jedinica jednosabirnikog SRC-a

Upravljaka jedinica je u svakom pogledu srce procesora.


Upravljaka jedinica prihvaa kao ulaz signale koji opisuju to
procesor mora raditi i u kojem se stanju procesor trenutno nalazi, te
generira signale potrebne za voenje rada procesora.
Takt Strt ekaj Izvreno
Logika vremenskog
voenja
Takt

IR OpKod

signali s
putova podataka
Dekoder

Dozvoli

ld

shc br

uvjet

n=0

Brojilo

Generator koraka
Dekoder
upravljakih
koraka

T0
T1
T2

Enkoder
upravljakih
signala

T4
Tn-1

Upii

Postavi
u nulu

Generirani upravljaki signali

PCin

ekaj

Gra

ADD

R out

PCout

Ak.god. 2011/2012

Prekidi
i ostali
vanjski
signali

Arhitektura i organizacija digitalnog raunala

V/19

Upravljaka jedinica jednosabirnikog SRC-a

Izlazni signali iz upravljake jedinice su upravljaka sekvenca


naredbe koja se izvodi.
Oni se generiraju na osnovu etiri osnovna izvora informacija:
Polje operacijskog koda naredbe odnosno pet bita
najveeg znaenja spremnika naredbe, IR.
Preostali signali s putova podataka tu spada rezultat
usporedbe uvjeta, uvjet, posmano brojilo n, tj. uvjetni kodovi
kod procesora sa statusnim i uvjetnim spremnikom.
Podatak o koraku naredbe koji se trenutno izvodi,
odnosno izlaz iz generator koraka.
Vanjski signali kao to su:
Strt, ekaj, Izvreno,
zahtjev za prekidom, Int
zahtjev za postavljanjem u poetno stanje, Reset.

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/20

10

Upravljaki signali

Spremnici ope namjene

Gra, Grb i Grc upravljaki signali

Rin se koristi kod upisa u spremnik

Rout se koristi kod postavljanja

BAout (BA Base Address) se

koji spajaju jedno od polja (ra, rb, rc)


na 5 na 32 dekoder koji odreuje
odabrani spremnik (R0-R31).
Ovaj signal koristi se kod upisa sa
sabirnice u odabrani spremnik, kao i
kod postavljanja sadraja odabranog
spremnika na sabirnicu.

sadraja spremnika na sabirnicu

koristi za prilagodbu prorauna bazne


adrese iz koje se proraunava
efektivna adresa.
BAout postavlja nule na sabirnicu ako
je R0 odabran ili sadraj odabranog
spremnika ukoliko je selektiran jedan
od spremnika R1..R31

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/21

Upravljaki signali

Memorijski meusklop

MAin aktiviranjem ovog signala upisuje se sadraj sa procesorske sabirnice u

MDbus i MDrd odabiru smjer iz kojeg se podatak upisuje u spremnik MD

Izlaz spremnika MD moe se takoer spojiti ili na procesorsku sabirnicu aktiviranjem


signala MDout, ili na memorijsku podatkovnu sabirnicu aktiviranjem signala MDwr.

Tri dodatna signala vezana su uz memorijski meusklop (njihov izvor ili odredite je
upravljaka jedinica) su:

spremnik MA (sadraj spremnika je stalno prisutan na memorijskoj adresnoj sabirnici)


(MDbus s procesorske sabirnice; MDrd s memorijske podatkovne sabirnice).
U jednom trenutku samo jedan od navedenih signala smije biti aktivan

itaj (Read) signalizira memoriji da postavi sadraj memorijske lokacije


odreene sadrajem MA spremnika na podatkovnu memorijsku sabirnicu.

Pii (Write) signalizira memoriji da uita sadraj s podatkovne memorijske


sabirnice u memorijsku lokaciju odreene sadrajem MA spremnika.

Izvreno (Done) signalizira procesoru da je memorijski sustav zavrio tekuu


transakciju. Kod sustava koji imaju dovoljno brzu memoriju ili je memorija
poznate brzine odziva ovaj signal nije neophodan.

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/22

11

Upravljaki signali

Memorijski meusklop

32

32

MD bus

32

MD rd

32

32

32

MD

itaj

clk Q

Izvreno

Upii
32

32

Podaci
31..0

MD wr
MD out

Adrese

31..0

MD
MA in

Memorijska sabirnica

Pii

clk Q

Procesorska
sabirnica
31..0

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/23

Upravljaki signali

Selektiranje Op i konstanti c1 i c2 iz spremnika naredbe:


IRin, c1out, c2out upravljaki signali za selektiranje operacijskog
koda i konstanti c1 i c2 iz spremnika naredbe IR (Instruction Register).
Operacijski kod naredbe direktno se vodi na upravljaku
jedinicu.

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/24

12

Upravljaki signali

Aritmetiko-logika jedinica (i njoj pripadajui spremnici)

ALU je realizirana u kombinacijskoj


logici, to znai da je vrijednost na
izlazu samo funkcija vrijednosti na
ulazu. Odabir funkcije ostvaruje se
aktiviranjem jednog od 11
upravljakih signala.
Signal INC4 inkrementira
vrijednost s B ulaza za 4.
Ovaj signal koristi se za
inkrementiranje sadraja
programskog brojila.
Nakon to se stanje na izlazu ALU
stabilizira (vrijeme odziva) rezultat
operacije se upisuje u privremeni
izlazni spremnik C.

Ak.god. 2011/2012

32

A
A in

clk Q
32

ADD
SUB
AND
...
NOT
C=B
INC4

32

A
11

32

ALU
C
32

32

32

C
C in
C out

Arhitektura i organizacija digitalnog raunala

clk Q

Procesorska
sabirnica
31..0

V/25

Uobiajena veza ALU statusni registar


Primjer

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/26

13

Upravljaka sekvenca jednosabirnikog SRC-a


Dohvat naredbe

Konkretan RTN i upravljaka sekvenca dohvata naredbe:

Signal itaj (Read) dojavljuje memoriji da postavi sadraj lokacije odreene


sadrajem adresne sabirnice na podatkovnu sabirnicu.
Signal ekaj (Wait) u koraku T1 umetnut je iz razloga to postoji
mogunost da je memorija sporija od procesora pa je potrebno ekati
odreeni broj taktova za njen odaziv.
Sporija memorija dojavljuje da je postavila sadraj odabrane memorijske
lokacije na podatkovnu sabirnicu aktiviranjem signala Izvreno (Done).
Po zavretku ovog signala potrebno je upisati sadraj s podatkovne sabirnice
u MD spremnik aktiviranjem signala MDrd i Upii.

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/27

Upravljaka sekvenca jednosabirnikog SRC-a


Naredba za zbrajanje (add)

U koraku T3 signalima Grb i Rout odabire se spremnik rb i postavlja se njegov


sadraj na sabirnicu. Isti sadraj se zatim upisuje u privremeni spremnik A
aktiviranjem signala Ain.
Slino, u koraku T5 se nakon postavljanja sadraja spremnika C na sabirnicu
aktiviranjem signala Cout, odabire spremnik ra signalom Gra i upisuje u njega
sadraj sa sabirnice aktiviranjem signala Rin.
Signal Kraj signalizira upravljakoj jedinici da je naredba izvedena.
Sve aritmetike i logike naredbe koriste slinu upravljaku sekvencu.
Napomena: Indeks out se koristi za postavljanje sadraja spremnika na sabirnicu ili
odreeni ulaz (npr. ALU) dok se indeks in koristi za upis u spremnik.

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/28

14

Upravljaka sekvenca jednosabirnikog SRC-a


Zbrajanje sadraja spremnika i konstante (addi)

U koraku T4 drugi operand se dohvata iz dijela spremnika naredbe (IR)


aktiviranjem signala c2out
Konstanti se sklopovski proiruje predznak (16-ti bit) na preostale bitove
17..31

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/29

Upravljaka sekvenca jednosabirnikog SRC-a


Upis u spremnik iz memorije (load)

U koraku T3 odabire se iz dijela spremnika naredbe spremnik rb, a njegov sadraj


se postavlja na sabirnicu ne pomou signala Rout, nego pomou signala BAout.
Ovim rjeenjem se na sabirnicu postavlja sadraj odabranog spremnika ukoliko nije
odabran R[0] (kada se na sabirnicu postavljaju sve 0). Ova vrijednost se upisuje u
privremeni spremnik A.
U sljedeem koraku (T4) na sabirnicu se postavlja (iz spremnika naredbe IR)
konstanta c2 kojoj se proiri predznak i ona se pribroji sadraju privremenog
spremnika A. Na kraju ovog koraka u privremenom spremniku C upisana je efektivna
adresa operanda iz memorije.
Posljednja tri koraka slina su dohvatu naredbe.

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/30

15

Upravljaka sekvenca jednosabirnikog SRC-a


Upis sadraja spremnika u memoriju (store)

Naredba za upis sadraja spremnika na memorijsku lokaciju (store)


slina je opisanoj naredbi upisa sadraja memorijske lokacije u spremnik

(load).

Razlika je u koracima T6 i T7
U koraku T6 upisuje se sadraj odabranog spremnika u spremnik MD
aktiviranjem signala MDbus i Upii.
U sljedeem koraku T7 generira se signal Pii (Write), a signal ekaj
podrazumijeva odgovor memorije da je upisan sadraj s podatkovne sabirnice
postavljanjem signala Izvreno.

Arhitektura i organizacija digitalnog raunala

Ak.god. 2011/2012

V/31

Upravljaki signali i njihov vremenski raspored (clocking & timing)

Podaci se obrauju na nain da se prenose iz jednog spremnika preko sabirnice


(potencijalno kroz odreenu kombinacijsku logiku) u drugi spremnik
Primjer vremenskog rasporeda aktivnosti koji se dogaaju du putova podataka
izvorini meusklop
spremnik
D

n-bitovna sabirnica
n

R1

logika

Kombinacijska
logika

R2
clk Q

clk Q

kanjenje
kroz djelove
putova
podataka

odredini
spremnik

kanjenje
kroz
izlazni
meusklop

t me

kanjenje
zbog propagacije
preko sabirnice

t sab

kanjenje kroz
kombinacijsku logiku

tkanjenje
spremnik

t komb

ts

vrijeme zadravanja spremnika t zad


vrijeme postavljanja spremnika t post
vrijeme vaenja izlaza spremnika R1 t R1vaei

minimalni irina impulsa t w


minimalni irina takta t min

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/32

16

Upravljaki signali i njihov vremenski raspored (clocking & timing)

Prikazano je kanjenje podatka koji se iz spremnika R1 pomou


sabirnikog meusklopa (sklopa s tri stanja) preko sabirnice prenosi
na obradu kombinacijskoj logici. Rezultat obrade pohranjuje se u
odredini spremnik R2.

Svaki od navedenih dijelova unosi odreeno vremensko kanjenje:


tme kanjenje kroz sabirniki meusklop, odnosno izlazni
meusklop spremnika R1
tsab kanjenje zbog propagacije signala preko sabirnice
tkomb vrijeme propagacije kroz kombinacijsku logiku
ts vrijeme potrebno da se signal upie u odredini spremnik

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/33

Upravljaki signali i njihov vremenski raspored (clocking & timing)

Procjena minimalnog takt perioda


Minimalni period takta za zadani prijenos podatka odreen je
vremenom propagacije signala preko putova podataka.
tmin = tme + tsab + tkomb + ts
Vrijednosti tmin se obino doda jo 10% (radi sigurnosti) i onda se
moe izraunati maksimalna frekvencija takta (1/tmin)

Procjena najkraeg mogueg signala za upis


tR2vaei = tme + tsab + tkomb + tpost
Nakon to protekne navedeno vrijeme potrebno je postaviti signal za
upis u spremnik koji mora trajati minimalno tw

Minimalno vrijeme spajanja izlaza spremnika R1 na sabirnicu


tR1out = tme + tsab + tkomb + tpost + tzad

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/34

17

Mikroprogramiranje

Mikroprogramiranje najbolja (sustavna) metoda za


realizaciju upravljake jedinice

Mikroprogram slijed mikroinstrukcija koje su pohranjene u


upravljakoj (mikroprogramskoj) memoriji.

Mikroinstrukcija kodirano predstavljena (nizom bitova) jedna ili


vie mikrooperacija. Mikroinstrukcija pohranjena u upravljakoj
memoriji naziva se i mikrorije (engl. Microword) ili upravljaka rije
(engl. Control word).

Mikrooperacija elementarna (nedjeljiva) operacija izravno i u


potpunosti sklopovski podrana.

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/35

Dvo- i tro- sabirnika


SRC arhitektura

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/36

18

Dvosabirniki SRC

Informacije, podaci, prenose se iz


spremnika preko B sabirnice,
nazvane izlazna sabirnica, a
upisuju se u spremnike preko A
sabirnice, nazvane ulazna
sabirnica.

Ova arhitektura na zahtijeva izlazni


meuspremnik ALU s obzirom da se
rezultat moe direktno preko A
sabirnice upisati u odredini
spremnik.

Prijenos podataka izmeu


spremnika u ovoj arhitekturi
ostvaruje se postavljanjem podatka
na izlaznu sabirnicu i upisom
podataka s ulazne sabirnice.
Vezu izmeu ovih dviju sabirnica
ostvaruje ALU.

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/37

Dvosabirniki SRC

Naredba za zbrajanje add


Kako nije potrebna pohrana rezultata zbrajanja
u meuspremnik napravljena je uteda u
jednom koraku (korak T4 zamjenjuje dva
koraka u jednosabirnikoj arhitekturi T4 i T5).
Meutim, za realizaciju navedenog potrebno je
uz dodatnu sabirnicu i proirenje upravljakog
sklopovlja (potrebno je imati dva nezavisna 532 dekodera da bi se u koraku T4 odabrala dva
spremnika).

Naredba za upis sadraja memorijske lokacije u spremnik ld


Takoer je napravljena uteda u jednom
koraku (korak T4 zamjenjuje dva koraka u
jednosabirnikoj arhitekturi T4 i T5).

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/38

19

Dvosabirniki SRC

Poboljanje performansi i sloenost izvedbe

Ubrzanje zbog smanjenja prosjenog broja taktova (ciklusa) po naredbi:


T
T
%ubrzanje 1 sabirnika 2 sabirnika 100
T2 sabirnika

Za pretpostaviti je da se broj naredbi, IC (Instruction Count), ne mijenja prelaskom


na dvo-sabirniki sustav
U nedostatku preciznijih podataka napravit e se pretpostavka da su prosjene
naredbe sline naredbi ld te da imaju ubrzanje s osam na sedam ciklusa
%ubrzanje

T vrijeme izvoenja IC CPI

IC 8 IC 7
100 14%
IC 8

Ako se pretpostavi da je zbog uvoenja druge sabirnice bilo potrebno poveati


trajanje takta za 10%, odnosno da je 2 = 1.11
%ubrzanje

IC 8 1 IC 7 1.1 1
100 3.9%
IC 8

Uzimajui u obzir dodatnu sloenost sklopova proizlazi zakljuak da


se praktiki ne isplati uvoditi drugu sabirnicu.

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/39

Trosabirniki SRC

Uvoenjem tree
sabirnice u arhitekturu
SRC-a mogu se
istovremeno na ALU
dovesti oba operanda i
rezultat upisati u
odredini spremnik.

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/40

20

Trosabirniki SRC

Naredba za zbrajanje add

Tro-sabirnikom arhitekturom smanjen je ukupan broj koraka na svega tri te


je eliminiran i privremeni spremnik A.
U koraku T0 izvode se paralelno dvije aktivnosti: inicijalizacija oitanja
naredbe i inkrementiranje programskog brojila.
Aritmetika operacija se izvodi u jednom koraku (T2).

Naredba za upis sadraja memorijske lokacije u spremnik ld

Arhitektura i organizacija digitalnog raunala

Ak.god. 2011/2012

V/41

Trosabirniki SRC

Poveanje performansi

Analiza naredbe ld pokazala je smanjenje broja koraka s osam na etiri.


Uz istu grubu pretpostavku da se radi o prosjenom smanjenju broja koraka te da
uvoenje novih sabirnica rezultira u poveanju perioda takta za 10% dobiva se
ubrzanje
%ubrzanje

IC 8 1 IC 4 1.1 1
100 82%
IC 8

Neka je nova pretpostavka da je potrebno tri ciklusa za pristup memoriji umjesto


jedan kako je prvobitno pretpostavljeno (potrebna su dva ciklusa za ekanje)
Neka je 20% naredbi koje upisuju sadraj iz memorije u spremnik (ld) te da kod
upisa u memoriju nema ekanja. Kako svaka naredba mora izvest dohvat naredbe iz
memorije, te jo 20% naredbi ita iz memorije prosjean broj ciklusa po naredbi
iznosi:
CPI1 sabirnica 8 2(dohvat naredbe) 0.2 2(naredba ld) 10.4
CPI3 sabirnice 4 2(dohvat naredbe) 0.2 2(naredba ld) 6.4

%ubrzanje

IC 10.4 1 IC 6.4 1.1 1


100 48%
IC 8

to predstavlja znaajno poveanje performansi!

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/42

21

Glavni dijelovi procesora ...

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/43

Pitanja i zadaci za ponavljanje

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/44

22

Pitanja i zadaci za ponavljanje

1) Na arhitekturi prikazanoj na slici, navedite i objasnite korake za dohvat i


izvoenje naredbe: ld R3, 24(R5) i navedite koje upravljake signale
je potrebno generirati. Objasnite namjenu registara: PC, IR, MA i MD.

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/45

Pitanja i zadaci za ponavljanje

2) Navedite u koje dvije faze (stanja) se raunalo moe nalaziti prilikom


izvravanja nekog programa. Na koji nain raunalo zna da li je podatak
dohvaen iz memorije: instrukcija (naredba) ili operand ?
3) Navedite korake u procesu projektiranja procesora.
4) Kratko objasnite ulogu upravljake jedinice. Na osnovu kojih podataka
upravljaka jedinica generira izlazne signale?
5) Navedite i objasnite razlike u izvoenju naredbe: add R5, R6, R7
na jedno-sabirnikoj i tro-sabirnikoj mikroarhitekturi.

Ak.god. 2011/2012

Arhitektura i organizacija digitalnog raunala

V/46

23

Você também pode gostar