Jump to content
    

Индустриальный 10GB Ethernet Switch на ПЛИС

Это не вопрос и не проблема, а чисто поговорить.

У нас сейчас пошел жесткий оптический Ethernet для реалтаймового Process Bus в системе управления. PRP, IEC61850, PTP для синхронизации.  EtherCAT уже не так прет.

Сегодняшние 20х 1G каналов наш Virtex-7 переваривает очень легко. Так как в сети оборудование почти все свое, хотим перейти на 10G. Ultrascale под рукой есть. Тот же Samtec предлагает вкусные Firefly в индустриальном диапазоне температур и даже нашли уже тех, кто готов на них FMC+ модули с 24х 10G дуплексными каналами сделать.

Но оказалось, что есть нюанс: индустриальных 10G Ethernet свичей нету. Парочка есть, но там только четыре 10G порта. А нам надо бы как минимум 12.

Вот и пришла идея взять ПЛИСину, прикрутить к ней оптическую FMC+ c 24-мя каналами Firefly, да забебехать простенький 10G Ethernet switch. Все это можно будет легко засунуть в индустриальщину, если взять подходящую плату. А если постараться, то даже cut-through можно замутить, вместо обычных store-and-forward - еще и задержки уменьшатся.

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

Share this post


Link to post
Share on other sites

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

Вполне  рабочая идея. Правда решение такое получится не самое дешевое но это и естественно. Получится этакой hand-made metamako switch :biggrin:

Хотя  полносвязная матрица 24х24  на 10G потребует серьезной буферной памяти и немало работы. Понятное дело если делать для себя  то можно и "сэкономить" на  функционале или совместимости со стандартами. Но это как и плюсы/минусы  такой работы надо тщательно взвешивать.  

Удачи! Rob.

Share this post


Link to post
Share on other sites

@syoma Здравствуйте, очень вкусные слова вы пишете =)

Сделать-то можно, только цель какая? Какую проблему решит 10G по сравнению с существующим дизайном? Может, готовых решений нет потому, что они никому не нужны?

Я высоко ценю высокотехнологичные, современные решения, но внедрять их без четкого понимания "ЗАЧЕМ?" - не стал бы, при всем уважении...

Share this post


Link to post
Share on other sites

В 17.01.2020 в 21:51, syoma сказал:

Но оказалось, что есть нюанс: индустриальных 10G Ethernet свичей нету. Парочка есть, но там только четыре 10G порта. А нам надо бы как минимум 12.

Вот и пришла идея взять ПЛИСину, прикрутить к ней оптическую FMC+ c 24-мя каналами Firefly, да забебехать простенький 10G Ethernet switch.

А может взять какой-нибудь ASIC от Broadcom? У них несколько линеек 10G+ свичей, должны быть варианты намного дешевле ПЛИС. Ну и тайм2маркет совсем другой. 

Share this post


Link to post
Share on other sites

On 1/17/2020 at 9:51 PM, syoma said:

взять ПЛИСину, прикрутить к ней оптическую FMC+ c 24-мя каналами Firefly, да забебехать

дико извиняюсь что лезу в что не понимаю, а вот такое вам не нужно ? https://aliexpress.ru/item/4000611407256.html?spm=a2g0v.12010612.8148356.1.a2777baeGYK2OW

Еще на 4 канала есть у него же, но по какой-то совершенно смешной цене https://aliexpress.ru/item/32907109444.html?spm=a2g0o.detail.1000013.1.26dd64b6UmVi8P&gps-id=pcDetailBottomMoreThisSeller&scm=1007.13339.146401.0&scm_id=1007.13339.146401.0&scm-url=1007.13339.146401.0&pvid=b3e8b54c-e56b-4256-a015-e3f69d00c376

ЗЫ посмотрел на стоимость XCVU9P-1FLGC2104I из первой борды и пришел к выводу, что ее стоимость еще более смешная. :crazy: 

" меняю FPGA на квартиру" 

Quote

 

 

Share this post


Link to post
Share on other sites

On 1/19/2020 at 1:26 AM, pavlovconst said:

 Может, готовых решений нет потому, что они никому не нужны?

Готовые решения обязательно появятся, только позже. Коммуникационные технологии сейчас слишком "сладкие", чтобы промышленность прошла мимо них.

On 1/19/2020 at 1:26 AM, pavlovconst said:

Сделать-то можно, только цель какая? Какую проблему решит 10G по сравнению с существующим дизайном?

А нам просто не хочется ждать. Запрос в большей пропускной способности есть здесь и сейчас, поэтому хочется его решить сегодня, чтобы получить преимущество в более упрощенной архитектуре и меньшем количестве кабелей. А когда появятся готовые свичи, можно будет и перейти на них.

15 hours ago, Flood said:

А может взять какой-нибудь ASIC от Broadcom? У них несколько линеек 10G+ свичей, должны быть варианты намного дешевле ПЛИС. Ну и тайм2маркет совсем другой. 

Смысл в том, что нам не нужен чип или ASIC. Нам нужна уже готовая плата. И тайм то маркет у нас тоже совсем другой. Еще меньше. Дешевле/дороже по железу не сильно играют.

Quote

дико извиняюсь что лезу в что не понимаю, а вот такое вам не нужно ? https://aliexpress.ru/item/4000611407256.html?spm=a2g0v.12010612.8148356.1.a2777baeGYK2OW

ЗЫ посмотрел на стоимость XCVU9P-1FLGC2104I из первой борды и пришел к выводу, что ее стоимость еще более смешная. :crazy: 

Ну, по принципу работы - да, это примерно то, что и нужно по железу. Но на Алиекспрессе такие вещи, естественно, не покупаются.

Share this post


Link to post
Share on other sites

On 1/17/2020 at 8:51 PM, syoma said:

Сегодняшние 20х 1G каналов наш Virtex-7 переваривает очень легко. Так как в сети оборудование почти все свое, хотим перейти на 10G. Ultrascale под рукой есть.

Ой ли? На Virtex-7 вы полноценное в состянии коммутировать ажно 20 гигабитных каналов? По полной выкладе? Разгребая/проверяя/анализируя заголовки и тело, поднимая сложнючую сигнализацию типа H.248? Строя и предсказывая коммутационные таблицы и трафик по разным направлениям, с использованием совсем не тривиальных алгоритмов? Ой, что не верится мне ...

А по поводу "десятки", во-первых, 20 "единичек" к здоровому камню уровню Виртекс-7/Стратикс-4 прикрутить не проблема. А вот где вы 12 phy на десятку в одной плисине возъмёте? Или если ставить несколько камней уровня "Ультраскэйл", то, простите, сколько ж такой девайс-то стоить будет? Если вы там гос.деньги, как водится, пилите - понятно. Но на ком.рынке - это, по-моему, утопия.

И, наконец, сложность такой разработки и, плюс, разгребание всего, что я выше написал, но уже когда это всё летает внутри кристалла на 156МГц по 72 верёвкам. Думаете справитесь с такой задачкой?

Edited by Kluwer

Share this post


Link to post
Share on other sites

11 minutes ago, Kluwer said:

Разгребая/проверяя/анализируя заголовки и тело, поднимая сложнючую сигнализацию типа H.248?

Как-то я в постановке задачи не увидел подъема выше L2...

Share this post


Link to post
Share on other sites

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

17 minutes ago, Kluwer said:

А вот где вы 12 phy на десятку в одной плисине возъмёте?

Так сейчас 32-48-64-96-120 каналов на 16/25/32 Gbit в одном чипе  V/K Ultrascale  обычное дело.  

Удачи! Rob.

Share this post


Link to post
Share on other sites

1 hour ago, Kluwer said:

По полной выкладе? Разгребая/проверяя/анализируя заголовки и тело, поднимая сложнючую сигнализацию типа H.248? Строя и предсказывая коммутационные таблицы и трафик по разным направлениям, с использованием совсем не тривиальных алгоритмов? Ой, что не верится мне ...

В том, то и дело, что как выше сказали, мне выше L2 особо не нужно. Надо только MACи разбирать, да на нужные порты перенаправлять. Единственное, что есть требование примитивного VLAN - чтобы ограничить броадкастинк по портам и трафик на нужные порты направлять, но я и тут думаю без L3 обойтись - мы только самую примитивщину используем, без всяких заморочек с резервацией полосы и прочего. А еще хочу шедулинг по TSN - но это хотелка очень-очень отдаленного будущего.

Quote

Ой ли? На Virtex-7 вы полноценное в состянии коммутировать ажно 20 гигабитных каналов?

Сорри, если неправильно поняли. У меня Virtex-7 в сегодняшнем виде выглядит как 20 сетевых плат с гигабитным интерфейсом каждая. Т.е. коммутации внутри ПЛИС между ними нет (кроме PRP на два порта) - они работают как бы независимо на прием и передачу в разных сетях и только потом уже между собой. И все это работает со стандартными индустриальными 1G свичами.

1 hour ago, Kluwer said:

А вот где вы 12 phy на десятку в одной плисине возъмёте? Или если ставить несколько камней уровня "Ультраскэйл", то, простите, сколько ж такой девайс-то стоить будет? Если вы там гос.деньги, как водится, пилите - понятно. Но на ком.рынке - это, по-моему, утопия.

Я не очень понял проблему. У меня не гос.деньги и это для внутреннего использования в системах управления, которые стоят пару лимонов по железу и стоимость 10 ПЛИС особо не влияет.

Share this post


Link to post
Share on other sites

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

13 minutes ago, syoma said:

В том, то и дело, что как выше сказали, мне выше L2 особо не нужно. Надо только MACи разбирать, да на нужные порты перенаправлять

Такой функционал без проблем можно в один чип засунуть. Я уже кидал ссылку на metamako (Arista 7130K series) -  на одном древнем Virtex7 до 48 портов 10G.

Удачи! Rob.

Share this post


Link to post
Share on other sites

5 minutes ago, RobFPGA said:

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

Такой функционал без проблем можно в один чип засунуть. Я уже кидал ссылку на metamako (Arista 7130K series) -  на одном древнем Virtex7 до 48 портов 10G.

Удачи! Rob.

Сомневаюсь насчёт 10x10G(не говоря уж о 48) в одной 7-ке.. Если можно терять данные и никак их не буферизировать то да, можно. Но вот даже в 2xDDR3_1866 100G в дуплексе ну никак не пролазит. 96 да, а 100 нет.
Стало быть, это либо лживо "маркетингово" обеспечивать много портов, либо несколько кристаллов.
U+ в этом плане повеселее будет.

Share this post


Link to post
Share on other sites

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

22 minutes ago, TRILLER said:

Сомневаюсь насчёт 10x10G(не говоря уж о 48) в одной 7-ке.. Если можно терять данные и никак их не буферизировать то да, можно. Но вот даже в 2xDDR3_1866 100G в дуплексе ну никак не пролазит. 96 да, а 100 нет.
Стало быть, это либо лживо "маркетингово" обеспечивать много портов, либо несколько кристаллов.

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

Удачи! Rob.

Share this post


Link to post
Share on other sites

46 минут назад, syoma сказал:

Сорри, если неправильно поняли. У меня Virtex-7 в сегодняшнем виде выглядит как 20 сетевых плат с гигабитным интерфейсом каждая.

Вопрос чуть в сторону - при реализации 20-и портов что происходит с частотными доменами портов? Можно ли получить единый домен для всех портов уже на уровне PHY, или они будут группироваться по-квадово? Если можно для всех, то достаточно ли для этого синхронизированных внешних рефклоков?

Интересно как для 1Гбит (CPLL),  так и для случая 10Гбит (QPLL).

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...