Elnec BeeProg2 ile NAND Flash Programlama (DETAYLI REHBER)

guclusat

Tanınmış Üye
Süper Moderatör

1. NAND Flash Mantığını Anlamadan Olmaz​

NAND Flash, EEPROM gibi düz veri yazılan bir şey değil. Yapısı şöyle:
  • Page (Sayfa) → en küçük yazma birimi (genelde 512B / 2KB / 4KB)
  • Block (Blok) → birden fazla page (silme birimi)
  • Spare Area (OOB) → ECC + sistem bilgileri burada tutulur
Kritik:
  • Sen sadece veri yazmıyorsun
  • Aynı zamanda ECC + Bad Block yapısını da etkiliyorsun

2. Donanım Kurulumu (Profesyonel Seviye)​

Adaptör Seçimi​

  • TSOP48 → en yaygın (TV, uydu alıcıları)
  • BGA NAND → özel adaptör gerekir
Dikkat:
  • Adaptör = en kritik nokta
  • %50 hata temassızlıktan

Fiziksel Bağlantı​

  • Pin 1 yönü çok önemli (ters takarsan çip gider )
  • Çipi adaptöre takarken:
    • Baskı eşit olmalı
    • Ayaklar tam oturmalı
İpucu:
  • İzopropil alkol ile pin temizliği yap

3. Yazılım Mantığı (ÖNEMLİ KISIM)​

Kullandığın program:
BeeProg2 Software

Device Seçimi Neden Kritik?​

Örnek:
  • K9F1G08U0D ile K9F1G08U0C aynı gibi görünür
  • Ama:
    • Page size farklı olabilir
    • ECC yapısı değişebilir
Yanlış seçim =
Yazma başarılı görünür
Ama cihaz açılmaz

4. NAND Okuma (Backup Alma) – DETAY​

Neden önemli?​

Çünkü:
  • Orijinal dump = en büyük sigorta
  • Geri dönüş yoksa cihaz çöpe gider

Nasıl yapılır?​

  • Read → Device → Buffer
  • Save → .bin

Okuma Türleri​

1. RAW READ​

  • Tüm NAND okunur (OOB dahil)
  • Profesyonel kullanım

2. DATA ONLY​

  • Sadece veri
  • OOB yok
Tavsiye:
  • Her zaman RAW al

5. Yazma İşlemi (ASLINDA EN KRİTİK KISIM)​

Standart Adımlar​

  1. Load File
  2. Erase
  3. Program
  4. Verify
Ama burada işin püf noktaları başlıyor

6. BAD BLOCK YÖNETİMİ (EN KRİTİK KONU)​

Bad Block Nedir?​

NAND üretiminden gelen:
  • Bozuk bloklar
  • Kullanılmaz alanlar

3 Farklı Senaryo​

Senaryo 1: Orijinal NAND → Aynı NAND​

  • Bad block yapısı birebir korunmalı
Ayar:
  • ✔ Skip Bad Blocks = ON

Senaryo 2: Yeni NAND → Dump Yazma​

  • Yeni NAND’ın bad block haritası farklıdır
Ayar:
  • ✔ Skip Bad Blocks = ON
  • ✔ Rebuild / Remap (varsa)

Senaryo 3: Skip Kapalı​

  • Veri yanlış yerlere gider
  • Cihaz brick olur

Mantık:​

NAND = “adres sabit” değil
Bad block varsa veri kaydırılır

7. ECC (Error Correction Code) DERİN ANLATIM​

ECC Nedir?​

Veri hatalarını düzeltmek için kullanılan kod

NAND’da 3 Tip Dump Vardır:​

1. RAW (ECC YOK)​

  • Saf veri
  • Genelde servis dump’ları
Ayar:
  • ECC = OFF

2. ECC’li Dump​

  • OOB içinde ECC var
Ayar:
  • ECC = ON (doğru algoritma ile)

3. Mixed Dump (Tehlikeli)​

  • Kısmen ECC’li
En zor senaryo

Yanlış ECC Sonucu:​

  • TV açılmaz
  • Logo’da kalır
  • Boot loop

ECC Nasıl Anlaşılır?​

Yöntem:​

  • HEX editör ile aç:
    • Eğer veri arasında düzenli pattern varsa → ECC var
    • Eğer düz gidiyorsa → RAW

8. NAND Mapping (İLERİ SEVİYE)​

Bazı cihazlarda:
  • NAND içeriği lineer değildir
Özellikle:
  • Smart TV
  • Android cihazlar
  • Araç multimedya

Mapping Türleri:​

  • Interleaved
  • Block remap
  • Vendor özel yapı
Eğer:
  • Dump yazdın
  • Ama cihaz açılmadı
%70 ihtimal:
✔ Mapping sorunu

9. Verify (Doğrulama)​

Türleri:​

  • Byte-to-byte verify
  • ECC aware verify

Hata varsa:​

  • Adaptör teması
  • NAND ömrü bitmiş
  • Voltaj sorunu

10. PROFESYONEL İPUÇLARI​

✔ NAND sökmeden önce dump al (mümkünse)
✔ Aynı NAND olsa bile dump uymaz bazen
✔ TV NAND’larında:
  • Boot bölgesi kritik
    ✔ Araç teyplerinde:
  • VIN / config içinde olur

11. GERÇEK HAYATTAN HATALAR​

“Program OK ama cihaz açılmıyor”​

→ ECC yanlış

“Verify fail”​

→ Adaptör temassız

“Hiç okumuyor”​

→ NAND ölü
 
Geri
Yukarı