Перейти к содержанию
    

SAM7s256 есть ли возможность использования програмной памяти как EEPROM?

Да, EEPROM лучше.

А FRAM ещё лучше :)

 

Это уже интересней.

Ещё интересней если немного подумать и поэкспериментировать.

Исходя из исходных данных задачи - во флешь нужно хранить инкрементирующийся счётчик.

Я так понял - этот МК имеет ECC-защиту программной флешь с размером страницы == 32 бита?

Пустая (стёртая) ячейка вероятно имеет значение == 0xFFFFFFFF. Примем это значение за значение счётчика ==0.

Тогда очевидно, что в пустую ячейку можно записать любое значение. Например 0xFFFFFFFE. Примем это значение за значение счётчика ==1.

Поверх него можно попробовать записать 0xFFFFFFFC, но, так как есть ECC, то скорей всего получим не 0xFFFFFFFC, а нечто другое. Ну да ладно - то что получим примем за значение счётчика ==2. :rolleyes:

Далее - опять попробуем записать в эту же ячейку нечто другое. Если получим значение отличное от предыдущего, то примем это значение за следующее значение счётчика.

И так можно модифицировать эту ячейку до тех пор, пока значение ячейки не перестанет меняться.

Очевидно, что последовательность этих значений ячейки будет одинакова для всех ячеек флешь (если флешь ещё не изношена!!!). Отсюда следует, что можно определить значение счётчика, записанного в ячейку. А значит - увеличить максимальное кол-во записей во флешь на количество полученных значений счётчика. Таким образом - увеличив ресурс флешь.

 

Экспериментальным путём (или иным путём) можно определить последовательность записываемых значений в одну и ту же ячейку флешь, при которой значения ячейки будут меняться дольше всего (до конечного фиксированного значения).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я так понял - этот МК имеет ECC-защиту программной флешь с размером страницы == 32 бита?

Нет, не имеет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот тут пишут, что можно даже отдельные биты переключать из 1 в 0.

В связи с этим перспективы открываются радужные. Правда, для надёжности нужно делать хитрую схему с двумя или более страницами. Опять же, неясно, будет ли страдать ресурс флеша, если программировать по одному биту за раз.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Опять же, неясно, будет ли страдать ресурс флеша, если программировать по одному биту за раз.

С ресурсом не ясно, "потекут" ли соседние биты - тоже не ясно. Ненужный геморрой все это.

 

"Writing 8-bit and 16-bit data is not allowed and may lead to unpredictable data corruption."

Записать вместо 0xFFFFFFFF 0xFFFFFFFE, а затем 0xFFFFFFFC это никоим образом не мешает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С ресурсом не ясно, "потекут" ли соседние биты - тоже не ясно. Ненужный геморрой все это.

Между тем, вот здесь применяют именно побитовую запись во флешь. Может быть, они что-то знают. Или это просто слабоумие и отвага. Не знаю :laughing:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Между тем, вот здесь применяют именно побитовую запись во флешь. Может быть, они что-то знают. Или это просто слабоумие и отвага. Не знаю :laughing:

Проц атмеловский!!!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Нет, не имеет.

Если не имеет, то модифицировать можно побитно, а не по 32 бита.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С ресурсом не ясно, "потекут" ли соседние биты - тоже не ясно. Ненужный геморрой все это.

 

 

Записать вместо 0xFFFFFFFF 0xFFFFFFFE, а затем 0xFFFFFFFC это никоим образом не мешает.

Типа счётчик Джонсона, но "заполняющий ноль" это вариант

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Проц атмеловский!!!

Флеш - он и в Африке флеш. Но гарантий никто не даст, очевидно. Я склоняюсь к тому, что это волюнтаризм автора апноты.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Флеш - он и в Африке флеш. Но гарантий никто не даст, очевидно. Я склоняюсь к тому, что это волюнтаризм автора апноты.

Ну да, ну да… (;

Изменено пользователем Obam

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А FRAM ещё лучше :)

 

A Serial EERAM (EEPROM-backed SRAM), который при пропадании питания на кондере пишет SRAM в EEPROM а при появлении питания автоматом восстанавливает с еепрома в SRAM - еще лучше для данного применения. Какой нибудь Microchip 47L04... 1 миллион выключений питания - а там хоть миллисекунды наработки считай. ;)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

A Serial EERAM (EEPROM-backed SRAM), который при пропадании питания на кондере пишет SRAM в EEPROM а при появлении питания автоматом восстанавливает с еепрома в SRAM - еще лучше для данного применения.

Чем лучше-то??? Тем что кондёр хороший ставить ещё нужно??

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Чем лучше-то??? Тем что кондёр хороший ставить ещё нужно??

 

Если некоторое количество параметров постоянно изменяющихся надо "держать" постоянно, и особенно если батарея в устройстве недопустима, то такие чипы - самое беспроблемное решение. Есть програмные хитрости чтобы избежать проблем в случае если выключение прервет процесс обновления, но в общем меньше всего возможных засад просматривается в долговременном плане.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если некоторое количество параметров постоянно изменяющихся надо "держать" постоянно, и особенно если батарея в устройстве недопустима, то такие чипы - самое беспроблемное решение.

Или просто для ленивых.

Потому как 8мс@3мA для CY14*101Q немногим менее чем 6(3)мс@5.5мА для SAM7S256 (1 страница)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...