Разработка, производство и продажа радиоэлектронной аппаратуры
|
Требуется программист в Зеленограде - обработка данных с датчиков; ColdFire; 40 тыс.
e-mail: jobsmp@pochta.ru
|
Имею вопрос. Есть трехбайтовый счетчик архивных записей. >>
Отправлено
VasilyS 09 июля 2009, г. 23:29
Он должен храниться в обычной eprom-памяти с износоустойчивостью "100тыщ циклов". Меняться будет часто. Как бы повысить износоустойчивисть, хотя бы миллионов до 10. Думается, за счет "размазывания" этого счетчика по eprom-памяти, пусть даже на килобайт или два - место есть. Мажорирование, ФРАМ, CRC и т.п. оставим за рамками, не об этом речь течет. Конечно, сам сделаю, но, может, кто уже так делал, что велосипед изобретать? Надо на Си.
Составить ответ | Вернуться на конференцию.
Ответы
- Оба-на! Логгер, значит, делаете? :) Можно даже с одним массивом, Василий. Попробуйте вот так (П...{+}(+) - Quasy (10.07.2009, 11:39:43 192.168.0.207,80.243.9.34, 965 байт)
- Кстати, а в EEPROM ресурс считается на каждый байт или на страницу целиком? - vmp (10.07.2009, 11:20:52 10.0.1.100,87.245.155.198, пустое)
- Счётчик архивных записей делал как кольцевой буфер размером 4Кб флэш МК.Исходя из этого посчитал - _VNP_ (10.07.2009, 11:17:7 89.163.26.204, 131 байт)
- Делал типа так (+): - argus98 (10.07.2009, 11:13:46 81.22.205.230, 857 байт)
- Счётчик архивных записей делал как кольцевой буфер размером 4Кб флэш МК.Исходя из этого посчитал - _VNP_ (10.07.2009, 11:10:35 89.163.26.204, 131 байт)
- И все-таки алгоритм выбран неверно. Как я понимаю, задача стоит так: Сделать быстрый поиск конца архива. - vmp (10.07.2009, 10:27:43 10.0.1.100,87.245.155.198, 394 байт)
- Кольцевой буфер. Пишешь пары - счётчик и его побитово-инвертированное значение. Найти при старте бОльшее непаламатое число не проблема. - Vit (10.07.2009, 08:36:23 93.72.76.235, 106 байт)
- Сделай кольцевой архив значений счетчика, скажем, размером 256 значений (100тыш*256= ~ 25 миллионов циклов перезаписи). Признак текущего значения - следующее=0х00ffffff. Поиск в таком массиве - незатрубнителен... - ETM (10.07.2009, 00:57:57 94.79.44.1, пустое)
- Делал так: - Леонид Иванович (09.07.2009, 23:51:0 87.252.227.56, 2157 байт)
- А почему 0xDA? Это от слова "да"? :) - Шунт_гороховый (10.07.2009, 00:12:58 95.24.217.72, пустое)
- Если сигнатура 16-битная, то я обычно беру код 0xBEDA. А тут просто младшая часть. - Леонид Иванович (10.07.2009, 02:01:41 87.252.227.56, пустое)
- Навеяло - Шунт_гороховый (10.07.2009, 17:21:9 95.24.217.72, пустое, картинка)
- Суровые беларусские программисты с пессимистичными сигнатурами... А ведь есть позитивные 2-байтовые сигнатуры (англ. FACE, CAFE, BEEF, BABE, русский транслит BABA, 0BED, русские BA3A, 3EBC, 0BEC, C0BA и однобайтовая 0CA) - Шунт_гороховый (10.07.2009, 12:44:9 95.24.217.72, пустое)
- Еще ACCA, ABBA - vmp (10.07.2009, 12:58:38 10.0.1.100,87.245.155.198, пустое)
- Встречались еще 0xCAFEDECA и 0xDEADBEEF - vmp (10.07.2009, 09:19:13 10.0.1.100,87.245.155.198, пустое)
- Зачот! - Звероящер (10.07.2009, 08:06:17 89.251.104.242, пустое)
- Эта пять :))))))) - MBedder (10.07.2009, 03:45:6 80.92.96.19, пустое)
- на рославщине присказка есть "ох да" - Codavr (10.07.2009, 00:14:52 93.81.113.12, пустое)
- А чего там изобретать: пишешь (номер) (данные) (номер+1) (данные). Где номер оборвется, там и конец. - БУБУ (09.07.2009, 23:32:29 195.131.143.177, пустое)