Раздели на сайта
Избор на редактора:
- Възстановяване на парола в Ask
- Как да включите камерата на лаптоп
- Защо музиката не се възпроизвежда във VKontakte?
- Как да увеличите размера на диск C за сметка на диск D, без да губите данни
- Причини за неизправности на дънната платка Ако чипсетът на дънната платка изгори
- Оригинално име за чат
- Използване на стилове в Excel Как да създадете свой собствен нов стил
- Какви грешки възникват по време на инсталацията?
- Социален статус на човек в обществото
- Пълна интерпретация на грешките
реклама
Програмиране на NAND FLASH. Универсален програматор TNM5000 Програматори, поддържащи nand flash |
2017-05-25 Дата на последна промяна: 2018-10-10 Статията обсъжда: Характеристики на използването на микросхеми NAND ФЛАШ,методи за оформление на страница и управление на лоши блокове. Препоръки за програмиране с помощта на програмисти. СЪДЪРЖАНИЕ:1. ТЕОРИЯ1.1. Разликата между NAND FLASH чиповете и конвенционалните чиповеАко не се задълбочите в тънкостите на технологията, тогава разликата между микросхемите NANDот други чипове памет е както следва:
Има още няколко разлики, но първите две характеристики са ключови. Причинява най-много проблеми наличие на лоши блокове. 1.2. Организация на NAND FLASH чиповеПовече подробности за организацията и структурата на микросхемите NANDможе да се прочете в специализирана литература, но отбелязваме, че:
Според разработчиците NAND Vосновна зонатрябва да се намират самите данни, А в резервната (резервна) зона - маркери за лош блок, контролни сумиосновна площ, др защитена информация. Ако говорят за размер на страницата NAND чипове 512 байт или 2Kбайт, тогава говорим за размер на основната площстраници, с изключение на резервни. 1.3. Начини за използване на резервната зона на страницатаНека ви напомним още веднъж, че според разработчиците на NAND чипове в резервната зона трябваразположен: маркери за лош блок, контролни сумиосновна област с данни, другосервизна информация. Повечето разработчици само описват местоположениемаркери за лош блокв доставените микросхеми. За други аспекти на използването на резервната зона са дадени общи препоръки и алгоритъм за изчисляване на ECC, обикновено според Haming. Samsung отива малко по-далеч, разработвайки препоръки, наречени " Резервна област на флаш памет NAND. Стандарт за предназначение "("NAND флаш резервна зона. Стандарт за присвояване", 27 април 2005 г., Memory Division, Samsung Electronics Co., Ltd). И така, този стандарт предлага следното използване на резервната зона: За чипове с размер на страницата 2048+64 байта t основната и резервната области на страницата са разделени на 4 фрагмента (сектора):
Всеки фрагментосновната им площ съвпада фрагмент от резервна зона.
Но това не е единственият „стандарт“ за разпределяне на паметта на страницата; ние знаем няколко десетки от тях, например:
1.4. NAND изображение и двоично изображениеМоже да срещнете два вариантаизображение за запис:
Тези специалисти, които ремонтират различно оборудване, често се сблъскват с втория случай. В такъв случай често е трудно да се определи използвания метод за разпределяне на резервна зона и използвания метод за управление на лоши блокове. 1.5. Фабрично маркиране на лоши блоковеЕдинственото нещо, което е повече или по-малко стандартизирано е фабрично маркиране на лоши блокове.
Има един проблем: лош блок може да бъде изтрит. По този начин можете да загубите информация за лоши блокове на чипове. Въпреки това, ако микросхемата вече е работила в устройството, този метод за маркиране на лоши блокове не винаги се използва. Понякога дори информацията за лош блок не се съхранява в NAND паметта. Но по-често, дори ако разработчикът на софтуера на устройството използва различна схема за управление на лоши блокове, той предпочита да не изтрива фабричните маркировки. 1.6. Лошо управление на блоковеРазработчици NANDмикросхемите предлагат да се използват следните схеми за управление на лоши блокове:
Освен това методите за управление на лоши блокове понякога включват използване корекция на грешки(ECC). Трябва да се отбележи, че използването на единична корекция на грешка не елиминира множество грешки и все пак налага използването на една от горните схеми. Освен това мнозинството NANDчиповете имат гарантирана зона без грешки, в която не се появяват лоши блокове. Зоната без повреди обикновено се намира в началото на чипа. Тези методи за управление на лоши блокове са добре описани в техническата документация на производителите NANDи са широко дискутирани в литературата за употребата NAND. Нека обаче накратко припомним тяхната същност: Пропускане на лоши блокове: Следователно логичното развитие е схемата използване на резервна зона: 2. ПРАКТИКА2.1. Сканиране на лоши блокове на NAND чипПрограмист ChipStarви позволява бързо да сканирате микросхемата NANDза наличие на лоши блокове в съответствие с фабричните маркировки на лоши блокове. Изберете елемент от менюто " Чип|Търсете лоши блокове ", чипът ще бъде проверен за лоши блокове. Резултатът се показва в таблична форма. Това действие трябва да се извърши само ако искате да видите списъка с лоши блокове. Във всички останали случаи търсенето на лоши блокове се извършва автоматично, когато е необходимо. 2.2. Лоши блокове в NAND изображениетоПри четене на изображение на NAND чип, програмистът допълнително съхранява информация за размера на страницата и блока на чипа. Информацията се записва в отделен файл. Така че, ако преброите и запазите изображението на чипа във файл <имя_файла>.nbin програмата ще създаде друг файл: <имя_файла>.cfs . При отваряне на файл <имя_файла>.nbin файл <имя_файла>.cfs ще се чете по същия начин. Във файл <имя_файла>.cfs записва се информация за размера на страницата и блока на чипа. След като прочетете чипа или отворите файл като .nbin , се извършва фоново сканиране на изображението за наличие на лоши блокове въз основа на информация за страницата и размера на блока. Опции NANDи информация за лошите блокове можете да намерите в "раздела" NAND"програмист редактор: Бинарно изображение NANDможе да се види в "таб" Основна памет ": В режим на редактор NANDрезервната зона на страницата е разпределена по-тъмен цвят, също стават достъпни бутони за придвижване през страници, блокове и бързо прескачане до началото на резервната зона на текущата страница. В допълнение към адреса на курсора се показва допълнително редът за състояние на редактора номер на страницатаИ номер на блоккъдето се намира курсорът. Всичко това ви позволява по-удобно да преглеждате съдържанието на микросхемата. 2.3.Изтриване на NANDПрограматор по подразбиране не изтривалоши блокове, но ако деактивирате опцията " Проверка и пропускане на лоши блокове " лошите блокове могат да бъдат изтрити и маркировките за лоши блокове могат да бъдат загубени. Деактивирайте тази опция само ако е необходимо. Пропускат се само лоши блокове, маркирани в съответствие с фабричните маркировки. Ако устройството използва различна маркировка за лоши блокове, те ще бъдат изтрити, защото софтуерпрограмистът няма да ги види. За да работи с нестандартни оформления на лоши блокове, програмистът може да използва външни добавки. 2.4. Тестване на микросхемата за липса на записПо подразбиране програмистът игнорира всички лоши блокове при проверка, но ако деактивирате опцията " Сканирайте и пропускайте лоши блокове „Лошите блокове ще бъдат тествани, което естествено ще доведе до грешки при тестване. 2.5. Записване на готовото изображение върху чипаЗаписване на изображение NANDв микросхемата е малко по-различна от конвенционалните ФЛАШмикросхеми На първо място, те трябва да съвпадат размери на страницатаизображение и целеви чип. Ако се използва контрол, лошите блокове трябва да съвпадат размери на блоковеизображение и микросхема. Софтуер за всички програмисти ChipStarподдържа три метода за управление на лоши блоковевградени инструменти и неограничен брой с помощта на добавки. Освен това можете да зададете броя на записваемите блокове в началото на чипа, което всъщност е четвъртоначин за управление на лоши блокове. Метод 1: Игнориране на лоши блоковеПросто копиране, игнориране на лошите блокове (лошите блокове се записват по същия начин като нормалните).
Най-подходящ за копиране на NAND чипове, без да навлизаме във вътрешната му структура, при условие, че записваният чип не съдържа лоши блокове . Ако в оригиналното изображение имаше лоши блокове , в крайна сметка форма фалшиви лоши блокове . Появата на фалшиви лоши блокове няма да повлияе на функционирането на устройството. Ако обаче чипът вече съдържа лоши блокове, когато се опитате да пишете на такъв чип, ще се появят лоши блокове с непредсказуеми последствия. Съвет: можете да опитате да изтриете целия чип, включително лошите блокове, след което да го копирате. Ако записът в лош блок е завършен успешно (това често се случва), вашето устройство ще функционира правилно в бъдеще, софтуерът на устройството ще идентифицира лошия блок и ще го замени с добър в съответствие с неговия работен алгоритъм. Метод 2: Заобикаляне на лоши блокове
При заобикаляне на лоши блокове лошите блокове от изходното изображение не се записватИ информацията не се записва в лоши блокове на чипа. Това не е най-добрата политика за копиране, но е безопасна срещу лоши блокове на чипове: не се губи информацияза лошите блокове на чипове и не се появяват фалшиви лоши блокове. В някои случаи такава политика за копиране може да помогне за възстановяване на функционалността на неизвестно устройство. Метод 3: Пропускане на лоши блокове
Пишете, като пропускате лоши блоковепредполага, че устройството използва точно този алгоритъм за управление на лоши блокове, а не който и да е друг. При тези условия е гарантирано правилното копиране на информацията. Метод 4: Напишете само гарантираната безотказна зона
В повечето модерни NANDмикросхеми, първите блокове (поне един) гарантирано нямат повреди. В много устройства кодът на буутлоудъра се намира в началото на чипа и операционна системаустройства. Копирането само на тези области често е достатъчно. В диалоговия прозорец за настройки на режима на запис посочете размера на записа в блокове. Други начини за управление на лоши блоковеСофтуер Програматори ChipStarподдържа всякакви алгоритми за управление на лоши блокове NANDизползване на външни добавки. В зависимост от наличността инсталирани добавкиописания на допълнителни методи се показват в списъка " Управление на лоши NAND блокове ". Можете да конфигурирате параметрите на избрания метод, като щракнете върху бутона " Външен плъгин ". Използване на кодове за коригиране на грешки (ECC)Използването на кодове за коригиране на грешки позволява възстановяване на единични грешкина страницата NAND. Могат да се използват различни алгоритми за възстановяване на единични грешки в сектора. В зависимост от алгоритъма ECC, могат да бъдат възстановени различен брой грешки на сектор (512+16 байта). Под термина " единичен “ се разбира грешка само в един битданни. За NAND с размер на страницата 512+16 байта, концепцията " сектор" и " страница" мач. За NAND с големи размери на страницата програмистът ChipStar използва схема за оформление на секторна страница, както е описано. В настройките за запис или проверка можете да посочите колко грешки на сектор може да коригира алгоритъмът, използван във вашето устройство. Съответно, микросхеми с приемлив брой грешки няма да бъдат отхвърлени в прозореца на статистиката за броя на коригираните грешки: Информация за броя на допустимите грешки на сектор за всеки конкретен чип можете да намерите в документацияна чип. Всички новодобавени NAND чипове се въвеждат в базата данни на програмиста, като се взема предвид броят на допустимите грешки. При самостоятелно добавянемикросхеми:
За нови микросхеми NANDпроизводство Samsungстойността на допустимия брой грешки на сектор е кодирана като част от идентификатора на чипа. Следователно за такива микросхеми допустимият брой грешки на сектор също ще бъде зададен правилно. Когато четете съдържанието на микросхема с цел по-нататъшно запазване или копиране, единичните грешки не могат да бъдат надеждно открити. След това полученото изображение може да бъде отделно анализирано за грешки чрез изчисляване на ECC кодове за проверка от външно приложение, при условие че използвания алгоритъм и оформлението на страницата са известни . Програмният софтуер ChipStar предлага индиректни статистически методидентифициране и отстраняване на единични грешки. Методът позволява да се идентифицира само нестабиленгрешки с не е гарантиранонадеждност. За да извършите четене с откриване на грешки, трябва да изберете " Подборно четене" и в раздела "NAND" поставете отметка в квадратчето " Активирайте режима за коригиране на грешки" Можете да конфигурирате броя на повторните опити за четене за сравнение и общия брой повторни опити за четене, когато възникне грешка. Трябва да се има предвид, че използването този методсъществото забавя процеса на четене. Алгоритъмът за откриване на статистически грешки работи по следния начин:
Алгоритъмът работи добре, ако вероятността за грешка в конкретен бит на микросхемата е по-малка от 0,5. При четене на микросхема се отчитат „коригираните“ грешки и вероятността за правилно четене. 2.6. Преобразуване на двоично изображение в NAND изображениеВсичко описано по-горе беше по-скоро копиране NANDи записи, базирани на модела на микросхемата, но често е необходимо запишете оригиналното двоично изображение на програмата на празен чип. Преди да пишете, трябва да конвертирате двоичното изображение в NAND изображение, като добавите към всяка страница резервна площи да го попълните правилно. За да направите това, отворете своя двоичен файл, изберете елемента от менюто " ". Ще се появи диалогов прозорец: Задайте режим на преобразуване на NAND: " Двоично изображение... ", посочете размера на страницата и NAND блока или изберете необходимия чип. Изберете формата на резервната област. Програматорът поддържа просто попълване на областта с FF стойности с вградени инструменти и други методи, използващи добавки Добавка се доставя с програмиста, който изпълнява препоръчаните от Samsung резервни области. Ако трябва да приложите някакви различен вариант на разпространение - уведомете ни и ние ще подготвим подходящия плъгин или можете сами да внедрите необходимия плъгин. 2.7. Съвместим с NAND изображения, прочетени от други програмистиАко имате NAND изображение, прочетено от друг програмист или получено от друг източник, трябва да бъде преобразувамвъв формат, подходящ за запис Програматор ChipStar. За да направите това, изпълнете следните стъпки:
това универсално устройство, за програмиране на много широка гама от микросхеми, вариращи от банални I2c и MicroWire чипове до многокраки Nand Flash. В продължение на много години любителско радио и страст към електрониката, натрупах доста голям брой такива домашни устройства, сглобени за конкретни задачи и просто в името на самия процес. С появата на непрекъснато нарастваща гама от микросхеми и увеличаване на техния капацитет, трябваше да придобия фабрично устройство, добре познатия MiniPro TL-866. Устройството наистина е много хубаво, служи вярно вече много години, но липсата на контактен контрол, хардуерните ограничения и в резултат на това невъзможността за работа с модерни чипове ме принудиха да насоча вниманието си към по-скъпи и функционални устройства. Бърз преглед на пазара за такива устройства доведе до осъзнаването, че две устройства най-ясно отговарят на моите нужди: руският ChipProg-48(1) и иранският TNM5000. Вторият се оказа над 2 пъти по-евтин при сравнима функционалност и след известно убеждаване моята крастава жаба, която беше загубила бдителността си в процеса на избор на подарък за любимия си за рождения ден, не успя да спори с разума . Беше направена поръчка на страницата на официалния продавач в Aliexpress, доставката беше избрана от Singapore Post и плащането беше извършено. В процеса на по-нататъшна кореспонденция с продавача, който между другото е много общителен, се оказа, че той за предпочитане изпраща по куриер SPSR. Това е по-бързо, но за митниците са необходими допълнителни паспортни данни, което предизвика известни опасения, т.к Колетът беше посрещнат от негражданин на Руската федерация. Договорихме се за редовен руски въздух, продавачът компенсира разликата в доставката не много с адаптера SSOP34. Въпреки всички притеснения, доставката беше бърза и безпроблемна. И така, иранският програмист от Китай е изпратен в Русия и прехвърлен в Беларус от специално обучен жител на Москва, гражданин на Република Беларус с временна регистрация. Такава сложна схема помогна да се избегне плащането на мита прикачени файлове към пощана стойност над 20 евро за стоки, преминаващи през митническата граница на Република Беларус.
Допълнителна информация Флаш памет (паралелна / Nand / серийна), EPROM, EEPROM, серийна EEPROM, микроконтролери, енергонезависима RAM, FRAM, CPLD, PLD, FPGA). Е, нямам търпение да тествам устройството в действие. Внимателно поставете чипа в леглото на адаптера, инсталирайте самия адаптер в универсалното гнездо на програмиста, свържете програмиста към лаптопа, лаптоп работи 32 малко Windows 10 с инсталиран софтуер, предварително изтеглен от сайта на производителя. За работа на програмиста с NAND FLASH чипове се използва един софтуер, а за работа с останалото разнообразие от чипове се използва друг. Избираме нашия чип от списъка и... Устройството внимателно предупреждава за недокосване на определени крака на чипа. Внимателно изцедете панела, преместете чипа - всичко е наред. За да проверим, стартираме автоматично откриване - програмистът открива най-близкия чип от това семейство, всичко е наред. Пишем, четем, изтриваме, всичко е наред, програмистът бързо работи през всички режими. Е, нека да преминем към основното действие, за което е закупен програмистът. По време на работа използваме много десетки индустриални Wi-Fi точки HP MSM-310R. Устройството е скъпо, но въпреки това се проваля. Гаранцията изтече и се натрупаха няколко. Вътре като Hewlett-Packard и други бели марки има закупен производител канадски Colubris. Съдейки по оскъдната информация от производителя и мигането на светодиодите, беше възможно да се разбере, че проблемът е софтуерен. Точката просто не се зареди поради повреда във вътрешността файлова системаили износен чип с флаш памет. Е, издухваме чипа K9F5608UOD от живата точка със сешоар, четем го и го запояваме обратно. Откриваме къде в дъмпа за четене има конфигурационни параметри, които описват серийния номер и MAC адресите на устройството. Има две от тях, няколко килобайтови блока. Те са еднакви помежду си. От мъртва точка ние също издухваме чипа, четем го, намираме идентификационни блокове в дъмпа на същите адреси, изрязваме го и го запазваме. Заменяме тези блокове във фърмуера, прочетени от жива точка, с необходимите със серийни номера и мъртви MAC. мига нов чип, закупен предварително на Aliexpress, запоете този комбиниран фърмуер и готово, работата работи. Имах късмет, новият чип, който закупих, се оказа с много високо качество и нямаше лоши блокове от фабриката, така че дъмпът можеше да бъде написан едно към едно, без никакви смени. Разбира се, би било методологически по-правилно да се свърже с jtag интерфейса на точковия процесор, но по това време те наистина се сърдеха да опитат неизвестното. И накрая, бих искал да ви разкажа за мини-състезанията на някои от моите програмисти. Извадих ги от кошчетата, снимах ги и ги подготвих за тест. Запознайте се с Bidipro, самозапояващо устройство, което беше доста популярно по това време сред радиоразрушителите. Но в резултат на дълъг период на бездействие някъде се прокрадва хардуерна грешка под формата на липсваща връзка или късо съединение, причинено от скъперническата сълза на носталгичен инженер по електроника. И освен това контролният софтуер изисква DOS. Отпада в началото. Второто устройство, клонинг на SEEPROG, е добър сериен програмист за чипове, производителят все още обновява софтуера. Третият участник, Ezoflash, опростена версия на Willema, също се използва активно преди придобиването на MiniPro. Четвъртият участник, TL-866, няма нужда от представяне. Ще четем-трием-пишем някои чипове, ако корпусите не са DIP, тогава ще използваме комплект MiniPro адаптери. За Ezoflash - нашите собствени адаптери, тези, които успяхме да намерим сред развалините. Празните места в таблицата означават, че съответният програмист не може да работи с тествания чип. Ще използваме и друг компютър, който има хардуерен LPT порт. Конфигурацията е доста модерна, DualCore Intel Core i3-4170, 3700 MHz, 4GB RAM, дънна платка Gigabyte GA-H81M-S2PV, SSD устройство ADATA SP550, Windows 7 x32. Резултатите от изследването ще бъдат представени в таблица; времето на всяко движение е посочено в секунди. Има предимство в скоростта на основните операции на USB програмистите. Не проверих работата на програмиста в режим на вътрешносхемно програмиране - поради липсата на интерес към тези възможности, не проверих и програмирането на микроконтролери, т.к. 146% съм уверен във възможностите на устройството. Обобщавайки, бих искал да отбележа основното Предимства на този програмист: Изработка, Широка гама от поддържани чипове, списъкът се актуализира постоянно. Евтини pin-2-pin адаптери за по-голямата част от микросхемите (с изключение на базираните на чип SOP44 - DIP40, на цена от неприлична сума от почти петдесет долара) Разумна цена в сравнение с подобни устройства с подобна функционалност. недостатъци:Още не съм го намерил. Благодаря на всички, които прочетоха до този момент моето първо creo в Муска, предварително се извинявам за възможните неудобства, не използвах Word, руският не е моят роден език. Да, повтарям, устройството е закупено с мои собствени пари. Смятам да си купя +30 Добавяне към любими Ревюто ми хареса +75 +124 2019-12-30 Дата последна актуализацияпрограми: 2019-12-30 Янус с две лицаРешихме да наречем този програмист " Янус". защо е така Защото в римската митология Янус е двуличенбог на вратите, входовете и изходите, както и на началото и края. Каква връзка? Защо нашият програмист ChipStar-Janus двуличен? Ето защо:
Така че програмистът ChipStar-Янусза много специалисти може да бъде реално решение в ситуация, в която различни прости или любителски програмисти вече не са достатъчни, а по-сложен програмист изглежда излишен или няма достатъчно отделен бюджет за него. Какво ни подтикна да разработим този програмист.Има голямо разнообразие от прости специализирани програмисти, подходящи за самоделно. Има много евтини китайски програмистив готов вид. Има доста любителски разработки, често превъзхождащи по качество последните. Изглежда, какъв е смисълът от друг занаят? Дълго време разработваме, произвеждаме и поддържаме универсални програмисти, предимно за целите. Имаме богат опит в работата с голямо разнообразие от микросхеми. Често с нас се свързват хора, които вече са събрали и често са закупили един от гореспоменатите „продукти“. Често за нашите специалисти е невъзможно да разгледат дизайна на схемите, качеството на изработката и особено софтуера на тези устройства без смях/сълзи/ужас (подчертайте, ако е подходящо). Добре е, когато програмистът струва „три копейки“, купувате го, някои работят, други не, но парите не са много. Но често съотношението цена/възможности на такива устройства, меко казано, ни изненадва. Искам да възкликна: не струва толкова много! В допълнение към всичко по-горе, има специална категория програмисти, подходящи за самостоятелно производство - това са програмисти (по-точно програмни схеми и софтуер), разработени от специалисти от компании, произвеждащи микросхеми (главно микроконтролери). Такива програмисти са проектирани доста професионално, няма "гафове" в дизайна на техните схеми. Поддържат всички декларирани чипове. Но има два „малки“ недостатъка: списъкът с програмируеми микросхеми е много ограничен (което е съвсем разбираемо) и софтуерът е много спартански - без ненужни функции, като правило - само изтриване, запишете, проверявам. Често дори функции четененяма микрочип. И така, програмист ChipStar-Янусв първоначалната конфигурация е вътрешносхемен програматор. В този режим той поддържа микроконтролери СНИМКАИ AVRфирми Микрочип, някои архитектури на микроконтролери MCS51, микроконтролери от фирмата STMicroelectronicsи редица други, както и серийни чипове памет с интерфейс I2C(най-вече епизод 24). Можете да свържете прости адаптери към съединителя за разширение на програмиста и да започнете да програмирате чипове с памет „в гнездото“. Сега програмирането се изпълнява "в гнездото":
Програмистът и софтуерът поддържат технологията за независимо добавяне на микросхеми с три кликвания. Досега е реализирано добавяне на микросхеми NANDИ I2C. В много близко бъдеще се планира прилагането на тази технология за MW чипове ( серия 93xx) И AVR. Така получавате не просто програмист, но мощен инструментза самостоятелна работа. Три начина да получите програматор ChipStar-Janus1-ви метод:
|
Прочетете: |
---|
Нов
- Как да включите камерата на лаптоп
- Защо музиката не се възпроизвежда във VKontakte?
- Как да увеличите размера на диск C за сметка на диск D, без да губите данни
- Причини за неизправности на дънната платка Ако чипсетът на дънната платка изгори
- Оригинално име за чат
- Използване на стилове в Excel Как да създадете свой собствен нов стил
- Какви грешки възникват по време на инсталацията?
- Социален статус на човек в обществото
- Пълна интерпретация на грешките
- Как да се обадите директно на „жив“ оператор на Beeline: безплатни телефонни номера