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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> PCI Express PEX 8311 кто пробовал, Мост PCI Express PEX 8311 Вопросы по применению
Dmitry_D2
сообщение Aug 2 2008, 17:45
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 27
Регистрация: 28-02-07
Из: Россия г. Омск
Пользователь №: 25 762



Здравствуйте.
Кто нибудь пробовал мост PCI Express PEX 8311 ( 1-lane PCI Express (PCIe) to 32-bit, 66MHz generic local bus bridge) ?
Есть необходимость передачи данных в компьютер, скорость нужна 80-100 мегабайт/сек.
Раньше делал подобное на PCI, но там скорость была около 2 мегабайт/сек. Использовал Altera Cyclone II. Теперь скорости выросли и решил что на ПЛИС я такое сам не напишу, плюс драйвера придется как обычно самому писать.
Если кто реально пробовал поделитесь информацией. Интересуют главным образом проблемы, которые возникают при разработке устройства и макс. скорость.
И еще проблема никак не могу скачать у них (http://www.plxtech.com/products/expresslane/pex8311.asp) необходимую документацию. Как и где я уже только не регистрировался чтобы стать Membership как они требуют.
Если кто-то уже скачал (ссылка выше) необходимую информацию выложите пожалуйста куда-нибудь (можно на фтп) или ссылочку где это нормально можно скачать. На фтп видел PLX PCI SDK, больше ничего не нашел.
Спасибо.
Go to the top of the page
 
+Quote Post
makc
сообщение Aug 2 2008, 17:51
Сообщение #2


Гуру
******

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



Я пока еще его не пробовал, но тоже нацелен на его применение.
Документацию можно забрать в известном месте по адресу /pub/DOC/Datasheets/PLX


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


Местный
***

Группа: Свой
Сообщений: 433
Регистрация: 28-02-06
Пользователь №: 14 788



Делал систему PEX 8311 + Spartan-3. В PC получилось гдето 120 мегабайт/сек, из PC 25-40 мегабайт/сек. Скорость (особенно чтение) будет зависеть от материнки. В PowerPC вроде получьше но это другая песня. Использовался режим внешнего мастера на локальной шине.
Go to the top of the page
 
+Quote Post
HardJoker
сообщение Aug 3 2008, 05:07
Сообщение #4


Знающий
****

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



Цитата(klop @ Aug 3 2008, 00:59) *
Делал систему PEX 8311 + Spartan-3. В PC получилось гдето 120 мегабайт/сек, из PC 25-40 мегабайт/сек. Скорость (особенно чтение) будет зависеть от материнки. В PowerPC вроде получьше но это другая песня. Использовался режим внешнего мастера на локальной шине.



Что означает "В PowerPC вроде получше..."? Имеется ввиду какой-либо SoC PowerPC с поддержкой PCIe?
Go to the top of the page
 
+Quote Post
klop
сообщение Aug 3 2008, 16:08
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 433
Регистрация: 28-02-06
Пользователь №: 14 788



Цитата(HardJoker @ Aug 3 2008, 08:07) *
Что означает "В PowerPC вроде получше..."? Имеется ввиду какой-либо SoC PowerPC с поддержкой PCIe?


Именно.
Go to the top of the page
 
+Quote Post
Dmitry_D2
сообщение Aug 4 2008, 17:03
Сообщение #6


Участник
*

Группа: Свой
Сообщений: 27
Регистрация: 28-02-07
Из: Россия г. Омск
Пользователь №: 25 762



Если не секрет, какие размеры приемных-передающих буферов понадобились для обеспечения такой скорости.
Go to the top of the page
 
+Quote Post
klop
сообщение Aug 5 2008, 00:48
Сообщение #7


Местный
***

Группа: Свой
Сообщений: 433
Регистрация: 28-02-06
Пользователь №: 14 788



Цитата(Dmitry_D2 @ Aug 4 2008, 20:03) *
Если не секрет, какие размеры приемных-передающих буферов понадобились для обеспечения такой скорости.


Razdel'no na priem i peredachu v Spartane -> 512x32.
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Jan 9 2009, 09:33
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



Здравствуйте.

Имею счастие возиться с PEX 8311 <=> EP2C50 rolleyes.gif
Возник вопрос, от безысходности что ли решил написать ( уже и саппорт перемучал и ДШ перечитал...)

В обсчем умею писать/читать данные с него в режиме Direct Master.
Только понадобилось заюзать DMA - надо много чего гонять в компутер быстро..
Для огранизации сего использовал диаграмму 6.58 из "PEX_8311AA_Data_Book_v0.95_07Mar07.pdf"
Времянки проверил, логика как на диаграмме.
Пробую самый простой вариант - выдавать значения счётчика - в результате получал массив в котором все элементы равны 1-му.
Думал что траблы в READY# - отрубил его в DMAMODE0 - времянка как на 6.58, только без READY# - он в "1" - в результате вообсче получаю все нули...
Проверял даже значение на LAD - меняются, данные выдаются столько сколько запрашиваю с ПК... smile3046.gif
Прикинул - если времянка как на родной диаграмме и READY# отключен - ну не бывает так чтоб не работало.... cranky.gif
В обсче м вот такая ситуация - может работал кто, подскажет куда смотерть crying.gif
1111493779.gif
Go to the top of the page
 
+Quote Post
v_mirgorodsky
сообщение Jan 9 2009, 10:50
Сообщение #9


Местный
***

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



Может я чего-то не понимаю, а может, есть действительно реальная необходимость в использовании решений типа PEX8311AA? В чем его преимущество перед стандартным мостом PCIe-PCI? Тем более, что мост PCIe-PCI доступен как минимум от трех разных производителей, а PEX8311AA аналогов у других производителей не имеет.

В нашем случае мы использовали мост PCIe-PCI XIO2000A. Максимальная производительность линка зависит от конкретного чипсета, но на цифру порядка 160MB/sec в сторону памяти компьютера от PCIe платы можно рассчитывать всегда. Пишем мастером, мастер реализован в FPGA Cyclone III, работаем на 66Mhz PCI шине. К недостаткам решения относится полудуплексная передача данных - общий недостаток PCI как таковой, сравнительно медленная скорость чтения данных из памати компьютера - порядка 100MB/sec, относительная сложность отладки готового устройства. Лучших результатов можно достичь только имея встроенное в проект ядро, однако в нашем случае это приводит к неоправданному и сильному удорожанию всего проекта.


--------------------
WBR,
V. Mirgorodsky
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Jan 9 2009, 11:20
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



2 v_mirgorodsky - как по мне то такие чипы сделаны для того чтобы наваять периферийку(не монстроидальную), засунуть в авалон и нормально его там юзать....И не заморачиваться всей физикой и логикой протокола.... Ну как USB 2.0 от SLS на ISP1504 например...

Однако это не решения вопроса..... всё равно не могу понять почему не работает... smile3046.gif
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Jan 9 2009, 13:29
Сообщение #11


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



smile3009.gif
в обсчем васислий я а не кузьмич - оПшибка в коде на ПК была..... Времянка с Timing Diagramm 6.58 из "PEX_8311AA_Data_Book_v0.95_07Mar07.pdf" - самое оно rolleyes.gif
херовый с меня программер smile3046.gif ...
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Jan 12 2009, 20:19
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



И снова здравствуйте! wink.gif

Значит раскочегарил я передачу DMA в On Demand моде. Вот только незадачка - если хочу передать большой пакет данных - он их бъёт на трасферы по 290 32-битных слов - то есть появляется BLAST#, а за ним опять ADS# - и трансфер продолжается wacko.gif
Это как понимать ?
В документации - v0.95_07Mar07 - ничего такого не нашёл - искал долго, потому сомнений что не нашёл очень мало...
Это какая то недокументированная фича али баг ? Как вообсче понимать такое интересное поведение ? Саппорт упорно молчит.... sad.gif
1111493779.gif
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Jan 13 2009, 12:05
Сообщение #13


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



Дальнейшее исследование сего чЮда науки и техники показало, что наборы не всегда по 290 32-хбитных слов - иногда больше.
При чём картина такова что по даташиту должен быть 1 сплошной трансфер а в реальности происходит несколько маленьких, с которых и набирается 1 большой... cranky.gif
При чём имеется закономерность - 1-й трасфер всегда 290 а потом сколько нужно может забрать и в пару присестов... smile3046.gif
О как... wacko.gif
такое ощущение что камень живёт своей личной жизнью .... 1111493779.gif

Тишина саппорта настораживает.....

АУУУ!! Ну хоть кто нибудь!!!
Go to the top of the page
 
+Quote Post
NahaL
сообщение Oct 5 2009, 16:31
Сообщение #14


Частый гость
**

Группа: Свой
Сообщений: 85
Регистрация: 5-07-06
Из: Барнаул
Пользователь №: 18 592



Здравствуйте. :-)
Возник такой вопрос, Если использовать Direct Master, не может ли скорость записи в комп получиться больше даже чем через DMA?
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Oct 5 2009, 17:02
Сообщение #15


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



2 NahaL - а почему вы так решили ??
Go to the top of the page
 
+Quote Post
NahaL
сообщение Oct 6 2009, 02:49
Сообщение #16


Частый гость
**

Группа: Свой
Сообщений: 85
Регистрация: 5-07-06
Из: Барнаул
Пользователь №: 18 592



Когда используется режим DMA, контроллер выступает мастером на обоих шинах: Локальной и PCIe. Если внешнее устройство на Локальной шине является мастером, то это устройство может записывать напрямую в память в cont. Burst перебирая адрес, без всяких "переинициализаций DMA" - хоть Block, хоть SGL. (Хотелось бы даже записывать в другое устройство на шине, например в RAID ).
Т.е. попытаться сделать как вы говорили: "1 сплошной трансфер".
При такой схеме надо будет отслеживать Ready.
Это у меня такое мнение создалось :-) , поэтому на истину не претендую, даже скорее наоборот, прошу совета.


Запустить в режиме DMA не составило труда.
Даже запись конф. регистров с Локальной шины получилась :-) , а вот что то с настройкой Direct Master регистров для записи в память разобраться не могу. Как сопоставить Локальный адресс с адресом PCI?
Т.е. Грубо говоря, выделил блок памяти, знаю его физический адрес, отобразил на логический.
Что надо сделать, что бы Direct Master записал что-нибудь именно в этот участок? пусть даже хоть как-нибудь, хотя бы одно словечко. :-)

Сообщение отредактировал NahaL - Oct 6 2009, 02:51
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Oct 6 2009, 18:06
Сообщение #17


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



2 NahaL - на счёт
Цитата
Как сопоставить Локальный адресс с адресом PCI?
Вы скачали ДДК и всё прилагающееся к чипу со стороны ПК с сайта PLX ? Там пример есть у PLX - по нему легко научится. Я сам не программил серЙозно это чЮдо со стороны ПК, были программисты, я только самаую малость с ним возился со стороны ПК. На сколько я помню в наборе всякого кода от PLX функция была - записать/прочитать данные, и в нём один из параметров как раз адрес что я видел у себя на локальной шине. Вот как то так...

На счёт скорости вообсче - вы видели что есть чип ? - это спайка 2-х уже имевшихся чипов , там взаимодействие между ними через фифошки организовано, то есть быстрей чем забирает PCIe часть вы ложить не сможете всё равно каким макаром ( на 150МГц он у вас уже будет при любой записи в него (в смысле был ли дма запрос вашей логики прочитать с неё данные или нет ) притормаживать - как раз за счёт перехода данных через эти фифошки - это как бы ответ самому себе на пост выше cool.gif ).
Мы использовали ДМА потому что сначала думали что это как бы забор данных сразу всего и без остановок на перекур angry.gif ..
Go to the top of the page
 
+Quote Post
NahaL
сообщение Oct 14 2009, 13:42
Сообщение #18


Частый гость
**

Группа: Свой
Сообщений: 85
Регистрация: 5-07-06
Из: Барнаул
Пользователь №: 18 592



Если рассматривать чип как мост, коим он и является, то как раз и менее скоростным и является PCIe интерфейс( пиковая скорость 250 Мб/с, в то время как у локалбной шины скорость 264 Мб/с (Мб с смысле 10^6 :-) ).
Так зачем в таком случае занимать шину PCIe всякими дескрипторами DMA(будь-то SGL или переиниц. Block). Можно завести дескрипторы в памяти со стороны Локальной шины. Так всё и собираюсь попробовать, только даст ли это прирост скорости, на этой недели хочу и узнать. Сомнения вызывает то, что происходит переинициализация DMA через каждые 4Мб данных: и запись пары регистров - капля в море(только вопрос времени... :-) )

И еще... Если на одну шину "повесить" две платы с мостом PEX8311, то между ними можно обмениваться без участия процессора и оперативной памяти. С этим всё понятно.
Значит и можно обмениваться м/у мостом и другим устройством, например RAID, видеокарта и т.д. Только как узнать физический адреса буфера в памяти "стандартного" устройства, который используется в пользовательской программе?

Сообщение отредактировал NahaL - Oct 14 2009, 13:12
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Oct 14 2009, 14:49
Сообщение #19


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



2 NahaL - я вообсче то привязывался к конкрентой архитектуре - судя по всему на время отгрузки данных с фифо - чип взводит сигнал что он не готов.. и пока не отгрузит сколько нужно - не опустит его - я про эту задержку.
Go to the top of the page
 
+Quote Post
NahaL
сообщение Oct 15 2009, 17:10
Сообщение #20


Частый гость
**

Группа: Свой
Сообщений: 85
Регистрация: 5-07-06
Из: Барнаул
Пользователь №: 18 592



В том то и дело: получается если ФИФО на чтение из устройства занято(full), то чип производит "отгрузку" данных через шину PCIe. в это время Локальная шина свободна? и можно в это время через неё записывать регистры моста? или чип скажет что он занят?
А кто что скажет по поводу записи из одного устройства в другое на шине? Какие есть мнения?
Go to the top of the page
 
+Quote Post
ambrosix
сообщение May 19 2015, 09:02
Сообщение #21





Группа: Участник
Сообщений: 12
Регистрация: 19-05-15
Пользователь №: 86 753



Тоже работаю с PEX 8311. Необходимо через альтеру согласовать host port сигналника(BF) с PCIe.
С программкой PLXMon все работает. Транзакции идут с большими промежутками.
НО теперь требуется работать с аналогом этой программы,написанной другими товарищами.
Так вот эта программка до 8ми слов подряд читает нормально. Но если запросить больше, то она слепляет транзакции в пачки, расстояние между ними можно регулировать только READY. И читает как то странно. То пропускает пару слов, то повторяет.
А главное я не могу понять, в каком режиме PEX работает вообще(( Никто не поможет?
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 4th August 2025 - 19:42
Рейтинг@Mail.ru


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