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

 
 
 
Reply to this topicStart new topic
> Дамп BSL от MSP430
oleg1000
сообщение Jul 30 2008, 01:11
Сообщение #1





Группа: Новичок
Сообщений: 11
Регистрация: 30-07-08
Пользователь №: 39 289



Возникла надобность немного покопаться в коде BSL от MSP430F1232. Никогда с MSP430 не работал, самому пока снять нечем. Немного разобрал код загружаемого BSL (благодаря плагинам для IDA с этого форума), хотелось бы и на код в ROM посмотреть.
Go to the top of the page
 
+Quote Post
rezident
сообщение Jul 30 2008, 09:49
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Возмите программу Kurt-а MSPFET Programmer, снимите полный дамп памяти, вычлените из него область BSL и дизассемблируйте его себе на здоровье. У меня нет под рукой такого кристалла, а то бы снял дамп. Это недолго и несложно.
Go to the top of the page
 
+Quote Post
oleg1000
сообщение Jul 30 2008, 12:43
Сообщение #3





Группа: Новичок
Сообщений: 11
Регистрация: 30-07-08
Пользователь №: 39 289



Цитата(rezident @ Jul 30 2008, 13:49) *
Возмите программу Kurt-а MSPFET Programmer, снимите полный дамп памяти, вычлените из него область BSL и дизассемблируйте его себе на здоровье. У меня нет под рукой такого кристалла, а то бы снял дамп. Это недолго и несложно.
Всё это будет только в сентябре, а пока в отпуске, снять будет нечем. Я так понял в программаторе Kurt'а BSL можно снять отдельно от всего.
А у разных подвидов ROM BSL сильно отличается ?
Если несложно, можете разместить здесь реальный BSL от любых кристаллов, что под рукой ?

Сообщение отредактировал oleg1000 - Jul 30 2008, 12:47
Go to the top of the page
 
+Quote Post
_3m
сообщение Jul 30 2008, 17:34
Сообщение #4


Знающий
****

Группа: Участник
Сообщений: 745
Регистрация: 28-12-06
Пользователь №: 23 960



Цитата(oleg1000 @ Jul 30 2008, 16:43) *
Если несложно, можете разместить здесь реальный BSL от любых кристаллов, что под рукой ?

Слил с помощью mspfet
bsl от msp430f1232 [attachment=23279:attachment]
и на всякий случай id чипа [attachment=23280:attachment]
Go to the top of the page
 
+Quote Post
oleg1000
сообщение Jul 30 2008, 18:13
Сообщение #5





Группа: Новичок
Сообщений: 11
Регистрация: 30-07-08
Пользователь №: 39 289



_3m спасибо за помощь.
Go to the top of the page
 
+Quote Post
rezident
сообщение Jul 30 2008, 18:20
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(oleg1000 @ Jul 30 2008, 18:43) *
Всё это будет только в сентябре, а пока в отпуске, снять будет нечем. Я так понял в программаторе Kurt'а BSL можно снять отдельно от всего.
Прочитать содержимое памяти MSP430 можно через 4-х проводный JTAG или 2-х проводный Spy-Bi-Wire, если не пережжен fuse. Или через интерфейс BSL (программный UART, поддерживаемый внутренней BSL-firmware), если имеется пароль доступа к Flash.
А вот с чтением firmwire BSL из ROM сложнее. Мне удалось снять dump только с помощью программы Курта (у нее есть специальная опция DUMP BSL) и LPT-ного FET (MSP-FET430PIF) через 4-х проводный JTAG. Через USB-FET и этой же программы, прочитать дамп BSL не удается. Читается какая-то ерунда. Видимо сам адаптер MSP-FET430UIF блокирует чтение области BSL. cranky.gif Программой от Elprotronic FET-PRO430 тоже не удается считать дамп BSL, т.к. она просто не дает выбрать диапазон адресов области памяти BSL, ругается "Read Address Range Error! Main Memory Start Address must be high then 0x1000". laughing.gif
Цитата(oleg1000 @ Jul 30 2008, 18:43) *
А у разных подвидов ROM BSL сильно отличается ?
Отличаются версии BSL. См. подробнее об интерфейсе и версиях BSL в документе Application of Bootstrap Loader in MSP430 With Flash Hardware, Software Proposal (Rev. D).
Цитата(oleg1000 @ Jul 30 2008, 18:43) *
Если несложно, можете разместить здесь реальный BSL от любых кристаллов, что под рукой ?
Под рукой были MSP430F1161 и MSP430F248. На всякий случай сохранил дампы BSL в двух форматах TI-TXT и Intel HEX.

Update. Удалил файлы, т.к. по ходу проверки они были считаны неверно, с ошибками.

Сообщение отредактировал rezident - Jul 30 2008, 20:59
Go to the top of the page
 
+Quote Post
_3m
сообщение Jul 30 2008, 19:58
Сообщение #7


Знающий
****

Группа: Участник
Сообщений: 745
Регистрация: 28-12-06
Пользователь №: 23 960



Цитата(rezident @ Jul 30 2008, 22:20) *
...
Видимо сам адаптер MSP-FET430UIF блокирует чтение области BSL.

Нет, адаптер не блокирует. C-SPY через ez430, подключенный по Spy by wire прекрасно выдает дамп всей памяти, включая код bsl. Скорее всего софт программатора тупо дает отлуп при попытке обращения к области памяти вне флэш. У Курта для чтения bsl предусмотрена специальная функция.
Go to the top of the page
 
+Quote Post
rezident
сообщение Jul 30 2008, 20:57
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(_3m @ Jul 31 2008, 01:58) *
Нет, адаптер не блокирует. C-SPY через ez430, подключенный по Spy by wire прекрасно выдает дамп всей памяти, включая код bsl. Скорее всего софт программатора тупо дает отлуп при попытке обращения к области памяти вне флэш. У Курта для чтения bsl предусмотрена специальная функция.
Да, не блокирует. Были какие-то глюки при чтении. Видимо потому, что питался кристалл прямо от FET. Сейчас попробовал еще раз с внешней запиткой кристалла. Но все равно dump BSL, считанный с помощью программы Курта через USB-FET и через LPT-FET не совпадают на 100%. В USB-ном варианте дампа один байт ближе к концу как 0xFF читается, а в считанном через LPT-FET дампе как 0x00. Считывал, перепроверял и сравнивал несколько раз. См. в аттачменте.
Прикрепленные файлы
Прикрепленный файл  DUMPBSL_MSP430F248.zip ( 1.9 килобайт ) Кол-во скачиваний: 67
 
Go to the top of the page
 
+Quote Post
oleg1000
сообщение Jul 31 2008, 13:32
Сообщение #9





Группа: Новичок
Сообщений: 11
Регистрация: 30-07-08
Пользователь №: 39 289



Цитата(rezident @ Jul 31 2008, 00:57) *
Да, не блокирует.

Первая половина BSL есть, а вторая, где одни 00, получается не прочиталась.
Go to the top of the page
 
+Quote Post
oleg1000
сообщение Apr 11 2009, 21:47
Сообщение #10





Группа: Новичок
Сообщений: 11
Регистрация: 30-07-08
Пользователь №: 39 289



Понимаю, что для участников этой ветки мой вопрос будет тупым, но учиться никогда не поздно.
В прошлом году с модулем Курта для IDA разобрал BSL по "косточкам", но чего тогда хотел добиться пока ещё не получил, теперь появилась возможность продолжить "исследования".
Итак имеется разобранный в IDA исходный код BSL и надо сделать его "понятным" для Phyton Project 430 1.10.15 . При попытке компилляции исходника выдаётся сообщение об одной ошибке

Error[A17] msp_bsl.mca(5,45): Expression <> current relocation

Код
;-----------------------------------------------------------------------------
            .OSEG __RAM, DATA
            .ORG     00200h  
;-----------------------------------------------------------------------------
word_200:       .DS 2
word_202:       .DS 2
word_204:       .DS 2
unk_206:        .DS 1
byte_207:       .DS 1
unk_208:        .DS 1
byte_209:       .DS 1
unk_20A:        .DS 1
byte_20B:       .DS 1
byte_20C:       .DS 1
byte_20D:       .DS 1
word_20E:       .DS 2
word_210:       .DS 2
word_212:       .DS 2
word_214:       .DS 2
byte_216:       .DS 1

;-----------------------------------------------------------------------------
            .ASEG __code, CODE
            .ORG     00C00h                 ; Program Start
;-----------------------------------------------------------------------------

; ---------------------------------------------------------------------------
; ===========================================================================

; Segment type: Pure code
                .DCB  04h
                .DCB  0Ch
                .DCB  0Eh
                .DCB  0Ch

                mov     #220h, SP      ; set SP
                clr     R11            ; clear Flags
                clr.b   byte_216       ; set Baud rate 9600
                dint                   ; disable all interupt


C IAR понятно (через #define byte_216 (0x0216)), а как мне здесь описать метки в RAM, чтобы компиллятор не ругался ?
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 27th July 2025 - 07:16
Рейтинг@Mail.ru


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