Jump to content

    
Sign in to follow this  

Recommended Posts

2 minutes ago, new123 said:

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

 

 

Не разбираюсь в WDDK, но по идее если ввод данных в буфер компьютера 256 МБ, то прерывания пойдут с частотой до 10 Гц, что любой драйвер переварит. Вопрос в том где xdma хранит дескрипторы страниц, может в этом её слабое место?

Share this post


Link to post
Share on other sites
20 minutes ago, dmitry-tomsk said:

Вопрос в том где xdma хранит дескрипторы страниц, может в этом её слабое место?

я перечитал тему, я немного не по теме влез. Но все равно.
Вы похоже столкнулись с проблемой, почему в fpga быстрее чем из нее. А какой механизм извещения о новых пакетах? Прерывания? Или что то другое. А то вдруг как я в первой версии своей, извещал через BAR (так там по любому запись в BAR в разы быстрее, чем чтение со стороны PC) Когда я с таким гемороем столкнулся, я начал нон стоп торпедировать карту событиями и регистрировать внутренний счетчик. И наоборот. И смотрел насколько постоянен интервал.

 

Если изначально интервал счетчика больший, а потом сокращается и становится константным, то речь идет о предкешировании. То есть, когда вы сделаете 100 подряд вызовов одного и того же, все необходимое будет сидеть в кеше проца и будет исполняться быстро. А при редких вызовах драйверу приходится доставать данные из памяти, или кеш L3. Вообще, когда драйверу (любому другому приложению) нужно работать с памятью, это самое узкое место. В такие моменты я расставляю кучу наносекундных счетчиков и смотрю где плывет тайминг. Это как простое решение, сложнее - это профилирование. 

 

Вообще это достаточно специфичная тема. Нужно погружаться. Раскидывать прерывания по ядрам, раскочегаривать ядра на максимум (не знаю как это в Windows), не дать им засыпать, сбрасывать частоту. И запускать тесты. А то вдруг еще и ядра спят.

Edited by new123

Share this post


Link to post
Share on other sites
1 hour ago, shide_3 said:

Вы из России пробовали? )

да. У меня плагин стоит. 

Потом я открыл firefox браузер без плагина и тоже открылось. Даже перебросило в ru зону

Edited by new123

Share this post


Link to post
Share on other sites

В тему XDMA (и PCIE) есть полезный документ, за авторством Roy Messinger

(Свёрстанный на основе его статей в линкедин, который открывается не у всех россиян)

Особую ценность представляет коллекция ссылок в конце документа (на UG/XAPP и AR)

Xilinx DMA PCIe tutorial - Roy Messinger.pdf

Share this post


Link to post
Share on other sites
2 hours ago, Doka said:

В тему XDMA (и PCIE) есть полезный документ, за авторством Roy Messinger

(Свёрстанный на основе его статей в линкедин, который открывается не у всех россиян)

И чего ради выводить pdf с запрещением копирования текста?

Share this post


Link to post
Share on other sites
4 minutes ago, alexadmin said:

И чего ради выводить pdf с запрещением копирования текста?

в браузере действительно не копирует. Во внешнем виевере копирует, проверил

Share this post


Link to post
Share on other sites

Nfr

On 1/30/2020 at 4:26 PM, Doka said:

В тему XDMA (и PCIE) есть полезный документ, за авторством Roy Messinger

(Свёрстанный на основе его статей в линкедин, который открывается не у всех россиян)

Особую ценность представляет коллекция ссылок в конце документа (на UG/XAPP и AR)

Xilinx DMA PCIe tutorial - Roy Messinger.pdf

Также спасибо за статью!

 

Кто работал с jungo в win10? Как отключить проверку подписи inf файла? Проверку подписи драйвера отключил, даже перевёл в тестовый режим, не хочет назначать драйвер и всё!

Share this post


Link to post
Share on other sites
1 час назад, dmitry-tomsk сказал:

Кто работал с jungo в win10? Как отключить проверку подписи inf файла? Проверку подписи драйвера отключил, даже перевёл в тестовый режим, не хочет назначать драйвер и всё!

Для обхода проверки подписи драйвера пользовался утилиткой dseo13b.exe

Вот здесь можно почитать про нее https://pctuner.club/n/844

Share this post


Link to post
Share on other sites
On 2/5/2020 at 4:27 PM, fpgacoder said:

Для обхода проверки подписи драйвера пользовался утилиткой dseo13b.exe

Вот здесь можно почитать про нее https://pctuner.club/n/844

Спасибо!

Share this post


Link to post
Share on other sites
В 23.01.2020 в 18:07, RobFPGA сказал:

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

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

Удачи! Rob.

Я под линукс попробовал написать свою програму для оживления XDMA (в режиме AXI stream), без драйвера. Доступ к регистрам есть все нормально, но похоже ПЛИС не видит дескрипторов из-за того что они выделены в user space (получается в виртуальной памяти).

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

Скажите пожалуйста, Вы писали драйвер сами или доводили до ума ксайлинксовский?

Edited by alxkon

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.

Sign in to follow this