Kad bojāts SSD disks visos sektoros sāk rādīt tikai nulles, neviena parastā datu atjaunošanas programma palīdzēt nespēj - tām gluži vienkārši nav datu, ko analizēt. Nereti sistēmā nepareizi uzrādās arī paša diska modelis un apjoms.

0x00
0x00

 

Tieši ar šādiem simptomiem mūsu laboratorijā nonāca Apacer SSD disks.

Apacer
Apacer

Kāpēc disks sāk rādīt nulles?

SSD diska kontrolieris izmanto tā saukto FTL (Flash Translation Layer) jeb translatoru - struktūru, kas sasaista operētājsistēmas loģiskos sektorus (LBA) ar to reālo, fizisko atrašanās vietu NAND atmiņas mikroshēmās. Ja diska mikrokods ir bojāts un korekts translators netiek ielādēts, kontrolieris uz jebkuru lasīšanas pieprasījumu atbild ar nullēm vai arī disks kļūst pilnībā nepieejams.

Kā piekļūt datiem aparātu līmenī?

Lai nodrošinātu piekļuvi atmiņai, disks vispirms ir jāpārslēdz tā sauktajā ražotāja vai kodola režīmā (Factory / Kernel Mode). Praktiski tas notiek, savienojot noteiktus testa kontaktus (techno mode / ROM-mode) un padodot barošanu. Šajā stāvoklī disks izpilda tikai zemākā līmeņa komandas.

Nākamajā solī diska operatīvajā atmiņā no ārēja avota tiek ielādēts atbilstošs mikrokods. Tas ļauj palaist kontrolieri atkopšanas režīmā, rekonstruēt bojāto translatoru un iegūt tiešu piekļuvi NAND flash atmiņas mikroshēmām.

Apacer SSD board
Apacer SSD board

Konkrētais gadījums: Apacer ar Phison PS3111 kontrolieri

Šajā diskā izmantotais Phison PS3111 ir izplatīts kontrolieris, kuram ir pieejams atkopšanai nepieciešamais mikrokods. Pēc tā ielādes un translatora pārbūves mums izdevās veiksmīgi piekļūt lietotāja failu sistēmai.

Taču ar to darbs nebeidzās - datu kopēšanas (sektoru klonēšanas) procesā atklājās aptuveni 6% bojātu sektoru. Lai izkoriģētu un nolasītu šos datus, tika veikta daudzkārtēja sektoru nolasīšana, mainot atmiņas mikroshēmu temperatūras režīmus (thermal control).

Heating a SSD board
Heating a SSD board

Rezultāts

Izdevās veiksmīgi rekonstruēt un atgūt praktiski 100% no klienta datiem.