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

 
 
> STM32F101 Rev. Z
MALLOY2
сообщение Dec 14 2008, 13:42
Сообщение #1


Знающий
****

Группа: Validating
Сообщений: 838
Регистрация: 31-01-05
Пользователь №: 2 317



Вопрос по errata.

Description
Compilers with improved optimizations for the STM32F10xxx have been recently released
on the market. Revisions Z and B of the medium-density STM32F10xxx devices
(STM32F10xx8/B) do not support some of the sequences associated with the high-level
optimizations done in these compilers. Revision Y is not affected by this limitation.

Workaround
This behavior is fully deterministic, and should be detected during firmware development or
the validation phase. Consequently, systems already developed, validated and delivered to
the field with previous silicon revisions are not affected.
For code update of revision Z and B devices already in the field, do not use these new
compilers. To date, compilers known to generate these sequences are:
● IAR EWARM rev 5.20 and later
● GNU rev 4.2.3 and later
For new developments associated with these compilers, revision Y of the STM32F10xx8/B
must be used.


Есть ли более подробное описание этого глюка ? а то с ерраты ничего не понятно...

У меня IAR5.20 как этот глюк проявляется и как нанего и скакой вероятностью на него можно наступить ?
Я вобще не понимаю этого описания.... как можно советовать использовать компилятор более раних версий, получается как бы виноват компилятор, но тут виноват контроллер, следовательно глюк у него и причем тут тогда компилятор если я буду писать на чистом ASM ? Вывод если это ошибка камня то по чему она не описана.... К примеру у TMS320C5502 тоже есть глюки ядра которые тоже зависят от ревизии но там четко написано что после этой команды надо поставить NOP к примеру....

Кто пробывал работать на IAR5.20 c камнями ревизии Z что там глючного ?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
MALLOY2
сообщение Dec 16 2008, 08:52
Сообщение #2


Знающий
****

Группа: Validating
Сообщений: 838
Регистрация: 31-01-05
Пользователь №: 2 317



там обсуждают глюки JLink в этой тиматике (IAR 5.20 && Rev.Z) позиция ST похоже такая - фиг что мы вам раскажем sad.gif
Go to the top of the page
 
+Quote Post
Sanek_spb
сообщение Dec 16 2008, 10:01
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 28
Регистрация: 28-02-07
Пользователь №: 25 746



Цитата(MALLOY2 @ Dec 16 2008, 11:52) *
там обсуждают глюки JLink в этой тиматике (IAR 5.20 && Rev.Z) позиция ST похоже такая - фиг что мы вам раскажем sad.gif


И это тоже...
Если покопаться поглубже, то можно найти причину нашего обсуждения:
1. Проблема всего в одной инструкции, причем не у ST, а у всех кортексов
2. Workaround for Cortex-M3 CPU errata. Errata present in some Cortex-M3 cores can cause data corruption when overlapping registers are used in LDRD instructions. The compiler avoids generating these problematic instructions when the -mfix-cortex-m3-ldrd or -mcpu=cortex-m3 command-line options are used. The Sourcery G++ runtime libraries have also been updated to include this workaround.
Т.е. новые компилеры знают про эту ошибку и будут генерить нормальный код. Кейл эту проблему у себя победил и ...
3. Для ознакомления http://www.keil.com/support/docs/3442.htm
4. Чтобы окончательно стало понятно почему у некоторых так, а у других по другому
1) This limitation does not affect the STM32 code execution when fetching
from embedded FLASH (standard use of the product).
2) The limitation may affect the STM32 code execution when fetching from:
- Embedded RAM
- External memory (via FSMC for the STM32 High Density ). This applies
to applications requiring large amount of code (more than the embedded Flash size ).

Я не имею нормального отладчика, поэтому юзаю компорт, а программа запускается из флэши и данная ошибка у меня не воспроизводится, у тех, кто юзает отладчики и ...читай выше... могут возникать проблемы.

ЗЫЖ To finish, as the limitation is based on asynchronous event (interrupt) on a specific code sequence (LDRD) not executed from STM32 embedded flash, there is very limited chance to get end-customer application fault.

Nevertheless, all our Compilers partners (Keil, IAR, GNU CodeSourcery, Hitex etc..) already provide a "Detection" tool for code deployed in the field with previous/old revisions of compilers that may generate this sequence

Сообщение отредактировал Sanek_spb - Dec 16 2008, 10:02
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- MALLOY2   STM32F101 Rev. Z   Dec 14 2008, 13:42
- - bigarmer   Revision Y is not affected by this limitation. Yo...   Dec 14 2008, 14:29
- - MALLOY2   Я читать умею, у меня лежит партия ревизии Z. Хочу...   Dec 14 2008, 15:24
|- - Dog Pawlowa   Цитата(MALLOY2 @ Dec 14 2008, 19:24) Я чи...   Dec 14 2008, 16:49
- - koyodza   По этому глюку сказать ничего не могу, да и вообще...   Dec 14 2008, 17:42
- - MALLOY2   Нарыл такой документ, тоже не очем. Может всетак...   Dec 14 2008, 21:12
|- - mai   Я поначалу забил на это предупреждение и довольно ...   Dec 15 2008, 13:15
- - MALLOY2   Даже такие грабли вполне приемлемы, если они видны...   Dec 15 2008, 16:43
- - IgorKossak   Подробно не смотрел, но может здесь найдёте что-ни...   Dec 16 2008, 07:55
- - MALLOY2   О... это уже что- то, спасибо. Но тут тоже калабу...   Dec 16 2008, 12:17
|- - Sanek_spb   Цитата(MALLOY2 @ Dec 16 2008, 15:17) О......   Dec 16 2008, 16:46
- - MALLOY2   Скачал программулину для проферки проета на глюк L...   Dec 16 2008, 14:12
- - MALLOY2   Всеравно ничего не понятно, что они сделали в реви...   Dec 16 2008, 19:16


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

 


RSS Текстовая версия Сейчас: 23rd June 2025 - 00:49
Рейтинг@Mail.ru


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