|
PCI Express (жду любых советов) |
|
|
|
Dec 1 2010, 09:59
|

Гуру
     
Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230

|
Есть плата на Arria 2 GX. Кит. На ней был отлажена работа PCIe 4x.
Сделана плата на младшей Arria 2GX. DC/DC передраны с кита. Обвязка передрана с кита. Пата заказана в Китае с контролируемым импедансом, по всем рекомендациям PCI-SIG. На плате стоят 4 оптических трансивера и PCIe 4x.
Все отличие платы от кита в том, что в ките PCIe висит на нулевом и первом GBX (нулевой это 1x и 4x, первый и второй используются чтобы PCIe 8x). Моя плата сделана 4x. Для упрощения разводки,GBX был отдан для оптики, а PCIx был заведен на первый блок трансиверов (в одном блоке есть PLL, ФАПЧ, 4 приёмника, 4 передатчика). В общем что делать не знаю.
Трансиверы через оптику работают сами на себя. Шины PCIe tx, закорачивал на PCIe rx, тоже работает. Свои данные принимает.
У меня идей нет. Есть подозрение что PCIe может работать только с нулевым блоком трансивера. пробросить 2.5 гигабита по плате на миллиметров 30, по воздуху, мне кажется дохлый номер.
|
|
|
|
3 страниц
1 2 3 >
|
 |
Ответов
(1 - 39)
|
Dec 1 2010, 11:03
|
Профессионал
    
Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770

|
Цитата(Methane @ Dec 1 2010, 12:59)  Шины PCIe tx, закорачивал на PCIe rx, тоже работает. Свои данные принимает. А будучи вставлена в материнскую плату - не принимает? 100 МГц с разъема PCIe куда идут? Цитата(Methane @ Dec 1 2010, 12:59)  Есть подозрение что PCIe может работать только с нулевым блоком трансивера. Тогда фиттер бы вас обматюгал сообщением о невозможности подключить аппаратный блок PCIe к соответствующим трансиверам. Но вообще - любые просьбы о помощи по схемотехнике всегда имеет смысл сопровождать схемой. А в случае высокоскоростных схем - еще и разводкой.
|
|
|
|
|
Dec 1 2010, 11:32
|

Гуру
     
Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230

|
Цитата(Shtirlits @ Dec 1 2010, 13:16)  Паниковать рано, как мне кажется. Объясните как именно оно не работает. Что должно получиться и что не получается.
В MegaWizard позволяется установить starting channel number равный 4 и далее с шагом 4, как для hard, так и для soft core. Я бы начал с 1x и PCIe 1.0A C 1x и начал. В визарде для трасивера с который PCI работает, написано если реконфигуратор работает с несколькими блоками, то для каждого должен быть выставлен свой адрес кратный четырём. Цитата(DmitryR @ Dec 1 2010, 13:03)  А будучи вставлена в материнскую плату - не принимает? 100 МГц с разъема PCIe куда идут? На дедиктейтет клок дифпару трансивера. Цитата Тогда фиттер бы вас обматюгал сообщением о невозможности подключить аппаратный блок PCIe к соответствующим трансиверам. Вот и я так думаю. Цитата Но вообще - любые просьбы о помощи по схемотехнике всегда имеет смысл сопровождать схемой. А в случае высокоскоростных схем - еще и разводкой. Какая схема? Трам 4 (четыре) сигнала с PCIe учавствуют. Кондеры стоят какие нужны. Кроме того, PCIe я закорачивал сами на себя (вырезал с материнке PCIe разьем, и там перемычками txd на rxd замкнул). Сам себя прекрасно видит.
|
|
|
|
|
Dec 1 2010, 11:36
|
Участник

Группа: Свой
Сообщений: 65
Регистрация: 13-09-10
Из: Israel
Пользователь №: 59 464

|
Цитата(Methane @ Dec 1 2010, 12:59)  Есть подозрение что PCIe может работать только с нулевым блоком трансивера. Аппаратный - да, только с нулевым (по-крайней мере у меня тоже такое подозрение). Попробуйте собрать х1 (а потом х4) не используя аппаратную поддержку (надеюсь что визард позволяет).
Сообщение отредактировал Cordroy - Dec 1 2010, 11:37
|
|
|
|
|
Dec 1 2010, 12:00
|
Участник

Группа: Свой
Сообщений: 65
Регистрация: 13-09-10
Из: Israel
Пользователь №: 59 464

|
Цитата(Methane @ Dec 1 2010, 14:56)  У меня на лицензию ругается. И если только с нулевым, то чего квартус не ругается? У Квартуса сейчас куча недочетов с трансиверами. Я пытался недавно сделать PCIe + 4 x SDI Tx/Rx. Автоматом получилось только 2. Как оказалось фиттер погано распределял ресурсы. Аппартный PCIe не требует лицензии. А для софт-IP - возьмите кряк на денек, только чтоб проверить.
|
|
|
|
|
Dec 1 2010, 12:17
|

Гуру
     
Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230

|
Цитата(Shtirlits @ Dec 1 2010, 13:39)  Ну и глупый вопрос - не перепутаны ли на плате tx и rx (и сами пары) ? Все проверил уже очень много раз. И rx/tx и + с -, и rx0 с rx3 не перепутаны. Я уже не первый день долбаюсь. В реконфигурационном блоке сказал что у меня 8 каналов, в pcie_serdes поставил что у меня начинается все с 4го канала. в pcie_example_chaining_pipen1b исправил //assign reconfig_fromgxb[33 : 17] = 0; assign reconfig_fromgxb[16 : 0] = 0; //.reconfig_fromgxb (reconfig_fromgxb[16 : 0]), .reconfig_fromgxb (reconfig_fromgxb[33 : 17]), Все равно не пашет. Цитата(Cordroy @ Dec 1 2010, 14:00)  У Квартуса сейчас куча недочетов с трансиверами. Я пытался недавно сделать PCIe + 4 x SDI Tx/Rx. Автоматом получилось только 2. Как оказалось фиттер погано распределял ресурсы. Против PCIe 4х на одном блоке и четырех оптических трансиверов на другом оно не ругается. Цитата Аппартный PCIe не требует лицензии. А для софт-IP - возьмите кряк на денек, только чтоб проверить. Где взять? У меня оно еще и под 64 бит линух. Это пару дней только развлечений. Когда ставил какой-то один только подошел.
|
|
|
|
|
Dec 1 2010, 12:48
|
Знающий
   
Группа: Свой
Сообщений: 972
Регистрация: 12-04-09
Из: Москва
Пользователь №: 47 543

|
2 раза перечитал корневой пост. Не увидел слова "не работает" и симптомы неработы... P.S. Ничего не знаю про PCI-E, но собираюсь  .
|
|
|
|
|
Dec 1 2010, 13:43
|

Гуру
     
Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230

|
Цитата(Shtirlits @ Dec 1 2010, 15:04)  я правильно понимаю, что были проведены следующие эксперименты: 1. тестовый loopback без PCIe работает Да. И через нулеой блок (через оптику) и через первый блок (через обрезок материнки с выпиляным из нее PCIe разьёмом). Цитата 2. схема с PCIe воткнутая в компьютер не работает Да. Кит воткнутый в компютер работает. Причем прошивка одна и таже - то что мегавизард по умолчанию генерит. Все отличие это /****************************************** OUR BOARD **************************************************/ (* altera_attribute = "-name IO_STANDARD \"1.5-V PCML\" ", chip_pin = "V25" *) output tx_out0; (* chip_pin = "K9" *) input pcie_rstn; (* altera_attribute = "-name IO_STANDARD \"1.5-V PCML\" ", chip_pin = "AD25" *) input refclk; (* altera_attribute = "-name IO_STANDARD \"1.5-V PCML\" ", chip_pin = "W27" *) input rx_in0; /******************************************************************************** ***********************/ /****************************************** ALTERA BOARD ***********************************************/ //(* altera_attribute = "-name IO_STANDARD \"1.5-V PCML\" ", chip_pin = "AM31" *) output tx_out0; //(* chip_pin = "N1" *) input pcie_rstn; //(* altera_attribute = "-name IO_STANDARD \"1.5-V PCML\" ", chip_pin = "AE29" *) input refclk; //(* altera_attribute = "-name IO_STANDARD \"1.5-V PCML\" ", chip_pin = "AN33" *) input rx_in0; /******************************************************************************** ***********************/ Одно комментируем, другую разкомментируем, меняем микросхему в проекте (это вручную, может кто знает как через attribute указать тип микросхемы?) Все. Цитата Если так, то либо нужно идти по всем пунктам всех документов и проверять, что трудно и легко ошибиться, или нужны промежуточные эксперименты. Например, signal tap посмотреть на статусные сигналы трансиверов, воткнуть плату в компьютер и начать из тестовой схемы делать физический уровень PCIe 1x. Надеюсь, что полезная информация появится непосредственно после приема TS1. Сложно. Вникать в PCIe протокол на самом нижнем уровне, у меня просто ОЧЕНЬ нет времени.
|
|
|
|
|
Dec 1 2010, 14:25
|
Знающий
   
Группа: Свой
Сообщений: 845
Регистрация: 18-10-04
Из: Pereslavl-Zalessky, Russian Federation
Пользователь №: 905

|
Тупые вопросы будут продолжаться. Приведено отличие только для того, что генерирует визард или это вся разница между дизайнами и остальные сигналы, например, клок для приложения, идет с тех же ног, что и в ките? Короче, все клоки идут куда надо?
Если 1x, то перекос между лэйнами как бы не должен мешать.
Можно поподробнее, как проверялся обмен с loopback-ом? Откуда на трансиверы при этом поступал опорный клок?
|
|
|
|
|
Dec 1 2010, 15:35
|

Гуру
     
Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230

|
Цитата(Shtirlits @ Dec 1 2010, 16:25)  Тупые вопросы будут продолжаться. Приведено отличие только для того, что генерирует визард или это вся разница между дизайнами и остальные сигналы, например, клок для приложения, идет с тех же ног, что и в ките? Короче, все клоки идут куда надо? Это вообще все сигналы что в системе есть. (специально сделал как можно меньше). Код module pcie_example_chaining_top ( // inputs: pcie_rstn, refclk, rx_in0,
// outputs: tx_out0, ) Цитата Если 1x, то перекос между лэйнами как бы не должен мешать.
Можно поподробнее, как проверялся обмен с loopback-ом? Откуда на трансиверы при этом поступал опорный клок? В системе есть генератор с дифф. выходом, который генерит 125 мегагерц. Что клок с PCIe поступает, я проверял делая ему assign на светодиод. Эти 4 сигнала, просто чтобы сузить сферу поиска глюка. На самом деле там сигналов гораздо больше. Просто не работает даже минимальный проект, который должен хотя бы распознаться BIOSом. Перекос между ланами не должен мешать в принципе. Именно для этого PCIe и создавался. Чтобы ланы можно было разной длинны делать.
|
|
|
|
|
Dec 1 2010, 15:41
|
Участник

Группа: Свой
Сообщений: 65
Регистрация: 13-09-10
Из: Israel
Пользователь №: 59 464

|
Цитата(Methane @ Dec 1 2010, 18:35)  В системе есть генератор с дифф. выходом, который генерит 125 мегагерц. А вы разве не должны принимать reference clock с материнки? Который 100МГц?
|
|
|
|
|
Dec 1 2010, 15:52
|
Знающий
   
Группа: Свой
Сообщений: 845
Регистрация: 18-10-04
Из: Pereslavl-Zalessky, Russian Federation
Пользователь №: 905

|
я не понимаю, какой был проект, когда выходы были замкнуты на входы? Откуда брался опорный клок, как определили, что данные принимаются и принимаются именно они?
Мои представления говорят о том, что должно быть два клока - один ***ски чистый reference для трансиверов и один для остальной схемы в 20 (10) раз медленнее. Ноги должны быть прописаны в файлах констрейнов. Извиняюсь, давно с quartus-ом не работал, голова полна зайлингса.
Перекос между лэйнами имеет допустимый предел, в несколько символов. Я PCIe наизусть не помню, но вероятно, как и в infiniband, проблемы возникнут при перекосе более 15 символов (длина последовательности 16 символов), что на печатной плате при всем желании сделать затруднительно. Однако, это лирика.
|
|
|
|
|
Dec 1 2010, 16:38
|

Гуру
     
Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230

|
Цитата(Cordroy @ Dec 1 2010, 17:41)  А вы разве не должны принимать reference clock с материнки? Который 100МГц? Для тестирования тех трансиверов что работают на PCIe , я могу подать сигнал откуда угодно. Выход трансивера подключается ко входу, и смотрится что на выходе десериалихатора. Цитата(DmitryR @ Dec 1 2010, 17:59)  Вообще-то чтобы контроллер увиделся в BIOS он IMHO должен быть не совсем минимальным. Да. Но после конфигуратора квартуса, и вообще единственный варинат проверить "на коленке", это довести до состояния " в BIOS появилось". И вся ставка был сделана именно на то, что схомутать, как бы негде. ПЛИС напрямую подключается к PCIe. Но судя по всему что-то не так пошло. Цитата(AJIEKCEu @ Dec 1 2010, 17:41)  А с фазовыми шумами у синхросигнала как? Если они есть и умножатся на 20... может не сильно хорошо получиться? Как вариант - сравнить спектр с китом. Какой спектр? Синхросигнал комп генерит.
|
|
|
|
|
Dec 1 2010, 16:49
|
Местный
  
Группа: Свой
Сообщений: 314
Регистрация: 7-12-05
Пользователь №: 11 917

|
Цитата(Methane @ Dec 1 2010, 19:38)  Какой спектр? Синхросигнал комп генерит. А разве не этот? Цитата(Methane) В системе есть генератор с дифф. выходом, который генерит 125 мегагерц. Что клок с PCIe поступает, я проверял делая ему assign на светодиод.
|
|
|
|
|
Dec 1 2010, 17:13
|

Гуру
     
Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230

|
Цитата(AJIEKCEu @ Dec 1 2010, 18:49)  А разве не этот? В системе есть дофига всего разного. Просто для простоты, чтобы выделить проблему я сделал минимальный проект. Корка PCIe + обвязка от альтеры по умолчанию. Для этого нужно всего 4 внешних сигнала. А для того чтобы проверить сериализаторы, я TX запустил генерить 1,2,3,4,.... и отдавать в линию, на которой должно было бы быть PCIe, А на разьем PCIe повесил разьем выдранный из материнки, на котором TX двумя проводами подал на RX. На приёмники RX я повесил просто регистр, на который повесил сигнал-тап. Все это затактовал от генератора который был на плате. Для работы PCIe генератор 125 не используется совсем. Его нет. Он нужен мне был только чтобы убедиться что к примеру все шарики припаяны.
|
|
|
|
|
Dec 2 2010, 14:23
|
Знающий
   
Группа: Свой
Сообщений: 845
Регистрация: 18-10-04
Из: Pereslavl-Zalessky, Russian Federation
Пользователь №: 905

|
QUOTE (Methane @ Dec 2 2010, 12:57)  Облом с тапом. CODE Error: Output port HIPDATAOUT of GXB receiver channel atom "top_example_chaining_pipen1b:core|top:epmap|top_serdes:serdes|top_serdes_alt4gxb_o08b:top_serdes_alt4gxb_o08b_component|receive_pcs0" must be connected to input port RXDATA of a PCIE HIP atom - Вы их жрете чтоли?! (С) Я имел в виду голый трансивер поставить на прием и воткнуть в компьютер. Есть миллион и еще десяток ситуаций, в которых loopback будет работать, а с другим устройством связи не будет. И дальше двигаться неинтресно, слишком большое пространство вариантов что и почему может не работать. Вы исходите из предположения, что неисправность вызвана использованием не нулевого трансиверного блока, а я из подозрений, что не напаяли терминаторы (если они нужны) или еще что-то не так с платой.
|
|
|
|
|
Dec 4 2010, 18:05
|
Частый гость
 
Группа: Свой
Сообщений: 166
Регистрация: 2-11-08
Из: Ростов-на-Дону
Пользователь №: 41 331

|
Цитата(Methane @ Dec 4 2010, 05:01)  Остальные не нужны. Для того чтобы PCIe нормально работал в режиме 1х нужно 4 сигнала. Не нужны, но если будут заземлены, то комп может даже не грузится.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|