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

 
 
 
Reply to this topicStart new topic
> Ошибка в применении Microblaze, при превышении программой размера 4кб
confflex
сообщение Sep 14 2007, 14:00
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 29
Регистрация: 19-11-05
Пользователь №: 11 082



Использую Microblaze c памятью на ram-блоках размером 8кб. До какого то критического момента компиляция сишной проги проходит нормально:

mb-size TestApp/executable.elf
text data bss dec hex filename
3276 789 8 4073 fe9 TestApp/executable.elf
Done.

При добавлении кода в исходник, возникает ошибка (думаю, что при превышении 4кб):

/cygdrive/c/EDK/gnu/microblaze/nt/bin/../lib/gcc/microblaze/3.4.1/../../../../microblaze/bin/ld.real: region inst_bus_cntlr_data_bus_cntlr is full (TestApp/executable.elf section bss_stack)
collect2: ld returned 1 exit status
make: *** [TestApp/executable.elf] Error 1
Done.

Увеличение памяти в 2 раза не помогает.

Может кто подскажет?!
Go to the top of the page
 
+Quote Post
KirillS
сообщение Sep 14 2007, 21:09
Сообщение #2


Участник
*

Группа: Новичок
Сообщений: 44
Регистрация: 10-10-06
Пользователь №: 21 161



Цитата(confflex @ Sep 14 2007, 16:00) *
Использую Microblaze c памятью на ram-блоках размером 8кб. До какого то критического момента компиляция сишной проги проходит нормально:

mb-size TestApp/executable.elf
text data bss dec hex filename
3276 789 8 4073 fe9 TestApp/executable.elf
Done.

При добавлении кода в исходник, возникает ошибка (думаю, что при превышении 4кб):

/cygdrive/c/EDK/gnu/microblaze/nt/bin/../lib/gcc/microblaze/3.4.1/../../../../microblaze/bin/ld.real: region inst_bus_cntlr_data_bus_cntlr is full (TestApp/executable.elf section bss_stack)
collect2: ld returned 1 exit status
make: *** [TestApp/executable.elf] Error 1
Done.

Увеличение памяти в 2 раза не помогает.

Может кто подскажет?!


Я бы прежде всего посмотрел бы на аллокацию секций (bss, text, stack, heap) блокам памяти - что куда линкер пытается положить.
Открыть XPS, Software->Generate Linker Script... там всё написано.

Кстати, что это за ram-блок размером 8кб - BRAM ?


--------------------
Some days you eat the bear. Some days the bear eats you.
Go to the top of the page
 
+Quote Post
confflex
сообщение Sep 15 2007, 08:21
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 29
Регистрация: 19-11-05
Пользователь №: 11 082



Цитата(KirillS @ Sep 15 2007, 01:09) *
Я бы прежде всего посмотрел бы на аллокацию секций (bss, text, stack, heap) блокам памяти - что куда линкер пытается положить.
Открыть XPS, Software->Generate Linker Script... там всё написано.

Кстати, что это за ram-блок размером 8кб - BRAM ?


Ничего не понимаю...
После выполнения Generate Linker Script стало нормально компилиться, злосчастный предел в 4кб преодолён.
8 кб памяти в Spartan3 - 4 рамблока.
Хоть и ничего пока не понял, что это было, всё равно, большое спасибо!!!
Go to the top of the page
 
+Quote Post
KirillS
сообщение Sep 17 2007, 17:46
Сообщение #4


Участник
*

Группа: Новичок
Сообщений: 44
Регистрация: 10-10-06
Пользователь №: 21 161



Цитата(confflex @ Sep 15 2007, 10:21) *
Ничего не понимаю...
После выполнения Generate Linker Script стало нормально компилиться, злосчастный предел в 4кб преодолён.
8 кб памяти в Spartan3 - 4 рамблока.
Хоть и ничего пока не понял, что это было, всё равно, большое спасибо!!!

Xilinx EDK - одна большая загадка.
Наверное, linker script (where memory allocation is done) был кривой...


--------------------
Some days you eat the bear. Some days the bear eats you.
Go to the top of the page
 
+Quote Post

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

 


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


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