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

 
 
4 страниц V  < 1 2 3 4 >  
Reply to this topicStart new topic
> LPC23xx. Опубликован новый errata, с багами Flash и MAM
Andy Mozzhevilov
сообщение Jul 6 2007, 10:36
Сообщение #16


Знающий
****

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



Цитата(3.14 @ Jul 6 2007, 16:23) *
Не понял, в еррате от 7 июня нет упоминания о B C D ревизиях ...

Ревизии B C D относятся к LPC2138 (ну и все прочие 213x),
Date:June 8 2007
Document Release:Version 1.7
Device Affected:LPC2138

плюс все прочие семейства LPC видимо имеют свою errata на этот счет.
В этом то и заключается особая дерьмоватость ситуации.
Если 2368 чип свеженький, и в новые проекты массово вряд ли у кого то не идет,
то все остальные то трудятся уже давненько. И что теперь с теми проектами делать?


--------------------
Пасу котов...
Go to the top of the page
 
+Quote Post
3.14
сообщение Jul 6 2007, 10:44
Сообщение #17


Их либе дих ...
******

Группа: СуперМодераторы
Сообщений: 2 010
Регистрация: 6-09-04
Из: Russia, Izhevsk
Пользователь №: 609



Я поумал Вы про LPC23хх ...
Зачем что-то делать со старывми проектами, которые давно трудятся?


--------------------
Усы, борода и кеды - вот мои документы :)
Go to the top of the page
 
+Quote Post
sensor_ua
сообщение Jul 6 2007, 10:50
Сообщение #18


Профессионал
*****

Группа: Свой
Сообщений: 1 266
Регистрация: 22-04-05
Из: Киев
Пользователь №: 4 387



У меня 2378-е с ревизией Y - надпись не попадает в формат со стр.3 -
ZSG0646-Y
Как бы узнать какая эррата на них распространяется?wink.gif)


--------------------
aka Vit
Go to the top of the page
 
+Quote Post
Andy Mozzhevilov
сообщение Jul 6 2007, 10:56
Сообщение #19


Знающий
****

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



Цитата(3.14 @ Jul 6 2007, 16:44) *
Я поумал Вы про LPC23хх ...
Зачем что-то делать со старывми проектами, которые давно трудятся?


И правда зачем? Я бы и не притронулся.
Я пытался объяснить выше суть проблемы.
Короче, во всех ревизиях LPC с добавленной проблемой MAM.2
нельзя исключать ситуации, когда старая работающая программа
в старых проектах на старых чипах перестанет работать.





Кстати, почитал свой архив форума на lpc2000@yahoogroups.com
Там эту проблему начали обсуждать в начале мая.


--------------------
Пасу котов...
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jul 7 2007, 07:55
Сообщение #20


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(Andy Mozzhevilov @ Jul 6 2007, 10:59) *
что получили фичу MAM.2 в ревизиях C и D.
Если для обхода MAM.1 рекомендовалось включить MAMCR = 2,
то теперь для обхода MAM.2 рекомендуются включить MAMCR = 1,

Да,уж.... Хотя по MAM.1 может MAMCR=2 как-то всуе помянуто smile.gif.
А MAM.2 это нет слов sad.gif
Девайсы которые сейчас в отладке на 2138 практически все ревизии 'C' - проблем с падением не наблюдал. Пока в процесе работы буду так испытывать, ну а вообще придется разные bootloader-ы сделать и убрать переинициализацию из основной программы, но потеря производительности это тоскливо очень.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Цырен
сообщение Jul 10 2007, 08:49
Сообщение #21


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

Группа: Validating
Сообщений: 184
Регистрация: 26-06-07
Из: Санкт-Петербург
Пользователь №: 28 714



Недавно собрали плату на LPC2364 с ревизией Y. Дата выпуска микроконтроллера - 1-я неделя этого года. Сначала не мог всосать почему мой код виснет в стартапе... Потом подробно наблюдал ассемблерный код...виснет в бесконечном цикле в обработчике data abort! Так собственно вопрос: что же мне настройку MAMRC делать еще до инициализации стэков? Ведь проц входит в состояние DataAbort еще до того, как начнется функция настройки системной периферии. 07.gif
Go to the top of the page
 
+Quote Post
Andy Mozzhevilov
сообщение Jul 10 2007, 08:55
Сообщение #22


Знающий
****

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



Цитата(Цырен @ Jul 10 2007, 14:49) *
Недавно собрали плату на LPC2364 с ревизией Y. Дата выпуска микроконтроллера - 1-я неделя этого года. Сначала не мог всосать почему мой код виснет в стартапе... Потом подробно наблюдал ассемблерный код...виснет в бесконечном цикле в обработчике data abort! Так собственно вопрос: что же мне настройку MAMRC делать еще до инициализации стэков? Ведь проц входит в состояние DataAbort еще до того, как начнется функция настройки системной периферии. 07.gif


Все критические настройки можно сделать в low_level_init
Но по ресету MAM выключается. Вряд ли у вас ситуация, связанная с багом MAM.
Посмотрите, откуда он падает в исключение, дальше дело техники найти причину.


--------------------
Пасу котов...
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jul 10 2007, 10:10
Сообщение #23


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(Andy Mozzhevilov @ Jul 10 2007, 11:55) *
Все критические настройки можно сделать в low_level_init

Это уже для вызова стек должен быть.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Andy Mozzhevilov
сообщение Jul 10 2007, 10:15
Сообщение #24


Знающий
****

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



Цитата(zltigo @ Jul 10 2007, 16:10) *
Это уже для вызова стек должен быть.


Да, стек есть, но это ничему не мешает.
Потом стек юзается уже в самой low_level_init() если она так написана.
Если ее написать на асме, то можно обойтись без использования стека, но это, имхо,
не нужно, в контексте MAM.2


--------------------
Пасу котов...
Go to the top of the page
 
+Quote Post
Цырен
сообщение Jul 10 2007, 10:54
Сообщение #25


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

Группа: Validating
Сообщений: 184
Регистрация: 26-06-07
Из: Санкт-Петербург
Пользователь №: 28 714



Эту проблему я подробно описал здесь http://electronix.ru/forum/index.php?showt...970&hl=2364
Go to the top of the page
 
+Quote Post
HARMHARM
сообщение Sep 11 2007, 17:48
Сообщение #26


читатель даташитов
****

Группа: Свой
Сообщений: 853
Регистрация: 5-11-06
Из: Днепропетровск
Пользователь №: 21 999



Пролистывал LPC23xx/24xx Example Software для Keil, и наткнулся на фразу:
Цитата
(1) Due to the MAM fix and User Manual Update, CCO divider with
the odd number for CCLK is no longer allowed. Update PLL setting
example accordingly.

В errata для LPC2368 такое описание бага MAM.1:
Цитата
MAM.1: Under certain conditions in MAM Mode 2 code execution out of internal Flash can fail.Introduction: The MAM block maximizes the performance of the ARM processor when it is running code in Flash memory. It includes three 128-bit buffers called the Prefetch Buffer, the Branch Trail Buffer and the data buffer. It can operate in 3 modes; Mode 0 (MAM off), Mode 1 (MAM partially enabled) and Mode 2 (MAM fully enabled).Problem:Under certain conditions when the MAM is fully enabled (Mode 2) code execution from internal Flash can fail. The conditions under which the problem can occur is dependent on the code itself along with its positioning within the Flash memory. Workaround: If the above problem is encountered then Mode 2 should not be used. Instead, partially enable the MAM using Mode 1.

Не значит ли это, что проблемы с MAM возникали при установке нечетного CCO divider, и про этот баг можно забыть? У кого-нибудь получалось достоверно воспроизвести этот глюк с выпадением в Data Abort? Может быть, стоит провести эксперимент с MAM=2 и нечетным CCOdiv...
Go to the top of the page
 
+Quote Post
zltigo
сообщение Sep 11 2007, 19:28
Сообщение #27


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(HARMHARM @ Sep 11 2007, 20:48) *
при установке нечетного CCO divider

Не совсем однозначно можно понять, что кейловцы называют "CCO Divider", но у меня "делитель" записываемый в PLLCFG '1', что с другой строны соответствует делению на 2. Множитель соответственно '3' = 4. Проблем, как уже писал, не наблюдал и не наблюдаю.
Действительно интересно, какие множитель/делитель у тех у кого они есть.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Andy Mozzhevilov
сообщение Sep 12 2007, 03:03
Сообщение #28


Знающий
****

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



Цитата(zltigo @ Sep 12 2007, 01:28) *
Не совсем однозначно можно понять, что кейловцы называют "CCO Divider", но у меня "делитель" записываемый в PLLCFG '1', что с другой строны соответствует делению на 2. Множитель соответственно '3' = 4. Проблем, как уже писал, не наблюдал и не наблюдаю.
Действительно интересно, какие множитель/делитель у тех у кого они есть.


у меня
Код
        PLLCFG = (72-1) | ((5-1) << 16);   /* FCCO = 288 MHz */


то есть в делитель записано значение 4, что соответствует делению на 5.
сейчас нет под рукой плат тех устройств, скоро должны подойти, обязательно попробую.


Есть более новая errata от 20 июля, там действительно говорится о том, что нельзя использовать четное значение для регистра CCLKSEL.
У меня сделано
Код
        CCLKCFG = (5-1);                  /* Set clock divider */

то есть как раз четное.
но в erreta филипсовцы не связали этот баг с МАМ, а добавили его в баг Flash.1
Но проверить все же стоит


--------------------
Пасу котов...
Go to the top of the page
 
+Quote Post
zltigo
сообщение Sep 12 2007, 06:20
Сообщение #29


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(Andy Mozzhevilov @ Sep 12 2007, 06:03) *
Но проверить все же стоит

Ждем.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
HARMHARM
сообщение Sep 12 2007, 09:01
Сообщение #30


читатель даташитов
****

Группа: Свой
Сообщений: 853
Регистрация: 5-11-06
Из: Днепропетровск
Пользователь №: 21 999



Цитата
У меня сделано
Код
        CCLKCFG = (5-1);                  /* Set clock divider */

А это то значение, при котором возникали проблемы, или новое - найденное путем проб и ошибок?
Go to the top of the page
 
+Quote Post

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

 


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


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