Jump to content
    

Разработка PCIe

3 hours ago, RobFPGA said:

Приветствую!

Чистый аппаратный блок имеет интерфейс TLP layer.  Соответственно вам придется делать обвязку которая будет формировать/парсить правильные пакеты TLP в соответствии с протоколом PCIe. И если передача данных в направлении из FPGA в PC еще не столь сложна то в обратном направлении  придется попотеть чтобы правильно  выстроить цепочку запрос/ответ.  

Делать свою обвязку для PCIe IP  есть смысл если вам скучно на работе и ближайшие пол-года  вам нечем более заняться :whistle3: Тогда есть смысл потратить это время на изучение потрохов PCIe. 

Удачи! Rob.

А кто какие скорости получал с xdma xilinx? У меня почему-то в режиме axi-stream в устройство скорость в 10 раз больше, чем в PC. 

Share this post


Link to post
Share on other sites

15 minutes ago, dmitry-tomsk said:

А кто какие скорости получал с xdma xilinx?

Так по этому поводу есть даже QuickTake отдельный. Linux - в районе теоретического предела, Windows - в районе 5.5GB/s, сейчас вот работаю над тем, чтобы догнать до теоретического предела.

Share this post


Link to post
Share on other sites

Приветствую!

19 minutes ago, dmitry-tomsk said:

А кто какие скорости получал с xdma xilinx? У меня почему-то в режиме axi-stream в устройство скорость в 10 раз больше, чем в PC.

Большие скорости получали, в обе стороны :wink2:  как минимум %80 от теоретической для PCIe соответствующей конфигурации. 

Удачи! Rob. 

Share this post


Link to post
Share on other sites

1 hour ago, gosha-z said:

Так по этому поводу есть даже QuickTake отдельный. Linux - в районе теоретического предела, Windows - в районе 5.5GB/s, сейчас вот работаю над тем, чтобы догнать до теоретического предела.

 

1 hour ago, gosha-z said:

Так по этому поводу есть даже QuickTake отдельный. Linux - в районе теоретического предела, Windows - в районе 5.5GB/s, сейчас вот работаю над тем, чтобы догнать до теоретического предела.

Спасибо. А как насчёт цифровой подписи драйвера от xilinx? Сколько это стоит, если самому заняться? 

Второй вариант - написать дма самому и jungo windriver, но он стоит 4k$, может такой вариант и хуже будет.

Share this post


Link to post
Share on other sites

Just now, gosha-z said:

WinDriver будет явно хуже. У майкрософта есть пара примеров драйверов с DMA

Я так думаю от драйвера мало что может зависеть - нужно только залочить буфер пользователя, получить дескрипторы страницы и передать их в дма. На скорость влиять не может. Вопрос сколько стоит подписать свой драйвер или xilinx драйвер для официальной продажи софта.

Share this post


Link to post
Share on other sites

1 minute ago, dmitry-tomsk said:

Вопрос сколько стоит подписать свой драйвер или xilinx драйвер для официальной продажи софта.

Гугляндекс Code Signing Certificate.

Share this post


Link to post
Share on other sites

4 minutes ago, gosha-z said:

Гугляндекс Code Signing Certificate.

 

Мне кажется это не то. Одно дело обычный софт для скачивания с интернета, другое дело драйвер. Обычное по можно запустить и так, а драйвер в win10 без подписи не установить просто так.

1 hour ago, RobFPGA said:

Приветствую!

Большие скорости получали, в обе стороны :wink2:  как минимум %80 от теоретической для PCIe соответствующей конфигурации. 

Удачи! Rob. 

Именно с axi-stream или через MM и буфер в ddr?

Share this post


Link to post
Share on other sites

Приветствую!

2 minutes ago, dmitry-tomsk said:

Именно с axi-stream или через MM и буфер в ddr?

Именно axi-stream. Под Linux

Удачи! Rob.

Share this post


Link to post
Share on other sites

4 minutes ago, RobFPGA said:

Приветствую!

Именно axi-stream. Под Linux

Удачи! Rob.

Спасибо, похоже дело именно в драйвере под windows. В самой корке настраивать нечего и ошибиться негде. Похоже лучше самому контроллер написать.

Share this post


Link to post
Share on other sites

Приветствую!

13 minutes ago, dmitry-tomsk said:

На сайте jungo написано, что в версии 12.3 есть пример для xdma. Кто-нибудь знает работает ли он с axi-stream режимом?

Вообще то  режим работы драйвера определяется от того как вы корку сконфигурируете - при этом физически  работа с DMA со стороны драйвера хоста одинакова, разве что физ-адрес в FPGA задавать не нужно. Поэтому странно что у вас разница скоростей такая большая.

Удачи! Rob.

Share this post


Link to post
Share on other sites

4 minutes ago, RobFPGA said:

Приветствую!

Вообще то  режим работы драйвера определяется от того как вы корку сконфигурируете - при этом физически  работа с DMA со стороны драйвера хоста одинакова, разве что физ-адрес в FPGA задавать не нужно. Поэтому странно что у вас разница скоростей такая большая.

Удачи! Rob.

На форуме xilinx тоже у кого-то такая же проблема. Ссылаются на то, что код драйвера для стрима и памяти разный. Как исправить не ответа.

Share this post


Link to post
Share on other sites

17 hours ago, dmitry-tomsk said:

Я так думаю от драйвера мало что может зависеть - нужно только залочить буфер пользователя, получить дескрипторы страницы и передать их в дма. На скорость влиять не может

на скорость корки не влияет, но драйвер уже как принимающая сторона, от него уже весь цикл передачи данных сильно зависит. От того как его напишешь. Как с памятью работает и тд. Если большой поток принимать, чуть запнулся драйвер и уже задропал пакеты.

Edited by new123

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...