Перейти к содержанию

    

PCI Express: Artix7 & Vivado

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

 

1. Есть задача проверки целостности сигналов PCI Express gen. 2 x4 для XC7A200T-2FFG1156I в HyperLynx. Для создания IBIS файла используется среда Vivado 2016.2. Процесс выгрузки оканчивается следующим сообщением:

 

WARNING: [Designutils 20-1693] Xilinx write_ibis has detected pins which do not have IBIS Support. This may be due to either of the following cases.

(1) The latest IBIS I/O model data has not yet been installed for artix7 devices.

(2) There are no IBIS models available for use at this time. The following signals will be listed as a no connect (NC) in the output file. Please use IBIS-AMI models for simulation of these pins.

 

Запрос в поддержку Xilinx остаётся без ответа.

 

Вопрос к специалистам: имеется ли у Вас указанная выше модель?

 

************************************************************

 

2. Выполняется назначение цепей GTP трансивера PCI Express gen. 2 x4 для XC7A200T-2FFG1156I для подключения к ведущему устройству в соответствии со следующим правилом:

XC7A200T -> Master

PEx4T[0]_N PEx4R[0]_N

PEx4T[0]_P PEx4R[0]_P

PEx4T[1]_N PEx4R[1]_N

PEx4T[1]_P PEx4R[1]_P

PEx4T[2]_N PEx4R[2]_N

PEx4T[2]_P PEx4R[2]_P

PEx4T[3]_N PEx4R[3]_N

PEx4T[3]_P PEx4R[3]_P

 

Master -> XC7A200T

PEx4T[0]_N PEx4R[0]_N

PEx4T[0]_P PEx4R[0]_P

PEx4T[1]_N PEx4R[1]_N

PEx4T[1]_P PEx4R[1]_P

PEx4T[2]_N PEx4R[2]_N

PEx4T[2]_P PEx4R[2]_P

PEx4T[3]_N PEx4R[3]_N

PEx4T[3]_P PEx4R[3]_P

 

Однако, в соответствии с Э4 отладочной платы HW-A7-AC701 от Xilinx, подключение к ведущему устройству выполнено "крест на крест":

XC7A200T -> Master

PEx4T[0]_N PEx4R[3]_N

PEx4T[0]_P PEx4R[3]_P

PEx4T[1]_N PEx4R[2]_N

PEx4T[1]_P PEx4R[2]_P

PEx4T[2]_N PEx4R[1]_N

PEx4T[2]_P PEx4R[1]_P

PEx4T[3]_N PEx4R[0]_N

PEx4T[3]_P PEx4R[0]_P

 

Master -> XC7A200T

PEx4T[0]_N PEx4R[3]_N

PEx4T[0]_P PEx4R[3]_P

PEx4T[1]_N PEx4R[2]_N

PEx4T[1]_P PEx4R[2]_P

PEx4T[2]_N PEx4R[1]_N

PEx4T[2]_P PEx4R[1]_P

PEx4T[3]_N PEx4R[0]_N

PEx4T[3]_P PEx4R[0]_P

 

post-5847-1517249519_thumb.png

 

Вопрос к специалистам: с какой целью в указанной плате могло быть применено подобное "зеркальное" назначение цепей и как в таком случае функционирует интерфейс; за счёт чего происходит "восстановление" правильного порядка? Верно ли предположение, что для PCI Express в Artix-7 при создании схемы возможно произвольное назначение цепей в пределах передающей и принимающей групп с последующим переназначением в проекте?

 

Спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Здравствуйте.

 

1. Есть задача проверки целостности сигналов PCI Express gen. 2 x4 для XC7A200T-2FFG1156I в HyperLynx. Для создания IBIS файла используется среда Vivado 2016.2. Процесс выгрузки оканчивается следующим сообщением:

 

WARNING: [Designutils 20-1693] Xilinx write_ibis has detected pins which do not have IBIS Support. This may be due to either of the following cases.

(1) The latest IBIS I/O model data has not yet been installed for artix7 devices.

(2) There are no IBIS models available for use at this time. The following signals will be listed as a no connect (NC) in the output file. Please use IBIS-AMI models for simulation of these pins.

 

************************************************************

 

2. Выполняется назначение цепей GTP трансивера PCI Express gen. 2 x4 для XC7A200T-2FFG1156I для подключения к ведущему устройству в соответствии со следующим правилом:

XC7A200T -> Master

PEx4T[0]_N PEx4R[0]_N

...

PEx4T[3]_N PEx4R[3]_N

 

Однако, в соответствии с Э4 отладочной платы HW-A7-AC701 от Xilinx, подключение к ведущему устройству выполнено "крест на крест":

XC7A200T -> Master

PEx4T[0]_N PEx4R[3]_N

...

PEx4T[3]_N PEx4R[0]_N

 

Вопрос к специалистам: с какой целью в указанной плате могло быть применено подобное "зеркальное" назначение цепей и как в таком случае функционирует интерфейс; за счёт чего происходит "восстановление" правильного порядка? Верно ли предположение, что для PCI Express в Artix-7 при создании схемы возможно произвольное назначение цепей в пределах передающей и принимающей групп с последующим переназначением в проекте?

 

Спасибо.

 

По первому вопросу возможный ответ выделен жирным. Для высокоскоростных пинов Xilinx поставляет IBIS-AMI модели.

 

По второму ситуация немного хитрее. Казалось бы, чип программируемый и расположение лейнов жестко не зафиксировано. Номера пинов MGTPx не имеют прямого отношения к номерам лейнов. Задаваемый пинаут привязывает не жестко заданные линии PCIe аппаратного контроллера, а всего лишь блоки GT(P), далее внутри чипа за счет трассировочного ресурса возможно их назначение на любой лейн. Но это только часть правды. На деле для благополучного достижения тайминга очень желательно следовать рекомендациям, а именно:

 

https://www.xilinx.com/support/documentatio...series-pcie.pdf - см. Table 4-12: Artix-7 Recommended GT Locations

 

https://www.xilinx.com/support/documentatio...ransceivers.pdf - см. FFG1156 Package Placement Diagram

 

Для вашего чипа получается, что Lane 0 должен находиться на GTP X0Y7 (XC7A200T GTPE2_CHANNEL_X0Y7), а это в свою очередь пины MGTP[T|R]X[P|N]3_216.

 

Т.е. выбранный вами вариант формально неправильный, вариант AC701 - правильный. На деле заработало бы и для вашего случая, хотя бы за счет функции Lane reversal. Но все же рекомендации производителя лучше соблюдать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
По первому вопросу возможный ответ выделен жирным. Для высокоскоростных пинов Xilinx поставляет IBIS-AMI модели.

 

По второму ситуация немного хитрее. Казалось бы, чип программируемый и расположение лейнов жестко не зафиксировано. Номера пинов MGTPx не имеют прямого отношения к номерам лейнов. Задаваемый пинаут привязывает не жестко заданные линии PCIe аппаратного контроллера, а всего лишь блоки GT(P), далее внутри чипа за счет трассировочного ресурса возможно их назначение на любой лейн. Но это только часть правды. На деле для благополучного достижения тайминга очень желательно следовать рекомендациям, а именно:

 

https://www.xilinx.com/support/documentatio...series-pcie.pdf - см. Table 4-12: Artix-7 Recommended GT Locations

 

https://www.xilinx.com/support/documentatio...ransceivers.pdf - см. FFG1156 Package Placement Diagram

 

Для вашего чипа получается, что Lane 0 должен находиться на GTP X0Y7 (XC7A200T GTPE2_CHANNEL_X0Y7), а это в свою очередь пины MGTP[T|R]X[P|N]3_216.

 

Т.е. выбранный вами вариант формально неправильный, вариант AC701 - правильный. На деле заработало бы и для вашего случая, хотя бы за счет функции Lane reversal. Но все же рекомендации производителя лучше соблюдать.

 

Уважаемый Flood, получалось ли у вас запросить у Xilinx 7-Series IBIS-AMI модели?

Скачать такие модели можно только до 6-й серии. По 7-й серии Xilinx просит запрос, на который не отвечают.

Изменено пользователем sf9

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Flood, спасибо за ответ.

 

1. Xilinx не ответил на наш запрос о предоставлении этих моделей, поэтому этот вопрос и возник на форуме.

 

2. Действительно, в документе PG054 есть примечание:

You can select other GT locations than those listed in the table if the timing is met in the design. To select other locations, manually modify the generated constraints in the XDC file.

 

Хотелось бы знать, критично ли это условие, если в проекте используется только один GTP трансивер, или это ограничение связано и с другими ядрами в проекте: DDR, RGMII и т. д?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Хотелось бы знать, критично ли это условие, если в проекте используется только один GTP трансивер, или это ограничение связано и с другими ядрами в проекте: DDR, RGMII и т. д?

 

IBIS-AMI лежат в полузакрытом месте:

https://www.xilinx.com/member/ibis_ami.html

Нужно зайти с логином и попроситься, должны пустить.

 

При использовании одного трансивера (т.е. одного лейна, а не 4-х) это не очень критично, но лучше перепроверить на тестовом проекте, а еще лучше - не нарушать лишний раз пожеланий производителя. Насколько я понимаю, для тайминга важно взаимное расположение блоков PCIe и GT.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Flood,

 

1. Пробовал зарегистрироваться и от РФ, и от страны, не входящей в ограничительный список (не D и E документа). Итог один: Request Not Accepted.

 

Если у Вас имеются эти модели, не могли бы Вы выложить их на FTP?

 

2. Используется именно 4 лейна. Что Вы имеете в виду под тестовым проектом: сборка проекта в Vivado или проверка на реальной плате с подобной конфигурацией PCIe? Если второе, то мы не можем этого сделать, пока не завершим проектирование платы, в данном случае - узла PCIe. Сохранилась ли в 7-й серии проблема прежних серий, заключавшаяся в том, что успешная сборка проекта не гарантировала нормального функционирования ПЛИС, особенно в широком диапазоне температур?

 

Спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Если у Вас имеются эти модели, не могли бы Вы выложить их на FTP?

 

2. Используется именно 4 лейна. Что Вы имеете в виду под тестовым проектом: сборка проекта в Vivado или проверка на реальной плате с подобной конфигурацией PCIe? Если второе, то мы не можем этого сделать, пока не завершим проектирование платы, в данном случае - узла PCIe. Сохранилась ли в 7-й серии проблема прежних серий, заключавшаяся в том, что успешная сборка проекта не гарантировала нормального функционирования ПЛИС, особенно в широком диапазоне температур?

 

Спасибо.

 

Моделей у меня нет, думаю их можно запросить у инженеров по применению (FAE) российских дистрибьюторов. Я обращался по похожим вопросам - опыт самый положительный.

 

Насчет "успешная сборка проекта не гарантировала нормального функционирования ПЛИС" - ничего не могу сказать, подобного поведения при доказанной вине ПЛИС или софта не наблюдал (тьфу-тьфу). Думаю, сборки pcie example design с предполагаемой конфигурацией вполне должно хватить. Если разведется - появится хоть какая-то гарантия. Ну а если не разведется - ответ очевиден.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Flood, большое спасибо за ответы. Очень помогли.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Кстати, IBIS-AMI модели для Artix 7 так и не удалось получить.

Для обсуждения создана отдельная тема: https://electronix.ru/forum/index.php?showtopic=145880

Если кто-то может помочь, просьба откликнуться

Изменено пользователем sf9

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация