• Univerzální programátor nand flash. Univerzální programátor TNM5000. Způsob: Sestavte si programátor sami zakoupením hotové desky plošných spojů a flashovaného mikrokontroléru

    Ve svém archivu jsem našel fotku, na které byl zachycen proces výroby programátoru JTAG, který jsem potřeboval k oživení satelitního tuneru. Nyní trochu více o tom, jaký druh „zvíře“ takový JTAG je:

    JTAG(zkratka pro angličtinu. Společná testovací akční skupina; (vyslov J-tág) je název pracovní skupiny, která vyvinula standard IEEE 1149. Později se tato zkratka silně spojila se specializovaným hardwarovým rozhraním vyvinutým touto skupinou na základě standardu IEEE 1149.1. Oficiální název standardu Standardní testovací přístupový port a architektura Boundary-Scan. Rozhraní je navrženo pro připojení složitých digitálních obvodů nebo zařízení na úrovni PCB ke standardnímu testovacímu a ladícímu zařízení. Pro další zájemce je celý článek na wikipedie.

    A teď zpět k věci, od přátel mi přišel satelitní tuner, nejběžnější a nejjednodušší Globo na procesoru Ali M3329B. S takovými příznaky se vůbec nezapnul, nejprve jsem zhřešil na napájení, ale po zazvonění všech napětí multimetrem se ukázalo, že s napájením je vše v pořádku. Po prostudování několika různých článků o opravách těchto přijímačů jsem došel k závěru, že soudě podle příznaků byl firmware zcela ztracen a můžete jej obnovit flashováním přes JTAG programátor. Byla tam i myšlenka, že to úplně shořelo a nejde to obnovit, ale stejně jsem raději věřil, že pomůže firmware přes JTAG.

    Pro výrobu jsem zvolil toto schéma:

    Napájení je přiváděno do obvodu z přijímače, ke kterému je připojen. Použití externího napájecího zdroje pro obvod není nutné ze dvou důvodů. Za prvé, proudový odběr je velmi malý a nevytváří další zátěž pro napájení přijímače a za druhé napájení ze stejného zdroje jako procesor s flash pamětí zlepšuje přizpůsobení logické úrovně.

    74HC244 není invertující vyrovnávací paměť. Mikroobvod obsahuje dvě nezávislé čtyřbitové vyrovnávací paměti. Každá vyrovnávací paměť má svůj vlastní výstupní signál povolení (aktivní nízká). Na vstupech nejsou žádné Schmittovy spouštěče. Mikroobvod je vyroben podle „rychlé“ technologie CMOS, která zajišťuje vysokou rychlost. Výkonný proudový výstup umožňuje udržovat vysokou rychlost i při kapacitní zátěži. Výkon 74HC244 je srovnatelný se Schottkyho diodami, zatímco 74HC244 si zachovává výhody CMOS čipů, tzn. vysoká odolnost proti rušení a nízká spotřeba energie. Vstupy mikroobvodu jsou chráněny před poškozením statickou elektřinou pomocí diod.

    Bohužel jsem ve svých zásobách nenašel 74HC244. Našel jsem pouze analog 74F244, který se mírně lišil napájecím napětím Vcc. 74HC244 má doporučený rozsah 2 až 6 V, zatímco 74F244 má doporučený rozsah 4,5 až 5,5 V. I když jsou maximální limity od -0,5 do +7 V, rozhodl jsem se neobtěžovat a začít vyrábět.

    Po pořízení původního diagramu na prvním obrázku a jeho překreslení v programu DipTrace se ukázalo následující schéma:

    Vše bylo směrováno automaticky, nebyla směrována pouze jedna linka, ale tento problém vyřešily dvě SMD propojky. Obrázek nahoře ukazuje desku s plošnými spoji připravenou k výrobě.

    Na desce jsem podepsal i všechny výstupy, ale bohužel jsem špatně podepsal výstupní signály, jak vidíte na zdroji 1- GND, 2-TCK, 3-TMS, 4-TDO, 5-TDI a 6-RST , ale udělal jsem to GND, TMS, TCK, TDI, TDO, a RST, spletl jsem se přesně při podepisování kontaktů, vše je správně dle schématu, dle původního zdroje, tzn. 1- GND, 2- TCK, 3- TMS, 4- TDO, 5- TDI a 6- RST.

    PCB se správným označením pinu:

    Vlastně to hlavní jsou getinaky, pilník, malá ruční pilka, brusný papír. Šroubovák a řezák na dělení getinaků na 2 části, jelikož jsem měl z obou stran kus fólie a naše deska je jednoduchá, jednostranná.

    Po provedení veškeré práce, otočení getinaků na rozměry desky (cca 55x50 mm), vezmeme čisticí prostředek COMET (Komet) v prášku a houbu na mytí nádobí. Čistíme getinaky od stop mastnoty a nečistot. Zbylou vodu je lepší neotírat, ale nechat tak uschnout.

    Zatímco getinax schne, jdeme k počítači a vytiskneme naše schéma na laserové tiskárně a fotografickém papíru v zrcadlovém obraze, což naznačuje maximální kvalitu tisku. Je důležité nezapomenout dát zrcadlový obraz, jinak ve výsledku dostaneme vše na desce naruby!

    A tak, getinax je hotový, plošný spoj se vytiskne, okraje getinaxu opatrně napasujeme na vzor plošného spoje na fotografickém papíře, připevníme lepicí papírovou páskou k getinaxu, vezmeme žehličku a nastavíme to na maximální teplotu.

    Přirozeně fóliovaná strana getinaků na vzor desky plošných spojů.

    Když se žehlička zahřeje, pevně přitlačíme, začneme žehlit - rovnoměrně zahříváme getinaky ze strany papíru. Desku této velikosti zahříváme ne déle než 30-60 sekund, jinak se toner rozteče. Doporučuji nastavit si na telefonu časovač, aby byl čas blízko před vašima očima. Když je vše hotové, nechte desku vychladnout.

    Z desky odtrhneme fotopapír, před námi je hotová deska, kterou zbývá vyleptat v chloridu železitém FeCl₃, pokud nejsou velké vady, před leptáním stopy korigujeme skalpelem a tenkým kotoučem popisovač.

    Při procesu leptání chloridem železitým je nutné roztok průběžně promíchávat, např. protřepáváním nádobí. Pokud velikost desky není příliš velká, můžete desku položit na povrch roztoku vzorem dolů - není třeba třást, ale je obtížné sledovat konec procesu leptání. Doba leptání chloridem železitým je od 5 do 50 minut a závisí na teplotě, koncentraci roztoku a jeho znečištění mědí, tloušťce měděné fólie. Po leptání je třeba desku opláchnout tekoucí vodou a vysušit.

    V důsledku toho získáme takovou desku plošných spojů

    Toner čistíme také práškem Comet, drží dostatečně dobře a aby se nepoškodily stopy desky, čistíme pomalu.

    Po vyčištění od toneru vidíme úhlednou, krásnou desku plošných spojů


    Nyní začneme pájet prvky:


    Jedná se o univerzální zařízení pro programování velmi široké škály mikroobvodů, od banálních I2c a MicroWire čipů až po vícenohé Nand Flash.
    Za léta amatérského rádia a elektronických koníčků se mi nashromáždilo poměrně velké množství takových podomácku vyrobených zařízení, sestavených pro konkrétní úkoly a jen kvůli samotnému procesu. S příchodem stále většího rozsahu mikroobvodů a zvýšením jejich kapacity bylo nutné pořídit tovární zařízení, známý MiniPro TL-866.
    Zařízení je opravdu velmi pěkné, věrně slouží již mnoho let, ale chybějící ovládání kontaktů, hardwarová omezení a ve výsledku i nemožnost práce s moderními čipy mě přiměly poohlédnout se po dražších a funkčnějších zařízeních. Letmý přehled trhu s takovými zařízeními vedl k poznání, že mým potřebám nejvíce odpovídají dvě zařízení: ruský ChipProg-48 (1) a íránský TNM5000. Druhý se ukázal být více než 2x levnější se srovnatelnou funkčností a po nějakém přemlouvání nemohla moje žába, která ztratila ostražitost při výběru dárku pro svého milého k narozeninám, rozumně namítat.
    Na stránce oficiálního prodejce na Aliexpress byla provedena objednávka, vybráno doručení Singapore Post a platba byla provedena. V procesu další korespondence s prodávajícím, mimochodem velmi společenským, se ukázalo, že je nejvýhodnější poslat kurýrem SPSR. Je to rychlejší, ale pro celní orgány jsou vyžadovány další údaje z pasu, což způsobilo určité obavy, protože. Balík nebyl doručen občanem Ruské federace. Dohodli jsme se na obvyklém ruském vzduchu, prodejce kompenzoval rozdíl v dodávce nepříliš běžícím adaptérem SSOP34.
    Přes všechny obavy bylo dodání rychlé a bezproblémové.
    Takže íránský programátor z Číny byl deportován do Ruska a převezen do Běloruska speciálně vyškoleným rezidentem v Moskvě, občanem Běloruské republiky s dočasnou registrací. Tento komplexní systém pomohl vyhnout se placení cla z poštovních příloh v hodnotě více než 20 eur za zboží překračující celní hranici Běloruské republiky.


    Na fotografii je samotný programátor, USB kabel pro připojení k počítači, vakuová přísavka pro přenos malých čipů, kabel pro in-circuit programování, bonusový čip NAND Flash K9GAG08U0E-SCB0 a adaptér SSOP34, celkem kvalitní . CD se softwarem a návodem na fotce nebylo, zapomněl jsem ho v krabici.


    Krabice byla nečekaně větší, než jsem si představoval, obsah odpovídal popisu.
    Pro srovnání fotka s oblíbeným TL-866.








    Mimochodem, cenovka za adaptéry od prodejce je prostě koňská, adaptér TSOP48-DIP48 jsem koupil od jiného prodejce občas levněji, akorát ve výborné kvalitě a panel se zdá být dokonce japonský YAMAICHI.




    Pouzdro programátoru je vyrobeno z poměrně kvalitního plastu tmavé barvy, bez otřepů, záblesků a dalších atributů polosuterénní sestavy. Na jedné straně pouzdra je 10pinový in-circuit programovací konektor, jedná se o standardní IDC10. Nahoře 48kolíková zásuvka ARIES DIP. Je zvláštní, že na rozdíl od jiných zásuvek je s námahou uveden do otevřeného stavu a sám je uveden do stavu „čip vložen, upnut a připraven k práci“, to je jeho výchozí stav. Na horní straně pouzdra je také indikátor aktivity a nálepka s modelem programátoru.


    Na druhé straně je standardní USB-B pro připojení k PC a konektor pro přídavné napájení, neznámého provedení, pečlivě přelepený výstražnou nálepkou.


    Na spodní straně pouzdra je nálepka s informacemi, záruční nálepka na šroub a gumové nožky.


    Programátor má roční záruku, kterou pravděpodobně nevyužiji, ale pro případ, že nebudu dělat rozřezání, použijeme fotku jiného, ​​odvážnějšího majitele.






    Zde je popis programátora v ruštině, také trochu plagiuji:

    dodatečné informace

    Flash paměti (paralelní/Nand/sériové), EPROM, EEPROM, sériová EEPROM, mikrokontroléry, NVRAM, FRAM, CPLD, PLD, FPGA).
    Vysoce kvalitní 48pinová ZIF deska a 10pinový ISP/JTAG konektor.
    Vysokorychlostní USB 2.0
    Programování 1 Gb Nand Flash méně než 50 sekund
    Analýza NAND čipů na přítomnost BAD bloků, může je přeskočit při zápisu, při čtení.
    Automatická detekce všech flash pamětí / mikrokontrolérů s ID zařízení.
    Praktický software pro WIndows XP/VISTA/7/8 (32,64bit).
    Funkce testování kontaktů dodaného mikroobvodu (Pin Test)!
    Pokud jste IC špatně vložili do bloku nebo má špinavé piny, software programátoru to oznámí a uvede číslo tohoto kontaktu!
    Nízké náklady na hlavní jednotku a rozpočtové adaptéry.
    Jeden 32/40/48 TSOP adaptér pro všechny flash paměti.
    Jeden adaptér TSOP56 pro všechny 56pinové flash paměti.
    Speciální funkce, které výrazně rozšiřují možnosti programátora, získáváme několik programátorů v jednom:
    Plná emulace Altera USB-Blaster pro software Quartus-II.
    Plná emulace sériového portu.
    Podpora ECU vozidla, imobilizéru a mikrokontroléru palubní desky.
    TopJTAG Flash Programátor, TopJTAG Probe.
    Srdcem programátoru TNM 5000 je 500 0000 Gate FPGA s navrženým CPU jádrem s taktem 96 MHz pro rychlé programování IC.
    Práce s oblastí OTP čipů EN25F16, EN25F80, EN25Q16, EN25Q32, EN25Q64… Čtení… ukládání… úpravy… programování oblasti OTP čipů.
    Paralelní blesk až 56pin:
    Podporuje různé typy balíčků (PLCC, TSOP1, TSOP2, VSOP a…). Všechny blesky může software automaticky detekovat. Při použití jednoho adaptéru pro všechny 32-48kolíkové TSOP flash, uživatel potřebuje pouze 1 adaptér pro více než 2000 flash čipů.
    NAND Flash paměti:
    Programátor má další software Nand+ speciálně navržený pro NAND Flash. Software Nand+ má jednu z nejúplnějších pamětí NAND Flash se špatným algoritmem opravy dat v MLC NAND. TNM5000 je jedním z nejrychlejších programátorů Nand na světě s rychlostí čtení a zápisu až 8 megabajtů za sekundu. Všechny Nand mohou být automaticky detekovány softwarem.
    Sériové flash paměti:
    Programátor podporuje všechny 8-16pinové sériové SPI blesky. Všechny flash SPI mohou být detekovány automaticky pomocí softwaru. Čte a programuje SPI flash s maximální bezpečnou rychlostí 6-7Mbps. Také odstraňuje ochranu, přičemž ochrana proti zápisu před zápisem dat bliká.
    Mikrokontroléry:
    ATMEL: Všechny 8bitové čipy AVR (ATMEGA/ATTINY/AT90S) jsou podporovány na kabelu ZIF Scocket & ISP. Je podporováno programování AVR až do 64 pinů. Podporována je nově představená řada ATXMEGA a metoda PDI a JTAG. Stará řada C51 a nová řada C51 s jedním cyklem jsou plně podporovány. Všechny série lze detekovat automaticky. Je podporováno programování ARM7 přes JTAG.
    OBRÁZEK ​​mikročipu:
    Jeden z nejobsáhlejších seznamů zařízení pro mikrokontroléry Microchip PIC včetně všech PIC12F / PIC12C / PIC16C / PIC16F / PIC18F / DPIC33F / J&K Series. Na ZIF Scocket lze naprogramovat zařízení až do 40 pinů, všechny PIC lze detekovat automaticky a jsou programovány pomocí ISP kabelu.
    Dodatečně:
    Programy MIO KB9012, ST, SST, Philips (NXP), Motorola, Syncmos, Silicon Lab, ICSI, Infineon, Intel, Winbond a…
    Automobilové mikrokontroléry:
    Podpora kabelu ISP řady ST10F a TMS370 pro mnoho ECU BOSCH / VALEO / SAGEM (plná podpora pro ST10F ze seznamu zařízení programátoru XPROG-m). Podpora Siemense & Infineon SAK - C167 připojená k 44 nebo 48 pinovému flashi (ECU Siemens / BOSCH / SAGEM S2000), jako je programátor HSE FlashHit. Podpora pro zařízení NEC a Motorola pro řídicí panely. Podporuje Motorola / FreeScale MC68HC11KA4 / MC68HC11A8. Přidána podpora OTP pojistky řady MC68HC908. Infineon Tricore Audo-NG (příští generace) TC1796 TC1766 s podporou externí 32bitové paměti Flash (S29CD032 - S29CD016) v nových ECU Bosch. Motorola MPC562 MPC561 BDM programování pro externí flash a externí EEPROM v EDC ECU (Bosch & Sim2K). Řada Motorola HC9S12DG64 / HC9S12DG128 / HC9S12DG256 / HC9S12DG512 s funkcí bezpečnostního bypassu.
    PLD/CPLD/FPGA:
    Podpora pro všechna zařízení ALTERA JTAG přes Altera USB Blaster Programmer v emulaci Quartus Software. Podpora Xilinx CPLD/FPGA se souborem jed. Rychlá konfigurace Xilinx FPGA s bitovým souborem. Podpora pro zařízení GAL/Palce se speciální možností odemknutí Palce.
    Vícejazyčný software (angličtina/čínština/arabština/francouzština/farština/ruština). Na přání zákazníka lze přidat další jazyky a zařízení. Software si můžete stáhnout a spustit v demo režimu, abyste jej mohli vyhodnotit.


    No, nemůžu se dočkat, až otestuji zařízení v provozu. Čip opatrně vložíme do kolébky adaptéru, nainstalujeme samotný adaptér do univerzální patice programátoru, připojíme programátor k notebooku, notebooku s 32bitovým Windows 10 s nainstalovaným softwarem staženým předem ze stránek výrobce.




    Aby programátor pracoval s čipy NAND FLASH, používá se jeden software, pro práci se zbytkem různých čipů - jiný.
    Vybereme náš čip ze seznamu a ...


    Zařízení pečlivě upozorňuje na nedotyk konkrétních nožiček čipu. Jemně vyždímejte panel, posuňte čip - vše ok. Pro kontrolu spustíme autodetect - programátor určí nejbližší čip této rodiny, vše je v pořádku.


    Píšeme, čteme, mažeme, vše OK, programátor rychle splní všechny režimy.
    No, pojďme k hlavní akci, pro kterou byl programátor zakoupen. Při práci využíváme mnoho desítek průmyslových Wi-Fi bodů HP MSM-310R.


    Zařízení je drahé, ale přesto selhává. Záruka vypršela a určitý počet se jich nashromáždil. Uvnitř, jak to má Hewlett-Packard a další bílé značky rádi, je vykoupený výrobce Canadian Colubris.


    Soudě podle skrovných informací od výrobce a blikání LED diod bylo možné pochopit, že problém je v softwaru. Bod se prostě nenačetl kvůli poruše v interním souborovém systému nebo opotřebovanému flash paměťovému čipu. Čip K9F5608UOD sfoukneme fénem z živého bodu, přečteme a připájeme zpět. Zjistíme, kde ve výpisu čtení jsou konfigurační parametry, které popisují sériové číslo a MAC adresy zařízení. Jsou tam dva takové, pár kilobajtových bloků. Jsou navzájem totožné. Z mrtvého bodu čip také odpálíme, odečteme, najdeme na skládce identifikační bloky na stejných adresách, vystřihneme, uložíme. Tyto bloky ve firmwaru načteném z živého bodu nahradíme požadovanými se sériovými čísly a mrtvými MAC. Flashneme nový čip, dříve zakoupený na Aliexpressu, s tímto kombinovaným firmwarem, připájeme ho a voila, pointa funguje. Měl jsem štěstí, nový čip, který jsem koupil, se ukázal jako velmi kvalitní a nebyly tam žádné špatné bloky z továrny, takže výpis mohl být zapsán jedna ku jedné, bez jakýchkoliv posunů. Metodicky správnější by samozřejmě bylo napojit se na rozhraní jtag procesoru bodu, ale v té době bylo příliš zkoušet neznámé.
    A na závěr bych vám rád řekl o minisoutěžích některých mých programátorů. Vyndal jsem je z popelnic, nafotil a připravil k testování.


    Seznamte se s Bidipro, samopájecím zařízením, které bylo ve své době mezi rádiovými torpédoborci docela populární. Dlouhou nečinností se ale někde vloudila hardwarová chyba v podobě netrvalého nebo zkratu, způsobeného lakomou slzou nostalgického elektrotechnika, která upadla. A kromě toho ovládací software vyžaduje DOS. Vypadne na začátku.


    Druhé zařízení, klon SEEPROG, je dobrý sériový programátor čipů, výrobce stále aktualizuje software.


    Třetí účastník – Ezoflash, zjednodušená verze Willema, byl také aktivně využíván před akvizicí MiniPro.


    Čtvrtý člen, TL-866, není třeba představovat.
    Některé čipy budeme číst-mazat-zapisovat, pokud pouzdra nejsou DIP, tak použijeme sadu MiniPro adaptérů. Pro Ezoflash - jejich vlastní adaptéry, ty, které se nám podařilo najít mezi sutinami. Prázdná místa v tabulce znamenají, že příslušný programátor nemůže s testovaným čipem pracovat.
    Využijeme i další PC s hardwarovým LPT portem.
    Konfigurace je vcelku moderní, DualCore Intel Core i3-4170, 3700 MHz, 4GB RAM, základní deska Gigabyte GA-H81M-S2PV, SSD ADATA SP550, Windows 7 x32.
    Výsledky výzkumu dáme do tabulky, doba každého pohybu těla je uvedena v sekundách.


    Výhodou je rychlost základních operací usb programátorů.
    Činnost programátoru v režimu in-circuit programování jsem nekontroloval - z důvodu nezájmu o tyto schopnosti jsem nekontroloval ani programování mikrokontrolérů, protože Jsem si 146% jistý schopnostmi zařízení.
    Abych to shrnul, rád bych zdůraznil to hlavní
    Výhody tohoto programátoru:
    zpracování,
    Široká škála podporovaných čipů, seznam je neustále aktualizován.
    Levné pin-2pinové adaptéry pro drtivou většinu mikroobvodů (kromě čipovaných SOP44 - DIP40, cena za neslušnou skoro padesátku)
    Dostupná cena ve srovnání s podobnými zařízeními s podobnou funkčností.
    nedostatky: dosud nenalezen.
    Děkuji všem, kteří do této chvíle přečetli moje první kreo o múzách, předem se omlouvám za možný jazykový jazyk, nepoužil jsem Word, ruština není můj rodný jazyk.
    Ano, opakuji, přístroj byl zakoupen za jejich těžce vydělané peníze. Plánuji koupit +30 Přidat k oblíbeným Recenze se líbila +75 +124

    2017-05-25 Datum poslední změny: 2018-10-10

    Článek se zabývá: Vlastnosti použití mikroobvodů NAND BLIKAT, metody rozvržení stránky a špatná správa bloků. Doporučení pro programování na programátorech.

    OBSAH:

    1. TEORIE

    1.1. Rozdíl mezi čipy NAND FLASH a konvenčními čipy

    Pokud se neponoříte do složitosti technologie, pak je rozdíl mezi mikroobvody NAND z jiných paměťových čipů je následující:

    • Mikroobvody NAND mít velmi velký objem.
    • Mikroobvody NAND může mít špatné (špatné) bloky.
    • Velikost stránky evidence není mocnina 2 .
    • Zápis na mikročip odneseno pouze stránky , mazání - alespoň v blocích .

    Existuje několik dalších rozdílů, ale první dva jsou klíčové. Způsobuje nejvíce problémů přítomnost špatných bloků.

    1.2. Organizace NAND FLASH čipů

    Zjistěte více o organizaci a struktuře mikroobvodů NAND lze číst v odborné literatuře, ale upozorňujeme, že:

    • Mikroobvody NAND organizovaný v stránky (stránky), stránky v bloky (bloky), blokuje logické moduly (měsíc).
    • Velikost stránky NAND ne násobek síly 2.
    • Stránka se skládá z základní A náhradní (náhradní) oblasti.

    Jak zamýšleli vývojáři NAND PROTIjádrová oblast musí být nalezen samotná data, A v náhradním (rezervním) prostoru - špatné značky bloků, kontrolní součty hlavní oblast, ostatní servisní informace.

    Pokud mluví o velikost stránky NAND čipy 512 byte nebo 2K bajtů, pak mluvíme o velikost hlavní plochy stránky, s výjimkou náhradní.

    1.3. Způsoby použití oblasti pro stránku

    Připomeňme ještě jednou, že podle záměru vývojářů NAND čipů v náhradním prostoru by měl nachází se: špatné značky bloků, kontrolní součty hlavní datová oblast, jiný servisní informace.

    Většina vývojářů popisuje pouze umístěníšpatné značky bloků v dodaných mikroobvodech. Pro další aspekty využití náhradní plochy jsou uvedena obecná doporučení a algoritmus pro výpočet ECC, obvykle podle Haminga. Samsung jde o krok dále s doporučeními nazvanými „ Náhradní oblast NAND flash paměti. Standard destinace "("NAND Flash Spare Area. Assignment Standard", 27. dubna 2005, Memory Division, Samsung Electronics Co., Ltd).

    Tato norma tedy předpokládá následující využití náhradní plochy:

    Pro mikroobvody s velikostí stránky 2048+64 bajtů t hlavní a náhradní oblast stránky je rozdělena na 4 fragmenty (sektory):

    KrajVelikost (bajt)Fragment
    Hlavní512 Sektor 1
    512 Sektor 2
    512 Sektor 3
    512 Sektor 4
    Náhradní16 Sektor 1
    16 Sektor 2
    16 Sektor 3
    16 Sektor 4

    Každý fragment jejich hlavní plocha je zarovnaná fragment náhradního prostoru.

    Využití náhradní plochy (pro každý ze čtyř kusů)
    pro čipy s velikostí stránky 2048 + 64 bajtů:
    Zaujatost
    (byte)
    Velikost
    (byte)
    ÚčelPopis
    Špatná značka bloku
    Rezervováno
    Číslo logického sektoru
    Vyhrazeno pro číslo sektoru
    Rezervováno
    ECC kód pro hlavní oblast stránky
    ECC kód pro číslo logického sektoru
    Rezervováno

    To ale není jediný "standard" pro alokaci paměti stránky, jen my jich známe několik desítek, například:

    • "Správa NAND FLASH pod WinCE 5.0 ", NXP;
    • "Bad Block Management pro NAND Flash pomocí NX2LP “, 15. prosince 2006, Cypress Semiconductor;
    • "OLPC NAND Bad Block Management “, OLPC.

    1.4. NAND obraz a binární obraz

    Můžete se setkat dvě možnosti obrázek pro záznam:

    1. Binární nezlomený na stránky a žádná náhradní plocha.
      Tato možnost je možná, pokud používáte vývojář zařízení NAND nebo takový soubor obdrželi od vývojáře. Takový obrázek je vhodný pro zápis na čipy se stránkami libovolné velikosti a libovolného rozložení náhradní plochy, jen je třeba vědět, jakou metodou bude náhradní plocha tvořena.
    2. Obraz načtený z jiného čipu (vzorku) obsahující náhradní oblast se špatným označením bloků, servisní informace a řídicí kódy.
      Takový obrázek lze napsat pouze do mikroobvodu přesně stejnou velikost stránky a bloky.

    Ti specialisté, kteří se zabývají opravami různých zařízení, se častěji setkají s druhým případem. V takovém případě je často obtížné určit použitou metodu přidělení náhradní oblasti a použitou metodu správy špatných bloků.

    1.5. Tovární značení špatných bloků

    Jediné, co je víceméně standardizované, je tovární značení špatných bloků.

    • Špatné bloky jsou označeny na 0. nebo 1. strana pro čipy s velikostí stránky menší než 4K.
    • Pro 4K stránek a více, může být označení zapnuto poslední strana blok.
    • Moje maličkost špatná značka bloku se nachází v oblasti náhradní stránky v byte 5 pro malé stránky (512 bajtů) a v byte 0 pro velké stránky (2 kB).
    • Špatná značka bloku může záležet 0x00 nebo 0xF0 pro malé stránky A 0x00 více X.
    • dobré bloky vždy označeny 0xFF.
    • V každém případě hodnota jiné než 0xFF programátor vnímá jako špatná značka bloku.
    • Typicky v moderní NAND špatný blok je zcela vyplněn hodnotou 0x00.

    Je tu jeden problém: špatný blok lze vymazat. Tímto způsobem můžete ztratit informace o špatných blocích mikroobvodu.

    Pokud však mikroobvod již v zařízení fungoval, není tento způsob označování špatných bloků vždy používán. Někdy ani informace o špatných blocích nejsou uloženy v paměti NAND. Ale nejčastěji, i když vývojář softwaru zařízení používá jiné špatné schéma správy bloků, raději nevymaže tovární označení.

    1.6. Špatná správa bloků

    Vývojáři NAND mikroobvody doporučují používat následující schémata špatného řízení bloků:

    • Složitšpatné bloky
    • Používání náhradní oblasti

    Také metody pro správu špatných bloků někdy zahrnují použití oprava chyb(ECC). Je třeba poznamenat, že použití jediné opravy chyb neodstraňuje více chyb a stále nutí k použití jednoho z výše uvedených schémat. Navíc většina NAND mikroobvody mají garantovanou oblast zabezpečenou proti selhání, ve které se neobjevují špatné bloky. Oblast zabezpečená proti selhání se obvykle nachází na začátku čipu.

    Tyto způsoby správy špatných bloků jsou dobře popsány v technické dokumentaci výrobců. NAND a široce diskutované v literatuře o použití NAND. Připomeňme si však krátce jejich podstatu:

    Přeskočit špatné bloky:
    Pokud je aktuální blok špatný, je přeskočen a informace je zapsána do dalšího volného bloku. Toto schéma je univerzální, snadno implementovatelné, ale poněkud problematické pro případy, kdy se během provozu objeví špatné bloky. Pro plné fungování tohoto schématu musí být uvnitř bloku uloženo logické číslo bloku (standard pro přidělování náhradní oblasti od Samsungu, to vlastně předpokládá). Při práci podle tohoto schématu musí řadič někde uložit tabulku shody mezi čísly logických bloků a jejich fyzickými čísly, jinak bude přístup do paměti značně zpomalen.

    Proto je logickým vývojem schéma využití náhradní plochy:
    Podle této metody je celé množství paměti rozděleno na dvě části: hlavní a záložní. Když se v hlavní paměti objeví špatný blok, je nahrazen blokem z náhradní paměti a odpovídající záznam je proveden v tabulce přemapování bloků. Tabulka přemapování je uložena buď v zaručeně bezpečném bloku, nebo ve více instancích. Formát tabulky je jiný, ukládá se na různá místa. Samsung opět popisuje standard pro formát a uspořádání tabulky, ale málokdo se jím řídí.

    2. PRAXE

    2.1. Vyhledávání špatných bloků NAND

    programátor ChipStar umožňuje rychlé skenování čipu NAND na přítomnost špatných bloků v souladu s továrním značením špatných bloků.

    Vyberte položku nabídky " Chip|Hledejte špatné bloky ", bude čip zkontrolován na špatné bloky. Výsledek je uveden v tabulce.

    Tato akce je nutná pouze v případě, že chcete pouze zobrazit seznam špatných bloků. Ve všech ostatních případech se vyhledávání špatných bloků v případě potřeby provádí automaticky.

    2.2. Špatné bloky v obrazu NAND

    Při čtení obrazu NAND čipu programátor navíc ukládá informace o velikosti stránky a bloku čipu. Informace jsou uloženy v samostatném souboru. Pokud jste si tedy přečetli a uložili obrázek mikroobvodu do souboru <имя_файла>.nbin program vytvoří další soubor: <имя_файла>.cfs . Při otevírání souboru <имя_файла>.nbin soubor <имя_файла>.cfs se bude také počítat. V souboru <имя_файла>.cfs zaznamenává se informace o velikosti stránky a bloku čipu. Po načtení čipu nebo otevření souboru jako .nbin Na základě informací o velikosti stránky a bloku se provádí skenování obrázku na pozadí, zda neobsahuje špatné bloky.

    Možnosti NAND a informace o špatných blocích lze zobrazit na kartě " NAND"Editor programu:

    binární obraz NAND lze zobrazit pod hlavní paměť ":

    V režimu editoru NAND je zvýrazněna náhradní oblast stránky matnější barva, zpřístupní se také tlačítka pro procházení stránkami, bloky a rychlý skok na začátek náhradní oblasti aktuální stránky. Ve stavovém řádku editoru se navíc zobrazuje kromě adresy kurzoru číslo stránky A číslo bloku kde se nachází kurzor. To vše umožňuje pohodlnější prohlížení obsahu čipu.

    2.3 Vymazání NAND

    Výchozí programátor nemažešpatné bloky, ale pokud vypnete možnost " Kontrola a přeskakování špatných bloků " Špatné bloky mohou být vymazány a označení špatných bloků může být ztraceno. Tuto možnost deaktivujte pouze v případě potřeby.

    Přeskočí se pouze špatné bloky označené podle továrního označení. Pokud zařízení používá jiná špatná označení bloků, budou vymazána, protože je programátorský software neuvidí. Pro práci s nestandardním značením špatných bloků může programátor použít externí pluginy.

    2.4. Testování mikroobvodu na absenci záznamu

    Ve výchozím nastavení programátor při kontrole ignoruje všechny špatné bloky, ale pokud zakážete " Skenování a přeskakování špatných bloků "Špatné bloky budou zkontrolovány, což přirozeně povede k chybám testování.

    2.5. Zápis hotového obrázku na čip

    Záznam obrazu NAND v mikroobvodu se poněkud liší od obvyklého BLIKAT mikročipy. V první řadě se musí shodovat velikosti stránek obraz a cílový čip. Pokud je použita špatná správa bloků, musí odpovídat velikosti bloků obrázky a mikročipy.

    Software pro všechny programátory ChipStar podporuje tři metody pro správu špatných bloků vestavěné nástroje a neomezený počet pomocí pluginů. Navíc můžete nastavit počet zapisovatelných bloků na začátku čipu, což ve skutečnosti je Čtvrtý způsob, jak spravovat špatné bloky.

    Metoda 1: Ignorujte špatné bloky

    Jednoduché kopírování, ignorování špatných bloků (špatné bloky se zapisují stejně jako normální).

    původní obrázek Čip
    (počáteční stav)
    Čip
    (výsledek)
    Blok 0
    dobrý
    Blok
    čistý
    Blok 0
    dobrý
    Blok 1
    špatný
    Blok
    čistý
    Blok 1
    Nepravdivé
    Blok 2
    dobrý
    Blok
    čistý
    Blok 2
    dobrý
    Blok 3
    dobrý
    Blok
    špatný
    Blok 3
    vadný
    Blok 4
    dobrý
    Blok
    čistý
    Blok 4
    dobrý
    Hranice záznamu
    Blok 5
    dobrý
    Blok
    čistý
    Blok
    čistý

    Nejvhodnější pro kopírování čipů NAND aniž bychom se ponořili do jeho vnitřní struktury, za předpokladu, že čip, který má být zapsán neobsahuje špatné bloky . Pokud je na původním obrázku byly přítomny špatné bloky , nakonec se tvoří falešné špatné bloky . Vzhled falešných špatných bloků neovlivní provoz zařízení. Pokud však čip již obsahuje špatné bloky, při pokusu o zápis na takový čip se objeví špatné bloky s nepředvídatelnými následky. Tip: můžete zkusit čip zcela vymazat, včetně špatných bloků, a poté jej zkopírovat. Pokud se zápis do špatného bloku podaří (to se často stává), vaše zařízení bude fungovat správně, v budoucnu software zařízení identifikuje špatný blok a nahradí jej dobrým v souladu se svým operačním algoritmem.

    Metoda 2: obejít špatné bloky

    původní obrázek Čip
    (počáteční stav)
    Čip
    (výsledek)
    Blok 0
    dobrý
    Blok
    čistý
    Blok 0
    dobrý
    Blok 1
    špatný
    Blok
    čistý
    Blok
    čistý
    Blok 2
    dobrý
    Blok
    čistý
    Blok 2
    dobrý
    Blok 3
    dobrý
    Blok
    špatný
    Blok
    špatný
    Blok 4
    dobrý
    Blok
    čistý
    Blok 4
    dobrý
    Hranice záznamu
    Blok 5
    dobrý
    Blok
    čistý
    Blok
    čistý

    Obcházení špatných bloků ze zdrojového obrázku nejsou zapsány žádné špatné bloky A informace se nezapisují do špatných bloků mikroobvodu. Toto není nejlepší politika kopírování, ale je bezpečná proti špatným blokům čipů: žádná informace se neztratí o špatných blocích čipů a neobjeví se žádné falešné špatné bloky. V některých případech může taková politika kopírování pomoci obnovit funkčnost neznámého zařízení.

    Metoda 3: Přeskočte špatné bloky

    původní obrázek Čip
    (počáteční stav)
    Čip
    (výsledek)
    Blok 0
    dobrý
    Blok
    čistý
    Blok 0
    dobrý
    Blok 1
    špatný

    Blok
    čistý
    Blok 2
    dobrý
    Blok 2
    dobrý
    Blok
    čistý
    Blok 3
    dobrý
    Blok 3
    dobrý
    Blok
    špatný
    Blok
    špatný
    Blok 4
    dobrý
    Blok
    čistý
    Blok 4
    dobrý
    Hranice záznamu
    Blok 5
    dobrý
    Blok
    čistý
    Blok
    čistý

    Nahrávání přeskakování špatných bloků předpokládá, že zařízení používá právě takový špatný algoritmus správy bloků a ne nějaký jiný. Za těchto podmínek je zaručeno správné kopírování informací.

    Metoda 4: Zapište pouze zaručenou bezpečnou oblast

    původní obrázek Čip
    (počáteční stav)
    Čip
    (výsledek)
    Blok 0
    dobrý
    Blok
    čistý
    Blok 0
    dobrý
    Blok 2
    dobrý
    Blok
    čistý
    Blok 1
    dobrý
    Hranice záznamu
    Blok
    špatný
    Blok
    čistý
    Blok
    čistý
    Blok 3
    dobrý
    Blok
    špatný
    Blok
    špatný
    Blok 4
    dobrý
    Blok
    čistý
    Blok
    čistý
    Blok 5
    dobrý

    Blok
    čistý

    Blok
    čistý

    Ve většině moderních NAND mikroobvody, je zaručeno, že první bloky (alespoň jeden) nebudou mít žádné poruchy. V mnoha zařízeních je na začátku čipu kód pro bootloader a operační systém zařízení. Často stačí zkopírovat pouze tyto oblasti.

    Zadejte velikost záznamu v blocích v dialogu nastavení režimů záznamu.

    Další způsoby, jak spravovat špatné bloky

    Software Programátoři ChipStar podporuje všechny špatné algoritmy správy bloků NAND pomocí externích pluginů. Pokud jsou nainstalovány pluginy, popisy dalších metod se objeví v " Správa špatných bloků NAND ". Parametry vybrané metody můžete nakonfigurovat kliknutím na tlačítko " Externí plugin ".

    Použití kódů pro opravu chyb (ECC)

    Použití kódů pro opravu chyb umožňuje obnovit jednotlivé chyby na stránce NAND.

    K obnovení jednotlivých chyb v sektoru lze použít různé algoritmy. V závislosti na algoritmu ECC, lze obnovit jiný počet chyb na sektor (512+16 bajtů). pod pojmem " singl "rozuměl chyba pouze v jednom bitu data. Pro NAND s velikostí stránky 512 + 16 bajtů je koncept " sektor" A " strana" sladit se. Pro NAND s velkými velikostmi stránek používá programátor ChipStar schéma sektorového stránkování, jak je popsáno. V nastavení nahrávání nebo ověřování můžete určit, kolik chyb na sektor může algoritmus použitý ve vašem zařízení opravit. V souladu s tím nebudou mikroobvody s přijatelným počtem chyb odmítnuty, v okně statistiky se zobrazí informace o počtu opravitelných chyb:

    Informace o počtu povolených chyb na sektor pro každý konkrétní čip naleznete v dokumentace na mikročip. Všechny nově přidané čipy NAND jsou zaneseny do databáze programátora s přihlédnutím k počtu přípustných chyb.

    Samopřidáním mikročipy:

    • Li podporováno ONFI, pak přípustný počet chyb na sektor číst z tabulky parametrů čipu a nainstalováno na správnou hodnotu.
    • pokud čip nepodporuje ONFI, uživatel hodnotu byste si měli nastavit sami pomocí dokumentace k čipu.

    Na nové čipy NAND Výroba Samsung hodnota povoleného počtu chyb na sektor je zakódována jako součást identifikátoru čipu. Proto u takových čipů bude správně nastaven i přípustný počet chyb na sektor.

    Při čtení obsahu mikroobvodu za účelem jeho dalšího uložení nebo kopírování, jednotlivé chyby nelze spolehlivě identifikovat. Výsledný obrázek lze poté samostatně analyzovat na chyby výpočtem kontrolních kódů ECC externí aplikací za předpokladu, že přesně použitý algoritmus a označení stránky jsou známé .

    Software programátoru ChipStar nabízí nepřímou statistickou metodu pro identifikaci a eliminaci jednotlivých chyb. Metoda pouze odhaluje nestabilní chyby s není zaručeno důvěryhodnost. Chcete-li provést čtení s detekcí chyb, musíte vybrat " Selektivní čtení“ a na záložce „NAND“ zaškrtněte políčko „ Povolit režim opravy chyb"

    Můžete nastavit počet opakování čtení k porovnání a celkový počet opakování čtení při chybě. Je třeba mít na paměti, že použití této metody zpomaluje proces čtení.

    Statistický algoritmus detekce chyb funguje následovně:

    1. Stránka NAND se čte několikrát za sebou (alespoň třikrát).
    2. Načtená data se porovnávají bajt po bajtu.
    3. Pokud nejsou nalezeny žádné chyby porovnání, předpokládá se, že stránka je bez chyb.
    4. Pokud jsou během porovnávání nalezeny chyby, stránka se přečte ještě několikrát.
    5. U každé chyby počet přečtení Jednotky A nuly.
    6. Zvažuje se správná hodnota („0“ nebo „1“), což se ukázalo být více.

    Algoritmus funguje dobře, pokud je pravděpodobnost chyby v určitém bitu mikroobvodu menší než 0,5. Při čtení mikroobvodu se počítají "opravené" chyby a pravděpodobnost správného čtení.

    2.6. Převést binární obrázek na obrázek NAND

    Vše výše popsané se týkalo spíše kopírování NAND a záznamy podle čipového vzoru, často je to však nutné zapište původní binární obraz programu do čistého čipu. Před zápisem je potřeba převést binární obrázek na obrázek NAND přidáním na každou stránku náhradní plocha a správně jej vyplňte. Chcete-li to provést, otevřete svůj binární soubor, vyberte položku nabídky " ". Zobrazí se dialogové okno:

    Nastavte režim převodu na formát NAND: " Binární obrázek... ", zadejte velikost stránky a NAND bloku nebo vyberte požadovaný čip. Vyberte formát náhradní oblasti. Programátor podporuje jednoduché vyplnění oblasti hodnotami FF pomocí vestavěných nástrojů a dalších metod pomocí zásuvných modulů. S programátorem je dodáván zásuvný modul, který implementuje přiřazení náhradních oblastí doporučených společností Samsung.

    Pokud potřebujete nějaké implementovat další možnost distribuce - dejte nám vědět a my vám připravíme příslušný plugin, nebo si můžete požadovaný plugin implementovat sami.

    2.7. Kompatibilita s obrázky NAND načtenými jinými programátory

    Pokud máte Obrázek NAND, přečtené jiným programátorem nebo získané z jiného zdroje, musí být konvertovat do zapisovatelného formátu Programátor ChipStar.

    Chcete-li to provést, postupujte takto:

    • Otevřete soubor, vyberte položku nabídky " Upravit|Přepnout režim editoru NAND Zobrazí se dialogové okno, jak je uvedeno výše.
    • Nastavte režim převodu na formát NAND: "Obrázek je již NAND ... “, uveďte velikost stránky A blok NAND nebo vyberte požadovaný čip. klikněte na " Pokračovat".
    • V editoru se objeví karta NAND “ a obraz začne hledat špatné bloky.
    • Výsledný soubor lze uložit jako NAND, soubor získá příponu .nbin výchozí.

    2019-12-30 Datum poslední aktualizace softwaru: 2019-12-30

    Janus se dvěma tvářemi

    Rozhodli jsme se nazvat tohoto programátora " Janus".

    proč tomu tak je? Protože v římské mytologii je Janus dvoutvárný bůh dveří, vchodů a východů, stejně jako začátku a konce. jaká je souvislost? Proč náš programátor ChipStar-Janus dvoutvárný?

    A proč:

    • Z jedné strany, tento programátor je jednoduchý. Šířit jako bezplatný projekt, může snadno vyrobit sami.
    • Z druhé strany, je vyvíjen společností, po dlouhou dobu profesionálně angažovaný vývoj a výroba různých radioelektronických zařízení včetně programátorů.
    • Z jedné strany, tento programátor je jednoduchý, na první pohled nemá příliš působivé vlastnosti.
    • Z druhé strany, funguje ve spojení s odborný program(mimochodem úplně stejný jako ostatní profesionální programátoři ChipStar).
    • Z jedné strany, tento programátor nabízíme zdarma volný, uvolnit shromáždění.
    • Z jedné strany, prodáváme také v hotové podobě, jako běžný rozpočtový produkt.
    • Z jedné strany, na podomácku vyrobený programátor se záruka nevztahuje (což je přirozené).
    • Z jedné strany, pokud jste to dokázali sestavit, tak to můžete opravit a programátor je tak jednoduchý, že v podstatě není co rozbít.
    • Z jedné strany, je to jednoduché v okruhu programátor.
    • Z jedné strany, prostřednictvím jednoduchých rozšiřujících adaptérů podporuje programování NAND BLIKAT a další mikroobvody jsou již „v zásuvce“.

    Takže programátor ChipStar Janus pro mnoho specialistů to může být skutečné východisko v situaci, kdy různí prostí či amatérští programátoři již nestačí a složitější programátor se zdá být nadbytečný nebo na něj není dostatek alokovaného rozpočtu.

    Co nás vedlo k vývoji tohoto programátoru.

    Existuje velké množství jednoduchých specializovaných programátorů vhodných pro vlastní výroba.

    Existuje mnoho levných Čínští programátoři již připravené.

    Je jich docela dost amatérský vývoj, často kvalitnější než ty druhé.

    Zdálo by se, jaký smysl má jiné řemeslo?

    Dlouhodobě vyvíjíme, vyrábíme a podporujeme univerzální programátory především pro účely. Máme bohaté zkušenosti s prací s různými mikroobvody. Často se na nás obracejí lidé, kteří již některý z výše uvedených „produktů“ smontovali a často i koupili. Často je pro naše specialisty nemožné podívat se na obvodová řešení, kvalitu sestavení a především na software těchto zařízení bez smíchu/slz/zděšení (podtrhněte podle potřeby). No a když programátor stojí "tři kopejky", koupil jsem to, něco funguje, něco nefunguje, ale peníze nejsou velké. Často nás ale poměr cena/výkon u takových zařízení mírně řečeno překvapí. Chci zvolat: za tolik to nestojí!

    Kromě všeho výše uvedeného existuje speciální kategorie programátorů vhodných pro vlastní výrobu - jedná se o programátory (přesněji programátorské obvody a software) vyvinuté specialisty z firem vyrábějících mikroobvody (hlavně mikrokontroléry). Takové programátory jsou navrženy zcela profesionálně, v jejich obvodech nejsou žádné "chyby". Podporují všechny deklarované čipy. Existují však dvě "malé" nevýhody: seznam programovatelných mikroobvodů je velmi omezený (což je zcela pochopitelné) a software je velmi spartánský - zpravidla žádné další funkce - pouze vymazat, zapsat, ověřit. Často i funkce čtenížádný mikročip.

    Takže programátor ChipStar Janus v počáteční konfiguraci je to obvodový programátor. V tomto režimu podporuje mikrokontroléry PIC A AVR firmy Mikročip, některé architektury mikrokontrolérů MCS51, mikrokontroléry STMicroelectronics a řada dalších, stejně jako sériové paměťové čipy s rozhraním I2C(většinou epizoda 24). Nejjednodušší adaptéry můžete připojit k rozšiřujícímu konektoru programátoru a začít programovat paměťové čipy „do patice“.

    Programování "v zásuvce" je nyní implementováno:

    1. EPROM) s rozhraním I2C(série 24xx);
    2. sériové flash paměťové čipy (Serial BLIKAT) s rozhraním SPI (SPI Flash);
    3. sériové paměťové čipy (Serial EPROM) s rozhraním MW (řada 93xx);
    4. mikročipy NAND FLASH;

    Programátor a software podporuje technologii samopřidávání mikroobvodů na tři kliknutí. Doposud bylo implementováno přidání mikroobvodů NAND A I2C. Ve velmi blízké budoucnosti se plánuje implementace této technologie pro MW čipy ( řada 93xx) A AVR. Získáte tak nejen programátora, ale výkonný nástroj pro samostatnou práci.

    Tři způsoby, jak získat programátora ChipStar-Janus

    1. způsob:
    Sestavte si programátor kompletně sami

    Metoda je vhodná pro ty, kteří mají čas, zkušenosti a chuť, ale omezené finanční prostředky. Nebo jen zvědavý.

    Algoritmus akce:

    2. způsob:
    Sestavte si programátor sami zakoupením hotové desky plošných spojů a flashovaného mikrokontroléru

    Metoda je podobná předchozí, pouze se ušetříte od nejobtížnějších operací: výroby desek plošných spojů a firmwaru mikrokontroléru bez programátoru.

    Algoritmus akce:

    1. Přečtěte si podmínky použití samostatně sestaveného programátoru.
    2. Přečtěte si pokyny pro sestavení programátoru.
    3. Stáhněte si úplnou dokumentaci pro programátora.
    4. Kupte si montážní sadu (hotovou desku plošných spojů a mikrokontrolér s již napsaným firmwarem).
    5. Pořiďte si potřebné vybavení pro sestavení programátoru dle