serebr 0 4 декабря, 2009 Опубликовано 4 декабря, 2009 · Жалоба Пока нет времени детально разобраться с приведенными логами. Первое что приходит в голову - несоблюдение правила 4KB границ адресных диапазонов при формировании запроса (пункт 2.2.7 спецификации). Вторая возможная причина - нарушение границы адресного диапазона для правила Read Completion Boundary (RCB, пункт 2.3.1.1). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kuzmi4 0 4 декабря, 2009 Опубликовано 4 декабря, 2009 · Жалоба 2 serebr - а не могли бы вы учтонить(пример всмысле)? Потому как в принципе понимаю о чём речь, только не могу понять как это может быть привязано к изменению. (прицепил выше не логи а полностью прожекты) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dmitry-tomsk 0 4 декабря, 2009 Опубликовано 4 декабря, 2009 · Жалоба тоже как-то не хватает времени посмотреть проекты, но упоминание об усечении адреса и 1 dw посылках наводит на следующую мысль: даже если посылается 1 dw, но по байтовому адресу, то придёт 2 dw в payload data, и в first last dw byte enables будут не 1, а 0 и 1 со сдвигом в зависимости от исходного адреса. Адрес в пакете будет усечённый. Пустые байты скорее всего будут заполнены нулями, хотя это зависит от мастера, я в своём их не обнулял. Может поможет! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kuzmi4 0 11 декабря, 2009 Опубликовано 11 декабря, 2009 · Жалоба Новости с полей: после того как в отправке Completition Header-е поле Lower Address стал наполнять байтовым адресом вырезанным из получаемого (нижние 2 бита меняю согласно спецификации как и раньше) и изменил процедуру отправки прерывания (стало MSI, как по UG) - всё заработало без сбоев. В обсчем как обычно - нужно внимательно читать ДШ и не пропускать мелочи :laughing: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
serebr 0 11 декабря, 2009 Опубликовано 11 декабря, 2009 · Жалоба Новости с полей: после того как в отправке Completition Header-е поле Lower Address стал наполнять байтовым адресом вырезанным из получаемого (нижние 2 бита меняю согласно спецификации как и раньше) и изменил процедуру отправки прерывания (стало MSI, как по UG) - всё заработало без сбоев. В обсчем как обычно - нужно внимательно читать ДШ и не пропускать мелочи :laughing: Поздравляю! Мне всё это ещё предстоит пройти, но своим путём, т.к. делать надо не на Xilinx'е, а на Lattic'e. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kuzmi4 0 6 января, 2010 Опубликовано 6 января, 2010 · Жалоба И снова здравствуйте :laughing: Имею неприятную специфику работы этого самого PCI Express Block Plus: Дата-трансферы без прерываний бегают нормально :rolleyes: Отсылка прерывания по контрольным точкам (то есть редко) тоже работала нормально с трансферами. А вот если сделать эти дата-трансферы пачками, упорядочить (запись перед трансфером управляющей информации трансфера-запись/чтение,адрес,длинна), прерывания после обработки трансферов(то есть довольно часто) - тогда возникает этот самый неприятный момент - прога на PC виснет. Проверялось как на Р55 платформе так и (да простят меня Одмины ) на ML370. И была замечена интересная специфика - на серверной платформе зависания начинались после гораздо меньшего числа трансферов чем на Р55 (грубо говоря если на Р55 работало полдня без вопросов, то на серверной после ~100-300 трансферов висли) :07: В результате исследования со стороны корки выяснилось что пред-момент зависона выглядит так: получаю трансфер обрабатываю, отсылаю прерывание,получаю подтверждение от корки, что запрос прерывания от меня воспринят и дальше - тишина, входящих запросов от PC нет.. На стороне PC удалось увидеть пару раз (логи ядра в линухе), что виснем как раз на ожидании прерывания... PCIE анализера нет, чтоб посмотреть ушёл ли пакет в мать или нет, но реально видно что корка работает и рапортует в нормальном режиме и это беспокоит. Никто не сталкивался с таким чЮдесным функционированием ?? :1111493779: Как вариант - может я там галочки какие пропустил ? :smile3046: Скриншоты конфигурирования и автомат отсылки прерывания прилагаю (на PC разрешено 1 прерывание, отсылаю 1 прерывание). Потому что нахожусь в каком то тупике - неясно где поломалось... interrupt_block.v Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jojo 0 11 января, 2010 Опубликовано 11 января, 2010 · Жалоба Всё слежу за новостями борьбы с PCI Express, так всё меньше хочется делать свою обёртку. Вы не пробовали ядро PLDA для Virtex-5? Там и тестбенч есть, и обёртка вокруг ядра Endpoint Block Plus. Ядро можно получить после короткой переписки по e-mail. Затем уговорить ядро работать стандартным образом. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
serebr 0 11 января, 2010 Опубликовано 11 января, 2010 · Жалоба Всё слежу за новостями борьбы с PCI Express, так всё меньше хочется делать свою обёртку. Вы не пробовали ядро PLDA для Virtex-5? Там и тестбенч есть, и обёртка вокруг ядра Endpoint Block Plus. Ядро можно получить после короткой переписки по e-mail. Затем уговорить ядро работать стандартным образом. Вот бы уговорить работать ядро PCIe от PLDA для Lattice! Само ядро имеется, а с таблеткой для него - труба. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jojo 0 11 января, 2010 Опубликовано 11 января, 2010 · Жалоба Предполагаю, что ядро PLDA по способу лечения не отличается от IP-ядер Lattice. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kuzmi4 0 12 января, 2010 Опубликовано 12 января, 2010 · Жалоба Всё слежу за новостями борьбы с PCI Express, так всё меньше хочется делать свою обёртку. Вы не пробовали ядро PLDA для Virtex-5? Там и тестбенч есть, и обёртка вокруг ядра Endpoint Block Plus. Ядро можно получить после короткой переписки по e-mail. Затем уговорить ядро работать стандартным образом. С того, что я знаю - ядру от PLDA требуется внешняя физика. Потому не подходит если юзать с трансиверами в виртексе. Или я где то ошибся ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jojo 0 12 января, 2010 Опубликовано 12 января, 2010 · Жалоба В Virtex-5 встроенные трансиверы, кроме краевого разъёма PCI Express и самой ПЛИС ничего не нужно. Ядро PLDA (точнее одно из ядер) является обёрткой вокруг Endpoint block plus. Endpoint block IP параметризуем в Xilinx Coregen, ядро PLDA параметризуем в визарде PLDA. Затем всё сводим под крышей одного проекта в ISE. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
demon_rt 0 22 августа, 2010 Опубликовано 22 августа, 2010 · Жалоба У меня такая проблема: устройство на базе Endpoint Block Plus v1.9 не на всех PC работает в режиме х8. Перепробовал кучу машин с различными мостами. В некоторых материнках, устройство сразу работает на х8, в других при первом включении на х1, а после перезагрузки(помогает кнопка ресет), переходит на х8, в третьих только на х1, и никакая перезагрузка не помогает, не смотря на то, что на материнке написано х8 и в биосе тоже все нормально. Неужели Endpoint Block Plus такой привередливый к типу чипсетов????? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
FLTI 0 4 августа, 2011 Опубликовано 4 августа, 2011 · Жалоба У меня такая проблема: устройство на базе Endpoint Block Plus v1.9 не на всех PC работает в режиме х8. Перепробовал кучу машин с различными мостами. В некоторых материнках, устройство сразу работает на х8, в других при первом включении на х1, а после перезагрузки(помогает кнопка ресет), переходит на х8, в третьих только на х1, и никакая перезагрузка не помогает, не смотря на то, что на материнке написано х8 и в биосе тоже все нормально. Неужели Endpoint Block Plus такой привередливый к типу чипсетов????? Тема привередливости к чипсетам меня тоже интересует. demon_rt,что Вам удалось за год на эту тему выяснить? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dsmv 0 8 августа, 2011 Опубликовано 8 августа, 2011 · Жалоба Тема привередливости к чипсетам меня тоже интересует. demon_rt,что Вам удалось за год на эту тему выяснить? PCI Express платы на основе Xilinx Virtex 5 выпускаем давно. С такими проблемами не сталкивался. Проверьте: 1. Скорость загрузки ПЛИС - нужна параллельная загрузка. 2. Выводы PCI Express подключены через конденсаторы. Проверьте их, может там попались разные конденсаторы. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
FLTI 0 8 августа, 2011 Опубликовано 8 августа, 2011 · Жалоба PCI Express платы на основе Xilinx Virtex 5 выпускаем давно. Какие реальные скорости получаете для передач "Память ПК->Буферная память на PCIe х 1 плате" ( System Memory Read ) в зависимости от чипсета матери? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться