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

akorud

Свой
  • Постов

    203
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный

Информация о akorud

  • Звание
    Местный
    Местный

Контакты

  • Сайт
    Array
  • ICQ
    Array

Информация

  • Город
    Array
  1. Извините, тогда думаю сюда https://www.xilinx.com/products/intellectua...ty/axi_dma.html Через AXI-Stream к нему будет приходить пакет который надо передать на хост и оно используя дескрипторы (предварительно заполненные драйвером) будет через PCIe записывать данные прямо в память хоста. А дальше дело драйвера.
  2. Начинать надо с https://www.xilinx.com/products/intellectua...y/axi_pcie.html Для начала даже драйвера не надо - таким вот способом http://billfarrow.blogspot.com/2010/09/use...pci-memory.html можно легко инициировать транзакции на шине "по той стороне" PCIe.
  3. Под Linux драйвер для Интела - полностью открыт, считается одним из лучших драйверов сетевых карт. У ТС нет чипов PHY - там SFP+. Работает сразу, только надо помнить, что Xilinx не поддерживает модули LR. А даже и если был бы чип - что ж там сложного? DMA надо, к сожалению у Xilinx нет бесплатного (в новых Виртексах вроде есть аппаратное встроенное в PCIe), надо использовать что-то подобное http://nwlogic.com/packetdma/, кстати там сразу и нарисована схема того, что Вы ищете :-). Коммерческое, но на фоне лицензии на 10G не сильно дорого :-) В эмуляцию стандартного контроллера я бы не игрался, разве что действительно очень надо.
  4. У нас есть похожий дизайн, честно - не измеряли но могу глянуть на схему, точно помню что там LDO. При проектировании использовалась оценка XPE
  5. Из моего опыта - заметно (десятки %) влияет только частота процессора. Лучшим решением оказалось собрать компьютер из компонентов игрового класса и разогнать сколько получится.
  6. Контроллер ничего не будет думать. Он просто запишет 8 бит и ожидает получить их в том же порядке читая. А в какую конкретно ячейку памяти попадет бит (в границах группы) ему в общем-то все равно.
  7. В xdc добавляете (пример из моего проекта). set_clock_groups -asynchronous \ -group [get_clocks clk_27M] \ -group [get_clocks clk_36M] \ -group [get_clocks clk_628M] \ -group [get_clocks clk_324M] \ -group [get_clocks clk_162M] \ -group [get_clocks gt_txoutclk_sgmii -include_generated_clocks]
  8. У Xilinx симуляция на одном ядре. В Vivado P&R (но не синтез) наконец научился загружать все, до чего дотянется. Приятно смотреть. Единственный способ заметно ускорить симуляцию и синтез - собрать игровой компьютер (без графики - хотя если есть бюджет то и поиграть можно ;-) и разгонять по мегагерцах сколько получится. У нас получилось ощутимо сократить время сборки.
  9. Ну написать простую программку на microblaze - UART консоль с командами (например команда "mr" прочитает память и напишет содержимое на консоли). Что-то Вы как-то путаете. Если используете Bus2IP то насколько я помню к AXI напрямую писать ничего не надо. Если непосредственно AXI - вся документация свободно доступна на сайте ARM - читайте и делайте по стандарту - увы, нет другого выхода. Если мешаете все в кучу - как мне кажется ничем хорошим не кончится. Что касается количества тактов - AXI ориентирована на пакетную передачу и накладные расходы на передачу одного байта весьма высоки, вполне может быть 40 тактов. В стандарте хорошо описано (и даже нарисовано :-) что и как происходит.
  10. Если Вы подключите 2 мастера к одной "колонке" AXI арбитр будет сгенерирован автоматически. Далее просто из своего мастера пишите в любую память на AXI (согласно адресации на шине). Только я смотрю у Вас ее нет - создайте что-то вроде AXI BRAM если не хочется с DDR возиться.
  11. 1. По монстрам Bus2IP и IP2Bus я Вам уже не помогу - последний раз работал в ними года 3 назад и уже все забыл. 2. Vivado -> Tools -> "Create and package IP" -> и Next, Next, Next... :-) 3. Вам известно, а нам нет. Вы кажется даже не писали, что он к GPIO подключен. Далее, на приложенной картинке в видимом времени транзакции на шине AXI нет от слова вообще. Да и зачем вам 2 шины? Куда проще своим мастером писать в память видимую Microblaze и смотреть записалось ли.
  12. Если используется Bus2IP i IP2Bus то о AXI вам, в общем случае, знать не нужно и напрямую управлять ее сигналами тоже. IP2Bus конвертирует канал записи AXI master в "локальную шину", которая по задумке программистов Xilinx проще для понимания. Но они сами уже отказались от таких странностей и в Vivado все куда проще. Готовый пример AXI master по внешнему сигналу (ваша кнопка) пишет заданные данные по заданному адресу. А зажжется ли светодиод - никто вам не скажет, так как неизвестно как и куда он подключен. По второму вопросу ничем помочь не могу, так как не помню использовал ли Chipscope в системах с Microblaze и уж точно не использовал платы KC705. Да, очень рекомендую пройти Lab 4 из UG940 - вот прямо в режиме "делай раз, делай два" :-)
  13. Да Ну например http://stackoverflow.com/questions/1796669...-embedded-linux И книга Embedded Linux Primer: A Practical Real-World Approach U-Boot. Если можно его использовать - то нужно его использовать. Нет
  14. Используем, исключительно беспроблемный чип, никаких нареканий.
×
×
  • Создать...