62
Kompiuterių architektūra ir operacinės sistemos Doc. Stasys Maciulevičius Kompiuterių katedra [email protected] [email protected]

Kompiuterių architektūra ir operacin ė s sistemos

  • Upload
    kirkan

  • View
    79

  • Download
    3

Embed Size (px)

DESCRIPTION

Kompiuterių architektūra ir operacin ė s sistemos. Doc. Stasys Maciulevičius Kompiuterių katedra [email protected] [email protected]. P e nk tosios paskaitos turinys. k omandų sistemos išplėtimas MMX, SSE, 3DNow!, … šiuolaikiniai procesoriai: pagrindiniai gamintojai - PowerPoint PPT Presentation

Citation preview

Page 1: Kompiuterių architektūra  ir operacin ė s  sistemos

Kompiuterių architektūra ir operacinės sistemos

Doc. Stasys MaciulevičiusKompiuterių katedra

[email protected] [email protected]

Page 2: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 2

Penktosios paskaitos turinys

• komandų sistemos išplėtimas• MMX, SSE, 3DNow!, …• šiuolaikiniai procesoriai:

– pagrindiniai gamintojai– x86 procesorių raida– kelių branduolių procesoriai– 64 bitų procesoriai

Page 3: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 3S.Maciulevičius 3

Šeštosios paskaitos turinys

• Hierarchinė atminčių sistema• Lokališkumo principas• Kešas (spartinančioji atmintis)• Kešo darbo principai• Procesorių kešai• Kešo nauda • Pagrindinė atmintis hierarchinėje atminčių sistemoje• Dinaminių atminčių (DRAM) tipai• Šiuolaikinės DRAM• DRAM moduliai• Atminties valdymas

Page 4: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 4S.Maciulevičius 4

Kompiuterio atmintis

Kompiuterio atmintyje saugoma visa informacija:• išorinėje atmintyje – ir sisteminės programos, ir

taikomosios porgramos, ir duomenų failai; • pagrindinėje atmintyje darbo metu – dalis operacinės

sistemos programų, aktyvios taikomosios programos, jų vykdymui reikalingi duomenys ir skaičiavimo metu gauti rezultatai;

• spartinančiojoje atmintyje – dažniausiai darbo metu naudojamos informacijos (komandų ir duomenų) kopijos, reikalingos didesnei skaičiavimo spartai pasiekti.

Page 5: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 5S.Maciulevičius 5

Kompiuterio atmintis

Dar J.von Neumann pastebėjo, kad kiekvienas kompiuterio vartotojas nori, kad:– kompiuteris turėtų pakankamai didelės talpos atmintį, – atmintis dirbtų kiek įmanoma sparčiau, – atmintis būtų nebrangi.

Aišku, kad visus vartotojo norus patenkinti naudojant tik vieną atminties tipą neįmanoma. Jau seniai naudojamos kelių tipų atmintys, jas derinant kompiuteryje

Page 6: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 6S.Maciulevičius 6

Hierarchinė atminčių sistema

CPU reg.

Talpa

Sparta, kaina

Kešas

Pagrindinė atmintis

Išorinė atmintis

Page 7: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 7S.Maciulevičius 7

Hierarchijos lygių parametrai

Parametrai \ Lygis

Registrai Kešas Pagrindinė

atmintis

Išorinė atmintis

Talpa <2KB 12 MB 4 GB >100 GB

Kreipties laikas (ns)

0,3-0,5 1 - 4 40 - 60 10 000 000

Pralaidumas (MB/s)

8000-16000

1600-5000

500-2000 4 - 100

1 MB kaina, Lt ??? 200-300 0,1 1 GB – 0,5 LtHDD HITACHI Deskstar 250GB, 8MB, Serial ATA II-300 - 135,36 Lt

Apacer AM1 DDR II 800 MHz 2048MB - 145,77 Lt 

Page 8: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 8S.Maciulevičius 8

Lokališkumo principas

Hennessy ir Patterson teigia: programos linkę naudoti duomenis ir komandas, kurias jau yra naudoję. Sakoma, kad programa apie 90% vykdymo laiko skiria apie 10% kodo.

Lokališkumas

• laiko atžvilgiu: jei dabar reikalingas kuris nors elementas, labai tikėtina, kad netrukus vėl jo prisireiks

• vietos atžvilgiu: jei dabar reikalingas kuris nors elementas, labai tikėtina, kad netrukus bus reikalingas ir jam gretimas

Ką duoda lokališkumas?

Page 9: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 9S.Maciulevičius 9

Sąvokos

• pataikymas (hit)• nepataikymas (miss)• pataikymo dažnis - fh • nepataikymo dažnis - fm fm = 1 - fh • išrinkimo laikas pataikius - th

• uždelsimas nepataikius - tm

Page 10: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 10S.Maciulevičius 10

4 klausimai

• Į kurią vietą aukštesnio lygio atmintyje turi būti įrašytas blokas?

• Kaip surasti bloką aukštesnio lygio atmintyje?

• Kurį bloką reikia pakeisti nepataikymo atveju?

• Kaip turi būti vykdomas įrašymas į atmintį?

1

1000

Page 11: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 11S.Maciulevičius 11

SPARTINANČIOJI ATMINTIS

Kompiuterių architektūra ir operacinės sistemos

Page 12: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 12S.Maciulevičius 12

Spartinančioji atmintis (kešas)

Parametras Galimos reikšmės

Eilutės ilgis (bloko dydis) 8-256 baitai

Išrinkimo laikas pataikius th

2-4 taktai

Išrinkimo laikas nepataikius tm

n10 taktų

Pataikymo procentas 80-99%Kešo dydis 8 KB - 12 MB

Žodis

CPU

Blokas

Pagrindinė

atmintis

Kešas

Page 13: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 13

Kešo lygiai

• Sparčiausias - L1 kešas; jo vėlinimas – 1-2 ciklai

• Kiek mažesnės spartos – L2 kešas; jo vėlinimas – 1 (lėtuose procesoriuose) -20 ciklų (sparčiuose procesoriuose)

• Lėčiausias – L3 kešas; jo vėlinimas – 10 (lėtuose procesoriuose) - 40 ciklų (sparčiuose procesoriuose)

• Pagrindinės atminties išrinkimo laikas – 200-300 ciklų

Page 14: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 14S.Maciulevičius 14

Kešo sąvokos • Pataikyti į kešą - kreipiantis į adresuojamą

(atmintyje esantį) kintamąjį, rasti jo kopiją keše• Pataikymų dažnis - santykinė dalis kreipinių į adresuojamus

(atmintyje esančius) kintamuosius, kurių kopijos randamos keše

• Kešo eilutė - tam tikro dydžio informacijos blokas, kurio vieta keše identifikuojama kreipinio adresu ir pakeičiama vienos užpildymo operacijos metu, kartu su išrinkimui ir identifikavimui reikalinga papildoma informacija

• Indeksas - kešo eilutės numeris• Išrinkimo laikas pataikius - laikas, per kurį surandama ir

išrenkama keše esanti informacija• Išrinkimo (uždelsimo) laikas nepataikius - laikas, per kurį

iš pagrindinės atminties išrenkama informacija, kurios keše nėra

Page 15: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 15S.Maciulevičius 15

4 klausimai

1. Kur reikia padėti informaciją, nukopijavus ją į kešą? - Į kurią eilutę keše reikia įrašyti iš pagrindinės atminties paimtą eilutės dydžio bloką.

2. Kaip randama informacija keše? - Kaip atliekama informacijos paieška keše, priklausomai nuo kešo tipo.

3. Kaip vykdomas naujos informacijos įrašymas į kešą? - Kešo eilutė, į kurią reikia įrašyti naują bloką, jau užimta. Kaip reikia elgtis tokiu atveju?

4. Kaip vykdomas informacijos įrašymas tuo atveju, jei nepataikoma į kešą? - Ar reikia ją rašyti į kešą, ar tiesiai į pagrindinę atmintį?

Page 16: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 16S.Maciulevičius 16

Kešo tipai

• Tiesioginio atitikimo kešas - kiekvienas iš pagrindinės atminties paimtas eilutės dydžio blokas turi vienintelę apibrėžtą vietą keše.

• Pilnai asociatyvus kešas - kiekvienas iš pagrindinės atminties paimtas eilutės dydžio blokas gali būti bet kurioje vietoje keše.

• Dalinai asociatyvus kešas - kiekvienas iš pagrindinės atminties paimtas eilutės dydžio blokas gali būti bet kurioje iš k vietų; skaičius k vadinamas asociatyvumo laipsniu arba krypčių skaičiumi.

Page 17: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 17S.Maciulevičius 17

Tiesioginio atitikimo kešasPagrindinė atmintis

0

1

...65

...511

Kešas 512 eilučių 64 bitus

Adresassrityje

246A DC00 CCCC 0000

0012 34AD 0000 0088

Kešo dydžioATM sritis

Tegas Duomenys

0012 34AD0000 0088

0000 2ADC 00FF 0000

246A DC00CCCC 0000

0000 2ADC 00FF 0000

000 sritis

009 sritis

00000400800C

FF8FFC

0000 2ADC 00FF 0000

00000400800C

FF8FFC

000

009

A06

000

Page 18: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 18S.Maciulevičius 18

Dalinai asociatyvus kešasAdresassrityje Pagrindinė atmintis

0

1

...65

...255

2 krypčių kešas

2 256 eilutes 64 bitus

246A DC00 CCCC 0000

0012 34AD 0000 0088

Kešo dydžioATM sritis

Tegas Duomenys

0012 34AD0000 0088

0000 2ADC 00FF 0000

246A DC00CCCC 0000

0000 2ADC 00FF 0000

000 sritis

009 sritis

00000400800C

7F87FC

0000 2ADC 00FF 0000

00000400800C

7F87FC

000

009

A06

000

1246 34AD 4444 0088

2ADC 0000 0000 00FF646

0

1

...65

...255

009

1246 34AD4444 0088

0 kryptis

1 kryptis

Page 19: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 19S.Maciulevičius 19

Kešo adresavimas

Kešo dydis - 256 KB, jo eilutės ilgis - 16 baitų. Atminties adreso struktūra:

tegas eilutės numeris (indeksas) vieta eilutėje

31 18 17 4 3 0

Vietai eilutėje nurodyti reikės log216 = 4 bitų.Eilutės numeriui (indeksui) nurodyti reikės

log2(256K/16) = log216K = 14 bitų.Tegui lieka 32 – 4 – 14 = 14 bitų

Page 20: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 20S.Maciulevičius 20

Kešo adresavimas

9 1 2 A 4 5 C

1 0 0 1 0 0 0 1 0 0 1 0 1 0 1 0 0 1 0 0 0 1 0 1 1 1 0 0

Jeigu, pavyzdžiui, procesorius kreipiasi adresu 912A45CH, tai reiškia, kad adresuojamas žodis keše gali būti saugomas 2A45 eilutės 3 pozicijoje, o tegas lygus 1001000100 = 244H:

18 17 4 3 0

Kešo eilutė:

11 10 01 00

Page 21: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 21S.Maciulevičius 21

Skaitymas iš kešo Pradžia

Ar blokas yra keše?

CPU generuoja kreipinio adresą RA

Pagal RA iš ATMskaityti bloką

Pagal RAskaityti žodį ir perduoti į CPU

Atlikta

Ne

Taip Nustatytibloko vietą keše

Perduoti žodįį CPU

Įrašyti blokąį kešo eilutę

Page 22: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 22S.Maciulevičius 22

Kešo eilutės struktūra

Kešo eilutėje būna tokia informacija:• duomenų baitai – informacijos kopija iš pagrindinės

atminties;• tegas – bitai, nurodantys atminties sritį, iš kurios buvo

įkeltas duomenų blokas (žr. aukščiau pateiktą tiesioginio atitikimo kešo principą iliustruojantį paveikslą);

• bitas V (Valid) – bitas, rodantis, ar kešo eilutė užpildyta („tikra“);

V ... Tegas Duomenų baitai

Page 23: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 23S.Maciulevičius 23

Kešo eilutės struktūra

Be to, priklausomai nuo kešo tipo, eilutėje gali dar būti:

• bitas D (Dirty) – bitas, rodantis, ar į kešo eilutę buvo kas nors įrašyta (jos turinys modifikuotas);

• bitai LRU (Least Recently Used) – bitai, naudojami pakeičiamai eilutei parinkti (dalinai asociatyviame keše).

Page 24: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 24S.Maciulevičius 24

Išrinkimas iš kešo

Page 25: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 25S.Maciulevičius 25

Įrašymo strategijos

• write-through - informacija įrašoma ir į kešą, ir į pagrindinę atmintį

• write-back, copy-back - informacija įrašoma tik į kešą; į pagrindinę atmintį ji perrašoma, jei buvo pakeista

Modifikavimo bitas - M, D (dirty bit)

Ką daryti, jei įrašoma nepataikius?• blokas įrašomas į kešą, o po to rašoma į kešą• rašoma tik į pagrindinę atmintį

Page 26: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 26S.Maciulevičius 26

Kešai procesoriuose

Procesorius Dydis Eilutės

ilgisKešo organizacija

VAX-11/780 8 KB 8 2 krypčių dalinai asociatyvus

Intel 80486 8 KB 16 4 krypčių dalinai asociatyvus

Pentium 2 8 KB 32 2 krypčių dalinai asociatyvus

Pentium II 2 16 KB 32 4 krypčių dalinai asociatyvus

Pentium III 2 32 KB 32 4 krypčių dalinai asociatyvus

PowerPC 601 32 KB 32 8 krypčių dalinai asociatyvus

PowerPC 604 2 32 KB 32 4 krypčių dalinai asociatyvus

Alpha 21164 2 32 KB

96 KB

32

32/64

tiesioginio atitikimo

4 krypčių dalinai asociatyvus

Athlon (K7) 2 64 KB 32 2 krypčių dalinai asociatyvus

Page 27: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 27S.Maciulevičius 27

Kešai šiuolaikiniuose procesoriuose

Modelis Lygis Dydis

AMD Phenom II X4 940 L1 komandų 4 64 KB L1 duomenų 4 64 KB

L2 4 512 KBL3 6 MB

Intel Core i7 920 L1 komandų 4 32 KB L1 duomenų 4 32 KB

L2 4 256 KBL3 8 MB

Intel Core 2 Quad Q6600 L1 komandų 4 32 KB L1 duomenų 4 32 KB

L2 2 4096 KBIntel Atom Z530 L1 komandų 24 KB

L1 duomenų 32 KB L2 512 KB

Page 28: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 28S.Maciulevičius 28

Kešo įtaka kompiuterio našumui

Tik L1 L1 ir L2

3,463,20

3

2

1

0

Tik L2 1,03

Nė vieno

0,58

Eksperimentai su sistema: AMD K6-2 procesorius, 350 Mhz, 512 KB L2 kešas, 2x32 KB L1 kešas, pagrindinė atmintis – 128 MB, magistralė PC100.

Page 29: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 29S.Maciulevičius 29

DRAM

Kompiuterių architektūra ir operacinės sistemos

Page 30: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 30

DRAM ląstelėEilutės linija

Stu

lpel

io li

nija

Pagrindinė kompiuterio atmintis sudaroma iš dinaminės atminties (DRAM) mikroschemų.Vienam bitui saugoti dinaminės atminties ląstelėje pakanka vieno tranzistoriaus (statinėje atmintyje – 6-8).Siekiant sumažinti mikroschemos kontaktų skaičių, tradiciškai buvo

pereita prie adreso perdavimo dalimis: pradžioje į schemą paduodamas eilutės adresas, po to – stulpelio). Tai sąlygoja didesnį taktų skaičių kreipinio metu.Informacija saugoma krūvio pavidalu kondensatoriuje, kuris palaipsniui išsikrauna, todėl ją periodiškai reikia atkurti (regeneruoti). Skaitymo metu kondensatorius taip pat išsikrauna, todėl jo krūvis taip pat atkuriamas. Dėl to DRAM dirba maždaug 10 kartų lėčiau, nei SRAM.

Page 31: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 31S.Maciulevičius 31

Atminčių kainos mažėjimas

1 bito saug. kaina (mili-

centais)

100

10

1

0.1

0.01

0.001

0.00011980 1982 1984 1986 1988 1990 1992 1994 1996 1998 2000

Page 32: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 32S.Maciulevičius 32

DRAM tipai

BEDO

4M

256M64M

16M

1M

Paprastos FPM EDO SDRAM

1987 94 95 96 97 98 99 2000

RDRAM, DDR, DDR2, …

Page 33: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 33S.Maciulevičius 33

DRAM struktūra

DuomenysD0-D3

OE#

WE#

Stulp. adr. buferis

Regener. skaitiklis

Eil. adr. buferis

N.1 taktųgenerat.

Stulpelio dešifr.

Stiprintuvai irĮrašymo valdymas

DRAM matrica

512 512 4

Eil.

deš

ifra

t.

I/O valdymas

ir duomenųbuferiai

A0-A8

A0-A8

A0-A8

CAS#

Regener.kontroleris

RAS#

N.2 taktųgenerat.

Page 34: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 34

Paprasta DRAM

Kiekvienas kreipinys - atskiras.

Stulp.2 Eil.2 Stulp.1 Eil.1

RAS#

CAS#

Addr

Data D1 D2

Page 35: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 35

Fast Page Mode (FPM) DRAM

RAS#

CAS#

Addr

Data

• Paketui perduoti kartojamas CAS#.• Kai CAS# H, duomenų išėjimai Z būsenas.

Stulp.3Stulp.2 Stulp.1 Eil.

D1 D2 D3

Page 36: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 36

Extended Data Output RAM (EDO RAM)

• Paketui perduoti kartojamas CAS#.• Nuo FPM skiriasi tuo, kad duomenys palaikomi išėjime iki

CAS# L. Juos reikia fiksuoti, kai CAS# H.• Todėl galima pasiekti mažesnį periodą (didesnį dažnį).

RAS#

CAS#

Addr

Data

Stulp.3 Stulp.2 Stulp.1Eil.

D1 D2 D3

Page 37: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 37

Burst Extended Data Output RAM (BEDO RAM)

RAS#

CAS#

Addr

Data

Stulp.2Stulp.1 Eil.

D10 D11 D12 D13 D20

Page 38: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 38S.Maciulevičius 38

Burst Extended Data Output RAM (BEDO RAM)

• Įvesta papildoma konvejerio pakopa - dar vienas fiksatorius, todėl duomenys pasiekia išėjimą tik su antruoju sinchroimpulsu

• Vidinis adreso skaitiklis keturioms porcijoms išrinkti

• Paketui perduoti kartojamas CAS#• Duomenys palaikomi išėjime iki CAS# L.

Juos reikia fiksuoti, kai CAS# H• 4 duomenų porcijoms pasiekiama 5-1-1-1

sparta, kai tuo tarpu EDO RAM - 5-2-2-2

Page 39: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 39S.Maciulevičius 39

Synchronous Dynamic RAM (SDRAM)

• Prieš tai apžvelgtų tipų DRAM dirba asinchroniškai sistemos taktinių signalų atžvilgiu. SDRAM darbas pririštas prie sistemos taktinių signalų

• Tai realizuota pridedant registrus (fiksatorius) adreso, duomenų ir valdymo signalams fiksuoti

• Visos jos sukurtos darbui paketiniu režimu, kiekvieną paketo porciją perduodant kas 1 taktą. Paketo ilgis programuojamas: 1, 2, 4, 8 arba 256

• 4 duomenų porcijoms pasiekiama 5-1-1-1 sparta

Page 40: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 40

Synchronous Dynamic RAM (SDRAM)

DRAM

Reg

istr

as

Reg

istr

asAdresas

Valdymosignalai

Duomenys

Sinchronizacija

Page 41: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 41S.Maciulevičius 41

Synchronous Dynamic RAM (SDRAM)

• Mikroschemos viduje realizuotas konvejeris, padidinantis našumą 3 kartus

• SDRAM našumui padidinti panaudojamas kreipinių persidengimas (interleaving): galima kreiptis į vieną modulio dalį, kai antrojoje dalyje baigiamas vykdyti kitas kreipinys

• Darbo spartai nurodyti naudojami du principai:• Minimalus intervalas tarp gretimų paketo porcijų (8 ns, 7 ns, 6 ns

ir pan.)

• Magistralės darbo dažnis (100 MHz dažnį atitinka 8 ns, 133 MHz dažnį atitinka 6 ns ir pan.)

• Nepamirškime, kad pirmoji porcija žymiai vėluoja!

Page 42: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 42S.Maciulevičius 42

PC100 SDRAM laiko diagrama

Eil Eil StulpStulp Eil Stulp

W W W WW W W W W W R R W WR R

• 2 ciklų adresavimas• Pauzės (Bubbles) padidina vėlinimą, sumažina pralaidumą

Duomenys

Kom

Pauzės

Page 43: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 43S.Maciulevičius 43

SDRAM laiko diagrama

Šioje diagramoje reikėtų atkreipti dėmesį į du SDRAM technologijos sąlygojamus dalykus:

• PC platformoje nebuferizuoti SDRAM DIMM reikalauja vadinamojo ‘2-ciklų adresavimo’, kai eilučių ir stulpelių adresai magistralėje laikomi po du ciklus. To reikia naudojamt keletą DIMM lizdų. Ten, kur naudojamas tik 1 DIMM, pakanka 1 ciklo.

• Pakeitus duomenų adresą (išrenkant kitus stulpelius, tiek skaitant, tiek ir įrašant informaciją), reikalingos nedidelės pauzės (‘bubbles’).

Page 44: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 44S.Maciulevičius 44

Double Data Rate SDRAM (DDR SDRAM)

DDR - Double Data Rate SDRAM - SDRAM su dvigubu magistralės dažniu: skaitymo ir rašymo operacijos vykdomos du kartus vieno takto metu - pagal kylantį ir krintantį taktinio impulso frontus

Pralaidumas• 1 kartos - iki 1.6 GB/s (dažnis iki 100 MHz)• dabartinių - 3.2 GB/s (= 200 2 8B; dažnis

200 MHz)

Page 45: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 45S.Maciulevičius 45

SDRAM, DDR, DDR 2

Kaip matome, visos SDRAM schemos dirba pagrindiniu dažniu, o duomenys perduodami kartą per taktą.

DDR schemos taip pat dirba pagrindiniu dažniu, o duomenys perduodami du kartus per taktą.

DDR 2 išėjimo buferiai dirba dvigubu dažniu, o duomenys perduodami du kartus per taktą.

Page 46: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 46S.Maciulevičius 46

DDR2

DDR2 branduolys skaitymo ir rašymo operacijos vykdo tokiu pačiu dažniu, kaip ir DDR ar SDRAM.

Tačiau:

• Padvigubintas I/O buferių darbo dažnis

• Du kartus išplėsta magistralė, jungianti branduolį su buferiais

Todėl duomenys multipleksuojami ir perduodami dvigubu dažniu įprasto pločio magistrale.

Taigi, DDR2 533 dirba tuo pačiu dažniu, kaip DDR266 arba PC133 SDRAM.

Page 47: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 47

DDR2 ir DDR3

DDR3 skiriasi nuo DDR2 tuo, kad iš atminties elementų matricos išrenkama dvigubai daugiau bitų:

Page 48: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 48

DDR2 ir DDR3 skirtumaihttp://www.anandtech.com/memory/showdoc.aspx?i=2989 pateikia tokius lyginamųjų testų rezultatus:

Standard (Buffered) Sandra XI.SP2 Memory Bandwidth - 2.66GHz

Memory SpeedP965ASUS P5B Dlx

P35 DDR2ASUS P5K Dlx

P35 DDR3ASUS P5K3 Dlx

DDR2-800 3-3-3-9 5531 6456 -DDR2-800 5/6-6-6-15

DDR3-800 6-6-6-15 5207 6143 6156

DDR2-1067 4-4-3-11 5782 6811 -

DDR2-1067 5/6-6-6-15 5712 6621 -

DDR3-1067 7-7-7-20 - - 6613

DDR3-1333 9-9-9-25 - - 6757

Page 49: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 49

DDR2 ir DDR3 skirtumaiVėlinimas:

Everest 4.0 - 2.66GHzMemory Latency in ns - Lower is Better

Memory SpeedP965ASUS P5B Dlx

P35 DDR2ASUS P5K Dlx

P35 DDR3ASUS P5K3 Dlx

DDR2-800 3-3-3-9 64.7 63.3 -DDR2-800 5/6-6-6-15DDR3-800 6-6-6-15 71.2 72.7 72.7

DDR2-1067 4-4-3-11 58.5 59 - DDR2-1067 5/6-6-6-15 60.5 62.2 -

DDR3-1067 7-7-7-20 - - 63.9

DDR3-1333 9-9-9-25 - - 63

Page 50: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 50

DDR2 ir DDR3 skirtumaiŽaidimuose (Fra Cry):

Far Cry - HOC RiverFrames Per Second - Higher is Better

Memory SpeedP965ASUS P5B Dlx

P35 DDR2ASUS P5K Dlx

P35 DDR3ASUS P5K3 Dlx

DDR2-800 3-3-3-9 101.26 102.91 -DDR2-800 5/6-6-6-15DDR3-800 6-6-6-15 97.76 99.93 100.27

DDR2-1067 4-4-3-11 103.04 108.02 - DDR2-1067 5/6-6-6-15 102 106.61 -

DDR3-1067 7-7-7-20 - - 102.29

DDR3-1333 9-9-9-25 - - 103.18

Page 51: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 51

DDR2 ir DDR3 skirtumai

Palyginimas rodo, kad VSR P35 (Bearlake), kuris palaiko tiek DDR2, tiek ir DDR3, nerodo realaus našumo skirtumo

P35 platforma pasirodė geriau, nei P965 DDR3 vertos dėmesio, kai kaina krinta arčiau

DDR2 lygio, arba kai pasirodys spartesnės (didesnio dažnio) mikroschemos

Page 52: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 52

DDR DDR2 DDR3 (rinka)

Page 53: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 53S.Maciulevičius 53

Šiuolaikinių DRAM žymėjimas (standartai)

Literatūroje randame tokius DRAM žymėjimus:

• PC133 – SDRAM, atitinkanti JEDEC standarto reikalavimus ir galinti dirbti per 133 MHz magistralę

• PC100 – SDRAM, atitinkanti JEDEC standarto reikalavimus ir galinti dirbti per 100 MHz magistralę

• PC66 – bet kuri SDRAM, atitinkanti JEDEC standarto reikalavimus

• PC800 – RDRAM, dirbanti 800 MHz dažniu

• PC1066 – RDRAM, dirbanti 1066 MHz dažniu

Page 54: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 54S.Maciulevičius 54

Šiuolaikinių DRAM žymėjimas

DDR SDRAM žymėjimai parinkti kitokiu principu – jie rodo maksimalų (teorinį) atminties pralaidumą:

• PC1600 – DDR SDRAM, kurios pralaidumas 1600 MB/s (200MHz duomenų perdavimo sparta ir 100 MHz taktinis dažnis, žodis – 8 baitai)

• PC2100 – DDR SDRAM, kurios pralaidumas 2100 MB/s (266MHz duomenų perdavimo sparta ir 133 MHz taktinis dažnis, žodis – 8 baitai)

Page 55: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 55S.Maciulevičius 55

Šiuolaikinių DRAM žymėjimas

• PC3200 (DDR 400) – DDR SDRAM, kurios pralaidumas 3200 MB/s (400MHz duomenų perdavimo sparta ir 200 MHz taktinis dažnis, žodis – 8 baitai)

• PC3700 (DDR 466) – DDR SDRAM, kurios pralaidumas 3700 MB/s (2 233 MHz 8 baitai)

• PC4000 (DDR 500) – DDR SDRAM, kurios pralaidumas 4000 MB/s (2 250 MHz 8 baitai)

Page 56: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 56S.Maciulevičius 56

Šiuolaikinių DDR2žymėjimas

• PC3200 (DDR2 400) – DDR2 SDRAM, kurios pralaidumas 3200 MB/s (400MHz = 4x100MHz duomenų perdavimo sparta, žodis – 8 baitai)

• PC5300 (DDR2 667) – DDR SDRAM, kurios pralaidumas 5300 MB/s (667 MHz 8 baitai)

• PC8000 (DDR2 1066) – DDR2 SDRAM, kurios pralaidumas 8000 MB/s (1066 MHz 8 baitai)

Page 57: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 57S.Maciulevičius 57

DRAM moduliai

SIPP – Single In-Line Pin Package • adatiniai kontaktai• 30 kontaktų• nepraktiški - lankstosi, nulūžta

SIMM – Single In-Line Memory Module• “trumpieji” (90 mm) – 30 kontaktų, 8 bitai• “ilgieji” (108 mm) – 72 kontaktai, 4 baitai• 32 arba 36 - su lyginumo kontrole• ECC-36 ir ECC-40 – su klaidų korekcija

Page 58: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 58S.Maciulevičius 58

DRAM moduliai

Page 59: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 59S.Maciulevičius 59

DRAM moduliai

DIMM – Dual In-Line Memory Module• 133,35 mm – 168 kontaktai, 8 baitai• 64 (paprasta) , 72 (lyginumo kontr. arba klaidų

korekcija), 80 bitų (klaidų korekcija) • modulio talpa – iki 2 GB

Page 60: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 60S.Maciulevičius 60

DRAM regeneracija

• Regeneracijos periodas - Tref

• Eilučių skaičius - Nc

• Šiuolaikinėse DRAM eilučių skaičius dažniausiai būna 4096

• PC/XT regeneraciją vykdė DMA-0: taimeris formuodavo regeneracijos signalą kas 15,6 s

• Dabar regeneraciją valdo VSR (valdymo schemų rinkinys – chipset), stengdamasis panaudoti laisvus magistralės ciklus

Page 61: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 61S.Maciulevičius 61

Atminties valdymas

CPU

D

A

Rd

Wr

D

A

RAS#

CAS#

WE#

OE#

DRAM kontro-leris

DRAM

Page 62: Kompiuterių architektūra  ir operacin ė s  sistemos

2009-2010 S.Maciulevičius 62

Kitą kartą

VIRTUALIOJI ATMINTIS • Virtualiosios atminties esmė• Adresų transliacija ir jos spartinimasIŠORINĖS ATMINTIES ĮTAISAI• Magnetiniai diskai• Kompaktiniai diskai ir DVD• Flash atmintis • Nauji išorinių atminčių tipai