Posted By: shimi (The NEUROLOGiC member) on 'CZhardware' Title: Pameti Date: Wed Apr 16 19:10:03 1997 Ciao, Nevim, nevin, ale kdyz tady slysim vase mistama az bludy o pametech, i od takovejch lidi jako je pajasoft tak mam pocit, ze filosofie na liane posledni dobou je : pcha tak to neni, honem zaplacnout necim jinym Pokusim se tady shrnout to co vim o pametech (vnitrnich, podle terminologie) ROM, RAM, VRAM, CMOS RAM, CACHE : tohle jsou deleni z hlediska programatora, kazdy vi, ze v ROM je setup a neda se smazat, RAM pocitac pouziva k ulozeni vykonavanych modulu, VRAM je jakasi pamet do ktere co zapisi, to se prenese na obrazovku, ve CMOS RAM mame ulozen setup, a CACHE nam zrychluje. Ale tohle pojmenovani ma dost malo spolecneho s konstrukci pameti jako takovych. Obecne lze pameti rozdelit na pevne (pouze pro cteni - ROM - ReadOnlyMemory), zapisovatelne (RWM ReadWriteMemory - vsadim se, ze tohle slyselo dost malo lidi), Podle typu pristupu (SAM, RAM - SequentialAccesMemory, RandomAccesMemory - vsimete si ze RAM nema nic spolecneho s pameti pro zapis, a tudiz oznacovani oper pamet RAM je sice spravne, nicmene zcestne protoze vsechny pameti v pc jsou RAM) a teprve naposled podle konstrukce (DRAM, SRAM a jine) ad konstrukce : V podstate pouzivame dve zakladni konstrukce Staticka a dynamicka Staticka pamet je tvorena z mnozstvi bistabilnich klopnych obvodu, ktere jsou naklopeny bud na H nebo L podle toho jestli je bit 0 nebo jedna. Kdo premejsly vidi, ze precist zapsat takovouhle pamet, spociva v tom, dekodovat adresu na H v danem dratu a vystrobovat stav Kl. Obv. na Datove sbernici pripadne KO hodnotou ze sbernice nastavit. Kdo s tim delal, vi ze se to da realizovat se zpozdenim i 5 ns. Ale pri kapacite 256Kb dela pocet bunek pres 2^20 a pri uvazzeni bunky na dva tranzistory nam vyjde cca 4000000 tranzistoru na cipu a tady je (F,S,LS...)TTL technologie na konci. Na pomoc prichazeji (C,N...)MOS technologie ktere jsou na tom trochu lip, maji extremne nizkou spotrebu, drzi i pri napajeni ke trm V, ale jsou pomalejsi (20 a vic ns) a celkem nakladne. (Mate ji v PC jako CMOS RAM na pamatovani setupu). Bipolarni (xTTL) pameti jsou CACHE. Dynamicke : Potom se prislo na to, ze se bunka udela tak, ze se vyuzije parazitni kapacity na tranzistoru (detajly nevim) cims se dosahne mnohonasobne vyssi integrace. Ale naboj v tato kapacite se vybiji (pomerne rychle- udava se bezpacna doba udrzeni dat 2ms). Proto je treba nejdele do te doby zajistit cteni teto bunky (pameti jsou konstuhovany tak, ze se ctenim se informace znovuzapise). Ale tohle by nebylo casove zvladatelne (cist dejme tomu 16milionu bunek do dvou milisec) a proto je KAZDA dynamicka pamet koncipovane jako matice (ctvercove pole bunek) a pri cteni bunky se zaroven ctou (ale nevysilaji na sbernici) vsechny bunky v radku. Dale pro zapis takhle velke adresy se pouziva zapis postupny (prez jedny adres vodice). Dusledek : 1) pro refresh staci cist do dvou ms jen sqr(rozmer pameti) krat ( a to uz je zvledatelne) 2) Zapis adresy je siilene zpomalujici (zklada se z tohoto : 1. tik-zapis radku, 2.tikcekani na prevzeti radku, 3.tik zapis sloupce a pozadavku, asi 4tiky cekani na vyrizeni) VSECHNY 'nove' (doposud) pameti jako EDO SDRAM atd spocivaji pouze ve zrychleni techto fazi. Akorat nove pameti SDRAM v DIMM modulech (snad nic moc o tom nevim) maji behat na 3V Ted se uchylim k tomu, jak je to u PC ROM PAMET - Popisu (moc toho k popisu neni kdyz bude zajem) RWM (RAM) - Taky jsem se zaobiral myslenkou stavet oper pamet z SRAM, ale uz pri letmych vypoctech narazim na trouble ohledne buzeni velkeho poctu cipu (dostanu se opet na dobu kolem 60ns), ale dnes jsou VESKERE op pameti v PC (ale i jinde) Dynamicke, a je vicemene zjisteno, ze staci cteni zretezit+omezit pristup pomoci CACHE. CACHE - SRAM pamet, do ktere se vse po jekychsi 4kb strankach prenaseji bloky z RWM a kdyz prijde pozadavek, SLOZITY (ale opravdu velmi slozity :) ) radic kese provede v 1 taktu vyhledani (plne asociativni) jestli je tento blok, kam adrtesa patri ve SRAM (popr se rozhodne ho tam umistit, popr navic nejaky vyhodit, a to kontroluje jeste platnost regionu (kvuli prenosum DMA a pristupu zarizeni do pameti)) a potom bud pise /cte jen do SRAM nebo dela cykl DRAM. Abyste byli v obratu pri cteni ze sram (pamettovy cykl pentia na 100 trva cca 20ns) je procesor 100% vytizen, ale pri cteni z DRAM cykl je zpozdovan tlogikou razeni DRAM tak na 100ns coz pri max potencialnim vyuziti vyuzije CPU cca na 20% - tohle jsou vsechno moje spekulace (to sem vicemene zmeril nebo vymyslel ajsou to STRASNE hrube odhady) Tak to sou asi zhruba moje vedomosti o pametech a pamet systemu PC doufam, ze jsem nenapovidal moc nesmyslu, nekdo se to bude obtezovat precist, a nekomu to pomuze. Uvitam jakekoliv reakce, otazky etc +-- | | | | /| | I was systemak, +--+ | | | | / | | I'm systemak | +---+ | | | | and I will be systemak --+ | | | | | | E-mail: tsimek@students.zcu.cz http://dione.zcu.cz/~tsimek