Проекты Центра разработки Intel в России. Софт-модем Intel для коммутируемых линий

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.
Intel — это не только процессоры и средства для разработки ПО. Многие десятилетия компания вносит очень заметный и существенный вклад в развитие сетевых технологий. Тут и серверные сетевые карты для 1G, 10G, 40G и так далее Ethernet (а равно и клиентские, кто ж из здесь присутствующих не знает про Intel PRO/100). Сюда же добавим коммутаторы, оптические модули, экосистему Omni-path и прочее-прочее. И приятно сознавать, что среди всего этого сетевого разнообразия есть продукт, созданный почти двадцать лет назад руками (в том числе и в прямом смысле) специалистов Нижегородского офиса Intel. Речь идет об аналоговом софт-модеме Intel (кодовое имя проекта Catawba).



Будем считать, что на Хабре никому не надо рассказывать, что такое телефонный модем. Да, это то самое устройство, издающее звуки тонового набора, а потом «иу-иу-иу» — с них начинался вечер у любого человека, «живущего в сети» в конце девяностых. А если отвлечься от романтики, аналоговая передача данных по коммутируемым линиям используется и сейчас — когда нужно переслать небольшой кусочек информации самым простым методом: для связи с банкоматами и терминалами, получения телеметрических данных с удаленных датчиков и т.д.

Модемы, которые связывают людей...


Разработку программного модема для передачи данных по телефонной линии Intel начала в конце 2000 года и практически завершила в 2004. Сущность софт-модема (их еще называли Win-модемами), думаю, тоже объяснять не требуется. Уже из названия понятно, что большая часть его функций реализована программно, в отличие от модемов, сконструированных с использованием специализированных сигнальных процессоров (DSP). На плате модема располагались только аналоговая телефонная часть, осуществлявшая гальваническую развязку и поднимание-опускание трубки, а также аналогово-цифровой преобразователь (Analog to Digital converter, ADC). Данные с ADC поступали для дальнейшей обработки на центральном процессоре.

Таким образом, реализация протоколов передачи данных и обработка сигналов производилась на CPU. Поэтому совсем не удивительно, что Intel взялась за эту задачу — ведь у нее был не просто процессор собственного производства, но и, что немаловажно, производительный софт для этих целей — библиотеки Intel Integrated Performance Primitives, об истории которых мы недавно рассказывали. Оптимизация в данном случае была действительно необходима, ведь обработка сигнала производилась в реальном времени, что влекло высокие требования к задержкам и производительности. Эта задача была решена — нагрузка на CPU (конкретно — Pentium 4) не превышала 15-20% в режиме передачи данных.


Функциональная схема софт-модема Intel 537EP

Результатом работы Нижегородского центра разработки Intel в области программного модема стал набор драйверов c оптимизированными телекоммуникационными алгоритмами для процессоров Pentium 3 and Pentium 4. Плата модема производилась на основе набора микросхем Intel 537xx, который поддерживал различные периферийные интерфейсы: PCI, MDC (Modem Daughter card) или AC’97.

На рисунке показан вариант с PCI интерфейсом и набором микросхем Intel 537EP. Mодем поддерживал все протоколы передачи цифровых данных включая V.92 (56 Kbps, да-да!), сжатие и передачу аудио и видео данных, коррекцию ошибок, передачу факсов и все прочее, что должен был уметь современный модем. Модем Intel 537xx поставлялся с драйверами для Windows 98, XP, Vista,… и Linux. Так что это был не только Win-модем.


Компьютер DELL Dimension XPS Gen 5, оснащавшийся модемом Intel

Коммерческий успех проекта был, в числе прочего, обусловлен сотрудничеством с компанией DELL, которая использовала модем Intel во многих моделях своих компьютеров (на КДПВ показан PCI-модем производства DELL на базе чипсета 537EP). На сайте производителя до сих пор доступна страничка с драйверами для Intel 537EP под Windows XP. Кроме того, модемы отгружались большими партиями различным ODM-производителям. Суммарно по всему миру было поставлено около 5 миллионов моделей данного семейства!

… и люди, которые делают модемы


Проект Catawba потребовал вовлечения значительных ресурсов — и человеческих, и материальных. Оно и не удивительно, ведь помимо написания ПО и драйверов (к этому в нижегородском офисе Intel привычны), необходимо было создание аппаратной части — в прямом смысле, работа паяльником. Для тестирования модемов на соответствие телекоммуникационным стандартам в Нижнем была оборудована лаборатория стоимостью полмиллиона долларов. Но главное богатство проекта — это, конечно, люди. Их в команде насчитывалось около 25, совсем еще молодых специалистов, только недавно закончивших именитые ВУЗы страны — МИФИ, РадиоФак ННГУ и другие.


Как и в любом проекте: есть руководство и люди, тащащие бревно

Проект возглавляла Annie Lеong — опытный менеджер, воспитавший массу команд и людей. Надо отметить, что задолго до появления «стоячих собраний» scrum, у команды буквально проводились линейки с построением и заданием целей и приоритетов. Благодаря проектным менеджерам работа была организована очень тщательно, у всех была своя четкая роль.


Рабочие места в команде делились на настольные и подстольные

Все битвы за модем проходили в Catawba War Room. Туда нужно было идти, вооружившись всеми данными, которые есть на текущий момент, пускали в штаб только «офицеров». Очень интересным местом была тестовая лаборатория, где проверялось все то, что разрабатывали DSP-инженеры, драйверщики и прочие прекрасные люди. Лаборатория имела уникальное телекоммуникационное оборудование для проведения полного цикла тестирования на совместимость, надежность и скорость передачи данных:

  • TAS 100 Series Telephone Network Emulators, воспроизводившие условия порядка 160 вариантов телефонных соединений, включая помехи и искажения сигналов;
  • Сервера удаленного доступа (Dial-up remote access servers) от основных производителей: Cisco, Lucent, Conexant, Broadcom;
  • Клиентские модемы (Dial-up modems) ведущих вендоров: USRobotics, Conexant, Zyxel и пр. ;
  • Широкий спектр мобильных и десктопных платформ со всеми вариантами чипсетов от Intel, Sis, Via, Asus и пр. (да, в то время многие материнские платы использовали чипсеты сторонних производителей с процессором от Intel);
  • И много чего еще.


Система TAS 100, установленная в американской лаборатории Intel

Разработчики тоже осваивали массу нового — нужно было внедрять последние коммуникационные стандарты V.92 и различный функционал, который нужен был тому или иному конкретному заказчику, например «Modem On Hold» а также оптимизировать код под процессоры Intel с помощью уже упоминавшихся библиотек IPP, разрабатывать драйвера под Windows и Linux, проходить сертификацию, и так далее и тому подобное. Отдельная тема — отладка аппаратной части модема, работа для ребят с паяльниками.


Та самая работа паяльником

Catawba стал уникальным опытом для Российского центра разработки Intel. Участники проекта вспоминают о нем как бездонной емкости новых знаний, впечатлений и контактов. Как о событии, о котором с удовольствием вспоминаешь, в том числе и через 20 лет.

А что же сейчас?


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


Сетевая карта Intel x520 DA2 (2 порта 10G Direct Attach)

Самый успешный коммуникационный проект Intel — это сетевые карты для серверов. Начиная с Fast Ethernet в его медном или оптическом виде, шаг за шагом Intel ускоряла серверные подключения. В статье на историческую тематику, думаю, будет уместно вспомнить такие легендарные адаптеры как Intel 8256x и 8257x — рабочий инструмент для не одного поколения сетевых администраторов; Intel 8259x — первый шаг для многих профессионалов в 10G Ethernet; Intel x520 — сделавших десятигигабитность серверной обыденностью. Не могу в очередной раз не вспомнить, что в далеком 2012 году именно об этих адаптерах я написал свой первый пост в блог Intel, так что питаю к ним особо теплые чувства. Кстати, несмотря на свой преклонный возраст х520 до сих пор имеются в продаже, что говорит само за себя.


Сетевая карта XL710 QDA1 (1 порт 40G QSFP)

В последние годы основой линейки Intel составляли адаптеры серии х710/x720, принесшие с собой промежуточный вариант Ethernet 40G и, наконец, совсем недавно в новых картах x800 дело не торопясь дошло и до 100G. О новом поколении сетевых адаптеров Intel мы обязательно поговорим в блоге отдельно.

Еще одна технология, активно развиваемая Intel, на сей раз потребительская — Thunderbolt. К ней можно относиться по-разному, но не подлежит сомнению, что она: а) существует, б) используется, в) эволюционирует. Когда готовил статью, наткнулся в интернете на список ноутбуков (уж не знаю, полный или нет), поддерживающих Thunderbolt 3. Попробуйте его проскроллить, а потом скажите, редко ли встречается порт TB?

Месяц назад Intel анонсировала процессоры Tiger Lake со встроенным контроллером Thunderbolt 4. Характеристики новой технологии приведены в сравнительной табличке вместе с конкурирующими вариантами. Как видно, ТВ4 вполне себе неплох по всем параметрам, а с поддержкой на уровне процессора Intel еще и дешев в реализации.


Много усилий прилагается сейчас Intel для внедрения в жизнь стандартов пятого поколения сотовой связи. На эту тему мы также планируем написать отдельно, так что здесь просто упомянем как один из аспектов сегодняшнего дня.

Не все и не всегда в технологиях удается довести до светлого будущего. По-человечески жалко технологию высокоскоростной кластеризации Omni-Path. В 2015-17 годах Intel наработала полную экосистему устройств для практической реализации Omni-Path, однако позже новости о ней поступать перестали. Возможно, что это временно, в любом случае, сейчас, как и во времена Catawba, Intel остается одним из ведущих игроков в отрасли коммуникаций. Значит, и через 20 лет у нас будет, о чем вспомнить.



Благодарим Надежду Плотникову, Андрея Лисова и Алексея Сухова за помощь в подготовке этой статьи.
Источник: https://habr.com/ru/company/intel/blog/523026/


Интересные статьи

Интересные статьи

Уже долгое время Unity3D — мой любимый инструмент разработки игр, которым я пользуюсь уже более 8 лет — и для профессиональных продуктов, и для личных прое...
Близится 2021 год, а значит, минуло почти 4 года с момента, когда я присоединился к разработке Pathfinder:Kingmaker в качестве разработчика интерфейсов. За это время игра превратилась...
Тимлиды часто оценивают проекты, и не все делают это хорошо. Тут многое зависит от личности самого тимлида, а также от его понимания команды. Есть много техник оценки проектов от метода “по анало...
PVS-Studio – это инструмент для поиска ошибок и потенциальных уязвимостей в исходном коде программ, написанных на языках C, C++, C# или Java. PVS-Studio относится к классу инструментов статичес...
Если Вы используете в своих проектах инфоблоки 2.0 и таблицы InnoDB, то есть шанс в один прекрасный момент столкнуться с ошибкой MySQL «SQL Error (1118): Row size too large. The maximum row si...