Jump to content

    
Sign in to follow this  
Студент заборстроительного

Принять и ПАРАЛЛЕЛЬНО распарсить поток 10Гбит/с. Как решаются такие задачи?

Recommended Posts

Для не совсем осведомлённых не помешает добавить в тему малость юмора — со слов её автора, произнесённых ранее, он занимается разработкой особо ответственных бескомпромиссных узлов, что конкретно здесь надо понимать так, что такая лакомая для грызунов кварцевая нитка 10 Гб на самом деле 1000-кратно же резервирована бронированными окольными путями, а ПЛИС, про которую он сейчас говорит в единственном числе, на самом деле тоже того же плана шкафы, которыми утыкан населённый пункт дислокации всего этого добра по его окраинам.

Share this post


Link to post
Share on other sites
Лично для меня - не принципиально, так как я не исполнитель. Для Вас должно быть принципиально.

Очень много зависит от того, что за "микроконтроллер" Вы попытаетесь создать в количестве 1000 штук в одной ПЛИС.

Если это будет Ваш конечный автомат, занимающий 300 ЛЭ - да не вопрос - ищите ПЛИС.

А если стандартный ниос\микроблейз тут есть большущие сомнения в количестве реализуемых микроконтроллеров.

Т.е. в принципе задача в указанной мной формулировке решаема и описанная мной архитектура вполне реализуема и весь вопрос только в том, хватит ли в ПЛИС вентилей для создания 1000 малюсеньких микроконтроллеров.

Понятно.

Спасибо за ответ :beer:

 

Microblaze MCS несколько сотен можно размножить на частоте 200 MHz в 325t. В крупной Плис тысячу.

Понял.

Задача 100% решаема

 

Для не совсем осведомлённых не помешает добавить в тему малость юмора — со слов её автора, произнесённых ранее, он занимается разработкой особо ответственных бескомпромиссных узлов, что конкретно здесь надо понимать так, что такая лакомая для грызунов кварцевая нитка 10 Гб на самом деле 1000-кратно же резервирована бронированными окольными путями, а ПЛИС, про которую он сейчас говорит в единственном числе, на самом деле тоже того же плана шкафы, которыми утыкан населённый пункт дислокации всего этого добра по его окраинам.

Вы правы. Указанная в заголовке темы задача - только первый этап более крупной задачи.

И "кварцевых ниток" не надо 1000. Достаточно будет 3-х.

 

Share this post


Link to post
Share on other sites
Ну вот смотрите. Каждые 1.6мкс приходит новый пакет, содержащий 25 дампов состояния объёмом 64 байта каждый.

И какие дампы будут обновлены заранее неизвестно.

И скорость реакции заранее неизвестна. Она зависит от того, что пришло.

Т.е. от состояния устройства. Поэтому какие-то дампы требуют НЕМЕДЛЕННОЙ реакции, а для каких-то и задержка 320 мкс приемлима

Скорость реакции в ПЛИС фиксирована. Какая скорость реакции вам нужна?

 

Допустим каждый из тысячи узел ПЛИС просто каждые 10 мкс считывает байт за байтом инфу из своего дампа (64 байта) памяти 10G приемника, делает операцию XOR с некоей константой и записывает в память 10G передатчика.

Приемник и передатчик никак не синхронизируются между собой и с узлами. Узлы в ПЛИС также работают совершенно независимо от других узлов, 10G-приемника и 10G-передатчика

Каждый просто ТУПО делает свою работу не взирая на то, в каком состоянии находятся данные.

Как уже выше написали, обработчик, который "считывает байт за байтом инфу из своего дампа (64 байта) памяти 10G приемника, делает операцию XOR с некоей константой и записывает в память 10G передатчика" в современной ПЛИС может выполниться за 1 такт на 156Мгц. Т.е за 10мкс такой обработчик может обработать 1560 дампов - это больше, чем всего устройств в вашей системе.

 

 

Share this post


Link to post
Share on other sites
Скорость реакции в ПЛИС фиксирована.

То есть как?

В ПЛИС-ах не бывает "IF...THEN..ELSE"?

А как же тогда в них делают микроконтроллеры, работающие по программе?

Что-то не сходится :maniac:

 

Как уже выше написали, обработчик, который "считывает байт за байтом инфу из своего дампа (64 байта) памяти 10G приемника, делает операцию XOR с некоей константой и записывает в память 10G передатчика" в современной ПЛИС может выполниться за 1 такт на 156Мгц.

Ну так пример с XOR это просто гипотетический пример для тестирования самой возможности реализации такой архитектуры.

Реально же узлы будут состоять не только из логических вентилей, но и из триггеров.

И алгоритм такой, что за 1 такт ("одним чохом") весь дамп не обработаешь. Нужно байт за байтом. С запоминанием промежуточных результатов.

 

И потом. Каким образом 64 считывания из памяти выполняться за 1 такт?

Вы меня разыгрываете?

Share this post


Link to post
Share on other sites
То есть как?

В ПЛИС-ах не бывает "IF...THEN..ELSE"?

А как же тогда в них делают микроконтроллеры, работающие по программе?

Что-то не сходится :maniac:

Если вы хотите сделать If...then быстро на ПЛИС, то это будет сделано на логике. Т.е вы будете реализовывать путь логики THEN и путь логики ELSE и все это будет занимать ресурсы ПЛИС. А IF - это всего лишь ключ после этих двух путей, который будет выбирать результат из одного из них и подавать на выход схемы. Таким образом, если все это будет работать синхронно, реакция этой схемы будет равна реакции самого медленного пути.

Ну так пример с XOR это просто гипотетический пример для тестирования самой возможности реализации такой архитектуры.

Реально же узлы будут состоять не только из логических вентилей, но и из триггеров.

И алгоритм такой, что за 1 такт ("одним чохом") весь дамп не обработаешь. Нужно байт за байтом. С запоминанием промежуточных результатов.

Вам уже писали, что в ПЛИС есть понятие конвеерной обработки - так как алгоритм одинаков для всех блоков. Выше я написал, как делается IF...then - оно тоже легко конвееризируется. Запоминание промежуточных результатов и автоматов состояний тоже прекрасно ложится на конвейер. Даже если обработка будет занимать 64 такта, если ваш обработчик будет сделан так, что ему можно будет "вскармливать" новый дамп каждый такт - а это в принципе не сложно, то он все равно за 10мкс сможет обработать 1560 дампов + 64 такта.

И потом. Каким образом 64 считывания из памяти выполняться за 1 такт?

Вы меня разыгрываете?

Dustributed Memory - есть и такой блок в ПЛИС

Share this post


Link to post
Share on other sites
Что за алгоритм-та, формУла какая в ём?

Вы не первый, кто задается этим вопросом. Но ТС тертый калач - новую хау не открывает. :bb-offtopic:

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites
я стесняюсь спросить, а собственно зачем в плисе делать 1000 непонятных параллельных обработчиков хз чего, что пытается принять, распарсить, изменить, обернуть и наконец отправить надат е.фрейм на скорости 10Г? это фетиш какой-то новомодный или я чего то решительно не понимаю.

сама задача ТС 10G-->1000mcu--->10G смысла не имеет вообще. Это не фетиш или что-то реальное а просто надуманный повод потроллить и получить удовольствие от процесса.

Share this post


Link to post
Share on other sites
сама задача ТС 10G-->1000mcu--->10G смысла не имеет вообще. Это не фетиш или что-то реальное а просто надуманный повод потроллить и получить удовольствие от процесса.

 

Это мог бы быть high frequency trading.

Или майнинг, если на DSP блоках.

Но увы, не тот случАй.

Share this post


Link to post
Share on other sites

Я не все дочитал и на чем остановились.

Я бы взял двух портовую сетевую карту с bypass решением.

В один порт бы принимал, во второй отправлял.

На круг 1 пакет можно провернуть примерно за 3мксек. Сильно зависит от проца, шины и самое главное размера пакета. Так задача решится гораздо проще, быстрее

На плис вы сможете выиграть примерно до 1000нс по прикидкам, все зависит от размера сетевого пакета и его данных

Edited by new123

Share this post


Link to post
Share on other sites
я стесняюсь спросить, а собственно зачем в плисе делать 1000 непонятных параллельных обработчиков хз чего, что пытается принять, распарсить, изменить, обернуть и наконец отправить надат е.фрейм на скорости 10Г? это фетиш какой-то новомодный или я чего то решительно не понимаю.

"не читал, но осуждаю"© ?

Я понимаю, Вы всю тему не асилили. Прочтите хотя бы последнюю страницу. В частности, сообщение, где говорится про "3 нити".

"Зачем и почему" на страницах темы уже обсуждалось и не раз.

Повторять специально для тех, что в танке, я не собираюсь

Share this post


Link to post
Share on other sites

Студент заборстроительного, ИМХО, со времени начала топика (31 вроде как), по сегодняшний день вы уже могли более менее разобраться в теме самостоятельно. Хотя бы для того, чтобы написать внятное тз.

 

Ах да, вы же заняты высокими материями и вам некогда заниматься тем, что не связано с АСУТП. Ну тогда продолжайте ещё 30 лет заниматься анони... простите этой темой. Заодно нас развлечёте.

 

З.Ы. Обращайтесь к модераторам, если хотите. Отвечайте в личке. Но моё мнение: вы либо идиот с кучей комплексов неполноценности, либо действительно в теме АСУТП, и хотите нам показать свою значимость, чтобы мы прониклись вами. Но в любом случае у вас проблемы психологического, плана, батеньки. Вы получаете удовольствие, тролля здесь. Значит в реальной жизни у вас этого удовольствия крайне мало. Займитесь собой. Ибо нам до вас дела нет никакого. Или хотите и дальше выступать в роли шута? Дело ваше...

 

Share this post


Link to post
Share on other sites

Извините что вмешиваюсь, на это побудила меня ваша подпись. Прошу, занесите студента в список игнорирования и гармония будет восстановлена гораздо более эффективно, чем отправка таких постов.

Share this post


Link to post
Share on other sites
Извините что вмешиваюсь, на это побудила меня ваша подпись. Прошу, занесите студента в список игнорирования и гармония будет восстановлена гораздо более эффективно, чем отправка таких постов.

Знаете, для меня гармония это не только добрые слова, иногда это скромная попытка обратить внимание человека на его проблемы. Меня он не раздражает т.к. я мало читаю топики с ним... но этот топик меня заинтересовал своей темой. Правда потом я понял, что к теме тут мало что относится. Но также я обратил и внимание на то, что автор топика многократно пытается порисоваться тут. Можно промолчать, а можно и намекнуть :rolleyes:

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