|
|
  |
stm32 биты защиты |
|
|
|
Jun 15 2012, 08:28
|

Участник

Группа: Участник
Сообщений: 20
Регистрация: 8-03-05
Из: Россия, Суздаль
Пользователь №: 3 159

|
доброго дня подскажите пож про защиту stm32f10x. Некоторые моменты никак не догоню
есть 2 вида защиты: только на запись в отдельные страницы flash и чтения flash?
при выставленой защите от чтения flash: 1. запрещается ли запись во ВСЕ страницы flash или все равно нужно запрещать на запись? 2. Есть ли возможность снятия частичного дампа ОЗУ? Ведь вроде остаеться возможность после старта из flash подключить отладчик, залить НАШУ программу в ОЗУ и как то запустить её ( напр изменить ножки boot и сделать reset. sram должна сохраниться)
--------------------
Serj
|
|
|
|
|
Jun 15 2012, 09:07
|
Профессионал
    
Группа: Свой
Сообщений: 1 047
Регистрация: 2-12-06
Из: Kyiv, Ukraine
Пользователь №: 23 046

|
Читайте документ внимательно... 1. Pages 0-3 (for low- and medium-density devices), or pages 0-1 (for high-density and connectivity line devices) are automatically write-protected. 2. Нет. Разве что через ваш же код через сторонний канал, если в нем баг  ) When booting from the embedded SRAM, Flash memory accesses through the code and through data read using DMA1 and DMA2 are not allowed. The rest of the memory can be programmed by the code executed from the main Flash memory (for IAP, constant storage, etc.), but it is protected against write/erase (but not against mass erase) in debug mode or when booting from the embedded SRAM.
|
|
|
|
|
Jun 18 2012, 05:16
|

Участник

Группа: Участник
Сообщений: 20
Регистрация: 8-03-05
Из: Россия, Суздаль
Пользователь №: 3 159

|
Цитата(brag @ Jun 15 2012, 13:07)  Читайте документ внимательно... 1. Pages 0-3 (for low- and medium-density devices), or pages 0-1 (for high-density and connectivity line devices) are automatically write-protected. 2. Нет. Разве что через ваш же код через сторонний канал, если в нем баг  ) я немного не про то. Что flash прочитать не получится это понятно. Вопрос про SRAM например запустили защищенный контроллер нормально из flash. Он запустился и работает. Возможность запуска сторонней программы из SRAM остается? Подключаем отладчик и запускаем оттуда другую программу, которая считывает остальную SRAM которую не заняла собой. Так можно или нет? Ведь данные SRAM от работы основной прошивки (из flash) не должны потеряться если питание не отключать.
Сообщение отредактировал IgorKossak - Jun 18 2012, 06:34
--------------------
Serj
|
|
|
|
|
Jun 18 2012, 19:27
|

Участник

Группа: Участник
Сообщений: 20
Регистрация: 8-03-05
Из: Россия, Суздаль
Пользователь №: 3 159

|
Цитата(brag @ Jun 18 2012, 10:42)  сорри, ОЗУ с ПЗУ перепутал. Да, читать SRAM/писать можно,если загрузится с нее. Но после reset-a там не совсем то,что было до, но и не чисто. А что там? Есть вероятность остатков данных защищенной программы которая из flash выполнялась? Подскажите пож. Я только начинаю с ARM и инструментом ещё не так легко владею
--------------------
Serj
|
|
|
|
|
Jun 19 2012, 06:44
|

Гуру
     
Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095

|
QUOTE (sse @ Jun 18 2012, 08:16)  например запустили защищенный контроллер нормально из flash. Он запустился и работает. Возможность запуска сторонней программы из SRAM остается? Да, остается. Но эта программа не будет иметь доступа к флеш: QUOTE Once the protection byte has been programmed: ● Main Flash memory read access is not allowed except for the user code (when booting from main Flash memory itself with the debug mode not active).
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
|
Jun 20 2012, 07:40
|

Участник

Группа: Участник
Сообщений: 20
Регистрация: 8-03-05
Из: Россия, Суздаль
Пользователь №: 3 159

|
Цитата(brag @ Jun 19 2012, 00:24)  Ну sram какбы не чистится при сбросе, тут не важно арм или не арм. Надо будет попробовать. Точно знаю, что SWO начинает работать только после сброса Read Protect,затем power on reset. после oбычного ресета не работает. возможно и с памятью та же фишка - можно загрузится только после POR. а с JTAG как? POR наверное тоже не гарантирует, что SRAM будет содержать случайные данные. Если питание не опускать до 0, а только чуть ниже 2v ?
--------------------
Serj
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|