Почему бы не реализовать 1 Гбит / с, когда все, что мне нужно, это 20 Мбит / с?

27

Задний план

Я работаю с клиентом над большим проектом, для которого требуется специальный сетевой чип, разработанный для решения требований по передаче данных в рамках проекта. Сеть предназначена для отправки небольших пакетов на расстоянии нескольких дюймов от одной печатной платы на другую по одному кабелю витой пары. Мы будем разрабатывать и указывать сетевой протокол, а другая компания будет отвечать за внедрение кремния.

Я полагаю, что скорость передачи данных 20 Мбит / с между узлами легко справится с объемом данных, которые необходимо отправить, с большим запасом места, если в будущем объем данных увеличится.

проблема

Клиент спрашивает меня, почему я указываю только 20 Мбит / с. Почему не что-то вроде 1Gbps? Разве это не было бы лучше? Интуитивно я чувствую, что увеличение скорости передачи данных сверх того, что было бы необходимо, - плохая идея. Первоначально я думал, что кабель должен быть экранирован (что мне не нужно), но, глядя на категории кабелей Ethernet, я вижу, что Gigabit Ethernet может работать на кабеле Cat 6, который не нуждается в экранировании.

Другие ограничения

  • Проект крайне ограничен в пространстве, и у нас нет места для таких вещей, как магнетизм, если только это не очень маленький компонент (макс. 0603).
  • Кабели должны быть максимально тонкими и гибкими.
  • Устройство будет работать от подключенного источника питания, поэтому особых требований к низкому энергопотреблению нет.

Вопрос

Какие проблемы, с точки зрения дизайна кремния, прокладки кабелей и всего остального, с которыми можно столкнуться при скорости 1 Гбит / с, не так уж и плохо при скорости 20 Мбит / с? Должен ли я пойти с предложением моего клиента о создании сети на скорости 1 Гбит / с или я должен настаивать на реализации только того, что требуется?

У нас строгий NDA, поэтому я не могу дать слишком много подробностей о наших требованиях. Но, пожалуйста, оставьте комментарий, если требуется уточнение.

Rocketmagnet
источник
3
Если приложению требуется пропускная способность 20 Мбит / с, то, вероятно, будет достаточно более старого стандарта 100 Мбит / с, учитывая все издержки и тому подобное. Таким образом, вопрос будет заключаться в стоимости внедрения, доступности будущих деталей. Вы проверили соответствующие расходы? Кроме того, что вы имеете в виду "с точки зрения дизайна кремния"? Планируете ли вы создать свой собственный кремний?
Ale..chenski
9
1 Гбит / с может быть излишним ... 100 Мбит / с может быть более подходящим следующим шагом по скорости ... если клиент заинтересован в создании устройства на будущее, возможно, рассмотрит использование сжатия данных ...... может быть продемонстрировать клиенту, какая пропускная способность данных достигается с помощью 20 Мбит / с ... покажите им видео HD на YouTube и объясните, что пропускная способность составляет всего 8 Мбит / с или около того
jsotola
12
Зачем вам нужен «сетевой» протокол для соединения точка-точка?
Фотон
20
Разработка «сетевого протокола» с нуля не выглядит особенно мудрой идеей. Это может быть довольно дорогостоящим для проектирования, реализации физического уровня, проверки физического уровня, затем уровня протокола, всего связанного с ним программного обеспечения и проверки и т. Д. И т. Д. Вы слышали о HSIC, своего рода USB более 1.2VLVCMOS?
Ale..chenski
20
Пожалуйста, соберите демонстрацию с 100M Ethernet микросхемами без магнита, чтобы продемонстрировать пользователю и себе, что можно сделать с помощью стандартных готовых деталей. Не делайте кастомный кремний, кастомные протоколы, не понимая, почему стандартные не подойдут.
Neil_UK

Ответы:

24

Несколько причин:

Сила

Более быстрая скорость означает большую мощность. Мало того, что вам нужны более быстрые аналоговые схемы, которые потребляют больше энергии, вся ваша электроника должна быть быстрее. Ваши цифровые системы, ваши защелки, управление часами и т. Д. Если вы получаете эти 1 Гбит / с с помощью многоуровневой сигнализации, вам теперь нужны лучшие АЦП и ЦАП. Возможно, вам придется начать заниматься более сложной фильтрацией. Вы можете начать требовать FEC, который также должен идти в ногу.

Размер чипа

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

Чувствительность к окружающей среде

Если вы переключитесь с нескольких десятков мегабод на то, что нужно для гигабита, вы станете намного более чувствительными к окружающей среде. Небольшие несоответствия, которые могут быть незаметны на нескольких десятках МГц, становятся резонансными заглушками на более высоких частотах. Отражения могут начать вызывать прерывистую работу. Отрезанный кабель из-за неправильного использования в течение многих лет (я не знаю среды приложения для вашего продукта) может подойти для более низких скоростей, но может привести к снижению производительности при повышении производительности.

Проектное усилие

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

EMI

Более высокая скорость означает, что удовлетворение требований EMI может быть сложнее.

Джорен Ваес
источник
5
@Rocketmagnet: Также стоит отметить, что фактический гига-E стандарта 802.3 1000Base-T через Cat5e отправляет сигналы в обоих направлениях сразу по 4 парам проводов, а также использует многоуровневое кодирование, чтобы поддерживать частоты на тех же 125 МГц. как 100Base-T . Таким образом, каждый получатель должен вычесть то, что отправляет его собственный передатчик, чтобы получить только сигнал, отправленный другим концом.
Питер Кордес
2
@PeterCordes - это очень интересно, я посмотрю на это. Но это звучит намного сложнее, чем базовые LVDS.
Ракетный магнит
2
@Rocketmagnet: да, GigE звучит как очень плохой выбор для этого. Есть причина, по которой трансиверы GigE потребляют больше энергии, чем 100M.
Питер Кордес
24

TTL-сигналы (односторонние, неопределенные) могут легко обрабатывать 20 Мбит / с или более - например, посмотрите на SPI. Если у вас всего несколько дюймов, ленточный кабель и разъемы IDC (или какая-либо задняя панель) доставят вас от платы к плате.

1 Гбит / с позволяет вам справиться с трассировками, разъемами и кабелями с контролируемым сопротивлением. Приемники должны будут использовать методы PLL / DLL для поддержания синхронизации и разделения тактовых импульсов / данных, тогда как на более медленной скорости будет достаточно нормальной синхронной логики. 50-кратное превышение и дополнительные головные боли просто не стоят того, если вы уверены, что в обозримом будущем будет достаточно 20 Мбит / с.


Однажды я разработал (около 25 лет назад) собственный протокол последовательной шины для межплатного управления и состояния между платами в телекоммуникационной стойке. Что-то вроде помехи между I 2 C и SPI - однонаправленные сигналы, такие как SPI, но адреса встроенных устройств, такие как I 2 C.

Дэйв Твид
источник
Предполагая, что мы уже собираемся использовать трассы, кабели и разъемы с контролируемым сопротивлением, есть ли другие проблемы?
Ракетный магнит
1
Приемники должны будут использовать методы PLL / DLL для поддержания синхронизации и разделения часов / данных. На более низкой скорости нормальной синхронной логики будет достаточно.
Дэйв Твид
10
Это зависит от деталей вашей технологии реализации, которую вы, вероятно, не вправе разглашать. Если вы используете ПЛИС (как подразумевается при использовании вами тега), обратите внимание, что все основные поставщики имеют готовые решения для обмена данными между чипами на разных скоростях. Было бы неплохо использовать это для своего физического уровня и реализовать свой собственный протокол поверх него.
Дейв Твид
1
Проектирование блока pll не тривиально, и покупка IP может легко обойтись вам в 50-100 тысяч долларов
Майк
1
@Tustique Думаете, тривиально создать свой собственный PLL на кремнии?
user253751
14

Очевидный вопрос: «Означает ли 1 Гбит / с Ethernet 1000BASET?» Если это то, о чем думает клиент, то ваше требование, что «у нас нет места для таких вещей, как магнетизм», сразу же это исключает. Ethernet действительно использует магниты на физическом уровне, и когда я проектировал интерфейс несколько лет назад, магниты были частью примерно 1-дюймового куба.

Вы говорите, что используете FPGA, но не говорите, чьи. Если вы собираетесь использовать Xilinx, вы должны знать, что текущие модели изначально поддерживают LVDS, что может показаться идеальным для ваших целей. Ранние системы LVDS (телевизоры высокой четкости) работали со скоростью 122 Мбит / с, и эта технология может работать намного быстрее, если вам это действительно нужно. Будучи дифференциальным и предполагая, что ваши две доски не используют дико плавающие земли, помехоустойчивость превосходна.

Что касается вашего конкретного выбора тактовых частот, добавление большего запаса мощности, чем вы думаете, является одним из тех решений, которые могут спасти ваш бекон в будущем, поэтому я не исключаю, что выберу что-то вроде 100 МГц, но это ваше дело. Вы можете познакомить своего клиента с законом Роберджа (Джим Робердж был известным профессором электротехники в MIT несколько десятилетий назад): «Те, кто просит больше пропускной способности, чем им нужно, заслуживают того, что получают». Конечно, он говорил о сервосистемах, но этот принцип остается хорошим в удивительно широком диапазоне дисциплин.

WhatRoughBeast
источник
7
Ethernet не требует магнетизма, если вы делаете нестандартное соединение. Это довольно надежно, если реализовано без изоляции.
Джек Криси
1
@JackCreasey, но можно ли тогда назвать это Ethernet ?
Мэлс
2
Это, конечно, не соответствует стандарту IEEE 802.3. Он не будет подключаться к совместимой конечной точке, но я сказал, что без магнетизма это будет несовместимо. Я сомневаюсь, что он пройдет набор тестов для сигналов на соединительной плате, но он должен пройти все остальное, включая дрожание. Я бы все еще назвал это Ethernet, но вы не можете.
Джек Криси
2
К вашему сведению: единственный результат Google для «Те, кто просит больше пропускной способности, чем им нужно, заслуживают того, что получают». это ответ.
user253751
11

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

Гораздо чаще вам следует подумать о стандартном физическом уровне, а затем создать настраиваемый протокол поверх этого. Для чистой полосы пропускания канала связи, равной 20 Мбит / с, вы должны планировать некоторые издержки протокола, поскольку кадрирование, кодирование с проверкой ошибок и синхронизация поглощают часть вашей пропускной способности. Поэтому, возможно, стоит рассмотреть вопрос о более высокой необработанной полосе пропускания, чтобы учесть эти издержки.

После того, как вы опробуете свой дизайн, вы можете обратиться к поставщику FPGA и попросить его изготовить дизайн жесткого чипа из программирования FPGA. Этот подход снижает все риски на ранних этапах разработки и снижает общие затраты на NRE в огромной степени по сравнению с «погружением в пользовательский кремний только потому, что он кажется крутым».

Майкл Карас
источник
Это именно тот маршрут, по которому мы собираемся идти.
Ракетный магнит
11

Вопрос в том, зачем разрабатывать протокол, когда все уже существует.

Для решений Ethenet вы берете 10/100, а не 1GbE, потому что это все еще немного дешевле и намного проще для разметки. Кстати, Ethernet может работать без магнетизма. Но это требует MAC, который может быть дополнительной IC. Или у тебя есть один в микроконтроллере?

20 Мбит / с - это то, что соответствует Rs485 или тому подобному слою, который даже дешевле и проще. Витые пары поставляются со всеми видами кабелей, более или менее гибкими, с разъемами или просто припаяны к вашей печатной плате.

Ах, самое главное. Проще облажаться с 1Gb. Но если им нужно пространство для дальнейшего роста, это ограничивает меньше.

Итог: вы должны понимать ваши системные требования.

Грегори Корнблюм
источник
10

Я бы предложил самый простой путь с наибольшей вероятностью успеха и наименьшими затратами на программное обеспечение - реализовать подключение Ethernet со скоростью 100 Мбит / с. Вы можете реализовать это без каких-либо магнетизма при малых расстояниях.

Начнем с информации о контроллере PCI-Ethernet Intel 8255 и замечаний по применению для соединений без магнетизма.
Я не предлагаю вам использовать 8255, но вы можете получить IP (10/100/1000 Мбит / с) для любой из ПЛИС, которую вы, вероятно, будете использовать очень легко, и она хорошо отлажена.

Предполагая, что у вас есть процессор в комбинации, поддержка стандартного контроллера Ethernet является очень простым программным способом для реализации двухточечной сети.
Мы использовали кучу таких соединений типа «точка-точка» на специализированных материнских платах Intel, они были просты в отладке и очень надежны.

Джек Криси
источник
4
Хотя Ethernet может выполнять протокол, минимальная дистанция 100 Base ethernet составляет 1 метр (это было несколько лет назад при использовании Ethernet через объединительную плату). ОП упомянул, что расстояние составляло несколько дюймов, что скорее исключает Ethernet на физическом уровне.
Питер Смит
1
@PeterSmith, минимальное расстояние НЕ применяется к Ethernet без магнетизма. Это будет работать до нескольких дюймов.
Джек Криси
5

Ответы здесь технические, я даю перспективу разработки требований:

Мой взгляд на это прост

  • Вам нужно по крайней мере 20 Мбит / с, чтобы это работало, поэтому не указывайте 20, а "20 или более" для приложения.

  • любое более быстрое оборудование также выполняет ваши требования

  • если более быстрое HW дешевле / проще в разработке из-за существующих стандартов, то и эти требования могут быть выполнены и вами.

  • Если клиент хочет большего, попытайтесь выяснить, есть ли что-то за этим (возможно, они уже планируют обновления и хотят быть совместимыми между платами при замене)

Sascha
источник
3

Мощность, целостность сигнала и время. Я работал над чипом с интерфейсом 25 Гбит / с, что означало тактовую частоту 1,6 ГГц и тонну энергии. Если бы мы могли работать на 19,2, тактовая частота была бы 1,2 ГГц. Больше чем 200ps дополнительного запаса за такт, это было бы огромной помощью.

Я никогда не занимался дизайном платы, но я ожидаю, что 20 Мбит / с не проблема Скорость 1 Гбит / с все еще не так высока, но намного выше 20 Мбит / с.

Matt
источник