SOCS
Hoofdstuk 2
Elektronica
Transistorgeheugens
Geheugenmedia
(hulpgeheugens)
Organisatie
Snelheid
1
Hoofdstuk 2
Elektronica
Transistorgeheugens
Geheugenmedia
Organisatie
Snelheid
2
Elektronica
Digitale Logica
Begrippen
uit de elektriciteit
Transistoren
Schakelingen
Schakelalgebra
3
Begrippen u/d elektriciteit
spanningsbron E
+
electronen
e
stroom I
I=
E
R
weerstand R
4
Begrippen u/d elektriciteit
Elektrische lading
Eenheid: Coulomb C
Atoom
Positieve kern
Negatieve elektronen
Elektrisch veld
Kracht die eenheidslading zou ondervinden
Elektrische spanning
Potentiaalverschil tussen 2 punten
Is arbeid nodig om eenheidslading van het ene punt naar
het andere te verplaatsen
Eenheid: Volt V
5
Begrippen u/d elektriciteit
Elektrische stroom
Transport van ladingen doorheen medium
Stroomsterkte = hoeveelheid ladingen die zich per
tijdseenheid door een doorsnede van de geleider
verplaatsen
Eenheid: ampère A
Elektronenstroom = verplaatsing van electronen
Wet van Ohm
Stroomsterkte doorheen geleider evenredig met de
spanning over de geleider
Weerstand:
Eenheid: ohm
6
Begrippen u/d elektriciteit
spanningsbron E
+
electronen
e
stroom I
I=
E
R
weerstand R
7
Geleiders vs Isolatoren
Geleiders
Elektronen
zwak gebonden aan atomen
Bewegen gemakkelijk doorheen materiaal
Isolatoren: geleiden niet
Half-geleiders (Si, Ge)
+ vreemde atomen (Sb, As, P, …)
p-type:
plaats voor extra elektronen
n-type: elektronen op overschot
sandwich structuur
8
Transistor
collector
n-type
basis
p-type
n-type
emitter
n-p-n
Er bestaat ook p-n-p
9
Transistor
+Vcc
Vuit
C
Vin
B
Veel toepassingen:
o.a. snelle binaire schakeling
E
0V
10
Transistor
+5V
+5V
0V
5V
basisstroom
collectoremitter
stroom
0V
TRANSISTOR = gesloten
5V
0V
0V
TRANSISTOR = open
11
Transistor
+Vcc
Vin
0
+Vcc
Vuit
Vin
Vin
onwaar
waar
Vuit
+Vcc
0
Vuit
waar
onwaar
NIET poort
12
Transistor
+Vcc
Vuit
V1
V2
V1
0
+Vcc
0
+Vcc
V2
0
0
+Vcc
+Vcc
Vuit
+Vcc
0
0
0
NOF poort
13
Transistor
+Vcc
Vuit
V1
V1
0
+Vcc
0
+Vcc
V2
0
0
+Vcc
+Vcc
Vuit
+Vcc
+Vcc
+Vcc
0
V2
NEN poort
14
MOS Transistor
Metal Oxyde Semiconductor
PMOS, NMOS, CMOS
Voordelen:
minder
plaats op chip
verbruiken minder energie
minder storend t.o.v. buren
goedkoper te maken
compactere
schakelingen
Nadeel:
trager
15
Schakelingen
in
0
1
uit
1
0
NIET
Basis-operaties
NOF
in1 in2
0
0
0
1
1
0
1
1
uit
1
0
0
0
in1
0
0
1
1
in1
0
0
1
1
uit
0
1
1
1
in1
0
0
1
1
in2
0
1
0
1
OF
NEN
in2
0
1
0
1
in2
0
1
0
1
EN
uit
1
1
1
0
uit
0
0
0
1
16
Schakelalgebra
Logische variabele: waar (1) of onwaar(0)
Basisbewerkingen: EN(.), OF(+), NIET( )
Logische functie in n variabelen
voorstellen
A
0
0
1
1
B
0
1
0
1
via waarheidstabel
AB
0
1
1
0
(XOR)
A.B + A.B
17
Schakelalgebra
A
0
0
1
1
B
0
1
0
1
A
1
1
0
0
A
B
1
0
1
0
A.B A.B A.B+A.B AB
0
0
0
0
1
0
1
1
0
1
1
1
0
0
0
0
A.B
AB
B
A.B
18
Schakelalgebra
Vereenvoudigingen
Wet
EN-vorm
OF-vorm
Identiteit
Nulwet
Idempotentie
Inversie
Commutatieve
Distributieve
Absorbtie
De Morgan
1.A = A
0.A = 0
A.A = A
A.A = 0
A.B = B.A
A+B.C = (A+B).(A+C)
A.(A+B) = A
A.B = A + B
0+A=A
1+A=1
A+A=A
A+A=1
A+B = B+A
A.(B+C) = A.B+A.C
A+A.B = A
A+B = A . B
19
Schakelalgebra
Voorbeeld: OF
A
0
0
1
1
B
0
1
0
1
A+B
0
1
1
1
A.B + A.B + A.B
A.B + A.B + A.B = A.B + A.(B+B)
= A.B + A.1
= A.B + A
= (A+A).(B+A)
= 1.(B+A)
= B+A
[distributie]
[inversie]
[identiteit]
[distributie]
[inversie]
[identiteit]
20
Schakelalgebra
Elke schakeling kan met uitsluitend NENpoorten (NOF-poorten) gemaakt worden
A
A
A
A.B
B
A
A+B
B
21
Geïntegreerde Schakelingen
-O2
smelten
±15cm
oxidatie
lichtgevoelige
laag
masker (negatief)
+ belichting
etsbad
ontwikkelbad
22
Geïntegreerde Schakelingen
enz.
oxidatie
dopering
tot n/p-type
pinnetjes
= chips
testen
verzagen
behuizing
23
Geïntegreerde Schakelingen
Classificatie
Klasse
SSI
MSI
LSI
VLSI
#poorten
Small Scale Integration
1..10
Medium Scale Integration 10..100
Large Scale Integration
100..100.000
Very Large Scale Integr.
> 100.000
24
Hoofdstuk 2
Elektronica
Transistorgeheugens
Bipolaire FLIP-FLOP
SRAM en DRAM
Leesgeheugens
Geheugenmedia
Organisatie
Snelheid
25
Bipolaire Flip-Flop
Schakeling met 2 stabiele toestanden
1
1
0 1
0 1
1 0
0 1
26
Bipolaire Flip-Flop
Lezen
“0”
“1”
1
1
Bit
0
1
1
0
27
Bipolaire Flip-Flop
Schrijven
01
0 1
1
1 0
0
1
“1 schrijven”
1
0 1
0
1 0
1
01
“0 schrijven”
28
Bipolaire Flip-Flop
1-bit geheugencel
B
P
= puls = normaal 0, tijdens “schrijven” 1
29
Transistorgeheugens
Matrixstructuur
Individuele
bits
Adresdecodering (selectie van bits)
…
…
…
30
SRAM
Static RAM
Bouwstenen: Bipolaire flip-flops
Snelste
Duurste
Gebruik:
CMOS
SRAM (batterijvoeding: weinig energie)
Voorgeheugens (caches: snelheid)
31
DRAM
Dynamic RAM
Bouwstenen: Condensatoren (20 fF = 20 x 10-15 F)
Geladen:
“1”
Ontladen: “0”
woordlijn
FET
FET = Field Effect Transistor
bitlijn
32
DRAM
Nadelen:
Lezen
= destructief
Lekstroom
(dus herschrijven)
(dus opfrissen)
10 ms
33
Vergelijking
Lees
toegangstijd
Resultaat
Lees
geheugencyclustijd
Decodering adres
Schakeltijd van poorten
Toegangstijd
Cyclustijd
Capaciteit
SRAM
… 10 ns …
… 12 ns …
# 100 kbits
(Herschrijven)
(Opfrissen)
Uitdoven parasietsignalen
DRAM
50 .. 150 ns
70 .. 250 ns
16 .. 64 Mbit
34
Optimisaties
Reductie van geheugencyclustijd
Geheugenspreiding
2
geheugenmodules
even adressen
EDO
oneven adressen
(Extended Data Output)
Lezen
SDRAM
van opeenvolgende woorden
(Sychronous burst DRAM)
Gelijkaardig
35
SIMM en DIMM
SIMM = Single In-line Memory Module
DIMM = Dual In-line Memory Module (2-zijdig)
36
Leesgeheugens (ROM)
ROM = Read Only Memory
Verschillende varianten:
ROM
(bij constructie gevuld)
PROM (Programmable ROM)
slechts
EPROM
kan
eenmaal beschrijfbaar (speciaal apparaat)
(Erasable PROM)
gewist worden via UV-licht
EEPROM
venster
(Electrically EPROM)
ter
plaatse wissen
FLASH: variante van EEPROM
(grote blokken wissen)
37
Hoofdstuk 2
Elektronica
Centraal Geheugen (RAM)
Geheugenmedia
Magneetschijven
Optische Schijven
Magneto-Optische Schijven
Magneetbanden/Cassettes
Organisatie
Snelheid
38
Magneetschijven
Harde Magneetschijf
Geperfectioneerde magneetschijven
Soepele Schijven
Alternatieven
39
Harde Magneetschijf
Fysisch voorkomen
holle as
plaat (glas/aluminium)
30 .. 50 cm
3 .. 12 cm
< 3 cm
3000
3600 t/min
5400
7200
magnetiseerbare laag
40
Harde Magneetschijf
Werking
I
lezen
schrijven
5 .. 10 m
0 0 1 1 0 0 …
I
geleider in
bewegend
magnetisch
veld
0,1 .. 0,2 m
41
Harde Magneetschijf
42
Harde Magneetschijf
menselijk haar
50 m
rookdeeltje 5 m
vingerafdruk 3 m
lees/schrijfkop
vlieghoogte
0.5 m
magnetiseerbare laag 2.5 m
43
Harde Magneetschijf
Lees/schrijfkop
boven oppervlak (< 1 m)
stofvrij zoniet headcrash
Winchester-schijven
zweven
platen
bij
+ koppen in hermetisch afgesloten doos
stilzetten: landen op landingszone
44
Harde Magneetschijf
Spoor = { sectoren }
sector
spoor
512b .. 4kb data
HD … data … ECC
800 ... 2000 sporen/cm
spoorbreedte = 10 .. 15 m
# sectoren / spoor
= vast (niet optimaal) of
= neemt toe naar buiten
45
Harde Magneetschijf
Werking
kam
lees/schijfkop
cilinder
= { sporen onder lees/schrijfkoppen voor bep. stand kam }
46
Harde Magneetschijf
47
Harde Magneetschijf
Lees/Schrijf (CILINDER, KOP, SECTOR)
a) Positioneren (= zoektijd, seektime)
spoor-spoor: 1 ms
gemiddeld: 10 ms
b) Rotationele wachttijd (= latency time)
wachten tot juiste sector onder de kop
gemiddeld = ½ toer (4 .. 8 ms)
c) Lezen/Schrijven
debiet = 5 .. 30 Mb/s (kortstondig!)
48
Geperfectioneerde Schijven
Hogere Snelheid
Hogere Betrouwbaarheid
tegen
verlies van informatie
RAID
Redundant Array
of Inexpensive Disks
Redundant Array of Independant Disks
Controller
Controller
49
RAID technologie
Data 0
Data 2
Data 1
Data 3
Strip 0 Strip 1 Strip 2
Strip 4 Strip 5 Strip 6
...
...
...
Strip 3
Strip 7
…
Strip 0 Strip 1 Strip 2
Strip 4 Strip 5 Strip 6
...
...
...
Strip 3
Strip 7
…
RAID 0
• disk striping
• I/O in parallel
Strip 0 Strip 1 Strip 2
Strip 4 Strip 5 Strip 6
...
...
...
Strip 3
Strip 7
…
RAID 1
• disk striping
• disk mirroring
• schrijven duurt even lang
• lezen kan sneller
50
RAID technologie
Bit 1
Bit 2
Bit 3
Bit 4
Bit 5
Bit 6
Bit 7
...
...
...
…
...
...
...
RAID 2
• Hamming code (4 bits 7 bits)
• bits in parallel
• armpositie & rot. positie gesynchroniseerd
Bit 1
Bit 2
Bit 3
Bit 4
Pariteit
...
...
...
…
...
RAID 3
• Pariteitsbit (4 bits 5 bits)
• bits in parallel
• armpositie & rot. positie gesynchroniseerd
51
RAID technologie
Strip 0 Strip 1 Strip 2
Strip 4 Strip 5 Strip 6
...
...
...
Strip 3
Strip 7
…
P0-3
P4-7
...
Strip 0 Strip 1 Strip 2
Strip 4 Strip 5 Strip 6
...
...
...
Strip 3
P4-7
…
P0-3
Strip 7
...
RAID 4
• disk striping
• pariteits-strip
• disk crash: herstel
• 1 strip wijzigen:
• 2 x Lezen + 2 x Schrijven
RAID 5
• = RAID 4
• verspreid pariteit strip
52
Soepele Schijven
Floppy Disk, Diskette
Afmetingen
5.25
“ en 3.5”
Kop raakt oppervlak
Sleet
+ Warmte
Start /Stop: ±½ s
53
Soepele Schijven
Param.
LD 5.25”
HD 5.25” LD 3.5” HD 3.5”
Afm.
5.25”
5.25”
3.5”
3.5”
Cap. (byte)
360K
1.2 M
720K
1.44M
# Sporen
40
80
80
80
# Sec/Spoor 9
15
9
18
# Koppen
2
2
2
2
Toeren/min
300
360
300
300
Debiet (kBps) 250
500
250
500
Type
Plooibaar Plooibaar Stevig
Stevig
54
Magneet Schijven
Harde Magneetschijf
Geperfectioneerde magneetschijven
Soepele Schijven
Alternatieven:
ZIP
(100MB/250MB), JAZ (1GB/2GB),
SuperDisk (120MB) (Imation)
HiFD (100MB) (Sony)
Drive compatibel
...
met 3.5” FD
55
Optische Schijven
Voorloper: Video-disk (30 cm)
Audio CD
CD-ROM
CD-R
CD-RW
DVD (DVD-ROM, DVD-R, …)
56
Audio CD
1980 (Philips & Sony)
12 cm , 1.2 mm dik
Informatie Digitaal
16-bit sampling,
44,4 kHz
Red Book
tot 74 min. muziek
57
Compact Disc
Productie:
branden
van putjes in glasplaat
maken van matrijs
persen van CD
dunne laag aluminium
laklaag
label
58
Compact Disc
Afspelen: m.b.v. laser
infrarood 0.78 m
59
Compact Disc
60
Compact Disc
1: overgang, 0: geen overgang
61
Compact Disc
Spiraal (binnen naar buiten)
22.188 omwentelingen
(± 600 per mm)
Constante bitstroom
530 T/min 200 T/min
= Constant Linear Velocity
62
CD-ROM
1984 (Philips & Sony)
CD voor opslag van data: CD-ROM
Compact Disc, Read-Only Memory
Compatibel met audio CD
Yellow Book
Formaat
van Data
Extra Foutenbescherming
63
CD-ROM
...
Symbool: 8 bits 14 bits
42 symbolen
...
00ffffffffffffffffffff00
min:s:sect:mode
98 frames
Frame (588 bits)
• 24 data bytes
• rest: fouten+synch.
H
DATA
ECC
16 bytes
2048 bytes
288 bytes
H
16 bytes
DATA
2336 bytes
Sector
• Mode 1
• Mode 2
64
CD-ROM
Foutencontrole: 3 niveaus
Per
symbool (1-bit fout)
Per frame (# opeenvolgende fouten)
ev. per sector (Cross Interleaved Reed-Solomon code)
Efficientie:
98 x 588 bits = 57.624 bits 2048 x 8 = 16.384 bits
65
CD-ROM
Capaciteit:
±270.000
sectoren
(550 MB .. 630 MB)
Debiet:
75
sect. / s = 150 kB (mode 1) = 171 kB (mode 2)
x2, x4, …, x32, …
Hogere snelheden
CAV
(constant angular velocity) aan binnenzijde
Zoektijd:
controller:
100
berekening van plaats + zoeken
ms
66
CD-I
Compact Disc, Interactive
Philips, 1986
Speler verbonden met TV
MPEG video, geluid, …
Green Book
Toepassing:
Spelletjes
Educatieve
programma’s
67
CD-R
Compact Disc, Recordable
1989
WORM, Write-Once, Read Many
Groef met sinusoidale rand (snelheid)
Uitzicht: Goudkleurig i.p.v. zilverkleurig
1.2 mm
Label
Beschermlaag
Reflecterende Au-laag
Doorzichtige Kleurstof
Substraat
68
CD-R
Schrijven:
Laser:
Hoog vermogen (verkleuring)
Lezen:
Laser:
Laag vermogen (donkere plek: minder reflectie)
ook te lezen op gewone CD-ROM lezen
Beschrijven:
in
een continue operatie beschrijven,
zonder stoppen
69
CD-R
Orange Book
CD-R
CD-ROM/XA
(incrementeel beschrijven)
Toepassing:
PhotoCD
Backup
Piraterij!
verkeerde
lengte, verkeerde ECC, …
70
CD-RW
Compact Disc, ReWritable
Zoals CD-R, kleurstof vervangen door legering
twee
stabiele toestanden: kristallijn & amorf
71
CD-RW
Schrijven:
Laser:
hoog vermogen
legering
Laser:
medium vermogen
legering
smelt, koelt af tot amorf
omgezet naar kristallijn
Lezen:
Laser:
laag vermogen
kristallijn:
veel reflectie
amorf: weinig reflectie
Duurder dan CD-R (kan niet gewist!)
72
DVD
Digital Video Disk, Digital Versatile Disk
Zelfde formaat CD-ROM (120 mm schijf)
CD
Capaciteit: 4.7 GB
DVD
Debiet: 1.4 MB/s
73
DVD
Compressie: MPEG-2 (4 Mbps)
afhankelijk
van detail & hoeveelheid beweging
Audio
24-bit
sampling, 96 kHz
DigitalSurround (5 kanalen + 1 subwoorfer-kan.)
Films
meerdere
talen (<= 8) + ondertiteling
meerdere verhaallijnen (te selecteren)
meerdere gezichtspunten
kinderslot
74
DVD
4 Formaten:
single-sided,
single-layer
single-sided, dual-layer
double-sided, single-layer
double-sided, dual-layer
4.7 GB
8.5 GB
9.4 GB
17 GB
Semi-reflectieve laag
Aluminium reflector
75
Magneto-Optische Schijven
Legering
Boven
Curiepunt (Tc): magnetisatie wijzigen
Onder Curiepunt: magnetisatie bevroren
Schrijven:
laser
Lezen: Kerr effect
laser
B
polarisatie
Concentrische sporen, sectoren, CAV
Verwijderbaar medium, vaak 5.25”
76
Magneto-Optische Schijf
77
Magneetbanden
Spoel-tot-spoel
1”, 1/2” breed, 2400 ft lang
capaciteit: … 180 MB ...
9 sporen (1 byte + pariteit)
lees
en schrijf koppen
78
Magneetbanden
Blokken van variabele lengte
hiaat (½ - 1”): start/stop
hiaat
dichtheid: 1600 B/duim, 6250 B/duim
debiet: tot 3 MB/s
terugspoelen: 50 s tot 3 min
79
Cassettes
80
Cassettes
Cartridge
vaak
streaming mode
blokken
van ½kB .. 1 kB met heel klein hiaat
backup:
data compressie (tot 2 x zoveel op tape)
28 .. 144 sporen
vaak serieel beschreven
(serpentine recording)
81
Cassettes
Types
½”
cartridge
4
GB .. 35 GB
1 MB/s .. 5 MB/s
¼”
cartridge (QIC)
vooral op PCs
400
MB .. 4 GB
125 kB/s .. 1.5 MB/s
heel veel incompatibele formaten
82
Cassettes
Types (helical scan)
8
mm (videoband)
3
GB .. 25 GB
500 kB/s .. 6 MB/s
4
mm (DAT)
2
GB .. 12 GB
50 kB/s .. 1 MB/s
83
Massageheugens
200 CDs
JukeBox met CDs
Speciale Cassette lader
20 Cassettes
84
Hoofdstuk 2
Geheugenmedia
Organisatie
Bussen
Pijplijnen
Voorgeheugens
Snelheid
85
Bussen
Transport van gegevens tussen lokaties
serieel vs parallel (8, 16, 32, 64, …)
Implementatie
punt-tot-punt verbinding (duur!)
gemeenschappelijke verbinding (bus)
CPU
RAM
Video
Harde Schijf CD-ROM
Bestuurder Bestuurder Bestuurder
...
86
Bussen
Verschillende lijnen
Adressen
Gegevens
Controlesignalen
(Opdrachten)
Voorbeelden
(E)ISA
(Extended Industry Standard Architecture)
PCI (Peripheral Component Interconnect)
...
87
Bussen
PCI
bridge
CPU
SCSI bus
Geluid
kaart
SCSI
Schijf
SCSI
Bestuurder
Drukker
Bestuurder
ISA
bridge
RAM
Video
Bestuurder
PCI bus
Modem
ISA bus
...
88
Interne bussen
Registers
Rekeneenheid
89
Bussen
Bus breedte
#
adreslijnen
20
lijnen: max. 1M (PC/XT)
24 lijnen: max. 16 M (ISA)
32 lijnen: max. 4G
(EISA/PCI)
64 lijnen: max. 16 E (PCI)
#
datalijnen
8,
16, 32, 64 lijnen
ev. 32 bits ophalen over 8-bit bus = 4 x lezen
multiplexed
bus: adres/datalijnen gemeensch.
90
Bussen
Participanten
Meester
CPU,
Slaaf
= apparaat dat comm. initieert
DMA-apparaat, ...
= andere partij
geheugen,
...
RAM
CPU
Lees xyz
Data
+
= Bus
cyclus
91
Bussen
Werking:
Synchroon
op
kadans van een klok
bus cyclus = geheel # klokcycli
ISA (8.33 Mhz), PCI (33 MHz/66MHz)
Asynchroon
bus
toegang slechts zo lang als nodig
Bus Protocol:
Hoe
bus werkt
Hoe
“meester” worden, Welke signalen + Timing ...
92
Synchrone Bus
MIN
MAX
ADRES
DATA
MREQ
READ
WAIT
(Geheugen)
93
Bus Arbitratie
Hoe “meester” worden
Gecentraliseerd
schakeling
in CPU, aparte arbiter chip, …
aanvraag
Arbiter
OK
NOK
OK
App. 1
App. 2
NOK
App. 3
App. 4
Gedecentraliseerd
94
Bus Cycli
Lees cyclus
Meester: Lees xyz
Slaaf:
Data
Meester:
Slaaf:
Meester:
Slaaf:
Schrijf cyclus
Meester: Schrijf data xyz
Slaaf:
OK
Lees/Wijzig/Schrijf cyclus
Lees xyz
Data
Schrijf Data* xyz
OK
Block transport
Interrupt cyclus
...
Meester: Lees xyz ...
Slaaf:
Data, data, ...
95
Pijplijnen
Soort lopende band in processor
HIA.w R1,10
OPT
R1,100
BIG
R1,2(R3+)
LEZ
DRU
HIA.w
R1,10
Voer uit
OPT R1,10
Analyseer
BIG R1,2(R3+)
Haal operand op
LEZ
Bereken adres
DRU
RAM
96
Pijplijnen
Complex!
Indexatie
HIA.w R1,10
OPT
R3,100
BIG
R1,2(R3+)
LEZ
DRU
Compiler:
• herordenen van instructies
• inlassen van NOP
sprongbevelen
voorspellen,
meerdere pijplijnen
97
Voorgeheugens
RAM relatief traag t.o.v. CPU
Extra snel voorgeheugen (cache memory)
CPU
cache
SRAM
Kopie van
gedeelte
van RAM
RAM
DRAM
98
Voorgeheugens
Lees a
CPU
in VG? JA!
RAM
a
Lees b
CPU
in VG? NEE!
b
RAM
99
Voorgeheugens
Lokaliteitsprincipe
lokaliteit
in tijd
nodig op tijd t
x nodig op tijdstip t+dt
lussen, tussenresultaten
x
lokaliteit
in ruimte
nodig op tijdstip t x+dx nodig op tijdstip t+dt
programma’s, rijen, velden van records, …
daarom: lijnbreedte (8 bytes, 16 bytes, …)
x
Voorgeheugen
90%
.. 98% succes!
100
Voorgeheugens
Ontwerpkeuzen:
(16 kB, 32 kB, … 512 KB, …)
lijnbreedte (8B, 16B, 32B, …)
grootte
hoeveel
tegelijk ophalen uit RAM
hoe
georganiseerd
gemeenschappelijk VG
versus
gescheiden VG voor data en instructies
aantal voorgeheugens (1, 2 of meer)
101
Voorgeheugens
Organisatie
direct
afgebeeld voorgeheugen
elk
RAM “lijn” heeft vaste plaats in het VG
tag duidt aan over welke geheugen-lijn het gaat
(de meest beduidende bits van het adres)
associatieve
voorgeheugens
een
RAM lijn kan om het even waar in het VG
tag duidt aan over welke geheugen-lijn het gaat
associatief: alle tags tegelijk vergelijken!
102
Voorgeheugens
Direct afgebeeld voorgeheugen
tag
=?
VG
adres
RAM
103
Voorgeheugens
Associatieve Voorgeheugens
tag
=?
VG
adres
RAM
104
Voorgeheugens
Schrijven in VG
wegschrijven
onmiddellijk
uitgesteld
doorheen het VB
hoofdgeheugen aanpassen
wegschrijven
alleen
in VG aanpassen,
pas later in hoofdgeheugen
schrijven
als niet in VG
alleen
in hoofdgeheugen
eerst in VG brengen
105
Voorgeheugens
Performantie ???
Toegangstijden: TRAM, TVG
Succesratio: s
Gemiddeld:
TG = s * TVG+ (1-s) * TRAM
Voorbeeld:
TRAM= 100 ns
TVG = 10 ns
s = 95%
Tgem = 0.95 * 10 + 0.05* 100
= 9.5 + 5 = 14.5 ns
Kostprijs ???
Capaciteiten: CRAM, CVG
Prijs: KRAM, KVG
Totaal:
K = CRAM* KRAM+ CVG * KVG
Voorbeeld:
CRAM = 128 MB
KRAM = 250 BEF/MB
CVG = 128 kB
KVG = 16.000 BEF/MB
K = 128 * 250 + 16.000/8
= 32.000 + 2.000 = 34.000
7 x sneller, slechts 6 % duurder
106
Voorgeheugens
Meerdere niveaus
CPU
Cache
L1
Cache
L2
RAM
16 kB
512 kB
128 MB
107
Hoofdstuk 2
Geheugenmedia
Organisatie
Snelheid
MIPS
MFLOPS
Experimenteel testen
108
Snelheid
MIPS
Million
MFLOPS
Million
Instructions Per Second
Floating Point Instructions Per Second
Merk Op:
niet
alle instructies even veel tijd!
niet alle instructie-sets even uitgebreid
niet altijd uitgebreide datatypes
MIPS/MFLOPS = relatieve maat binnen
computerfamilie
109
Snelheid
Experimenteel testen
Standaard testen
Whetstone: tech. wetenschappelijke programma’s
Dhrystone: zonder bewegende komma operaties
SPEC: { programma’s van verschillende constructeurs }
Gebruikersstandpunt
Responstijd = tijd eerste resultaat - tijd opdracht ingegeven
Verblijftijd = tijd afgewerkt - tijd opdracht ingegeven
Doorvoer = # afgewerkte programma’s / tijdseenheid
110