Телесистемы
 Разработка, производство и продажа радиоэлектронной аппаратуры
На главную   | Карта сайта | Пишите нам | В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:jobsmp@pochta.ru

Телесистемы | Электроника | Конференция «Цифровые сигнальные процессоры (DSP) и их применение»

CCS, F2812 и линкер - вопрос(+)

Отправлено АВГ 28 июня 2007 г. 14:22


1. Почему линкер всегда запихивает секцию const в ОЗУ, хотя "the linker can be used to place the .const section in ROM"? Или имеется ввиду - "а вот это - только ручками!Но учти, что при этом будут <список неприятностей>"?
2. Требуется разместить пару здоровых массивов констант (используемых не слишком активно) в ROM, т.к. по специфике задачи места в ROM - завались (в отличие от RAM). Правильно ли я делаю:

в тексте программы
#pragma DATA_SECTION(aCoeOut, "big_array");
const int aCoeOut[][10]={ 10, .......

в cmd-файле:
MEMORY
{
/*PAGE 0 : PROG(R) : origin = 0x3D8000, length = 0x20000*/
/*урезаем размер PROG(R)*/
PAGE 0 : PROG(R) : origin = 0x3D8000, length = 0x1D900
......
/*на освободившееся в памяти место ставлю: */
PAGE 1 : CONSTRAM(R) : origin = 0x3F5900, length = 10000
}
/*и, соответственно, создаем*/
SECTIONS
{
........
big_array : > CONSTRAM, PAGE = 1
}
Правильно? Вроде все прижилось, но...
И нельзя ли это же сделать как-то... ээээ.... помягче, чтоб линкер сам разместил этот массив в ROM на том месте, которое линкеру покажется более оптимальным?
Заранее спасибо!



Составить ответ | Вернуться на конференцию

Ответы


Отправка ответа
Имя*: 
Пароль: 
E-mail: 
Тема*:

Сообщение:

Ссылка на URL: 
URL изображения: 

если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
введите число 12:

Перейти к списку ответов | Конференция | Раздел "Электроника" | Главная страница | Карта сайта

Rambler's Top100 Рейтинг@Mail.ru
 
Web telesys.ru