_Ivan_ 0 10 июля, 2020 Опубликовано 10 июля, 2020 · Жалоба Добрый день. А кто-нибудь делал на аррии 10 ДМА из ПЛИС в ДДР арма? Конкретно интересует вопрос - какую скорость вы достигали при передаче транзакциями, которые должны иметь кэш когерентность и арм из линукса эти данные к себе копирует(именно скорость копирования арма, а не плис)? Дма драйвер линукса у вас находился в юзер спейсе или в кернел спейсе? С уважением, Иван. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gosha-z 2 10 июля, 2020 Опубликовано 10 июля, 2020 · Жалоба 4 minutes ago, _Ivan_ said: Дма драйвер линукса у вас находился в юзер спейсе или в кернел спейсе? Вот этой фразы я не понял... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
new123 0 10 июля, 2020 Опубликовано 10 июля, 2020 (изменено) · Жалоба Готовые корки pcie dma у альтеры вроде не самые быстрые. Куча накладных расходов. Вроде как в 10 сериях они начали писать производительность pcie шины в своих корках, может и под арию написано в мануале. А драйвера располагаются только в кернел спейс, может вы что то другое имели ввиду, как например отзеркаливание памяти в юзер спейс Изменено 10 июля, 2020 пользователем new123 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_Ivan_ 0 10 июля, 2020 Опубликовано 10 июля, 2020 · Жалоба неправильно высказался память для дма драйвера можно аллоцировать в юзер спейсе или в кернел спейсе и вот где лучше? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
new123 0 10 июля, 2020 Опубликовано 10 июля, 2020 (изменено) · Жалоба 6 minutes ago, _Ivan_ said: память для дма драйвера можно аллоцировать в юзер спейсе интересный поворот. Каким способом? хотя быть может в арм все по другому. Я там не силен. Изменено 10 июля, 2020 пользователем new123 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_Ivan_ 0 10 июля, 2020 Опубликовано 10 июля, 2020 · Жалоба https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&ved=2ahUKEwjopKncx8LqAhVPUZoKHYV_AwsQFjAAegQIBBAB&url=https%3A%2F%2Fforums.xilinx.com%2Fxlnx%2Fattachments%2Fxlnx%2FELINUX%2F10693%2F1%2FLinux%20DMA%20from%20User%20Space-public.pdf&usg=AOvVaw2fY6Amj8aoLAxLnGUEiJEe с помощью mmap , страница 18 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
new123 0 10 июля, 2020 Опубликовано 10 июля, 2020 (изменено) · Жалоба 4 minutes ago, _Ivan_ said: с помощью mmap я так и подумал, что напишите. Так именно аллоцирует (от слова alloc) ее драйвер =). mmap только "зеркалится" на нее. то есть у вас не получится создать из юзер спейса память и сказать dma контроллеру работать именно с этой памятью. Конкретно в этом мануале (я очень бегло прочитал, искал эту фразу) Quote Call the mmap() function to map the kernel allocated buffer into the process address space Изменено 10 июля, 2020 пользователем new123 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gosha-z 2 10 июля, 2020 Опубликовано 10 июля, 2020 · Жалоба Ну mmap еще и в драйвере должна быть корретно реализована. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Maverick_ 15 13 июля, 2020 Опубликовано 13 июля, 2020 · Жалоба Смотрите скорость чтения/записи данных в DDR. Берите 80-90% от этой скорости (максимально возможная) это если вы реализуете полностью аппаратный контроллер и подключите его к sdram port. Если не будет другой/дополнительной загруженности контроллера памяти PS ссори не внимательно прочитал вопрос ТС... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться