Digitālajā laikmetā, kur dati ir personiskās un profesionālās darbības pamats, svarīgas informācijas zaudēšana var būt katastrofāla. NAND zibatmiņas ierīces, kas bieži sastopamas USB atmiņās, SSD un dažādās citās uzglabāšanas ierīcēs, rada unikālus izaicinājumus datu atjaunošanā. Šis raksts izpēta datu atjaunošanas sarežģītību no NAND ierīcēm, atklājot metodes, izaicinājumus un attīstības jaunumus šajā jomā. Šis ir TAS raksts, kurš laikam nekad nebūs pabeigts, tāpēc, ienāc regulāri un palasies.

NAND zibatmiņas darbojas pēc citiem principiem nekā tradicionālie cietie diski. Tā sastāv no atmiņas šūnām (tranzistoriem). Vairāk par NAND tehnoloģiju. Lai gan NAND tehnoloģija piedāvā ātrāku piekļuvi datiem, tās sarežģītā arhitektūra rada izaicinājumus datu atjaunošanas speciālistiem.

Diversity of NAND devices
Diversity of NAND devices

NAND atmiņas ierīces galvenās komponentes ir kontrolieris un pati NAND atmiņa. Kontrolieris atbild par datu apstrādi pirms to ierakstīšanas un pēc nolasīšanas no NAND. Apstrāde ietver tādas funkcijas, kā datu sadalīšana un izvietošana čipa kristālos, loģisko un fizisko adrešu pārveidošana, bitu kļūdu korekcija, datu šifrēšana. NAND mikroshēma atbild par datu ierakstīšanu, nolasīšanu un dzēšanu.

Controller and NAND memory chip
Controller and NAND memory chip
USB atmiņas ierīce. 1 - kontrolieris, 2 - NAND atmiņa

NAND ierīču bojājumi

  1. Bojātas elektroniskās komponentes (pretestības, kondensatori u.c.). Nolietojums, pārspriegums, nepareiza strāvas polaritāte u.t.t.
  2. Fiziski ierīces bojājumi, kas radušies mehāniskas iedarbības rezultātā (piem., kritiens no augstuma, lauziens).
  3. NAND atmiņas šūnu (tranzistoru) bojājumi, kas izraisa dažāda veida ierīces darbības traucējumus. Šis ir biežāk sastopamais bojājuma veids. Pat ļoti saudzīgi lietotas ierīces nav pasargātas no šīs problēmas.
  4. Kontroliera darbības traucējumi. Ļoti reti.

Atjaunošanas metodes ir:

  • Iekārtas salabošana, piemēram, tiek salabots telefons, lai piekļūtu datiem.
  • SPI (Serial Peripheral Interface) interfeisa izmantošana.
  • Nolasīšana caur standarta USB, SD interfeisu, bet ar specializētu iekārtu, kura prot apstrādāt nestandarta situācijas (USB stabilizators un taml.)
  • NAND interfeisa izmantošana. Šī ir tiešā datu izguves metode no atmiņas mikroshēmas. Bieži tas nozīmē atmiņas mikroshēmas izlodēšanu, no kā arī cēlies metodes nosaukums angļu valodā chip-off.

NAND atjaunošanas darbplūsma

NAND recovery workflow
NAND recovery workflow

 

Mikroshēmas nolasīšana

Mikroshēmas nolasīšana ir pirmais un kritiskais atjaunošanas posms — tā rezultātā tiek iegūts neapstrādāts fizisko datu izmets (raw dump), kas satur visu mikroshēmā esošo informāciju bez jebkādas interpretācijas vai apstrādes.

1. Identifikācija - Kontrolieris nolasa mikroshēmas identifikatoru saskaņā ar ONFI (Open NAND Flash Interface) vai JEDEC standartu. Šie dati nosaka: ražotāju un modeļa sēriju, kopējo ietilpību, lapas (page) un bloka (block) izmēru, nepieciešamos barotnes spriegumus, kā arī iebūvētā ECC (Error Correction Code) atbalstu.

2. Parametru konfigurācija - Pirms nolasīšanas uzsākšanas tiek iestatīti specifiski parametri: lasīšanas sprieguma līmeņi (Vread, Vpass), laika intervāli (tREA, tRP, tWP) un piemērojamā ECC korekcijas stiprums. Neprecīzi parametri rada bitu kļūdas vai neveiksmīgu nolasīšanu.

3. Fiziskā nolasīšana - Dati tiek nolasīti secīgi — lapa pa lapai (page-by-page), bloks pa blokam (block-by-block). Tipiskais lapas izmērs mūsdienu NAND mikroshēmās ir 4 KB - 16 KB datu apgabals, kam seko spare area - parasti 64 - 256 papildu baiti, kuros kontrolieris glabā FTL (Flash Translation Layer) metadatus, ECC datus un blokas statusa atzīmes.

4. Izmetes saglabāšana - Visi nolasītie dati tiek saglabāti bez jebkādas filtrēšanas vai labošanas — ieskaitot neapstrādātus ECC baitus, spare area saturu un sliktajiem blokiem (bad blocks) atbilstošās lapas. Šajā posmā jebkāda datu modificēšana apdraudētu turpmāko izpēti.

Fiziskās izmetes apstrāde

Fiziskās izmetes apstrādes posmā nolasītie biti tiek pārveidoti tā, lai iegūtu korektus datus, kurus nodot loģiskajai rekonstrukcijai.

1. ECC korekcija - NAND fiziski degradējas un satur bitu kļūdas. ECC (Error Correction Code) tehnoloģija nodrošina bitu kļūdu atrašanu un salabošanu. ECC algoritmi - Hamming (sens un rets), BCH un LDPC.

2. XOR apstrāde - NAND kontrolieri pirms datu rakstīšanas miksē tos ar zināmu XOR masku (randomizācija), lai izvairītos no "slikta" bitu virknējuma. Jāzina pareizā maska lai atgūtu oriģinālos datus.

3. Interleaving atšķetināšana - Ja dati bija rakstīti paralēli pa vairākiem čipa kristāliem, jāsaskaņo vairāki dump faili pareizā loģiskā secībā.

Kā rezultāts ir fiziska izmete, kura satur loģiski pareizus datu blokus. Atliek vien savienot tos pareizā secībā.

Loģiskās rekonstrukcijas posms

Loģiskās rekonstrukcijas posms pārvērš fizisko izmeti par datoram saprotamu loģisko disku. Loģiskā izmete ir binārs fails, kas izskatās kā normāls cietais disks ar secīgiem loģiskajiem blokiem. To var atvērt ar parastiem datu atgūšanas rīkiem vai uzstādīt kā virtuālu disku.

FTL rekonstrukcija - FTL (Flash Translation Layer) ir kontroliera translators, kas uztur kartēšanu starp loģiskajām un fiziskajām adresēm. Ja FTL tabula ir atrodama un atjaunojama, loģiskā karte ir gatava — zināms precīzi, kurš fiziskais bloks atbilst kuram loģiskajam blokam.

FTL tabula parasti glabājas kontrolierī, nevis NAND. Ja kontrolieris ir bojāts, tabula ir zudusi. Turklāt katram ražotājam ir savs patentēts FTL algoritms, un dažreiz daļa tabulas ir kešota NAND atmiņā, kur tā vēl jāatrod un jāinterpretē.

LBN kartēšana - Ja FTL risinājums nav pieejams, tad jāmeklē LBN (Logical Block Number) un jāsakārto loģiskā secībā pēc tā.

Lietotāja dati

Divi iespējamie iznākumi atkarībā no tā cik veiksmīga bija loģiskā rekonstrukcija.

Failu sistēma - pilnīga atgūšana. Loģiskā izmete satur atpazīstamu failu sistēmu (FAT32, NTFS, u.c.). Var uzstādīt kā virtuālu disku, pārlūkot mapes un failus, atgūt konkrētus failus. Labākais iespējamais rezultāts.

RAW - daļēja atgūšana. Loģiskā rekonstrukcija neizdevās pietiekami labi lai atjaunotu failu sistēmu. Tad izmanto RAW atgūšanu - skenē izmeti meklējot failu signatūras un izvelk failus grupējot pēc veida. Mapju struktūra un failu nosaukumi parasti ir zuduši, bet failu saturs bieži ir atgūstams.