|
Ошибки записи FLASH через IAP |
|
|
|
Aug 3 2009, 12:57
|

Частый гость
 
Группа: Свой
Сообщений: 152
Регистрация: 11-10-05
Из: Воронеж
Пользователь №: 9 491

|
Процессор LPC2478, загрузчик по ком-порту, все замечательно работает за исключением того, что иногда при верификации записанных данных появляются ошибки. Скажем, на 20 записей прошивки размером ~400k один раз возникает ошибка в одном бите (условно говоря, 0x49 вместо 0x4B) в произвольном месте памяти. При этом иногда даже верифицированная прошивка иногда подглюкивает. Когда пишу через j-tag, проблем не возникает, и в переписанной прошивке глюки пропадают сами собой. Процедура обмена по ком-порту использует блоки размером 1К, проверка CRC 16 На что грешить не знаю, может ли быть, что CRC-16 не покажет ошибку в подобной ситуации? Или может кто-то сталкивался с подобными проблемами в филипсовских процах?
|
|
|
|
|
 |
Ответов
|
Aug 3 2009, 13:50
|

Частый гость
 
Группа: Свой
Сообщений: 152
Регистрация: 11-10-05
Из: Воронеж
Пользователь №: 9 491

|
Цитата(GetSmart @ Aug 3 2009, 17:28)  Версия №1 Неправильно указывается частота SYSCLK при вызове IAP. Точнее в IAP передаётся заниженная частота, а на самом деле SYSCLK выше. указываю 72MHz, что в моем понимании и есть SYSCLK. На эту тему были подозрения, но вроде как все правильно. Может, ему на всякий случай чуток завышенную частоту передать, 75МHz скажем? скорость записи не является принципиальным вопросом Цитата(scifi @ Aug 3 2009, 17:33)  Я где-то слышал, что в микроконтроллерах LPC для флэш есть ограничение: в каждый 512-байтовый ряд можно дописывать не более 16 раз (пачками, кратными 16 байт). Если число записей больше, то позже могут быть сбои при чтении. У Вас это ограничение не нарушается? перед каждой записью чипа производится его очистка через SBI Код void erase_user_flash() { prepare_sector(USER_START_SECTOR, MAX_USER_SECTOR); erase_sector(USER_START_SECTOR, MAX_USER_SECTOR); check_result(); }
|
|
|
|
|
Aug 4 2009, 06:17
|

Частый гость
 
Группа: Свой
Сообщений: 152
Регистрация: 11-10-05
Из: Воронеж
Пользователь №: 9 491

|
Цитата(shahr @ Aug 3 2009, 17:56)  кабель? этот вопрос все равно сводится к достаточности CRC16 для отслеживания возникающих ошибок связи. должен отметить, что подобная же прошивалка используется для записи STR710, там ни разу сбоев не наблюдалось...
|
|
|
|
|
Aug 4 2009, 07:45
|

Знающий
   
Группа: Свой
Сообщений: 877
Регистрация: 26-01-05
Из: Екатеринбург
Пользователь №: 2 206

|
Цитата(sergik_vrn @ Aug 4 2009, 10:17)  этот вопрос все равно сводится к достаточности CRC16 для отслеживания возникающих ошибок связи. должен отметить, что подобная же прошивалка используется для записи STR710, там ни разу сбоев не наблюдалось... Насколько я понял - проблема не в искажении данных при их передаче через интерфейс связи - а проблемы в "качестве Flash" (условно). Я на данный момент пока что с таким не сталкивался. Были ранее проблемы с глючностью программы, непонятными вылетами в Data и Prefetch Abort в LPC2368, но связано было с проблемой MAM в ранних ревизиях чипов. Описываемого эффекта не наблюдал (пока?). По поводу способа заливки софта (JTAG, ISP, IAP). Если я правильно понимаю, то во всех случаях используется встроенный IAP, разница только в способе (и интерфейсе) передачи данных для записи Flash. Тем не менее, если настройки для IAP в собственном загрузчике выполнены корректно, то разница в "качестве записи" между собственным IAP и JTAG мне не понятна.
--------------------
Пасу котов...
|
|
|
|
Сообщений в этой теме
sergik_vrn Ошибки записи FLASH через IAP Aug 3 2009, 12:57   zltigo Цитата(shahr @ Aug 3 2009, 16:56) кабель?... Aug 4 2009, 04:59    etoja Цитата(zltigo @ Aug 4 2009, 08:59) Сейчас... Aug 4 2009, 09:53     zltigo Цитата(etoja @ Aug 4 2009, 12:53) Устойчи... Aug 4 2009, 18:07      etoja Вот подробный пример программирования FLASH для LP... Aug 5 2009, 06:29       GetSmart Цитата(etoja @ Aug 5 2009, 12:29) ...
Авт... Aug 5 2009, 12:41        zltigo Цитата(GetSmart @ Aug 5 2009, 15:41) Если... Aug 5 2009, 13:34        sergik_vrn Цитата(GetSmart @ Aug 5 2009, 16:41) Если... Aug 13 2009, 11:54         GetSmart Цитата(sergik_vrn @ Aug 13 2009, 17:54) р... Aug 13 2009, 12:15          sergik_vrn Цитата(GetSmart @ Aug 13 2009, 16:15) Нич... Aug 13 2009, 12:18           GetSmart Цитата(sergik_vrn @ Aug 13 2009, 18:18) п... Aug 13 2009, 12:24            sergik_vrn Цитата(GetSmart @ Aug 13 2009, 16:24) В т... Aug 13 2009, 12:33          zltigo Цитата(GetSmart @ Aug 13 2009, 14:15) Инт... Aug 13 2009, 12:55     sergik_vrn Цитата(Andy Mozzhevilov @ Aug 4 2009, 11... Aug 4 2009, 08:22 scifi Я где-то слышал, что в микроконтроллерах LPC для ф... Aug 3 2009, 13:33 GetSmart Цитата(scifi @ Aug 3 2009, 19:33) Я где-т... Aug 3 2009, 13:37  scifi Цитата(GetSmart @ Aug 3 2009, 17:37) Отку... Aug 3 2009, 14:53
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|