RoadRunner 0 19 июля, 2018 Опубликовано 19 июля, 2018 · Жалоба Всем доброго времени суток. Собственно, нужно наладить прием/передачу по LVDS между двумя платами с Cyclone V. Скорость до 1 Гбит/с, расстояние до 20 метров. Мне видятся два варианта: - использовать Dedicated Tranceiver. Будет одна витая пара. Тут проблема в том, что для меня это зверь неизвестный и неизвестно сколько там будет глюков и подводных камней при его отладке. В этой связи хотелось бы послушать опытных в его использовании людей. - прокинуть две витые пары под данные и под клок. Использовать либо готовое решение сериализатора/десериализатора в виде мегафункций ALTLVDS_TX/RX, либо самому это сделать на обычной внутренней PLL (ALT_PLL) и сдвиговых регистрах. Мне больше всего нравится последний вариант - сделать все самому - по причине его прозрачности для меня как для разработчика. И если уж в этом случае исправлять глюки, то в основном свои, а не альтеровских разрабов. Вопрос в том, насколько это вообще реально, нормально выделить и подстроить под данные клок PLLкой на приемной стороне без применения оптимизированных dedicated блоков на таких скоростях и расстояниях. Буду благодарен за советы. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
warrior-2001 0 19 июля, 2018 Опубликовано 19 июля, 2018 · Жалоба Приветствую. Если на обеих платах одинаковые источники синхронизации, то будут работать оба варианта. Если разные - то тоже заработают оба варианта скорее всего, но зачем рисковать? Я бы заложил 2 витые пары а потом попробовало оба способа реализации и в случае успеха первого варианта отказался бы от подключения второй пары. Вот только в datasheet указаны скорости, менее 1 Гб/с. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RoadRunner 0 19 июля, 2018 Опубликовано 19 июля, 2018 · Жалоба Приветствую. Если на обеих платах одинаковые источники синхронизации, то будут работать оба варианта. Да, забыл написать, синхронизацию плат планируется делать через этот самый интерфейс передачи данных. Т.е. есть одна плата, задающая клок, а другая (другие) цепляют клок от нее. Таким образом вариант с отдельной линией под клок тут идеально устраивает. В то же время трансиверы выделяют клок из линии данных, который потом по идее доступен для использования в ПЛИС. Но это на бумаге опять же, в теории. Хочется узнать, что там на практике. Трансивер, судя по первому знакомству, - штука довольно громоздкая с кучей функций, кодирований и т.д., да еще и "черный ящик", во внутренности которого, если глюкнет, даже осциллографом не подоткнешься для отладки. Другое дело, если без этих сложностей не обойтись. Например, то же кодирование 8B/10B, которое опционально есть в трансивере, постоянку в линии убирает, что возможно уменьшит энергопотребление. Но я пока это смутно себе представляю. Вот только в datasheet указаны скорости, менее 1 Гб/с. Если вы datasheet на трансивер имеете ввиду, то да, тут тоже вопрос: там в настройках можно выставить минимальную скорость 800Мбит/с. Есть также пересет с настройками на 600 с копейками. Почему такая граница снизу на скорость, и чем она определяется, мне тоже непонятно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Leka 1 19 июля, 2018 Опубликовано 19 июля, 2018 (изменено) · Жалоба В даташитах много маркетинга, особенно для дешевых кристаллов. Реальные параметры м/б заметно лучше. Имхо. Изменено 19 июля, 2018 пользователем Leka Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RobFPGA 34 19 июля, 2018 Опубликовано 19 июля, 2018 · Жалоба Приветствую! Да, забыл написать, синхронизацию плат планируется делать через этот самый интерфейс передачи данных. Т.е. есть одна плата, задающая клок, а другая (другие) цепляют клок от нее. Таким образом вариант с отдельной линией под клок тут идеально устраивает.Пропихнуть 1Gb через 1 дифф пару пинов скорее всего не получится - на сколько помню для Cyclone V 640 Mb только LVDS тянет. В то же время трансиверы выделяют клок из линии данных, который потом по идее доступен для использования в ПЛИС. Но это на бумаге опять же, в теории. Хочется узнать, что там на практике. Трансивер, судя по первому знакомству, - штука довольно громоздкая с кучей функций, кодирований и т.д., да еще и "черный ящик", во внутренности которого, если глюкнет, даже осциллографом не подоткнешься для отладки. Другое дело, если без этих сложностей не обойтись. Например, то же кодирование 8B/10B, которое опционально есть в трансивере, постоянку в линии убирает, что возможно уменьшит энергопотребление. Но я пока это смутно себе представляю.Так запустите трансивер в симуляторе и поиграйтесь параметрами и режимами работы. Если вы datasheet на трансивер имеете ввиду, то да, тут тоже вопрос: там в настройках можно выставить минимальную скорость 800Мбит/с. Есть также пересет с настройками на 600 с копейками. Почему такая граница снизу на скорость, и чем она определяется, мне тоже непонятно.Скорее всего зависит от ограничения снизу в частотах генерации внутренних PLL или подстраиваемых линий задержек. А 600 Mb получаю скорее всего 2х оверсампингом и прореживанием данных на выходе трансивера. IMHO - 1Gb на 20 метров - лучше тянуть оптикой - через те-же трансиверы. Стандартное решение. Удачи! Rob. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
1891ВМ12Я 0 19 июля, 2018 Опубликовано 19 июля, 2018 · Жалоба Собственно, нужно наладить прием/передачу по LVDS между двумя платами с Cyclone V. Скорость до 1 Гбит/с, расстояние до 20 метров Я не спец по возможностям выводов ПЛИС, но всё же рискну предположить что есть некие "нагрузочные характеристики" (макс. ток, предельная емкость), которые могут не позволить выдать такую скорость на такое расстояние. Другое дело оптика. И да, пишут что LVDS на сык5 не дает гиг. Если не секрет, почему не Ethernet? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RobFPGA 34 19 июля, 2018 Опубликовано 19 июля, 2018 · Жалоба Приветствую! Я не спец по возможностям выводов ПЛИС, но всё же рискну предположить что есть некие "нагрузочные характеристики" (макс. ток, предельная емкость), которые могут не позволить выдать такую скорость на такое расстояние.Если есть хорошие кабеля с разъемами то можно и больше гнать - я передавал/принимал c Virtex5 на 10m по меди 4x 3.125 Gb. Удачи! Rob Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Leka 1 19 июля, 2018 Опубликовано 19 июля, 2018 · Жалоба Кстати, если мало кабелей, почему витая пара, а не тонкий коаксиал, например? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RoadRunner 0 19 июля, 2018 Опубликовано 19 июля, 2018 (изменено) · Жалоба Пропихнуть 1Gb через 1 дифф пару пинов скорее всего не получится - на сколько помню для Cyclone V 640 Mb только LVDS тянет. Да, нашел в описании на Cyclone такое. Спасибо за информацию. Я не спец по возможностям выводов ПЛИС, но всё же рискну предположить что есть некие "нагрузочные характеристики" (макс. ток, предельная емкость), которые могут не позволить выдать такую скорость на такое расстояние. Другое дело оптика. И да, пишут что LVDS на сык5 не дает гиг. Если не секрет, почему не Ethernet? Хочется упростить физический интерфейс, от PHY/свичей избавиться. Во-первых, едят много. Во-вторых, большие потери и задержки накапливаются при соединени многих элементов друг за другом гирляндой. С потерями, строго говоря, не все ясно, возникают ли они из-за некачественной линии или непосредственно в свиче. Есть подозрение, что второе. Собственно, я щас эту систему и переделываю с Ethernet на более простой физический интерфейс. Кстати, если мало кабелей, почему витая пара, а не тонкий коаксиал, например? Под определенный кабель делаю - четыре витых пары. Для полного дуплекса. Я не могу выбрать произвольный, какой хочу. На худой конец и 500 Мбит сгодится. 1000 - это уж задача максимум) Изменено 19 июля, 2018 пользователем RoadRunner Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
TRILLER 0 19 июля, 2018 Опубликовано 19 июля, 2018 · Жалоба Если есть хорошие кабеля с разъемами то можно и больше гнать - я передавал/принимал c Virtex5 на 10m по меди 4x 3.125 Gb. Сердесами без использования рокетов? Круто! В V6 да на 5 метров приходилось приёмо-передатчики чуть ли не врукопашную подстраивать. Правда там было 6,25.. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RoadRunner 0 19 июля, 2018 Опубликовано 19 июля, 2018 · Жалоба Приветствую! Если есть хорошие кабеля с разъемами то можно и больше гнать - я передавал/принимал c Virtex5 на 10m по меди 4x 3.125 Gb. А хороший кабель - это какой? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RobFPGA 34 19 июля, 2018 Опубликовано 19 июля, 2018 · Жалоба Приветствую! Сердесами без использования рокетов? ...Нее.. я не такой мазохист :) - это был обычный XAUI линк для 10G Ethernet на рокетах как и положено. Но на линке было 4 разъема. А хороший кабель - это какой?Смотрите CX4 copper cable. Удачи! Rob. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
blackfin 26 19 июля, 2018 Опубликовано 19 июля, 2018 · Жалоба А хороший кабель - это какой? Category 8? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Volkov 0 19 июля, 2018 Опубликовано 19 июля, 2018 · Жалоба Всем доброго времени суток. Собственно, нужно наладить прием/передачу по LVDS между двумя платами с Cyclone V. Скорость до 1 Гбит/с, расстояние до 20 метров. А если эквалайзер поставить на приемной плате, скажем DS16EV5110. А передавать через TMDS Redriver. . Можно на суппорте TI поспрашивать как их редрайверы работают на кабель 20м. Приветствую! Если есть хорошие кабеля с разъемами то можно и больше гнать - я передавал/принимал c Virtex5 на 10m по меди 4x 3.125 Gb. Удачи! Rob Хороший кабель + хороший драйвер и приемник. Вы же не LVDS c Virtex5 гнали. Что бы передавать на 20м, нужно развязать по DC, соответственно и 8/10b кодирование. И эквалайзер, у вас был на Virtex5, и приемфазисыЮ с деемпфазисами. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
1891ВМ12Я 0 19 июля, 2018 Опубликовано 19 июля, 2018 · Жалоба Если есть хорошие кабеля с разъемами то можно и больше гнать - я передавал/принимал c Virtex5 на 10m по меди 4x 3.125 Gb. Присоединяюсь к вопросу предыдущего комментария: какие хитрости и дополнительные навороты использовались для достижения подобного результата? И можно ли просто выдавая сигнал на дифпару получить гиг на 20 метров? Без предыскажений, без эквалайзеров, без самосинхронизирующих кодирований и т.п.? А то ведь XAUI много чего в себе наворачивает... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться