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

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

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

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

|
Код а я чет бился бился, 64 и все... надо будет ручками потом покрутить, Я в старых версиях EDK и SDK раньше долго боролся с проблемами которые связаны с генерацией файлов автоматически (тобиж индусскими скриптами). Сейчас использую 14.6 - но проблемы еще есть. Там где можно описать файлы самому ручками - пытаюсь описывать  У Вас какая версия?
|
|
|
|
|
Jan 23 2014, 16:04
|
Местный
  
Группа: Свой
Сообщений: 210
Регистрация: 4-06-08
Из: Москва
Пользователь №: 38 056

|
У меня сегодня получилось в EDK14.5: 1. Для Спартан-6 добавить 3 брам-контроллера, каждый максимум на 64 кБайт. Больше не дает. 2. Для Кинтекс-7 добавить много брам контроллеров, каждый максимум на 128 кБайт. Больше не дает. При этом в линкер-скрипте можно объединять брам-контроллеры в общую память и размещать в ней сегменты elf-файла как угодно. Поэтому, как я понял, нет смысла пытаться увеличивать память в одном брам-контроллере. Привожу пример с объединением двух контроллеров в линкер-скрипте. Код MEMORY { microblaze_0_i_bram_ctrl_microblaze_0_d_bram_ctrl : ORIGIN = 0x00000050, LENGTH = 0x0001FFB0 /*axi_bram_ctrl_0_S_AXI_BASEADDR : ORIGIN = 0x41420000, LENGTH = 0x00020000 axi_bram_ctrl_1_S_AXI_BASEADDR : ORIGIN = 0x41440000, LENGTH = 0x00020000 axi_bram_ctrl_2_S_AXI_BASEADDR : ORIGIN = 0x41460000, LENGTH = 0x00020000*/ axi_bram_ctrl_a_S_AXI_BASEADDR : ORIGIN = 0x41420000, LENGTH = 0x00060000 }
|
|
|
|
|
Feb 13 2014, 10:19
|
Местный
  
Группа: Свой
Сообщений: 210
Регистрация: 4-06-08
Из: Москва
Пользователь №: 38 056

|
Уважаемые коллеги! Всем, кого интересует этот вопрос, спешу сообщить, что вариант с объединением нескольких контроллеров памяти в linker-скрипте тупиковый. ELF хоть и создается, elfcheck хоть и проходит, а вот data2mem ругается ((. Так что тема использования дополнительных BRAM по-прежнему актуальна. Цитата(aabmail @ Jan 23 2014, 20:04)  Привожу пример с объединением двух контроллеров в линкер-скрипте. Код MEMORY { microblaze_0_i_bram_ctrl_microblaze_0_d_bram_ctrl : ORIGIN = 0x00000050, LENGTH = 0x0001FFB0 /*axi_bram_ctrl_0_S_AXI_BASEADDR : ORIGIN = 0x41420000, LENGTH = 0x00020000 axi_bram_ctrl_1_S_AXI_BASEADDR : ORIGIN = 0x41440000, LENGTH = 0x00020000 axi_bram_ctrl_2_S_AXI_BASEADDR : ORIGIN = 0x41460000, LENGTH = 0x00020000*/ axi_bram_ctrl_a_S_AXI_BASEADDR : ORIGIN = 0x41420000, LENGTH = 0x00060000 }
|
|
|
|
|
Feb 16 2014, 17:27
|
Знающий
   
Группа: Свой
Сообщений: 716
Регистрация: 27-05-05
Из: Kyiv
Пользователь №: 5 454

|
У меня есть схожий вопрос, задам здесь. Текст программы рос, рос и вырос. Теперь не помещается в сегмент ".text". Попробовал все сегменты перегнать в отдельный контроллер BRAM. Все равно, не достаточно места. Порезал "ненужные" функции, программа работает со сбоями. Есть подозрение, что стек наползает на код или данные. Каким образом перекинуть часть функций из секции ".text"? Может еще какие либо секции программ разместить в основном контроллере BRAM? С точки зрения быстродействия или еще по каим либо соображениям?
Эскизы прикрепленных изображений
|
|
|
|
Сообщений в этой теме
artix Сколько памяти нужно для Microblaze Jan 9 2014, 10:45 _4afc_ У Microblaze нет привязанности к расположению памя... Jan 9 2014, 11:05 artix Цитата(_4afc_ @ Jan 9 2014, 14:05) У Micr... Jan 9 2014, 11:30 Golikov A. LwIP на спартане 6 не влазит в брамовую память мик... Jan 9 2014, 12:32 artix Цитата(Golikov A. @ Jan 9 2014, 15:32) Lw... Jan 9 2014, 12:49 _4afc_ Цитата(Golikov A. @ Jan 9 2014, 15:32) Ми... Jan 9 2014, 14:28  artix 2 _4afc_
Спасибо большое за ссылки!!!... Jan 10 2014, 06:38   aabmail Цитата(artix @ Jan 10 2014, 10:38) 2 _4af... Jan 20 2014, 12:36 Дварфик Ещё одно место где можно поискать лишней памяти --... Jan 10 2014, 10:54 xor.kruger Не для холивара, но все же осмелюсь спросить: а за... Jan 21 2014, 11:28 aabmail Цитата(xor.kruger @ Jan 21 2014, 15:28) Н... Jan 21 2014, 18:41  Corvus В принципе, уложиться в BRAM можно (есть такой печ... Jan 22 2014, 08:27 Golikov A. потому что в дефолтном состоянии памяти у микробла... Jan 21 2014, 16:00 xor.kruger Цитатапотому что в дефолтном состоянии памяти у ми... Jan 23 2014, 10:28 Golikov A. Цитата(xor.kruger @ Jan 23 2014, 14:28) С... Jan 23 2014, 11:16    aabmail Я бы посоветовал следующее:
1. Создать еще хотя б... Feb 16 2014, 22:19     misyachniy Цитата(aabmail @ Feb 17 2014, 00:19) Я бы... Feb 17 2014, 08:54 Golikov A. у меня 14.4 ваще... я не модный... вот потому наве... Jan 23 2014, 17:29 _4afc_ Цитата(Golikov A. @ Jan 23 2014, 20:29) п... Jan 24 2014, 08:55 aabmail Цитата(Golikov A. @ Jan 23 2014, 21:29) у... Jan 24 2014, 09:36  Golikov A. Цитата(aabmail @ Jan 24 2014, 13:36) В ка... Jan 24 2014, 13:21 xor.kruger Цитатау меня 14.4 ваще... я не модный... вот потом... Jan 24 2014, 11:29 aabmail Выделить более 64 кБайт для программы microBlaze ... Mar 27 2014, 14:35 pepelats Здравствуйте,
Скажете, сколько может весить самая... Apr 1 2014, 05:41 Golikov A. как только вы используете что-то типа printf сразу... Apr 1 2014, 06:09 pepelats Цитата(Golikov A. @ Apr 1 2014, 13:09) ка... Apr 1 2014, 06:36 aabmail В таких случаях неплохо создать и посмотреть MAP-ф... Apr 1 2014, 07:50 pepelats Цитата(aabmail @ Apr 1 2014, 14:50) В так... Apr 1 2014, 10:57  aabmail Цитата(pepelats @ Apr 1 2014, 14:57) В ит... Apr 1 2014, 15:39 Golikov A. чет 48 КБайт много, точно столько? на hello world?... Apr 1 2014, 11:52 pepelats Цитата(Golikov A. @ Apr 1 2014, 18:52) че... Apr 1 2014, 23:32 dm.pogrebnoy Да там похоже драйвера от периферии подцепились. ... Apr 1 2014, 15:14 Golikov A. думаю тут где то нолик лишний, или в линкере чего-... Apr 1 2014, 15:28 Golikov A. погодите погодите!
у вас размер программки 12 ... Apr 2 2014, 03:33 pepelats Цитата(Golikov A. @ Apr 2 2014, 10:33) по... Apr 2 2014, 04:16 Krys Цитата(Golikov A. @ Apr 2 2014, 09:33) om... Dec 18 2014, 09:37 Golikov A. на проект правой кнопкой
C/C++ Build settings
Micr... Apr 2 2014, 06:16 pepelats Цитата(Golikov A. @ Apr 2 2014, 13:16) ну... Apr 2 2014, 06:41 Golikov A. ЦитатаНо в любом случае все это пришлось бы размещ... Apr 2 2014, 07:02 pepelats Цитата(Golikov A. @ Apr 2 2014, 14:02) в ... Apr 2 2014, 09:33  aabmail Цитата(pepelats @ Apr 2 2014, 13:33) Кста... Apr 2 2014, 13:26 Golikov A. ЦитатаЭто точно? Насколько я себе представлял, что... Apr 2 2014, 12:13 pepelats Цитата(Golikov A. @ Apr 2 2014, 19:13) он... Apr 2 2014, 23:43 Golikov A. вообще секция текс - это и есть исполняемый код.
... Dec 18 2014, 12:58 Krys Цитата(Golikov A. @ Dec 18 2014, 18:58) в... Dec 19 2014, 03:24 Golikov A. Взяли проц с программой, подключились дебагером и ... Dec 19 2014, 06:44 Golikov A. --------------------------------------------------... Dec 19 2014, 07:49 Krys Коллеги, прошу взглянуть на тему из плисочного раз... Dec 22 2014, 04:30
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|