Железо для soft-модемов. Как подключить компьютер к телефонной линии
Самое дорогое в модеме – сигнальный процессор, универсальный или специализированный, совмещенный с управляющим микроконтроллером. До недавних пор альтернативы ему не было. Однако производительность центральных процессоров растет столь стремительно (а вместе с ней падает цена), что в современных ПК они практически никогда не загружены на все 100%. Благодаря этому появилась возможность использовать свободные ресурсы ЦП для выполнения многих функций модема, чему весьма способствовал дополнительный набор команд обработки сигналов (ММХ и его аналоги). В результате возник новый класс устройств – “программные модемы” (“soft-модемы”).
Собственно термином “soft-модем” именуют четыре различных типа устройств:
в модем без ПЗУ-микропрограммы, содержащий только ОЗУ. Микропрограмма в такой модем загружается из файла специальным программным загрузчиком, после чего модем вплоть до отключения питания работает, как обычный. Это облегчает обновление микропрограмм и исключает полную потерю работоспособности модема при некорректном перепрограммировании ПЗУ;
в модем, реализующий только протоколы модуляции и установления связи. Коррекцию ошибок, сжатие данных и другие сервисные функции поддерживает ЦП компьютера под управлением специального ПО. Модем выглядит как обычный, имеет набор команд, однако без внешних программ неработоспособен;
в модем без контроллера (controllerless). Производится только во внутреннем исполнении и фактически представляет собой модулятор/демодулятор на базе DSP с “неинтеллектуальным” интерфейсом. Все остальные функции модема, включая поддержку набора АТ-команд, возлагаются на центральный процессор и драйверы. Модемы этого типа работоспособны, только если в ОС установлены их драйверы, – иначе это просто кусок железа. Наиболее известный пример – USR Sрortster WinModem;
внаконец, модемы, все вычислительные функции которых поддерживает ЦП компьютера. Именно такие модемы в полной мере и могут называться программными – все алгоритмы реализует ЦП. Программный модем (soft-модем) позволяет избавиться от дорогостоящих микросхем DSP, микроконтроллера и ПЗУ, поскольку их функции реализуются за счет ресурсов ПК. Таким образом, требуется лишь AFE, интерфейс шины с компьютером и электрический интерфейс телефонной линии (рис. 2). Усовершенствование программного модема сводится к замене ПО – переустанавливать программы умеют все, а вот перепрограммировать ППЗУ модема – уже нет. Аппаратная же часть таких модемов в доработках не нуждается, по крайней мере пока не устарел сам компьютер. В результате снижаются стоимость, массогабаритные характеристики и энергопотребление устройства.
Достоинства программных модемов успели оценить ведущие производители ПК. Такие компании, как Hewlett-Packard, Gateway, NEC уже ими комплектуют свои настольные ПК и ноутбуки. Видимо, вскоре их примеру последуют другие крупные OEM-производители компьютеров.
Важно отметить, что идеология программных модемов приемлема не только для аналоговых линий (вплоть до поддержки протокола V.90), но и для цифровых технологий, например ADSL [1,2]. Реализация программного ADSL-модема со скоростью до 1,5 Мбит/с потребует 120—140 МГц центрального процессора. С выпуском компаниями AMD и Intel процессоров с тактовой частотой свыше 750 МГц такая дополнительная загрузка ЦП становится несущественной для большинства пользователей [3].
Одно из главных требований к программному модему – обработка информации в реальном времени, поскольку модемы должны обмениваться данными в прямом и обратном направлениях за фиксированный промежуток времени. Частоты дискретизации данных в модемах составляют от 8 до 9,6 кГц, т.е. для обработки данных модему отводятся временные сегменты от 125 до 104,16 мкс.
Проблема усложняется, если программный модем используется в среде Microsoft Windows, которая не является операционной системой реального времени. Поэтому возможны существенные задержки ответа модема на аппаратные прерывания. Кроме того, Windows, будучи многозадачной ОС, не умеет переключаться с некритичных с точки зрения реального времени задач на критичные, в том числе – на модемные приложения. Переключение задач происходит только тогда, когда само приложение вызывает ту или иную процедуру Windows.
Неудивительно, что эти проблемы породили немало скептиков по отношению к идее программного модема. Однако новую технологию поддержали крупнейшие компании-производители элементной базы для аппаратных модемов – Motorola, Lucent Technologies, Conexant, Smart Link, STMicroelectronics и ряд других.
Железо программных модемов
Современная тенденция развития персональных компьютеров – интеграция различных компонентов на материнской плате. В частности, разместив на ней модемный кодек и DAA, можно существенно удешевить систему. Однако любое устройство, подключаемое к телефонной линии, требует сертификации в соответствующем органе – Министерстве связи, FCC и т.д. А это приводит к задержкам в разработке и производстве материнских плат. Но выход был найден. Компания Intel разработала стандарт Audio Codec ‘97 (AC’97). Он описывает формат дополнительной платы для размещения аудиосистем, модемов, сетевых адаптеров и т.п. – Communication Network Riser (CNR) [4], а также AC Link – двунаправленный цифровой последовательный интерфейс с системной платой с мультиплексированием посредством разделения времени (Time Division Multiplexing).
На основе AC’97 разработана спецификация Audio/Modem Riser (AMR, в приложениях для ноутбуков ее называют Mobile Daughter Card, MDC) – открытый промышленный стандарт, определяющий плату расширения материнской платы и интерфейс, поддерживающий как аудиосистемы, так и модем.
Крайне важно, что платы AMR подключаются, минуя шину PCI (рис. 3). Интерфейс AC-Link связывает дополнительную плату с контроллером АС’97 на материнской плате и далее напрямую через процессорный чипсет с ЦП. В результате удается избавиться от разного рода задержек в шине PCI, тормозящих работу модемов (рис.4).
Стандарт AMR/MDC пришелся по душе практически всем производителям программных модемов. Так, Motorola производит семейство программных модемов SM56, поддерживающих протокол V.90. Модем этого семейства SM56 AC-L-CNR на платформе CNR (рис.5) обладает такими достоинствами, как полная совместимость с технологиями Microsoft Plug-n-Play, HomePNA и Ethernet, а его драйверы работают в среде ОС Windows 95/98, NT 4.0, Windows 2000 и Linux.
Именно этот модем выбрала компания Intel для тестирования производительности технологии CNR. Оказалось, что CNR с программным модемом SM56 использует всего 15,4% производительности процессора Intel Celeron с тактовой частотой 333 МГц, обеспечивая практически все основные функции модема с протоколом обмена V.34, в то время как бесконтроллерный PCI-модем с DSP использует 9,5%. Кроме того, использование CNR-карты приводит к снижению потребляемой мощности компьютера почти на 15%.
Одной из первых осознала выгоды платформы AMR компания SmartLink. Она предлагает модемы на основе своей технологии Chipless Modem и чипсетов семейства HAMR5600. Чипсеты реализуют модем V.90, факс, поддерживают телефонные функции. Ранее компания SmartLink представила комплект микросхем SmartRiser56 для модема стандарта V.90, поддерживающий спецификацию AC’97 [5].
Следует отметить, что комплект ИС HAMR5600 основан на технологии компании Silicon Labs. Эта фирма предлагает достаточно интересный чипсет Si3038, включающий две 16-выводные ИС – кодек с поддержкой интерфейса AT’97 (Si3024) и интерфейса телефонной линии Si3014, который программно настраивается на стандарты телефонных линий различных стран (требования FCC, CTR21, JATE), что облегчает процесс сертификации AMR-платы (рис. 6). Чипсет Si3038 позволяет избавиться от многих дискретных компонентов, в том числе таких стандартных элементов, как согласующий трансформатор, механические реле и оптопары (рис.7).
Не осталась равнодушной к набирающей популярность технологии AC-Link` 97 и компания Lucent Technologies, выпустив чипсет для программных модемов LU97. Он также состоит из двух 16-выводных микросхем, одна из которых (CSP1037) реализует AC’97-интерфейс, а другая (CSP1037 A/B) – интерфейс с телефонной линией.
Ряд комплектов ИС предлагает и фирма STMicroelectronics. Так, ее ИС ST75951, ST952 (соответственно кодек и интерфейс телефонной линии) позволяют строить факс-модемы, работающие со скоростями до 56 Кбит/с (рис.8). Предлагается и решение для модемов с одной ИС – STLC7550. Это – кодек (AFE), специально разработанный для программных модемов (рис.9). Пример использования STLC7550 без микросхемы DAA показан на рис.10.
Чипсет компании Conexant SmartMC II Modem Codec представляет собой модемный кодек и микросхему интерфейса с телефонной линией Smart DAA, которая отвечает американским и международным требованиям сертификации. Чипсет поддерживает обмен данных со скоростью до 56 Кбит/с, факс, функции голосовой телефонии и автоответчика, обладает интерфейсом AC-link и ориентирован как на AMR-платформу, так и на подключение по шине PCI. Компанией разработан также программный модем SoftK56 [6]. В нем использована технология Latency Guard, прозволяющая преодолеть такие проблемы, как задержки прерываний и шины PCI, обеспечивая наивысшую надежность по сравнению с другими программными модемами. При этом SoftK56 отбирает у процессора всего 50 МГц его общей производительности. Кодек и DAA модема SoftK56 реализованы на одной 144-выводной ИС.
Технология программных модемов не обошла стороной и DSL-модемы. Хотя это тема отдельной публикации, отметим, что комапния Motorola представила технологию SoftDSL для работы с широкополосными каналами связи [7]. В то время как затраты вычислительной мощности ЦП на обслуживание программного модема при работе по стандарту V.90 оценивают в 55—60 МГц тактовой частоты, программный механизм SoftDSL требует 130—140 МГц. Аппаратная же часть модема значительно упрощается за счет удаления микросхем памяти и DSP (рис.11). При близкой стоимости аналогового и DSL-программных модемов DSL-модемы в аппаратном исполнении гораздо дороже – с этой точки зрения перспективы программных DSL-технологий выглядят весьма привлекательно.
Все ли в порядке в королевстве датском?
Несмотря на перспективность программных модемов, нельзя не отметить и связанные с ними возможные проблемы. Наиболее частые из них – конфликты со звуковой картой при неверном распределении IRQ (запросов прерываний) в системе, трудности при назначении адреса или номера прерывания модема для работы через COM-порт. Могут возникнуть сложности при установке модема в соседний с AGP слот PCI, отсутствии поддержки прерываний шины PCI для не-Intel чипсетов (VIA, SiS, и т.п.), не говоря уж об использовании устаревших версий драйверов для самого модема. Известен случай, когда в комплект поставки модемов в OEM-исполнении Zoltrix Phantom не входили драйверы для OC Windows NT.
Однако подобные проблемы связаны в основном с несовершенством драйверов и не могут рассматриваться как серьезный аргумент против технологии программных модемов. Яркое и объективное подтверждение этого – динамика продаж программных модемов (рис. 12). С 1997 по 1999 год продажи возросли почти в восемь раз, достигнув 16 млн. изделий. По прогнозам, к 2002 году будет продано 50 млн. программных модемов, из которых 41 млн. будут использовать платформу CNR-карт [8].
Конечно, вряд ли программные модемы целиком и полностью вытеснят с рынка модемы аппаратные. Скорее всего, результатом конкурентной борьбы будет еще более интенсивное развитие как программного, так и аппаратного подходов к реализации модемов. И пользователи от этого только выиграют.
Литература
1. ЭЛЕКТРОНИКА:НТБ, 2000, №3, с.28.
2. Cravolta N. Getting Soft on Baseband and Broadband Modems. – EDN, 2000, 20 July, №56.
3. Wu T., Tramontano M. Want More for Less? The Promise of DSL Software Modem with Legacy V.90. – SoftDSL Technology Backgrounder. Motorola Software Products Division.
4. http://www.smlink.com/technologies/Amr-mdc/AMR-MDC-White-Paper.htm
5. http://developer.intel.com/technology/audio.htm
6. http://www.conexant.com/products/modems/v90/hcf_soft56/default.asp
7. http://www.motorola.com/softmodem
8. http://www.amrmodem.com/learn_soft.comm.html