Принципи роботи і відновлення даних з флешок на основі nand пам'яті

Принципи роботи і відновлення даних з флешок на основі nand пам'яті
Існує безліч пристроїв зберігання інформації, заснованих на твердотільних напівпровідникових енергонезалежних кристалах пам'яті (NAND Flash Memory). Практично всі пристрої мають однакову внутрішню будову, і являють собою електронну плату знапаяними на неї елементами, основними з яких є:

Контролер (мікропроцесор з мікропрограмою, що відповідає за опрацювання, подання та зберігання даних) - подає команди, на мікросхему пам'яті здійснюючи дії задані користувачем по відображенню, записи і стирання інформації.

Мікросхема пам'яті (флеш пам'ять, NAND FLASH memory) - ємність для зберігання даних (призначених для користувача і службових). Являє собою тисячі осередків (транзисторів), які можуть бути лічені нескінченне кількість разів, але записана на них інформація обмежена, близько 100 тисяч разів.

Принципи роботи і відновлення даних з флешок на основі nand пам'яті

В основі NAND Flash Memory лежить І-НЕ елемент (від англ and і no).
Транзистор має два затвора: керуючий і плаваючий. Останній повністю ізольований і здатний утримувати електрони до 10 років. В осередку є також стік і джерело. При програмуванні (записи або стирання інформації) напругою на керуючому затворі створюється електричне поле і виникає тунельний ефект. Частина електронів тунелює крізь шар ізолятора і потрапляє на плаваючий затвор. Заряд на плаваючому затворі змінює «ширину» каналу стік-витік і його провідність, що використовується при читанні. Програмування та читання осередків сильно розрізняються в енергоспоживанні: флеш-пам'яті споживають досить великий струм при записі, тоді як при читанні витрати енергії малі. Для стирання інформації на керуючий затвор подається висока негативна напруга, і електрони з плаваючого затвора переходять (туннелируют) на джерело. Напруга подається по контактам (ніжок) знаходяться на міксросхеме flash пам'яті через них відбувається і зчитування записаних осередків. Дані обробляються контролером і через usb роз'єм надаються користувачеві в зрозумілому людині вигляді.
За таким принципом працюють всі відомі на сьогоднішній день пристрої і всілякі карти пам'яті на основі Nand Flash Memory (USB Flash Drive, SD, xD, MMC, CompactFlash, mini SD, micro SD, SSD і інші)

Загальні принципи відновлення даних з зіпсованих флеш накопичувачів на основеNANDпамяті.

У статті не буде приділятися увага логічним і механічних пошкоджень флеш пристроїв, з ними користувач без особливих зусиль і спеціального обладнання може впоратися самостійно, не виходячи з дому. До них відносяться пошкодження файлової системи (на нашому сайті ви зможете скачати демонстраційні версії програмного забезпечення яке спеціально розроблене для усунення подібного роду проблем, програми працюють в автоматичному режимі, тим самим зменшуючи ризик помилки яку може зробити користувач, необхідно всього лише слідувати докладної інструкції по роботі обраної програми).
Механічне пошкодження USB роз'єму, наприклад коли, витягуючи флешку роз'єм залишився в комп'ютері відірвавшись від «тіла» (тут знадобитися будь-яка паяльна станція і хоч якийсь досвід пайки). Якщо і це для вас викликає масу нерозуміння і створює ряд проблем - ви завжди можете звернутися до професіоналів по відновленню інформації. як правило роботи з вилучення даних при проблемах подібного роду не сильно б'ють по кишені.

Що ж робити коли флешка померла (потонула, згоріла при некоректному витягу або внаслідок перепадів напруги) і не визначається комп'ютером як пристрій? Контролер знаходиться всередині накопичувача крім реалізації власного інтерфейсу здійснює розкид даних по всьому об'єму осередків чіпів пам'яті, з метою запобігання їх зносу. Вихід з ладу контролера призводить до повної або часткової втрати доступу до даних накопичувача, але всі вони як правило залишаються всередині мікросхем пам'яті.

Для початку, перш ніж приступати до роботи необхідно володіти рядом програмно-апаратних засобів для випайки, зчитування вмісту мікросхем пам'яті в бінарний файл (dump) і подальшої роботи з ним в спеціалізованому середовищі (інтерфейсі програми) володіє рядом алгоритмів з якими працюють найпопулярніші на сьогоднішній день контролери використовуються в накопичувачах інформації на основі flash пам'яті.
Інформації знаходиться на флеш карті завдяки роботі контролера відображається провідником Windows (або інший ОС) в упорядкованому, легкому для читання для користувача вигляді, проте її фактичне (фізичне) розташування всередині чіпів пам'яті координально відрізняється. Дані розкидані і змішані між собою утворюючи «мозаїку» зібравши яку в правильному порядку можна отримати втрачені дані назад.

1.В першу чергу потрібно усунути внутрішнє змішування інформації на рівні чіпів пам'яті так як: мікросхема або мікросхеми пам'яті можуть складатися з декількох частин (кристалів) в основному 1-го, 2-ух, або 4-ох і запис на них виробляється відразу в два або більше місць (відбувається подвоєння швидкості запису). Завдання полягає в тому, щоб зібрати дані в правильному порядку (щоб номери секторів таблиці FAT йшли по порядку) в один великий файл (результуючий dump) з якими буде проводитися подальша робота по вилученню даних.

2. Запис на чіпи / кристали пам'яті проводиться блоками (blocks), що складаються в свою чергу з сторінок (page), які складаються з секторів (найчастіше по 528 біт) - формуючи єдине ціле банки (Banks). Блоки всередині банків перемішані. Кожен блок має маркером, як правило, 1 або 2 біта йдуть підряд (це функція від номера блоку), оперуючи маркерами, контролер автоматично розставляє блоки в потрібному порядку, після чого інформація, що знаходиться на накопичувачі через USB інтерфейс виводиться на екран. У рідкісних випадках Банки так само можуть бути перемішані, ускладнюючи загальну змішаність даних.
Завдання полягає в тому, щоб в потрібному порядку розставити Блоки всередині кожного Банку як це робить контролер флеш карти, отримати образ і скопіювати дані. Для чого знадобляться знання про принципи роботи алгоритмів контролерів, за якими здійснюється нумерація блоків за допомогою маркерів або таблиць трансляції.