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

 
 
 
Reply to this topicStart new topic
> MAX10 NIOS. Секция .bss почему-то загружается во FLASH UFM
Олег Гаврильченк...
сообщение Sep 18 2018, 07:14
Сообщение #1


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

Группа: Участник
Сообщений: 177
Регистрация: 10-02-15
Пользователь №: 85 052



Использую Altera MAX10. Quartus 16.1. Код программы NIOS записываю в UFM.
Увидел непонятную мне вещь: секция .bss полностью записывается в UFM, видимо, чтобы потом скопировать ее в RAM, как и секцию .rwdata. То есть, во flash записано 4 кБ нулей. Ниже кусок из objdump. 0000ab40 - это адрес в UFM.

CODE
Sections:
Idx Name Size VMA LMA File off Algn
0 .entry 00000020 00008000 00008000 00001000 2**5
CONTENTS, ALLOC, LOAD, READONLY, CODE
1 .exceptions 00000160 00008020 00008020 00001020 2**2
CONTENTS, ALLOC, LOAD, READONLY, CODE
2 .text 00002808 00008180 00008180 00001180 2**2
CONTENTS, ALLOC, LOAD, READONLY, CODE
3 .rodata 00000094 0000a988 0000a988 00003988 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
4 .rwdata 00000124 00010000 0000aa1c 00004000 2**2
CONTENTS, ALLOC, LOAD, DATA, SMALL_DATA
5 .bss 000011f8 00010124 0000ab40 00004124 2**2
ALLOC, SMALL_DATA



Скрипт компоновщика сгенерирован автоматом, я его не менял, вот кусок из него. onchip_memory2_0 - это RAM.

CODE

.bss :
{
__bss_start = ABSOLUTE(.);
PROVIDE (__sbss_start = ABSOLUTE(.));
PROVIDE (___sbss_start = ABSOLUTE(.));

*(.dynsbss)
*(.sbss .sbss.* .gnu.linkonce.sb.*)
*(.sbss2 .sbss2.* .gnu.linkonce.sb2.*)
*(.scommon)

PROVIDE (__sbss_end = ABSOLUTE(.));
PROVIDE (___sbss_end = ABSOLUTE(.));

*(.dynbss)
*(.bss .bss.* .gnu.linkonce.b.*)
*(COMMON)

. = ALIGN(4);
__bss_end = ABSOLUTE(.);
} > onchip_memory2_0


Пробовал писать так: .bss (NOLOAD) : ... - никакого эффекта, ничего не меняется.

Go to the top of the page
 
+Quote Post
DmitryR
сообщение Sep 19 2018, 06:56
Сообщение #2


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

Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770



На странице Linker Script в BSP Editor, в какую область памяти размещён BSS?
Go to the top of the page
 
+Quote Post
Олег Гаврильченк...
сообщение Sep 19 2018, 07:22
Сообщение #3


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

Группа: Участник
Сообщений: 177
Регистрация: 10-02-15
Пользователь №: 85 052



Цитата(DmitryR @ Sep 19 2018, 09:56) *
На странице Linker Script в BSP Editor, в какую область памяти размещён BSS?

В onchip_memory2_0. Это область RAM.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 16th April 2024 - 18:33
Рейтинг@Mail.ru


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