A CSENGŐ

Vannak, akik előtted olvassák ezt a hírt.
Iratkozzon fel, hogy friss cikkeket kapjon.
Email
Név
Vezetéknév
Hogyan szeretnéd elolvasni a Harangszót?
Nincs spam

Dinamikus véletlen hozzáférésű memória (RAM)

A statikus véletlen hozzáférésű memóriaeszközök lehetővé teszik a rögzített információk tárolását mindaddig, amíg a chip áram alatt van. Az SRAM tárolócellája azonban viszonylag nagy területet foglal el, így a nagy kapacitású RAM esetében kondenzátort használnak tárolócellaként. Ennek a Kapacitásnak a töltése természetesen idővel csökken, ezért körülbelül 10 ms-ig kell újratölteni. Ezt az időszakot regenerációs időszaknak nevezzük. A Kapacitás újratöltődik egy memóriacella beolvasásakor, így az információ regenerálásához elegendő egyszerűen beolvasni a regenerált memóriacellát.

A dinamikus RAM tárolóelem diagramja és kialakítása az 1. ábrán látható.

Egy dinamikus RAM tárolóelem diagramja és kialakítása.

A Kapacitás töltés leolvasásánál figyelembe kell venni, hogy az olvasóvonal Kapacitása sokkal nagyobb, mint a tárolócella kapacitása. A 2. ábrán láthatók az olvasási vonal feszültségváltozásainak grafikonjai, amikor egy memóriacellából információt olvasnak ki regenerálás nélkül.

2. ábra: A feszültségváltozások grafikonjai az olvasási vonalon, amikor információt olvasunk egy memóriacellából.

Kezdetben a mikroáramkör teljesítményének fele az írási/olvasási vonalon van. A kezdeti feszültség regenerálásához az áramkör két írási/olvasási vonal közé csatlakoztatott RS triggert használ. Egy ilyen kapcsolat diagramja a 3. ábrán látható.

3. ábra: A regeneráló kaszkád diagramja.

A regenerálási idő csökkentése érdekében a memóriamátrix egy sorában lévő memóriacella beolvasásakor a teljes sor regenerálódik.

A dinamikus RAM egyik jellemzője a címbusz multiplexelés. A sor és az oszlop címe felváltva kerül továbbításra. A sor címét a RAS# villogó jel szinkronizálja (Row Address strobe), az oszlop címét pedig a CAS# (Oszlop cím villogó). A címmultiplexelés lehetővé teszi a RAM chip érintkezőinek számának csökkentését. A dinamikus RAM chip képe a 4. ábrán látható, a dinamikus RAM elérésének időzítési diagramja pedig az 5. ábrán.

4. ábra A dinamikus RAM illusztrációja kapcsolási rajzokon.

5. ábra: A dinamikus RAM-hoz való hozzáférés ütemezési diagramja

Az ábrán látható időzítési diagramok feltételezik, hogy egy memóriacella elérésekor kétszer állítsuk be a RAM memóriacella elérésének kódját a címbuszon. Jellemzően a szomszédos memóriacellákban található adatokhoz férünk hozzá, így nem szükséges minden alkalommal a sorcímet továbbítani olvasáskor. A dinamikus RAM elérésének ezt a módját FPM-nek (Fast Page Mode) hívják. Az olvasott adatblokk hossza négy szó. Egy ilyen memóriaelérési mód idejének becslése érdekében az időt a processzor rendszerbusz-ciklusaiban mérjük. Normál memóriaelérési módban a hozzáférési idő minden szónál azonos. Ezért a dinamikus memória elérésének ciklusa 5-5-5-5-ként írható fel.

Gyors oldalelérési módban a dinamikus memóriaelérési ciklus 5-3-3-3 formátumban írható fel, vagyis a teljes memóriaelérési idő közel másfélszeresére csökken. Az FPM mód időzítési diagramja a 6. ábrán látható.

6. ábra: FPM módban a dinamikus RAM elérésének idődiagramja.

A RAM sebességének növelésének másik módja az EDO (Extended Data Out: RAM kiterjesztett adatkimenettel) használata. Az EDO erősítőkben a regenerátorok nem alaphelyzetbe állnak a CAS# villogó végén, így az adatolvasás gyorsabb. Az EDO RAM esetében a dinamikus memóriaelérési ciklus 5-2-2-2-ként írható fel.

A dinamikus RAM áramkörök fejlesztésének következő lépése az oszlopszámláló használata volt a RAM részeként. Ez azt jelenti, hogy amikor a cella címe a mátrix következő oszlopába kerül, az oszlop címe automatikusan növekszik. Ezt a RAM-ot BEDO-nak (Batch Access RAM) hívják.

A szinkron RAM-ban (SDRAM) nagyobb teljesítmény érhető el a csővezetékes jelfeldolgozás használatával. Mint ismeretes, egy folyamat használatakor elválaszthatja az egyes műveleteket, például a sorok lekérését, az oszlopok lekérését, a memóriacellák beolvasását, és ezeket a műveleteket egyszerre hajthatja végre. Ebben az esetben, miközben az előzőleg beolvasott adatok a kimenetre kerülnek, az aktuális memóriacellához tartozó oszlop dekódolásra kerül, és a sor visszafejtésre kerül a következő memóriacella számára. Ezt a folyamatot a következő ábra szemlélteti:

7. ábra Az adatfeldolgozási folyamat blokkvázlata.

3.9. Véletlen hozzáférésű tárolóeszközök

Tárolóeszközök Az elvégzett funkciók szerint fel vannak osztva működőképesÉs állandó. Működőképes tárolóeszközök ( RAM) rögzíteni, tárolni és olvasni információkat, és csak akkor működik, ha a tápfeszültség be van kapcsolva, azaz a RAM illó. Állandó tárolóeszközök ( ROM) információkat tárolnak, amikor a tápellátás ki van kapcsolva, azaz a ROM-ok vannak nem illékony.

Az információtárolás típusa alapján a RAM fel van osztva statikusÉs dinamikus. A statikus RAM-ban a memóriaelem az ravaszt, dinamikusan - kondenzátor. Magyarul RAM-nak hívják RAM (véletlen hozzáférésű memória- véletlen hozzáférésű memória). Ennek megfelelően statikus RAM SRAM, dinamikus DRAM.

Statikus RAM

Tovább 1.ábra egy statikus tárolóeszköz felépítését mutatja be.

1. ábra. Statikus RAM szerkezet

EP az emlékezet eleme. Tárolóelemnek is nevezik ( ZE). Az összes memóriaelemet a tárolómátrix tartalmazza. Az elemek száma az 2 n. Minden egyes elektronikus aláírás egy bit információt tárol, és megvan a maga sajátja n- bites bináris kód.

A cím két részre oszlik (általában azonos) - egy sorcímre és egy oszlopcímre. Ez egy téglalap alakú mátrixot eredményez, amely tartalmazza 2 k vonalak és 2 m oszlopok. A teljes memóriaelemek lesznek 2 k+m .

Mivel a sorok és az oszlopok száma lényegesen nagyobb, mint egy bináris szám bitkapacitása, a címbemenetek és a memóriaelemek mátrixa közé dekóderek kerülnek, amelyeket az ábrán sordekóderként és oszlopdekódolóként jelölünk.

Tekintsük a statikus RAM memóriaelem egyik változatát. Íme a diagram:

Rizs. 2. Statikus RAM memóriaelem

A memória tényleges eleme az D-trigger, a kereszteződésben található én-húrok és j oszlop. A forgácscsapok számának csökkentése érdekében RAM kombinálják bemeneteiket és kimeneteiket. Ezért az ábrán egy elektronikus kulcs is szerepel S.W..

A szinteken log. 1 a vonalakon énÉs jés mikor adják meg a felvételi engedélyt WR=1(tól től ír- rekord), a trigger rögzíti a beérkező információkat bemenet D. Ebben az esetben a gumiabroncs Írja be a kijáratot-hoz kapcsolódik D trigger bemenet elektronikus kulcson keresztül S.W.és a jel eltávolításakor bemeneti funkciókat hajt végre WR a kulcs csatlakozik a buszhoz Írja be a kijáratot trigger kimenet, és ez a busz szolgál kimenetként.

Ha a RAM egybites, akkor a busz Írja be a kijáratot közös lesz az összes memóriaelemben. De gyakrabban a RAM több bites, és ebben az esetben minden vonalpáron sor-oszlop található n kiváltók és n kulcsok hol n-a számjegyek száma és az elem "ÉS"és már csak egy maradt. És mindegyik kulcs a saját buszához csatlakozik Írja be a kijáratot.

Az írási és olvasási módokon kívül, amelyeket a bemeneti potenciál határoz meg WR, létezik adattárolási mód, amelyben tilos írni és olvasni. A módnak kettős jelentése van.

Először is, ha az eszközben sok RAM chip van, ami jellemző, akkor az írás vagy az olvasás egy chipen történik, a többit ebben az esetben le kell tiltani.

Másodszor, adattárolási módban az energiafogyasztás sokkal kisebb, mint írási és olvasási módban ( Munkamód). A RAM tárolási módba helyezéséhez jelet használnak C.S. angolul kristály kiválasztása- kristály kiválasztása. Általában a bemeneten át kell kapcsolni tárolási módba C.S. szint van ellátva log. 1, üzemmódba kapcsoláshoz - log. 0.

Dinamikus RAM

Amint azt korábban említettük, a dinamikus RAM-ban a memóriaelemek funkcióit látják el kondenzátor. Az információt elektromos töltés ábrázolja, például ha töltés van egy kondenzátoron, akkor azt a memóriaelembe írják log. 1, Díjmentes - log. 0.

Mivel a kondenzátor töltésmegtartási ideje korlátozott (a szivárgás miatt), a rögzített információkat időszakonként vissza kell állítani. Ezt a folyamatot ún regeneráció. Ezenkívül a dinamikus RAM szinkronizálást igényel a funkcionális egységek aktiválási sorrendjének biztosítása érdekében.

A dinamikus RAM memóriaelem megvalósításához az ábrán látható áramkör 3. ábra.

Rizs. 3 - Dinamikus RAM memóriaelem

A memóriaelem kiválasztása jellel történik log. 1 a vonal buszon. VT2 tranzisztor kinyílik és csatlakozik C1 kondenzátor oszlopbusszal. РШ - bit busz. Korábban keresztül VT1 tranzisztor, amely jelzéssel nyílik meg "Beat (C)", töltés kapacitásVAL VEL w feszültségig U 0 . Kapacitás C w jelentősen meg kell haladnia kapacitás C1.

A dinamikus RAM memóriaeleme egyszerűbb, mint a statikus RAM-é, így a dinamikus RAM memória mennyisége nagyobb, mint a statikus RAM-é. Ha a cím nagy, akkor két részre oszlik. Az elsőt úgy hívják RAS, ami magyarul azt jelenti sor hozzáférési jel- vonal mintavételi jel, második - CAS, angol értelemben oszlop hozzáférési jel- oszlopmintavételi jel.

Jelek RASÉs CAS időben egymáshoz képest eltolt, engedélyező jel rögzítése WR meg kell jelennie a cím mindkét részének megadásakor. Ezzel egy időben WR információs jel kerül bevezetésre. Olvasási módban az információs jel a jelhez képest némi késéssel jelenik meg a kimeneten CAS.

Memóriachip jeleinek kijelölése (tájékoztató jellegű)

1. Cím: A

2. Órajel: C

3. Oszlopcím villogó: CAS

4. Sorcím villogó: RAS

5. Chip kiválasztása: CS

6. Jóváhagyás: CE

7. Felvétel: WR

8. Olvasmány: RD

9. Írás-olvasás: W/R

10.Felvételi felbontás: WE

11.Kimeneti felbontás: OE

12.Adatok (információk): D

13.Bemeneti adatok: DI

14. Impresszum: DO

15.Cím, adatok; bemenet, kimenet: ADIO

16.Adat bemenet, kimenet: DIO

17.Regeneráció: REF

18.Programozás: PR

19. Törlés: ER

22.Általános következtetés: OV

Sokkal dinamikusabb memória van a számítógépben, mint a statikus memória, mivel a DRAM a virtuális gép fő memóriája. Az SRAM-hoz hasonlóan a dinamikus memória egy magból (elektronikus eszközök tömbje) és interfészlogikából (pufferregiszterek, adatolvasó erősítők, regeneráló áramkörök stb.) áll. Bár a DRAM típusok száma már meghaladta a két tucatot, magjaik szinte azonosan vannak elrendezve. A fő különbségek az interfészlogikához kötődnek, és ezek a különbségek a mikroáramkörök alkalmazási köréből is adódnak - a VM főmemóriája mellett dinamikus memória IC-ket is tartalmaznak például a videó adapterek. A dinamikus memóriachipek osztályozása az ábrán látható. 5.10.

A DRAM típusok közötti különbségek értékeléséhez először nézzük meg a dinamikus memóriával való munka algoritmusát. Ehhez az ábrát fogjuk használni. 5.6.

Az SRAM-mal ellentétben a DRAM cella címe két lépésben kerül a chipre, először az oszlopcím, majd a sorcím, ami lehetővé teszi a címbusz érintkezők számának körülbelül felére csökkentését, a tok méretének csökkentését. és helyezzen nagyobb számú chipet az alaplapra. Ez természetesen a teljesítmény csökkenéséhez vezet, mivel kétszer annyi ideig tart a cím átvitele. Annak jelzésére, hogy egy adott pillanatban a cím melyik része kerül továbbításra, két segédjelet használnak RAS és CAS. Memóriacella elérésekor a címbusz a sor címére van állítva. Miután a buszon a folyamatok stabilizálódnak, a RAS jel kerül alkalmazásra és a cím beírásra kerül a chip belső regiszterébe

Rizs. 5.10. A dinamikus RAM osztályozása: a - chipek a fő memóriához; b - chipek videó adapterekhez

memória. A címbusz ezután az oszlopcímre lesz beállítva, és kiadódik a CAS jel. A WE sor állapotától függően a cellából adatot olvas vagy ír a cellába (az adatokat írás előtt az adatbuszon kell elhelyezni). A cím beállítása és a RAS (vagy CAS) jel kiadása közötti intervallumot a mikroáramkör műszaki jellemzői határozzák meg, de általában a rendszerbusz egyik ciklusában a címet, a következőben pedig a vezérlőjelet állítják be. Így a dinamikus RAM egy cellájának olvasásához vagy írásához öt órajelciklus szükséges, amelyekben a következő történik: sorcím kiadása, RAS jel kiadása, oszlopcím kiadása, CAS jel kiadása, olvasási/írási művelet végrehajtása (a statikus memóriában az eljárás csak két-három lépést vesz igénybe).

Ne feledje az adatok újragenerálásának szükségességét is. De a kondenzátor természetes kisülése mellett az elektronikus eszköz idővel töltésvesztéshez is vezet a DRAM-ból történő adatolvasás során, így minden olvasási művelet után az adatokat vissza kell állítani. Ezt úgy érjük el, hogy ugyanazokat az adatokat közvetlenül a kiolvasás után újra írjuk. Egy cellából való információ beolvasásakor a teljes kiválasztott sor adatai egyszerre kerülnek kiadásra, de csak azok kerülnek felhasználásra, amelyek az érdeklődési oszlopban vannak, a többit figyelmen kívül hagyja. Így az egyik cellából történő olvasási művelet a teljes sor adatának megsemmisüléséhez vezet, és vissza kell állítani. A kiolvasás utáni adatregenerálást a chip interfész logikája automatikusan végrehajtja, és ez közvetlenül a sor kiolvasása után történik.

Most nézzük meg a dinamikus memóriachipek különböző típusait, kezdve a rendszer-DRAM-mal, vagyis a fő memóriaként való használatra tervezett chipekkel. A kezdeti szakaszban ezek aszinkron memóriachipek voltak, amelyek működése nincs szigorúan a rendszerbusz órajel-impulzusaihoz kötve.

Aszinkron dinamikus RAM. Az aszinkron dinamikus RAM chipek vezérlése RAS és CAS jelekkel történik, működésük elvileg nem kapcsolódik közvetlenül a busz órajel-impulzusaihoz. Az aszinkron memóriát a memóriachipek és a vezérlő interakciójára fordított többletidő jellemzi, így az aszinkron áramkörben a RAS jel csak azután jön létre, hogy órajel impulzus érkezik a vezérlőhöz, és a memóriachip bizonyos idő elteltével érzékeli. idő. Ezt követően a memória adatokat állít elő, de a vezérlő csak a következő órajel megérkezésekor tudja olvasni, mivel szinkronban kell működnie a többi VM eszközzel. Így a memóriavezérlő és a memóriavezérlő várakozása miatt kis késések vannak az olvasási/írási ciklus során.

MikroáramkörökDRAM. Az első dinamikus memóriachipek az adatcsere legegyszerűbb, gyakran hagyományosnak nevezett módszerét alkalmazták. Egy memóriasor olvasását és írását csak minden ötödik óraciklusban tette lehetővé (5.11. ábra, A). Egy ilyen eljárás lépéseit korábban leírtuk. A hagyományos DRAM az 5-5-5-5 képletnek felel meg. Az ilyen típusú mikroáramkörök akár 40 MHz-es frekvencián is működhettek, és lassúságuk miatt (a hozzáférési idő kb. 120 másodperc volt) nem tartottak sokáig.

MikroáramkörökFPM DRAM. Az FPM módot megvalósító dinamikus RAM chipek szintén a DRAM korai típusai. A rezsim lényegét korábban bemutattuk. Az FPM DRAM olvasó áramkörét (5.11. ábra, b) az 5-3-3-3 képlet írja le (összesen 14 órajel). A gyors oldalelérési séma alkalmazása 60 másodpercre csökkentette a hozzáférési időt, ami – figyelembe véve a magasabb buszfrekvencián való működés képességét – a memória teljesítményének a hagyományos DRAM-hoz képest körülbelül 70%-os növekedéséhez vezetett. Ezt a típusú chipet körülbelül 1994-ig használták személyi számítógépekben.

MikroáramkörökEDO DRAM. A dinamikus RAM fejlesztésének következő szakasza az IC-k voltak hiperoldal mód, hozzáférés(HRM, Hyper Page Mode), ismertebb nevén EDO (Extended Data Output – kiterjesztett adatmegőrzési idő a kimeneten). A technológia fő jellemzője az FPM DRAM-hoz képest megnövelt adat rendelkezésre állási idő a mikroáramkör kimenetén. Az FPM DRAM chipeknél a kimeneti adatok csak akkor maradnak érvényesek, ha a CAS jel aktív, ezért a második és az azt követő sor eléréséhez három óraciklus szükséges: egy CAS kapcsoló aktív állapotba, egy adatolvasási óra és egy CAS kapcsoló az inaktív állapot. Az EDO DRAM-ban a C AS jel aktív (lefutó) élén az adatok egy belső regiszterben tárolódnak, ahol a jel következő aktív élének érkezése után még egy ideig tárolódnak. Ez lehetővé teszi a tárolt adatok felhasználását, amikor a CAS már inaktív állapotban van (5.11. ábra, V)

Más szóval, az időzítési paraméterek javulnak a mikroáramkör kimenetén az adatstabilizáció pillanatára való várakozási ciklusok kiküszöbölésével.

Az EDO DRAM olvasási mintája már 5-2-2-2, ami 20%-kal gyorsabb, mint az FPM. A hozzáférési idő körülbelül 30-40 ns. Meg kell jegyezni, hogy az EDO DRAM chipek maximális rendszerbusz-frekvenciája nem haladhatja meg a 66 MHz-et.

MikroáramkörökBEDO DRAM. Az EDO technológiát a VIA Technologies továbbfejlesztette. Az EDO új módosítása BEDO (Burst EDO) néven ismert. A módszer újdonsága, hogy az első hozzáférés során a mikroáramkör teljes sora beolvasásra kerül, amely a csomag egymást követő szavait tartalmazza. A szavak szekvenciális átvitelét (oszlopváltást) a chip belső számlálója automatikusan felügyeli. Ez kiküszöböli annak szükségességét, hogy a csomagban lévő összes cellához címet adjanak ki, de külső logika támogatására van szükség. A módszer lehetővé teszi a második és az azt követő szavak olvasási idejének csökkentését egy másik óraciklussal (5.11. ábra, d), aminek következtében a képlet az 5-1-1-1 alakot veszi fel.

5.11. Négy szóból álló csomaghosszúságú aszinkron dinamikus memória különféle típusainak időzítési diagramja: a - hagyományos DRAM; b - FPM FRAM; V- EDO DRAM;

G - BEDO DRAM

MikroáramkörökEDRAM. A DRAM gyorsabb változatát a Ramtron leányvállalata, az Enhanced Memory Systems fejlesztette ki. A technológia FPM, EDO és BEDO változatokban valósul meg. A chip gyorsabb maggal és belső gyorsítótárral rendelkezik. Ez utóbbi jelenléte a technológia fő jellemzője. A cache memória statikus memória (SRAM), kapacitása 2048 bit. Az EDRAM mag 2048 oszlopot tartalmaz, amelyek mindegyike egy belső gyorsítótárhoz csatlakozik. Bármely cella elérésekor a teljes sor (2048 bit) egyidejűleg beolvasásra kerül. Az olvasási sor bekerül az SRAM-ba, és az információnak a cache memóriába való átvitele gyakorlatilag nincs hatással a teljesítményre, mivel egy órajelen belül történik. Az azonos sorhoz tartozó cellák további elérésekor az adatok a gyorsabb gyorsítótárból kerülnek ki. A kernelhez való következő hozzáférés akkor történik, ha olyan cellát érünk el, amely nem a chip gyorsítótárában tárolt sorban található.

A technológia a leghatékonyabb szekvenciális olvasáskor, vagyis amikor egy chip átlagos hozzáférési ideje megközelíti a statikus memóriára jellemző értékeket (kb. 10 ns). A fő nehézség az inkompatibilitás a más típusú DRAM-okkal végzett munka során használt vezérlőkkel

Szinkron dinamikus RAM. A szinkron DRAM-ban az információcserét külső órajelek szinkronizálják, és szigorúan meghatározott időpontokban történik, ami lehetővé teszi, hogy a processzor-memóriabusz sávszélességéből mindent kivegyen, és elkerülje a várakozási ciklusokat. A cím és a vezérlés információi a memória IC-ben vannak rögzítve. Ezt követően a mikroáramkör válasza egyértelműen meghatározott számú órajel impulzuson keresztül történik, és a processzor ezt az időt más, nem a memória elérésével kapcsolatos műveletekre használhatja fel. Szinkron dinamikus memória esetén a hozzáférési ciklus időtartama helyett az órajel frekvenciájának minimálisan megengedett periódusáról beszélnek, és már 8-10 ns nagyságrendű időről beszélünk.

MikroáramkörökSDRAM. Az SDRAM (Synchronous DRAM) rövidítést a „szokásos” szinkron dinamikus RAM chipekre használják. Az SDRAM és az aszinkron dinamikus RAM között fentebb tárgyalt alapvető különbségek négy pontra csökkenthetők:

Szinkron adatátviteli módszer a buszra;

Szállítószalagos mechanizmus csomagtovábbításhoz;

Több (két vagy négy) belső memóriabank használata;

A memóriavezérlő funkcióinak egy részének átvitele magának a mikroáramkörnek a logikájába.

A memória szinkronizálása lehetővé teszi a memóriavezérlő számára, hogy „tudja”, hogy az adatok készen állnak, ezáltal csökkentve az adatok várakozási és keresési ciklusainak költségeit. Mivel az adatok az IC kimenetén az óraimpulzusokkal egyidejűleg jelennek meg, a memória interakciója más virtuális gépekkel leegyszerűsödik.

A BEDO-val ellentétben a pipeline lehetővé teszi a csomagadatok átvitelét órajelenként, aminek köszönhetően a RAM megszakítás nélkül, magasabb frekvencián tud működni, mint aszinkron RAM. A csővezeték előnyei különösen fontosak hosszú, de a chip vonal hosszát meg nem haladó csomagok továbbításakor.

Jelentős hatás érhető el, ha a teljes cellakészletet független belső tömbökre (bankok) osztjuk fel. Ez lehetővé teszi, hogy összekapcsolja az egyik bank cellájához való hozzáférést a többi bankban végrehajtott következő művelet előkészítésével (vezérlő áramkörök újratöltése és információk visszaállítása). A memória több sorának egyidejű nyitva tartásának képessége (különböző bankokból) szintén javítja a memória teljesítményét. A bankok felváltva történő elérésekor a bankok számával arányosan csökken az egyes hozzáférési gyakoriság, és az SDRAM magasabb frekvencián tud működni. A beépített címszámlálónak köszönhetően az SDRAM a BEDO DRAM-hoz hasonlóan burst módban is lehetővé teszi az olvasást és az írást, az SDRAM-ban pedig a burst hossza változó és burst módban egy teljes memóriasor kiolvasására van lehetőség. Az IC az 5-1-1-1 képlettel jellemezhető. Annak ellenére, hogy az ilyen típusú dinamikus memória képlete megegyezik a BEDO-éval, a magasabb frekvencián való működés képessége azt jelenti, hogy a két 6 bankos SDRAM 100 MHz-es busz órajel mellett majdnem megkétszerezheti a BEDO memória teljesítményét. .

MikroáramkörökDDR SDRAM. Az SDRAM technológia továbbfejlesztésében fontos lépés volt a DDR SDRAM (Double Data Rate SDRAM – SDRAM dupla adatátviteli sebességgel). Az SDRAM-mal ellentétben az új módosítás a szinkronizáló impulzus mindkét szélén burst módban állít elő adatokat, aminek köszönhetően az átviteli sebesség megduplázódik. A rendszerbusz órajelétől függően számos DDR SDRAM specifikáció létezik: DDR266, DDR333, DDR400, DDR533. Így a DDR333-as memóriachip csúcssávszélessége 2,7 GB/s, a DDR400-nál pedig 3,2 GB/s. A DDR SDRAM jelenleg a dinamikus memória leggyakoribb típusa a személyes virtuális gépekben.

MikroáramkörökRDRAM, DRDRAM. A memóriával rendelkező processzorok hatékonyságának növelésének legkézenfekvőbb módja a busz órajelének vagy a mintavételezési szélességének (az egyidejűleg átvitt bitek számának) növelése. Sajnos a két lehetőség kombinálására irányuló próbálkozások jelentős technikai nehézségekbe ütköznek (a frekvencia növekedésével az elektromágneses kompatibilitási problémák súlyosbodnak, egyre nehezebb lesz biztosítani, hogy minden párhuzamosan küldött információbit egyszerre érkezzen meg a fogyasztóhoz). A legtöbb szinkron DRAM (SDRAM, DDR) széles mintavételezést (64 bit) használ korlátozott buszfrekvencián.

A Rambus 1997-ben egy alapvetően eltérő megközelítést javasolt a DRAM felépítéséhez. Arra összpontosít, hogy az órajelet 400 MHz-re növelje, miközben a mintaszélességet 16 bitre csökkenti. Az új memória RDRAM (Rambus Direct RAM) néven ismert. Ennek a technológiának több fajtája létezik: Base, Concurrent és Direct. Összességében az órajelet az órajelek mindkét szélén hajtják végre (mint a DDR-ben), aminek köszönhetően a kapott frekvencia 500-600, 600-700 és 800 MHz. Az első két lehetőség szinte teljesen megegyezik, de a Direct Rambus technológiájában meglehetősen jelentős változások történtek.

Először nézzük meg az RDRAM technológia alapvető pontjait, elsősorban a modernebb változatra - a DRDRAM-ra összpontosítva. A fő különbség a többi DRAM-típustól a mag és a memóriavezérlő közötti eredeti adatcsere-rendszer, amely az úgynevezett „Rambus csatornán” alapul, aszinkron blokkorientált protokollt használva. Logikai szinten a vezérlő és a memória közötti információ csomagokban kerül átvitelre.

Háromféle csomag létezik: adatcsomagok, sorcsomagok és oszlopcsomagok. A sorokból és oszlopokból álló csomagok a memóriavezérlőtől érkező parancsok továbbítására szolgálnak, amelyek a tárolóelemek tömbjének sorait, illetve oszlopait szabályozzák. Ezek a parancsok helyettesítik a hagyományos RAS, CAS, WE és CS jeleket használó chipvezérlő rendszert.

A GE tömb bankokra van felosztva. Számuk egy 64 Mbit kapacitású kristályban 8 független vagy 16 kettős bank. A két bankban a bankpár közös olvasási/írási erősítőt használ. A chip belső magjában 128 bites adatbusz található, amely 16 bájt átvitelét teszi lehetővé minden oszlopcímen. Felvételkor olyan maszkot használhatunk, amelyben minden bit a csomag egy bájtjának felel meg. A maszk segítségével megadható, hogy a csomagból hány bájtot és mely bájtokat írjon a memóriába.

A csatornában lévő adatok, sor- és oszlopsorok teljesen függetlenek, így a sorparancsok, oszlopparancsok és adatok egyidejűleg, és a chip különböző bankjaira továbbíthatók. Az oszlopcsomagok két mezőt tartalmaznak, és öt sorban továbbítják őket. Az első mező a fő írási vagy olvasási műveletet határozza meg. A második mező vagy egy rekordmaszk használatának jelzését tartalmazza (maga a maszk kerül továbbításra az adatvonalakon), vagy egy kiterjesztett műveleti kódot, amely a fő művelet opcióját határozza meg. A karakterlánc-csomagok aktiválási, törlési, regenerálási és energiamód váltási parancsokra vannak osztva. Három sor van kijelölve a karakterlánc-csomagok továbbítására.

Az írási művelet azonnal követheti az olvasást - csak egy késleltetés szükséges, amíg a jel áthalad a csatornán (2,5-30, nem függ a csatorna hosszától). Az átvitt kód egyes bitjeinek átvitelének késleltetésének kiegyenlítése érdekében a táblán lévő vezetőket szigorúan párhuzamosan kell elhelyezni, azonos hosszúságúaknak kell lenniük (a vonalak hossza nem haladhatja meg a 12 cm-t), és meg kell felelniük a fejlesztő által meghatározott szigorú követelményeknek. .

A csatorna minden írása csővezetékbe állítható, az első adatcsomag késleltetése 50 ns, a fennmaradó olvasási/írási műveletek pedig folyamatosan történnek (a késleltetés csak írásról olvasási műveletre való váltáskor lép fel, és fordítva).

A rendelkezésre álló kiadványok megemlítik az Intel és a Rambus munkáját az RDRAM új verzióján, az nDRAM-on, amely 1600 MHz-ig támogatja az adatátvitelt.

MikroáramkörökSLDRAM. Az RDRAM potenciális versenytársa a jövőbeli személyes virtuális gépek memóriaarchitektúra-szabványaként egy új típusú dinamikus RAM, amelyet a SyncLm Consortium fejlesztett ki, amely a virtuális gépek gyártóinak konzorciuma, és az SLDRAM rövidítéssel ismert. Az RDRAM-mal ellentétben, amelynek technológiája a Rambus és az Intel tulajdona, ez a szabvány nyitott. Rendszerszinten a technológiák nagyon hasonlóak. Az adatok és parancsok a vezérlőtől a memóriába és vissza az SLDRAM-ba n vagy 8 csomagból álló csomagokban kerülnek továbbításra. A parancsok, címek és vezérlőjelek egy egyirányú, 10 bites parancsbuszon keresztül kerülnek továbbításra. Az olvasási és írási adatok egy kétirányú, 18 bites adatbuszon keresztül történnek. Mindkét busz ugyanazon a frekvencián közlekedik. Ez a frekvencia egyelőre még 200 MHz, ami a DDR technológiának köszönhetően 400 MHz-nek felel meg. Az SLDRAM következő generációinak legalább 400 MHz-es frekvencián kell működniük, azaz 800 MHz-nél nagyobb effektív frekvenciát kell biztosítaniuk.

Egy vezérlőhöz legfeljebb 8 memóriachip csatlakoztatható. A vezérlőtől távolabb eső chipek jeleinek késleltetésének elkerülése érdekében minden egyes chip időzítési jellemzői meghatározásra kerülnek, és a tápfeszültség bekapcsolásakor bekerülnek a vezérlőregiszterébe.

MikroáramkörökESDRAM. Ez az EDRAM szinkron verziója, amely ugyanazokat a technikákat használja a hozzáférési idő csökkentésére. Az írási művelet, ellentétben az írási művelettel, megkerüli a gyorsítótárat, ami növeli az FSDRAM teljesítményét, amikor a gyorsítótárban lévő sorról folytatja az olvasást. A chipben található két banknak köszönhetően minimálisra csökken az olvasási/írási műveletekre való felkészülés miatti leállás. A vizsgált mikroáramkör hátrányai ugyanazok, mint az EDRAM-é - a vezérlő bonyolultsága, mivel figyelembe kell vennie annak lehetőségét, hogy felkészüljön egy új kernelsor beolvasására a gyorsítótárba. Ezenkívül tetszőleges címsorozat esetén a cache-memória felhasználása nem hatékony.

MikroáramkörökCDRAM. Ezt a típusú RAM-ot a Mitsubishi Corporation fejlesztette ki, és az ESDRAM átdolgozott változatának tekinthető, amely mentes néhány tökéletlenségétől. Módosult a cache memória kapacitása és az abban való adatok elhelyezésének elve. Egyetlen gyorsítótár-blokk kapacitása 128 bitre csökkent, így a 16 kilobites gyorsítótár egyidejűleg 128 memóriahely másolatait képes tárolni, ami lehetővé teszi a gyorsítótár-memória hatékonyabb felhasználását. A gyorsítótárban elhelyezett első memóriarész cseréje csak az utolsó (128.) blokk kitöltése után kezdődik. A hozzáférés módjai is megváltoztak. Így a chip külön címbuszokat használ a statikus gyorsítótár és a dinamikus mag számára. Az adatok átvitele a dinamikus magból a gyorsítótárba a buszra történő adatkibocsátással párosul, így a gyakori, de rövid átvitelek nem csökkentik az IC teljesítményét nagy mennyiségű információ olvasásakor a memóriából, és a CDRAM-ot az ESDRAM-mal egyenrangúvá teszik, illetve olvasáskor. szelektív címeken egyértelműen a CDRAM nyer. Meg kell azonban jegyezni, hogy a fenti változtatások a memóriavezérlő még nagyobb bonyolultságához vezettek.

A dinamikus tárolóeszközökben az információkat töltés formájában egy kondenzátoron tárolják. Ezért a RAM nem kap folyamatosan áramot, hanem csak nagyon rövid ideig. A RAM mátrix kondenzátorainak töltés visszaállítására szolgál. Az impulzusos tápegységnek köszönhetően a dinamikus RAM több ezerszer kevesebb energiát fogyaszt, mint a hasonló kapacitású statikus RAM-ok.

A dinamikus memóriachipekben a tárolóelemek funkcióit az MIS szerkezeten belül kialakított elektromos kondenzátorok látják el. Mivel a kondenzátor töltésének fenntartási ideje korlátozott, gondoskodni kell a rögzített információ helyreállításáról (regenerálásáról). A dinamikus RAM regenerációs periódusa több milliszekundum (K565 sorozatú chipeknél a regenerálási idő 2 ms).

A lábak számának csökkentése érdekében a legtöbb dinamikus RAM mikroáramköreit (MC) a címkód multiplexelésével építik fel: először az A0 - A7 vonalkód kerül be az MS-be, és azt villogóval rögzíti a bemeneti regiszterben. jel RAS ( Sor Cím Strobe), majd az A8 - A13 oszlop címkódját, rögzítve a belső regiszterben a CAS villogó jellel ( Oszlop Cím Strobe).

Regenerációs módban a RAM chip a CAS = 1 jel alkalmazásával le van választva az információ bemenetétől és kimenetétől, ezért csak a sorok címzése történik meg információregenerálás az összes sormemóriaelemben egyidejűleg történik.

A sorok címei között keresve a regeneráló eszköz biztosítja az információ visszaállítását a meghajtó teljes mátrixában. A K565RU5 típusú LSI dinamikus RAM szimbóluma és a művelet időzítési diagramja az 5.6. ábrán látható.

A 8 tranzisztoros dinamikus memóriacella áramkörét az 5.7. ábra mutatja. Csak abban különbözik a hasonló statikus RAM celláktól, hogy a T3 és T6 tranzisztorok kapui egy regenerációs impulzusgenerátorhoz csatlakoznak, nem pedig áramforráshoz.

5.7 ábra - Egy dinamikus RAM memóriacella diagramja 5.8 ábra – Egy tranzisztoros dinamikus RAM cella diagramja

A cellánkénti tranzisztorok számának csökkentésével jelentősen növelhető volt az egyetlen chipen elhelyezett dinamikus memória kapacitása, és csökkenthető az áramforrásból származó energiafogyasztás.

5.5. Csak olvasható tárolóeszközök

A csak olvasható memóriaeszközök (ROM) nem felejtő eszközök, amelyeket digitális adatok tárolására használnak. A ROM-ok épülhetnek passzív elemekre (P biztosítékok vagy D diódák) vagy aktív elemekre (tranzisztorok). A ROM áramkör egy mátrix (5.9. ábra), a vízszintes sorok száma megegyezik a tárolt szó bitmélységével, a függőleges sorok száma pedig a tárolt szavak számával.

Amint az a diagramból látható, a címvonal aktiválásakor a függőleges busz a jelföldre csatlakozik, és az ehhez a buszhoz csatlakoztatott diódák az adatvezetékeket a földre söntik. Ha tehát a vízszintes adatvonalat diódán (vagy jumperen) keresztül kötjük a függőlegeshez, akkor a címsor kiválasztásakor az adatvonal kimenete nullához közeli potenciállal, azaz logikai 0-val fog rendelkezni. Ha a dióda ill. jumper nincs jelen ebben a csomópontban, akkor az adatvonal megfelelő kimenetén közeli magas potenciál van E P, azaz logikai 1. Az ilyen ROM-okat jellemzően a mátrix csomópontokban lévő összes diódával (vagy olvasztható hivatkozással) gyártják. Azokban a csomópontokban, amelyekben egy dióda vagy jumper hiányzik, kiégetéssel távolítják el őket. Ezt az eljárást a ROM programozása során hajtják végre, és „ROM írásnak” nevezik.
5.9. ábra – Mátrix ROM kapcsolási rajza

Az információ szóról szóra (byte byte) kerül a ROM-ba. Ahhoz, hogy egy ROM cellába információt vigyünk be, nagy potenciált (≈ 25 V) kell alkalmazni az adatvonalakra, aminek tartalmaznia kell az „1”-et, és ki kell választani a megfelelő címsort, pl. csatlakoztassa a jel földhöz. Az áram megolvasztja a diódát vagy az olvadó kapcsolatot, ezáltal megszűnik a megfelelő adatvonal sönt áramköre.

A figyelembe vett ROM-áramkör hátránya, hogy az információ bevitele után nem módosítható. Vagyis a ROM-ban tárolandó program megváltoztatásakor új eszközt kell programozni. Ennek a hátránynak a kiküszöbölésére félig állandó elektromosan újraprogramozható csak olvasható memóriákat (EEPROM) fejlesztettek ki. Az EEPROM áramkör hasonló a MOSFET ROM-hoz, de az ilyen eszköz tranzisztorainak lebegő kapuja van, amelyet félvezető anyagból készült oxidréteg elektromosan szigetel. Az EEPROM áramkört az 5.10. ábra mutatja. Ha a lebegő kapura (FG) pozitív potenciál kerül a tranzisztor lefolyásához képest, az FG-n elektromos töltés indukálódik, amely a jó minőségű szigetelés miatt akár 10 évig vagy tovább is tarthat. Ennek a töltésnek köszönhetően a tranzisztor nyitott állapotban van, amelyben a Drain-Source ellenállása nullához közelít.


Dinamikus RAM(Dinamikus RAM - DRAM) a modern PC-k legtöbb RAM-rendszerében használatos. Az ilyen típusú memória fő előnye, hogy cellái nagyon sűrűn vannak csomagolva, pl. Sok bitet egy kis chipbe lehet csomagolni, ami azt jelenti, hogy ezek alapján nagy kapacitású memória szervezhető.


A DRAM chip memóriacellái apró kondenzátorok, amelyek töltést tartanak. A bitek pontosan így vannak kódolva (töltések megléte vagy hiánya által). Az ilyen típusú memóriával kapcsolatos problémákat az okozza, hogy dinamikus, pl. folyamatosan regenerálni kell, mert különben a memóriakondenzátorok elektromos töltései „lemerülnek” és adatvesztésre kerül sor. A frissítés akkor következik be, amikor a rendszer memóriavezérlője egy kis szünetet tart, és hozzáfér a memóriachipekben lévő összes adatvonalhoz. A legtöbb rendszer rendelkezik memóriavezérlővel (általában az alaplapi lapkakészletbe van beépítve, de a processzorba is beépíthető, mint az Athlon 64 és az Opteron processzorok esetében), amely iparági szabványnak megfelelő 15 ms-os frissítési gyakoriságra van beállítva. Ez azt jelenti, hogy 15 ms-onként a memória minden sora kiolvasásra kerül az adatok újragenerálása érdekében.


A memória regenerálása sajnos időt vesz el a processzortól. Minden regenerációs ciklus több CPU ciklust vesz igénybe. Régebbi számítógépeken a frissítési ciklusok a CPU-idő 10%-át (vagy többet) igénybe vehetik, de a modern rendszerekben ez a költség kevesebb, mint 1%. Egyes rendszerek lehetővé teszik a regenerálási beállítások módosítását a BIOS beállítási segédprogrammal. A frissítési ciklusok közötti intervallumot tREF-nek nevezik, és nem ezredmásodpercben, hanem órajelben adják meg. Nagyon fontos megérteni, hogy a frissítési ciklusok közötti intervallum növelése a rendszer teljesítményének javítása érdekében esetenként véletlenszerű hibákhoz vezethet.


A tetszőleges hiba olyan adatfeldolgozási hiba, amely nem kapcsolódik a memóriachip hibájához. A legtöbb esetben biztonságosabb az ajánlott vagy alapértelmezett regenerálási gyakoriság mellett maradni. Mivel a modern számítógépek regenerálási költsége kevesebb, mint 1%, a frissítési gyakoriság módosítása csekély hatással van a számítógép teljesítményére. Az egyik legelfogadhatóbb lehetőség az alapértelmezett értékek vagy a Setup BIOS programban megadott automatikus beállítások használata a memória szinkronizálásához. A legtöbb modern rendszer nem teszi lehetővé a megadott memóriaidőzítés megváltoztatását, mindig automatikusan beállított paramétereket használ.


A DRAM-eszközök csak egy tranzisztort és egy pár kondenzátort használnak egy bit tárolására, így nagyobbak, mint más típusú memóriachipek. Jelenleg már 4 GB vagy annál nagyobb kapacitású dinamikus RAM chipeket gyártanak. Ez azt jelenti, hogy az ilyen chipek több mint egymilliárd tranzisztort tartalmaznak! De a Core 2 Duo processzornak csak 230 millió tranzisztorja van. Miért ekkora különbség? A tény az, hogy egy memóriachipben minden tranzisztor és kondenzátor sorba van helyezve, általában egy négyzetrács csomópontjaiban, nagyon egyszerű, periodikusan ismétlődő struktúrák formájában, ellentétben a processzorral, amely egy bonyolultabb áramkör. különböző struktúrák, amelyek nem rendelkeznek egyértelmű szervezettel.


Az egyes egybites DRAM regiszterek tranzisztorát a szomszédos kondenzátor állapotának olvasására használják. Ha a kondenzátor fel van töltve, a cellába egy mértékegység kerül beírásra; ha nincs töltés, nullát írunk. Az apró kondenzátorok töltései folyamatosan lemerülnek, ezért a memóriát folyamatosan regenerálni kell. Még az áramellátás pillanatnyi megszakadása vagy a regenerációs ciklusok valamilyen meghibásodása is a DRAM cellában töltésvesztéshez, következésképpen adatvesztéshez vezet. Egy működő rendszerben ez a „halál kék képernyőjének” megjelenéséhez, a biztonsági rendszer globális meghibásodásához, fájlok sérüléséhez vagy teljes rendszerhibához vezet.


RAM típusok és teljesítmény

A memória teljesítményével kapcsolatban némi zavar van, mert általában nanoszekundumban mérik, míg a processzor sebességét megahertzben és gigahertzben mérik. Az új, nagy sebességű memóriamodulokban a teljesítményt megahertzben mérik, ami tovább bonyolítja a helyzetet. Szerencsére nem nehéz átváltani az egyik mértékegységet a másikra.


A nanoszekundum a másodperc egymilliárd része, azaz. nagyon rövid ideig. Különösen a fény sebessége vákuumban 299 792 km/s, i.e. a másodperc egy milliárdod része alatt a fénysugár mindössze 29,98 cm távolságot tesz meg, i.e. kisebb, mint egy szabályos vonalzó hossza.


A memóriachipek és általában a rendszerek sebességét megahertzben (MHz) fejezzük ki, pl. millió ciklusban másodpercenként, vagy gigahertzben (GHz), azaz. ciklusok milliárdjaiban másodpercenként. A modern processzorok órajele 2 és 4 GHz között van, bár belső architektúrájuk (például többmagos) sokkal nagyobb hatással van a teljesítményükre.


Az órajel frekvenciájának növekedésével a ciklusidő csökken. A számítógépek fejlődése során a memóriaelérés hatékonyságának javítása érdekében különböző szintű gyorsítótárakat hoztak létre, amelyek megakadályozzák a processzorok hozzáférését a lassabb főmemóriához. A DDR, DDR2 és DDR3 SDRAM memóriamodulok csak a közelmúltban utolérték a processzorbusz teljesítményét. Ha a processzor és a memóriabusz frekvenciája egyenlő, a memória teljesítménye optimálissá válik egy adott rendszer számára.


2000-re a processzor és a memóriabusz sebessége 100, sőt 133 MHz-re nőtt (ezeket a modulokat PC100-nak, illetve PC133-nak hívták). 2001 elején a memória sebessége megduplázódott, és 200 és 266 MHz-re vált; 2002-ben 333 MHz-en, 2003-ban pedig 400 és 533 MHz-en adtak ki DDR memóriamodulokat. 2005-ben és 2006-ban a memóriasebesség növekedése megfelelt a processzorbusz sebességének növekedésének - 667 MHz-ről 800 MHz-re. 2007-ben a DDR2 memória sebességét 1066 MHz-re növelték, és ezzel egyidőben a DDR3 memóriát is kiadták azonos és magasabb frekvenciával. Az alábbi táblázat felsorolja a memóriamodulok fő típusait és azok sebességét.


Memória típusa A népszerűség csúcsa Modul típusa Feszültség Max. frekvencia, MHz Egycsatornás, MB/s Kétcsatornás, MB/s
FPM DRAM1987-1995 30/72 tűs SIMM5 V22 177 -
EDO DRAM1995-1998 72 tűs SIMM5 V33 266 -
SDR DRAM1998-2002 168 tűs DIMM3,3 V133 1066 -
Rambus DRAM2000-2002 184 tűs RIMM2,5 V1066 2133 4266
DDR SDRAM2002-2005 184 tűs DIMM2,5 V400 3200 6400
DDR2 SDRAM2005-2008 240 tűs DDR2 DIMM1,8 V1066 8533 17066
DDR3 SDRAM2008+ 240 tűs DDR3 DIMM1,5 V1600 12800 25600

EDO. Extended Data Out (bővített adatkimeneti képességek).

DIMM. Dual Inline Memory Module (memóriamodul kétsoros kivezetéssel).

DDR. Dupla adatátviteli sebesség (dupla adatátviteli sebesség).

FPM. Fast Page Mode (gyors oldal mód).

SIMM. Single Inline Memory Module (memóriamodul egysoros kivezetéssel).

RIMM. Rambus Inline Memory Module (a Rambus szabvány memóriamodulja).


Memória teljesítmény

Hibás memóriamodul vagy chip cseréjekor az új elemnek azonos típusúnak kell lennie. Jellemzően problémák merülnek fel olyan chipek vagy modulok használatakor, amelyek nem felelnek meg bizonyos (nem túl sok) követelményeknek, például a regenerációs ciklusok időtartamának. Ellentmondásokkal találkozhat a kivezetések, a kapacitás, a kapacitás vagy a kialakítás terén is. Ha nem tudja, milyen memóriamodulokat engedélyez az alaplapja, ellenőrizze a dokumentációt.


Gyorsabb memóriamodulok telepítésekor a számítógép teljesítménye általában nem javul, mivel a rendszer ugyanazon a frekvencián éri el. A DIMM-eket és RIMM-eket használó rendszerekben a sebességet és az egyéb időzítési jellemzőket a modulra telepített speciális SPD ROM-ból olvassák ki. Ezután a memóriavezérlő konfigurálása ezekkel a paraméterekkel történik. Az ilyen rendszerek teljesítménye gyorsabb memóriamodulok telepítésével növelhető, a rendszerlogikai lapkakészlet által támogatott határig.


Az időzítési és megbízhatósági problémák megoldása érdekében az Intel és a JEDEC szabványokat hozott létre a nagy sebességű memóriamodulokhoz, meghatározva azokat a memóriamodul-típusokat, amelyek megfelelnek bizonyos teljesítményszinteknek. E szabványok szerint a memóriamodulokat időzítési jellemzőik szerint osztályozzák.


Az elégtelen memóriateljesítmény vagy a rendszer időzítési jellemzőivel való összeegyeztethetetlenség fő jelei a memória- és paritáshibák, valamint a rendszer lefagyása és instabil működése. Ebben az esetben a POST teszt is hibákat vethet fel. Ha nem biztos abban, hogy mely memóriamodulok elfogadhatók az Ön rendszeréhez, forduljon a számítógép gyártójához, és próbáljon meg memóriamodulokat vásárolni egy jó hírű szállítótól.


Paritás- és hibajavító kódok (ECC)

A hibák az információk RAM-ban való tárolása során elkerülhetetlenek. Ezeket általában hardverhibáknak és időszakos hibáknak (összeomlásoknak) sorolják.


Ha egy normálisan működő mikroáramkör, például fizikai sérülés miatt, hibásan kezd el működni, akkor ezt hardverhibának nevezzük. Az ilyen típusú hibák megoldásához általában ki kell cserélni a memória hardverének egy részét, például egy hibás chipet, SIMM-et vagy DIMM-et.


A meghibásodás másik, alattomosabb típusa az időszakos hiba (összeomlás). Ez egy időszakos meghibásodás, amely nem fordul elő, ha a működési feltételek ismétlődnek vagy rendszeres időközönként. (Az ilyen hibákat általában úgy „kezelik”, hogy kikapcsolják, majd újra bekapcsolják a számítógépet.)


Körülbelül 20 évvel ezelőtt az Intel alkalmazottai megállapították, hogy az alfa-részecskék okozzák a hibákat. Mivel az alfa-részecskék még egy vékony papírlapon sem tudnak áthatolni, felfedezték, hogy forrásuk egy félvezetőben használt anyag. A vizsgálat során tórium és urán részecskéket találtak az akkoriban használt mikroáramkörök műanyag és kerámia tokozásában. A technológiai folyamat megváltoztatásával a memóriagyártók megszabadultak ezektől a szennyeződésektől.

A memóriagyártók mára szinte teljesen megszüntették az alfa-részecskék forrásait. Ennek eredményeként számos memóriamodul-gyártó eltávolította termékeiből a paritásellenőrzés támogatását, annak ellenére, hogy a memóriahibákat nem sikerült teljesen kiküszöbölni. Az újabb kutatások kimutatták, hogy az alfa-részecskék a memóriahibák okainak csak kis töredékéért felelősek.


Ma a szabálytalan hibák legnagyobb oka a kozmikus sugarak. Mivel annyira áthatóak, szinte lehetetlen árnyékolással védekezni ellenük. Ezt a tézist az IBM által Dr. J.F. vezetésével végzett számos tanulmány is megerősítette. Ziegler.


Egy kísérlet, amely azt vizsgálta, hogy a kozmikus sugarak milyen mértékben befolyásolják a hibákat a mikroáramkörök működésében, azt mutatta, hogy egyes DRAM-modulok jel-hiba aránya (SER) 5950 hibaegység (FU) volt minden egyes mikroáramkörben. A méréseket a valóshoz közeli körülmények között, több millió gépórás időtartamot figyelembe véve végeztük. Egy átlagos számítógépen ez körülbelül félévente előforduló szoftvermemória-hibát jelentene. Szerverrendszerekben vagy nagy teljesítményű, nagy mennyiségű RAM-mal rendelkező munkaállomásokon az ilyen statisztikák minden hónapban egy (vagy akár több) memóriahibát jeleznek! Amikor egy tesztrendszert ugyanazokkal a DIMM-ekkel egy biztonságos menedékbe helyeztek több mint 15 méteres mélységben egy sziklaréteg alá, ami teljesen kiküszöböli a kozmikus sugarak hatását, a memóriában egyáltalán nem rögzítettek szoftverhibákat. A kísérlet nemcsak a kozmikus sugarak hatásának veszélyét mutatta be, hanem azt is, hogy mennyire hatékony az alfa-sugarak és a radioaktív szennyeződések hatásának kiküszöbölése a memóriamodulok héjában.


A kozmikus sugarak okozta hibák nagyobb veszélyt jelentenek az SRAM-modulokra, mint a DRAM-modulokra, mivel egy bit SRAM-cellában való tárolásához szükséges töltés sokkal kisebb, mint a DRAM-ban lévő kondenzátor kapacitása. A kozmikus sugarak nagyobb veszélyt jelentenek a nagy sűrűségű memóriachipekre is. Minél nagyobb a memóriasejtek sűrűsége, annál nagyobb a valószínűsége annak, hogy egy kozmikus sugár eltalál egy ilyen sejtet. A memóriakapacitás növekedésével a hibaarány is növekszik.


Sajnos a PC-gyártók ezt nem ismerték fel memóriahibák okának. A hiba véletlenszerűsége sokkal könnyebben igazolható elektrosztatikus kisüléssel, nagy áramlökéssel vagy hibás szoftverműködéssel (például az operációs rendszer új verziója vagy egy nagy alkalmazási program használata). Tanulmányok kimutatták, hogy az ECC rendszerekben a szoftverhibák aránya 30-szor nagyobb, mint a hardverhibáké. És ez nem meglepő, tekintettel a kozmikus sugarak káros hatásaira. A hibák száma a telepített memóriamodulok számától és méretétől függ. Szoftverhibák havonta egyszer, hetente többször, sőt még gyakrabban is előfordulhatnak.


Bár a legtöbb szoftvermemória-hibát a kozmikus sugarak és a sugárzás okozzák, vannak más tényezők is.

Túlfeszültség vagy vonali zaj. Az ok hibás tápegység vagy fali aljzat lehet.

Nem megfelelő típusú vagy jellemzőkkel rendelkező memória használata. A memóriatípust egy adott lapkakészletnek kell támogatnia, és az adott készlet által meghatározott hozzáférési sebességgel kell rendelkeznie.

Statikus kisülések. Azonnali túlfeszültséget okoz az áramellátásban, ami befolyásolhatja az adatok integritását.

Szinkronizálási hibák. Az időben nem kapott adatok szoftverhibákat okozhatnak. Ennek oka gyakran a helytelen BIOS-beállítások, a rendszer által igényeltnél lassabb RAM, a túlhúzott processzorok és egyéb rendszerelemek.

Hőleadás. A nagy sebességű memóriamodulokat magasabb működési hőmérséklet jellemzi, mint a régi modulokat. Az első hőlevezetővel felszerelt modulok az RDRAM RIMM modulok voltak; Manapság sok nagy teljesítményű DDR2 és DDR3 modul hőlevezetővel van felszerelve, mivel csak így lehet leküzdeni a hőtermelés megnövekedett szintjét.


A legtöbb leírt probléma nem okozza a memóriachipek működésének leállását (bár a rossz tápellátás vagy a statikus elektromosság fizikailag károsíthatja őket), de hatással lehetnek a tárolt adatokra.

A kudarcok figyelmen kívül hagyása természetesen nem a legjobb módja annak, hogy kezeljük őket. A hibatűrés javítása érdekében a modern számítógépek olyan technikákat alkalmaznak, mint a paritás- és hibajavító kódok (ECC).


A paritás nélküli rendszerek egyáltalán nem biztosítanak hibatűrést. Használatuk egyetlen oka a minimális alapköltség. Ugyanakkor, más technológiákkal ellentétben, nincs szükség további RAM-ra. Egy paritásadat-bájt 8 helyett 9 bitet tartalmaz, így a paritásmemória költsége körülbelül 12,5%-kal magasabb. Ezen túlmenően azok a memóriavezérlők, amelyek nem igényelnek logikai hidat a paritás- vagy ECC-adatokhoz, egyszerűsített belső architektúrával rendelkeznek. A hordozható rendszerek, ahol az alacsony energiafogyasztás különösen fontos, a kevesebb DRAM chip használatának köszönhetően csökkentett memóriateljesítményt jelent. Végül a paritás nélküli memória adatbusz kisebb szélességgel rendelkezik, ami kevesebb adatpuffert jelent. A memóriahibák statisztikai valószínűsége a modern asztali számítógépekben körülbelül néhány havonta egy hiba. A hibák száma a használt memória mennyiségétől és típusától függ.


Ez a hibaarány elfogadható lehet olyan hagyományos számítógépek esetében, amelyeket nem használnak kritikus alkalmazásokhoz. Ebben az esetben az ár játssza a főszerepet, a paritásos és ECC-támogatással rendelkező memóriamodulok többletköltsége pedig nem indokolt, így könnyebb elfogadni a ritkán előforduló hibákat.


Paritás

Ez az IBM által bevezetett szabványok egyike, amely szerint a memóriabankok információi 9 bites töredékekben tárolódnak, ebből nyolc (egy bájtot tartalmazó) magának az adatnak szól, a kilencedik pedig egy paritásbit. A kilencedik bit használata lehetővé teszi, hogy a hardverszintű memóriakezelő áramkörök figyeljék az egyes adatbájtok integritását. Ha hibát észlel, a számítógép leáll, és hibaüzenet jelenik meg a képernyőn. Ha Windows vagy OS/2 operációs rendszert futtató számítógépen dolgozik, paritási hiba esetén előfordulhat, hogy az üzenet nem jelenik meg, de a rendszer egyszerűen leblokkol. Újraindítás után a BIOS-nak azonosítania kell a hibát, és meg kell jelenítenie a megfelelő üzenetet.


A SIMM-ek és DIMM-ek paritásbit-támogatással vagy anélkül kaphatók.

Az első PC-k paritásmemóriát használtak az elvégzett műveletek pontosságának szabályozására. 1994-től zavaró tendencia kezdett kialakulni a PC-piacon. A legtöbb vállalat olyan számítógépeket kezdett kínálni, amelyek memóriája paritás nélküli, és a hibák észlelésére vagy kijavítására szolgáló eszközök nélkül. A paritás nélküli SIMM modulok használata 10-15%-kal csökkentette a memóriaköltséget. A paritásmemória viszont drágább volt a további paritásbitek használata miatt. A paritástechnológia nem javítja ki a rendszerhibákat, de lehetővé teszi a számítógép-felhasználó számára azok észlelését, aminek a következő előnyei vannak:

A paritásszabályozás véd a hibás adatokon alapuló hibás számítások következményei ellen;

A paritásellenőrzések pontosan meghatározzák a hibák forrását, segítve a probléma megértését és javítva a számítógép működési megbízhatóságát.


A memória támogatásának paritással vagy anélkül történő megvalósítása kevés erőfeszítést igényel. Különösen az alaplap paritástámogatásának megvalósítása nem nehéz. A fő megvalósítási költségek maguknak a paritásos memóriamoduloknak a költségeihez kapcsolódnak. Ha a vásárlók hajlandóak további költségeket vállalni az általuk megrendelt rendszerek megbízhatóságának javítása érdekében, a számítógépgyártók biztosíthatják számukra ezt a lehetőséget.


Paritásellenőrzési rendszer

A paritásszabvány kidolgozásakor az IBM úgy határozta meg a paritásbit értékét, hogy az egyesek száma mind a kilenc bitben (nyolc adatbit és a paritásbit) páratlan legyen. Más szóval, amikor egy bájtnyi adatot (8 bit) írunk a memóriába, egy speciális paritási áramkör (az alaplapra vagy a memóriakártyára telepített chip) megszámolja a bájtban lévő egyesek számát. Ha páros, akkor a mikroáramkör kimenetén egy logikai egyes jel keletkezik, amely a megfelelő memóriabitben kilencedik bitként (paritásbitként) tárolódik. A kilenc számjegyben szereplő egyesek száma páratlan lesz. Ha a forrásadat nyolc bitjében az egyesek száma páratlan, akkor a paritásbit nulla, és a kilenc bites bináris számjegyek összege is páratlan marad.


Nézzünk egy konkrét példát (ne feledje, hogy egy bájt bitjei nullától kezdődően vannak számozva, azaz 0, 1, 2, ..., 7).

Bitérték: 1 0 1 1 0 0 1 1 0

Ebben az esetben az egy adatbitek száma összesen páratlan (5), tehát a paritásbitnek nullának kell lennie.


Nézzünk egy másik példát.

Adatbit: 0 1 2 3 4 5 6 7 paritásbit

Bitérték: 0 0 1 1 0 0 1 1 1

Ebben a példában az 1-es adatbitek teljes száma páros (4), tehát a paritásbitet 1-re kell állítani ahhoz, hogy az 1-esek száma mind a kilenc bitben páratlan legyen.

Memóriából történő olvasáskor ugyanaz a chip ellenőrzi az információt a paritás szempontjából. Ha egy 9 bites bájtban páros számú egy van, akkor hiba történt az adatok olvasása vagy írása közben. Lehetetlen meghatározni, hogy melyik kisülésben történt (még a sérült kisülések számát sem lehet megtudni). Sőt, ha hiba történt három bitben (páratlan szám), akkor a hiba rögzítésre kerül; ha azonban két hibás bit van (vagy páros számú), a hiba nem kerül rögzítésre. Mivel egy bájt több bitjének egyidejű hibája rendkívül valószínűtlen, ez a tesztelési séma olcsó volt, és egyúttal lehetővé tette a memóriahibák nagy valószínűséggel történő észlelését.

Hiba észlelésekor az alaplap paritási áramköre nem maszkolható megszakítást (NMI) generál, egy rendszerfigyelmeztetést, amelyet a programok nem hagyhatnak figyelmen kívül. A fő munka leáll, és elindul egy speciális, a BIOS-ba írt eljárás.


Néhány évvel ezelőtt, amikor a memória drága volt, néhány vállalat kiadta a SIMM-eket álparitás-ellenőrző chipekkel. Ahelyett, hogy a memória minden bájtjához paritásbiteket tárolnának, ezek a chipek mindig a megfelelő komplement bitet generálták. Így amikor a rendszer megpróbált paritásbitet írni, azt egyszerűen eldobta, egy bájt beolvasásakor pedig mindig a „szükséges” paritásbitet helyettesítette. Ennek eredményeként a rendszer mindig kapott információt a memória helyes működéséről, bár a valóságban minden korántsem lehet így.


Az ilyen csalásokat a memóriachipek magas ára okozta, és a gyártók hajlandóak voltak néhány plusz dollárt fizetni a generátorért, ahelyett, hogy a drágább lapkáért fizetnének, amely a paritásbiteket tárolja. Sajnos elég nehéz volt meghatározni egy ilyen generátor jelenlétét a memóriamodulban. A hamis paritásgenerátor másképp nézett ki, mint a hagyományos memóriachipek, és más jelöléseket is kapott, mint a többi modulchip. A legtöbb generátoron „GSM” logó volt, amely a paritáslogikai eszköz gyártóját jelezte, gyakran eltér attól a cégtől, amely magát a memóriamodult gyártotta.


Az egyetlen eszköz, amely lehetővé tette a modulok hamis paritásellenőrzéssel történő azonosítását, a hardvertesztelők voltak. Most a memóriaárak csökkentek, ami megszüntette az ilyen csalások kiváltó okát.


Hibajavító kód

A hibajavító kódok (ECC) lehetővé teszik, hogy ne csak észlelje a hibát, hanem egy bitben ki is javítsa. Ezért az ilyen kódokat használó számítógép egy bites hiba esetén megszakítás nélkül tud működni, és az adatok nem sérülnek meg. A legtöbb számítógép hibajavító kódjai csak észlelik a kétbites hibákat, de nem javítják ki. Ugyanakkor a memóriahibák hozzávetőlegesen 98%-át egy bit hibája okozza, pl. sikeresen javítható ilyen típusú kóddal. Ezt a típusú ECC-t SEC_DED-nek hívják (ez a rövidítés az „egybites javítás, kétbites hibaérzékelés” rövidítése).


Az ilyen típusú hibajavító kódokban minden 32 bithez további hét ellenőrző bit szükséges egy 4 bájtos szervezethez, és nyolc egy 8 bájtos szervezethez (64 bites Athlon/Pentium processzorok). A hibajavító kód megvalósítása 4 bájtos szervezettel természetesen drágább, mint egy normál paritásellenőrzés, de egy 8 bájtos szervezetnél a költségek azonosak, mivel ugyanannyi további bitet igényelnek.


A hibajavító kódok használatához memóriavezérlőre van szükség, amely a memóriaírási művelet során ellenőrző biteket számít ki. A memóriából történő olvasáskor egy ilyen vezérlő összehasonlítja az ellenőrző bitek olvasott és számított értékeit, és szükség esetén kijavítja a sérült bitet (vagy biteket). A memóriavezérlőben a hibajavító kód megvalósításához szükséges kiegészítő logikai áramkörök költsége nem túl magas, de jelentősen csökkentheti a memória teljesítményét az írási műveletek során. Ennek az az oka, hogy az írási és olvasási műveleteknek meg kell várniuk az ellenőrző bitek befejezését. Egy szó egy részének írásakor először a teljes szót kell elolvasni, majd át kell írni a módosított bájtokat, és csak ezt követően az új számított ellenőrző biteket.


A legtöbb esetben a memóriahiba egyetlen bitben történik, ezért az ilyen hibákat hibajavító kóddal sikeresen kijavítják. A hibatűrő memória használata biztosítja a számítógép nagy megbízhatóságát. Az ECC-memória olyan szerverekhez, munkaállomásokhoz vagy alkalmazásokhoz készült, ahol a számítási hiba lehetséges költsége messze meghaladja a további hardverbefektetést és a rendszeridőt. Ha az adatok különös jelentőséggel bírnak, és számítógépeket használnak fontos problémák megoldására, az ECC memória nélkülözhetetlen. Valójában egyetlen magát tisztelő rendszermérnök sem használna ECC-memória nélkül még a legszerényebbet sem.


A felhasználók választhatnak a nem paritásos, a paritásos és az ECC rendszerek között, pl. a számítógép hibatűrésének kívánt szintje és a felhasznált adatok értékének mértéke között.


Következtetés

A hibajavító kódok használatához memóriavezérlőre van szükség, amely a memóriaírási művelet során ellenőrző biteket számít ki. A memóriavezérlőben a hibajavító kód megvalósításához szükséges kiegészítő logikai áramkörök költsége nem túl magas, de jelentősen csökkentheti a memória teljesítményét az írási műveletek során. Ennek az az oka, hogy az írási és olvasási műveleteknek meg kell várniuk az ellenőrző bitek befejezését.

A hibatűrő memória használata biztosítja a számítógép nagy megbízhatóságát. Az ECC-memória olyan szerverekhez, munkaállomásokhoz vagy alkalmazásokhoz készült, ahol a számítási hiba lehetséges költsége messze meghaladja a további hardverbefektetést és a rendszeridőt. Ha az adatok különös jelentőséggel bírnak, és számítógépeket használnak fontos problémák megoldására, az ECC memória nélkülözhetetlen.

A CSENGŐ

Vannak, akik előtted olvassák ezt a hírt.
Iratkozzon fel, hogy friss cikkeket kapjon.
Email
Név
Vezetéknév
Hogyan szeretnéd elolvasni a Harangszót?
Nincs spam