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

Cyclone V HS Serial Interface

Приветствую.

Посоветуйте высокоскоростной последовательный интерфейс для связи (полный дуплекс) между 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:

Получится ли использовать каждый трансивер на приём и передачу для такой конфигурации?

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


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

Ещё вопрос, уже по Rapid IO II. Как понимаю, мне не подходит. Для GX девайсов, согласно документации, может прокачать не более 3.125 Гбит/с, режимы работы 1х/2х/4х. Тогда возникает вопрос, откуда взялось такое ограничение? XAUI IP по тем же четырём линиям даёт 10 Гбит/с. Или 3.125 Гбит/с это на одну линию?

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


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

Появился вопрос по ядру SerialLite. В доке нахожу некие противоречия. Написано, что для Cyclone V тянет 5 Гбит/с. Далее пишут, что для этого необходимо выбирать Transfer Size 4, а он доступен только для Stratix IV.

Как понимаю, 5 Гбит/с 10 Гбит/с должно прокачать по двум четырём линиям. В свойствах ядра надо выбирать 4 линии, TSIZE 2 и пропускную способность линии 2.5 Гбит/с?

post-63539-1433338489_thumb.jpg

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


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

...В доке нахожу некие противоречия.

...В свойствах ядра надо выбирать 4 линии, TSIZE 2 и пропускную способность линии 2.5 Гбит/с?

 

- Скорее всего, Transfer Size 4 не поддерживается именно для SerialLite.

Но в любом случае, "физических" 5Гбит/с на двух лейнах для достижения скорости XAUI может быть недостаточно (см. далее).

 

- Всегда надо учитывать кодирование. Иногда приходится учитывать оверхеды.

Например, для 10Гбит/с на XAUI скорость передачи данных по дифф. паре - 3.125Гбит/с (кодирование 8/10).

Собственно 10Гбит/с XAUI включают все издержки, связанные с формированием фреймов Ethernet. И т.д., и т.п.

 

XAUI в полном комплекте требует изрядное кол-во ресурсов, но если конкретная задача и ПЛИС позволяют, то сгодится только он один.

Но скорее всего, больше подойдёт что-нибудь облегчённое. Но что именно Вам ближе, придётся разбираться самому.

 

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


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

- Скорее всего, Transfer Size 4 не поддерживается именно для SerialLite.

Но в любом случае, "физических" 5Гбит/с на двух лейнах для достижения скорости XAUI может быть недостаточно (см. далее).

 

- Всегда надо учитывать кодирование. Иногда приходится учитывать оверхеды.

Например, для 10Гбит/с на XAUI скорость передачи данных по дифф. паре - 3.125Гбит/с (кодирование 8/10).

Собственно 10Гбит/с XAUI включают все издержки, связанные с формированием фреймов Ethernet. И т.д., и т.п.

 

XAUI в полном комплекте требует изрядное кол-во ресурсов, но если конкретная задача и ПЛИС позволяют, то сгодится только он один.

Но скорее всего, больше подойдёт что-нибудь облегчённое. Но что именно Вам ближе, придётся разбираться самому.

И XAUI и Rapid IO II и SerialLite II используют одни и теже трансиверы, т.е. пропускная способность должна быть примерно одинакова.

Вопрос в том, какое ядро лучше применить в моём случае?

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


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

И XAUI и Rapid IO II и SerialLite II используют одни и теже трансиверы, т.е. пропускная способность должна быть примерно одинакова.

Вопрос в том, какое ядро лучше применить в моём случае?

 

Если особых требований нет - только перегнать данные по схеме "точка-точка" - берите самый легковесный вариант. Смотрите resource utilization в описании мегафункции.

Ну и стоимость решения. Если это для вас актуально.

 

UPDATE: посмотрел на стоимость решений. Serial Lite II входит IP BASE SUITE и достанется вам вместе с Subscription версией квартуса. RapidIO и пр. продаются отдельно с стоят весьма кучеряво.

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

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


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

Если особых требований нет - только перегнать данные по схеме "точка-точка" - берите самый легковесный вариант. Смотрите 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 и т.д.

 

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


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

И XAUI и Rapid IO II и SerialLite II используют одни и теже трансиверы, т.е. пропускная способность должна быть примерно одинакова.

Вопрос в том, какое ядро лучше применить в моём случае?

 

Ясень пень, что трансиверы те же самые. Но "бесплатные" ядра как правило в чём-то урезаны. Для SerialLite это скорость до 3.125Гбит/с. Но максимальные 5 Гбит/с не столь уж интересны, если оглядываться на конкретные стандарты. Так что, вполне годное ядро.

 

...Поток данных накапливается с возрастанием номера устройства, последнее выдаёт весь поток в сеть 10G Ethernet. У всех описанных ядер есть Link-layer, тут смущает возможность нормальной синхронизации TX0 и RX1, TX1 и RX2 и т.д.

 

Как можно посоветовать что-то для вашего случая, если он описан крайне скупо?

Что за данные у Вас бегают, какие требования к трафику, задержкам, ошибкам, синхронизации и т.д.?

Что такое в вашем понимании "нормальная синхронизация" "TX0 и RX1" и каким боком она относится к Link-layer?

 

С другой стороны, есть ли необходимость вываливать формализованную задачу в "эти ваши инеты"?

Фокус в том, что как только Вы формализуете задачу и изложите её в виде ТЗ, помощь Вам уже не понадобится.

 

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


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

Как можно посоветовать что-то для вашего случая, если он описан крайне скупо?

Что за данные у Вас бегают, какие требования к трафику, задержкам, ошибкам, синхронизации и т.д.?

Что такое в вашем понимании "нормальная синхронизация" "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. По описанию, вроде как оно и надо, но т.к. железо править будет сложно, то остаются сомнения.

Опять же вопрос подойдут ли данные ядра для моей схемы соединения?

 

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


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

Приступаем к разработке платы и тема снова актуальна. Может кто поможет развеять сомнения по данному вопросу?

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


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

А какая физическая среда передачи планируется между устройствами? И какое расстояние? Мне просто интересно чем можно пробросить такие потоки. На ум приходят только LVDS кабели...

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


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

А какая физическая среда передачи планируется между устройствами? И какое расстояние? Мне просто интересно чем можно пробросить такие потоки. На ум приходят только LVDS кабели...

В данном случае N модулей будут соединяться друг с другом через материнскую плату. XAUI работает примерно 4-5 см от FPGA до разъёма плюс 4-5 см по мезонину до трансивера.

 

Ядро XAUI занимает 4 трансивера и частично 5 канал (PLL + делитель), см. рисунок. Можно ли упаковать его в 4 канала (доку читаю, но что-то не нахожу ответа)?

post-63539-1441372870_thumb.jpg

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


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

Доброго времени суток! Прошу прощения, если не по адресу, но покапавшись в форуме не нашёл ничего приближенного. Подскажите, пожалуйста с помощью каких ip ядер я могу принять высокоскоростной последовательный асинхронный код? Да, и не могли бы расписать поподробнее.

 

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


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

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...