реклама на сайте
подробности

 
 
> реализация PCIE, способы построения
ecs
сообщение Jan 31 2011, 13:54
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 33
Регистрация: 16-09-09
Пользователь №: 52 410



Всем добрый день.
Задача стоит в вводе данных через PCI Express в компьютер, минимальная скорость потока ~ 30мегабайт\сек. Юсб не предлагатьsm.gif

Интересует мнение профессионалов и всех участников форума в построении данной системы (только со стороны платы), требуются все пути решения данной задачи начиная от самых дорогих(разработка на стороне не в счет) до самых бюджетных. Данная тема будет полезна не только мне но и новичкам кто собрался работать с PCIE. Заранее спасибо.
Go to the top of the page
 
+Quote Post
2 страниц V   1 2 >  
Start new topic
Ответов (1 - 21)
Gate
сообщение Jan 31 2011, 18:22
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 859
Регистрация: 7-04-05
Из: Санкт-Петербург
Пользователь №: 3 943



А максимальная?


--------------------
"Человек - это существо, которое охотнее всего рассуждает о том, в чем меньше всего разбирается." (с) С.Лем
Go to the top of the page
 
+Quote Post
ecs
сообщение Jan 31 2011, 22:56
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 33
Регистрация: 16-09-09
Пользователь №: 52 410



Цитата(Gate @ Jan 31 2011, 21:22) *
А максимальная?

Особого значения не имеет, конечно с увеличение скорости и цена растет. Кто то выбирает Xilinx, кто то Alter'y вот интересно узнать кто на чем реализует данный интерфейс, какой бюджет, ну и подводные камни
Go to the top of the page
 
+Quote Post
Gate
сообщение Feb 1 2011, 15:43
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 859
Регистрация: 7-04-05
Из: Санкт-Петербург
Пользователь №: 3 943



До 200 Мб/сек pex8311: http://plxtech.com/products/expresslane/pex8311
Выше - не вижу смысла в таких платах вообще - что вы будете дальше делать с таким потоком?


--------------------
"Человек - это существо, которое охотнее всего рассуждает о том, в чем меньше всего разбирается." (с) С.Лем
Go to the top of the page
 
+Quote Post
ecs
сообщение Feb 2 2011, 09:42
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 33
Регистрация: 16-09-09
Пользователь №: 52 410



Цитата(Gate @ Feb 1 2011, 18:43) *
До 200 Мб/сек pex8311: http://plxtech.com/products/expresslane/pex8311
Выше - не вижу смысла в таких платах вообще - что вы будете дальше делать с таким потоком?

Гнать видео в компьютер
а в качестве Контроллера для работы с Generic Local Bus что выбрали бы?

Один из простых, но дорогих вариантов, можно выбрать в качестве контроллера - ПЛИС например Virtex-4, Virtex-5, Virtex-6 + к нему купить ядро от PLDA.

Или

Контроллер ПЛИС - Stratix IV GX FPGAs + ядро Altera PCI Express hard IP core

Интересны еще другие варианты!
Go to the top of the page
 
+Quote Post
Gate
сообщение Feb 2 2011, 10:10
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 859
Регистрация: 7-04-05
Из: Санкт-Петербург
Пользователь №: 3 943



Цитата(ecs @ Feb 2 2011, 12:42) *
Гнать видео в компьютер
а в качестве Контроллера для работы с Generic Local Bus что выбрали бы?

pex8311 + FPGA
Если учесть, что pex8311 стоит около $50, то ставить в качестве контроллера pcix fpga+ip экономически может быть выгодно только при серийном производстве.
Еще раз осмелюсь повторить: гнать в (офисный) компьютер поток 200 мб/с бессмысленно - с ним ничего не удастся сделать. Такие скорости надо обрабатывать на плате, уменьшая поток в разы.


--------------------
"Человек - это существо, которое охотнее всего рассуждает о том, в чем меньше всего разбирается." (с) С.Лем
Go to the top of the page
 
+Quote Post
ecs
сообщение Feb 2 2011, 11:15
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 33
Регистрация: 16-09-09
Пользователь №: 52 410



Цитата(Gate @ Feb 2 2011, 13:10) *
pex8311 + FPGA
Если учесть, что pex8311 стоит около $50, то ставить в качестве контроллера pcix fpga+ip экономически может быть выгодно только при серийном производстве.
Еще раз осмелюсь повторить: гнать в (офисный) компьютер поток 200 мб/с бессмысленно - с ним ничего не удастся сделать. Такие скорости надо обрабатывать на плате, уменьшая поток в разы.

ну вообще поток видео будет примерно ~ 30 мб\сек
тогда как лучше сделать?
Go to the top of the page
 
+Quote Post
dmitry-tomsk
сообщение Feb 2 2011, 14:53
Сообщение #8


Знающий
****

Группа: Свой
Сообщений: 672
Регистрация: 18-02-05
Пользователь №: 2 741



Цитата(ecs @ Feb 2 2011, 14:15) *
ну вообще поток видео будет примерно ~ 30 мб\сек
тогда как лучше сделать?

xc6slx25t за 50$. Встроенный pcie 200 мбайт/сек.
Go to the top of the page
 
+Quote Post
ecs
сообщение Feb 2 2011, 18:46
Сообщение #9


Участник
*

Группа: Участник
Сообщений: 33
Регистрация: 16-09-09
Пользователь №: 52 410



Цитата(dmitry-tomsk @ Feb 2 2011, 17:53) *
xc6slx25t за 50$. Встроенный pcie 200 мбайт/сек.

к нему нужно покупать ядро? сколько оно может примерно стоить?
Go to the top of the page
 
+Quote Post
dmitry-tomsk
сообщение Feb 2 2011, 20:25
Сообщение #10


Знающий
****

Группа: Свой
Сообщений: 672
Регистрация: 18-02-05
Пользователь №: 2 741



Цитата(ecs @ Feb 2 2011, 22:46) *
к нему нужно покупать ядро? сколько оно может примерно стоить?

не нужно, нужен только пдп контроллер, пример в xapp859.
Go to the top of the page
 
+Quote Post
ecs
сообщение Feb 3 2011, 08:36
Сообщение #11


Участник
*

Группа: Участник
Сообщений: 33
Регистрация: 16-09-09
Пользователь №: 52 410



Цитата(dmitry-tomsk @ Feb 2 2011, 23:25) *
не нужно, нужен только пдп контроллер, пример в xapp859.

дак готового варианта получается нету( в xapp859 этот пдп контроллер внутри fpga, а саму корку взломанную можно найти?
Go to the top of the page
 
+Quote Post
dmitry-tomsk
сообщение Feb 3 2011, 09:30
Сообщение #12


Знающий
****

Группа: Свой
Сообщений: 672
Регистрация: 18-02-05
Пользователь №: 2 741



Цитата(ecs @ Feb 3 2011, 12:36) *
дак готового варианта получается нету( в xapp859 этот пдп контроллер внутри fpga, а саму корку взломанную можно найти?

в s-6 стоит аппаратный блок pcie, начиная с ise 12 лицензия не требуется.
Go to the top of the page
 
+Quote Post
ecs
сообщение Feb 3 2011, 10:39
Сообщение #13


Участник
*

Группа: Участник
Сообщений: 33
Регистрация: 16-09-09
Пользователь №: 52 410



dmitry-tomsk Ничего не понял) Есть fpga s-6 в ней в внутри уже заложен физический уровень, т.е. микросхемы от NXP или TI не нужны, а сам протокол обмена(запросы, ответы) это реализуется в fpga программно, но для этого нужна корка ведь так? Если не так поправьте пожалуйста. Никогда не имел дело с xilinx:(
Go to the top of the page
 
+Quote Post
dmitry-tomsk
сообщение Feb 3 2011, 11:04
Сообщение #14


Знающий
****

Группа: Свой
Сообщений: 672
Регистрация: 18-02-05
Пользователь №: 2 741



Цитата(ecs @ Feb 3 2011, 14:39) *
dmitry-tomsk Ничего не понял) Есть fpga s-6 в ней в внутри уже заложен физический уровень, т.е. микросхемы от NXP или TI не нужны, а сам протокол обмена(запросы, ответы) это реализуется в fpga программно, но для этого нужна корка ведь так? Если не так поправьте пожалуйста. Никогда не имел дело с xilinx:(

нужна обёртка для ядра, смотрите даташиты
Go to the top of the page
 
+Quote Post
Bad0512
сообщение Feb 4 2011, 11:33
Сообщение #15


Знающий
****

Группа: Свой
Сообщений: 802
Регистрация: 11-05-07
Из: Томск
Пользователь №: 27 650



Цитата(dmitry-tomsk @ Feb 3 2011, 17:04) *
нужна обёртка для ядра, смотрите даташиты

Пару слов вдогонку... При потоках 200мБс Вам не обойтись без промежуточной памяти приличного размера.
У 6 спартана кстати есть аппаратный контроллер памяти. Корку ДМА готовую конечно можно найти, но всё
равно в ней Вам как минимум разобраться придётся - все эти корки очень заточены и оптимизированы под
определённые приложения.
Go to the top of the page
 
+Quote Post
dmitry-tomsk
сообщение Feb 4 2011, 12:47
Сообщение #16


Знающий
****

Группа: Свой
Сообщений: 672
Регистрация: 18-02-05
Пользователь №: 2 741



Цитата(Bad0512 @ Feb 4 2011, 15:33) *
Пару слов вдогонку... При потоках 200мБс Вам не обойтись без промежуточной памяти приличного размера.
У 6 спартана кстати есть аппаратный контроллер памяти. Корку ДМА готовую конечно можно найти, но всё
равно в ней Вам как минимум разобраться придётся - все эти корки очень заточены и оптимизированы под
определённые приложения.

неправда, спокойно 200 мбайт сек через 2 кбайта фифошки (скорость записи в память pc), обратно мне больше 170 не удалось получить.
Go to the top of the page
 
+Quote Post
makc
сообщение Feb 4 2011, 20:43
Сообщение #17


Гуру
******

Группа: Админы
Сообщений: 3 621
Регистрация: 18-10-04
Из: Москва
Пользователь №: 904



Цитата(dmitry-tomsk @ Feb 4 2011, 15:47) *
неправда, спокойно 200 мбайт сек через 2 кбайта фифошки (скорость записи в память pc), обратно мне больше 170 не удалось получить.


Расскажите пожалуйста о подробностях реализации обратной передачи данных. Т.е. из памяти в плату. Мы занимаемся подобной задачей, но сейчас скорость оказывается ниже из-за того, что при чтении данные приходят в составе completion с относительно большой задержкой. Поэтому возникает такой вопрос: какой размер данных Вы запрашиваете при формировании TLP на чтение? И каково значение maximum payload size было в тестовой системе?


--------------------
BR, Makc
В недуге рождены, вскормлены тленом, подлежим распаду. (с) У.Фолкнер.
Go to the top of the page
 
+Quote Post
dmitry-tomsk
сообщение Feb 5 2011, 11:18
Сообщение #18


Знающий
****

Группа: Свой
Сообщений: 672
Регистрация: 18-02-05
Пользователь №: 2 741



Цитата(makc @ Feb 5 2011, 00:43) *
Расскажите пожалуйста о подробностях реализации обратной передачи данных. Т.е. из памяти в плату. Мы занимаемся подобной задачей, но сейчас скорость оказывается ниже из-за того, что при чтении данные приходят в составе completion с относительно большой задержкой. Поэтому возникает такой вопрос: какой размер данных Вы запрашиваете при формировании TLP на чтение? И каково значение maximum payload size было в тестовой системе?

запрашиваю max read size байт, как правило, равно max payload size и равно 128 байт для большинства материнок (моей в том числе). До 32 исходящих запросов без ожидания ответа, хотя реально хватает 8 на x1 для 170 мбайт/сек. На x8 не знаю, может и фифошек будет мало нужно будет увеличивать буфер, ждём плату.
Go to the top of the page
 
+Quote Post
makc
сообщение Feb 7 2011, 06:29
Сообщение #19


Гуру
******

Группа: Админы
Сообщений: 3 621
Регистрация: 18-10-04
Из: Москва
Пользователь №: 904



Цитата(dmitry-tomsk @ Feb 5 2011, 14:18) *
запрашиваю max read size байт, как правило, равно max payload size и равно 128 байт для большинства материнок (моей в том числе). До 32 исходящих запросов без ожидания ответа, хотя реально хватает 8 на x1 для 170 мбайт/сек. На x8 не знаю, может и фифошек будет мало нужно будет увеличивать буфер, ждём плату.


Спасибо. Я в общем-то и предполагал, что необходимо сразу отправлять несколько запросов на чтение и потом дожидаться нескольких completion, но уверенности в корректности такого подхода не было.


--------------------
BR, Makc
В недуге рождены, вскормлены тленом, подлежим распаду. (с) У.Фолкнер.
Go to the top of the page
 
+Quote Post
FLTI
сообщение Aug 4 2011, 16:14
Сообщение #20


Местный
***

Группа: Свой
Сообщений: 399
Регистрация: 8-06-05
Пользователь №: 5 832



Цитата(Bad0512 @ Feb 4 2011, 15:33) *
Пару слов вдогонку... При потоках 200мБс Вам не обойтись без промежуточной памяти приличного размера.
У 6 спартана кстати есть аппаратный контроллер памяти. Корку ДМА готовую конечно можно найти, но всё
равно в ней Вам как минимум разобраться придётся - все эти корки очень заточены и оптимизированы под
определённые приложения.


Цитата(dmitry-tomsk @ Feb 4 2011, 16:47) *
неправда, спокойно 200 мбайт сек через 2 кбайта фифошки (скорость записи в память pc), обратно мне больше 170 не удалось получить.


Диаметрально противоположные мнения wacko.gif
Кто прав и почему ? Или оба правы, но каждый по-своему?
Go to the top of the page
 
+Quote Post
dsmv
сообщение Aug 8 2011, 10:40
Сообщение #21


Местный
***

Группа: Свой
Сообщений: 451
Регистрация: 6-09-05
Из: Москва
Пользователь №: 8 284



Цитата(FLTI @ Aug 4 2011, 19:14) *
Диаметрально противоположные мнения wacko.gif
Кто прав и почему ? Или оба правы, но каждый по-своему?


Правы оба.
FIFO => DMA => PCIExpress

2 кбайт FIFO вполне достаточно для согласования скорости.
Go to the top of the page
 
+Quote Post
FLTI
сообщение Aug 8 2011, 10:52
Сообщение #22


Местный
***

Группа: Свой
Сообщений: 399
Регистрация: 8-06-05
Пользователь №: 5 832



Цитата(dsmv @ Aug 8 2011, 14:40) *
Правы оба.
FIFO => DMA => PCIExpress

2 кбайт FIFO вполне достаточно для согласования скорости.

Непонятно, в чём тогда прав Bad0512, который пишет, что ФИФО недостаточно и нужен буфер приличного размера?
Напоминаю, что мы говорим о потоках около 200МБайт/с.
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 27th June 2025 - 18:31
Рейтинг@Mail.ru


Страница сгенерированна за 0.01544 секунд с 7
ELECTRONIX ©2004-2016