memorii semiconductoare.pdf

Upload: catalin-oancea

Post on 04-Mar-2016

241 views

Category:

Documents


0 download

TRANSCRIPT

  • Memorii semiconductoare

  • Memoria ideala

    Timp de acces 0 (latenta 0)

    Capacitate infinita

    Cost 0

  • Memorii existente azi

    Volatile = RAM

    Statice SRAM

    Dinamice DRAM

    Nevolatile

    Read-only (ROM)

    Flash

  • Memorii Statice SRAM

    Celula:

    row select

    bitlin

    e

    _bitlin

    e

  • Memorii Statice SRAM - scriere

    Decodificare adresa

    Aplicare bitline=1, _bitline=0

    (sau invers) - precharge

    Selectie rand

    Selectie coloana si scrierea

    Se face practic pt b sau _b, in fct de care din linie este 0 si se propaga apoi (de ce?)

    Dim. tranzistoare: krs ~ 1.5*kpinv

    row select

    bitlin

    e

    _bitlin

    e

    b _b

  • Memorii Statice SRAM - citire

    Decodificare adresa Aplicare bitline=1, _bitline=1 - precharge Selectie rand Citirea: determinare semn cf diferentei bitline- (_bitline) si decodificare coloana

    Pt ca Cbitline e f. mare (la blocuri mari): Cbitline ~ Csd*nrand+Ccontact*nrand; Csd = capac sursa-drena pt

    tranzistoarele de selectie

    Dim. tranzistoare: kninv ~ 1.5*krs

    row select

    bitlin

    e

    _bitlin

    e

    b _b

  • Memorii dinamice DRAM

    Celula

    Descarcare condensator:

    In timp (I f. mic)

    La citire

    Reincarcare (refresh):

    Periodica

    Dupa citire

    row enable

    bitlin

    e

  • Memorii dinamice DRAM scrierea

    (principiu)

    Decodificare adresa

    Aplicare bitline=1, sau bitline=0

    Selectie rand

    Selectie coloana si scrierea

    row enable

    bitlin

    e

  • Memorii dinamice DRAM citirea

    (principiu) Decodificare adresa Aplicare bitline=1 - precharge Selectie rand Decodificare coloana Citirea: determinare semn cf evolutiei tensiunii bitline si refacerea valorii citite

    row enable

    bitlin

    e

  • Memorii dinamice DRAM citirea

    Pt ca Cbitline e f. mare (la blocuri mari):

    Cbitline ~ Csd*nrand+Ccontact*nrand;

    Optim intre k tranz si viteza citire row enable

    bitlin

    e

  • Comparatii celule SRAM/ DRAM

    Viteza de acces (citire, scriere): SRAM mai rapid, DRAM mai lent (inc./ desc.

    condensator, rescriere dupa citire)

    Densitate: DRAM mai mare, SRAM mai mica (arie mare dat. celor

    6 tranzistoare si marimii lor)

    Cost (practic 1/ densitate): Mai mic pentru DRAM

    In plus: DRAM necesita refresh periodic (10-100 ms)

  • Viteza memoriilor

    Pentru acelasi tip: scade mult odata cu cresterea dimensiunii memoriei

    Motivul:

    Cresc capacitatile parazite: Cword ~ Cg*ncol

    Cbit ~ Csd*nrand+Ccontact*nrand

    (creste si timpul de decodificare si de accesare a liniilor/ coloanelor)

  • Organizarea unei memorii: principiu

    Fig. Prof. Onur Mutlu

    Optim intre nr linii si nr de coloane pentru viteza (si dimensiune)

  • Functionarea unui banc DRAM

    14

    Row Buffer

    (Row 0, Column 0)

    Row

    decoder

    Column mux

    Row address 0

    Column address 0

    Data

    Row 0 Empty

    (Row 0, Column 1)

    Column address 1

    (Row 0, Column 85)

    Column address 85

    (Row 1, Column 0)

    HIT HIT

    Row address 1

    Row 1

    Column address 0

    CONFLICT !

    Columns

    Row

    s

    Access Address:

    Slide Prof. Onur Mutlu

  • Problema, pe scurt

    Dimensiune mare = mai lenta SRAM, 512 Bytes, sub-nanosec SRAM, KByte~MByte, ~nanosec DRAM, Gigabyte, ~50 nanosec Hard Disk, Terabyte, ~10 millisec

    Viteza de acces = mai scumpa SRAM, ~ 10$ per Megabyte DRAM, ~ 1$ per Megabyte Hard Disk ~ 1$ per Gigabyte (valori aprox. actuale, evolueaza odata cu tehnologia)

  • Ierarhia memoriei

    Rapida mica

    Mare, lenta

    Folosita la acest moment:

    Info completa (backup):

    Control f. bun face ca memoria sa para: - Rapida ca - Mare ca

    Vit

    eza

    mai

    mar

    e

    Pre

    t m

    ai m

    ic/

    byt

    e

    Fig. Prof. Onur Mutlu

  • Ierarhia memoriei azi Register File

    32 words, sub-nsec

    L1 cache ~32 KB, ~nsec

    L2 cache 512 KB ~ 1MB, few nsec

    L3 cache, .....

    Main memory (DRAM), GB, ~ 50 nsec

    Swap Disk 100 GB, ~10 msec

    manual/compilator register spilling

    automatic demand paging

    Automatic HW cache management

    Memory Abstraction

    Fig. Prof. Onur Mutlu

  • D

    RA

    M B

    AN

    KS

    CORE 1

    L2 C

    AC

    HE

    0

    SH

    AR

    ED

    L3 C

    AC

    HE

    DR

    AM

    INT

    ER

    FA

    CE

    CORE 0

    CORE 2 CORE 3 L

    2 C

    AC

    HE

    1

    L2 C

    AC

    HE

    2

    L2 C

    AC

    HE

    3

    DR

    AM

    BA

    NK

    S

    DRAM MEMORY

    CONTROLLER

    CORE 1

    L2 C

    AC

    HE

    0

    CORE 0

    CORE 2 CORE 3 L

    2 C

    AC

    HE

    1

    L2 C

    AC

    HE

    2

    L2 C

    AC

    HE

    3

    SH

    AR

    ED

    L3 C

    AC

    HE

    DR

    AM

    INT

    ER

    FA

    CE

  • Memorie flash

    Principiul: poarta suplimentara, neconectata, cu potential flotant (floating gate)

    Daca nu e incarcata cu sarcina: tranz se deschide cand pe poarta de comanda se aplica VDD. Daca este incarcata (cu electroni): tranz. NU se deschide cand pe poarta de comanda se aplica VDD.

  • Memorie flash - celula

    Incarcarea cu electroni (scrierea): camp puternic longitudinal si transversal hot carrier injecton

    Descarcarea de sarcina (stergerea): camp puternic transveral, cu + pe sursa, efect de tunelare (Fowler-Nordheim), datorita grosimii mici a izolatorului peste sursa

    G2 (control)

    G1 (flotanta)

    Drena Sursa

  • Bibliografie

    Notitele din clasa (pt examen)

    Prof. Onur Mutlu

    Carnegie Mellon University

    Spring 2013, 3/27/2013

    18-447: Computer Architecture Lectures 22 25 (lectura sumplimentara, pt inteles in detaliu arhitectura memoriei DRAM si cache si functionarea lor detaliata; NU este pentru examen)