Jump to content

    
Sign in to follow this  
dima_spb

Parallel Redundancy Protocol (PRP) Zynq7000

Recommended Posts

Приветствую Вас уважаемые форумчане :biggrin:

 

Появилась потребность разобраться с резервированием Parallel Redundancy Protocol (PRP) и реализовать его либо в FPGA (Xilinx/Spartan6), либо в SoC(Xilinx/Zynq7000). Начальнику очень уж нравится SoC поэтому решил вопрос задать в этой теме форума. Хотя SoC не панацея можно и FPGA.

 

1) PRP на SoC.

В качестве железа - ZC702 с воткнутой в него (в FMC разъем) двухпортовый Ethernet модуль

 

2) RPR на FPGA

В качестве железа думаю сами сделаем платку с ПЛИС и контроллерами Ethernet. В общем как начальник пожелает :rolleyes:

 

Сам алгоритм работы PRP в общем и целом понятен. Безусловно будет реализация, будут вопросы. Но сейчас я хотел бы поинтересоваться у сообщества, кто и как решал подобную задачу? Или может быть решил бы? В общем поделитесь пожалуйста мыслями в тему...если таковые имеются конечно=)))

 

Сразу отмечу, что реализовать PRP в SoC подразумевается реализация в части PL, а PS использовать как тестовый процессор для загрузки и вычитывания данных. Т.е. оба варианта подразумевают описание алгоритмов PRP на HDL. Кстати у Xilinx вроде как есть IP ядра PRP и для Spartan и для Zynq, но естественно не за просто так=))) Наивно предположу, что может кто-то уже описывал эти алгоритмы (PRP) на HDL.....

 

В общем буду благодарем за любую информацию=))

 

 

 

 

Share this post


Link to post
Share on other sites
т.е. так никто не делал и мыслей никаких нет?! :crying:

 

Не совсем понял, Вы хотите получить свой велосипед с исходниками либо взять готовое решение?

 

Если второе, но цена на IP для Xilinx кусается, то можно посмотреть на решение от Flexibilis + Altera.

Там интересная система лицензирования - Вам не нужно покупать IP за кругленькую сумму, а достаточно лишь поставить на плату небольшой аппаратный ключ (по факту - прошитая CPLD от альтеры), который разлочит IP ядро. Т.е. сколько девайсов нужно выпустить - столько ключей и купили. За IP ядро платить не надо.

 

Можете бесплатно скачать IP ядро и reference проекты и сделать evaluation. Без аппаратного ключа оно будет работать 2 часа (т.н. time bomb). Потом - ребут.

С ключом работает без ограничений.

Целевое железо : Cyclone V SoC, Cyclone V, Cyclone IV.

 

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

А вообще тема рабочая.

 

http://www.flexibilis.com/products/frs/

 

Share this post


Link to post
Share on other sites
Не совсем понял, Вы хотите получить свой велосипед с исходниками либо взять готовое решение?

 

Если второе, но цена на IP для Xilinx кусается, то можно посмотреть на решение от Flexibilis + Altera.

Там интересная система лицензирования - Вам не нужно покупать IP за кругленькую сумму, а достаточно лишь поставить на плату небольшой аппаратный ключ (по факту - прошитая CPLD от альтеры), который разлочит IP ядро. Т.е. сколько девайсов нужно выпустить - столько ключей и купили. За IP ядро платить не надо.

 

Можете бесплатно скачать IP ядро и reference проекты и сделать evaluation. Без аппаратного ключа оно будет работать 2 часа (т.н. time bomb). Потом - ребут.

С ключом работает без ограничений.

Целевое железо : Cyclone V SoC, Cyclone V, Cyclone IV.

 

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

А вообще тема рабочая.

 

http://www.flexibilis.com/products/frs/

 

 

Уточняю.

 

Дали мне в руки отладочную плату ZC702 (другой платы на предприятии нет :laughing: ) и сказали, что в области PL необходимо ИЗОБРЕСТИ ВЕЛОСИПЕД :wacko:

 

Да, я знаю, что есть корки в том числе и у Xilinx IP Core , НО купить их почему-то не хотят=)))) как обычно...

 

Так что делаем сами PRP на Verilog в PL вот так получается.

 

Хотел узнать...наверняка кто-то делал этот PRP на ПЛИС (PL)..... может в каком-то виде алгоритмы сохранились....В общем любую полезную инфу ищу

Share this post


Link to post
Share on other sites
Уточняю.

 

Дали мне в руки отладочную плату ZC702 (другой платы на предприятии нет :laughing: ) и сказали, что в области PL необходимо ИЗОБРЕСТИ ВЕЛОСИПЕД :wacko:

 

Да, я знаю, что есть корки в том числе и у Xilinx IP Core , НО купить их почему-то не хотят=)))) как обычно...

 

Так что делаем сами PRP на Verilog в PL вот так получается.

 

Хотел узнать...наверняка кто-то делал этот PRP на ПЛИС (PL)..... может в каком-то виде алгоритмы сохранились....В общем любую полезную инфу ищу

Тут еще есть лавка http://soc-e.com/products/hsr-prp-switch-i...itch-for-fpgas/

 

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

Мое мнение что вам нужно уяснить что конкретно вы хотите сделать, что бы это было финансово выгодно. Судя по тому что можно нарыть в сети по всем вышеуказаным ссылкам и гуглю, я вижу обобщение:

Ядра как правило поддерживают и HSR и PRP и + имеют фунцию обычного switch-а.

Может быть вам есть смысл 1. Уточнить тех задание. 2. Изучить какие параметры предоставляют другие и сделать не хуже или компромисное решение. Иначе есть риск, что после получения PRP у вас попросят все остальное, и архитектурное решение нужно будет сильно допиливать.

Ну и матчасть: тут спрашивали , но ответов нет http://electronix.ru/forum/index.php?showt...=113288&hl=

Наверняка нужно смотреть что-то по теме network processors. Если найдете что-то стоящее поделитесь инфой :)

 

Share this post


Link to post
Share on other sites
Тут еще есть лавка http://soc-e.com/products/hsr-prp-switch-i...itch-for-fpgas/

 

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

Мое мнение что вам нужно уяснить что конкретно вы хотите сделать, что бы это было финансово выгодно. Судя по тому что можно нарыть в сети по всем вышеуказаным ссылкам и гуглю, я вижу обобщение:

Ядра как правило поддерживают и HSR и PRP и + имеют фунцию обычного switch-а.

Может быть вам есть смысл 1. Уточнить тех задание. 2. Изучить какие параметры предоставляют другие и сделать не хуже или компромисное решение. Иначе есть риск, что после получения PRP у вас попросят все остальное, и архитектурное решение нужно будет сильно допиливать.

Ну и матчасть: тут спрашивали , но ответов нет http://electronix.ru/forum/index.php?showt...=113288&hl=

Наверняка нужно смотреть что-то по теме network processors. Если найдете что-то стоящее поделитесь инфой :)

 

Спасибо за ответ.

 

Может быть вам есть смысл 1. Уточнить тех задание. 2. Изучить какие параметры предоставляют другие и сделать не хуже или компромисное решение. Иначе есть риск, что после получения PRP у вас попросят все остальное, и архитектурное решение нужно будет сильно допиливать.

 

1.В общем и целом задание простое и вроде бы ясно. Реализовать резервирование ethernet используя PRP в соответствии со стандартом IEC 62439-3. В этом стандарте максимально подробно описывается принцип работы PRP. Вот собственно и все.

2. По поводу растущего аппетита, т.е. захочется HSR и т.п. здесь я бессилен. Захотят,значит, будем доделывать или переделывать.

 

Физически это будут 3 Ethernet контроллера подключенных к Zynq7000 и в области PL(Zynq7000) будет реализован HDL(verilog) блок (IP block) который будет:

a) управлять работой Ethernet контроллеров (внешние)

б) обрабатывать Ethernet кадры на предмет RCT (проще говоря вставлять и убирать поля PRP)

 

Этот блок (IP block HDL) в дальнейшем можно будет так же использовать в какой-нибудь не дорогой FPGA с тремя контроллерами ethernet.

 

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

 

Share this post


Link to post
Share on other sites

Лучше поздно чем никогда:

 

Не советую разрабатывать (полностью) аппаратный PRP - На это уйдут как минимум 8-12 месяцев. Лучше написать PRP SW-драйвер или в крайнем случае в ПЛИС вынести поиск дубликатов.

 

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

 

Если нужна HSR/PRP корка (есть вариант с 1588v2 TC), обращайтесь. Наше решение не "пристроенное" к обычному switch-у, а разработано специально для конечных узлов (end-nodes) и RedBox-ов и поэтому как минимум в два раза меньше (по ресурсам ПЛИС) чем всё остальное на рынке. Таблица конечных узлов (Nodes Table) и 1588v2 TC полностью аппаратные.

 

С уважением,

 

Валерий

Share this post


Link to post
Share on other sites
Лучше поздно чем никогда:

 

Не советую разрабатывать (полностью) аппаратный PRP - На это уйдут как минимум 8-12 месяцев. Лучше написать PRP SW-драйвер или в крайнем случае в ПЛИС вынести поиск дубликатов.

 

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

 

Если нужна HSR/PRP корка (есть вариант с 1588v2 TC), обращайтесь. Наше решение не "пристроенное" к обычному switch-у, а разработано специально для конечных узлов (end-nodes) и RedBox-ов и поэтому как минимум в два раза меньше (по ресурсам ПЛИС) чем всё остальное на рынке. Таблица конечных узлов (Nodes Table) и 1588v2 TC полностью аппаратные.

 

С уважением,

 

Валерий

 

Валерий приветствую Вас!=))

 

Тема эта по прежнему актуальна.

 

Не советую разрабатывать (полностью) аппаратный PRP - На это уйдут как минимум 8-12 месяцев. Лучше написать PRP SW-драйвер или в крайнем случае в ПЛИС вынести поиск дубликатов.

 

Возможно. Но Задача разработать именно аппаратный PRP модуль на ПЛИС, т.к. на процессоре уже реализован и он отжирает огромные вычислительные ресурсы. Размазывать поддержку PRP между процессором и ПЛИС можно и в каких-то случаях это удобно, но мне поставили задачу именно на ПЛИС.

Так что я ни в коем случае не могу спорить с Вашими мыслями.....дело говорите.

Но опять же задача есть задача и в общем-то обоснованная.

 

В последствии эту ПЛИС будут пристраивать к всевозможным устройствам с портом Ethernet и эти устройства не будут подозревать о PRP.... В общем у руководителей свои соображения на этот счет=)))

 

Share this post


Link to post
Share on other sites
Dmitriyspb, чем закончилась ваша попытка разработать PRP на FPGA?

У нас стоит такая же задача, много мыслей и сомнений.

 

Все свелось к использованию IP core и отдельных SOM модулей с жесткой реализацией PRP.

 

Скину ссылки на IP core:

Для Xilinx

Для Altera:

 

Руководители посчитали не разумным пилить PRP самостоятельно, мол это востребовано, но еще не широко используется.

 

Есть даже микросхемка : отдельно (предполагаю, что это ASIC) c поддержкой PRP. Цена у неё не самая низкая, но разумная. Нашим руководителям она очень понравилась=))))

 

 

 

Share this post


Link to post
Share on other sites

Спасибо.

 

Если не секрет, микросхемы FLEXIBILIS можно брать только через ARROW, или есть ещё каналы?

 

А с немцами Verylogic из сообщения выше не пробовали общаться? Мы написали им, пока ждём ответ. Будем сравнивать FLEXIBILIS vs. VERYLOGIC, если будет что сравнивать.

Share this post


Link to post
Share on other sites
Все свелось к использованию IP core и отдельных SOM модулей с жесткой реализацией PRP.

 

Скину ссылки на IP core:

Для Xilinx

Для Altera:

 

Руководители посчитали не разумным пилить PRP самостоятельно, мол это востребовано, но еще не широко используется.

 

Есть даже микросхемка : отдельно (предполагаю, что это ASIC) c поддержкой PRP. Цена у неё не самая низкая, но разумная. Нашим руководителям она очень понравилась=))))

 

Я слыхал, что эта микросхема - ни что иное, как MAX10 в EQFP-144 корпусе на 50KLE, в который зашили жесткую конфигурацию корки от flexibilis. Если лень свой дизайн городить и портов много не надо, то вполне себе решение.

IMHO, уже стоит не на PRP/HSR смотреть, а на TSN (time sensitive networking). Сейчас в мире это тренд, который и до РФ рано или поздно доберется.

http://www.flexibilis.com/technology/tsn/

Share this post


Link to post
Share on other sites
IMHO, уже стоит не на PRP/HSR смотреть, а на TSN (time sensitive networking). Сейчас в мире это тренд, который и до РФ рано или поздно доберется.

 

Это пусть заказчики смотрят. А мы пока сделаем, что просят :-)

Share this post


Link to post
Share on other sites
Спасибо.

 

Если не секрет, микросхемы FLEXIBILIS можно брать только через ARROW, или есть ещё каналы?

 

А с немцами Verylogic из сообщения выше не пробовали общаться? Мы написали им, пока ждём ответ. Будем сравнивать FLEXIBILIS vs. VERYLOGIC, если будет что сравнивать.

 

Про немцев ничего не слыхал и дел с ними не имел.

 

На счет FLEXIBILIS....

Может и найдете дополнительные каналы (мы и не искали), нужно понимать что придется доплатить за дистрибьюциюи т.п.

А вообще с ними достаточно удобно работать и Финляндия относительно СПб совсем не далеко=))

 

 

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.

Sign in to follow this