Разработка, производство и продажа радиоэлектронной аппаратуры
|
Требуется программист в Зеленограде - обработка данных с датчиков; ColdFire; 40 тыс.
e-mail: jobsmp@pochta.ru
|
В таком случае будем считать требуется единый интерфейс записи в Э\Нез память. Это организовать очень просто - методы записи должны быть идентичными
КОД_ВОЗВРАТА ЗАПИСАТЬ_В_EEPROM(АДРЕС,БУФЕР,РАЗМЕР);
КОД_ВОЗВРАТА ЗАПИСАТЬ_В_FLASH (АДРЕС,БУФЕР,РАЗМЕР);
Всё очень просто.
Проблемма(принципиальная) в другом. Их две. Первая каксается хоть EEPROM хоть FLASH. Она лежит в самой природе Э\Нез памяти ЭНП. Это то что Вы обозначили как ионистор+детектор питания. От этого никуда не уйти. Проблема может решаться программными способами(транзакционная модель записи) или аппаратными - ионистор(далее рассматриваем варианты без ионисторов)!!НО она должна решаться и никуда она сама не денется, хоть будет у Вас даже FRAM.
Иными словами всегда при записи в ЭНП у Вас должна оставаться резервная копия, и только после того как всё сохранено, резервной копией становится новая.
Вторая проблемма в страничной записи во Flash. Когда Вы хотите поменять несколько байт во Flash Вам необходимо будет переписать всю страницу. В ОЗУ сохранять нельзя - только во Flash, иначе будет отрезок времени когда целая страница данных хранится только в ОЗУ - т.е. с точки зрения ЭНП не хранится нигде. Вариант с Flsh только обнажает так сказать проблему, с EEPROM ситуация абсольютно такая же только завуалированная - не поддавайтесь иллюзиям.
Вот так вкратце я как смог обьяснил Вам суть и пути решения проблемы
Составить ответ | Вернуться на конференцию.
Ответы