|
FPGA для работы с 10G Ethernet |
|
|
|
 |
Ответов
(1 - 14)
|
Dec 5 2016, 14:01
|
Частый гость
 
Группа: Участник
Сообщений: 136
Регистрация: 3-09-09
Пользователь №: 52 178

|
Цитата(gin @ Dec 5 2016, 14:56)  Всем добрый день! Может кто-нить поднимал на ПЛИС 10G Ethernet? Какие ПЛИС использовали для этого, и какие отладочные платы и каких производителей можете порекомендовать? Заранее спасибо! Для современных ПЛИС 10G вообще не скорость. Если хотите поднять десятку на low-end (циклоны/спартаны), то берете плис с 4x3.125 трансиверами, ставите внешний XAUI PHY и вперед. Более кошерный вариант - брать плис с 10G трансиверами (арии, кинтексы, стратиксы, виктексы). Там внешний PHY не понадобится.
|
|
|
|
|
Dec 5 2016, 14:12
|

Частый гость
 
Группа: Участник
Сообщений: 183
Регистрация: 17-12-10
Пользователь №: 61 682

|
Цитата(goodsoul @ Dec 5 2016, 17:01)  Для современных ПЛИС 10G вообще не скорость. Если хотите поднять десятку на low-end (циклоны/спартаны), то берете плис с 4x3.125 трансиверами, ставите внешний XAUI PHY и вперед. Более кошерный вариант - брать плис с 10G трансиверами (арии, кинтексы, стратиксы, виктексы). Там внешний PHY не понадобится. 10G - это для начала, потом нужно 40G. Просто, как я понимаю, там должна быть оптика, а значит должны быть модули SFP или QSFP. И вот пока не очень понятно, как должно быть организовано взаимодействие ПЛИС с этими модулями. Вот собственно и смотрю в сторону Arria 10, есть там интересный вариант с QSFP+, но для меня не очень понятно как обрабатывать от них данные. Там же от каждой QSFP идут 4 линии на ПЛИС, и как тот же Ethernet трафик по ним распределяется, и как его собирать затем в пакеты
Сообщение отредактировал gin - Dec 5 2016, 14:15
|
|
|
|
|
Dec 5 2016, 14:39
|
Профессионал
    
Группа: Свой
Сообщений: 1 214
Регистрация: 23-12-04
Пользователь №: 1 643

|
Приветствую! Цитата(gin @ Dec 5 2016, 17:12)  10G - это для начала, потом нужно 40G. Просто, как я понимаю, там должна быть оптика, а значит должны быть модули SFP или QSFP. И вот пока не очень понятно, как должно быть организовано взаимодействие ПЛИС с этими модулями.
Вот собственно и смотрю в сторону Arria 10, есть там интересный вариант с QSFP+, но для меня не очень понятно как обрабатывать от них данные. Там же от каждой QSFP идут 4 линии на ПЛИС, и как тот же Ethernet трафик по ним распределяется, и как его собирать затем в пакеты А для этого Вам нужно в FPGA сделать 10/40G PCS/PMA корку чтобы через MGT трансиверы можно было подключится к QSFP+ и в придачу 10/40G MAC controler который и будет принимать и отправлять пакеты. Посмотрите примеры реализации и даташиты корок 10/40G на сайте производителя FPGA которую Вы выберете - там все понятно будет. Удачи! Rob.
|
|
|
|
|
Dec 5 2016, 14:48
|

Частый гость
 
Группа: Участник
Сообщений: 183
Регистрация: 17-12-10
Пользователь №: 61 682

|
Цитата(RobFPGA @ Dec 5 2016, 17:39)  Приветствую!
А для этого Вам нужно в FPGA сделать 10/40G PCS/PMA корку чтобы через MGT трансиверы можно было подключится к QSFP+ и в придачу 10/40G MAC controler который и будет принимать и отправлять пакеты.
Посмотрите примеры реализации и даташиты корок 10/40G на сайте производителя FPGA которую Вы выберете - там все понятно будет.
Удачи! Rob. Спасибо! Правильно ли я понял. что для работы с SFP (до 10G) корки никакие не нужны, а нужно только использовать встроенные в ПЛИС сериалайзеры/десериалайзеры. А для работы с QSFP нужно писать еще дополнительную корку. И предоставляют ли такие корки производители ПЛИС?
|
|
|
|
|
Dec 5 2016, 15:19
|
Профессионал
    
Группа: Свой
Сообщений: 1 214
Регистрация: 23-12-04
Пользователь №: 1 643

|
Приветствую! Цитата(gin @ Dec 5 2016, 17:48)  Спасибо! Правильно ли я понял. что для работы с SFP (до 10G) корки никакие не нужны, а нужно только использовать встроенные в ПЛИС сериалайзеры/десериалайзеры. А для работы с QSFP нужно писать еще дополнительную корку. И предоставляют ли такие корки производители ПЛИС? Нет не правильно - не важно для какой скорости - если упрощенно то в любом случае нужно будет иметь как минимум 1 PHY уровень - для 10/40G это модуль MGT трансиверов, 2 Physical Coding/Attachment Sub-layer - для 10/40G это корка PCS/PMA - кодирование, синхронизация канала, поднятие линка, 3 Media access layer- отправка/прием пакетов, для 10/40G это корка MAC контроллера 4 ... ...... Если есть финансы то писать нужно будет только сумму в счете  а не корки. Успехов! Rob.
|
|
|
|
|
Dec 5 2016, 15:33
|

Частый гость
 
Группа: Участник
Сообщений: 183
Регистрация: 17-12-10
Пользователь №: 61 682

|
Цитата(RobFPGA @ Dec 5 2016, 18:19)  Приветствую! Нет не правильно - не важно для какой скорости - если упрощенно то в любом случае нужно будет иметь как минимум 1 PHY уровень - для 10/40G это модуль MGT трансиверов, 2 Physical Coding/Attachment Sub-layer - для 10/40G это корка PCS/PMA - кодирование, синхронизация канала, поднятие линка, 3 Media access layer- отправка/прием пакетов, для 10/40G это корка MAC контроллера 4 ... ...... Если есть финансы то писать нужно будет только сумму в счете  а не корки. Успехов! Rob. Вот теперь я точно запутался! В свое время приходилось немного сталкиваться с SDH/SONET, частоты там были ниже (2,4 Гб/с), но суть была похожа. На входе стояли SFP, которые были подключены к ПЛИС. В ПЛИС я использовал аппаратный десериализатор чтобы получить уже параллельную шину (16 бит вроде) внутри ПЛИС. Далее остальную обработку делал сам. Я думал, что что то похожее будет с Ethernet, только частоты выше. Или я полностью неправ оказался? Спасибо!
|
|
|
|
|
Dec 12 2016, 13:17
|

Местный
  
Группа: Свой
Сообщений: 314
Регистрация: 13-07-06
Из: Москва
Пользователь №: 18 797

|
Цитата(gin @ Dec 5 2016, 18:33)  Вот теперь я точно запутался! В свое время приходилось немного сталкиваться с SDH/SONET, частоты там были ниже (2,4 Гб/с), но суть была похожа. На входе стояли SFP, которые были подключены к ПЛИС. В ПЛИС я использовал аппаратный десериализатор чтобы получить уже параллельную шину (16 бит вроде) внутри ПЛИС. Далее остальную обработку делал сам. Я думал, что что то похожее будет с Ethernet, только частоты выше. Или я полностью неправ оказался? Спасибо! Всё именно так как у Вас было с SDH. Более того, какие-то вещи уже реализованы в ПЛИС аппаратно, какие-то в виде альтеровских мегафункций(за xilinx не скажу, но думаю там также). При желании можете оставить только SerDes, а остальное сделать самостоятельно. Другое дело, что на скоростях 40G к самой плате предъявляются более жёсткие требования, чем к плате на 2,5G.
|
|
|
|
|
Dec 14 2016, 15:16
|

Частый гость
 
Группа: Участник
Сообщений: 183
Регистрация: 17-12-10
Пользователь №: 61 682

|
Цитата(DuHast @ Dec 12 2016, 16:17)  Всё именно так как у Вас было с SDH. Более того, какие-то вещи уже реализованы в ПЛИС аппаратно, какие-то в виде альтеровских мегафункций(за xilinx не скажу, но думаю там также). При желании можете оставить только SerDes, а остальное сделать самостоятельно. Другое дело, что на скоростях 40G к самой плате предъявляются более жёсткие требования, чем к плате на 2,5G. Спасибо! Насмотрел я одну плату, там как раз Altera, сейчас разбираюсь, что предоставляет Quartus и какие IP там есть. Единственное, что как всегда напрягает - то что сам стандарт на 10G Ethernet платный. Приходится лазить и искать информацию по Интернету. Но это мне не в первой)
|
|
|
|
|
Dec 14 2016, 16:32
|

Местный
  
Группа: Свой
Сообщений: 375
Регистрация: 9-10-09
Из: Свердловский регион
Пользователь №: 52 845

|
Цитата стандарт на 10G Ethernet платный это вы про что? http://standards.ieee.org/getieee802/download/802.3-2015.zipВот здесь указываете свой (любой) email и скачиваете архив. Там в 802.3-2015_SECTION4.pdf раздел 49 описывает 10G.
|
|
|
|
|
Dec 15 2016, 07:27
|

Частый гость
 
Группа: Участник
Сообщений: 183
Регистрация: 17-12-10
Пользователь №: 61 682

|
Цитата(novartis @ Dec 14 2016, 19:32)  это вы про что? http://standards.ieee.org/getieee802/download/802.3-2015.zipВот здесь указываете свой (любой) email и скачиваете архив. Там в 802.3-2015_SECTION4.pdf раздел 49 описывает 10G. Спасибо! Вчера даже его скачал, но не успел посмотреть толком. Если там все описано подробно, то это замечательно. А то уже привык, что большинство стандартов платные
|
|
|
|
|
Dec 16 2016, 07:27
|

Частый гость
 
Группа: Участник
Сообщений: 183
Регистрация: 17-12-10
Пользователь №: 61 682

|
Продолжаю разбираться с 10G.
Так как буду использовать Альтеру, то пишу про нее. Как я понял, в Аррие и Стратиксе есть аппаратные блоки, предназначенные специально для работы с 10G Ethernet. Они включают в себя сериализатор/десериализатор, кодер/декодер 64/66b и скремблер. То есть на выход мне выдается уже готовый поток данных 64 бита, которые разбиты на группы по 8 байт + 8 управляющих сигналов. Для работы с этими аппаратными блоками предназначено IP 10GBASE-R PHY. На выходе которого и появляются эти данные.
Правильно ли я понимаю, что: 1. Это IP (ну то есть аппаратное ядро) восстанавливает клок и выдает данные по его фронту (156.25 МГц). 2. Выходные данные уже разбиты на байты. То есть байты Ethernet пакета строго идут по соответствующим линиям. (7..0, 16..9, и т.д.)
Теперь вопросы: 1. Если этот аппартаный блок восстанавливает частоту, то зачем нужно его тактировать внешним клоком с той же номинальной частотой? 2. Управляющие сигналы (8 бит). Показывают ли они, что принятые байты - это данные либо управляющие символы Ethernet, такие как - Idle, Start, Terminate, Error. Или они означают что то иное?
Заранее спасибо всем тем кто потратит свое время и прокоментирует мое сообщение))
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|