Mida tähendab 3D nand tehnoloogia? Mis on Nand Flash iPhone'is? Kuidas määrata SSD-s konkreetset mälutüüpi

NAND-mälu päritolu põhines välkmäludel, mis ilmusid palju varem ja mida kasutati NAND-mälust selgelt väiksema töökiiruse, vastupidavuse ja suurema kiibipinnaga pooljuhtketastes. Välkmälu leiutas Fujio Masuoka 1984. aastal Toshibas töötades. Pärast Fujio Masuoka disaini esitlemist IEEE 1984 (rahvusvahelisel elektronseadmete koosolekul) San Franciscos (California) Inteli ettevõte Aastal 1988 andis see välja esimese kaubandusliku NOR-välkkiibi. NAND-välkmälu tulekust teatas Toshiba 1989. aastal kell Rahvusvaheline konverents pühendatud pooljuhtketastele (rahvusvaheline tahkislülituste konverents).

Välkmälu, NAND-mälu tüübid

Põhiline erinevus välkmälu vahel on see, et see salvestab ühe bitti teavet ujuvvärava transistoride massiivi, mida nimetatakse rakkudeks. SSD-draivides kasutatakse kahte tüüpi NAND-mälu – SLC ja MLC. Mis vahe on SLC- ja MLC-mälutüüpidel? SLC-seadmetel on ühetasandilised rakud, mis salvestavad igas transistoris ainult ühe biti, samas kui mitmetasandilised MLC-d võivad igasse lahtrisse salvestada mitu bitti teavet. See on kasutamise tagajärg erinevad tasemed elektrilaeng transistori ujuvväraval. Teabe (loogiline 0 või 1) kodeerimise põhimõte on kõigil juhtudel sama, seda kirjeldatakse allpool. Ainult raku struktuur erineb. MLC tasemete sügavus võib ulatuda kuni 4-ni, st salvestada kuni 4 bitti teavet, samas kui SLC on lihtsam seade ja salvestab 1 biti.

MLC-tehnoloogia võimaldab taseme tõstmisega oluliselt suurendada ketta mahtu, jättes selle maha füüsilised mõõtmed muutumatuks, mis vähendab iga gigabaidi maksumust. Siin lõpevad selle tehnoloogia positiivsed omadused. Iga lisanduva tasemega muutub signaalitaseme äratundmise ülesanne keerulisemaks, rääkimata ressursi vähenemisest SSD töö-ketas, pikeneb lahtri aadressi otsimise aeg ja suureneb vigade tõenäosus. Vigade kontroll toimub riistvaras, mis MLC-tehnoloogia puhul toob kaasa juhtelektroonika kulude tõusu ja vastavalt suurendab SSD lõpphinda. Maailmaturul laialdaselt müüdavad SSD-draivid kasutavad neljatasemelise salvestusega MLC-tehnoloogiat. Sel juhul on andmed kodeeritud kui (11), (10), (01), (00). SLC puhul saab ühetasandiline lahter võtta ainult väärtused 0 või 1.

Sama suuruse ja hinnaga SLC rakkudega lahendused jäävad neile salvestatava info hulga poolest MLC-le selgelt alla, kuid samas on kiiremad ja vastupidavamad. Seetõttu peavad tootjad kasutama suur kogus väiksema kogumahuga kiibid, mis lõppkokkuvõttes tõstab SLC-ketta hinda sama mahuga MLC-kettaga võrreldes rohkem kui kaks korda.

NAND-mälu elementaarraku kirjutamise ja lugemise mehhanismid

Püüame üksikasjalikumalt kirjeldada NAND-mälu transistori tööd, mis on isoleeritud paisuga väljatransistor ehk MOSFET.

Väljatransistori peamine omadus, mis võimaldas seda teabe salvestamiseks kasutada, oli võime säilitada elektrilaeng "ujuval" väraval kuni 10 aastat. Ujuvvärav ise on valmistatud polükristallilisest ränist ja on täielikult ümbritsetud dielektrilise kihiga, mis tagab selle täieliku puudumise elektriline kontakt transistori elementidega. See asub juhtvärava ja p-n-ühenduse substraadi vahel. Väljatransistori juhtelektroodi nimetatakse väravaks. IN sel juhul juhtivus p-n ristmik, mida põhjustab elektritakistus, juhib potentsiaalide erinevus, mis tekitab elektriväli, mõjutades p-n oleküleminekud.

Transistori olulised elemendid on ka äravool ja allikas. Lahtrisse kirjutatud teabe natuke muutmiseks luuakse juhtvärava pinge abil elektriväli ja tekib tunneliefekt. See võimaldab mõnel elektronil läbida dielektrilise kihi ujuvväravale, pakkudes sellele laengut ja täites seega ühikelemendi natukese informatsiooniga.

Ujuvväravale kogunenud laeng mõjutab äravooluallika juhtivust, mida kasutatakse lugemiseks.

See erinevus salvestus- ja lugemismehhanismides mõjutab selgelt nende režiimide erinevat energiatarbimist. NAND-mälu kulutab kirjutamisel üsna palju voolu, kuid lugemisel on energiatarve vastupidi väike. Teabe kustutamiseks rakendatakse juhtväravale kõrge negatiivne pinge ja ujuvvärava elektronid liiguvad allikasse. Just sellistest elementaarrakkudest, mis on ühendatud lehtedeks, plokkideks ja massiivideks, on tänapäevane pooljuhtketas.

NAND mälu eluiga

NAND-mälu peamine omadus, mis võimaldab seda kasutada SSD-draivides, on võime salvestada andmeid ilma välise toiteallikata. See tehnoloogia seab aga piirangud lahtri loogilise oleku muudatuste arvule, mis toob kaasa selle lahtri jaoks piiratud arvu ümberkirjutamistsükleid. See on tingitud dielektrilise kihi järkjärgulisest hävimisest. See efekt ilmneb MLC-rakkudes palju kiiremini, kuna nende disainiomaduste tõttu on ujuvvärava laengu muutmiseks väike reserv. Lahtri lugemine mõjutab ka selle eluiga, kuid see mõju on märksa väiksem kui kirjutamisel/kustutamisel, mis võimaldab lugeda lugemistsükleid piiramatuks ning SSD ketta eluiga mõõdetakse võimalike ümberkirjutamistsüklite arvu järgi.

Kõik SSD-kettad sisaldavad osa, mis on tavaliste kirjutamis-/lugemistoimingute jaoks ligipääsmatu. See on vajalik tagavaraks rakkude kulumise korral, sarnaselt magnetiline salvestusruum HDD, millel on reserv halbade plokkide asendamiseks. Täiendavat rakureservi kasutatakse dünaamiliselt ja kui primaarelemendid füüsiliselt kuluvad, antakse asendusvaruelement.

Siin on ligikaudne võrdlev tabel peamistest omadustest, mis eristavad SLC-tehnoloogiaga SSD-draivide ja MLC-rakkudega draive.

Tabelis on selgelt näidatud kõik nende tehnoloogiate eelised ja puudused. See näitab SLC-lahenduste paremust MLC-st, kuid ei näita SSD-draivide populaarsuse peamist kriteeriumi - nende hinda. Selliste lahenduste kiire hinnalanguse tõttu pole seda mõtet näidata. Ütleme nii, et kuigi MLC-draivid jäävad SLC-le igas mõttes alla, on need üle kahe korra kallimad ja sama mahuga salvestatud andmetega võivad olla kompaktsemad.

SSD-ketta struktuur: lahtri suurus, lehe suurus, NAND-mäluplokk

Lisateabe saamiseks tõhus kasutamine elementaarsed mälurakud ühendati need mitmetasandilise struktuuriga massiivideks. Üks rakk, mis salvestab ühe (SLC jaoks) või tavaliselt kaks (praeguse põlvkonna MLC jaoks) bitti andmeid, ühendatakse rühmaks, mida nimetatakse leheküljeks ja mis sisaldab 4 KB andmeid.

Spetsiaalsed algoritmid SSD-draividega töötamiseks

Välkmäluelementide piiratud kirjutamis-/kustutustsüklite tõttu pidid arendajad looma SSD-draivi käitamiseks õige algoritmi, mis võimaldas sellel kogu oma salvestusruumi ühtlaselt "kulutada". Nagu me juba märkisime, on kogu ketta maht jagatud 512 KB suurusteks plokkideks ja need omakorda 4 KB mahuga lehtedeks, millele tehakse lugemis- ja kirjutamistoimingud. Kuid kui olete lehele teabe kirjutanud, ei saa seda enne kustutamist üle kirjutada. Probleem on selles, et salvestatava teabe minimaalne suurus ei tohi olla väiksem kui 4 KB ja andmeid saab kustutada vähemalt 512 KB suurustes plokkides. Selleks rühmitab ja edastab kontroller andmed (kirjeldame seda algoritmi allpool), et vabastada kogu plokk. See toiming suurendab reageerimisaega ja vähendab SSD ressurssi, kuid midagi tuleb ohverdada.

Räägime kirjutamise/kustutamise algoritmist.

Pärast operatsioonisüsteemi kirjutamistaotlust määrab meediumikontroller teabe suuruse ja struktuuri. Kui tühje plokke on piisav arv, eraldab see uus plokk, kuhu kopeeritakse salvestamiseks OS-i edastatud andmed. Kui aga ketas täitub ja piisav arv tühje plokke väheneb, muutub see toiming oluliselt keerulisemaks. Kontroller otsib üha enam (vabade lehtede arvu poolest) sobivaima, osaliselt hõivatud ploki ja kirjutab selle ümber tühi plokk, ühendades selle salvestamiseks OS-ist tulevate andmetega, mis täidavad selle täielikult. Seejärel puhastatakse vana plokk. Selle algoritmiga saame ühe täielikult täidetud ploki ja ühe tühja, mis sisaldub kirjutamiseks saadaolevate tühjade plokkide rühmas. Kirjutamistaotluse esitamisel kasutab kontroller ainult selle rühma plokke.

Kontroller on tavaliselt varustatud 10 kanaliga; see arv kanaleid on eriti Inteli SSD-kettakontrolleritel. Kogu kiipide kogum on ühtlaselt määratud igale andmevahetuskanalile. Peal selles etapis SSD-draivide käitamise tehnoloogiate areng, esimese kanaliga suhtlevad mälukiibid ei saa teise, kolmanda ja järgnevate kanalitega töötamisel ristuda, kuid see probleem võib lähitulevikus laheneda. Üsna loogiline oleks kasutada kogu kettal asuva mälu jaoks "ujuvaid" linke. Tihtipeale on vaja salvestada väikeandmete järjekord, siis jaotab kontroller automaatselt kogu ploki kõikide kanalite vahel, kuid lahtritevaheline ühendus säilib, sest see andmeosa on üks loogiline üksus.

Andmete kustutamise toimimine sõltub otseselt ka kustutatavate andmete mahust ja asukohast. Kui kogu teave on kirjutatud ühte plokki või plokkide rühma, hõivates need täielikult, siis plokk/plokid lihtsalt tühjendatakse ja märgitakse tühjaks ning valmis järgnevaks salvestamiseks võimalikult suurel kiirusel. Kuid see ideaalne juhtum ei esine alati.

Kui on vaja kustutada mitte terve plokk, vaid mitu selles asuvat lehekülge, siis kustutab vastutav töötleja andmed loogiliselt, neid kustutamata, vaid märgib lehe andmed lihtsalt kustutatuks. Edaspidi ühendatakse allesjäänud info salvestamiseks tulnud uue infoga ja kirjutatakse tühja plokki ning algne plokk, nagu juba salvestusalgoritmis kirjeldatud, kustutatakse täielikult ja märgitakse tühjaks.

Miks on trimmimist vaja?

See on veel üks oluline tehnoloogia, mis tagab SSD-draivi ühtlasema kulumise ja palju muud kiire töö andmetega, kasutades käsku TRIM. See võimaldab teil luua ahela ja määrata vabastatud plokkide prioriteedi. Varem oli see toiming määratud OS-ile, kuid kaasaegsed SSD-kontrollerid toetavad seda funktsiooni juba draivi püsivara riistvaras. Plokkide kustutamiseks kuluv aeg on eksponentsiaalselt seotud ketta vaba ruumiga. Mida vähem teavet ja rohkem vaba ruumi, seda kiiremini "kärpimine" toimub SSD-l. Kuna ketas on 75% täis, ei ole puhastusfunktsioon tühikäiguga võrreldes ikka veel eriti märgatav. Kuid niipea, kui vaba ruumi jääb järele vähem kui 15%, muutub kärpimine keeruliseks. Loomulikult määrab osa sõltuvusest täielikult teabe tüüp (staatiline, st harva liigutav ja enamasti ainult lugemiseks loetav või dünaamiline). IBM-i uuringute kohaselt on SSD jaoks ideaalsed töötingimused, kui see on alla 75% täis ning staatilise ja dünaamilise teabe suhe on 3:1.

TRIM on tänapäevaste pooljuhtdraivide lahutamatu osa. See suurendab jõudlust, kui kettad on rohkem kui 2/3 ulatuses andmeid täis, tänu plokkide õigele sortimisele ja kirjutamiseks ettevalmistamisele. See võimaldab uue ja juba 75% täis ketta kiiruse erinevust vähendada 2-3% peale.

Ärge unustage, et vaikimisi on operatsioonisüsteem konfigureeritud töötama tavaline HDD ketas, mis tähendab, et kasutaja peab keelama "vanad" mehhanismid magnetketta kiiruse suurendamiseks, samuti defragmentimisalgoritmid. Lisaks on oluline olla mures selle pärast, et ei kasutata ära kogu SSD-draivi ruumi.

Milleks SSD-draividel vahemälu puhvrit kasutatakse?

SSD-draivide vahemälupuhvrit ei kasutata kirjutamis-/lugemisprotseduuri kiirendamiseks, nagu HDD-draivide puhul tavaks. Enamiku tootjate poolt pole selle mahtu isegi SSD-de tehnilistes kirjeldustes märgitud. Seda ei saa pidada tavaliseks vahemäluks, kuna oleme harjunud seda mõistma. SSD-ketaste vahemälu kasutatakse dünaamiliselt kettarakkude asukoha ja hõivatuse tabelite salvestamiseks. Samal ajal võib see salvestada ajutist teavet kustutatud rakkudest, kui kettal pole piisavalt tühja ruumi. Tabelid kujutavad kolmemõõtmelist maatriksit ja on selle peamiseks abimeheks SSD kontroller. Nende andmete põhjal teeb ketas otsuseid täiendavate lahtrite kustutamise kohta. Samuti salvestab see teavet kettale iga saadaoleva ploki kasutamise sageduse ja intensiivsuse kohta. Lisaks on siia salvestatud nende “kohtade” aadressid, kus füüsilise kulumise tõttu pole salvestamine võimalik.

SSD kontroller

SSD-draivi väga oluline ja pidevalt täiustatud element on selle kontroller. Kontrolleri põhiülesanne on pakkuda lugemis- ja kirjutamisoperatsioone, kuid seda massi silmas pidades füüsilised omadused SSD-draiv, kontroller vastutab ka andmete paigutuse struktuuri haldamise eest. Tuginedes plokkide paigutusmaatriksile, millesse lahtritesse on juba kirjutatud ja milliseid mitte, optimeerib kontroller kirjutamiskiirust ja tagab teie SSD-draivi pikima eluea. NAND-mälu disainifunktsioonide tõttu on võimatu iga rakuga eraldi töötada. Nagu eespool ütlesime, on need ühendatud 4 KB suurusteks lehtedeks ja teavet saab salvestada ainult siis, kui leht on täielikult hõivatud. Saate kustutada andmeid plokkides, mille suurus on 512 KB. Kõik need piirangud panevad kontrolleri õigele intelligentsele algoritmile teatud kohustused. Seetõttu võib õigesti konfigureeritud ja optimeeritud kontroller oluliselt muuta nii SSD-draivi kiirust kui ka vastupidavust.

Tulemused

Peal Sel hetkel SSD-draivide täielikust võidust on veel vara rääkida magnetkettad. Kui võtame arvesse SSD-draivi helitugevust ja kiirust, võrreldes neid traditsiooniliste kõvaketaste sarnaste parameetritega, on peamine piirav tegur üleminekul pooljuhtdraivid nende hind jääb ikka alles. Viimaste aastate analüüs on näidanud tootjate vastumeelsust NAND-mälu hinda langetada. Alles viimase poole aasta jooksul võib SSD-de hinnas täheldada kerget langustrendi ning selle taga on suure tõenäosusega globaalsest kriisist tingitud tarbijanõudluse langus. Tahkis-draivid on olnud ülemaailmsel turul laias valikus saadaval juba mitu aastat, kuid isegi nii olulisel määral digitaaltehnoloogiad tähtaeg ei saanud mõjutada nende konkurentsivõimet vastavalt kriteeriumile "hind salvestatud teabe GB kohta" seoses magnetketastega. Salvestustihedus ühe magnetketta kohta suureneb pidevalt, mis aitab kaasa üha rohkemate plaatide vabastamisele mahukad mudelid(2 TB kõvakettad on praegu laialdaselt saadaval). Selline turujaotus võib sundida ostjat eelistama SSD-draivi ainult siis, kui on kiireloomuline vajadus lugemiskiiruse või vibratsiooni/löögikindluse järele, kuid suurem osa teabest salvestatakse siiski klassikalistele kõvaketastele.

SSD-de eelised ja puudused võrreldes HDD-magnetketastega:

Eelised:

  • palju suur kiirus lugemine;
  • müra täielik puudumine;
  • töökindlus liikuvate osade puudumise tõttu;
  • madal energiatarve;
  • kõrge vastupidavus vibratsioonikoormustele.

Puudused:

  • kõrge hind iga salvestatud teabe GB kohta;
  • piiratud arv andmete salvestamise ja kustutamise tsükleid.

Artiklit on loetud 10888 korda

Tellige meie kanalid

Aastal 1989 kuulutati välja Nand Flash mälu, see areng esitles Toshiba rahvusvahelisel tahkisahelate konverentsil. Enne seda olid ainult NOR-mälu arendused, mille peamisteks puudusteks olid: töökiirus ja suur kiibipindala. Peamine erinevus NAND Flashi ja Nor Flashi vahel on adresseerimisfunktsioonid; kui NOR Flash suudab adresseerida suvalist lahtrit, siis NAND Flash kasutab lehe adresseerimist (tavaliselt lehe suurus 528, 2112, 4224, 4304, 4320, 8576 baiti).

Tänapäeval on palju seadmeid, mis kasutavad NAND Flash-kiipe, sealhulgas erinevad meediad teave, nagu SSD-draivid, USB-välkmälu, mitmesugused Flashid kaart (MMC, RS-MMC, MMCmicro, SD, miniSD, MicroSD, SDHC, CF, xD, SmartMedia, Memory Stick jne)

Põhimõtteliselt on NAND Flashi andmekandjad mikrokontroller, mis tagab töö nii mälukiipidega kui ka töö erinevate seadmetega, kasutades standardites määratud liidest. Enamikus seadmetes näeb see välja nagu väike tahvel, millel asub üks või mitu TSOP-48, lühikese TSOP-48 või TLGA-52 disainiga NAND Flash-mälukiipi ja mikrokontrolleri. Miniatuursed seadmed on tavaliselt valmistatud ühe kiibi kujul, millesse on integreeritud nii Nand Flash-kiip kui ka mikrokontroller.

NAND-välkmälu peamised puudused on selle ebapiisav kiirus ja mitte väga suur hulk kirjutada tsükleid, mida mikroskeem talub. Nendest probleemidest möödahiilimiseks kasutavad kontrollerite tootjad mõningaid nippe, nagu näiteks NAND Flashi kirjutamise korraldamine mitmes lõimes, et suurendada jõudlust, ja loogiliste pankade organiseerimine, mis on jagatud üsna suurteks plokkideks ning keeruka tõlkesüsteemi organiseerimine.

NAND Flashi ühtlase kulumise tagamiseks korraldavad peaaegu kõik kontrollerid aadressiruumi jaotuse loogilisteks pankadeks, mis omakorda jagunevad plokkideks (koosnevad mitmest mälulehest), tavaliselt 256-2048 plokkideks. Kontroller jälgib kirjete arvu igas plokis. Selleks, et kasutajaandmed saaksid pangasiseselt vabalt liikuda, on selleks loogiline plokkide nummerdamine, st. praktikas näeme kiipi prügimäel lugedes pilti, et kasutaja andmed üsna suurte plokkide kujul (16kb - 4mb) on kaootiliselt segunenud. Kasutajaandmetega töötamise järjekord kajastub tõlkijas tabelina, mis näitab järjestatud loogilise ruumi saamiseks plokkide konstrueerimise järjekorda.

Lugemis- ja kirjutamisoperatsioonide suurendamiseks rakendavad kontrollerite tootjad andmete paralleelsusfunktsioone, see tähendab otsest analoogiat RAID-i 0-taseme massiiviga (triibuga), vaid veidi keerukamat teostust. Praktikas näeb see välja kas plokisisese paralleelsuse (põimimine), väiksemateks alamplokkideks (tavaliselt 1 bait kuni 16 kb), samuti sümmeetriline paralleelsus (triip) NAND Flash kiibi füüsiliste pankade ja mitme kiibi vahel. .

Tasub mõista, et selle tööpõhimõttega on draivi tõlkija pidevalt muutuv tabel, peaaegu iga NAND Flashi kirjutamisega. Lähtudes NAND Flashiga töötamise põhimõttest - ploki puhvrisse lugemine, muudatuste tegemine ja ploki paika kirjutamine on ilmne, et andmetele on kõige ohtlikumad mittetäielikud kirjutamistoimingud; näiteks kui salvestatakse muudetud tõlkija. Draivide tormaka käitlemise tagajärjel: nende äkiline eemaldamine USB-pistikust või kaardilugeja pesast salvestamise ajal võib teenuseandmete, eriti tõlketabeli hävimise oht.

Kui hooldusandmed hävivad, ei saa ajam töötada või mõnel juhul töötab see valesti. Andmete eraldamine tarkvara, reeglina pole see paljudel põhjustel võimalik. Üks lahendus on jootma NAND Flash kiibid ja seejärel need vastava lugeja (programmeerija) pealt lugeda. Arvestades, et algne tõlkija puudub või on kahjustatud, jääb NAND Flashi kiibist eraldatud prügi parsimine alles. Paljud inimesed on ilmselt märganud NAND Flashi mälulehtede kummalisena näivat suurust. Seda seletatakse asjaoluga, et iga leht sisaldab lisaks kasutajaandmetele ka teenuseandmeid, mis on tavaliselt esitatud kujul 512/16; 2048/64; 4096/128; 4096/208 (on ka palju keerulisemad võimalused andmete/teenuse korraldamiseks). Teenusandmed sisaldavad erinevaid markereid (marker, plokkide numbrid loogilises pangas; ploki pööramise marker; ECC jne.) Kasutajaandmete taastamine taandub andmete paralleelstamise välistamiseks plokkide sees, pankade vahel ja mälukiipide vahel, et saada tahkeid plokke. Vajadusel jäetakse ära plokisisesed rotatsioonid, ümber nummerdamised jms. Järgmine ülesanne on see plokkide kaupa kokku panna. Selle rakendamiseks on vaja selgelt aru saada loogiliste pankade arv, plokkide arv igas loogilises pangas, kasutatud plokkide arv igas pangas (kõiki pole kasutatud), markeri asukoht teenuses andmed ja nummerdamisalgoritm. Ja alles siis koguge plokid lõplikku pildifaili, millest on võimalik kasutajaandmeid lugeda. Kogumisprotsessi ajal varitsevad lõksud mitme kandidaatploki näol ühele positsioonile lõplikus pildifailis. Pärast selle probleemiringi lahendamist saame pildifaili kasutajateabega.

Juhtudel, kui andmed ei mängi mingit rolli, kuid on soov taastada draivi enda funktsionaalsus, on parim valik teenindusandmetega seotud probleemide lahendamiseks vormindamisprotseduuri läbiviimine draivi tootja veebisaidi patenteeritud utiliidi abil. Paljud utiliidid kirjutavad tegelikult ümber kogu teenuseteabe, loovad puhta tõlkija ja teostavad uue failisüsteemi loomiseks vormindamisprotseduuri. Kui tootja ei vaevunud taasteutiliiti postitama, on lahenduseks otsida utiliite NAND-mälupulkade vormindamiseks "kontrolleri järgi"; ainus asi, mis kasutajale keeruline tundub, on kontrollerite tootjate rohkus ja raskused. viimase tuvastamine.

Pavel Jantšarski

Materjalide reprodutseerimine on lubatud ainult näidustusel aktiivne link algsele artiklile

Nõudlus püsiva välkmälu järele kasvab proportsionaalselt arenguga arvutisüsteemid mobiilirakenduste valdkonda. Töökindlus, väike energiatarve, väiksus ja väike kaal on välkmälupõhiste andmekandjate ilmsed eelised võrreldes kettaseadmetega. Võttes arvesse teabeühiku välkmällu salvestamise kulude pidevat vähenemist, pakuvad sellel põhinev meedia kõik rohkem kasu ja funktsionaalsust mobiilsed platvormid ja sellist mälu kasutavad kaasaskantavad seadmed. Erinevate mälutüüpide hulgas on NAND-rakkudel põhinev välkmälu kõige sobivam alus suure teabehulga jaoks püsimäluseadmete ehitamiseks.

Praegu on välkmälu konstrueerimiseks kaks peamist struktuuri: NOR- ja NAND-rakkudel põhinev mälu. NOR-struktuur (joonis 1) koosneb paralleelselt ühendatud elementaarsetest teabesalvestusrakkudest. Selline lahtrite korraldus annab võimaluse andmetele juhuslikuks juurdepääsuks ja teabe salvestamiseks bait-baidi kaupa. NAND struktuur (joonis 2) põhineb põhimõttel jadaühendus elementaarlahtrid moodustavad rühmi (ühes rühmas on 16 lahtrit), mis ühendatakse lehtedeks ja lehed plokkideks. Sellise mälumassiivi konstruktsiooniga on üksikutele rakkudele juurdepääs võimatu. Programmeerimine toimub samaaegselt ainult ühe lehe piires ja kustutamisel pääsetakse ligi plokkidele või plokkide rühmadele.

Joon.1 NOR struktuur Joonis 2 NAND struktuur

Selle tulemusena peegelduvad NOR- ja NAND-mälude struktuurse korralduse erinevused nende omadustes. Suhteliselt suurte andmemahtudega töötades teostatakse NAND-mälus olevaid kirjutamis-/kustutusprotsesse palju kiiremini kui NOR-mälus. Kuna 16 kõrvutiasetsevat NAND-mäluelementi on üksteisega jadamisi ühendatud ilma kontaktivahedeta, saavutatakse kiibil suur rakkude pindala, mis võimaldab samadel tehnoloogilistel standarditel suurt võimsust. NAND-välkmälu programmeerimine põhineb elektronide tunneldamise protsessil. Ja kuna seda kasutatakse nii programmeerimiseks kui ka kustutamiseks, saavutatakse mälukiibi madal energiatarve. Rakuorganisatsiooni järjepidev struktuur võimaldab teil saada kõrge aste skaleeritavus, mis muudab NAND-välgu mälumahu suurendamise võidujooksus liidriks. Kuna elektronide tunneldamine toimub kogu raku kanali piirkonnas, on NAND-välklambi laengu hõivamise kiirus pindalaühiku kohta väiksem kui teistel välkmälutehnoloogiatel, mille tulemuseks on suurem programmeerimis-/kustutustsüklite arv. Programmeerimine ja lugemine viiakse läbi sektorite kaupa või lehekülgede kaupa, 512-baidistes plokkides, et emuleerida kettaseadmete ühist sektori suurust.

Erinevate tehnoloogiate abil toodetud välkmälu parameetrite peamised erinevused on toodud tabelis 1.

Tabel 1. NAND- ja NOR-rakkudel põhinevate mälumoodulite võrdlusomadused

Parameeter NAND NOR
Mahutavus ~ 1 Gbit (2 kristalli korpuses) ~ 128 Mbit
Toitepinge 2,7–3,6 V 2,3–3,6 V
Sisend väljund x8 / x16 x8 / x16
Juurdepääsuaeg 50 nS (järjestikune juurdepääsutsükkel)
25 µS (juhuslik juurdepääs)
70 nS (30 pF, 2,3 V)
65 nS (30 pF, 2,7 V)
Programmeerimiskiirus (tavaline) -
200 µS / 512 baiti
8 µS/bait
4,1 mS / 512 baiti
Kustutuskiirus (tavaline) 2 mS/plokk (16 kB) 700 mS/plokk
Kogukiirus
programmeerimine ja kustutamine (tavaline)
33,6 mS / 64 kB 1,23 sek/plokk (peamine: 64 kB)

Juhtiv liider NAND-välkkiipide tootmises on Hynix. See toodab mitut tüüpi mälukiipe, mis erinevad järgmiste põhiparameetrite poolest:

  • võimsus (256 Mbit, 512 Mbit ja 1 Gbit);
  • siini laius, 8 või 16 bitti (x8, x16);
  • toitepinge: 2,7–3,6 V (3,3 V seade) või 1,7–1,95 V (1,8 V seade);
  • lehe suurus: x8 seadmes (512 + 16 varu) baiti, 16x – (256 + 8 varu) sõna;
  • ploki suurus: x8 seadmes (16K + 512 varu) baiti, 16x – (8K + 256 varu) sõna;
  • juurdepääsuaeg: juhuslik juurdepääs 12 μS, järjestikune 50 nS;
  • lehe programmeerimisaeg 200 µS;

Kõigil Hynixi NAND-välkkiipidel on tüüpiline plokkide kustutamise aeg 2 mS, neil on riistvarapõhine andmekaitse toitetransientide ajal ja need võivad sooritada 100 000 kirjutamis-/kustutustsüklit. Andmete garanteeritud säilitusaeg on 10 aastat. Oluline omadus Hynixi mälukiibid on pin-to-pin-ühilduvad olenemata mahust. See muudab lõpptoote tarbijaomaduste parandamise väga lihtsaks. Tabel 2 näitab põhiparameetrid kõik Hynixi NAND-välkkiibid.

Tabel 2. Hynixi NAND-välklampide võrdlev loend

Umbes Tüüp Organisatsioon Pinge
toitumine
Vahemik
töölised
temperatuurid *
Kiirus
(ns)
Raam
256 Mbit 32Mx8 1,8 V C, E, I 50 TSOP/WSOP/FBGA
32Mx8 3,3 V C, E, I 50 TSOP/WSOP/FBGA
16Mx16 1,8 V C, E, I 50 TSOP/WSOP/FBGA
16Mx16 3,3 V C, E, I 50 TSOP/WSOP/FBGA
512 Mbit 64Mx8 1,8 V C, E, I 50 TSOP/WSOP/FBGA
64Mx8 3,3 V C, E, I 50 TSOP/WSOP/FBGA
32Mx16 1,8 V C, E, I 50 TSOP/WSOP/FBGA
32Mx16 3,3 V C, E, I 50 TSOP/WSOP/FBGA
1Gb 128Mx8 1,8 V C, E, I 50 TSOP/WSOP/FBGA
128Mx8 1,8 V C, E, I 50 TSOP/WSOP/FBGA
128Mx8 3,3 V C, E, I 50 TSOP/WSOP/FBGA
128Mx8 3,3 V C, E, I 50 TSOP/WSOP/FBGA
64Mx16 1,8 V C, E, I 50 TSOP/WSOP/FBGA
64Mx16 1,8 V C, E, I 50 TSOP/WSOP/FBGA
64Mx16 3,3 V C, E, I 50 TSOP/WSOP/FBGA
64Mx16 3,3 V C, E, I 50 TSOP/WSOP/FBGA

* - Temperatuurivahemikud
C- Kaubanduslik töötemperatuuri vahemik 0...+70°C
E- Laiendatud töötemperatuuri vahemik -25...+85°C
I- Tööstuslik töötemperatuuri vahemik -40...+85°C

Hynixi mälukiipide omadusi saab lähemalt uurida HY27xx(08/16)1G1M seeria kristallide näitel. Joonis 3 näitab sisemine struktuur ja nende seadmete klemmide otstarve. Aadressiliinid on multipleksitud andmete sisend-/väljundliinidega 8- või 16-bitisel I/O siinil. See liides vähendab kasutatavate kontaktide arvu ja võimaldab migreeruda suurema võimsusega kiipidele ilma trükkplaati muutmata. Iga plokki saab programmeerida ja kustutada 100 000 korda. NAND-välklampide elutsükli pikendamiseks on tungivalt soovitatav kasutada veaparanduskoodi (ECC). Kiipidel on avatud vooluga lugemis/hõivatud väljund, mida saab kasutada kontrolleri PER (Programm/Erase/Read) aktiivsuse tuvastamiseks. Kuna väljund on avatud äravooluga, siis on võimalik ühendada läbi ühe tõmbetakisti mitu sellist väljundit erinevatest mälukiipidest kokku toiteploki plussklemmiga.


Joonis 3 Hynixi NAND välkkiipide sisemine korraldus

Sest optimaalne jõudlus Defektsete plokkide korral on saadaval käsk "Kopeeri tagasi". Kui lehe programmeerimine ebaõnnestub, saab selle käsu andmed kirjutada teisele lehele, ilma et peaksite neid uuesti saatma.

Hynixi mälukiibid on saadaval järgmistes pakettides:

  • 48-TSOP1 (12x20x1,2 mm) – joon. 4;
  • 48-WSOP1 (12x12x0,7 mm)
  • 63-FBGA (8,5 x 15 x 1,2 mm, 6 x 8 kuulkontakti massiiv, 0,8 mm samm)


Joon.4 Hynixi NAND-välklamp

NAND-mälu massiiv on korraldatud plokkideks, millest igaüks sisaldab 32 lehekülge. Massiiv on jagatud kaheks: põhi- ja varualaks (joonis 5). Massiivi põhiala kasutatakse andmete salvestamiseks, samas kui varuala kasutatakse tavaliselt veaparanduskoodide (ECC), programmilippude ja põhiala Bad Block ID-de salvestamiseks. x8 seadmetes lehed sisse põhiala jagatud kaheks pooleks leheküljeks, millest igaüks on 256 baiti, millele lisandub 16 baiti vaba ala. X16-seadmetes on lehed jagatud 256-sõnaliseks põhialaks ja 8-sõnaliseks varualaks.


Joonis 5 NAND-mälu massiivi korraldus

528 baiti/264 sõna lehekülgedega NAND-välkmäluseadmed võivad sisaldada halbu plokke, mis võivad sisaldada ühte või mitut surnud rakku, mille töökindlus ei ole garanteeritud. Lisaks võivad toote töötamise ajal ilmuda täiendavad kasutuskõlbmatud plokid. Info halbade plokkide kohta kirjutatakse kristallile enne saatmist. Selliste plokkidega töötamine toimub Hynixi mälukiipide kasutusjuhendis üksikasjalikult kirjeldatud protseduuri kohaselt.

Mälukiipidega töötamisel tehakse kolm põhitoimingut: lugemine (joonis 6), kirjutamine (joonis 7) ja kustutamine (joonis 8).

Andmete lugemise protseduur


Joon.6 Lugemisprotseduuri diagramm

NAND-mälust andmete lugemise protseduure võib olla kolme tüüpi: juhuslik lugemine, lehe lugemine ja järjestikuse rea lugemine. Juhusliku lugemise korral on ühe andmeosa saamiseks vaja eraldi käsku.

Lehe lugemine toimub pärast juhuslikku lugemist, mis kannab lehe sisu lehe puhvrisse. Edastamise lõpetamisest annab märku väljundi Loe/Hõivatud kõrge tase. Andmeid saab lugeda järjestikku (valitud veeru aadressist viimase veeruni) lugemise lubamise (RE) signaali impulsi abil.

Järjestikuse rea lugemise režiim on aktiivne, kui Chip Enable (CE) sisend jääb alles madal tase ja lugemise lubamise sisend saab impulsse pärast lehe viimase veeru lugemist. Sel juhul laaditakse järgmine leht automaatselt lehepuhvrisse ja lugemine jätkub. Järjestikust rea lugemist saab kasutada ainult ploki sees. Kui plokki muudetakse, tuleb see käivitada uus meeskond lugemist.

Andmete salvestamise protseduur


Joonis 7 Salvestusprotseduuri skeem

Andmete salvestamise standardprotseduur on lehekülje salvestamine. Mälu massiivi põhiala on programmeeritud lehtedena, kuid on võimalik programmeerida osa lehest vajaliku arvu baitide (1 kuni 528) või sõnadega (1 kuni 264). Maksimaalne arv sama lehe osade järjestikuseid kirjeid ei ole põhialal rohkem kui üks ja varualal mitte rohkem kui kaks. Kui need väärtused on ületatud, tuleb enne selle lehe edasist programmeerimist käivitada ploki kustutamise käsk. Iga programmeerimisoperatsioon koosneb viiest etapist:

  1. Lehekülje kirjutamise käsu seadistamiseks on vaja ühte siinitsüklit.
  2. Aadressi edastamiseks on vaja nelja bussitsüklit.
  3. Andmete väljastamine siinile (kuni 528 baiti / 264 sõna) ja laadimine lehepuhvrisse.
  4. PER-kontrolleri käivitamiseks kinnituskäsu väljastamiseks on vaja ühte siinitsüklit.
  5. PER-kontroller kirjutab andmed massiivi.

Bloki kustutamise protseduur


Joon.8 Kustutusprotseduuri skeem

Kustutusoperatsioon viiakse läbi ühe plokiga korraga. Selle töö tulemusena on kõik määratud ploki bitid seatud väärtusele "1". Kõik varasemad andmed lähevad kaotsi. Kustutamine koosneb kolmest etapist (joonis 8):

  1. Plokkide kustutamise käsu määramiseks on vaja ühte siinitsüklit.
  2. Plokiaadressi seadistamiseks on vaja ainult kolme siinitsüklit. Esimest tsüklit (A0-A7) ei nõuta, kuna kehtivad ainult aadressid A14 kuni A26 (kõrgeimad aadressid), A9-A13 ignoreeritakse.
  3. PER-kontrolleri käivitamiseks kinnituskäsu väljastamiseks on vaja ühte siinitsüklit.

Lisaks Hynixile toodavad NAND-mälukiipe veel mitmed teised tootjad, kelle hulgas on Samsungil väga suur tootevalik ja müügimaht. See toodab kahte põhiliini NAND Flash ja One NAND™ mälukiibid. One NAND™-i mälumoodulite perekond on ühe mälupulgaga standardliides NOR-välk, mis põhineb NAND-välklampide massiivil.

Samsungi toodetud toodete valik on Hynixi omast laiem. Esitatakse mooduleid võimsusega 4 Mbit kuni 8 Gbit, mis töötavad kaubanduslikes ja tööstuslikes temperatuurivahemikes. Erinevate toitepingevahemike jaoks on saadaval nii 8- kui 16-bitised modifikatsioonid: 1,65...1,95 V või 2,7...3,6 V. Samsungi toodetel on täiustatud riistvara andmekaitsevõimalused: BootRAM-i kirjutuskaitse, Flash-massiivi kaitserežiim ja kaitse sisse- ja väljalülitamisel juhusliku kirjutamise eest.

Muidu on Hynixi mälukiipide ja Samsungi NAND Flashi perekonna toodete disain peaaegu identne. Sellises olukorras on tarbija eelistatud valik selle tootja toode, mille turuhind on kõige vastuvõetavam.

Suur jõudlus jadaandmevoogude lugemisel määrab NAND-välgu laialdase rakendusvõimaluse. Seda tüüpi mälude väga populaarne ja paljutõotav turg on USB-siinide pooljuhtdraivide turg. Tabelis 3 on näidatud praegu toodetavate NAND-välklampide võimalused selles valdkonnas. Lisaks on kõige kasulikum sellise mälu kasutamine MP3-mängijates, digikaamerad, pihuarvutid ja muud sarnased seadmed.

Tabel 3. NAND-välgu kasutamise eelised ja puudused pooljuhtdraivides

Kategooria Sisu
Võimalused Eelised Andmesalvestus, mida saab USB kaudu edastada
Väike suurus, hõlpsasti loodavad kaasaskantavad seadmed
Mälupiirangud puuduvad
Turvaline andmesalvestus, kõvakettaga võrreldes füüsiliselt usaldusväärsem
Hot Plug&Play tugi
Kiire edastuskiirus:
USB 1.1: maksimaalne kuni 12 Mbaud, USB 2.0: maksimaalne 480 Mbaud
Suurepärane ühilduvus standardiseeritud USB-liidesega
Toiteallika võimalus USB-pordist (500 mA, 4,5…5,5 V)
Puudused Vajadus tarkvara sisse operatsioonisüsteem hostikontroller
Vaja on kasutada USB-hosti kiibikomplekti
Kõrge hind võrreldes võrreldava võimsusega kõvaketastega
Toote võimsus 16 Mbit kuni 8 Gbit
Edastamise kiirus Salvestus Kuni 13 Mb/s USB 2.0 all SanDiski CF-kaardi jaoks
Lugemine Kuni 15 Mb/s USB 2.0 all SanDiskilt
Rakendus PC (lauaarvuti, sülearvuti), DVC, pihuarvuti, mobiiltelefonid jne.
Juhtivad tootjad, kes kasutavad välkmälu M-Systems, Lexar Media, SanDisk jne.
Ühendused USB-IF (USB-disainerite foorum), UTMA (Universal Transportable Memory Association)

Tere kõigile! Just eelmisel päeval kohtasin oma vana sõpra. Jõudsime jutule ja ta demonstreeris sõnadega “Vaata telefoni, millega ma praegu ringi käin!” oma vana Nokia-nuputelefoni. Selgus, et tema iPhone'i püsivara jooksis pidevalt kokku - ta pidi nutitelefoni andma teeninduskeskus. Tundub tavaline asi...

Tööde loend, mida teenus teeb, osutus aga minu sõbra jaoks ebatavaliseks. Täielik diagnostika, värskendus tarkvara(vajadusel) ja muud "tavalised asjad" - siin on kõik standardne ja arusaadav. Põhiküsimuse tõstatas see kapteni fraas - "tõenäoliselt peate Nand Flashi üle keerama."

Muidugi ei näidanud ma teeninduses, et ma ei saanud aru, millest nad räägivad - nad ütlevad, et tean juba kõike ilma sinuta. Peaasi, et seda teha. Tulin aga koju ja läksin kohe Google’isse – mis see on, Nand Flash? Miks seda kuskil iPhone'i sees veeretada?

Naersime temaga, läksime lahku ja ma mõtlesin – miks mitte kirjutada sel teemal lühike märkus? See ei võta palju aega ja inimestele, kes seisavad silmitsi sama probleemiga, mis minu sõber, saab natuke selgemaks, mis nende nutitelefoniga toimub. Mõtlesin – tegin ära. Mine! :)

Mis on Nand Flash iPhone'is?

See on seadme sisemälu. Jah, jah, seesama, millest 16 GB iPhone'i omanikel väga sageli puudu jääb.

Jämedalt öeldes on iPhone 7 32 GB Nand Flash sama 32 GB sisemälu.

Mälu asub seadme põhiplaadil ja ei paista kuidagi silma – väga tavaline kiip.

Loomulikult pole see üldse mälupulk - te ei saa iPhone'i lahti võtta, Nand Flashi hõlpsalt lahti ühendada, installida veel üks ja mõelda, et kõik saab korda. Ei hakka olema. Kuigi tasub mainida, et mõnel juhul on see siiski võimalik. Aga sellest veidi pikemalt. Seniks aga liigume probleemide juurde...

Rikke põhjused

Võimalusi pole väga palju ja kõik need on tavaliselt "standardsed":

  1. Seade kukub.
  2. Muud füüsilised kahjustused.
  3. Vedeliku sissepääs.
  4. Abielu.
  5. Jailbreak.

Siin pole midagi erilist kirjeldada - on selge, et kui seadet visata ja veega täita, mõjutab see selle jõudlust.

Kuigi ma märgin siiski eraldi sellise punkti kui tootmisdefekti - see on ka väga võimalik. Olin tunnistajaks sarnasele olukorrale - ostsin just iPhone'i, kuid see ei tööta tegelikult - see taaskäivitub, kuvab taastamisel vigu ja käitub üldiselt kummaliselt. Saatsime selle teenindusse, mille tulemusena oli Nand Flash-mälu vigane ja seadme hilisem väljavahetamine.

iPhone'i välkmälu tõrke sümptomid

Sellel talitlushäirel pole selgeid ja konkreetseid sümptomeid (teade ei ilmu ekraanile - teie seadmel on mäluprobleemid), nii et seda kõike saab aimata vaid kaudsete märkide järgi:


Vigadest rääkides...

iTunes'i vead, mis näitavad Nand Flashi tõrget

Kindlaim viis erinevate seadmega seotud probleemide lahendamiseks. Kui aga iPhone'il on probleeme Nand Flash-mäluga, võib taastamisprotsess katkeda ja sellega kaasneda järgmised iseloomulikud vead:


Kuid seda on oluline meeles pidada – iTunes on loodud nii, et samal veanumbril võib olla mitu põhjust.

Näiteks võib viga 4013 anda märku nii kiibi enda probleemidest kui ka juhtme ebaoriginaalsest kasutamisest arvutiga ühendamiseks.

Nagu näete, on levi väga suur - lihtsast traadist kuni väga keerulise remondini. Seetõttu saate seda vigade loendit kasutada olukorra esialgseks analüüsiks, kuid te ei saa neid pimesi usaldada.

Nand Flash-mälu parandamine - kas see on võimalik?

Võib olla. Kuid loomulikult mitte "kodus". Pealegi ei saa kõik teeninduskeskused seda toimingut teha. Näiteks "turul telgis" ei saa nad teid tõenäoliselt aidata - seal pole lihtsalt vajalikku varustust. Jah, ja mingisugune oskus peab olema.

Veel kord märgin eraldi - kui teie iPhone'i garantiiaeg () pole lõppenud, ei pea te midagi leiutama - . Suure tõenäosusega saate vastutasuks uue seadme.

Kui garantii on "tõrge", kuid Nand Flash mälu remont on siiski vajalik, on teeninduskeskusel olukorra parandamiseks kaks võimalust:


Muide, kui me räägime Nand Flashi püsivara seadmetest, siis on sellised programmeerijad üsna mitmekesised, kuid üks asi ühendab neid siiski - hind. Nad kõik seisavad korralik raha- kõik ei saa sellist asja endale lubada.

Millise järelduse saab sellest kõigest teha? iPhone'i mäluprobleemid on üsna tõsine probleem, mida on väga raske ise lahendada. Kuid olukorda ei saa nimetada lootusetuks. Peamine on leida hea teeninduskeskus koos pädevate spetsialistide ja vajaliku tehnikaga. Ja siis rõõmustab iPhone teid oma tööga pikka aega!

P.S. Jah, see ei õnnestunud lühikese märkmena :) Kuid see, mis on, on see, mis see on - ärge seda kohe kustutage. Ja teave on kasulik - see on kellelegi kasulik. Kas sa nõustud? Pane "meeldimised" ja vajuta nuppudele sotsiaalsed võrgustikud- toeta autorit! Ta proovis, ausalt. Aitäh!

P.S.S. Kas teil on küsimusi? Kas teil on artiklile midagi lisada või soovite oma lugu rääkida? Selle kohta on kommentaare - kirjutage julgelt!

Kaasaegsele inimesele meeldib olla liikuv ja kaasas olla erinevaid asju. kõrgtehnoloogilised vidinad(Inglise vidin – seade), muutes elu lihtsamaks, aga mis seal salata, muutes selle rikkamaks ja huvitavamaks. Ja need ilmusid vaid 10-15 aasta pärast! Miniatuurne, kerge, mugav, digitaalne... Seda kõike on vidinad saavutanud tänu uutele mikroprotsessoritehnoloogiatele, kuid suurema panuse andis üks tähelepanuväärne andmesalvestustehnoloogia, millest täna juttu tulebki. Niisiis, välkmälu.

Arvatakse, et nimi FLASH on seoses mälu tüübiga tõlgitud kui "flash". Tegelikult pole see tõsi. Üks selle välimuse versioon ütleb, et esimest korda aastatel 1989–1990 kasutas Toshiba oma uute kiipide kirjeldamisel sõna Flash kontekstis "kiire, kohene". Üldiselt peetakse leiutajaks Inteli, kes võttis 1988. aastal kasutusele NOR arhitektuuriga välkmälu. Aasta hiljem töötas Toshiba välja NAND-arhitektuuri, mida kasutatakse ka tänapäeval koos sama NOR-iga välkkiipides. Tegelikult võime nüüd öelda, et need on kaks erinevat tüüpi mälu, millel on mõnevõrra sarnane tootmistehnoloogia. Selles artiklis püüame mõista nende disaini, tööpõhimõtet ja kaaluda ka erinevaid praktilisi kasutusvõimalusi.

NOR

Selle abiga muudetakse sisendpinged väljundpingeteks, mis vastavad numbritele "0" ja "1". Need on vajalikud, kuna neid kasutatakse andmete lugemiseks/kirjutamiseks mäluelemendis. erinevad pinged. Lahtri diagramm on näidatud alloleval joonisel.

See on tüüpiline enamiku välklampide jaoks ja on kahe isoleeritud väravaga transistor: juht- ja ujuv. Viimase oluliseks omaduseks on võime hoida elektrone ehk laengut. Lahtris on ka nn äravool ja allikas. Nende vahel programmeerimisel tekib positiivse välja mõju tõttu juhtväravale kanal - elektronide voog. Osa elektrone ületab suurema energia olemasolu tõttu isolaatorikihi ja langeb ujuvväravale. Neid saab sellel säilitada mitu aastat. Konkreetne vahemik elektronide arv (laeng) ujuvväraval vastab loogilisele ühele ja kõik, mis on sellest suurem, vastab nullile. Lugemisel tuvastatakse need seisundid transistori lävipinge mõõtmise teel. Teabe kustutamiseks rakendatakse juhtväravale kõrge negatiivne pinge ja ujuvvärava elektronid liiguvad (tunnelisse) allikasse. Tehnoloogias erinevad tootjad see tööpõhimõte võib voolu tarnimise ja elemendist andmete lugemise poolest erineda. Juhin tähelepanu ka asjaolule, et välkmälu struktuuris kasutatakse 1 biti info salvestamiseks ainult ühte elementi (transistorit), samas kui lenduvate mälutüüpide puhul on selleks vaja mitut transistorit ja kondensaatorit. See võimaldab oluliselt vähendada toodetud mikroskeemide suurust ja lihtsustada tehnoloogiline protsess ja sellest tulenevalt kulusid vähendada. Kuid üks natuke on piirist kaugel: Intel annab juba välja StrataFlashi mälu, mille iga lahter suudab salvestada 2 bitti teavet. Lisaks on proovinäidised 4 ja isegi 9-bitiste rakkudega! See mälu kasutab mitmetasandilist rakutehnoloogiat. Neil on tavaline struktuur, kuid erinevus seisneb selles, et nende laeng on jagatud mitmeks tasemeks, millest igaühele on määratud teatud bittide kombinatsioon. Teoreetiliselt on võimalik lugeda/kirjutada rohkem kui 4 bitti, kuid praktikas tekivad probleemid müra kõrvaldamisega ja elektronide järkjärgulise lekkimisega pikaajalisel säilitamisel. Üldiselt iseloomustab tänapäeval rakkude jaoks olemasolevaid mälukiipe aastates mõõdetud teabe salvestamise aeg ja lugemis-/kirjutustsüklite arv 100 tuhandest mitme miljonini. Eeskätt NOR-arhitektuuriga välkmälu puhul väärib märkimist halb mastaapsus: kiipide pindala on võimatu vähendada transistoride suuruse vähendamisega. See olukord on seotud rakkude maatriksi organiseerimisega: NOR-arhitektuuris peab iga transistor olema ühendatud individuaalne kontakt. NAND-arhitektuuriga välkmälu läheb selles osas palju paremini.

NAND

Selle rakkude disain ja tööpõhimõte on samad, mis NOR-il. Kuigi peale loogika on veel üks asi oluline erinevus- rakkude ja nende kontaktide paigutuse arhitektuur. Erinevalt ülalkirjeldatud juhtumist on siin kontaktmaatriks, mille ridade ja veergude ristumiskohtades asuvad transistorid. See on võrreldav kuvarite passiivse maatriksiga :) (ja NOR on võrreldav aktiivse TFT-ga). Mälu puhul on see korraldus mõnevõrra parem - mikroskeemi pindala saab rakkude suuruse tõttu oluliselt vähendada. Puuduseks (et olla kindel) on väiksem töökiirus bait-bait-juurdepääsutoimingutes võrreldes NOR-iga.

Samuti on olemas sellised arhitektuurid nagu: DiNOR (Mitsubishi), superAND (Hitachi) jne. Need ei esinda midagi põhimõtteliselt uut, vaid ühendavad ainult NAND ja NOR parimad omadused.

Ja ometi, olgu nii, NOR ja NAND toodetakse tänapäeval võrdsetel tingimustel ja praktiliselt ei konkureeri üksteisega, sest nende omaduste tõttu kasutatakse neid erinevad valdkonnad andmekogu. Sellest arutatakse edasi...

Kus on mälu vaja...

Mis tahes tüüpi välkmälu kasutusala sõltub eelkõige selle kiirusomadustest ja teabe salvestamise usaldusväärsusest. NOR-mälu aadressiruum võimaldab töötada üksikute baitide või sõnadega (2 baiti). NAND-is on rakud rühmitatud väikesteks plokkideks (sarnaselt klastriga kõvaketas). Sellest järeldub, et järjestikusel lugemisel ja kirjutamisel on NAND-il kiiruse eelis. Kuid teisest küljest on NAND oluliselt kehvem suvapöördustoimingutes ega võimalda otsest tööd teabebaitidega. Näiteks ühe baidi muutmiseks vajate:

  1. lugege puhvrisse teabeplokk, milles see asub
  2. muutke puhvris vajalikku baiti
  3. kirjutada plokk muudetud baidiga tagasi

Kui lisame ülaltoodud toimingute täitmisajale ploki tõmbamise ja juurdepääsu viivitused, saame näitajad, mis ei ole NOR-iga sugugi konkureerivad (pange tähele, et see kehtib just bait-bait-salvestuse puhul). Järjestikune kirjutamine/lugemine on teine ​​asi – siin näitab NAND, vastupidi, oluliselt kõrgemat kiiruse omadused. Seetõttu ja ka võimaluse tõttu suurendada mälumahtu ilma kiibi suurust suurendamata, on NAND-välklamp leidnud kasutust suurte teabehulkade hoidjana ja selle edastamiseks. Seda tüüpi mälul põhinevad praegu kõige levinumad seadmed on välkmäluseadmed ja mälukaardid. Mis puudutab NOR-välgu, siis salvestusseadmetena kasutatakse sellise korraldusega kiipe programmi kood(BIOS, taskuarvutite RAM, mobiiltelefonid jne), rakendatakse mõnikord integreeritud lahenduste kujul (RAM, ROM ja protsessor ühel miniplaadil või isegi ühes kiibis). Hea näide selline kasutus on Gumstixi projekt: kummipulga suurune ühe pardaarvuti. Just NOR-kiibid tagavad sellisteks puhkudeks vajaliku teabesalvestuse usaldusväärsuse ja paindlikumad võimalused sellega töötamiseks. NOR-välgu helitugevust mõõdetakse tavaliselt megabaitides ja see ületab harva kümneid.

Ja tuleb välk...

Muidugi välklamp paljutõotav tehnoloogia. Vaatamata suurele tootmiskasvule on sellel põhinevad salvestusseadmed siiski piisavalt kallid, et kõvaketastega konkureerida lauaarvuti süsteemid või sülearvutid. Põhimõtteliselt piirdub välkmälu domineerimise sfäär nüüd mobiilseadmetega. Nagu te aru saate, see segment infotehnoloogiad mitte nii väike. Lisaks ei peatu välklambi laienemine tootjate sõnul sellega. Millised on peamised arengusuunad selles valdkonnas?

Esiteks, nagu eespool mainitud, suurt tähelepanu keskendub integreeritud lahendustele. Lisaks on sellised projektid nagu Gumstix vaid vaheetapid teel kõigi funktsioonide rakendamiseks ühes kiibis.

Seni on nn on-chip (single-chip) süsteemid kombinatsioonid välkmälust kontrolleri, protsessori, SDRAM-i või spetsiaalse tarkvaraga ühes kiibis. Näiteks Intel StrataFlash koos püsiva salvestushalduri (PSM) tarkvaraga võimaldab kasutada mälumahtu üheaegselt nii andmete salvestamiseks kui ka programmikoodi täitmiseks. PSM on sisuliselt failisüsteem, mida toetab Windows CE 2.1 ja uuem. Kõik see on suunatud komponentide arvu ja mõõtmete vähendamisele mobiilseadmed nende funktsionaalsuse ja jõudluse suurenemisega. Mitte vähem huvitav ja asjakohane on Renesase ettevõtte arendus - superAND välkmälu koos sisseehitatud haldusfunktsioonidega. Kuni selle hetkeni rakendati neid kontrolleris eraldi, kuid nüüd on need integreeritud otse kiibi. Need on vigaste sektorite jälgimise, vigade parandamise (ECC – vigade kontrollimine ja parandamine) ning kulumise tasandamise funktsioonid. Kuna need on ühes või teises variandis olemas enamikus teistes väliste kontrollerite kaubamärgiga püsivaras, vaatame neid lühidalt. Alustame halbadest sektoritest. Jah, neid leidub ka välkmälus: konveierilt tulevad juba kiibid maha, kus on keskmiselt kuni 2% mittetöötavatest elementidest – see on tavaline tehnoloogiline norm. Kuid aja jooksul võib nende arv suureneda ( keskkond Selles pole erilist põhjust süüdistada - välklambi elektromagnetiline, füüsiline (raputamine jne) mõju pole kohutav). Seetõttu on välkmälu sarnaselt kõvaketastega reservmahtu. Kui ilmub halb sektor, asendab juhtfunktsioon oma aadressi failijaotuse tabelis reservala sektori aadressiga.


Tegelikult vastutab halbade probleemide tuvastamise eest ECC algoritm – see võrdleb salvestatud teavet tegelikult salvestatud teabega. Samuti seoses piiratud ressurss rakud (suurusjärgus mitu miljonit lugemis-/kirjutustsüklit iga kohta), on oluline, et oleks ühtlase kulumise arvestamise funktsioon. Lubage mul tuua teile haruldane, kuid tavaline juhtum: võtmehoidja 32 MB, millest 30 MB on hõivatud, ja vaba koht Midagi salvestatakse ja kustutatakse pidevalt. Selgub, et mõned rakud on jõude, teised aga kurnavad intensiivselt oma ressursse. Selle vältimiseks jagatakse kaubamärgiga seadmetes vaba ruum tavapäraselt osadeks, millest igaühe jaoks jälgitakse ja salvestatakse kirjutamistoimingute arv.

Veelgi keerukamaid kõik-ühes konfiguratsioone esindavad nüüd laialdaselt sellised ettevõtted nagu Intel, Samsung, Hitachi jne. Nende tooted on multifunktsionaalsed seadmed, mis on rakendatud vaid ühes kiibis (tavaliselt sisaldab see protsessorit, välkmälu ja SDRAM-i). Need on keskendunud kasutamisele mobiilseadmetes, kus on oluline kõrge jõudlus. minimaalsed suurused ja madal energiatarve. Nende hulka kuuluvad: pihuarvutid, nutitelefonid, telefonid 3G võrkude jaoks. Toon näite sellistest arengutest - Samsungi kiip, mis ühendab endas ARM-protsessori (203 MHz), 256 MB NAND-mälu ja 256 SDRAM-i. See ühildub tavaliste operatsioonisüsteemidega: Windows CE, Palm OS, Symbian, Linux ja sellel on USB tugi. Seega on selle põhjal võimalik luua multifunktsionaalseid mobiilseadmeid madal energiatarve, mis on võimeline töötama video-, heli-, hääle- ja muude ressursimahukate rakendustega.

Teine suund välklambi parandamiseks on vähendada energiatarbimist ja suurust, suurendades samal ajal mälu suurust ja kiirust. See kehtib suuremal määral NOR-arhitektuuriga kiipide kohta, kuna mobiilsete arvutite väljatöötamisega, mis toetavad sisselülitamist traadita võrgud, nimelt NOR välklamp, aitäh väikesed suurused ja madala energiatarbimisega, saab universaalseks lahenduseks programmikoodi salvestamiseks ja täitmiseks. Peagi pannakse masstootmisse samade Renesase 512 Mbit NOR kiibid. Nende toitepinge on 3,3 V (tuletan teile meelde, nad suudavad salvestada teavet ilma voolu andmata) ja kirjutamistoimingute kiirus on 4 MB/sek. Samal Inteli aeg juba esitleb oma arendust StrataFlash Wireless Memory System (LV18/LV30) – universaalset välkmälusüsteemi traadita tehnoloogiate jaoks. Selle mälumaht võib ulatuda 1 Gbit-ni ja tööpinge on 1,8 V. Kiibi valmistamise tehnoloogia on 0,13 nm, plaanis on minna üle 0,09 nm protsessitehnoloogiale. Selle ettevõtte uuenduste hulgas väärib märkimist ka NOR-mäluga partiirežiimi korraldamine. See võimaldab teil lugeda teavet mitte ühe baidi kaupa, vaid 16-baidiste plokkidena: kasutades 66 MHz siini andmevahetuskiirus protsessoriga ulatub 92 Mbit/s!

Noh, nagu näete, areneb tehnoloogia kiiresti. On täiesti võimalik, et selle artikli ilmumise ajaks ilmub midagi uut. Seega, kui midagi juhtub, ärge mind süüdistage :) Loodan, et materjal oli teile huvitav.