Pooljuhtketas

**Pooljuhtketas** ehk **SSD-ketas** (ingl *solid state drive*) on arvutitehnikas välkmälul põhinev andmesalvesti, millel erinevalt HDD-kõvakettast puuduvad liikuvad osad. SSD väliskuju ja elektrilised ühendused võivad sarnaneda HDD-kettale, kuid võivad ka erineda. Näiteks võib SSD olla teostatud PCIe-laiendkaardina. Ka võib SSD olla HDDga kombineeritud hübriidkettaks SSHD (*solid state hybrid drive*), kus tihedamini kasutatavad failid paigutatakse kiirema kättesaadavuse huvides SSDsse.

## Ajalugu
### RAM põhised pooljuhtkettad
Pooljuhtketaste algus ulatub 1950. aastatesse kahe sarnase tehnoloogiaga: magnetilise tuumamälu ja kaardikondensaatoriga loetav salvesti. Need abimäluühikud (nagu kaasaegsed neid nimetasid) ilmusid vaakumtoru arvutite ajastul. Kuid odavamate trummimäluseadmete tutvustamisel lõpetati nende kasutamine. Hiljem, 1970. ja 1980. aastatel, rakendati SSD-sid pooljuhtmäluks varajastes IBM-i, Amdahli ja Cray superarvutites, kuid neid kasutati harva kõrge hinna tõttu. Hilistes 1970. aastates tootis General Instruments elektriliselt muudetavat ROM-i, mis toimis omamoodi hilisema NAND-välkmäluga sarnaselt. Kahjuks ei olnud võimalik saavutada kümneaastast eluiga ja paljud ettevõtted loobusid sellest tehnoloogiast.

1976. aastal hakkas Dataram müüma Bulk Core'i, mis pakkus kuni 2 MB tahket olekut salvestusvõimalust, mis oli sobiv Digital Equipment Corporation (DEC) ja Data General (DG) arvutitele. 1978. aastal tõi Texas Memory Systems turule 16-kilobaidise RAM-põhise tahkisolekuketta, mida kasutasid naftafirmad seismiliste andmete kogumiseks. Järgmisel aastal arendas StorageTek välja esimese RAM-põhise tahkisolekuketta.

Aastal 1983 tutvustati Sharp PC-5000, mis kasutas 128 kB tahket olekut salvestavaid kassetikandjaid, mis sisaldasid mullimälu. Aastal 1984 oli Tallgrass Technologies Corporationil 40 megabaidine lintvarundusseade, millel oli sisseehitatud tahke olekuga 20 MB seade. 20 MB seadet võis kasutada kõvaketta asemel. Septembris 1986 tutvustas Santa Clara Systems BatRam-i, 4 MB massmälusüsteemi, mida sai laiendada kuni 20 MB, kasutades 4 MB mälumooduleid. Paketti kuulus taaslaetav aku, et säilitada mälumälu kiipi sisu, kui massiiv ei olnud toiteallikaga ühendatud. Aastal 1987 astus SSD turule EMC Corporation, tutvustades draive miniarvutite turule. Siiski oli 1993. aastaks EMC turult lahkunud.

Tarkvara-põhiseid RAM-kettaid kasutati veel aastal 2009, kuna need on tellimuse võrra kiiremad kui muud tehnoloogiad, ehkki nad tarbivad rohkem protsessoriressursse ja maksavad gigabaidi kohta palju rohkem.

### Flash-põhised pooljuhtkettad
1983. aastal oli esimene mobiilne arvuti, milles oli neli pesa väljalõigatavatele andmekandjatele kujul, milleks olid flash-põhised tahkisolekukettad, kasutades samatüübilisi flash-mälukaarte. Flash-moodulitel oli piirang, et kogu ruumi vabanemiseks kustutatud või muudetud failidest tuli need täielikult uuesti vormindada; vanad failiversioonid, mis olid kustutatud või muudetud, jätkasid ruumi hõivamist kuni mooduli vormindamiseni. 1984. aastal müüdi 20 MB tahke olekuga ketas 1000 dollariga. 1985. aasta alguses teatati flash-põhiste tahkisolekuketaste tutvustamisest. Neil oli eelis mittevajadusest aku abil andmeid mälus säilitada (mida eeldasid eelmised lenduvad mälusüsteemid), kuid nad ei olnud nii kiired kui dünaamilise juhusliku juurdepääsuga mälu (DRAM) põhised lahendused. Sellest ajast peale on SSD-sid edukalt kasutatud kõvaketta asendustena sõjaväe- ja kosmosetööstuses ning muudes kriitilise tähtsusega rakendustes. Need rakendused nõuavad erakordset keskmist rikete vahelist aega, mida tahkisolekukettad saavutavad tänu nende võimele taluda äärmuslikke lööke, vibratsioone ja temperatuurivahemikke.

2007. aastal tutvustati PCIe-põhist SSD-d, mis suutis ühes kaardis saavutada 100 000 sisend-väljund operatsiooni sekundis jõudlust ja mahutavusi kuni 320 GB. 1-terabaidine (TB) flash-SSD, kasutades PCI Express ×8 liidest, võib saavutada maksimaalse kirjutuskiiruse 654 megabaiti sekundis (MB/s) ja maksimaalse lugemiskiiruse 712 MB/s.

## Arendusjärgud
* 1978 – USA firma StorageTek töötas välja esimese pooljuhtsalvesti RAM-mälu baasil
* 1995 –  Iisraeli firma M-Systems esitles esimest välkmälul põhinevat pooljuhtsalvestit
* 2007 – esimene sülearvuti EEE PC 701 SSD-salvestusmälu 4 GB
* 2008 – Lõuna-Korea firma Mtron Storage Technology valmistas SSD-ketta mahutavusega 128 GB
* 2012. aastast hakkas SSD konkureerima HDD-ga, algul tahvel- ja sülearvutites, seejärel ka lauaarvutites, samuti välise SSD-salvestina.

SSD gigabaidi hind on küll aastate kestel kiiresti langenud, kuid jäi ka 2010. aastate lõpuaastail siiski kõrgemaks kui kõvaketastel. Hinnavahe kasvab seda enam, mida suurem on salvesti mahutavus, sest SDD-ketta hind kasvab peaaegu võrdeliselt mahutavusega.

## SSD mäluelementide tüübid

Vastavalt mäluelemendi CMOS-transistoristruktuuride ühendamise loogikale eristatakse NAND- ja NOR-mäluelemente. Pooljuhtketastes on (alates 2008. aastast) kasutusel  NAND-Flash-struktuurid, sest need võtavad kiibil palju vähem ruumi, on vastupidavamad ja suurema kirjutuskiirusega, lugemiskiirus on siiski väiksem kui NOR-kiipidel. Välja on töötatud tehnoloogiaid, mis püüavad mõlema tüübi eeliseid ühendada: OneNAND (Samsung), mDOC (Sandisk) ja ORNAND (Spansion).

NAND-Flash-mäluelemente liigitatakse selle järgi, mitme biti salvestamiseks on element ette nähtud:
*SLC-element (*single-level cell*) salvestab ühe biti (sest elemendil saab olla ainult kaks laengutaset);
*MLC-element (*multi-level cell*) salvestab rohkem kui ühe biti, seni reaalselt kaks bitti (neli laengutaset);
*TLC-element (*triple-level cell*) ehk MLC-3 salvestab kolm bitti (kuus laengutaset).

## Arhitektuur

### Põhifunktsioonid
SSD põhilised komponendid on NAND-komponendid, millel võib olla mitu NAND-mälu kiipi, ning kontroller, mis ühendab NAND-komponendid hostiliidesega. Sõltuvalt SSD kujundusest kasutatavate NAND-komponentide arv, kuid lõppkokkuvõttes määravad ketta NAND-komponentide arvu ja nende kiipide arvu selle pooljuhtketta mahtuvus. Mida rohkem NAND-kiipe on SSD-s integreeritud ja mida paremini kontroller saab juurde pääseda neile, seda suurem on ketta mahutavus. Kontroller asub NAND-i ja hostiliidese vahel. See toimib protsessorina NAND-komponendi toimimise haldamiseks ja on standardne liides lihtsaks integreerimiseks hostisüsteemidesse. Samuti NAND-mälu maht ei pea olema piiratud ruumi tõttu. Väikestes SSD-des, näiteks microSD-kaartides, on NAND ja kontrolleri kiibid virnastatud ning ühenduste loomiseks kasutatakse traadivõlve. Üllatavalt palju NAND-kiipe saab virnastada, nii et ühes väikeses SSD-s võib olla kuni 16 virnastatud kiipi.

### Kontrolleri arhitektuur
Kontrolleri kuju pole nii oluline kui selle paigutus ja funktsioonid. Kui vaadata SSD-d, leiab kontrolleri asetsemas kohal, kuhu kaart tegelikult hostisüsteemi ühendatakse, ja NAND-komponentide ees. Ainus erand on väike SSD, kus kontroller on virnastatud.

Kontroller vastutab SSD kõige olulisemate funktsioonide eest. Nende hulka kuuluvad lugemis- ja kirjutuspuhvrid, ECC-mälu, kulumise tasandamine ja lugemise häirumise juhtimine. See teostab ka halbade plokkide kaardistamist. Ilma nende funktsioonideta võiks SSD enneaegselt kulumisele kuluda ja võib-olla ei toimiks nii usaldusväärselt, kui vaja.

## SSD-tehnika iseärasusi
Andmete salvestamisel (kirjutamisel) võetakse üksteisele järgnevad bitid kokku plokkideks (ingl *block* või *page*), igaüks näiteks 4 kB suurune. Kui plokis tehakse muudatusi, jäävad ülejäänud andmed kustutamata, küll aga vabastatakse need  kirjutamiseks. Iga muudetud baidi pärast tuleb kogu ploki sisu kopeerida reservplokki. Nii lisandub järjest uusi osaliselt täidetud plokke. Et nendest leida kirjutamiseks vabastatud üksusi, tuleb teha palju tarbetuid loe-kustuta-kirjuta-tsükleid, mis aeglustab tööd ja kulutab ketast.

Pöördumise kiirendamiseks ja plokkide vastupidavuse suurendamiseks on kasutusele võetud TRIM-tugi, mis näiteks arvuti operatsioonisüsteemi ATA-liidese kaudu teavitab ketta koosseisu kuuluvat kontrollerit, millised piirkonnad plokis ei kanna kasulikku infot, nii et nende sisu saab eelnevalt kustutada ja niiviisi kiirendada uute andmete kirjutamist.

Arvuti operatsioonisüsteemi ja mäluplokke ühendav pooljuhtketta kontroller hoolitseb ka selle eest, et mäluplokid oleksid enam-vähem ühtlaselt koormatud: kontroller registreerib mäluplokkidesse pöördumisi  ja suunab kirjutuskäsud vähem koormatud plokkidesse.

Selleks, et vabaks jäänud mäluelementidele saaks kirjutada, tuleb selle sisu enne kustuda. Selle lisatoimingu poolest erineb välkmälu kõvaketta magnetmälust, mille vabaks jäänud sektorites saab andmeid kohe üle kirjutada.

## Vormitegurite tüübid
Ostes endale pooljuhtkettast tekib kindlasti küsimus, kuidas teha valik. Sinu otsus sõltub osaliselt sinu süsteemi salvestusühenduse tüübist ja selle vormifaktorist – SSD kujust ja suurusest.

### 2.5”

2.5-tolline SSD on kõige levinum tüüp ning sobib enamikku sülearvutitesse ja lauaarvutitesse. Sellel on sarnane kuju traditsioonilise kõvaketta (HDD) omaga ning see ühendatakse SATA kaablite kaudu, pakkudes väga tuttavat kogemust paljudele kasutajatele.

### M.2

M.2 on saanud standardiks õhukestele sülearvutitele ja muudele kompaktsematele arvutitele. Selle tillukest kuju võrreldakse sageli närimiskummipulgaga ning enamasti on seda lihtne paigaldada otse emaplaadile. Saadaval on erineva pikkusega variante, mis võimaldavad erinevaid mahutavusi. Mida pikem ketas, seda rohkem NAND-välkmälukettaid saab sellele paigaldada, mis viib suurema mahutavusega ketasteni.

### mSATA
mSATA ehk mini-SATA on põhimõtteliselt täissuuruses SATA SSD väiksem versioon. See kasutab M.2-ga sarnast kompaktset vormifaktorit, kuid need pole omavahel vahetatavad. M.2-kettad võivad toetada nii SATA kui ka PCIe liidesevõimalusi, samas kui mSATA toetab ainult SATA-d. See vormifaktor on mõeldud väiksemate vormifaktoritega süsteemidele, kus ruum on piiratud.

### U.2
Viimaks on olemas U.2, mis näeb välja nagu 2,5-tolline SSD, kuid on veidi paksem. Sellel on erinev ühenduspesa ja see saadab andmeid PCIe-liidese kaudu. U.2 SSD-tehnoloogiat kasutatakse tavaliselt kõrgema klassi tööjaamades, serverites ja ettevõttete rakendustes, mis vajavad suuremat salvestusruumi. See võimaldab kõrgemat töötemperatuuri ja soodustab soojuse ülekannet rohkem kui M.2 vormifaktor.

## Ühendusliidesed
Ühendusliides on tavaliselt SSD-kontrollerisse sisse ehitatud. Populaarsemad liidesed on SATA, PCI Express, Fibre Channel (kasutatakse üksnes serverites) ja USB.

Sama liidesestandardiga pooljuhtketta saab paigaldada samade mõõtmetega kõvaketta asemele.

## SSD plussid ja miinused
### SSD eelised HDD-ga võrreldes
*Liikuvate osade puudumine ja sellest tulenevalt:
**hea mehaaniline vastupidavus (suur löögi- ja vibratsioonikindlus);
**müra puudumine.
*stabiilne lugemiskiirus, mis ei sõltu faili osade paigutusest ega fragmenteeritusest;
*suurem kirjutus- ja lugemiskiirus, mis võib olla lähedane SATA-liidese läbilaskevõimele;
*oluliselt suurem pöörduskiirus, mis võimaldab teha sisend-väljundoperatsioone umbes kümme korda kiiremini kui HDD-kettal, kus iga operatsiooni eel kulub teatud aeg ketta ettepööramiseks;
*palju väiksem sõltuvus välistest elektromagnetilistest mõjutustest (tugev elektrostaatiline väli võib siiski häiringut põhjustada);
*väiksemad mõõtmed ja kaal (nt kujuteguri mSATA korral mõõtmed 51×30×3&nbsp;mm).

### SSD puudused
*NAND-SSD peamine puudus on piiratud kirjutuskordade arv. SSD-ketastes laialt kasutusel olev MLC-mäluelement võimaldab andmeid kirjutada 3000–10 000 korda (garanteeritud ressurss). Kallites, ühebitiste SLC-mäluelementidega salvestites garanteeritakse sada tuhat kuni miljon tsüklit.. Andmete lugemine mäluelementide tööiga ei lühenda.
*SSD-ketta rikkeid põhjustab sageli viga keeruka ehitusega kontrolleris, mis peab täitma mitmesuguseid andmete paigutamise ja vigade parandamise funktsioone, seda eriti TLC-mäluelementidega salvestites. 
*Tulenevalt sellest, et andmete olekut ja paigutust juhitakse ka TRAM-käsuga, on raske, kui mitte võimatu rikkis kettalt andmeid taastada. Kui viga on ainult kontrolleris, võib see siiski olla võimalik.
*Kasutuskõlbmatuks muutunud SSD-kettalt on andmeid väga keeruline elektriliselt täielikult eemaldada, nii et jääb ainult füüsilise purustamise võimalus.

## Hübriidkettas
SSHD (*ingl* *solid state hybrid drive*) ehk hübriidkettas on HDD ja SSD kombinatsioon. See on traditsiooniline pöörlev kõvakettas, mis ka kasutab välkmälul põhinevat pooljuhtseadet.

### Eelised

* SSHD kettal on kõrge kiiruse ja suure mahuga omadused, seega on selle kasutamine usaldusväärsem.
* Sellel on vähe pöörlemist ja vähe osade liikumist võrreldes HDD-ga.
* Kerge ligipääsetavus nendele failidele ja andmetele, mida sageli kasutatakse.
* Pikk kasutusiga.
* Odav.

### Puudused

* SSHD kõvaketta HDD osa on habras, nii et kui SSHD kukub või saab vigastada, võib see põhjustada kahjustusi.

## Võrdlus [[kõvaketas |kõvaketta]] ja [[Mäluketas|RAM-virtuaalkettaga]]

## SSD läbikukkumine
SSD-del on väga erinevad rikkerežiimid kui traditsioonilistel magnetkõvaketastel. Kuna pooljuhtdraivid ei sisalda liikuvaid osi, ei esine need üldiselt mehaanilisi tõrkeid. Selle asemel on võimalikud muud tüüpi tõrked (nt äkilisest voolukatkestusest tingitud mittetäielik või ebaõnnestunud kirjutamine võib olla suurem probleem kui kõvaketaste puhul ja kui kiip ebaõnnestub, lähevad kõik sellel olevad andmed kaotsi, stsenaarium ei kehti magnetajamid). Üldiselt on uuringud siiski näidanud, et SSD-d on üldiselt väga töökindlad ja jätkavad sageli töötamist palju kauem kui nende tootja on öelnud.

## Viited