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

 
 
> LPC1758 и RAM
Тапочек
сообщение Sep 27 2012, 19:37
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 42
Регистрация: 10-04-10
Пользователь №: 56 542



Здравствуйте, товарищи.
Подскажите, пожалуйста, новичку такую вещь. Имеется, значит, контроллер LPC1758 с разделяемой встроенной ОЗУ 64 кбайта, и надо каким-то образом задействовать в программе как минимум 48 кбайт для глобального массива. При попытке откомпилить код с массивом такого размера выскакивают две ошибки с кодами L6406E и L6407E, указывающими о нехватке места. Среда разработки - Keil 4.54. В опциях таргета поставил галки напротив IRAM1 и IRAM2, указал адреса старта и размеры (по 32 кбайта). В чем может быть проблема?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
SII
сообщение Sep 27 2012, 19:47
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 549
Регистрация: 13-07-10
Из: Солнечногорск-7
Пользователь №: 58 414



Может, в том, что ему нужна непрерывная область достаточного размера, относящаяся к одному региону памяти (IRAM1 и IRAM2 будут разными регионами, даже если они вплотную примыкают друг к другу).
Go to the top of the page
 
+Quote Post
esaulenka
сообщение Oct 1 2012, 16:08
Сообщение #3


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

Группа: Свой
Сообщений: 1 032
Регистрация: 13-03-08
Из: Маськва
Пользователь №: 35 877



Цитата(SII @ Sep 27 2012, 23:47) *
IRAM1 и IRAM2 будут разными регионами, даже если они вплотную примыкают друг к другу

Проблема как раз в том, что между двумя областями памяти расположена "дырка".
Если б её не было, можно было б объявить память одним регионом и спокойно использовать целиком. То, что физически эти два банка сидят на разных шинах, ни компилятору, ни программисту не видно. Спасибо фон Нейману sm.gif

Кстати, вопрос в тему. Если я не пользуюсь DMA, с точки зрения производительности есть разница, в какой именно области памяти лежат данные?

Вопрос именно по LPC17xx с его хитрый структурой шин - основной банк памяти подключен к ядру шинами D-bus, I-bus, "периферийные" (название - из "описательной" части даташита) - по шине system bus, на которой вдобавок вся периферия (через соотв. мосты).


--------------------
Тут обсуждается творческий порыв, а не соответствие каким-либо стандартам ©
Go to the top of the page
 
+Quote Post
ReAl
сообщение Oct 1 2012, 17:34
Сообщение #4


Нечётный пользователь.
******

Группа: Свой
Сообщений: 2 033
Регистрация: 26-05-05
Из: Бровари, Україна
Пользователь №: 5 417



Цитата(esaulenka @ Oct 1 2012, 19:08) *
То, что физически эти два банка сидят на разных шинах, ни компилятору, ни программисту не видно.
Станет видно при попытке использовать BITBAND работу с битами :-), которая есть только в AHB-шном блоке.

Цитата(esaulenka @ Oct 1 2012, 19:08) *
Если я не пользуюсь DMA, с точки зрения производительности есть разница, в какой именно области памяти лежат данные?
Вот до того, чтобы обращать внимание на производительность, я ещё не дошёл.


--------------------
Ну, я пошёл… Если что – звоните…
Go to the top of the page
 
+Quote Post



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

 


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


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