|
|
  |
Сколько памяти нужно для Microblaze |
|
|
|
Jan 9 2014, 10:45
|

Частый гость
 
Группа: Свой
Сообщений: 136
Регистрация: 19-10-10
Из: Киев
Пользователь №: 60 262

|
Доброго времени суток, уважаемые форумчане! Есть у нас в конторе штук несколько плат с Spartan6 LX150T на борту, которые уйдут на списание и демонтаж. Но я немного подумав решил, а не сварганить ли на них реальные имитаторы для тестирования железа которое мы делаем. Решил по-ходу разобраться с микроблейзом. Видится следующая структура: микроблейз с езернетом на котором крутится самый простенький веб брозер, с "мордой", на которой можно в соответствующих полях ставить/снимать галки, которые как-бы для пользователя представляют соответствующие поля регистра управления конкретным имитатором , который висит на шине проца и является уже написанной сущностью имитаторы взаимодействують с внешним миром через 485-й рс. Вроде простая система, но возникает следующий вопрос: возможно ли реализовать поставленные задачи , если доступна только RAM, которая есть на кристалле. Ибо никакой внешней ОЗУшки при проектировании данной борды не было предусмотрено.
Спасибо за ответы.
Удачи artix!
|
|
|
|
|
Jan 9 2014, 11:30
|

Частый гость
 
Группа: Свой
Сообщений: 136
Регистрация: 19-10-10
Из: Киев
Пользователь №: 60 262

|
Цитата(_4afc_ @ Jan 9 2014, 14:05)  У Microblaze нет привязанности к расположению памяти. Если у вас код "вебброзер с мордой" влезет в отведённые BRAM - то нет проблем. Так вопрос собственно в том и заключается: а влезет ли? Я с такими весчами сталкиваюсь впервые поэтому оценить оч. сложно. Стоит ли заморачиваться? Спасибо! Удачи, artix!
|
|
|
|
|
Jan 9 2014, 12:49
|

Частый гость
 
Группа: Свой
Сообщений: 136
Регистрация: 19-10-10
Из: Киев
Пользователь №: 60 262

|
Цитата(Golikov A. @ Jan 9 2014, 15:32)  LwIP на спартане 6 не влазит в брамовую память микроблайза в дефолтном своем состоянии, может если его сильно порезать... Микроблайз до 64К макс под память программ и данных вешает, это как бы память на борту, которая делается и грузиться сама. Все остальные брамы можно собирать в память, но это уже внешняя память, и к ней придется писать загрузчик чтобы из нее работать и так далее...
Вообщем легко и не принужденно не выйдет. Ясно! Спасибо больше!!
|
|
|
|
|
Jan 9 2014, 14:28
|

Профессионал
    
Группа: Свой
Сообщений: 1 262
Регистрация: 13-10-05
Из: Санкт-Петербург
Пользователь №: 9 565

|
Цитата(Golikov A. @ Jan 9 2014, 15:32)  Микроблайз до 64К макс под память программ и данных вешает, это как бы память на борту, которая делается и грузиться сама. Все остальные брамы можно собирать в память, но это уже внешняя память, и к ней придется писать загрузчик чтобы из нее работать и так далее... А вот в теме How to use larger BRAM in a MicroBlaze project? народ уверяет, что и по 300кб памяти в брамах пользует, без дополнительного загрузчика... Я правда пока сей способ не проверял. А по адресу AR# 52063 14.2 - XPS - How can I increase the Spartan-6 Block RAM to 128K даже пример лежит.
|
|
|
|
|
Jan 10 2014, 10:54
|
Участник

Группа: Участник
Сообщений: 51
Регистрация: 16-06-09
Пользователь №: 50 327

|
Ещё одно место где можно поискать лишней памяти -- это микросхема загрузки FPGA. Только вот, это FLASH, а не ОЗУ.
|
|
|
|
|
Jan 20 2014, 12:36
|
Местный
  
Группа: Свой
Сообщений: 210
Регистрация: 4-06-08
Из: Москва
Пользователь №: 38 056

|
Цитата(artix @ Jan 10 2014, 10:38)  2 _4afc_ микроблейз с езернетом на котором крутится самый простенький веб брозер, с "мордой", на которой можно в соответствующих полях ставить/снимать галки, которые как-бы для пользователя представляют соответствующие поля регистра управления конкретным имитатором , который висит на шине проца и является уже написанной сущностью имитаторы взаимодействують с внешним миром через 485-й рс. Вроде простая система, но возникает следующий вопрос: возможно ли реализовать поставленные задачи , если доступна только RAM, которая есть на кристалле. Ибо никакой внешней ОЗУшки при проектировании данной борды не было предусмотрено. Artix, позвольте поинтересоваться, а вам удалось это сделать? Если да, то сколько килобайт брамов у Вас на это дело ушло? Заранее благодарен.
Сообщение отредактировал aabmail - Jan 20 2014, 12:38
|
|
|
|
|
Jan 21 2014, 18:41
|
Местный
  
Группа: Свой
Сообщений: 210
Регистрация: 4-06-08
Из: Москва
Пользователь №: 38 056

|
Цитата(xor.kruger @ Jan 21 2014, 15:28)  Не для холивара, но все же осмелюсь спросить: а зачем вообще писать загрузчик чтобы обращаться к BRAM'ке, бред какой-то  По теме - 4,824 КБ (именно такой объем у LX150T) хватит с головой и даже больше. 4,824 КБит = около 600 кБайт - этого может и не хватить. К примеру, если в SDK 14.5 c помощью визарда сгенерить lwIP-приложение, то оно займет около 800 кБайт. Там конечно есть, что урезать. У меня похожая задача уместиться в 380 кБайт LX75T, реализовав TCP.
|
|
|
|
|
Jan 23 2014, 10:28
|

Местный
  
Группа: Свой
Сообщений: 290
Регистрация: 17-08-08
Из: Чернигов
Пользователь №: 39 647

|
Цитата потому что в дефолтном состоянии памяти у микроблайза в которую можно программу и данные положить 64К максимум. Это той что получается сама без лишних телодвижений, все сверх через доп пляски. Скармливал брам-контроллеру 256КБайт - отлично разводит. Сейчас проект под рукой - 128 КБайт - все отлично линкуется и работает. На худой конец даже если по каким-то причинам "не влазит-не работает-не хочет" можно дополнительно повесить еще брам-контроллер навесить на него блочную память, а в скриптах линковки дописать нужные секции и нужным адресам. Кстати блочную память можно и с под GNU/Linux использовать, предварительно включив в ядре опцию CONFIG_SRAM и описав в dts что-то типа: Код sram: sram@5c000000 { compatible = "mmio-sram"; reg = <0x5c000000 0x40000>; /* 256 KiB SRAM at address 0x5c000000 */ };
Эскизы прикрепленных изображений
|
|
|
|
|
Jan 23 2014, 11:16
|
Гуру
     
Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454

|
Цитата(xor.kruger @ Jan 23 2014, 14:28)  Скармливал брам-контроллеру 256КБайт - отлично разводит. Сейчас проект под рукой - 128 КБайт - все отлично линкуется и работает. На худой конец даже если по каким-то причинам "не влазит-не работает-не хочет" можно дополнительно повесить еще брам-контроллер навесить на него блочную память, а в скриптах линковки дописать нужные секции и нужным адресам. Кстати блочную память можно и с под GNU/Linux использовать, предварительно включив в ядре опцию CONFIG_SRAM и описав в dts что-то типа: Код sram: sram@5c000000 { compatible = "mmio-sram"; reg = <0x5c000000 0x40000>; /* 256 KiB SRAM at address 0x5c000000 */ }; а я чет бился бился, 64 и все... надо будет ручками потом покрутить,
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|