NAND FLASH z pendriva - format danych

Witam!

Mam zgryza technicznego. Znajomemu "uszkodził się" pendrive (pies go odgryzł, czy co). W każdym razie miał wyczucie i podzielił PCB między pamięciami (2x FLASH) a kontroleram (i raczej nie nadaje się do zlutowania - wielowarstwowy PCB i wyprute ścieżki).

Znajomy odlutował mi pamięci, kupiłem w Epsilonie ZIFa do tych chipów, zmajdrowałem na podstawie dokumentacji do chipa czytnik i zassałem zawartość do komputera.

I tu jest problem: dane nie są ułożone sekwencyjnie. Dane wyglądają tak:

Ramka ma 2048+64 bajty. W środku wygląda to tak: 4x struktura (512 bajtów sektor + 8 bajtów krzaczków + 8 bajtów 0xFF )

64 ramki tworzą stronę, stron jest 2048.

Są dwa scalaki, już wyczaiłem, że system czyta ramki raz z jednego, raz z drugiego.Zrobiłem program, który wywala śmieci z ramki (te wstawki po 16 bajtów między sektorami) oraz skleja ramki z obu chipów w "superramki" po

4096 bajtów a te w "superstrony" po 64 superramki, czyli po 256kB.

Jak popatrzę na superramkę, to mam tam zupełnie sensowne dane - dają się odczytać napisy, widać fragmenty struktury dysku (FAT, MBR, itd). Problem z tym, że superstrony nie są w kolejności... Pierwsze 256kB pena jest w superramce 0x0CD. Kończy się to FATem, więc szukając kontynuacji znalazłem

2 następne superramki: 0x0E2 i 2 następne do wyboru : 0x00D albo 0x0B1.

I pytanie moje: czy ktoś ma jakiekolwiek pojęcie (nawet teoretyczne, czy nawet "ciocia mówiła"), jak powiązać ramki??? Widzę dwie możliwości: gdzieś w pamięci jest superramka z mapowaniem numerów sekwencyjnych na superramki bądź te śmieci między sektorami zawierają jakąś formę mapy...

Za jakąkolwiek pomoc będę bardzo wdzięczny

Reply to
Pawel Kraszewski
Loading thread data ...

Kupić identyczny pendrive i wlutować te kości. Jak sądzę to dane zawarte na nim są najwięcej warte. K.

Reply to
John Smith

Pawel Kraszewski napisał(a):

Poszukaj dokumentacji kontrolera tego pendrive'a i sprawdź, czy _przypadkiem_ nie opisali sposobu zapisu, zapewnienia ,,wear leveling'' itp. Jeśli tego nie ma, to możliwe, że będzie chociaż przykładowy schemat, na którego podstawie można sklecić pendrive'a na pająku.

A łatwiej by było na pewno kupić takiego samego pendrive'a (skoro dane są takie ważne, to raczej nie był to noname) i podmienić pamięć, jak już wcześniej wspomniano.

w.

Reply to
Wojtek Kaniewski

Ha... No tak... To był mój pierwszy odruch... Ale obudowy do pendrive'a nie ma, a PCB nie jest sygnowana...

Kontroler jest taki (loga firmy brak):

M-DiSK

01-AS-046-01

Wygląda to na TwinMOSa (przynajmniej wg Google). Skontaktuję się z nimi. Dzięki za ,,wear leveling'' - poszukam więcej w sieci.

Reply to
Pawel Kraszewski

Dobry punkt - ale to jest NAND-FLASH a nie zwykły (jak, powiedzmy, BIOS) i nie ma szyny adresowej. Tj. i ma i nie ma - bez włażenia w szczegóły - dane są multipleksowane z adresem na jednej 8-bitowej szynie. Czyli jak część danych widzę, to zanóźkowałem go dobrze i nie ma możliwości pomyłki.

Idąc tropem M-DiSKa - znalazłem takie coś (datowane 25.02.05):

formatting link
'Mobile Disk III' ma kropka w kropkę taką samą płytkę, te same chipy pamięci, tylko ciut inny kontroler (ja mam 01-AS-046-01 a tam jest

01-AS-038-00)
Reply to
Pawel Kraszewski

Pawel Kraszewski snipped-for-privacy@Kraszewscy.net napisał(a):

[ciach] podłączę się pod wątek, w sumie stoję przed podobnym problemem - zdechła karfa Compact Flash Kingston 512MB - próbowałem kupić taką - niestety mimo takiej samej obudowy - zawartość inna - mcu karty - ARM - nieżywy - jestem przygotowany na wylutowanie pamięci i odczytanie ich za pomocą innego mcu - tylko pytanie co dalej - wear leveling algorithm (o ile jest zastosowany) chyba mocno skomplikuje sprawę... może ktoś doświadczony podzieli się sugestiami? dziękuję i pozdrawiam Paweł
Reply to
Paweł

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.