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

 
 
> NXP ARM7 не прописывается последняя запись в Local SRAM
GetSmart
сообщение Oct 24 2015, 08:34
Сообщение #1


.
******

Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753



При отладке обнаружил, что последняя запись из команд STR/STM в Local SRAM [0x40000000..0x4000xxxx] не доходит до SRAM. Вероятно все записи (через Internal SRAM Controller) буферизуются и если поступает сигнал Reset, то последняя запись не пропишется при любом ожидании, даже если прочитать из этого же (последнего) адреса. Проблема актуальна только для устройств, при сбросе сохраняющих в памяти какие-то переменные. Проверял на LPC213x и LPC214x. Т.к. не имею ARM7 с DMA, например LPC24xx, то не могу проверить тот же эффект в DMA SRAM. Но эта память работает не через Internal SRAM Controller.

Если где-то описана эта фича срам-контроллера, то кто-нибудь подскажите где.


--------------------
Заблуждаться - Ваше законное право :-)
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Alechek
сообщение Oct 26 2015, 07:34
Сообщение #2


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

Группа: Свой
Сообщений: 1 241
Регистрация: 15-11-05
Из: Челябинск
Пользователь №: 10 882



Ничего странного. Кэширование записи.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Oct 26 2015, 08:37
Сообщение #3


Гуру
******

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



QUOTE (Alechek @ Oct 26 2015, 10:34) *
Ничего странного. Кэширование записи.

Вы открыли всем нам глаза! А как только быть с тем фактом, что кэша у LPC2148 нет, не было и не будет?


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Alechek
сообщение Oct 26 2015, 12:21
Сообщение #4


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

Группа: Свой
Сообщений: 1 241
Регистрация: 15-11-05
Из: Челябинск
Пользователь №: 10 882



Цитата(zltigo @ Oct 26 2015, 13:37) *
Вы открыли всем нам глаза! А как только быть с тем фактом, что кэша у LPC2148 нет, не было и не будет?

Ага, не было... Было есть и будет!
Цитата("Philips Semiconductors UM10139")
8. On-chip Static RAM (SRAM)
The SRAM controller incorporates a write-back buffer in order to prevent CPU stalls
during back-to-back writes. The write-back buffer always holds the last data sent by
software to the SRAM. This data is only written to the SRAM when another write is
requested by software (the data is only written to the SRAM when software does another
write). If a chip reset occurs, actual SRAM contents will not reflect the most recent write
request (i.e. after a "warm" chip reset, the SRAM does not reflect the last write operation).
Any software that checks SRAM contents after reset must take this into account. Two
identical writes to a location guarantee that the data will be present after a Reset.
Alternatively, a dummy write operation before entering idle or power-down mode will
similarly guarantee that the last data written will be present in SRAM after a subsequent
Reset.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Oct 26 2015, 16:33
Сообщение #5


Гуру
******

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



QUOTE (Alechek @ Oct 26 2015, 15:21) *
Ага, не было... Было есть и будет!

Здорово! Хорошая все объясняющая цитата. Только ведь, это действительно не кэш sm.gif. Хотя бы по той причне, что авторы этого решения НЕ назвали это кэшем.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post

Сообщений в этой теме


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

 


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


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