реклама на сайте
подробности

 
 
> Как программить flash в LPC без IAP ?
VLM
сообщение Oct 6 2008, 15:20
Сообщение #1





Группа: Новичок
Сообщений: 6
Регистрация: 1-10-08
Пользователь №: 40 613



Информация низкоуровнего доступа к внутренней flash микроконтроллеров от NXP явлается секретом. А также является секретом как первоначально прошивается bootloader на предприятии изготавливающем эти чипы.
Поэтому я был бы весьма признателен, если конить поможет пролить свет на эти "секреты". Ведь производитель некоторых программ загрузчиов имеют представление как в LPC программить flash без IAP. Помогите кто может!
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
bus16
сообщение Oct 13 2008, 08:36
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 78
Регистрация: 10-01-07
Пользователь №: 24 270



Интересно, а как на этапе производства этот-самый bootloader попадает во-флеш?
Go to the top of the page
 
+Quote Post
Abo
сообщение Oct 13 2008, 09:33
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 101
Регистрация: 9-01-06
Пользователь №: 12 967



Цитата(bus16 @ Oct 13 2008, 12:36) *
Интересно, а как на этапе производства этот-самый bootloader попадает во-флеш?

А наверное через JTAG.
Go to the top of the page
 
+Quote Post
bus16
сообщение Oct 13 2008, 09:50
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 78
Регистрация: 10-01-07
Пользователь №: 24 270



Цитата(Abo @ Oct 13 2008, 13:33) *
А наверное через JTAG.

Сомневаюсь, эти чипы без bootloader-а пользователю прошить нельзя (через JTAG вызываются функции IAP, сам JTAG ничего о порядке работы с FLASH незнает)
Go to the top of the page
 
+Quote Post
VslavX
сообщение Oct 13 2008, 10:11
Сообщение #5


embarrassed systems engineer
*****

Группа: Свой
Сообщений: 1 083
Регистрация: 24-10-05
Из: Осокорки
Пользователь №: 10 038



Цитата(bus16 @ Oct 13 2008, 12:50) *
Сомневаюсь, эти чипы без bootloader-а пользователю прошить нельзя (через JTAG вызываются функции IAP, сам JTAG ничего о порядке работы с FLASH незнает)

А кто мешает залить в RAM функции которые "шьют" флеш без IAP? У производителя такие явно должны быть, это ведь только клиенты не удостоены чести знать алгоритмы.
Основной вопрос в том, разлочится ли JTAG если в "секретный" регистр не будет прописано нужное значение CRPx - при пустом флеше такого явно не происходит - некому прописать. Изначально сразу после аппаратного сброса JTAG залочен и, возможно, есть какой-то счетчик, который спустя некоторое время должен JTAG разлочить, если "секретный" регистр не прописан.
Go to the top of the page
 
+Quote Post
bus16
сообщение Oct 13 2008, 10:29
Сообщение #6


Частый гость
**

Группа: Свой
Сообщений: 78
Регистрация: 10-01-07
Пользователь №: 24 270



Цитата(VslavX @ Oct 13 2008, 14:11) *
А кто мешает залить в RAM функции которые "шьют" флеш без IAP? У производителя такие явно должны быть, это ведь только клиенты не удостоены чести знать алгоритмы.

Согласен полностью.
Цитата
Основной вопрос в том, разлочится ли JTAG если в "секретный" регистр не будет прописано нужное значение CRPx - при пустом флеше такого явно не происходит - некому прописать. Изначально сразу после аппаратного сброса JTAG залочен и, возможно, есть какой-то счетчик, который спустя некоторое время должен JTAG разлочить, если "секретный" регистр не прописан.

После подачи питания JTAG не залочен - TAP контроллер захватывает работу ядра, время ему на это надо, вот и создаётся впечатление что JTAG залочен. А CRP - наоборот запрещает работу JTAG если записаны "магические слова" по фикс. адресу во флеш (расположенные рядом с загрузчиком - не путать с 0х1FC)
Go to the top of the page
 
+Quote Post
VslavX
сообщение Oct 13 2008, 16:35
Сообщение #7


embarrassed systems engineer
*****

Группа: Свой
Сообщений: 1 083
Регистрация: 24-10-05
Из: Осокорки
Пользователь №: 10 038



Цитата(bus16 @ Oct 13 2008, 13:29) *
После подачи питания JTAG не залочен - TAP контроллер захватывает работу ядра, время ему на это надо,

Что значит "захватывает работу ядра"? 07.gif
TAP - отдельно, ядро - отдельно. Через TAP можно рулить ICE, а уже ICE в некотором роде рулит ядром.
Просто пока успеешь проинициализировать TAP+ICE и выставить Debug Request в DCSR - JTAG уже отваливается - ядро работает и пишет "Magic Number". Действительно, может сам JTAG и не залочен smile.gif, но сделать ничего полезного до включения блокировки ядром не получается.
Были мысли притормозить ядро, но LPC23 стартует на внутреннем генераторе - тактовую не остановишь, игры с RESET-ом тоже ни к чему полезному не привели - ICE при сбросе блокируется.
Цитата(bus16 @ Oct 13 2008, 13:29) *
вот и создаётся впечатление что JTAG залочен. А CRP - наоборот запрещает работу JTAG если записаны "магические слова" по фикс. адресу во флеш (расположенные рядом с загрузчиком - не путать с 0х1FC)

"Магические слова" проверяются по адресу 0x1FC кодом в загрузчике почти сразу при старте. Если слово в 0x1FC "магическое", то загрузчик блокирует JTAG прописывая 0x87654321 в "секретный" регистрик @0xE01FC184 - Вы это подразумевали?
Go to the top of the page
 
+Quote Post
defunct
сообщение Nov 3 2008, 13:01
Сообщение #8


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(VslavX @ Oct 13 2008, 12:11) *
Основной вопрос в том, разлочится ли JTAG если в "секретный" регистр не будет прописано нужное значение CRPx - при пустом флеше такого явно не происходит - некому прописать.


Цитата(VslavX @ Oct 13 2008, 18:35) *
"Магические слова" проверяются по адресу 0x1FC кодом в загрузчике почти сразу при старте. Если слово в 0x1FC "магическое", то загрузчик блокирует JTAG прописывая 0x87654321 в "секретный" регистрик @0xE01FC184 - Вы это подразумевали?

Ну вот Вы сами ответили на вопрос.
Нет загрузчика, никто и не прописывает никакие кодовые слова - значит JTAG в голом чипе доступен всегда.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- VLM   Как программить flash в LPC без IAP ?   Oct 6 2008, 15:20
- - zltigo   Цитата(VLM @ Oct 6 2008, 17:20) Поэтому я...   Oct 6 2008, 15:45
|- - VLM   Цитата(zltigo @ Oct 6 2008, 18:45) Зачем?...   Oct 6 2008, 17:02
|- - zltigo   Цитата(VLM @ Oct 6 2008, 19:02) Зачем - ч...   Oct 6 2008, 17:20
|- - VslavX   Цитата(zltigo @ Oct 6 2008, 20:20) Разра...   Oct 6 2008, 19:56
|- - zltigo   Цитата(VslavX @ Oct 6 2008, 21:56) ИМХО, ...   Oct 6 2008, 20:40
|- - VslavX   Цитата(zltigo @ Oct 6 2008, 23:40) Уместн...   Oct 6 2008, 22:14
|- - zltigo   Цитата(VslavX @ Oct 7 2008, 00:14) Угу. П...   Oct 7 2008, 07:20
|- - Ander   Загрузчик LPC2000 уже давно вскрыли дизассембирова...   Oct 7 2008, 07:42
||- - zltigo   Цитата(Ander @ Oct 7 2008, 09:42) Загрузч...   Oct 7 2008, 08:31
||- - etoja   1) Значит 'Ander' знает как перепрограммир...   Oct 7 2008, 08:56
||- - zltigo   Цитата(etoja @ Oct 7 2008, 10:56) Значит ...   Oct 7 2008, 10:36
||- - Ander   Цитата(etoja @ Oct 7 2008, 11:56) 1) Знач...   Oct 7 2008, 17:31
|- - VslavX   Цитата(zltigo @ Oct 7 2008, 10:20) Поскол...   Oct 7 2008, 10:38
||- - zltigo   Цитата(VslavX @ Oct 7 2008, 12:38) Хм, а ...   Oct 7 2008, 10:50
||- - VLM   Цитата(zltigo @ Oct 7 2008, 13:50) На это...   Oct 7 2008, 11:12
|- - VLM   Цитата(zltigo @ Oct 7 2008, 10:20) ....Дл...   Oct 7 2008, 10:41
|- - VslavX   Цитата(VLM @ Oct 7 2008, 13:41) Значит пр...   Oct 7 2008, 11:09
|- - zltigo   Цитата(VslavX @ Oct 7 2008, 13:09) ..прив...   Oct 7 2008, 14:48
|- - VLM   Цитата(zltigo @ Oct 7 2008, 17:48) ...Вст...   Oct 7 2008, 15:06
|- - meister   Цитата(zltigo @ Oct 7 2008, 18:48) контро...   Oct 8 2008, 04:56
|- - zltigo   Цитата(meister @ Oct 8 2008, 06:56) ...ко...   Oct 8 2008, 07:10
- - VslavX   Цитата(VLM @ Oct 6 2008, 18:20) Информаци...   Oct 6 2008, 15:47
- - VLM   Ander, я потратил несколько дней, но за два года и...   Oct 9 2008, 10:44
- - net   меня тоже волнует вопрос прошивки flash самопалом ...   Oct 9 2008, 15:54
|- - zltigo   Цитата(net @ Oct 9 2008, 17:54) мне напри...   Oct 9 2008, 16:07
|- - net   Цитата(zltigo @ Oct 9 2008, 20:07) Обсуж...   Oct 9 2008, 19:28
- - VslavX   Вчера "приговорил" LPC2368. Отладил сво...   Oct 12 2008, 11:32
|- - zltigo   Цитата(VslavX @ Oct 12 2008, 13:32) Вчера...   Oct 12 2008, 11:59
|- - VslavX   Цитата(zltigo @ Oct 12 2008, 14:59) Прост...   Oct 12 2008, 12:33
|- - zltigo   Цитата(VslavX @ Oct 12 2008, 14:33) Разни...   Oct 12 2008, 13:00
|- - bus16   Цитата(VslavX @ Oct 13 2008, 20:35) Что з...   Oct 14 2008, 05:46
- - TanT   Уважаемые эксперты, позвольте вмешаться с вопросик...   Oct 14 2008, 05:36
- - VslavX   Цитата(TanT @ Oct 14 2008, 08:36) Уважаем...   Oct 14 2008, 06:00
- - zltigo   Цитата(TanT @ Oct 14 2008, 07:36) Возможн...   Oct 14 2008, 07:21
- - TanT   Цитата(zltigo @ Oct 14 2008, 10:21) Да, ...   Nov 3 2008, 12:15
- - zltigo   Цитата(TanT @ Nov 3 2008, 15:15) Ассемлер...   Nov 3 2008, 13:04
- - TanT   Уважаемый, zltigo, переход на нулевой адрес работа...   Nov 7 2008, 09:10
- - amw   Цитата(TanT @ Nov 7 2008, 11:10) Уважаемы...   Nov 7 2008, 09:59
- - zltigo   Цитата(TanT @ Nov 7 2008, 12:10) PLL откл...   Nov 7 2008, 11:39
|- - TanT   Цитата(zltigo @ Nov 7 2008, 14:39) На вну...   Nov 10 2008, 06:55
|- - TanT   Пардон, заработало. Всем большое спасибо.   Nov 10 2008, 08:08
- - shahr   А ведь интересная была тема. Пока, по данным NXP, ...   Jul 22 2009, 15:01
- - toweroff   Цитата(shahr @ Jul 22 2009, 19:01) А ведь...   Jul 23 2009, 00:03
- - Step_ARM   Эта тема поднималась неоднократно. И я ее как-то п...   Jul 23 2009, 04:47
- - HARMHARM   Цитата(toweroff @ Jul 23 2009, 03:03) ой ...   Jul 23 2009, 04:51
- - toweroff   Цитата(HARMHARM @ Jul 23 2009, 08:51) Что...   Jul 23 2009, 06:40


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 06:51
Рейтинг@Mail.ru


Страница сгенерированна за 0.01497 секунд с 7
ELECTRONIX ©2004-2016