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

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> Перенос проекта с DDR3 в BRAM на microblaze
Golikov A.
сообщение Aug 1 2014, 05:37
Сообщение #16


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



Цитата
Он и не мог бы быть включен при отсутствии DDR

с чего это? Все весящие на адресном шине с кешированием может кешироваться. А потом независимо от того есть такое или нет, кеш может быть включен в процессоре или выключен, как блок. То есть если сказать что кеша не будет, то проц отдаст кучу брамов.
Go to the top of the page
 
+Quote Post
vv_
сообщение Aug 1 2014, 07:43
Сообщение #17


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 24-06-14
Пользователь №: 82 043



Цитата(aabmail @ Jul 31 2014, 12:15) *
Сегмент .text, .init, .fini можно располагать только в памяти на шине LMB.
Остальные сегменты можно располагать и в LMB, и в AXI.


Какой тогда смысл от axi bram, если основной листинг программы лежит в text?
Спасибо.
Go to the top of the page
 
+Quote Post
akorud
сообщение Aug 1 2014, 08:13
Сообщение #18


Местный
***

Группа: Свой
Сообщений: 203
Регистрация: 12-11-10
Из: Poland
Пользователь №: 60 842



Цитата(vv_ @ Aug 1 2014, 09:43) *
Какой тогда смысл от axi bram, если основной листинг программы лежит в text?
Спасибо.

.text можно на AXI, но процессор туда сам не пойдет - надо его носом ткнуть. И сделать это должна программа .text которой находится на LMB - как правило бутлоадер.
Go to the top of the page
 
+Quote Post
aabmail
сообщение Aug 1 2014, 09:01
Сообщение #19


Местный
***

Группа: Свой
Сообщений: 210
Регистрация: 4-06-08
Из: Москва
Пользователь №: 38 056



Цитата(Golikov A. @ Aug 1 2014, 09:37) *
с чего это? Все весящие на адресном шине с кешированием может кешироваться. А потом независимо от того есть такое или нет, кеш может быть включен в процессоре или выключен, как блок. То есть если сказать что кеша не будет, то проц отдаст кучу брамов.


Ок. Действительно кеш в процессоре включить можно. Правда, если запустить Base System Builder, то при отсутствии внешней памяти кеш недоступен (ну это ладно).
Тогда вопрос возникает, стоит ли делать кеш в случае, если BRAMs используются как внешняя память?
Go to the top of the page
 
+Quote Post
akorud
сообщение Aug 1 2014, 09:41
Сообщение #20


Местный
***

Группа: Свой
Сообщений: 203
Регистрация: 12-11-10
Из: Poland
Пользователь №: 60 842



Цитата(aabmail @ Aug 1 2014, 11:01) *
Ок. Действительно кеш в процессоре включить можно. Правда, если запустить Base System Builder, то при отсутствии внешней памяти кеш недоступен (ну это ладно).
Тогда вопрос возникает, стоит ли делать кеш в случае, если BRAMs используются как внешняя память?

Может помочь, т.к. транзакция AXI достаточно "дорогая", чтоб прочитать одно слово надо делать дополнительные телодвижения.
Из более экзотических примеров - если шина интенсивно используется для DMA и процессор имеет низкий приоритет - кеш тоже поможет.
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Aug 1 2014, 13:32
Сообщение #21


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



все же БРАМ через АКСи сильно быстрее ДДР (как мне показалось), так что можно кеш сделать минимальным. Вот прога в ДДР без кеша - ваше стоит, а тут может и поедетsm.gif
Go to the top of the page
 
+Quote Post
vv_
сообщение Aug 8 2014, 04:10
Сообщение #22


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 24-06-14
Пользователь №: 82 043



Спасибо за советы!
Все работает) Единственное, столкнулся с проблемой, что блок .text не влазит ни в один раздел полностью. Его размер около 153 кб, а максимальный размер одного раздела BRAM можно сделать до 128кб. Оптимизировать код почти на 30кб, это довольно трудоёмкая задача. Есть ли возможность разделить блок .text на 2 блока AXI BRAM или формировать 2 раздела *.text и раскидывать их по разным AXI BRAM?
Go to the top of the page
 
+Quote Post
aabmail
сообщение Aug 8 2014, 09:49
Сообщение #23


Местный
***

Группа: Свой
Сообщений: 210
Регистрация: 4-06-08
Из: Москва
Пользователь №: 38 056



Цитата(vv_ @ Aug 8 2014, 08:10) *
Спасибо за советы!
Все работает) ?


Вы booloader сделали?
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Aug 8 2014, 12:42
Сообщение #24


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



судя по тому что хотят секцию текст затолкать в 128 Кбайт, то - нетsm.gif

П.С. дебуг инфу отключите, и printff, сразу станет легче секция...
Go to the top of the page
 
+Quote Post
vv_
сообщение Aug 12 2014, 11:23
Сообщение #25


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 24-06-14
Пользователь №: 82 043



Цитата(Golikov A. @ Aug 8 2014, 16:42) *
судя по тому что хотят секцию текст затолкать в 128 Кбайт, то - нетsm.gif

П.С. дебуг инфу отключите, и printff, сразу станет легче секция...


Дебаг отключил. Пока блок текста весит 175 кб. Проблема в том, что у меня используется в проекте управление через консоль. простое вычленение printf не спасёт, потому что используются библиотеки stdio и stdargs. Они сами по себе довольно жирные. Наверняка ведь есть какие то технологии хранения блока .text в разных адресных пространствах.
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Aug 12 2014, 12:15
Сообщение #26


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



по идее нет, ведь в нем же адресация и частенько она относительная.... если его по разной памяти распихивать это все надо как-то учитывать. Не знаю есть ли такая магия в еклипсе что все это собирает....
Go to the top of the page
 
+Quote Post

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

 


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


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