Jump to content

    
Sign in to follow this  
Reffum2

MAX10 NIOS. Секция .bss почему-то загружается во FLASH UFM

Recommended Posts

Использую Altera MAX10. Quartus 16.1. Код программы NIOS записываю в UFM.

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

 

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.

 

    
.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) : ... - никакого эффекта, ничего не меняется.

 

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this