36
http://vision.fe.uni-lj.si/classes/GSPV GSPV (2) Gradniki sistemov procesnega vodenja Stanislav Kovačič Univerza v Ljubljani Fakulteta za elektrotehniko

Zgradba računalnika

  • Upload
    saniya

  • View
    119

  • Download
    7

Embed Size (px)

DESCRIPTION

Pom. CPE. V/I. Zgradba računalnika. CPE – centralna procesna enota, procesor Pomnilnik Vhodno izhodne enote Sistem povezav oziroma vodil. Pomnilnik. Pomnilnik je del računalnika, ki hrani programe (ukaze in podatke oz. operande), vhodne, vmesne in končne rezultate. - PowerPoint PPT Presentation

Citation preview

Page 1: Zgradba računalnika

http://vision.fe.uni-lj.si/classes/GSPV

GSPV (2)

Gradniki sistemov procesnega vodenja

Stanislav Kovačič

Univerza v Ljubljani

Fakulteta za elektrotehniko

Page 2: Zgradba računalnika

Zgradba računalnikaZgradba računalnika

CPE – centralna procesna enota, procesor Pomnilnik Vhodno izhodne enote Sistem povezav oziroma vodil

V/I CPE Pom.

Page 3: Zgradba računalnika

PomnilnikPomnilnik

Pomnilnik je del računalnika, ki hrani programe (ukaze in podatke oz. operande), vhodne, vmesne in končne rezultate.

Pravimo mu tudi glavni pomnilnik, za razliko od predpomnilnikov, medpomnilnikov (izravnalnikov) in zunanjih pomnilnikov.

Page 4: Zgradba računalnika

PomnilnikPomnilnikNaslov Vsebina

Pomnilnik

0

12

54

7

6

3

N-1

N

Pomnilnik je linearno (enodimenzionalno)

zaporedje pomnilniških besed. Pomnilniško besedo določata naslov in

vsebina. Pomnilniško besedo enolično določa

pomnilniški naslov. Pomnilniška beseda je najmanjša naslovljiva

pomnilniška enota. Naslov se nikoli ne spremeni,

vsebina se lahko spremeni.

CPE ima do (glavnega) pomnilnika naključen (neposreden) dostop.

Page 5: Zgradba računalnika

PomnilnikPomnilnik-pomnilniška beseda-pomnilniška beseda

Vsebino obsega določeno število bitov (bitnih celic) Število bitov v besedi je dolžina pomnilniške besede Dolžina besede omejuje količino informacije, ki jo lahko hrani Število bitov v naslovu omejuje velikost pomnilnika

(naslovni prostor oz. fizično naslovno področje) Podatek pomnilnika: n-bitni naslov in m-bitna beseda 8 bitov = 1 bajt Npr.: 16 bitni naslov in 8 bitna vsebina

an-1 an-2 a0a1a2.... bm-1 bm-2 b0b1b2

....n-bitni naslov m-bitna vsebina

Page 6: Zgradba računalnika

Pomnilnik in CPEPomnilnik in CPE CPE komunicira s pomnilnikom po (pomnilniškem) vodilu.

Vodilo setavljajo: naslovno vodilo, podatkovno vodilo, kontrolno vodilo.

Vsako vodilo obsega določeno število signalov oziroma povezav.

Številu paralelnih povezav rečemo širina vodila.

Ko govorimo o širini računalniškega vodila, največkrat mislimo na

širino podatkovnega vodila in rečemo na primer

8-bitni, 16-bitni, ..., računalnik.

Page 7: Zgradba računalnika

CPE – dostop do pomnilnikaCPE – dostop do pomnilnika

Dogajanja na vodilu vodi CPE. Na njeno pobudo se opravi prenos

podatka iz (beri) ali v pomnilnik (piši) – dostop do pomnilnika.

Naslov

Podatek

PomnilnikCPEAR

DR

Beri/pišiKE

1. CPE postavi naslov pomnilniške besede na

naslovno vodilo - naslovi pomnilnik.

2. CPE določi smer prenosa, postavi signal beri/piši.

3. CPE poskrbi za prenos podatka po podatkovnem vodilu.

AR:

Naslovni

register

DR:

Podatkovni

register

Page 8: Zgradba računalnika

Pomnilnik in CPEPomnilnik in CPE

Celotnemu času, ki je potreben za prenos iz/v pomnilnik,

rečemo pomnilniški cikel,

operaciji sami pa dostop do pomnilnika.

Dostop do pomnilnika se izvede časovno nedeljivo –

atomično. Ko enkrat začne, konča brez prekinitve.

Hitrost dostopa (hitrost pomnilnika) merimo v številu prenešenih

pomnilniških besed na časovno enoto (sekundo).

dostopa čas1

cikel ipomnilnišk1 dostopahitrost

Page 9: Zgradba računalnika

Pomnilnik in CPEPomnilnik in CPE Čas dostopa (dostopni čas) je čas, ki preteče od trenutka,

ko je dana zahteva za dostop do tedaj, ko je informacija

prisotna ali ni več potrebna.

Dostopni čas za branje je približno enak dostopnemu

času za pisanje.

Zahteva

Pomnilniški cikel

Dostopni čas

Podatek prisoten

ali ni več potreben

Page 10: Zgradba računalnika

PomnilnikPomnilnik-vrste pomnilnikov-vrste pomnilnikov

Glede na obstojnost: Destruktivni – z branjem se informacija izgubi. Nedestruktivni – z branjem se informacija ne izgubi. Dinamični – potrebno občasno osveževanje vsebine. Statični – ni potrebno osveževanje. Ohranljivi – z odklopom se informacija ne izgubi. Neohranljivi – z odklopom se informacija izgubi.

Glede na spremenljivost RAM (Random Access Memory): vsebino se lahko spremeni,

bere in tudi vpiše (SRAM, DRAM, ...). ROM (Read Only Memory): vsebino se lahko samo bere

(ROM, PROM, OTP, EPROM, EEPROM, Flash).

Page 11: Zgradba računalnika

PomnilnikPomnilnik-vrste pomnilnikov-vrste pomnilnikov Bralni pomnilniki

ROM: vsebino se določi (“vpiše”) v postopku izdelave. PROM (Programmable ROM): vsebino se vpiše samo enkrat

s postopkom “programiranja” s programatorjem. OTP (One-Time Programmable): vsebino se vpiše samo enkrat. EPROM (Erasable PROM): vsebino se vpiše s postopkom

programiranja s programatorjem. Vsebino se lahko (večkrat)

briše z osvetlitvijo z UV svetlobo. EEPROM (Electrically Erasable PROM): Vsebino posamezne

pomnilniške besede (bajta) se lahko (večkrat) spremeni

“električno” s programatorjem ali kar v vezju. Flash (EEPROM) (Electrically Erasable PROM): vsebino se

lahko (večkrat) briše električno s programatorjem ali v samem

vezju. Brisanje je možno v celoti ali v blokih.

Page 12: Zgradba računalnika

PomnilnikiPomnilniki-glede na dostop-glede na dostop

Naključen dostop: Procesor ima do vsebine neposreden dostop. Dostopni čas ni odvisen od naslova in je enak za vse naslove. Dostopni čas ni odvisen od zaporedja pomnilniških referenc.

Direkten dostop: Procesor ima do vsebine neposreden dostop. Dostopni čas je odvisen od naslova (disk). Dostopni čas je odvisen od zaporedja referenc.

Sekvenčni dostop: Procesor ima do vsebine posreden dostop. Dostopni čas je odvisen od naslova. Dostopni čas je odvisen od zaporedja referenc. Naslovljena vsebina je dostopna posredno - z dostopom do

podatkov pred njo (trak).

Asociativni dostop, FIFO, LIFO, ..., ?

Page 13: Zgradba računalnika

Centralna procesna enota-CPECentralna procesna enota-CPE CPE v grobem sestavljajo:

kontrolna enota (KE), aritmetično logična enota (ALE), registri.

ALE

KE

R1

R2

Rn

.

.

.

Podatkovno vodilo

Naslovno vodilo

Kontrolno vodilo

URA Programsko dostopni registri sestavljajo programski model procesorja. To je izgled procesorja, kot ga vidi programer, ki programira

v strojnem oz. zbirnem jeziku.

Page 14: Zgradba računalnika

Centralna procesna enota-CPECentralna procesna enota-CPE

CPE časovno vodi potek vseh dogajanj v računalniku: prevzema ukaze iz pomnilnika, jih dekodira in časovno vodi

izvršitev operacije, ki jo zahteva ukaz, prenaša podatke v / iz pomnilnika ter k / od perifernih naprav, se odziva na zahteve za prekinitev izvajanja tekočega zaporedja

ukazov – prekinitve.

ALE

KE

R1

R2

Rn

.

.

.

Ukazi/podatki

K/od pomnilnika

Zahteve za prekinitev

od zunaj

URA

Page 15: Zgradba računalnika

CPE – osnove delovanjaCPE – osnove delovanja

Glavna naloga CPE je izvrševanje ukazov. CPE izvršuje ukaz za ukazom. Ko do konca izvrši tekoči ukaz, začne s prevzemom naslednjega. Času, ki je potreben za izvršitev enega ukaza,

pravimo ukazni cikel. Ukazni cikel sestavljata:

(Ukazno) prevzemni cikel – prevzem ukaza iz pomnilnika, Izvršilni cikel – izvršitev operacije, ki jo zahteva ukaz.

Ukazni cikel

Prevzemni

cikel

Izvršilni

cikel

Page 16: Zgradba računalnika

CPE – osnove delovanjaCPE – osnove delovanja

Zahteva za

prekinitev

Prevzem ukaza

Dekodiranje

ukaza

Izvršitev

ukaza

Prekinitev?

Izvršitev prekini-

tvene operacije

Ukazno

prevzemni

cikel

Izvršilni

cikel

Page 17: Zgradba računalnika

CPE – ukaziCPE – ukazi

Izvršitev ukaza zahteva več strojnih ciklov.

Strojni cikel je čas, ki ga procesor rabi za izvršitev določene operacije: notranje operacije, npr. seštevanje dveh števil, zunaje operacije, dostop do pomnilnika.

Vsi ukazi (v splošnem) ne trajajo enako dolgo.

Ukaz se praviloma izvrši atomično.

Page 18: Zgradba računalnika

CPE – ukaziCPE – ukazi

Ukaz sestavlja določeno število bitov: določilo operacije (operacijska koda) in določilo operandov, ki sodelujejo v operaciji.

Določilo operacije Določila operandov

Polje operacije Polje operandov

Dolžina ukaza

Z obliko ukaza je določeno, kateri biti pomenijo operacijo in kateri operande. CPE ima več ukazov, ki sestavljajo množico oziroma nabor ukazov. Vsi ukazi so lahko ene same oblike ali pa so več različnih oblik. Vsi ukazi so lahko ene same dolžine ali pa so različnih dolžin. En ukaz lahko obsega eno samo pomnilniško besedo ali več besed. Tipično: ukazi različnih dolžin, obsegajo več zaporednih pomnilniških besed.

Page 19: Zgradba računalnika

CPE – programski modelCPE – programski model

Programski model je izgled procesorja s stališča programerja. Sestavljajo ga registri, na katere ima programer z ukazi neposreden vpliv. Tipičen programski model obsega:

vsaj en podatkovni register (akumulator) - A, vsaj en naslovni register (indeksni register) - X, skladovni kazalec (za sistemski sklad) - SP, programski števec (naslov tekočega oz. naslednjega ukaza) - PC, register zastavic oziroma stanja (register pogojnih kod) CCR.

A

X

SP

PC

CCR

Page 20: Zgradba računalnika

CPE – izvrševanje ukazaCPE – izvrševanje ukaza

Napolni akumulator z vsebino pomnilniške besede z naslovom $200 Naj bo pomnilnik 8-biten. Naj bo vsebina pomnilniške besede $7F. Naj bo ukaz 3-bajten, 1 bajt za op.kodo, dva bajta za naslov operanda. Naj bo operacijska koda ukaza $97. Naj bo ukaz na naslovih $100, $101, $102 (Naslov ukaza je $100). Simbolično: A ← ($0200), PC ← PC + 3

97 02 00

100 101 102

Page 21: Zgradba računalnika

CPE – izvrševanje ukazaCPE – izvrševanje ukaza

nedefnepomembno

$100CCR

nepomembno

Pred

$7Fnepomembno

$103CCR

nepomembno

Po

AR←PC, PC←PC+1; prevzem op.kode

DR←(AR), IR←DR; in dekodiranje

AR←PC, PC←PC+1; prevzem naslova

DR←(AR), ORH←DR; operanda, zg.del

AR←PC, PC←PC+1; prevzem naslova

DR←(AR), ORL←DR, operanda, sp.del

AR←OR,DR←(AR),

A←DR; branje podatka

IR – (“skriti”) ukazni register

OR – (“skriti”) operandi register

Page 22: Zgradba računalnika

CPE – izvrševanje ukazaCPE – izvrševanje ukaza

Naslovno v.

Podatkovno v.

0100 0101 0102 0200

97 02 00 7F

0103

Op.k.

1 2 3 4 5 Strojni cikel

Prevzemni cikel Izvršilni cikel

V tem primeru ukazni cikel traja 4 strojne cikle. Prevzemni cikel traja 3 strojne cikle. Izvršilni cikel traja en strojni cikel. Vsi pomnilniški cikli so bralni cikli.

Page 23: Zgradba računalnika

CPE – načini naslavljanjaCPE – načini naslavljanja

Pod načinom naslavljanja razumemo način,

kako je v ukazu podan operand oziroma pravilo,

kako CPE pride do operanda. Načeloma način naslavljanja spada k določilu operanda,

večkrat pa je “skrit” (zakodiran) v operacijski kodi. Osnovni načini naslavljanja (angl. Addressing Modes)

Takojšnje Neposredno (direktno) Posredno (indirektno) Relativno

Page 24: Zgradba računalnika

Načini naslavljanja - takojšnjeNačini naslavljanja - takojšnje

V polju operanda je kar operand (primeren za podajanje konstant)

Določilo

operacijeOperand

Primer: napolni akumulator z vrednostjo $55

CPE - pred

PC

A Nedef.

$100

CPE – po operaciji

PC

A $55

$102

100

101 $55

Pomnilnik

Op.Koda

Page 25: Zgradba računalnika

Načini naslavljanja - neposrednoNačini naslavljanja - neposredno

V polju operanda je naslov operanda (primeren za podajanje spremenljivk)

Določilo

operacije

Naslov

operanda

Primer: napolni akumulator z vsebino pom. besede z naslovom $200

CPE - pred

PC

A Nedef.

$100

CPE – po operaciji

PC

A $55

$103

Pomnilnik

$100

$101 $02

Op.Koda

$200 $55

$102 $00 CPE - pred

PC

A Nedef.

$100

PC

A

$103

Pomnilnik

$100

$101 $02

Op.Koda

$200 $55

$102 $00

$55

Page 26: Zgradba računalnika

Načini naslavljanja - neposrednoNačini naslavljanja - neposredno

Običajno ima CPE več (programsko dostopnih) registrov.

V tem primeru je pri neposrednem načinu naslavljanja

v polju operanda ukaza določilo (naslov) registra.

Kadar je operand v registru rečemo tudi,

da gre za registrsko (neposredno) naslavljanje.

Dostop do operandov v registrih (procesorja) je vedno

hitrejši od dostopa do operandov v pomnilniku.

Page 27: Zgradba računalnika

Načini naslavljanja - posrednoNačini naslavljanja - posredno

V polju operanda je naslov naslova operanda.

Primeren je za “računanje” in spreminjanje naslovov spremenljivk.

Posreden način naslavljanja daje podlago za realizacijo

podatkovnih tipov in struktur kot so:

kazalci,

polja,

drevesa,

vrste,

povezani seznami, ..., zahteva pa dodaten dostop do pomnilnika.

Določilo

operacije Naslov naslova

operanda

Page 28: Zgradba računalnika

Načini naslavljanja - posrednoNačini naslavljanja - posredno

Primer: napolni akumulator z vsebino pom. besede z

naslovom na naslovu $200.

CPE - pred

PC

A Nedef.

$100

CPE – po operaciji

PC

A $55

$103

Pomnilnik

$100

$101 $02

Op.Koda

$200 $AA

$102 $00

$AA $55

Page 29: Zgradba računalnika

Načini naslavljanja - posrednoNačini naslavljanja - posredno

Kadar je naslov operanda v registru pravimo,

da gre za registrsko posredno naslavljanje. Registrom CPE, ki služijo naslavljanju (operandov), to je

vsebujejo naslov operanda, pravimo naslovni registri. Naslovne registre poimenujemo glede na operacije z njimi:

indeksni registri, bazni registri.

Načini naslavljanja pa so potem: indeksno naslavljanje, bazno naslavljanje.

Pri baznem naslavljanju vsebuje (bazni) register začetni naslov daljšega

zaporedja pomnilniških naslovov. Pri indeksnem naslavljanju vsebuje (indeksni) register (poln) naslov operanda. Z indeksnim registrom so možne operacije:

inkrementiranja, dekrementiranja, pred ali po operaciji in skaliranje.

Page 30: Zgradba računalnika

Načini naslavljanja – Načini naslavljanja – registrsko posrednoregistrsko posredno

Pri registrskem posrednem načinu naslavljanja je naslov operanda

določen takole:

EA = (R) + o

EA = efektivni oziroma dejanski naslov operanda,

R = naslovni (bazni, indeksni) register,

o = odmik, vrednost v polju operanda ukaza.

OP.: dejanski naslov je naslov, na katerega se nanaša operacija.

Op. koda Register Odmik

+

Operand

(R)

Page 31: Zgradba računalnika

Načini naslavljanja - relativnoNačini naslavljanja - relativno

Naslov operanda je določen relativno

glede na vsebino programskega števca.

Določilo

operacijeOdmik

EA = PC + Odmik

Tak način daje podlago premakljivim programom.

Page 32: Zgradba računalnika

Načini naslavljanja – relativnoNačini naslavljanja – relativno

Op. koda Odmik

+

Operand

PC

naslov

Page 33: Zgradba računalnika

Načini naslavljanja - relativnoNačini naslavljanja - relativno

CPE - pred

PC

A Nedef.

$100

CPE – po operaciji

PC

A

$102

$100

$101 $10

Pomnilnik

Op.Koda

$102

$112 $55 $55

Page 34: Zgradba računalnika

PovzetekPovzetek

Pomnilnik:

linearno zaporedje pomnilniških besed,

dostop do pomnilnika,

vrste pomnilnikov.

CPE :

programski model,

ukazi,

načini naslavljanja.

Page 35: Zgradba računalnika
Page 36: Zgradba računalnika