Перейти к содержанию
    

Zynq-7000 vs ZedBoard

Приобрел плату: zedboard.org

 

С Xilinx до этого не работал.

 

Изначально стоит задача сделать устройство сбора данных со скоростного АЦП (100 МГц, 14 бит), сжатие их и отрисовка в виде графика на TFT дисплее 7inch. Для этой задачи и была куплена ZedBoard.

 

Задача состоит из нескольких этапов.

 

1. Прошивка для PL (FPGA) части, которая берет данные с АЦП, жмет и кладет в буфер DDR.

2. Микроконтроллер под управлением ОС с красивым интерфейсом отрисовывает GUI и рисует график из полученных данных.

3. Контроллер иногда должен выполнять DSP-обработку данных.

 

С 1-м этапом все понятно, опыт программирования ПЛИС имеется. Со вторым этапом не понятно, какую ОС нужно выбрать для "красивого" софта. Может есть легкий Linux с FrameBuffer, на котором можно запускать приложения Qt4 ?????

 

P.S.: Запустил пример http://www.zedboard.org/node/428, Ubuntu 11.10 для ZYNQ от Linaro. Здесь с написанием софта проблем быть не должно, однако сама ОС ест по 25 процентов от каждого ядра в режиме простоя. Боюсь, что это слишком жирно для ОС в моей задаче.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Со вторым пунктом никаких проблем нету, поддержка Zynq'ов есть в ванильном ядре линукса. Вкратце можно почитать ссылка

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня сейчас есть как zc702, так и ZedBoard. На обоих поднимал Линукс.

http://wiki.xilinx.com/zynq-linux - тут у них очень все просто. Качаешь исходники ядра и u-boot tools и следуешь инструкциям из Вики. Исходники ядра пригодятся т.к. драйвера придется компилить.

С zc702 все просто. А вот при компиляции u-boot для ZedBoard придется подправить файл "zynq_zc702_config". Нужно PHYS_SDRAM_1_SIZE (1024 * 1024 * 1024) на (512 * 1024 * 1024) исправить. Divecetree лежат для обоих плат в недрах linux-xlnx.

Это один вариант.

 

Второй вариант. Есть такая сборка Xillinux - http://xillybus.com/xillinux. Убунту для вашего Цинка. Я им никогда не пользовался т.к. мне такой зверский функционал пока не нужен.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо всем за ответы.

 

У меня сейчас есть как zc702, так и ZedBoard. На обоих поднимал Линукс.

http://wiki.xilinx.com/zynq-linux - тут у них очень все просто. Качаешь исходники ядра и u-boot tools и следуешь инструкциям из Вики. Исходники ядра пригодятся т.к. драйвера придется компилить.

С zc702 все просто. А вот при компиляции u-boot для ZedBoard придется подправить файл "zynq_zc702_config". Нужно PHYS_SDRAM_1_SIZE (1024 * 1024 * 1024) на (512 * 1024 * 1024) исправить. Divecetree лежат для обоих плат в недрах linux-xlnx.

Это один вариант.

Похоже это то, что надо. Скачал все по этой ссылке, теперь буду разбираться. На сайте производителя есть несколько примеров гуя под Qt4 и описан принцип сборки этой среды. Не совсем понял, что с поддержкой OpenGL ES и при помощи чего (Framebuffer или QEMU) выводится графика в этом линуксе.Сам никогда до этого не сталкивался с Embedded Linux, поэтому просьба просветить ).

Хотелось бы понять, можно ли в конечном итоге получить подобие этого: http://www.youtube.com/watch?v=kP7uvOu9hoQ

Приложение пишутся на десктопе, а запускаются удаленно в режиме отладки через gdb сервер на ZedBoard'e.

 

Второй вариант. Есть такая сборка Xillinux - http://xillybus.com/xillinux. Убунту для вашего Цинка. Я им никогда не пользовался т.к. мне такой зверский функционал пока не нужен.

Я про нее и писал. Жудко жручая система + малось кривовастая. Зато с разработкой приложений проблем нет. Кстати, для информации, образ надо копировать на SD карту именно фирмы SanDisk, с другими не стартует.Боюсь, мне эта система не подойдет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На счет гуя сказать ничего не могу. Я пока до этого не добрался.

Но чисто теоретически, проблем возникнуть не должно. Только установите "arm-xilinx-linux-gnueabi" и компилируйте на десктопе все что угодно.

 

Хотелось бы понять, можно ли в конечном итоге получить подобие этого: http://www.youtube.com/watch?v=kP7uvOu9hoQ

Приложение пишутся на десктопе, а запускаются удаленно в режиме отладки через gdb сервер на ZedBoard'e.

Я примерно так и делаю. Пишу приложения в SDK и компилирую там же.

 

Я про нее и писал. Жудко жручая система + малось кривовастая. Зато с разработкой приложений проблем нет. Кстати, для информации, образ надо копировать на SD карту именно фирмы SanDisk, с другими не стартует.Боюсь, мне эта система не подойдет.

Именно сборку от Xillybus пробовали? И, кстати, пользоваться SD совершенно не обязательно. Хоть через jtag заливайте.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На счет гуя сказать ничего не могу. Я пока до этого не добрался.

Но чисто теоретически, проблем возникнуть не должно. Только установите "arm-xilinx-linux-gnueabi" и компилируйте на десктопе все что угодно.

Я примерно так и делаю. Пишу приложения в SDK и компилирую там же.

Именно сборку от Xillybus пробовали? И, кстати, пользоваться SD совершенно не обязательно. Хоть через jtag заливайте.

Понятно, спасибо за инфо. В общем все замечательно. Есть почти все. Для полного счастья не хватает OpenGL ES, нет на борту видяхи. Нашел, что есть вот такое решение: http://www.logicbricks.com/logicBRICKS/Ref...uick-Start.aspx

GPU для Zynq. Но это уже за деньги судя по всему. По запросу могут предоставить OpenGL ES 1.1 библиотеки.

 

Посмотрел, что я использовал сборку от Linaro: http://www.xilinx.com/university/zynq/demos/index.htm. Скачал Xilinux от Xilibus. Буду пробовать. Саму среду разработки пока не ставил, но для запуска придется. Пора переходить к разработке. :rolleyes:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Установил среду Vivado 2013.1 для этой платы под Ubuntu 12.10 x64. Все стало почти без проблем. Только драйвер для отладчика не стал.

После запуска и нажатия на кнопку Сreate New Project, программа выдает ошибку. Все остальные кнопки работают исправно.

Может кто подскажет, что делать в этом случае?

post-29246-1365099727_thumb.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Разобрался с настройкой среды под Ubuntu. Для работы ставить надо версию 12.04 x64. Тогда многие проблемы сразу исчезают. Причем перед установкой среды надо переключить dash на bash, это описано здесь: http://www.zedboard.org/content/arm-xilinx...eems-be-missing

 

Ядро пока не компилировал, но разобрался как это сделать. Поставил пока готовый линукс, который скачал http://www.wiki.xilinx.com/Zynq+14.5+-+2013.1+Release . В архиве есть скомпилированная версия специально для ZedBoard.

 

С XSDK разобрался и писать приложения под ней для линукса даволно просто, поразила возможность отладки приложений через Ethetnet (для встраиваемых систем это очень удобно), написал несколько, включая и hello_world.

 

Qt4 удалось скомпилировать, удалось настроить QtCreator, однако на плате консольные приложения запускаться не хотят из-за того, что не установил библиотеки Qt4 туда, как и куда это сделать, пока еще не понял.

 

В XPS есть возможность создавать простые периферийные устройства для PL (FPGA-части). Одно из которых - это банк 32-бит регистров до 32 штук. Работа с ними из процессорной части весьма проста. Далее пользовательский HDL файл можно модифицировать под себя.

Собственно вопрос, как и где после этого назначить ножки в PL? Кто уже разобрался, разъясните пожалуйста ход действий?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня расклад такой, правда для микроблайза.

 

В платформ студио сделал через визард проект с банком регистров. Внутри у него общий Файл обертка, файл-модуль доступа к шине (в моем случае АКСИ для микроблайза) и пользовательский файл с прописанным чтением - записью регистров.

 

Дальше я в ISE сделал проект, и туда это все запихал, верхний файл обертку, он подключил все остальные модули. Все написал, отладил, просимулировал.

 

Дальше я опять вернулся в платформ студио, и импортнул созданный модуль, дальше он у меня в микроблайз встраивается. Для цинков я так понимаю подобная схема...

 

Несколько удивляет что надо как то туда - суда лазить, хотя может я еще не разобрался. Но без добавления созданного компонента, - рабочего модуля у меня не получилось, а добавляется компонент через проект созданный в ИСЕ, или как то уж совсем вручную, что крайне не удобно. Через ISE все гораздо удобнее... Если кто просветит как оно по уму делается чтобы все из платформ студи было, буду рад...

 

Есть вариант сразу делать модуль полностью в ISE, а потом затягивать в платформ студио, но визард в студии как то удобнее, именно для получения порегистрового доступа...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...