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

 
 
> Модель памяти MSP430
jcxz
сообщение Apr 25 2014, 17:49
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Не знаю куда лучше спросить - сюда или в MSP430-конфу?
Только начинаю осваивать MSP430. На MSP430FR5739.
В нём всего 16К FRAM, ОЗУ и того меньше.
Компилю IAR, модель памяти - small. Получаю - указатели на данные: 16бит; указатели на код: 20бит.
Как можно в IAR сказать использовать 16-битные указатели на код? (для экономии памяти, коей совсем мало).
Модели tiny в настройках IAR не нашёл... sad.gif(((
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Dnepr33
сообщение Jun 11 2014, 04:13
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 22
Регистрация: 1-02-11
Из: Днепропетровск
Пользователь №: 62 622



Цитата(jcxz @ Apr 25 2014, 23:59) *
Не знаю куда лучше спросить - сюда или в MSP430-конфу?
Только начинаю осваивать MSP430. На MSP430FR5739.
В нём всего 16К FRAM, ОЗУ и того меньше.
Компилю IAR, модель памяти - small. Получаю - указатели на данные: 16бит; указатели на код: 20бит.
Как можно в IAR сказать использовать 16-битные указатели на код? (для экономии памяти, коей совсем мало).
Модели tiny в настройках IAR не нашёл... sad.gif(((


А что, экономия памяти именно на указателях так критична ? Смотря какой алгоритм, конечно.
Экономим 1 байт ?
Включаем выдачу полного листининга, + asm + map.
Может проблемы и нет, за счет работы оптимизации ?


Go to the top of the page
 
+Quote Post
jcxz
сообщение Jun 13 2014, 05:00
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(Dnepr33 @ Jun 11 2014, 14:23) *
А что, экономия памяти именно на указателях так критична ? Смотря какой алгоритм, конечно.
Экономим 1 байт ?

На каждом указателе.

Цитата(Dnepr33 @ Jun 11 2014, 14:23) *
Включаем выдачу полного листининга, + asm + map.
Может проблемы и нет, за счет работы оптимизации ?

По существу есть что сказать?

Цитата(den_po @ Jun 13 2014, 07:02) *
Насколько я понимаю, нужно отличать модель памяти для данных от модели памяти для кода. Small для кода в IAR для MSP430 добавили в версии 6.10.

Само понятие "модель памяти" - это совокупность разрядностей кода+данных. Нет понятий "модель памяти данных" или "модель памяти кода".
Как я понимаю:
small - 16data+20код.
tiny - 16data+16код.
Go to the top of the page
 
+Quote Post
den_po
сообщение Jun 13 2014, 06:57
Сообщение #4


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

Группа: Участник
Сообщений: 139
Регистрация: 9-11-12
Из: Санкт-Петербург
Пользователь №: 74 315



Цитата(jcxz @ Jun 13 2014, 13:10) *
Само понятие "модель памяти" - это совокупность разрядностей кода+данных. Нет понятий "модель памяти данных" или "модель памяти кода".

специально установил свежий иар
Прикрепленное изображение


по поводу размеров указателей цитата из EW430 compiler reference:

These data models are supported:
- The Small data model specifies data16 as the only memory type, which means the first 64 Kbytes of memory can be accessed. Registers are treated as if they were 16 bits wide. The only way to access the full 1-Mbyte memory range is to use intrinsic functions.
- The Medium data model specifies data16 as the default memory type, which means data objects by default are placed in the first 64 Kbytes of memory. The entire 1 Mbyte of memory can be accessed.
- The Large data model specifies data20 as the default memory type, which means the entire memory of 1 Mbyte can be accessed.

These code models are available:
- The Small code model uses 16-bit instructions CALL and RET, and reaches 64 kBytes of memory. Function pointers are 2 bytes.
- The Large code model uses 20-bit instructions CALLA and RETA, and reaches 1 MB of memory. Function pointers are 4 bytes. This is the default code model.
Go to the top of the page
 
+Quote Post



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

 


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


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