doom13 0 3 июня, 2015 Опубликовано 3 июня, 2015 · Жалоба Приветствую. Посоветуйте высокоскоростной последовательный интерфейс для связи (полный дуплекс) между FPGA Cyclone V GX. Максимальная пропускная способность 5 Гбит/с 10 Гбит/с. На одном из устройств будет ещё задействован 10G Ethernet MAC + XAUI. Предполагается соединение устройств по цепочке TX0 - > RX1_TX1 -> RX2_TX2 -> ...... -> RXN_10GMAC_XAUI Нахожу следующие IP-ядра у Altera: - Rapid IO; - Rapid IO II; - SerialLite II; - POS-PHY Level 4; - "Голый" PHY. Ни с одним из данных ядер не работал, хотелось бы услышать советы опытных. Спасибо. PS: Получится ли использовать каждый трансивер на приём и передачу для такой конфигурации? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
doom13 0 3 июня, 2015 Опубликовано 3 июня, 2015 · Жалоба Ещё вопрос, уже по Rapid IO II. Как понимаю, мне не подходит. Для GX девайсов, согласно документации, может прокачать не более 3.125 Гбит/с, режимы работы 1х/2х/4х. Тогда возникает вопрос, откуда взялось такое ограничение? XAUI IP по тем же четырём линиям даёт 10 Гбит/с. Или 3.125 Гбит/с это на одну линию? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
doom13 0 3 июня, 2015 Опубликовано 3 июня, 2015 · Жалоба Появился вопрос по ядру SerialLite. В доке нахожу некие противоречия. Написано, что для Cyclone V тянет 5 Гбит/с. Далее пишут, что для этого необходимо выбирать Transfer Size 4, а он доступен только для Stratix IV. Как понимаю, 5 Гбит/с 10 Гбит/с должно прокачать по двум четырём линиям. В свойствах ядра надо выбирать 4 линии, TSIZE 2 и пропускную способность линии 2.5 Гбит/с? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
prig 0 4 июня, 2015 Опубликовано 4 июня, 2015 · Жалоба ...В доке нахожу некие противоречия. ...В свойствах ядра надо выбирать 4 линии, TSIZE 2 и пропускную способность линии 2.5 Гбит/с? - Скорее всего, Transfer Size 4 не поддерживается именно для SerialLite. Но в любом случае, "физических" 5Гбит/с на двух лейнах для достижения скорости XAUI может быть недостаточно (см. далее). - Всегда надо учитывать кодирование. Иногда приходится учитывать оверхеды. Например, для 10Гбит/с на XAUI скорость передачи данных по дифф. паре - 3.125Гбит/с (кодирование 8/10). Собственно 10Гбит/с XAUI включают все издержки, связанные с формированием фреймов Ethernet. И т.д., и т.п. XAUI в полном комплекте требует изрядное кол-во ресурсов, но если конкретная задача и ПЛИС позволяют, то сгодится только он один. Но скорее всего, больше подойдёт что-нибудь облегчённое. Но что именно Вам ближе, придётся разбираться самому. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
doom13 0 4 июня, 2015 Опубликовано 4 июня, 2015 · Жалоба - Скорее всего, Transfer Size 4 не поддерживается именно для SerialLite. Но в любом случае, "физических" 5Гбит/с на двух лейнах для достижения скорости XAUI может быть недостаточно (см. далее). - Всегда надо учитывать кодирование. Иногда приходится учитывать оверхеды. Например, для 10Гбит/с на XAUI скорость передачи данных по дифф. паре - 3.125Гбит/с (кодирование 8/10). Собственно 10Гбит/с XAUI включают все издержки, связанные с формированием фреймов Ethernet. И т.д., и т.п. XAUI в полном комплекте требует изрядное кол-во ресурсов, но если конкретная задача и ПЛИС позволяют, то сгодится только он один. Но скорее всего, больше подойдёт что-нибудь облегчённое. Но что именно Вам ближе, придётся разбираться самому. И XAUI и Rapid IO II и SerialLite II используют одни и теже трансиверы, т.е. пропускная способность должна быть примерно одинакова. Вопрос в том, какое ядро лучше применить в моём случае? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
goodsoul 0 4 июня, 2015 Опубликовано 4 июня, 2015 (изменено) · Жалоба И XAUI и Rapid IO II и SerialLite II используют одни и теже трансиверы, т.е. пропускная способность должна быть примерно одинакова. Вопрос в том, какое ядро лучше применить в моём случае? Если особых требований нет - только перегнать данные по схеме "точка-точка" - берите самый легковесный вариант. Смотрите resource utilization в описании мегафункции. Ну и стоимость решения. Если это для вас актуально. UPDATE: посмотрел на стоимость решений. Serial Lite II входит IP BASE SUITE и достанется вам вместе с Subscription версией квартуса. RapidIO и пр. продаются отдельно с стоят весьма кучеряво. Изменено 4 июня, 2015 пользователем goodsoul Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
doom13 0 4 июня, 2015 Опубликовано 4 июня, 2015 · Жалоба Если особых требований нет - только перегнать данные по схеме "точка-точка" - берите самый легковесный вариант. Смотрите resource utilization в описании мегафункции. Ну и стоимость решения. Если это для вас актуально. UPDATE: посмотрел на стоимость решений. Serial Lite II входит IP BASE SUITE и достанется вам вместе с Subscription версией квартуса. RapidIO и пр. продаются отдельно с стоят весьма кучеряво. Из требований только то, что это для Cyclone V GX. Схема не совсем "точка-точка", а точка_1 -> точка_2 -> точка_3 -> ... -> точка_N. Поток данных накапливается с возрастанием номера устройства, последнее выдаёт весь поток в сеть 10G Ethernet. У всех описанных ядер есть Link-layer, тут смущает возможность нормальной синхронизации TX0 и RX1, TX1 и RX2 и т.д. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
prig 0 5 июня, 2015 Опубликовано 5 июня, 2015 · Жалоба И XAUI и Rapid IO II и SerialLite II используют одни и теже трансиверы, т.е. пропускная способность должна быть примерно одинакова. Вопрос в том, какое ядро лучше применить в моём случае? Ясень пень, что трансиверы те же самые. Но "бесплатные" ядра как правило в чём-то урезаны. Для SerialLite это скорость до 3.125Гбит/с. Но максимальные 5 Гбит/с не столь уж интересны, если оглядываться на конкретные стандарты. Так что, вполне годное ядро. ...Поток данных накапливается с возрастанием номера устройства, последнее выдаёт весь поток в сеть 10G Ethernet. У всех описанных ядер есть Link-layer, тут смущает возможность нормальной синхронизации TX0 и RX1, TX1 и RX2 и т.д. Как можно посоветовать что-то для вашего случая, если он описан крайне скупо? Что за данные у Вас бегают, какие требования к трафику, задержкам, ошибкам, синхронизации и т.д.? Что такое в вашем понимании "нормальная синхронизация" "TX0 и RX1" и каким боком она относится к Link-layer? С другой стороны, есть ли необходимость вываливать формализованную задачу в "эти ваши инеты"? Фокус в том, что как только Вы формализуете задачу и изложите её в виде ТЗ, помощь Вам уже не понадобится. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
doom13 0 5 июня, 2015 Опубликовано 5 июня, 2015 · Жалоба Как можно посоветовать что-то для вашего случая, если он описан крайне скупо? Что за данные у Вас бегают, какие требования к трафику, задержкам, ошибкам, синхронизации и т.д.? Что такое в вашем понимании "нормальная синхронизация" "TX0 и RX1" и каким боком она относится к Link-layer? Данные передаются в одну сторону. От устройства №0 к устройству #1, далее к устройству №2 и т.д. Каждое устройство к принимаемому потоку добавляет ещё и свои данные. Т.о. поток данных возрастает и к последнему приходит поток данных порядка 10 Гбит/с. Link-layer, как понимаю, отвечает за автоматическое установление связи между двумя устройствами соединёнными по схеме TX0 -> RX1, TX1 -> RX0. При установлении link-a гарантирован правильный приём/передача данных со сторопы user-interface. При приёме последовательных данных автоматом происходит их правильное выравнивание, преобразование в параллельный вид, декодирование. Как писал выше, необходима схема соединения TX0 - > RX1_TX1 -> RX2_TX2 -> ...... -> RXN, где RX1_TX1 - это один и тот же трансивер (или одни и те же 4 трансивера для достижения полезной пропускной способности в 10 Гбит/с), приёмник которого завязан на устройство №0, а передатчик на устройство №2 (надеюсь тут понятно расписано). Вот тут и возникает вопрос - возможно ли такое соединение и не вылезут ли какие подводные камни? Т.е., наверное, необходима какая-то дополнительная надстройка (функция), которая будет отвечать за правильную передачу данных от TX0 к RX1, TX1 к RX2 и т.д. И возможно ли это, если один трансивер завязан на два разных трансивера? Для SerialLite II нашёл, если правильно понял, что такое есть - настройка Self Synchronized Link Up, которая позваляет независимую работу приёмника и передатчика в одном трансивере. Но она доступна только для режима 1-line. Теперь смотрю на ядра Custom PHY IP Core и Cyclone V Transceiver Native PHY IP Core. Для Custom PHY IP Core есть Word alignment mode - Manual и Bit slipping. По описанию, вроде как оно и надо, но т.к. железо править будет сложно, то остаются сомнения. Опять же вопрос подойдут ли данные ядра для моей схемы соединения? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
doom13 0 3 сентября, 2015 Опубликовано 3 сентября, 2015 · Жалоба Приступаем к разработке платы и тема снова актуальна. Может кто поможет развеять сомнения по данному вопросу? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
bugdesigner 0 4 сентября, 2015 Опубликовано 4 сентября, 2015 · Жалоба А какая физическая среда передачи планируется между устройствами? И какое расстояние? Мне просто интересно чем можно пробросить такие потоки. На ум приходят только LVDS кабели... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
doom13 0 4 сентября, 2015 Опубликовано 4 сентября, 2015 · Жалоба А какая физическая среда передачи планируется между устройствами? И какое расстояние? Мне просто интересно чем можно пробросить такие потоки. На ум приходят только LVDS кабели... В данном случае N модулей будут соединяться друг с другом через материнскую плату. XAUI работает примерно 4-5 см от FPGA до разъёма плюс 4-5 см по мезонину до трансивера. Ядро XAUI занимает 4 трансивера и частично 5 канал (PLL + делитель), см. рисунок. Можно ли упаковать его в 4 канала (доку читаю, но что-то не нахожу ответа)? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Алексей_1990 0 14 декабря, 2015 Опубликовано 14 декабря, 2015 · Жалоба Доброго времени суток! Прошу прощения, если не по адресу, но покапавшись в форуме не нашёл ничего приближенного. Подскажите, пожалуйста с помощью каких ip ядер я могу принять высокоскоростной последовательный асинхронный код? Да, и не могли бы расписать поподробнее. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться