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

new123

Участник
  • Постов

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

  • Посещение

Весь контент new123


  1. Ubuntu PCIe remount - как?

    Давайте больше данных ) Во время старта ПК, bios начинает через какое то время проводить pcie enumeration, он там обычно пишет слева внизу. У платы в этот момент должно быть готово питание и она должна с этого момента в течении 100млсек пройти обучение. Такой вроде стандарт. Чтобы плата умела при подаче питания пройти enum, как минимум она должна уметь hot plug через свой пин делать и линукс должен быть тоже сконфигурирован. Надо проверить вводные данные.
  2. Ubuntu PCIe remount - как?

    вы же сами ответ написали ) echo 1 > /sys/bus/pci/rescan если плата до этого уже была на pcie, то желательно перед этим сделать ее remove таким же способом echo 1 > /sys/bus/<путь до платы>/remove или echo 1 > /sys/bus/<путь до платы>/unbind соответственно, если на нее подцеплен еще драйвер, то и его заранее выгрузить желательно, чтоб ресурсы отдал
  3. делал эксперимент. На альтере со стороны линукс все прооптимизировал, чтобы не было никаких доступов к памяти и тд. И начал нон стоп писать в pcie счетчик 4-х байтовый. В ПЛИС регистрировал счетчик и пропуски. Цель была - летенси записи померить. Можно было достичь пропуска, но сложно )
  4. я пока сам докрутил. Но опять же, возможно мне надо более глубже его репо просмотреть, минут 15 по свежему побегал, пока не нашел
  5. phy мы подразумеваем альтеровский? Тогда примерно так на RX: PHY rgmii ----> MAC rgmii, MAC rx axi -----> <обработчик пакетов> Тогда примерно так на TX: UDP out m_axi ----> MAX tx_axi, tx_rgmii ----> PHY rgmii это все глобально образно, понятно, что нужна более детальная проработка, там вон на UDP еще нужно подать IP заголовки и тд. адаптер avalon -> axi понадобится, если нужно задействовать pcie. у альтеры весь PHY на авалоне, а у Форенчича все на axi
  6. щас гляну, как то упустил из вида ) я даже не знаю с какого бока начать отвечать ) там реализация полнценной сетевой карты, начиная от своего dma движка, заканчивая маком и своим драйвером. что из этого вставить? наверняка к циклону вы приделаете дма движок от альтеры. ну а так да, если сделать адаптер axi ==> avalon и обратно, то можно пробовать прикрутить процентов 40-60 исходников из директории rtl ) lib там тоже надо, там у них свои нужные реализации своих фифошек и тд ага спасибо. Давно я не обновлял репо ) vlan и другие всякие штуки до IP кстати до сих пор не поддерживает ни на одном уровне.
  7. активно его юзаю, но там вроде нет tcp стэка. И udp нет. реализован только полноценный ethernet еще он больше под xil с их axi
  8. Не открывается ссылка под санкциями ) Но там смотрю обычный Ethernet MAC. Если под словом "реализовать", имеется ввиду генерация пакетов udp, tcp, то у интела вроде не было таких корок. Все приходится делать самому. Особенно весь tcp стэк
  9. Ну раз вы уверены, что транзакций не было, тогда можно мой совет про xilinx api gpio опустить. Я честно говоря, думал, что у вас уже давно драйвер написан, у меня сложилось такое мнение по ветке темы. Тогда наверное стоит накатать драйвер, хотя бы ту часть, которая конфигурирует pcie драйвер с устройством, там как раз конфигурируются и BAR. Я сам даже не пробовал без драйвера замапиться на resource0, не знаю какое будет поведение.
  10. Мне сейчас не с руки открывать виваду, но раз пока никто не написал, позволю дать совет. Если задача выловить новые значения на плис, упростите для начала задачу. Зацепите на нужный акси корку gpio, настройте ее на заданное смещение, кратное 4 или 16. И со стороны map пишите в это смещение. Gpio автоматом должен обновиться, без всяких своих транзакций
  11. проблема какая? пишите в map и не видно новых значений в плис?
  12. через map из user_space проблем не должно быть. Испытано годами уже, правда не xilinx. Посмотрел суть теста, вы там пишите и читаете по 1,2,4 байта, не понятно тогда из ваших слов, 0 при повторном обращении читается при том же доступе? (например постоянно читаете 4 байта из одного адреса или чередуете 4-2 байта).
  13. надо определиться какой механизм задействовать. Или DMA или BAR. BAR для пробы в разы проще, но подходит для малых пересылок, примерно до 64байт, дальше выигрывает DMA. Из драйвера пишем в BAR (если доступ нужен из user space, то пишем в файл /bus/pci/../resourceX Потом это дело на нужном AXI читаем В обратную сторону так же.
  14. Чтобы в линуксе просто стартануть драйвер и подцепить железяку, для начала из конфига нужен просто VID и DID, они есть в самой корке. Чтобы просто стартануть PCIE чисто проверить, без драйвера командой lspci, конфиг на этом этапе пока не нужен
  15. в моделсиме я уже только подсматриваю ) а всю симуляцию я перевожу на тестовые окружения на других языках. пока вывернулся, что по струткурам накатал некий конвертер, который создает add wave c -label и векторами
  16. Форумчане привет. 1) При симуляции получаю vcd файл через вызов $dumpvars initial begin $dumpvars (1, instance) end 2) потом конвертирую его в wlf vcd2wlf dump.vcd dump.wlf 3) Подгружаю его в моделсиме OpenFile dump.wlf По итоге теряю все плюшки SystemVerilog, а именно стуктурки, перечисления в сигналах. Просто выводит мне шины. Может кто сталкивался, как бы мне его упросить сохранять их или быть может кто знает, может как нибудь через tcl можно бы было заммапить структуры на эти шины, как enum в -radix
  17. Под линуксом это lspci безоговорочно. Вроде под виндой аналог есть https://eternallybored.org/misc/pciutils/
  18. вы погуглите еще, это я первое что скинул. Я помню, что у меня лет 5 назад была такая штука. И вроде бы можно было и назначением питания решить все. Мне кажется тут от чипа зависит
  19. Вроде тема известная, что под LVDS одно напряжение, а у банка оказалось другое. И гуглится легко. Как пример https://electronix.ru/forum2/index.php?app=forums&module=forums&controller=topic&id=41666
  20. завтра с утра еще раз мануал перекурю. У меня как то прям без проблем в dsp формула залезала. Вот только не помню, юзал ли я еще dsp ip core или нет. И есть ли она для пятерки или только для десятки. Вы только имейте ввиду, что dsp расположены же в определенных местах, это надо цепи туда довести, потом от туда забрать. Это хорошо, если чип пустой и можно пихать логику куда хочешь, а если подзабит, то можно и по времянке не пролезть, возможнои придется ручным размещением заниматься. Быть может это умножение и на logic сделать.
  21. у вас мануал от Quartus II, но насколько помню под пятерку можно уже и Prime, если вдруг вы его поставили, то по мануалу там чуть другой параметр. https://www.intel.com/content/www/us/en/docs/programmable/683122/18-1/signal-level-attribute.html#mwh1409960001532__example_B8DC8B3F5A6F472AB2C34C90FC07D0C1 Если сайт не открывается, то прикладываю скрин от себя еще добавлю, что на Verilog я делал, нормально назначало. Даже сам назначал на какой dsp вести сигналы
  22. я в этом слаб конечно ) но параллельный импорт вроде разрешат вот вот ) наверняка послабсления будут
  23. мне кажется, на taobao в цепочке будет 2-3 посредника. Ну и в китайском чатике можно не плохо поторговаться с ценой
  24. Добавлю к первому своету, правда не известно какая версия Quartus, но поменять имена блоков в platform designer на более короткие
  25. У вас версия компилятора немного старовата. Поэтому такой тип не поддерживает. long long вроде идет с 4.2.2 или 4.2.5. Можно заменить на uint64_t update. Фигню сказал. Нужно стандарт поднять хотя бы до 99. Как это сделать, гляну у себя чуть позже
×
×
  • Создать...