Первый модем появился в 1958 году. Американская телефонная компания AT&T ввела дейтафонное обслуживание (передача информации по телефонному каналу). Первым модемом был Bell Dataphone 103, скорость передачи которого составляла 300 бит/с. Но даже сегодня большинство модемов имеет режим работы, совместимый с Bell 103. Bell 212a предложил уже 1200 бит/с, правда был более чувствителен к шумам в телефонной линии. Менее шумочувствительный модем разработала компания Racal-Vadic. К сожалению, эти две модели модемов несовместимы. Так начиналось длительное соперничество за права и стандарты в мире модемов.
В последнее время модемы становятся неотъемлемой частью компьютера, который превратился в интеллектуальное многофункциональное устройство, предоставляющее пользователю возможность общаться с огромным миром информации со всего света. Благодаря установки модема на компьютер, последний фактически превращается в звено глобальной сети.
Модем позволяет, не выходя из дома, помимо широчайшего спектра информации и услуг, получаемых через Internet, разместить сообщение на BBS (электронной доске объявлений), скопировать с той же BBS интересующие файлы. Кроме того, воспользовавшись глобальными сетями (RelCom, FidoNet) можно принимать и посылать электронные письма не только внутри города, но фактически в любой конец земного шара. Глобальные сети дают возможность не только обмениваться почтой, но и участвовать во всевозможных конференциях, получать новости практически по любой интересующей тематике.
1.1 Классификация модемов.
Модемы могут быть классифицированы :
по типу используемого канала
модемы для коммутируемых каналов - наиболее распространенные- использующиеся на коммутируемых телефонных линиях.
модемы для арендованных каналов - используются на выделенных линиях.
комбинированные- сочетающие в себе свойства двух предыдущих.
по скорости передачи информации
низкоскоростные модемы (до 1200 бит/с) -"первая волна" модемов
среднескоростные (от 1200 до 14400 бит/с) -как правило, модемы, произведенные до 1991 года.
высокоскоростные(>14400 бит/с) - большая часть современных модемов (за исключением специализированных, которым не требуются высокие скорости передачи данных и которыми можно пренебречь в пользу качества этой передачи).
по области применения
для передачи данных
факсимильные модемы (как правило интегрированные в факс-аппараты или отдельные устройства, обеспечивающие прием и передачу факсимильных сообщений со скоростью до 14400 бит/с)
комбинированные модемы (большинство модемов, использующихся в быту).
по исполнению
внутренние.
внешние.
по реализации дополнительных функций
интеллектуальные модемы- как правило современные типы модемов с возможностями управления их работой и установки конфигурации (т.е. скорости передачи, режима работы, типа синхронизации, протокола защиты от ошибок и др.). Модемы часто имеют возможность установки типовых конфигураций и управления набором одного из хранимых в памяти телефонных номеров с помощью органов управления на лицевой панели модема.
голосовые модемы получили такое название за способность оперировать соответствующими сигналами, так как позволяют одновременно передавать данные и голос. В основном, в пользовательских моделях применяется метод аналоговой передачи потоков голоса и данных, разнесенных по частотам, получивший название ASVD (Analogue Simultaneous Voice/Data). Этот подход поддержали ведущие производители модемных чипсетов Rockwel Semiconductor Systems (ныне Conexant) и AT&T Paradyne (теперь независимая компания Paradyne). Другой подход - DSVD (Digital Simultaneous Voice/Data) - подразумевает оцифровку голоса и включение полученных отсчетов в общий поток данных. В отличие от предыдущего метода, где скорость передачи данных ограничена 14400 Kbps, этот позволяет ее повысить до 28800 Kbps. Правда, качество передаваемого таким образом голоса гораздо хуже. Спецификация DSVD была разработана совместно Intel, Rockwell и U.S. Robotics. Такие модемы позволяют во время передачи данных между моделями такого типа подключать к ним телефонную гарнитуру и вести разговор. Преимущество этого режима заключается в том, что разговор будет абсолютно конфиденциальным: вы получите закрытый, защищенный от прослушивания канал, что само по себе немаловажно. Еще одним полезным свойством модема является возможность его применения в составе электронного офиса. Автоответчик, голосовая почта, выдача документов по требованию, факсимильный аппарат - и все это с использованием модема и персонального компьютера. Хотя, может быть, и не очень эффективно, с точки зрения экономии электроэнергии, держать персональный компьютер включенным круглосуточно. В таком случае лучше выбрать внешний модем с достаточным объемом оперативной памяти, чтобы в ней временно хранились принятые факсимильные и голосовые сообщения. Конечно, такие модели дороже, но их совокупную стоимость можно оценить, учитывая экономию в плате за свет при отключении персонального компьютера в нерабочее время. "Просто" голосовые, а также модели с одновременной передачей голоса и данных имеют в своих технических характеристиках соответствующие параметры: Voice и ASVD или DSVD.
по средствам управления
аппаратные
программные
В виду важности последних двух классов, рассмотрю их подробнее.
^ 1.1.1 Аппаратные модемы: внутренние и внешние.
Внешние модемы - отдельное устройство, питающееся от сети и имеющее разъемы для подключения телефонной линии и телефонного аппарата, соединяющееся шнуром с последовательным портом (интерфейсом) компьютера. На передней панели модема выведены светодиодные индикаторы, отображающие его состояние (их перечень представлен в таб.2 приложения).
Внутренние модемы выполнены в виде отдельной платы, вставляемой в слот на материнской плате компьютера. Подключение питания и соединение с компьютером внутренних модемов происходит непосредственно через шину. Это, с одной стороны, позволяет сэкономить на соединительных проводах, а с другой - ведет к замедлению работы компьютера, так как внутренний модем создает дополнительную нагрузку на центральный процессор. Одним из недостатком внутренних модемов является и сложность настройки конфигурации интерфейсов COM3 и COM4.
В последнее время наметилась тенденция к переводу внутренних модемов с шины ISA на PCI. При этом осталась актуальной одна из основных проблем инсталляции этого вида модемов: правильно сконфигурировать базовый адрес и используемое устройством прерывание. Помимо этого при установке изначально необходимо иметь свободный порт на материнской плате компьютера.
Внутренний модем не позволяет осуществлять контроль его состояния, что удобно реализовано посредством ряда светодиодных индикаторов на лицевой панели внешнего модема, а эмуляционные программы потребляют часть и без того обильно используемых внутренним модемом ресурсов центрального процессора (около 10%), что не происходит при работе модема внешнего. Причем для корректной работы внутренних модемов предъявляются довольно жесткие требования к ресурсам компьютера. На начало 2000 года - это процессор с тактовой частотой 166 МГц и ОЗУ как минимум 32Мб. При "зависании" внутреннего модема его нельзя перезагрузить отдельно - приходится прибегать к перезагрузке всего компьютера.
С другой стороны, внешние модемы довольно громоздки, соединительные провода так же не придают им привлекательности. Внутренние же обходятся без дополнительного источника питания и вставляются в соответствующий порт компьютера, не занимая место на рабочем столе. Помимо этого, они как правило на $10-15 дешевле внешних аналогов.
^ 1.1.2 Программные модемы.
Программные модемы выполнены по той же схеме, что и аппаратные. Основное отличие программного модема от аппаратного заключается в том, что часть его функций реализуется за счет центрального процессора компьютера и программного обеспечения. Зачастую от модема остается лишь кодек (сокращение от кодер-декодер), а все остальные функции выполняет драйвер, использующий ресурсы персонального компьютера. Некоторые производители реализуют программно лишь контроллер, оставляя на плате DSP (Digital Signal Processor, см. ниже). Такие модемы потребляют несколько меньше процессорного времени и, как показала практика, обладают лучшими характеристиками. Таким образом, подобное перераспределение аппаратных функций сильно удешевляет производство и, как следствие, конечную стоимость продукта. По существу, все усилия разработчиков сводятся к написанию кода "прошивки" (программы работы модема). Аппаратная реализация кодека требует минимальных затрат.
^ Недостатки программных модемов.
Использование ресурсов центрального процессора. Любой аппаратный модем содержит в себе процессор, выполняющий все вычислительные операции. Производительность такого процессора достаточно низкая из-за того, что круг задач подобного процессора невелик. Именно узкая специализация позволяет достичь нужного результата при малой производительности. Если сравнивать с процессорами сегодняшнего дня, то Intel 286 для этих целей хватит с избытком. Использование центрального процессора системы потребует более высоких затрат. Так, при использовании Pentium II 400 МГц требуется порядка 10% его вычислительной мощности. На младших процессорах, таких как Pentium 200 МГц, эта цифра достигает 40%. Для модемов с аппаратно реализованным DSP (см. ниже) эти цифры немного меньше. Отсюда видно, что использование программных модемов на младших моделях процессоров Pentium приведет к значительному сокращению вычислительных мощностей. Кроме всего прочего, в системе Microsoft Windows высокий приоритет работы драйвера модема приводит к тому, что пресловутые 10% можно считать недоступными для различного рода приложений. При этом зачастую становится невозможным использование приложений, работающих в режиме реального времени и наиболее критичных к вычислительным ресурсам.
Зависимость модема от операционной системы (ОС) проявляется в наличии или отсутствии драйверов. Здесь основную роль играет распространенность той или иной ОС и популярность самого модема. Поскольку продукт предназначен для конечного пользователя (корпоративный доступ строится на совсем других технологиях), то разработчикам выгоднее всего писать драйверы именно под конечного потребителя. На Украине, в России и ряде других стран на сегодняшний момент большинство пользователей работают под ОС Microsoft Windows. Пользователям других операционных систем перед покупкой такого модема имеет смысл навести справки у производителя. На сегодняшний день большинство таких модемов имеют драйверы под одну-две операционные системы, пользующиеся наибольшим спросом. Хотя в любой момент ситуация может кардинально измениться.
Полное отсутствие аппаратных средств (кодек можно в расчет не брать) открывает практически неисчерпаемые возможности для создания высококлассных модемов. Если для создания аппаратной части достаточно разового вложения средств, то для создания микропрограммы необходимо нанимать команду разработчиков, а затем постоянно вкладывать деньги в разработку более совершенных алгоритмов, в исправление уже существующих ошибок, в поиск know-how. Все это в итоге приводит к удорожанию конечного продукта и уменьшению рынка сбыта. Именно поэтому многофункциональные модемы обходятся значительно дороже. В их стоимость входит дальнейшая разработка новых и поддержка уже существующих микропрограмм. Про адаптацию к нашим линиям в подобном случае говорить уже не приходится.
Достоинства программных модемов:
Компактность. Для реализации софт- модема требуется лишь кодек и плата с двумя телефонными разъемами типа RJ-11. Открываются широкие возможности для интеграции софт- модемов в материнские платы, что мы сегодня и наблюдаем. Практически любая современная материнская плата имеет интегрированный кодек. Однако целесообразность подобного решения вовсе не очевидна. Во-первых, цена материнской платы возрастает на 10-20 долларов, что заставит призадуматься потенциальных покупателей, а также пользователей, имеющих аппаратные модемы. Во-вторых, не всегда есть возможность запретить системе использовать подобный модем (такие случаи пока еще встречаются), или она некорректно реализована. И наконец, не совсем понятно, чем модем лучше остальных периферийных устройств. Например, многим гораздо больше хотелось бы иметь интегрированный контроллер сканера или FM-тюнер.
Быстрая реализация новых функций и протоколов.
Отсутствие привязки к шине ISA .
Низкая стоимость. Для наращивания возможностей и реализации новых протоколов достаточно изменить соответствующим образом микропрограмму. При этом начисто отсутствуют затраты по разработке аппаратной части и привязке программного комплекса к элементной базе. Так же просто решается вопрос с адаптацией микропрограммы к реальным условиям для каждого конкретного случая. На сегодня система команд процессоров Intel изучена достаточно хорошо, так что изменить код драйвера не составляет особого труда. Для отечественных линий, качество которых оставляет желать лучшего, такая адаптация необходима.
^ Особенности программных модемов:
Появление спецификации PC 99, в которой шина ISA отсутствует как факт, заставляет производителей аппаратных модемов задуматься о целесообразности выпуска внутренних моделей с шиной ISA. С этой точки зрения интегрированные (встроенные в материнскую плату) софт- модемы могут послужить промежуточным решением для пользователей, чей бюджет не позволяет купить новый аппаратный модем взамен старого. В системе Microsoft Windows 2000 поддержка шины ISA не предусмотрена, поэтому даже наличие материнской платы с этой шиной в данной ситуации уже не спасет.
Софт- модем представляет собой стандартное PCI-устройство. Microsoft Windows при установке такого модема распознает его как стандартное устройство и запрашивает драйверы, после чего все Windows-приложения могут обращаться к нему как к обычному модему. Несколько по-другому работают с модемом DOS-приложения. С их точки зрения модем представляет собой обычный СОМ-порт. Таким образом, драйвер модема должен уметь эмулировать полноценный СОМ-порт для работы подобных программ. К сожалению, большинство производителей вообще не предусматривают такой возможности. В результате некоторые программы и старые игры такой модем использовать не смогут. Это стоит учесть в том случае, если подобные программы разрабатывались на заказ и по каким-либо причинам разработчики их больше не поддерживают. Это могут быть, например, программы бухгалтерии и складского учета, рассчитанные на удаленных друг от друга пользователей, или программы автоматизации предприятия.
^ 1.2 Основные компоненты модема.
Современный модем - сложное устройство, состоящее из нескольких основных блоков и компонентов, обеспечивающих его функционирование.
^ Компоненты модема:
• Контроллер - реализует протоколы сжатия данных и коррекции ошибок. Кроме того, является связующим звеном между модемом и программным обеспечением компьютера (реализует программный интерфейс).
• Кодек - осуществляет двустороннее преобразование аналогового сигнала, поступающего из линии, в поток цифровых данных.
• ПЗУ (постоянное запоминающее устройство) - микросхема памяти, хранящая в себе программу работы модема, также называемую "прошивкой". Последние модели модемов допускают обновление и перезапись прошивки модема с помощью специального программного обеспечения (за исключением тех случаев, когда это не предусмотрено производителем).
• ОЗУ (оперативное запоминающее устройство) - микросхема оперативной памяти, хранящая данные до первого выключения питания. Предназначена для хранения и последующей обработки потока данных. Иногда в ней же хранятся текущие настройки для работы модема.
^ Основные функциональные блоки (см. Рис.1.1):
Со стороны телефонной линии самым первым устройством является блок интерфейса с телефонной линией. Основными функциями этого блока являются:
• обеспечение физического соединения с телефонной линией;
• защита от перенапряжения и радиопомех;
• набор номера;
• фиксация звонков;
• гальваническая развязка внутренних цепей модема и телефонной линии;
• согласование импеданса.
Далее сигналы попадают в дифференциальную систему, цель которой - разделение выходных и входных сигналов и компенсация влияния собственного сигнала на входные цепи. В наиболее простых моделях модемов этот узел исполняется в виде пассивной схемы, что зачастую приводит к сильной зависимости качества работы блока от сопротивления конкретной телефонной линии. Избавиться от такой зависимости могут только модели с активной дифференциальной системой, где необходимый для компенсации сигнал постоянно вычисляется сигнальным процессором и, "вычитаемый" из входного сигнала, обеспечивает необходимый уровень компенсации.
Подготовленные таким образом сигналы попадают на ряд фильтров, усиливаются и оцифровываются с помощью АЦП (аналогово-цифровой преобразователь) в блоке формирования аналоговых фронтов, так что дальнейшая обработка производится в цифровом виде. Одно из преимуществ такого подхода - улучшение качества обработки сигнала и удешевление схемы.
Обработанная информация поступает в цифровой сигнальный процессор (DSP), который и выделяет из нее на основе математических методов “нули” и “единицы”. Именно возможностями цифровой обработки сигнала этого блока определяется качество и скоростные возможности современных модемов.
Раздел 2:^ Основные понятия.
Модем - это преобразователь сигналов, который является промежуточным звеном между компьютером и соединительной линией. Название модема происходит от двух слов: "Модулятор" и "Демодулятор". Как модулятор модем преобразует цифровые сигналы импульсов постоянного тока, используемые в компьютерных системах, в аналоговые сигналы, содержащие ту же информацию. Этот процесс и называется модуляцией.
Модуляция и модемы необходимы потому, что сигналы телефонного канала связи не всегда представимы в цифровой форме. Процесс модуляции формирует аналоговые сигналы, в которых закодирована цифровая информация, порожденная компьютером, но которые можно передать через телефонные каналы.
Демодуляция представляет собой обратный процесс. Если посмотреть на образуемый сигнал с другой стороны - модем, как модулятор, получает аналоговые сигналы и преобразует их в начальную цифровую форму, содержащую переданную информацию.
Естественно, что для нормальной деятельности, работающие в паре модемы должны осуществлять операции модуляции/демодуляции одинаковым образом, иначе информация, передаваемая между ними, будет необратимо искажена.
^ Несущая частота. По своей сути процесс модуляции представляет собой наложение одного сигнала на другой. Модем, как модулятор, начинает функционировать, генерируя постоянный сигнал, называемый несущей частотой, потому что с его помощью осуществляется передача информации. В большинстве систем несущая частота - это устойчивый сигнал постоянной амплитуды, фазы и частоты.
^ Информационный сигнал. Сигнал, который электрически смешивается с несущей частотой, моделируя ее по некоторому закону, называется информационным. Изменение информационного сигнала приводит к изменению несущего и выходного сигнала. Изменение информационного сигнала порождает соответствующее изменение несущей частоты, но не обязательно в том же аспекте. Например, при частотной модуляции с увеличением информационного сигнала изменяется частота несущего сигнала.
Модуляция представляет несколько преимуществ, которые перевешивают недостатки сложности наложения двух сигналов. Так как электронные цепи могут быть настроены на обработку одной несущей частоты и отражение всех других, мультиплицированные модулированные сигналы могут посылаться через один канал связи. Этот принцип заложен во всех радиовещательных станциях и в средствах радиосвязи. Помимо того, модуляция позволяет цифровой информации в форме постоянного тока быть переданной такими средствами, как телефонные системы, которые не могут обрабатывать сигналы постоянного тока.
В демодуляторах несущая частота отделяется, а закодированная информация представляется в своей первоначальной форме. И хотя логически этот процесс напоминает модуляцию, демодуляция обычно реализуется на базе совершенно других цепей и принципов, что вносит дополнительные сложности.
^ Последовательная передача данных означает, что данные передаются по единственной линии. При этом биты байта данных передаются по очереди с использованием одного провода. Для синхронизации группе битов данных обычно предшествует специальный стартовый бит, после группы битов следуют бит проверки на четность и один или два стоповых бита. Иногда бит проверки на четность может отсутствовать.
^ Форматы передачи данных определяют использование бита четности, стартовых и стоповых битов. Очевидно, что передатчик и приемник должны использовать один и тот же формат данных, иначе обмен не возможен.
^ Верхние и нижние границы. В наипростейших модулирующих системах выходной частоте требуется двойная полоса модулируемого сигнала. Хотя это в два раза увеличивает искажение, его прямым результатом является комбинирование выходного сигнала. Несущая частота и информационный сигнал накладываются друг на друга в результате процесса модуляции согласно частоте модуляции, и оба прибавляются к несущей частоте с частотой модуляции и вычитаются из нее. В результате сложения получают величину часто называемую верхней границей, а в результате вычитания - нижнюю границу.
Так как эти верхние и нижние сигналы целиком излишни (они содержат одну и ту же информацию), один из них может быть удален без потери информации, что позволяет уменьшить полосу пропускания до диапазона информационного сигнала (этот принцип обычно используется в радиовещании для передачи большего объема информации в ограниченном радиодиапазоне).
Но даже при работе по такому принципу фундаментальным остается требование, что любому модулируемому сигналу требуется определенная полоса частот для передачи информации. Ограничения диапазона частот определяют полосу пропускания, требуемую для модулируемого сигнала.
^ Скорость передачи данных должна быть одинаковой для передатчика и приемника. Скорость передачи данных обычно измеряется в бодах (по фамилии французского изобретателя телеграфного аппарата Emile Baudot - Э. Бодо) или в количестве передаваемых битов в секунду. При этом учитываются и старт/стопные биты, а также бит четности. Величины "бод" и "бит/с" не всегда совпадают.
Все каналы связи и проходящие по ним сигналы характеризуются полосой пропускания. Эта характеристика определяет диапазон частот, который канал может передать или который может присутствовать в сигнале.
Аналоговые каналы тональной частоты характеризуются тем, что спектр передаваемого по ним сигнала ограничен диапазоном 300-3400 Гц (в "Библии по техническому обеспечению" Уинна Роша этот спектр ограничивается диапазоном 300-3000 Гц, а журнал "Компьютерное обозрение" называет диапазон 300-3500 Гц). Скорость передачи информации не может превышать ширины этого спектра, т.е. 3100 бод.
Электрический сигнал, распространяемый по каналу, характеризуется тремя параметрами: амплитудой, частотой и фазой. Изменение одного или совокупности этих параметров составляет физическую сущность процесса модуляции. Каждому информационному элементу соответствует фиксированный отрезок времени, на котором электрический сигнал имеет определенные значения своих параметров, характеризующих значение этого информационного элемента. Этот отрезок времени называется бодовым интервалом. Если кодируемый элемент соответствует одному биту информации (может принимать значения 0 и 1), то модуляционная скорость (линейная или бодовая) равна информационной, т.е. 1 бод = 1 бит/с. Но кодируемый элемент может соответствовать, например, двум битам информации. В этом случае информационная скорость может принимать совокупность значений 00, 01, 10 и 11. В общем же случае, когда на бодовом интервале кодируются n бит, информационная скорость будет превышать бодовую в n раз.
Количество возможных состояний сигнала (в трехмерном - амплитуда, частота и фаза) в общем случае 2n. Это означает, что демодулятор модема, получив на бодовом интервале некий сигнал, должен сравнить его с 2n эталонными сигналами и безошибочно выбрать один из них для декодирования искомых n бит. Таким образом, с увеличением емкости кодирования и ростом информационной скорости относительно бодовой, расстояние в сигнальном пространстве между двумя соседними точками сокращается в степенной прогрессии. А это, в свою очередь, накладывает более жесткие требования к "чистоте" канала передачи. Теоретически возможная скорость в реальном канале определяется формулой Шенона:
V=F log2(1+S/N) ,
где F- ширина полосы пропускания канала, S/N- отношение сигнал/шум.
Чтобы определить количество знаков, передаваемых в секунду, нужно скорость, выраженную в бит/c, разделить на 10, т.к. каждый передаваемый байт содержит кроме 8 битов информации еще и по одному стартовому и стоповому биту. "Characters per second", сокращенно "cps" - это единица измерения скорости передачи данных в знаках в секунду, т.е. фактическая скорость передачи данных.
^ Уплотнение данных воспринимают как меру ускорения передачи информации. При посылке данные обрабатываются программой модема и уплотняются. При этом объединяются повторяющиеся данные, т.е. программа сокращает, например, последовательность знаков ВВВВВВ до 6хВ. Средне статистически это наполовину сокращает количество передаваемых данных. Уплотнение согласно протокола V.42bis (см. ниже) снижает количество передаваемых данных, в зависимости от их вида, примерно на 75%, а старый стандарт MNP-5 уплотняет данные максимально на 50%.
^ Поле безопасности необходимо, потому что качество телефонных линий в значительной мере варьируется, особенно когда используются подключения на большие расстояния. Так как плохой канал не обеспечивает номинальной полосы частот от 300 до 3400 Гц, это плохо сказывается на работе модема, пытающегося воспользоваться всей полосой частот. Если его характеристики хуже стандарта, а информация передается и на граничных частотах полосы, существует большая вероятность возникновения ошибок.
Дуплекс. Полезная полоса частот канала передачи данных через модем также ограничена из-за того, что большинство модемов работает в дуплексном режиме. Термин "дуплекс" - часто заменяемый излишне полным названием полный дуплекс (full duplex) - описывает возможность канала связи одновременно передавать два сигнала, обычно (но не всегда), имеющих противоположные направления. Используя эти два канала, полнодуплексный модем может передавать и принимать информацию в одно и то же время. Для этого используются две несущих частоты, позволяющих одновременно получать и передавать информацию. Две несущие делят пополам имеющуюся полосу пропускания.
Полудуплекс. Альтернативой предыдущему режиму служит полудуплекс. В этом случае используется только один сигнал, а модем должен попеременно настраиваться на прием и передачу сигналов для организации двунаправленности разговора. Это позволяет расширить используемую полосу пропускания канала, но уменьшает скорость обмена информации, потому что модему часто приходится изменять режимы передачи и приема - после каждого блока информации, передаваемой через канал.
Эхо. Термин "дуплекс" часто путают при описании "эхо" операции. В последнем режиме модем выдает символ в телефонную линию, а удаленный модем возвращает этот же символ первому, который затем отображается, подтверждая правильность передачи символа. Без этого режима центральный компьютер обычно заносит передаваемые символы прямо на экран своего монитора.
^ Охранная полоса. В режиме дуплекса полоса не просто делится на две. Два канала разделяются охранной полосой. Эта полоса представляет собой неиспользуемые частоты, изолирующие каналы и предохраняющие их от перекрытия отдельных несущих частот. Полоса безопасности, по сути дела, также является охранной полосой между несущей полосой и ограничениями самой полосы пропускания.
Учитывая необходимые охранные полосы в дуплексном режиме, реальная полоса частот ограничена для модема телефонного канала до 2400 Гц, оставляя только 1200 Гц для каждого из двух дуплексных каналов.
^ Способы модуляции. Различными модемами используются различные способы модуляции сигналов. Все они базируются на характеристиках несущей волны, которая может быть изменена для кодировки информации.
Используются три основные волновые характеристики: амплитудная, частотная и фазовая.
Амплитудная модуляция. Амплитуда - это сила сигнала или громкость тона передаваемого через телефонный провод. Изменение этой характеристики при кодировке передаваемой информации, называется амплитудной модуляцией. Одним из способов, с помощью которого цифровая информация может быть закодирована при амплитудной модуляции, является соотношение двух значений амплитуд в соответствии с цифровой информацией. Так цифровую информацию можно кодировать установкой максимальной мощности сигнала и нулевой мощностью. Эту характеристику телефонного сигнала легче всего изменять. Однако оба перехода могут накрываться шумами, поэтому амплитудная модуляция не используется в модемах.
Фазовая модуляция. Для кодирования информации в несущей частоте можно использовать и ее фазу. Не модулируемая частота содержит ряд идентичных волн, которые следуют друг за другом с одним шагом. Если же, например, одну волну задержать на ее длину, она придется точно на вершину следующей. Задержка одних волн без изменения их амплитуд или частот порождает изменение, называемое фазовым сдвигом. Установка волны сдвигает во времени ее по отношению к предшествующей. Таким образом, информация может быть закодирована путем сдвига фазы. Единица кодируется одним ее положением, а нуль - другим. Хотя этот способ модуляции используется в модемах связи более часто, он применяется в комбинации с другими технологиями.
Частотная модуляция. Цифровой сигнал можно также закодировать при помощи изменения частоты, например, большое значение можно закодировать высокой частотой, а малую амплитуду более низкой частотой. Такая технология называется частотной модуляцией и обычно используется в радиовещании. В большинстве случаев при частотной модуляции разные значения частот соответствуют цифровым нулю и единице. Говоря другими словами, одна частота обозначает цифровую единицу, а другая - цифровой нуль. Такой вид модуляции называется частотной кодировкой. Слово кодировка пришло к нам от телеграфных времен, когда этот вид модуляции использовался для передачи кода Морзе, и сдвиг частоты соответствовал соответствующему телеграфному ключу. Этот принцип модуляции использовался в наиболее популярных модемах, реализующих передачу информации со скоростью 300 бит в секунду по стандарту Bell 103.
^ Коррекция ошибок. Быстродействующие модемы очень чувствительны к шумам в линии (особенно сильно это явление проявляется начиная со скорости 9600 бит/с). Поэтому одним из обязательных требований к современным модемам является возможность исправлять практически любые случайные ошибки при приеме и передаче файлов. Используемые в настоящее время и ранее протоколы коррекции ошибок применяются обычно вместе со способом сжатия данных. Параллельно с коррекцией ошибок используется Fallback-метод (метод нейтрализации ошибки), встроенный в некоторые протоколы (V.42,
www.ronl.ru
Раздел1: Модем. Классификация модемов. Устройство модема.
1.1 Классификация модемов
1.1.1 Аппаратные модемы
1.1.2 Программные модемы
1.2 Основные компоненты модема
1.2.1 Непосредственно компоненты
1.2.2 Основные функциональные блоки
1.3 Интерфейсы
1.3.1 Интерфейс "модем- телефонная линия"
1.3.2 Интерфейс "модем-компьютер"
1.3.2.1 Сигналы интерфейса S-232C
1.3.2.2. Технические параметры интерфейса RS-232C
1.3.2.3 Программирование адаптера
1.3.2.4 Инициализация асинхронного адаптера
1.4 Программирование модемов
1.4.1 Основные принципы программирования модемов
1.4.2 Последовательность действий для установления связи
Раздел 2: Основные понятия и термины.
Раздел 3: Управление передачей и приемом файлов. Протоколы обмена данными.
3.1 Протоколы MNP -протоколы коррекции ошибок нижнего уровня.
3.1.1 Перечень протоколов MNP (MNP1-MNP10)
3.1.2 Режимы MNP-модемов.
3.2 Протоколы передачи файлов
3.3 Протоколы передачи данных стандарта CCITT (ITU)
Раздел 4: Физика процесса модуляции. Эволюция скоростей.
Раздел 5: Области применения модемов. Линии связи.
5.1 Выделенная линия связи (физическая линия)
5.2 Канал тональной частоты
5.3 Локальная сеть
5.4 Телефонные сети
5.4.1. Основные характеристики телефонных линий
5.4.2 Параметры различных типов телефонной линии
Раздел 6: Проблемы использования модемов на отечественных телефонных линиях.
6.1 Обзор проблем.
6.2 Анализ проблемных ситуаций и методов их решения.
Приложение
3. Таблица разводки разъемов DB25 и DB9.
Раздел1: Модем. Классификация модемов. Устройство модема.
Первый модем появился в 1958 году. Американская телефонная компания AT&T ввела дейтафонное обслуживание (передача информации по телефонному каналу). Первым модемом был Bell Dataphone 103, скорость передачи которого составляла 300 бит/с. Но даже сегодня большинство модемов имеет режим работы, совместимый с Bell 103. Bell 212a предложил уже 1200 бит/с, правда был более чувствителен к шумам в телефонной линии. Менее шумочувствительный модем разработала компания Racal-Vadic. К сожалению, эти две модели модемов несовместимы. Так начиналось длительное соперничество за права и стандарты в мире модемов.
В последнее время модемы становятся неотъемлемой частью компьютера, который превратился в интеллектуальное многофункциональное устройство, предоставляющее пользователю возможность общаться с огромным миром информации со всего света. Благодаря установки модема на компьютер, последний фактически превращается в звено глобальной сети.
Модем позволяет, не выходя из дома, помимо широчайшего спектра информации и услуг, получаемых через Internet, разместить сообщение на BBS (электронной доске объявлений), скопировать с той же BBS интересующие файлы. Кроме того, воспользовавшись глобальными сетями (RelCom, FidoNet) можно принимать и посылать электронные письма не только внутри города, но фактически в любой конец земного шара. Глобальные сети дают возможность не только обмениваться почтой, но и участвовать во всевозможных конференциях, получать новости практически по любой интересующей тематике.
1.1 Классификация модемов.
Модемы могут быть классифицированы :
В виду важности последних двух классов, рассмотрю их подробнее.
1.1.1 Аппаратные модемы: внутренние и внешние.
Внешние модемы - отдельное устройство, питающееся от сети и имеющее разъемы для подключения телефонной линии и телефонного аппарата, соединяющееся шнуром с последовательным портом (интерфейсом) компьютера. На передней панели модема выведены светодиодные индикаторы, отображающие его состояние (их перечень представлен в таб.2 приложения).
Внутренние модемы выполнены в виде отдельной платы, вставляемой в слот на материнской плате компьютера. Подключение питания и соединение с компьютером внутренних модемов происходит непосредственно через шину. Это, с одной стороны, позволяет сэкономить на соединительных проводах, а с другой - ведет к замедлению работы компьютера, так как внутренний модем создает дополнительную нагрузку на центральный процессор. Одним из недостатком внутренних модемов является и сложность настройки конфигурации интерфейсов COM3 и COM4.
В последнее время наметилась тенденция к переводу внутренних модемов с шины ISA на PCI. При этом осталась актуальной одна из основных проблем инсталляции этого вида модемов: правильно сконфигурировать базовый адрес и используемое устройством прерывание. Помимо этого при установке изначально необходимо иметь свободный порт на материнской плате компьютера.
Внутренний модем не позволяет осуществлять контроль его состояния, что удобно реализовано посредством ряда светодиодных индикаторов на лицевой панели внешнего модема, а эмуляционные программы потребляют часть и без того обильно используемых внутренним модемом ресурсов центрального процессора (около 10%), что не происходит при работе модема внешнего. Причем для корректной работы внутренних модемов предъявляются довольно жесткие требования к ресурсам компьютера. На начало 2000 года - это процессор с тактовой частотой 166 МГц и ОЗУ как минимум 32Мб. При "зависании" внутреннего модема его нельзя перезагрузить отдельно - приходится прибегать к перезагрузке всего компьютера.
С другой стороны, внешние модемы довольно громоздки, соединительные провода так же не придают им привлекательности. Внутренние же обходятся без дополнительного источника питания и вставляются в соответствующий порт компьютера, не занимая место на рабочем столе. Помимо этого, они как правило на $10-15 дешевле внешних аналогов.
1.1.2 Программные модемы.
Программные модемы выполнены по той же схеме, что и аппаратные. Основное отличие программного модема от аппаратного заключается в том, что часть его функций реализуется за счет центрального процессора компьютера и программного обеспечения. Зачастую от модема остается лишь кодек (сокращение от кодер-декодер), а все остальные функции выполняет драйвер, использующий ресурсы персонального компьютера. Некоторые производители реализуют программно лишь контроллер, оставляя на плате DSP (Digital Signal Processor, см. ниже). Такие модемы потребляют несколько меньше процессорного времени и, как показала практика, обладают лучшими характеристиками. Таким образом, подобное перераспределение аппаратных функций сильно удешевляет производство и, как следствие, конечную стоимость продукта. По существу, все усилия разработчиков сводятся к написанию кода "прошивки" (программы работы модема). Аппаратная реализация кодека требует минимальных затрат.
Недостатки программных модемов.
Достоинства программных модемов:
Особенности программных модемов:
1.2 Основные компоненты модема.
Современный модем - сложное устройство, состоящее из нескольких основных блоков и компонентов, обеспечивающих его функционирование.
Компоненты модема:
• Контроллер - реализует протоколы сжатия данных и коррекции ошибок. Кроме того, является связующим звеном между модемом и программным обеспечением компьютера (реализует программный интерфейс).
• Кодек - осуществляет двустороннее преобразование аналогового сигнала, поступающего из линии, в поток цифровых данных.
• ПЗУ (постоянное запоминающее устройство) - микросхема памяти, хранящая в себе программу работы модема, также называемую "прошивкой". Последние модели модемов допускают обновление и перезапись прошивки модема с помощью специального программного обеспечения (за исключением тех случаев, когда это не предусмотрено производителем).
• ОЗУ (оперативное запоминающее устройство) - микросхема оперативной памяти, хранящая данные до первого выключения питания. Предназначена для хранения и последующей обработки потока данных. Иногда в ней же хранятся текущие настройки для работы модема.
Основные функциональные блоки:
Со стороны телефонной линии самым первым устройством является блок интерфейса с телефонной линией. Основными функциями этого блока являются:
• обеспечение физического соединения с телефонной линией;
• защита от перенапряжения и радиопомех;
• набор номера;
• фиксация звонков;
• гальваническая развязка внутренних цепей модема и телефонной линии;
• согласование импеданса.
Далее сигналы попадают в дифференциальную систему, цель которой - разделение выходных и входных сигналов и компенсация влияния собственного сигнала на входные цепи. В наиболее простых моделях модемов этот узел исполняется в виде пассивной схемы, что зачастую приводит к сильной зависимости качества работы блока от сопротивления конкретной телефонной линии. Избавиться от такой зависимости могут только модели с активной дифференциальной системой, где необходимый для компенсации сигнал постоянно вычисляется сигнальным процессором и, "вычитаемый" из входного сигнала, обеспечивает необходимый уровень компенсации.
Подготовленные таким образом сигналы попадают на ряд фильтров, усиливаются и оцифровываются с помощью АЦП (аналогово-цифровой преобразователь) в блоке формирования аналоговых фронтов, так что дальнейшая обработка производится в цифровом виде. Одно из преимуществ такого подхода - улучшение качества обработки сигнала и удешевление схемы.
Обработанная информация поступает в цифровой сигнальный процессор (DSP), который и выделяет из нее на основе математических методов “нули” и “единицы”. Именно возможностями цифровой обработки сигнала этого блока определяется качество и скоростные возможности современных модемов.
Поддержка интерфейса с компьютером, управление DSP, реализация протоколов аппаратной коррекции ошибок и сжатия данных, управление интерфейсом с пользователем (индикаторы, кнопки и джамперы настройки), а также управление энергонезависимой памятью - вот далеко не полный список функций, лежащих на системе управления модемом (контроллере модема).
При этом если ранее микропрограмма хранилась в ПЗУ, изготовленном и "прошитом" на заводе, то теперь производители все чаще стали помещать ее в перезаписываемую флэш-память, что позволяет обновлять программу без аппаратного вмешательства. DSP со "вшитой" в долговременную память (ПЗУ или flash, что допускает модернизацию) программой обработки получил образное название "datapump" ("насос данных"). Подобная мультипроцессорная архитектура (так называемая функциональная мультипроцессорность) отлично работала в модемах на протяжении многих лет.
Сегодня актуальной становится "деинтеллектуаилизация" модема, для которой уже родилась и новая аббревиатура - HSP (Host Signal Processing, дословно - обработка ресурсами процессора компьютера). Несомненно, вычислительная мощность массовых процессоров семейства х86 позволяет переложить ряд задач обработки сигналов с DSP на CPU-машины и при этом получить даже дополнительные преимущества, заключающиеся в упрощении процедур модернизации специализированного и прикладного ПО и снижении стоимости. Но это только одна сторона медали.
Наблюдается также тенденция потери модемом аппаратной независимости - в чипсеты встраиваются контроллеры сугубо "персональных" шин, таких, как РСI и USB (Universal Serial Bus), в сочетании с узкоспециализированными аппаратно-микропрограммными средствами, соответствующими требованиям тех или иных операционных систем. Это тоже, на первый взгляд, неплохо, потому как гарантирует снижение цены и повышение потребительских удобств.
Единственная аналоговая (и потому крайне важная) подсистема модема - DAA - все чаще реализуется в интегральном исполнении, что уменьшает количество необходимых для изготовления полнофункционального модема дискретных элементов (конденсаторов, резисторов и пр.) до единиц. Еще один почти отрадный факт: меньше элементов, меньше необходимых монтажных операций при сборке, следовательно - ниже стоимость и выше надежность.
С другой стороны, после возложения на программу некоторых жизненноважных функций, аппаратно зависимый от платформы модем как правило устойчиво работает только под ОС Windows.
К проблеме согласования сопротивлений следует добавить один тонкий нюанс- зависимость сопротивления телефонной линии от частоты сигнала. Из многолетней успешной практики электроники доподлинно известно, что наилучшим устройством для работы на реактивную нагрузку является обычный трансформатор (при некоторых ограничениях, несущественных в рассматриваемом случае). Для модемов (особенно на нашем рынке) это утверждение также справедливо - практически у всех самых лучших проверенных временем моделей трансформаторный DAA.
Естественно, трансформатор - устройство не дешевое, уж по крайней мере намного дороже микросхемы DAA, да и качество телефонных линий в странах с емкими платежеспособными рынками намного выше нашего, что объясняет тенденцию "детрансформаторизации".
Теперь пора вкратце рассмотреть механизмы защиты от аналогового хаоса. Чипсет действительно хорошего модема обязан для успешной работы в наших условиях обладать двумя скрытыми, но очень важными (и сложными в реализации) функциональными блоками - эхо-компенсации и эквалайзера .
Эхо-компенсатор предназначен для борьбы с эхо-сигналом. Эквалайзер также вносит немаловажный вклад в повышение скорости и устойчивости связи, согласовывая частотные характеристики приемопередатчика модема и конкретной телефонной линии.
Обзор практически всех новых моделей чипсетов, поддерживающих протокол v.90, не выявил реализации в них ни эхо-компенсаторов, ни управляемых эквалайзеров. Возможно, что производители просто "забыли" сообщить об этих особенностях, но подозрение об отсутствии столь необходимой для наших телефонных линий функциональности подтверждается и низкой ценой новых чипсетов (в "до-V.90" времена эхо-компенсатором и эквалайзером оснащались только лучшие чипсеты Lucent, низкой стоимостью никогда не отличавшиеся).
Lucent сосредоточилась на двух семействах чипсетов, ориентированных на применение во внутренних модемах, - Apollo и Mars. Учитывая очень высокое качество используемого DSP и мощный опыт Lucent в разработке модемного firmware (внутреннего модемного ПО), можно смело утверждать, что пользователей Windows модемы на новых чипсетах Lucent не подведут.
До появления высокоскоростных протоколов на 56 Kbps передача данных между двумя модемами по обычным телефонным каналам связи осуществлялась в аналоговом режиме, как было рассмотрено выше.
Основным сдерживающим фактором, препятствующим "бесконечному" увеличению скорости передачи данных с помощью модемов, является качество аналоговых телефонных линий связи. До недавнего времени (буквально до начала 80-х годов) основным назначением телефонных каналов связи была только передача голоса. Поэтому, исходя из соображений стоимости и для борьбы с шумами в линии, полоса пропускания телефонного канала была ограничена диапазоном 300-3500 Hz. Исследования показали, что именно в этом диапазоне частот находится основная часть спектра человеческой речи, поэтому после наложения на исходный сигнал указанных ограничений разборчивость речи не ухудшится.
Для управления так называемыми "интеллектуальными" модемами используются специальные связные программы - программы работающие под управлением операционной системы ЭВМ. Связная программа создает на экране терминала дружественный интерфейс пользователя, обеспечивающий удобное выполнение необходимых управляющих функций. При этом используется, в основном, набор команд АТ, передаваемых модемом либо через связной порт компьютера (для внешних модемов), либо через общую шину (для внутренних модемов). Перед началом работы, пользователь может задать некоторые параметры взаимодействия компьютера и модема. Связные программы создают ряд возможностей, упрощающих управление модемом:
1.3 Интерфейсы.
Для подключения модема к телефонной линии и компьютеру предусмотрены стандартные интерфейсы.
1.3.1 Интерфейс "модем- телефонная линия".
Соединители RJ11 обеспечивают физическое подключение модема к телефонной линии и телефонного аппарата к модему.
Модемы, как правило, имеют два каскада защиты от неожиданного повышения напряжения. Входные линии защищены от перенапряжения варистором, который резко уменьшает свое сопротивление при напряжении 400-500 В. Второй каскад быстродействующей защиты устанавливается во вторичную обмотку трансформатора и реализуется на встречновключенных стабилитронах.
Защита линии от радиопомех, излучаемых модемом, выполняется на обычных LC-фильтрах (1000пФ +3 витка на феррите).
Для коммутируемой линии поддерживается функция импульсного набора номера, "отбоя" (постоянный ток менее 0,5 мА), и "удержания линии" (постоянный ток более 8 мА).
Наиболее универсальна ситуация, когда набор номера выполняет реле, а постоянный ток протекает через трансформатор.
В современных модемах используется схема Electronic Holding Call Circuit, которая имеет низкое сопротивление постоянному току, достаточное для удержания линии, но сохраняет высокий импеданс для переменного тока полезного сигнала. При этом набор номера осуществляет либо реле, либо сам узел EHCC с оптронной развязкой управления.
Наиболее консервативен узел фиксации телефонных звонков. Он состоит из высоковольтного конденсатора, резистора, стабилитрона и светодиода оптронной развязки.
Важным требованием к интерфейсу с линией является симметричность входа и его гальваническая развязка.
1.3.2 Интерфейс "модем-компьютер".В основе последовательного порта передачи данных компьютера лежит микросхема INTEL 8250 или ее современные аналоги - INTEL16450 , 16550 , 16550A . Эта микросхема является универсальным асинхронным приемопередатчиком ( UART - Universal Asynchronous Receiver Transmitter), обеспечивают скорость приема/передачи данных до 115200 бод (для современной микросхемы INTEL16550A). Микросхема содержит несколько внутренних регистров, доступных через команды ввода/вывода.
Микросхема 8250 содержит регистры передатчика и приемника данных. При передаче байта он записывается в буферный регистр передатчика, откуда затем переписывается в сдвиговый регистр передатчика. Байт "выдвигается" из сдвигового регистра по битам.
Программа имеет доступ только к буферным регистрам, копирование информации в сдвиговые регистры и процесс сдвига выполняется микросхемой UART автоматически.
К внешним устройствам асинхронный последовательный порт подключается через специальный разъем. Существует два стандарта на разъемы интерфейса RS-232C, это DB-25 (5 выводов) и DB-9 ( 9 выводов) (- см таб.3 приложения).
Интерфейс RS-232C определяет обмен между устройствами двух типов:
В большинстве случаев, но не всегда, компьютер является терминальным устройством. Модемы, принтеры, графопостроители всегда являются устройствами связи.
1.3.2.1 Сигналы интерфейса S-232C.
Входы TD и RD используются устройствами DTE и DCE по-разному. Устройство DTE использует вход TD для передачи данных, а вход RD для приема. И наоборот, устройство DCE использует вход TD для приема, а вход RD для передачи данных. Поэтому для соединения терминального устройства и устройства связи выводы их разъемов необходимо соединить напрямую.
Подтверждение связи. Рассмотрим процесс подтверждения связи между компьютером и модемом. В начале сеанса связи компьютер должен удостоверится, что модем может произвести вызов (находится в рабочем состоянии). Затем, после вызова абонента, модем должен сообщить компьютеру, что он произвел соединение с удаленной системой. Подробнее это происходит следующим образом.
Компьютер подает сигнал по линии DTR, чтобы показать модему, что он готов к проведению сеанса связи. В ответ модем подает сигнал по линии DSR. Когда модем произвел соединение с другим, удаленным модемом, он подает сигнал по линии DCD, чтобы сообщить об этом компьютеру.
Если напряжение на линии DTR падает, это сообщает модему, что компьютер не может далее продолжать сеанс связи, например из-за того, что выключено питание компьютера. В этом случае модем прервет связь. Если напряжение на линии DCD падает, это сообщает компьютеру, что модем потерял связь и не может больше продолжать соединение. В этом случае эти сигналы дают ответ на наличие связи между модемом и компьютером.
Существует более высокий уровень, который используется для управления скоростью обмена данными, но он также реализуется аппаратно. Практически управление скоростью обмена данными (управление потоком) необходимо, если производится передача больших объемов данных с высокой скоростью. Когда одна система пытается передать данные с большей скоростью, чем они могут быть обработаны принимающей системой, результатом может стать потеря части передаваемых данных. Чтобы предотвратить передачу большего числа данных, чем то, что может быть обработано, используют управление связью, называемое "управление потоком".
Стандарт RS-232C определяет возможность управления потоком только для полудуплексного соединения, при котором в каждый момент времени данные могут передаваться только в одну сторону.
Фактически этот механизм используется и для дуплексных соединений, когда данные передаются по линии связи одновременно в двух направлениях.
Управление потоком. В полудуплексных соединениях устройство DTE подает сигнал RTS, когда оно желает передать данные. DCE отвечает сигналом по линии CTS, когда оно готово, и DTE начинает передачу данных. До тех пор, пока оба сигнала RTS и CTS не примут активное состояние, только DCE может передавать данные.
При дуплексных соединениях сигналы RTS/CTS имеют значения противоположные тем, которые они имели для полудуплексных соединений.
Когда DTE может принять данные, он подает сигнал по линии RTS. Если при этом DCE готово для принятия данных, оно возвращает сигнал CTS. Если напряжение на линиях RTS и CTS падает, то это сообщает передающей системе, что получающая система не готова для приема данных.
Однако на практике не все так просто. Соединить компьютер и модем не составляет труда, т. к. интерфейс RS-232C как раз для этого и предназначен. Но если вы захотите связать вместе два компьютера при помощи такого же кабеля, который вы использовали для связи модема и компьютера, то у вас возникнут проблемы. Для соединения двух терминальных устройств - двух компьютеров - как минимум необходимо перекрестное соединение линий TR и RD. Однако часто этого недостаточно, т. к. для устройств DTE и DCE функции, выполняемые линиями DSR, DTR, DCD, CTS, RTS асимметричны.
Устройство DTE подает сигнал DTR и ожидает получения сигналов DSR и DCD. В свою очередь, устройство DCE подает сигналы DSR, DCD и ожидает получения сигнала DTR. Таким образом, если соединить вместе два устройства DTE кабелем, который вы использовали для соединения устройств DTE и DCE, то они не смогут договориться друг с другом.
Теперь перейдем к сигналам RTS и CTS, управления потоком данных. Иногда для соединения двух устройств DTE эти линии соединяют вместе на каждом конце кабеля. В результате получаем то, что другое устройство всегда готово для получения данных. Поэтому, если при большой скорости передачи принимающее устройство не успевает принимать и обрабатывать данные, возможна потеря данных.
Чтобы решить все эти проблемы для соединения двух устройств типа DTE используется специальный кабель, в обиходе называемый null-modem.
1.3.2.2. Технические параметры интерфейса RS-232C.
При передаче данных на большие расстояния без использования специальной аппаратуры из-за помех, наводимых электромагнитными полями, возможно возникновение ошибок. Вследствие этого накладываются ограничения на длину соединительного кабеля между устройствами DTR-DTR и DTR-DCE.
Официальное ограничение по длине для соединительного кабеля по стандарту RS-232C составляет 15,24 метра. Однако на практике это расстояние может быть значительно больше. Оно непосредственно зависит от скорости передачи данных.
Таблица 1.2: Зависимость скорости передачи данных от длины соединительного кабеля
Скорость (bod) |
Длина кабеля экранированного (м) |
Длина кабеля неэкранированного (м) |
110 |
1524 |
914,4 |
300 |
1524 |
914,4 |
1200 |
914,4 |
914,4 |
2400 |
304,8 |
152,4 |
4800 |
304,8 |
76,2 |
9600 |
76,2 |
76,2 |
Уровни напряжения на линиях разъема составляют для логического нуля -15. . -3 В, для логической единицы +3. . +15 В. Промежуток от -3 до +3 В соответствует неопределенному значению.
1.3.2.3 Программирование адаптера
Порты асинхронного адаптера. На этапе инициализации системы, модуль POST BIOS тестирует имеющиеся асинхронные порты RS-232C и инициализирует их. В зависимости от версии BIOS инициализируются первые два или четыре порта. Их базовые адреса располагаются в области данных BIOS начиная с адреса 0000:0400h.
Первый адаптер COM1 имеет базовый адрес 3F8h и занимает диапазон адресов от 3F8h до 3FFh. Второй адаптер COM2 имеет базовый адрес 2F8h и занимает адреса 2F8h. . 2FFh.
Асинхронные адаптеры могут вырабатывать прерывания:
COM1,COM3 - IRQ4
COM2,COM4 - IRQ3
Для управления портами используются 7 основных регистров:
1) Регистр данных расположен непосредственно по базовому адресу порта RS-232C и используется для обмена данными и для задания скорости обмена.
Для передачи данных в этот регистр необходимо записать передаваемый байт данных. После приема данных от внешнего устройства принятый байт можно прочитать из этого же регистра.
В зависимости от состояния старшего бита управляющего регистра (расположенного по адресу base_adr+3, где base_adr соответствует базовому адресу порта RS-232C) назначение этого регистра может изменяться. Если старший бит равен нулю, регистр используется для записи передаваемых данных. Если же старший бит равен единице, регистр используется для ввода значения младшего байта делителя частоты тактового генератора. Изменяя содержимое делителя, можно изменять скорость передачи данных.
Старший байт делителя записывается в регистр управления прерываниями по адресу base_adr+1.
Максимальная скорость обмена информацией, которую можно достичь при использовании асинхронного адаптера, достигает 115200 бод, что соответствует 14,4 Кбайт в секунду.
2) Регистр управления прерываниями используется либо для управления прерываниями от асинхронного адаптера, либо (после вывода в управляющий регистр байта с установленным в 1 старшим битом) для вывода значения старшего байта делителя частоты тактового генератора.
3) Регистр идентификации прерывания. Считывая его содержимое, программа может определить причину прерывания.
4) Управляющий регистр доступен по записи и чтению. Этот регистр управляет различными г характеристиками UART: скоростью передачи данных, контролем четности, передачей сигнала BREAK, длиной передаваемых слов (символов).
5) Регистр управления модемом управляет состоянием выходных линий DTR, RTS и линий, специфических для модемов - OUT1 и OUT2, а также запуском диагностики при соединенных вместе входе и выходе асинхронного адаптера.
6) Регистр состояния линии определяет причину ошибок, которые могут возникнуть при передаче данных между компьютером и микросхемой UART.
7) Регистр состояния модема определяет состояние управляющих сигналов, передаваемых модемом асинхронному порту компьютера.
1.3.2.4 Инициализация асинхронного адаптера
Первое, что должна сделать программа, работающая с асинхронным адаптером - установить формат и скорость передачи данных. После загрузки операционной системы для асинхронных адаптеров устанавливается скорость 2400 бод, не выполняется проверка на четность, используются один стоповый и восьмибитовая длина передаваемого символа. Можно изменить этот режим командой MS-DOS MODE.
Выполнив ввод из управляющего регистра, программа может получить текущий режим адаптера. Для установки нового режима измените нужные вам поля и запишите новый байт режима обратно в управляющий регистр.
Если вам надо задать новое значение скорости обмена данными, перед записью байта режима установите старший бит этого байта в 1, при этом регистр данных и управляющий регистр используются для задания скорости обмена. Затем последовательно двумя командами ввода загрузите делитель частоты тактового генератора. Младший байт запишите в регистр данных, а старший – в регистр управления прерываниями.
Перед началом работы необходимо также проинициализировать регистр управления прерываниями, даже если в вашей программе не используются прерывания от асинхронного адаптера. Для этого сначала надо перевести регистр данных и регистр управления прерываниями в обычный режим, записав ноль в старший бит управляющего регистра. Затем можно устанавливать регистр управления прерываниями. Если прерывания вам не нужны, запишите в этот порт нулевое значение.
1.4 Программирование модемов
После выпуска американской фирмой Hayes модемов серии Smartmodem, система команд, использованная в ней, стала неким стандартом, которого придерживаются остальные фирмы - разработчики модемов. Система команд, применяемая в этих модемах, носит название hayes-команд, или AT-команд (см. таб.1 приложения). При этом некоторые производители, например Motorola, дополняют hayes-команды рядом своих, подходящих лишь для модемов собственного производства.
Со времени выпуска первых AT-совместимых модемов набор их команд несколько расширился, но все основные команды остались без изменения.
Все команды, передаваемые компьютером модему, надо начинать префиксом AT (ATtention - внимание) и заканчивать символом возврата каретки ( <CR> ). Только команда А/ и Escape-последовательность "+++" не требуют для себя префикса AT. После префикса AT могут идти одна или сразу несколько команд. Для ясности эти команды могут быть отделены друг от друга символами пробела, тире, скобками. В большинстве случаев команды могут быть написаны как заглавными, так и строчными буквами.
При передаче модему команд они сначала заносятся во внутренний буфер, который, как правило, имеет размер 40 символов. Команды, записанные в буфер модема, исполняются после поступления символа возврата каретки. Вследствие ограниченности размера буфера не следует передавать модему слишком длинные команды (больше размера буфера). Длинные команды можно разбивать на части и передавать в несколько заходов. При этом каждая часть должна начинаться префиксом АТ и заканчиваться символом возврата каретки.
Если при наборе команды допущена ошибка, то ее можно исправить, используя клавишу BackSpace.
После выполнения каждой команды модем посылает обратно компьютеру ответ в виде числа или слова. Этот ответ означает, выполнена ли команда или произошла ошибка.
1.4.1 Основные принципы программирования модемов
Доступ к модему производится через последовательный асинхронный порт. При этом для передачи модему команд их необходимо просто записать в регистр данных COM-порта, на котором находится модем. Ответ от модема также поступает через последовательный порт. Передавая модему команды, его можно проинициализировать, перевести в режим автоответа или заставить набрать номер.
Когда модем наберет номер удаленного абонента или когда модему в режиме автоответа придет вызов, он попытается установить связь с удаленным модемом. После установления связи модем передает компьютеру через COM-порт специальное сообщение и переключится из командного режима в режим передачи данных. После этого данные, передаваемые модему, перестают восприниматься им как команды и сразу передаются по телефонной линии на удаленный модем.
Итак, после установления связи с удаленным модемом, коммуникационная программа может начинать обмен данными. Обмен данными так же, как и передача команд, осуществляется через COM-порт. Затем при помощи специальной Escape-последовательности можно переключить модем из режима передачи данных обратно в командный режим и положить трубку, разорвав связь с удаленным модемом.
1.4.2 Последовательность действий для установления связи
а) Инициализация COM-порта . Проводим инициализацию COM-порта, к которому подключен модем. Для этого программируем регистры микросхемы UART, задавая формат данных и скорость обмена. Заметим, что модем будет проводить соединение с удаленным модемом как раз на этой скорости. Чем скорость выше, тем быстрее будет происходить обмен данными с удаленным модемом.
Однако при увеличении скорости на плохих телефонных линиях сильно возрастает количество ошибок.
б) Инициализация модема . Передавая модему AT-команды через СОМ-порт, производим его инициализацию. При помощи АТ-команд можно установить различные режимы работы модема - выбрать протокол обмена, установить набор диагностических сообщений модема и т. д.
в) Соединение с удаленным модемом. Передаем модему команду набора номера (ATD). В этом случае модем набирает номер и пытается установить связь с удаленным модемом. Или передаем модему команду AT S0=1 для перевода его в режим автоответа. После этого модем ожидает звонка от удаленного модема, а когда он приходит, пытается установить с ним связь.
г) Ожидание ответа от модема. В зависимости от режима, в котором находится модем, он может передавать компьютеру различные сообщения. Например, если модем производит вызов удаленного модема (АТ-команда ATD), то модем может выдать следующие сообщения:
CONNECT - Успешное соединение
BUSY - Номер занят
NO DIALTONE - На линии отсутствует сигнал коммутатора
NO ANSWER - Абонент не отвечает
NO CARRIER - Неудачная попытка установить связь
Когда приходит звонок, модем передает компьютеру сообщение RING, если регистр модема S0 равен нулю. В этом случае для ответа на звонок надо послать модему команду АТА. Если модем находится в режиме автоответа и регистр модема S0 не равен нулю, то модем автоматически пытается ответить на звонок и может выдать следующие сообщения: CONNECT, NO DIALTONE, NO CARRIER
Если модем передал компьютеру сообщение CONNECT, значит он успешно произвел соединение и теперь работает в режиме передачи данных. Теперь все данные, передаваемые модему через СОМ-порт, будут преобразованы модемом в форму, пригодную для передачи по телефонным линиям, и переданы удаленному модему. И наоборот, данные, принятые модемом по телефонной линии, переводятся в цифровую форму и могут быть прочитаны через СОМ-порт, к которому подключен модем.
Если модем передал компьютеру сообщения BUSY, NO DIALTONE, NO ANSWER, NO CARRIER - значит произвести соединение с удаленным модемом не удалось и надо попытаться повторить соединение.
д) Подключение модема в командный режим. После окончания работы коммуникационная программа должна перевести модем в командный режим и передать ему команду положить трубку (ATH0). Для перевода модема в командный режим можно воспользоваться Escape-последовательностью "+++". После того как модем перешел в командный режим, можно опять передавать ему АТ-команды.
е) Сброс сигналов на линиях DTR и RTS. Низкий уровень сигналов DTR и RTS сообщает модему, что компьютер не готов к приему данных через COM-порт. При работе с асинхронным последовательным адаптером вы можете использовать механизм прерываний. Так как передача и прием данных модемом представляют собой длительный процесс, то применение прерываний от порта позволяет использовать процессорное время для других нужд.
Раздел 2: Основные понятия.
Модем - это преобразователь сигналов, который является промежуточным звеном между компьютером и соединительной линией. Название модема происходит от двух слов: "Модулятор" и "Демодулятор". Как модулятор модем преобразует цифровые сигналы импульсов постоянного тока, используемые в компьютерных системах, в аналоговые сигналы, содержащие ту же информацию. Этот процесс и называется модуляцией .
Модуляция и модемы необходимы потому, что сигналы телефонного канала связи не всегда представимы в цифровой форме. Процесс модуляции формирует аналоговые сигналы, в которых закодирована цифровая информация, порожденная компьютером, но которые можно передать через телефонные каналы.
Демодуляция представляет собой обратный процесс. Если посмотреть на образуемый сигнал с другой стороны - модем, как модулятор, получает аналоговые сигналы и преобразует их в начальную цифровую форму, содержащую переданную информацию.
Естественно, что для нормальной деятельности, работающие в паре модемы должны осуществлять операции модуляции/демодуляции одинаковым образом, иначе информация, передаваемая между ними, будет необратимо искажена.
referat.store
Реферат ученика 8 класса «Г» Павлова Михаила
Гимназия 1567
Москва, 2003 г.
Потребностьв обмене информацией появилась у людей в глубокой древности. С возникновениемписьменности информация на большие расстояния стала передаваться по почте. Какправило, сообщения передавались пешими и конными гонцами по принципу эстафеты.Появление паровоза и парохода, а в начале XX века – самолета значительноускорило пересылку почтовых отправлений. Изобретение телеграфа, телефона, радиои создание новых компьютерных средств коммуникации позволило к началу XXI векасовершить качественный скачек в развитии почты. Сегодня за считанные секундыможно передать информацию практически в любую точку мира.
Общаясхема передачи информации включает в себя отправителя, получателя и каналпередачи информации (рис. 1). Если производится двусторонний обмен информацией,то отправитель и получатель информации могут меняться ролями. Для передачиданных компьютеры используют каналы обмена, имеющие разную физическую природу:
электрическийкабель;
радиосвязь;
инфракрасныелучи;
оптоволоконныйкабель;
телефоннаясеть.
Существующиетелефонные линии не приспособлены для передачи цифровой информации. Приходитсясначала преобразовывать информацию из цифровой в аналоговую форму, затемпередавать её в таком виде по телефонной линии и на другом конце линиивыполнять обратное преобразование. Этим занимается модем, объединяющий в себедва логических устройства: модулятор, т.е. преобразователь из цифровой ваналоговую форму, и демодулятор — обратный преобразователь (рис. 2). Такимобразом, модем — устройство для передачи компьютерных данных на большиерасстояния по телефонным линиям связи.
Основнойхарактеристикой качества модема является скорость передачи информации, которуюон может обеспечить в телефонной линии. В настоящее время наибольшеераспространение имеют модемы, обеспечивающие скорость передачи информации 33,6Кбит/с и 56 Кбит/с. Правда, стабильная связь на такой скорости достижима оченьредко, особенно в России. В реальности она значительно ниже, т.к. зависит откачества телефонных проводов и возможности АТС.
Дляосуществления связи один модем вызывает другой по номеру телефона, а тототвечает на вызов. Затем два модема автоматически «договариваются» между собойо максимально возможной для обоих скорости передачи данных и выборекоммуникационного протокола. Коммуникационный протокол описывает способыпередачи байтов по телефонной линии, а также то, как байты объединяются впакеты, порядок переповтора передачи в случае искажения пакета и т. п… Послеэтого передающий модем начинает посылать модулированные сигналы с согласованнойскоростью и форматом. Модем на другом конце преобразует полученную информацию вчисловой вид и передает ее своему компьютеру. Закончив сеанс связи модемотключается от линии.
Промодем, передающий данные другому (удаленному) модему, говорят, что он работаетв режиме данных. Кроме режима данных модем может находиться в режиме команд.Команды используются для настройки и управления работой модема. Любая команданачинается с двух символов AT (от английского attention — «внимание») (рис. 3).
Модемыбывают внешние, выполненные в виде отдельного устройства, подключаемого кпоследовательному порту компьютера, и внутренние, представляющие собой электроннуюплату, устанавливаемую в один из слотов системной платы компьютера. Модем,который может передавать и получать данные как факс, называют факс-модемом.
Скоростьи надёжность передачи информации по модему невысоки и совершеннонеудовлетворительны для современных компьютерных систем. Тем не менее огромнымдостоинством модема является то, что он разрешает использовать уже существующиетелефонные линии, не дожидаясь создания инфраструктуры компьютерных сетей.Когда же появятся подобные сети, модем наконец займёт своё место в рядуустаревших и достаточно курьёзных технических устройств.
/> /> Рисунок 1. Общая схема передачи информации./>
Рисунок2. Схема реализации модемной связи.
ATZ- инициализация модема;
ATL3- максимальная громкость встроенного динамика;
ATS0=0- запрещено отвечать на входящие звонки;
ATS0=2- снять трубку после двух звонков;
ATDP1234567- набрать (Dial) телефонный номер 1234567 в импульсном
(Pulse)режиме набора;
ATI4- отобразить на экране текущее состояние
энергонезависимыхрегистров модема (S00 – S69).
Рисунок3. Примеры управления модемом с помощью AT — команд.
Список литературы
1.Энциклопедия для детей. Том 22. Информатика / Глав. ред. Е.А. Хлебалина, вед.науч. ред. А.Г. Леонов. – М.: Аванта+, 2003.
2.Информатика и информационные технологии. Учебник для 10 — 11 классов / Н.Д.Угринович. – М.: Лаборатория Базовых Знаний, 2002.
3.Информатика. Учеб. пособие для 10 – 11 кл. общеобразоват. учреждений / Л.З.Шауцукова. – 3-е изд. – М.: Просвещение, 2003.
www.ronl.ru
Модемы. I. Введение Очень часто в компьютерной литературе мы сталкиваемся с таким понятием, как модем. В мире существует огромное количество персональных компьютеров. Логично подумать и о быстром и удобном способе соединения между ними. Такой способ стал возможен благодаря модему. Он позволяет передавать информацию от одного компьютера к другому в закодированном виде через телефонную линию. Компьютеры обмениваются сигналами определённой частоты и громкости. Что же возможно благодаря модему? Можно связаться с другим пользователем модема, и обменяться с ним файлами, в независимости от его местоположения. Или сыграть с ним в компьютерную игру, поддерживающую модем. Если ваш модем - факс-модем, то можно обмениваться факсимильными сообщениями. Вы можете пользоваться услугами BBS - Bulletin Board System (Англ. - Электронная доска объявлений), получить и принимать файла, пообщаться с другими пользователями, и сыграть в on-line игры, т.е. в игры по модему в режиме реального времени. Вы можете подключиться к глобальным сетям. Например FidoNet, или Internet/Relcom. Подключившись к ним вы сможете стать участником множества телеконференций, что дает возможность обмениваться информацией с людьми вашего круга интересов. Если вы бизнесмен, то с помощью модема вы всегда будете в курсе последних событий и новостей. II. Как работает модем. Немного общих сведений -Так когда же придумали первую модемную плату? -В 80-х годах американская фирма Hayes наконец-то выпустила первый модем для компьютера IBM PC. Конечно же телефонные линии разрабатывались для передачи на расстояние только звуков человеческого голоса. Вообще говоря, естественные звуки характеризуются переменной высотой тона и непрерывно изменяющейся интенсивностью. Для передачи по телефонной они преобразовываются в электрический сигнал с непрерывно и соответственно изменяющейся частотой и силой тока. Такой сигнал называется аналоговым. Компьютер же в отличие от модема понимает только цифрой сигнал, т.е. ток только двух уровней. Каждый из них обозначает одно из двух понятных компьютеру значений - логические “0” и “1”. Чтобы передать цифровой сигнал по телефонной линии, ему нужно придать приемлемый для неё аналоговый вид. Именно этой работой занимается модем. Так же он выполняет обратную процедуру, т.е. переводит аналоговый сигнал в понятный компьютеру цифровой. Слово модем” - происходит от сокращения двух терминов: МОдулятор/ДЕМодулятор. Модем организует мостик между выдаваемым компьютером цифровым сигналом и аналоговым сигналом, который, как было сказано выше понимает телефонная линия. При передаче данных из компьютера в модем, первый выдает последовательность нулей и единиц, а последний преобразовывает их в аналоговый сигнал. Затем данные отсылаются в телефонную линию, и их принимает модем, стоящий на другом конце провода. Когда модем принимает данные, то он отфильтровывает полезную информацию от шумов в линии. Для этого существуют специальные протоколы коррекции ошибок. Самый продвинутый из них - MNP10. Кроме этого существуют MNP1, MNP2, MNP3, MNP4, MNP5, MNP7. В настоящее время более всего распространен MNP5, т.к. MNP7 и MNP10 устанавливаются на специальных модемах, которые работают по выделенным линиям. Например в глобальной сети Internet. После того, как модем отделил полезную информацию от шумов в линии он отбирает перекачиваемые данные от служебной информации. И уже прошедший такую многоступенчатую обработку перекачиваемый файл записывается на жесткий диск компьютера. Так происходит обмен данными при соединении на протоколе Zmodem, Sealink, Ymodem и многих других однонаправленных протоколах. Конечно, оба компьютер может одновременно принимать и отсылать данные. Потому что они используют определённые соглашения о частотах, различных для входных и выходных сигналов.. Для этого существуют специальные двунаправленные протоколы. Например Bimodem, Puma, Janus, Zedzap. MNP- протоколы MNP (Microsoft Network Protocols) - серия наиболее распространенных аппаратных протоколов, впервые реализованная на модемах фирмы Microsoft. Эти протоколы обеспечивают автоматическую коррекцию ошибок и компрессию передаваемых данных. Сейчас известны 10 протоколов: MNP1. Протокол коррекции ошибок, использующий асинхронный полудуплексный метод передачи данных. Это самый простой из протоколов MNP. MNP2. Протокол коррекции ошибок, использующий асинхронный дуплексный метод передачи данных. MNP3. Протокол коррекции ошибок, использующий синхронный дуплексный метод передачи данных между модемами (интерфейс модем - компьютер остается асинхронным). Так как при асинхронной передаче используется десять бит на байт - восемь бит данных, стартовый бит и стоповый бит, а при синхронной только восемь, то в этом кроется возможность ускорить обмен данными на 20%. MNP4. Протокол, использующий синхронный метод передачи, обеспечивает оптимизацию фазы данных, которая несколько улучшает неэффективность протоколов MNP2 и MNP3. Кроме того, при изменении числа ошибок на линии соответственно меняется и размер блоков передаваемых данных. При увеличении числа ошибок размер блоков уменьшается, увеличивая вероятность успешного прохождения отдельных блоков. Эффективность этого метода составляет около 20% по сравнению с простой передачей данных. MNP5. Дополнительно к методам MNP4, MNP5 часто использует простой метод сжатия передаваемой информации. Символы часто встречающиеся в передаваемом блоке кодируются цепочками битов меньшей длины, чем редко встречающиеся символы. Дополнительно кодируются длинные цепочки одинаковых символов. Обычно при этом текстовые файлы сжимаются до 35% своей исходной длины. Вместе с 20% MNP4 это дает повышение эффективности до 50%. Заметим, что если вы передаете уже сжатые файлы, а в большинстве это так и есть, дополнительного увеличения эффективности за счет сжатия данных модемом этого не происходит. MNP6. Дополнительно к методам протокола MNP5 протокол MNP6 автоматически переключается между дуплексным и полудуплексным методами передачи в зависимости от типа информации. Протокол MNP6 также обеспечивает совместимость с протоколом V.29. MNP7. По сравнению с ранними протоколами использует более эффективный метод сжатия данных. MNP9. Использует протокол V.32 и соответствующий метод работы, обеспечивающий совместимость с низкоскоростными модемами. MNP10. Предназначен для обеспечения связи на сильно зашумленных линиях, таких, как линии сотовой связи, междугородними линиями, сельские линии. Это достигается при помощи следующих методов: - многократного повторения попытки установить связь - изменения размера пакетов в соответствии с изменением уровня помех на линии - динамического изменения скорости передачи в соответствии с уровнем помех линии Все протоколы MNP совместимы между собой снизу вверх. При установлении связи происходит установка наивысшего возможного уровня MNP-протокола. Если же один из связывающихся модемов не поддерживает протокол MNP, то MNP-модем работает без MNP-протокола. Режимы MNP-модемов MNP-модем обеспечивает следующие режимы передачи данных: - Стандартный режим. Обеспечивает буферизацию данных, что позволяет работать с различными скоростями передачи данных между компьютером и модемом и между двумя модемами. В результате для повышения эффективности передачи данных вы можете установить скорость обмена компьютер-модем выше, чем модем-модем. В стандартном режиме работы модем не выполняет аппаратной коррекции ошибок. - Режим прямой передачи. Данный режим соответствует обычному модему, не поддерживающему MNP-протокол. Буферизация данных не производится и аппаратная коррекция ошибок не выполняется. - Режим с коррекцией ошибок и буферизацией. Это стандартный режим работы при связи двух MNP-модемов. Если удаленный модем не поддерживает протокол MNP, связь не устанавливается. - Режим с коррекцией ошибок и автоматической настройкой. Режим используется, когда заранее не известно, поддерживает ли удаленный модем протокол MNP. В начале сеанса связи после определения режима удаленного модема устанавливается один из трех других режимов. Внутренние и внешние модемы Модемы бывают внутренние и внешние(Существуют так же специальные типы модемов в виде PC- карт (PCMCIA), но они предназначены для компьютеров типа ноутбуков, и по этому они здесь не рассматриваются.). Внутренние модемы выполнены в виде платы расширения, вставляемый в специальный слот расширения на материнской плате компьютера. Внешний модем, в отличие от внутреннего, выполнен в виде отдельного устройства, т.е. в отдельном корпусе и со своим блоком питания, когда внутренний модем получает электричество от блока питания компьютера. Так какие же достоинства и недостатки у внешних и внутренних модемов? Внутренний модем Достоинства Все внутренние модели без исключения(в отличие от внешних) имеют встроенное FIFO. (First Input First Output - первым пришел, первым принят). FIFO это микросхема, обеспечивающая буферизацию данных. Обычный модем при прохождении байта данных через порт каждый раз запрашивает прерывания у компьютера. Компьютер по специальным IRQ(Interrupt Request) линиям прерывает на некоторое время работу модема, а потом опять возобновляет её. Это замедляет работу компьютера в целом. FIFO же позволяет использовать прерывания в несколько раз реже. Это имеет большое значение при работе в многозадачных средах. Таких как Windows95, OS/2, Windows NT, UNIX и других. При использовании внутреннего модема уменьшается количество проводов, натянутых в самых неожиданных местах. Так же внутренний модем не занимает драгоценное место на рабочем столе. Внутренние модемы являются последовательным портом компьютера и не занимают существующих портов компьютера. Внутренние модели модемов всегда дешевле внешних. Недостатки Занимают слот расширения на материнской плате компьютера. Это очень неудобно на мультимедийных машинах, на которых установлено большое количество дополнительных плат, а также на компьютерах, которые работают серверами в сетях. Нет индикаторных лампочек, которые при имении определённого навыка позволяют следить за процессами происходящими в модеме. Если модем завис, то восстановить работоспособность можно восстановить только клавишей перезагрузки компьютера “RESET”. Внешние модемы Достоинства Они не занимают слот расширения, и при необходимости их можно легко отключить и перенести на другой компьютер. На передней панели есть индикаторы, которые помогают понять, какую операцию сейчас производит модем. При зависании модема не нужно перезагружать компьютер, достаточно выключить и включить питание компьютера. Недостатки Необходима мультикарта со встроенным FIFO. Без FIFO модем конечно будет работать, но при этом будет падать скорость передачи данных. Внешний модем занимает драгоценное место на рабочем столе и ему требуются дополнительные провода для подключения. Это тоже создает некоторое неудобство. Он занимает последовательный порт компьютера. Внешний модем всегда дороже аналогичного внутреннего, т.к. включает корпус с индикаторными лампочками и блок питания. Роль индикаторных лампочек MR(Modem Ready) Показывает, что модем включен и готов к работе. TR(Terminal Ready) Этот индикатор горит, когда модем обнаруживает DTR(Data Terminal Ready), передаваемый коммуникационной программой. HS(High Speed) А этот индикатор загорается, когда модем работает с максимально возможной для него скоростью CD(Carrier Detect) Горит, когда модем обнаруживает несущую. Он должен гореть во время соединения модемов и на протяжении всего сеанса связи, пока один из модемов не “положит трубку” AA(Auto Answer) Показывает, что модем включен в режим автоответа, т.е. будет сам отвечать на все входящие звонки. Если модем обнаруживает Ring(Англ. - звонок), то этот индикатор мерцает. OH(Off Hook) Этот индикатор эквивалентен снятой трубке телефона. Он горит, когда модем занимает линию. RD(Receive Data) Мерцает при приеме компьютером данных. SD(Send Data) Этот индикатор мигает, когда компьютер посылает данные. Марки модемов На сегодняшний день фактическим стандартом является модем со скоростью соединения 14400 и протоколами передачи данных V32 и V32bis( и улучшенные например, HST и V32terbo). Ориентироваться сегодня стоит на этот стандарт. Но и он, как и всё в компьютерном мире неустойчиво, и постепенно отмирает. Конечно, лучше всего брать модем со скоростью соединения 28800 и протоколами передачи данных V34( и его подмножества V.Fast и V.Everything). Также есть улучшенная разновидность протокола V34+. Он позволяет вести прием/передачу на скоростях до 33600. Модемы некоторых фирм имеют специализированные протоколы для особых условий эксплуатации(Обычно на сильно зашумленных линиях. На них эти протоколы ведут себя безупречно. Но какой тогда разговор об нормальных “чистых” линиях? Такими протоколами являются HST, разработанный фирмой USRobotics®. Так же существуют два протокола разработанные Zyxel® . Это Zyx и ZyCell. Zyx это протокол с возможностью связи с аналогичными моделями на скоростях 16800 и 19200. А ZyCell - специальный протокол для спутниковой и сотовой связи. Единственным недостатком таких протоколов является то, что они связываются на фирменных протоколах только с аналогичными моделями.). Теперь можно рассмотреть некоторые марки модемов. GVC Эта фирма известна прежде всего тем, что производит недорогие, но достаточно надежные модели. Например модель GVC 14440 F1114HV - хорошо зарекомендовавшая в наших условиях модель. Она практически безошибочно ловит сигнал BUSY. Это факс-модем, и он имеет факс класса II. Так же в нем реализована подстройка уровня сигнала к качеству линии. Одним из его преимуществ является бесшумное герконовое реле. ZyXEL Пару лет назад это была одна из самых популярных и престижных моделей, но на сегодняшний день фирма сильно сдала свои позиции, в основном на фоне достижений USRobotics. Все разновидности модемов фирмы ZyXEL разбиты на серии. Серия 1496 - кроме стандартных протоколов V32 и V32bis, имеют собственные протоколы: Zyx и ZyCell. В этих моделях имеется голосовой режим (VOICE) для того, что бы посылать и принимать голосовые сообщения. Так же имеется режим определения номера (АОН - Автоматический определитель номера). Модели серии 1496 обладают адаптивным факсом, это означает что модем позволяет автоматически идентифицировать абонента и переключаться соответственно на факс, модем или голос. Так же модемы ZyXEL могут работать на выделенных четырехпроводных линиях, развивая при этом скорость передачи до 115200 бод. USRobotics Эта фирма выпускает несколько серий модемов: USR Sportster, USR Courier, USR WorldPort и другие. Модели WorldPort предназначены для портативных компьютеров. Из-за этого они не получили широкого распространения. Высокопроизводительная серия Courier по некоторым изложенным ниже причинам не получила в нашей стране большого распространения. Остается только серия Sportster. Модемы этой серии охватывают всю гамму скоростей от 14400 до 33600. Они бывают как внутренними, так и внешними и имеют множество модификаций, различающихся как программно, так и аппаратно. Довольно удобно, что модемы серии Sportster имеют возможность программно-аппаратного апгрейда до более дорогой и намного более функциональной серии Courier. После апгрейда обычный USR Sportster превращается в Courier. При этом он приобретает такое важное преимущество как встроенный протокол HST(High Speed Technology). В 1991 году четыре канадских программиста задумались: а почему это Sportster так похож на старый Courier? Когда же они разобрали несколько модемов, то поняли что Sportster и Courier отличаются только прошивкой, которая автодетектирует тип модема по хитрым перемычкам и NVRAM (Non Violatible Random Access Memory - энергонезависимая память модема) и для серии Sportster просто отключает HST и все остальные возможности Courier. III. Заключение На наших глазах происходит самый настоящий коммуникационный взрыв, вполне сравнимый по масштабам и последствиям с тем, что был вызван появлением первых персональных компьютеров. Простое и эффективное устройство - модем, объединяющее потенциал двух величайших изобретений человечества, телефона и персонального компьютера, даёт всем желающим доступ к невероятным объемам информации и наделяет скромный персональный компьютер поистине фантастическими возможностями. Всеобщая компьютерная грамотность, о которой мы мечтали ещё совсем недавно, теперь - более или менее свершившийся факт. Нет никакого сомнения в том, что телекоммуникационная грамотность нужна сейчас ничуть не меньше: без неё просто немыслимо поспеть за цивилизованным миром ни в бизнесе, ни в науке, ни в образовании, ни во многих других областях. Уже сейчас отсутствие модема сравнимо с отсутствием принтера - и то и другое в значительной мере лишает компьютер смысла. И не за горами то время, когда от одинокого компьютера будет не больше пользы, чем сейчас от микрокалькулятора. Использованная литература: Берлинер Э.М. и др.. Microsoft Windows 95. Microsoft Plus! Русская версия. Изд. ABF, Москва, 1996 Зельднер Г.А. и др.. Компьютер на связи! Факс-модем, модем, глобальные сети, Е-Мail, BBS. Изд. ABF, Москва, 1996 Кирсанов Д.. Факс-модем: от покупки и подключения до выхода в Интернет. Изд. “Символ-Плюс”, С.-Петербург, 1995
www.ronl.ru
Содержание
стр.
1.Введение 1
2.Последовательный асинхронный адаптер 1
2.1.Аппаратная реализация 2
2.2.Программирование адаптера 5
3.Типы модемов 8
4.Программирование модемов 9
5.Протоколы обмена данными 15
5.1.Коррекция ошибок 15
5.2.Передача файлов 17
6.Телекоммуникационные программы 20
7.Использование модемов 20
7.1.Электронная доска объявлений 20
7.2.Электронная почта 23
7.3.Факс-модемные платы 24
1.Введение
В последнее время модемы становятся неотъемлемой частью компьютера.Установив модем на свой компьютер, вы фактически открываете для себя новый мир.Ваш компьютер превращается из обособленного компьютера в звено глобальной сети.
Модем позволит вам, не выходя из дома, получить доступ к базам данных, которые могут быть удалены от вас на многие тысячи километров, разместить сообщение на BBS (электронной доске обьявлений), доступной другим пользователям, скопировать с той же BBS интересующие вас файлы, интегрировать домашний компьютер в сеть вашего офиса, при этом (не считая низкой скорости обмена данными) создается полное ощущение работы в сети офиса. Кроме того, воспользовавшись глобальными сетями (RelCom, FidoNet) можно принимать и посылать электронные письма не только внутри города, но фактически в любой конец земного шара. Глобальные сети дают возможность не только обмениваться почтой, но и участвовать во всевозможных конференциях, получать новости практически по любой интересующей вас тематике.
Существует три основных способа соединения компьютеров для обмена информацией:
— непосредственная связь, через асинхронный порт;
— связь с использованием модема;
— связь через локальные сети.
В реферате рассматривается первые два типа соединений — непосредственное и соединение через модем.
2.Последовательный асинхронный адаптер
Практически каждый компьютер оборудован хотя бы одним последовательным асинхронным адаптером. Обычно он представляет собой отдельную плату или же расположен прямо на материнской плате компьютера. Его полное название — RS-232-C. Каждый асинхронный адаптер обычно содержит несколько портов, через которые к компьютеру можно подключать внешние устройства. Каждому такому порту соответствует несколько регистров, через которые программа получает к нему доступ, и определенная линия IRQ (линия запроса прерывания) для сигнализации компьютеру об изменении состояния порта. Каждому порту присваивается логическое имя (COM1,COM2, и т.д.).
Интерфейс RS-232-C разработан ассоциацией электронной промышленности ( EIA ) как стандарт для соединения компьютеров и различных последовательных периферийных устройств.
Компьютер IBM PC поддерживает интерфейс RS-232-C не в полной мере; скорее разьем, обозначенный на корпусе компьютера как порт последовательной передачи данных, содержит некоторые из сигналов, входящих в интерфейс RS-232-C и имеющих соответствующие этому стандарту уровни напряжения.
В настоящее время порт последовательной передачи данных используется очень широко. Вот далеко не полный список применений:
— подключение мыши;
— подключение графопостроителей, сканеров, принтеров, дигитайзеров;
— связь двух компьютеров через порты последовательной передачи данных с использованием специального кабеля и таких программ, как FastWire II или Norton Commander;
— подключение модемов для передачи данных по телефонным линиям;
— подключение к сети персональных компьютеров;
Последовательная передача данных означает, что данные передаются по единственной линии. При этом биты байта данных передаются по очереди с использованием одного провода. Для синхронизации группе битов данных обычно предшествует специальный стартовый бит, после группы битов следуют бит проверки на четность и один или два стоповых бита. Иногда бит проверки на четность может отсутствовать.
Использование бита четности, стартовых и стоповых битов определяют формат передачи данных. Очевидно, что передатчик и приемник должны использовать один и тот же формат данных, иначе обмен не возможен.
Другая важная характеристика — скорость передачи данных. Она также должна быть одинаковой для передатчика и приемника.
Скорость передачи данных обычно измеряется в бодах ( по фамилии французского изобретателя телеграфного аппарата Emile Baudot — Э.Бодо). Боды определяют количество передаваемых битов в секунду. При этом учитываются и старт/стопные биты, а также бит четности.
2.1. Аппаратная реализация
Компьютер может быть оснащен одним или двумя портами последовательной передачи данных. Эти порты расположены либо на материнской плате, либо на отдельной плате, вставляемой в слоты расширения материнской платы.
Бывают также платы, содержащие четыре или восемь портов последовательной передачи данных. Их часто используют для подключения нескольких компьютеров или терминалов к одному, центральному компьютеру. Эти платы имеют название «мультипорт».
В основе последовательного порта передачи данных лежит микросхема INTEL 8250 или ее современные аналоги — INTEL 16450,16550,16550A. Эта микросхема является универсальным асинхронным приемопередатчиком ( UART — Universal Asynchronous
Receiver Transmitter). Микросхема содержит несколько внутренних регистров, доступных через команды ввода/вывода.
Микросхема 8250 содержит регистры передатчика и приемника данных. При передаче байта он записывается в буферный регистр передатчика, откуда затем переписывается в сдвиговый регистр передатчика. Байт «выдвигается» из сдвигового регистра по битам.
Программа имеет доступ только к буферным регистрам, копирование информации в сдвиговые регистры и процесс сдвига выполняется микросхемой UART автоматически.
К внешним устройствам асинхронный последовательный порт подключается через специальный разьем. Существует два стандарта на разьемы интерфейса RS-232-C, это DB-25 и DB-9. Первый имеет 25, а второй 9 выводов.
Разводка разъема DB25
Номер контакта Назначение контакта (со стороны компьютера) Вход или выход 1 2 3 4 5 6 7 8 9-19 20 21 22 23-25 Защитное заземление (Frame Ground,FG) Передаваемые данные (Transmitted Data,TD) Принимаемые данные (Received Data,RD) Запрос для передачи (Request to send,RTS) Сброс для передачи (Clear to Send,CTS) Готовность данных (Data Set Ready,DSR) Сигнальное заземление (Signal Ground,SG) Детектор принимаемого с линии сигнала (Data Carrier Detect,DCD) Не используются Готовность выходных данных (Data Terminal Ready,DTR) Не используется Индикатор вызова (Ring Indicator,RI) Не используются Разводка разъема DB9 — Выход Вход Выход Вход Вход — Вход Выход Вход Номер контакта Назначение контакта (со стороны компьютера) Вход или выход 1 2 3 4 5 6 7 8 9 Детектор принимаемого с линии сигнала (Data Carrier Detect,DCD) Принимаемые данные (Received Data,RD) Передаваемые данные (Transmitted Data,TD) Готовность выходных данных (Data Terminal Ready,DTR) Сигнальное заземление (Signal Ground,SG) Готовность данных (Data Set Ready,DSR) Запрос для передачи (Request to send,RTS) Сброс для передачи (Clear to Send,CTS) Индикатор вызова (Ring Indicator,RI) Вход Вход Выход Выход — Вход Выход Вход Вход Интерфейс RS-232-C определяет обмен между устройствами двух типов: DTE (Data Terminal Equipment — терминальное устройство) и DCE (Data Communication Equipment — устройство связи). В большинстве случаев, но не всегда, компьютер является терминальным устройством. Модемы, принтеры, графопостроители всегда являются устройствами связи.Сигналы интерфейса RS-232-C
Входы TD и RD используются устройствами DTE и DCE по-разному. Устройство DTE использует вход TD для передачи данных, а вход RD для приема данных. И наоборот, устройство DCE использует вход TD для приема, а вход RD для передачи данных. Поэтому для соединения терминального устройства и устройства связи выводы их разъемов необходимо соединить напрямую.
Подтверждение связи
Рассмотрим процесс подтверждения связи между компьютером и модемом. В начале сеанса связи компьютер должен удостоверится, что модем может произвести вызов (находится в рабочем состоянии). Затем, после вызова абонента, модем должен сообщить компьютеру, что он произвел соединение с удаленной системой. Подробнее это происходит следующим образом.
Компьютер подает сигнал по линии DTR, чтобы показать модему, что он готов к проведению сеанса связи. В ответ модем подает сигнал по линии DSR. Когда модем произвел соединение с другим, удаленным модемом, он подает сигнал по линии DCD, чтобы сообщить об этом компьютеру.
Если напряжение на линии DTR падает, это сообщает модему, что компьютер не может далее продолжать сеанс связи, например из-за того, что выключено питание компьютера. В этом случае модем прервет связь. Если напряжение на линии DCD падает, это сообщает компьютеру, что модем потерял связь и не может больше продолжать соединение. В этом случае эти сигналы дают ответ на наличие связи между модемом и компьютером.
Существует более высокий уровень, который используется для управления скоростью обмена данными, но он также реализуется аппаратно. Практически управление скоростью обмена данными (управление потоком) необходимо, если производится передача больших обьемов данных с высокой скоростью. Когда одна система пытается передать данные с большей скоростью, чем они могут быть обработаны принимающей системой, результатом может стать потеря части передаваемых данных. Чтобы предотвратить передачу большего числа данных, чем то, которое может быть обработано, используют управление связью, называемое «управление потоком».
Стандарт RS-232-C определяет возможность управления потоком только для полудуплексного соединения, при котором в каждый момент времени данные могут передаваться только в одну сторону.
Фактически этот механизм используется и для дуплексных соединений, когда данные передаются по линии связи одновременно в двух направлениях.
Управление потоком
В полудуплексных соединениях устройство DTE подает сигнал RTS, когда оно желает передать данные. DCE отвечает сигналом по линии CTS, когда оно готово, и DTE начинает передачу данных. До тех пор, пока оба сигнала RTS и CTS не примут активное состояние, только DCE может передавать данные.
При дуплексных соединениях сигналы RTS/CTS имеют значения противоположные тем, которые они имели для полудуплексных соединений.
Когда DTE может принять данные, он подает сигнал по линии RTS. Если при этом DCE готово для принятия данных, оно возвращает сигнал CTS. Если напряжение на линиях RTS и CTS падает, то это сообщает передающей системе, что получающая система не готова для приема данных.
Однако на практике не все так просто. Соединить компьютер и модем не составляет труда, т.к. интерфейс RS-232-C как раз для этого и предназначен. Но если вы захотите связать вместе два компьютера при помощи такого же кабеля, который вы использовали для связи модема и компьютера, то у вас возникнут проблемы. Для соединения двух терминальных устройств — двух компьютеров — как минимум необходимо перекрестное соединение линий TR и RD. Однако часто этого недостаточно, т.к. для устройств DTE и DCE функции, выполняемые линиями DSR, DTR, DCD, CTS, RTS асимметричны.
Устройство DTE подает сигнал DTR и ожидает получения сигналов DSR и DCD. В свою очередь, устройство DCE подает сигналы DSR, DCD и ожидает получения сигнала DTR. Таким образом, если соединить вместе два устройства DTE кабелем, который вы использовали для соединения устройств DTE и DCE, то они не смогут договориться друг с другом.
Теперь перейдем к сигналам RTS и CTS, управления потоком данных. иногда для соединения двух устройств DTE эти линии соединяют вместе на каждом конце кабеля. В результате получаем то, что другое устройство всегда готово для получения данных. Поэтому, если при большой скорости передачи принимающее устройство не успевает принимать и обрабатывать данные, возможна потеря данных.
Чтобы решить все эти проблемы для соединения двух устройств типа DTE используется специальный кабель, в обиходе называемый нуль-модемом.
Технические параметры интерфейса RS-232-C
При передаче данных на большие расстояния без использования специальной аппаратуры из-за помех, наводимых электромагнитными полями, возможно возникновение ошибок. Вследствие этого накладываются ограничения на длину соединительного кабеля между устройствами DTR-DTR и DTR-DCE.
Официальное ограничение по длине для соединительного кабеля по стандарту RS-232-C составляет 15,24 метра. Однако на практике это расстояние может быть значительно больше. Оно непосредственно зависит от скорости передачи данных.
110бод — 1524м / 914,4м
300бод — 1524м / 914,4м 1200бод — 914,4м / 914,4м 2400бод — 304,8м / 152,4м 4800бод — 304,8м / 76,2м 9600бод — 76,2м / 76,2м
Первое значение — скорость передачи в бодах, второе — максимальная длина для экранированного кабеля, третье — максимальная длина для неэкранированного кабеля.
Уровни напряжения на линиях разьема составляют для логического нуля -15..-3 вольта, для логической единицы +3..+15 вольт. Промежуток от -3 до +3 вольт соответствует неопределенному значению.
2.2. Программирование адаптера
Порты асинхронного адаптера
На этапе инициализации системы, модуль POST BIOS тестирует имеющиеся асинхронные порты RS-232-C и инициализирует их. В зависимости от версии BIOS инициализируются первые два или четыре порта. Их базовые адреса располагаются в области данных BIOS начиная с адреса 0000:0400h.
Первый адаптер COM1 имеет базовый адрес 3F8h и занимает диапазон адресов от 3F8h до 3FFh. Второй адаптер COM2 имеет базовый адрес 2F8h и занимает адреса 2F8h..2FFh.
Асинхронные адаптеры могут вырабатывать прерывания:
COM1,COM3 — IRQ4
COM2,COM4 — IRQ3
Имеется 7 основных регистров для управления портами:
а) Регистр данных
Регистр данных расположен непосредственно по базовому адресу порта RS-232-C и используется для обмена данными и для задания скорости обмена.
Для передачи данных в этот регистр необходимо записать передаваемый байт данных. После приема данных от внешнего устройства принятый байт можно прочитать из этого же регистра.
В зависимости от состояния старшего бита управляющего регистра ( расположенного по адресу base_adr+3, где base_adr соответствует базовому адресу порта RS-232-C) назначение этого регистра может изменяться. Если старший бит равен нулю, регистр используется для записи передаваемых данных. Если же старший бит равен единице, регистр используется для ввода значения младшего байта делителя частоты тактового генератора. Изменяя содержимое делителя, можно изменять скорость передачи данных. Старший байт делителя записывается в регистр управления прерываниями по адресу base_adr+1.
Максимальная скорость обмена информацией, которую можно достичь при использовании асинхронного адаптера, достигает 115200 бод, что примерно соответствует 14 Кбайт в секунду.
б) Регистр управления прерываниями
Этот регистр используется либо для управления прерываниями от асинхронного адаптера, либо (после вывода в управляющий регистр байта с установленным в 1 старшим битом) для вывода значения старшего байта делителя частоты тактового генератора.
в) Регистр идентификации прерывания
Считывая его содержимое, программа может определить причину прерывания
г) Управляющий регистр
Управляющий регистр доступен по записи и чтению. Этот регистр управляет различными характеристиками UART: скоростью передачи данных, контролем четности, передачей сигнала BREAK, длиной передаваемых слов(символов).
д) Регистр управления модемом
Регистр управления модемом управляет состоянием выходных линий DTR, RTS и линий, специфических для модемов — OUT1 и OUT2, а также запуском диагностики при соединенных вместе входе и выходе асинхронного адаптера.
е) Регистр состояния линии
Регистр состояния линии определяет причину ошибок, которые могут возникнуть при передаче данных между компьютером и микросхемой UART.
ж) Регистр состояния модема
Регистр состояния модема определяет состояние управляющих сигналов, передаваемых модемом асинхронному порту компьютера.
Инициализация асинхронного адаптера
Первое, что должна сделать программа, работающая с асинхронным адаптером — установить формат и скорость передачи данных. После загрузки операционной системы для асинхронных адаптеров устанавливается скорость 2400 бод, не выполняется проверка на четность, используются один стоповый и восьмибитовая длина передаваемого символа. Можно изменить этот режим командой MS-DOS MODE.
Выполнив ввод из управляющего регистра, программа может получить текущий режим адаптера. Для установки нового режима измените нужные вам поля и запишите новый байт режима обратно в управляющий регистр.
Если вам надо задать новое значение скорости обмена данными, перед записью байта режима установите старший бит этого байта в 1, при этом регистр данных и управляющий регистр используются для задания скорости обмена. Затем последовательно двумя командами ввода загрузите делитель частоты тактового генератора. Младший байт запишите в регистр данных, а старший — в регистр управления прерываниями.
Перед началом работы необходимо также проинициализировать регистр управления прерываниями, даже если в вашей программе не используются прерывания от асинхронного адаптера. Для этого сначала надо перевести регистр данных и регистр управления прерываниями в обычный режим, записав ноль в старший бит управляющего регистра. Затем можно устанавливать регистр управления прерываниями. Если прерывания вам не нужны, запишите в этот порт нулевое значение.
Современные микросхемы UART
Фактически микросхема UART 8250 в ее исходном виде использовалась только в старых моделях компьютеров IBM PC. Современные микросхемы — UART 16450, 16550, 16550A изготовленные по новой технологии, позволяют достичь более высокой скорости обмена данными, а также обладают новыми аппаратными возможностями.
Основные возможности различных микросхем UART:
— 8250 (8250-B): Использовался на первых моделях IBM PC
— 16450 (8250-A): Эта микросхема имеет большую производительность по сравнению с 8250. Фактически это 8250, но изготовленный с использованием новой технологии. Микросхема дополнена регистром расширения (scratch register). Устранены ошибки в регистре разрешения прерываний и добавлена возможность перевода линии OUT2 в высокоимпедансное состояние во время проведения тестов, когда выход данных замкнут на вход.
— 16550: Фактически соответствует 16450. Добавлена возможность внутренней буферизации передаваемых и принимаемых данных. Буфера выполнены по схеме FIFO (First In First OUT — первый вошел, первым вышел) или, другими словами в виде очереди.При использовании буферизации возможно заметно уменьшить число прерываний, вырабатываемых асинхронным портом. Однако из-за ошибки в микросхеме эту возможность лучше не использовать
— можно потерять отдельные символы. В общем случае микросхема 16550 более быстрая, чем 16450. Дополнительно 16550 дает возможность использовать несколько каналов прямого доступа ( DMA channels).
— 16550A (16550AN) Соответствует 16550, исправлены ошибки реализации FIFO. Эта микросхема дает возможность использования программисту нескольких каналов прямого доступа. 16550А, как правило, используется в компьютерах с процессорами 80386/486 и в компьютерах с RISC-архитектурой. Если вы хотите работать на скоростях больших, чем 9600 бод, желательно использовать именно эту микросхему.
3.Типы модемов
В настоящее время выпускается огромное количество всевозможных модемов, начиная от простейших, обеспечивающих скорость передачи около 300 бит/сек, до сложных факс-модемных плат, позволяющих вам послать с вашего компьютера факс или звуковое письмо в любую точку мира.
В реферате будет рассказано только о так называемых hayes-совместимых модемов. Эти модемы поддерживают разработанный фирмой Hayes набор АТ-команд управления модемами. В настоящее время такие модемы широко используются во всем мире для связи персональных компьютеров IBM PC/XT/AT, PS/2 через телефонные линии.
Аппаратно модемы выполнены либо как отдельная плата, вставляемая в слот на материнской плате компьютера, либо в виде отдельного корпуса с блоком питания, который подключается к последовательному асинхронному порту компьютера. Первый из низ называется внутренним модемом, а второй — внешним.
Типичный модем содержит следующие компоненты: специализированный микропроцессор, управляющий работой модема, оперативную память, хранящую значения регистров модема и буферизующие входную/выходную информацию, постоянную память, динамик, позволяющий выполнять звуковой контроль связи, а также другие вспомогательные элементы ( трансформатор, резисторы, конденсаторы, разьемы). Если у вас достаточно современный модем, то он скорее всего дополнительно содержит электрически перепрограммируемую постоянную память, в которой может быть сохранена конфигурация модема даже при выключении питания.
Чтобы модемы могли обмениваться друг с другом информацией, надо, чтобы они использовали одинаковые способы передачи данных по телефонным линиям. Для разработки стандартов передачи данных был создан специальный международный консультативный комитет по телеграфии и телефонии (CCITT) и приняты следующие рекомендации:
CCITT V.21 — 300 bps. Модем, регламентированный данной рекомендацией, предназначен для передачи данных по выделенным и коммутируемым линиям.
Он работает в асинхронном дуплексном режиме. Для передачи и приема данных используется способ частотной модуляции.
CCITT V.22 — 1200 bps. Модем, работающий в соответствии с данной рекомендацией, использует асинхронно-синхронный дуплексный режим передачи. Асинхронно-синхронный режим означает, что компьютер передает модему данные в асинхронном режиме. Модем удаляет из потока данных компьютера стартовые и стоповые биты. И уже в синхронном виде передает их удаленному компьютеру. Для модуляции передаваемого сигнала применяется метод дифференциальной фазовой модуляции.
CCITT V.22bis — 2400 bps. Дуплексный модем, со скоростью передачи данных 2400 bps. При передаче со скоростью 2400 bps используется метод квадратурной модуляции, а при скорости 1200
— метод дифференциальной фазовой модуляции. На скорости 1200 bps модем CCITT V.22bis совместим с CCITT V.22.
CCITT V.23 — 600/1200 bps. Асинхронный модем, использующий метод частотной модуляции. Модем может работать в дуплексном режиме со скоростью передачи данных по прямому каналу — 600/1200 bps, а по обратной — только 75 bps. Этот стандарт не совместим с CCITT V.21, V.22, V.22bis.
Bell 103 — 300 bps, Bell 212A — 1200 bps.
Bell — это американский стандарт, не совместимый со стандартами CCITT.
4. Программирование модемов
После выпуска американской фирмой Hayes модемов серии Smartmodem, система команд, использованная в ней, стала неким стандартом, которого придерживаются остальные фирмы — разработчики модемов. Система команд, применяемая в этих модемах, носит название hayes-команд, или AT-команд.
Со времени выпуска первых AT-совместимых модемов набор их команд несколько расширился, но все основные команды остались без изменения.
Все команды, передаваемые компьютером модему, надо начинать префиксом AT (ATtention — внимание) и заканчивать символом возврата каретки ( ). Только команда А/ и Escape-последовательность "+++" не требуют для себя префикса AT.
После префикса AT могут идти одна или сразу несколько команд. Для ясности эти команды могут быть отделены друг от друга символами пробела, тире, скобками. В большинстве случаев команды могут быть написаны как заглавными, так и строчными буквами.
При передаче модему команд они сначала заносятся во внутренний буфер, который, как правило, имеет размер 40 символов. Команды, записанные в буфер модема, исполняются после поступления символа возврата каретки. Вследствие ограниченности размера буфера не следует передавать модему слишком длинные команды ( больше размера буфера). Длинные команды можно разбивать на части и передавать в несколько заходов. При этом каждая часть должна начинаться префиксом АТ и заканчиваться символом возврата каретки.
Если вы допустили ошибку при наборе команды, то ее можно исправить, используя клавишу BackSpace.
После выполнения каждой команды модем посылает обратно компьютеру ответ в виде числа или слова. Этот ответ означает, выполнена ли команда или произошла ошибка.
Если у вас внешний модем, то на его лицевой панели находится восемь световых индикаторов. Хотя их расположение на различных моделях может меняться, их обозначения являются стандартными:
MR Modem Ready — Модем готов к обмену данными. Если этот индикатор не горит, то надо проверить линию питания модема.
TR Terminal Ready — Компьютер готов к обмену данными с модемом. Этот индикатор горит, когда модем получил от компьютера сигнал DTR.
CD Carrier Detect — Индикатор зажигается, когда модем обнаружил несущую частоту на линии. Индикатор должен гореть на протяжении всего сеанса связи и гаснуть, когда один из модемов освободит линию.
SD Send Data — Индикатор мигает, когда модем получает данные от компьютера.
RD Receave Data — Индикатор мигает, когда модем передает данные к компьютеру
HS High Speed — Модем работает на максимально возможной для него скорости.
AA Auto Answer — Модем находится в режиме автоответа. То есть модем автоматически будет отвечать на приходящие звонки. Когда модем обнаружит звонок на телефонной линии, этот индикатор замигает.
OH Off-Hook — Этот индикатор горит, когда модем снял трубку ( занимает линию).
Основные команды модема
AT — Начало (префикс) командной строки. После получения этой команды модем автоматически подстраивает скорость передачи и формат данных к параметрам компьютера.
A — Автоответ. Если режим автоматического ответа выключен (S0=0), команда используется для ответа на звонок от удаленного модема. Команда заставляет модем снять трубку ( подключиться к линии ) и установить связь с удаленным модемом.
A/ — Модем повторяет последнюю введенную команду. Команда передается на модем без префикса AT и исполняется модемом немедленно, не ожидая прихода символа возврата каретки. Если вы передадите модему строку AT A/, то модем укажет на ошибку и вернет слово ERROR.
Bn — Команда производит выбор стандарта, согласно которому будет происходить обмен данными между модемами. При скорости передачи 300 бит/с происходит выбор между стандартами BELL 103 и CCITT V.21, при скорости 1200 bps — между BELL 212A и CCITT
V.22bis. При скорости 2400 bps эта команда игнорируется и используется стандарт CCITT V.22. Если n=0, устанавливаются стандарты CCITT V.21/V.22, а если n=1 — стандарты BELL 103/212A.
Ds — Команда используется для набора номера. После получения этой команды модем начинает набор номера и при установлении связи переходит в режим передачи данных. Команда состоит из префикса AT, символа D и телефонного номера, в состав которого могут входить следующие управляющие модификаторы: P или T. Эти модификаторы производят выбор между импульсной и тоновой системой набора ( в нашей стране используется импульсная система).
, — Символ запятой вызывает паузу при наборе номера. Длительность паузы определяется содержимым регистра S8.
; — Символ точки с запятой, если он находится в конце командной строки, переводит модем после набора номера в командный режим.
@ — Модем ожидает пятисекундной тишины на линии в течение заданного промежутка времени. Промежуток времени, в течение которого модем ожидает тишины, задается в регистре S7. Если в течение этого времени паузы тишины не было, модем отключается и отвечает NO ANSWER.
! — Если знак! стоит перед знаками последовательности набора, модем переходит в состояние ON HOOK (кладет трубку) на 1/2 секунды, а затем снова переходит в состояние OFF HOOK ( снимает трубку).
S — Модем набирает телефонный номер, записанный в его памяти. Эта команда выполняется только для модемов, имеющих встроенную энергонезависимую память и возможность записи в нее номеров телефонов.
R — После набора номера переводит модем в режим автоответа. Этот модификатор должен находиться в конце набираемого номера.
W — Перед дальнейшим набором телефонного номера модем ожидает длинный гудок из линии. Причем время ожидания гудка содержится в регистре S7. Если в отведенное время гудок не появился, модем прекращает набор номера и возвращает сообщение NO DIALTONE. Этот параметр может быть полезен при наборе междугородних номеров.
En — Управление эхо-выводом команд, передаваемых модему. После команды Е1 модем возвращает каждый знак, передаваемый ему, обратно компьютеру, что позволяет узнать, как работает связь модема и компьютера. Команда Е0 запрещает эхо-вывод.
Fn — Переключение между дуплексным/полудуплексным режимами. При n=0 переход в полудуплексный режим, а при n=1 — в дуплексный.
Hn — Эта команда используется для управления телефонной линией. Если n=0, то происходит отключение модема от линии, если n=1, модем подключается к линии.
In — Выдает идентификационный код модема и контрольную сумму содержимого памяти модема. Если n=0, модем сообщает свой идентификационный код, если n=1, модем проводит подсчет контрольной суммы EPROM и передает ее компьютеру, n=2 — модем проверяет состояние внутренней памяти ROM и возвращает сообщение OK или CHECKSUM ERROR (ошибка контрольной суммы). При n=3 выдается состояние модема.
Ln — Установка громкости сигнала внутреннего динамика: n=0,1 соответствует низкой громкости, n=2 — средней и n=3 — максимальной.
Mn — Управление внутренним динамиком. При n=0 динамик выключен. При n=1 динамик включен только во время набора номера и выключен после обнаружения несущей. При n=2 динамик включен все время. При n=3 динамик включается после набора последней цифры номера и выключается после обнаружения несущей отвечающего модема.
Qn — Управление ответом модема на AT-команды. При n=0 ответ разрешен, при n=1 ответ запрещен. Независимо от состояния Q0 или Q1 модем всегда сообщает содержание S-регистров, свой идентификационный код, контрольную сумму памяти и результаты теста.
On — Команда переводит модем из командного режима в режим передачи данных. При этом модем отвечает CONNECT. Команда О и О0 переводят модем в режим передачи данных без инициирования последовательности сигналов проверки линии связи. Команда О1 переводит модем в режим передачи данных и заставляет модем передать последовательности сигналов проверки линии связи, т.е. производить повторное квитирование с удаленным модемом.
Sr? — Чтение содержимого регистра модема, имеющего номер r.
Sr=n — Запись в регистр модема с номером r числа n. Число n может иметь значения от 0 до 255. Все команды модифицируют содержимое одного или более S-регистров. Некоторые S-регистры содержат временные параметры, которые можно поменять только командой S.
Vn — Производит выбор вида ответа модема на AT-команды. При n=0 ответ происходит цифровым кодом, а при n=1 модем отвечает в символьном виде на английском языке. Использование цифровой формы ответа облегчает обработку результатов выполнения команды при написании собственных программ управления модемом.
Стандартный набор ответов модема
OK 0 Модем выполнил команду без ошибок
CONNECT 1 Модем установил связь со скоростью 300 bps
RING 2 Модем обнаружил сигнал звонка
NO CARRIER 3 Модем потерял несущую частоту
ERROR 4 Ошибка в командной строке
CONNECT 1200 5 Модем установил связь со скоростью 1200 bps
NO DIALTONE 6 Отсутствие сигнала станции при снятии трубки
BUSY 7 Модем обнаружил сигнал «занято»
NO ANSWER 8 Нет ответа после ожидания сигнала
CONNECT 600 9 Модем установил связь со скоростью 600 bps
CONNECT 2400 10 Модем установил связь со скоростью 2400 bps
Yn — Способ отключения модема от линии. Существуют два способа отключения модема от линии: стандартный, когда модем получает неактивный сигнал DTR от компьютера, и принудительный, когда модем получает от удаленного модема сигнал перерыва BREAK. Команда ATH0 направляет удаленному модему сигнал прерыва BREAK, который длится 4с. При n=0 модем отключается стандартно, при n=1 модем отключается после получения из линии сигнала BREAK.
Z — Сбрасывает конфигурацию модема. При этом во все регистры загружаются значения, принятые по умолчанию. Значения регистров, принятые по умолчанию берутся из энергонезависимой памяти модема или, если модем такой памяти не имеет, из постоянной памяти или определяется исходя из переключателей на плате модема.
+++ — Escape-последовательность, используемая для перехода в командный режим работы модема. Благодаря этой команде можно перейти из режима передачи данных модемом в командный режим работы без разрыва связи. Модем требует тишины перед и после направления этой Escape-последовательности. Величина этого промежутка тишины определена в регистре S12.
&Cn — Данная команда управляет сигналом DCD порта RS-232-C. При n=0 сигнал DCD всегда активен, а при n=1 сигнал DCD устанавливается только тогда, когда модем обнаруживает несущую частоту от удаленного модема.
&Dn — Управление сигналом DTR. При n=0 модем игнорирует DTR, n=1 — при потере сигнала DTR модем переходит в командный режим работы, n=2 — при потере сигнала DTR модем прекращает связь, отключается от линии, отключает режим автоответа и переходит в командный режим работы, n=3 — при потере сигнала DTR автоматически сбрасывается конфигурация модема, как при выполнении команды ATZ. Модем обнаруживает потерю сигнала DTR, если сигнал DTR отсутствует дольше времени, определенного в регистре модема S25.
&F — модем устанавливает конфигурацию, записанную в постоянную память.
&Gn — Включение/выключение защитной частоты. n=0 — защитная частота выключена, n=1 — модем генерирует защитную частоту 550 Hz, n=2 — модем генерирует защитную частоту 1800 Hz. Использование данной команды зависит от особенностей телефонной линии.
&Ln — Вид линии связи. При n=0 передача по обычным (коммутируемым) линиям связи, n=1 передача по выделенным каналам.
&Mn — Установка асинхронно/синхронного режима работы. При n=0 устанавливается асинхронный режим, при n=1,2,3 устанавливается синхронный режим.
&Pn — Установка импульсного коэффициента набора номера в соответствии с различными стандартами. При n=0 — коэффициент заполнения замыкание/интервал 39/61 (Америка), при n=1 — 33/67 (Англия).
&Rn — Управление сигналом CTS: n=0 — сигнал переходит в активное состояние после получения сигнала RTS. Данные, передаваемые модему до поступления сигнала RTS, игнорируются. Если n=1 модем игнорирует RTS.
&Sn — Управление сигналом DSR порта RS-232-C. При n=0 сигнал DSR активен всегда, а при n=1 сигнал DSR активизируется только после окончания этапа установления связи между модемами.
&Tn — Тестирование модема. От n зависит вид теста.
&V — Модем показывает свою текущую конфигурацию и телефонные номера, записанные в энергонезависимой памяти.
&W — Модем записывает свою текущую конфигурацию в энергонезависимую память. При сбросе модема будет загружена именно эта конфигурация.
&Zn — Используется для записи телефонного номера в энергонезависимую память модема. Количество телефонов зависит от модели модема.
Основные принципы программирования модемов
Доступ к модему происходит через последовательный асинхронный порт. При этом для передачи модему команд их необходимо просто записать в регистр данных COM-порта, на котором находится модем. Ответ от модема также поступает через последовательный порт.Передавая модему команды, его можно проинициализировать, перевести в режим автоответа или заставить набрать номер.
Когда модем наберет номер удаленного абонента или когда модему в режиме автоответа придет вызов, он попытается установить связь с удаленным модемом. После установления связи модем передает компьютеру через COM-порт специальное сообщение и переключится из командного режима в режим передачи данных. После этого данные, передаваемые модему, перестают восприниматься им как команды и сразу передаются по телефонной линии на удаленный модем.
Итак, после установления связи с удаленным модемом, коммуникационная программа может начинать обмен данными. Обмен данными так же, как и передача команд, осуществляется через COM-порт. Затем при помощи специальной Escape-последовательности можно переключить модем из режима передачи данных обратно в командный режим и положить трубку, разорвав связь с удаленным модемом.
Последовательность действий для установления связи
а)Инициализация COM-порта
Проводим инициализацию COM-порта, к которому подключен модем. Для этого программируем регистры микросхемы UART, задавая формат данных и скорость обмена. Заметим, что модем будет проводить соединение с удаленным модемом как раз на этой скорости. Чем скорость выше, тем быстрее будет происходить обмен данными с удаленным модемом.
Однако при увеличении скорости на плохих телефонных линиях сильно возрастает количество ошибок.
б)Инициализация модема
Передавая модему AT-команды через СОМ-порт, производим его инициализацию. При помощи АТ-команд можно установить различные режимы работы модема — выбрать протокол обмена, установить набор диагностических сообщений модема и т.д.
в)Соединение с удаленным модемом
Передаем модему команду набора номера (ATD). В этом случае модем набирает номер и пытается установить связь с удаленным модемом. Или передаем модему команду AT S0=1 для перевода его в режим автоответа. После этого модем ожидает звонка от удаленного модема, а когда он приходит, пытается установить с ним связь.
г)Ожидаем ответ от модема
В зависимости от режима, в котором находится модем, он может передавать компьютеру различные сообщения. Например, если модем производит вызов удаленного модема (АТ-команда ATD), то модем может выдать следующие сообщения:
CONNECT Успешное соединение
BUSY Номер занят
NO DIALTONE На линии отсутствует сигнал коммутатора
NO ANSWER Абонент не отвечает
NO CARRIER Неудачная попытка установить связь
Когда приходит звонок, модем передает компьютеру сообщение RING, если регистр модема S0 равен нулю. В этом случае для ответа на звонок надо послать модему команду АТА. Если модем находится в режиме автоответа и регистр модема S0 не равен нулю, то модем автоматически пытается ответить на звонок и может выдать следующие сообщения:
CONNECT Успешное соединение
NO DIALTONE Нет несущей частоты удаленного модема
NO CARRIER Неудачная попытка установить связь
Если модем передал компьютеру сообщение CONNECT, значит, он успешно произвел соединение и теперь работает в режиме передачи данных. Теперь все данные, которые вы передадите модему через СОМ-порт, будут преобразованы модемом в форму, пригодную для передачи по телефонным линиям, и переданы удаленному модему. И наоборот, данные, принятые модемом по телефонной линии, переводятся в цифровую форму и могут быть прочитаны через СОМ-порт, к которому подключен модем.
Если модем передал компьютеру сообщения BUSY, NO DIALTONE, NO ANSWER, NO CARRIER значит, произвести соединение с удаленным модемом не удалось и надо попытаться повторить соединение.
д)Подключение модема в командный режим
После окончания работы коммуникационная программа должна перевести модем в командный режим и передать ему команду положить трубку (ATH0). Для перевода модема в командный режим можно воспользоваться Escape-последовательностью "+++". После того как модем перешел в командный режим, можно опять передавать ему АТ-команды.
е)Сбрасываем сигналы на линиях DTR и RTS
Низкий уровень сигналов DTR и RTS сообщает модему, что компьютер не готов к приему данных через COM-порт.
При работе с асинхронным последовательным адаптером вы можете использовать механизм прерываний. Так как передача и прием данных модемом представляют собой длительный процесс, то применение прерываний от порта позволяет использовать процессорное время для других нужд.
5.Протоколы обмена данными
5.1.Протоколы коррекции ошибок нижнего уровня
При передаче данных по зашумленным телефонным линиям всег-
да существует вероятность, что данные, передаваемые одним модемом, будут приняты другим модемом в искаженном виде. Например,
некоторые передаваемые байты могут изменить свое значение или даже просто исчезнуть.
Для того, чтобы пользователь имел гарантии, что его данные переданы без ошибок, используются протоколы коррекции ошибок.
Общая форма передачи данных по протоколам с коррекцией ошибок следующая: данные передаются отдельными блоками (пакетами) по 16-20000 байт, в зависимости от качества связи. Каждый блок снабжается заголовком, в котором указана проверочная информация, например контрольная сумма блока. Принимающий компьютер самостоятельно подсчитывает контрольную сумму каждого блока и сравнивает ее с контрольной суммой из заголовка блока. Если эти две контрольный суммы совпали, принимающая программа считает, что блок передан без ошибок. В противном случае принимающий компьютер передает передающему запрос на повторную передачу этого блока.
Протоколы коррекции ошибок могут быть реализованы как на аппаратном уровне, так и на програмном. Аппаратный уровень реализации более эффективен. Быстродействие аппаратной реализации протокола MNP примерно на 30% выше, чем програмной.
MNP-протоколы
MNP (Microcom Network Protocols) — серия наиболее распространенных аппаратных протоколов, впервые реализованная на модемах фирмы Microcom. Эти протоколы обеспечивают автоматическую коррекцию ошибок и компрессию передаваемых данных.
Сейчас известны 10 протоколов:
MNP1. Протокол коррекции ошибок, использующий асинхронный полудуплексный метод передачи данных. Это самый простой из протоколов MNP.
MNP2. Протокол коррекции ошибок, использующий асинхронный дуплексный метод передачи данных.
MNP3. Протокол коррекции ошибок, использующий синхронный дуплексный метод передачи данных между модемами (интерфейс модем — компьютер остается асинхронным).
Так как при асинхронной передаче используется десять бит на байт — восемь бит данных, стартовый бит и стоповый бит, а при синхронной только восемь, то в этом кроется возможность ускорить обмен данными на 20%.
MNP4. Протокол, использующий синхронный метод передачи, обеспечивает оптимизацию фазы данных, которая несколько улучшает неэффективность протоколы MNP2 и MNP3. Кроме того, при изменении числа ошибок на линии соответственно меняется и размер блоков передаваемых данных. При увеличении числа ошибок размер блоков уменьшается, увеличивая вероятность успешного прохождения отдельных блоков.
Эффективность этого метода составляет около 20% по сравнению с простой передачей данных.
MNP5. Дополнительно к методам MNP4, MNP5 часто использует простой метод сжатия передаваемой информации. Символы часто встречающиеся в передаваемом блоке кодируются цепочками битов меньшей длины, чем редко встречающиеся символы. Дополнительно кодируются длинные цепочки одинаковых символов. Обычно при этом текстовые файлы сжимаются до 35% своей исходной длины. Вместе с 20% MNP4 это дает повышение эффективности до 50%.
Заметим, что если вы передаете уже сжатые файлы, а в большинстве это так и есть, дополнительного увеличения эффективности за счет сжатия данных модемом этого не происходит.
MNP6. Дополнительно к методам протокола MNP5 автоматически переключается между дуплексным и полудуплексным методами передачи в зависимости от типа информации. Протокол MNP6 также обеспечивает совместимость с протоколом V.29.
MNP7. По сравнению с ранними протоколами использует более эффективный метод сжатия данных.
MNP9. Использует протокол V.32 и соответствующий метод работы, обеспечивающий совместимость с низкоскоростными модемами.
MNP10. Предназначен для обеспечения связи на сильно зашумленных линиях, таких, как линии сотовой связи, междугородними линиями, сельские линии. Это достигается при помощи следующих методов:
— многократного повторения попытки установить связь
— изменения размера пакетов в соответствии с изменением уровня помех на линии
— динамического изменения скорости передачи в соответствии с уровнем помех линии
Все протоколы MNP совместимы между собой снизу вверх. При установлении связи происходит установка наивысшего возможного уровня MNP-протокола. Если же один из связывающихся модемов не поддерживает протокол MNP, то MNP-модем работает без MNP-протокола.
Режимы MNP-модемов.
MNP-модем обеспечивает следующие режимы передачи данных:
— Стандартный режим. Обеспечивает буферизацию данных, что позволяет работать с различными скоростями передачи данных между компьютером и модемом и между двумя модемами. В результате для повышения эффективности передачи данных вы можете установить скорость обмена компьютер-модем выше, чем модем-модем. В стандартном режиме работы модем не выполняет аппаратной коррекции ошибок.
— Режим прямой передачи. Данный режим соответствует обычному модему, не поддерживающему MNP-протокол. Буферизация данных не производится и аппаратная коррекция ошибок не выполняется.
— Режим с коррекцией ошибок и буферизацией. Это стандартный режим работы при связи двух MNP-модемов. Если удаленный модем не поддерживает протокол MNP, связь не устанавливается.
— Режим с коррекцией ошибок и автоматической настройкой. Режим используется, когда заранее не известно, поддерживает ли удаленный модем протокол MNP. В начале сеанса связи после определения режима удаленного модема устанавливается один из трех других режимов.
Протоколы V.42 и V.42bis.
Протокол с коррекцией ошибок и преобразованием асинхронный-синхронный. Протокол использует метод компрессии, при котором определяется частота появления отдельных символьных строк и происходит их замена на последовательности символов меньшей длины. Этот метод компрессии носит название Lempel-Ziv. Данный метод компрессии обеспечивает 50% сжатие текстовых файлов. Вместе с 20% выигрышем от синхронного преобразования это увеличивает эффективность на 60%.
5.2. Протоколы передачи файлов
В отличие от протоколов нижнего уровня данные протоколы позволяют организовать прием и передачу файлов.
ASCII.
Этот протокол работает без коррекции ошибок. В результате при передаче файлов по телефонным каналам из-за шума принятый файл сильно отличается от передаваемого. Если вы передаете выполняемый файл, то ошибки при передаче могут стать роковыми — полученная программа не будет работать. Если вы передаете короткие текстовые сообщения, то ошибки легко могут быть исправлены.
XModem.
Наиболее распространены три разновидности протокола XModem:
— оригинальный протокол Xmodem
— Xmodem c CRC
— 1K Xmodem
Оригинальный протокол Xmodem разработал Вард Кристенсен (Ward Christensen) в 1977 году. Вард Кристенсен был одним из первых специалистов по протоколам обмена данными. В честь него этот протокол иногда называют также протоколом Кристенсена.
При передаче файлов с помощью протоколов Xmodem формат данных должен быть следующим: 8-битовые данные, один стоповый бит и отсутствие проверки на четность. Для передачи используется полудуплексный метод, т.е. данные могут передаваться в каждый момент времени только в одном направлении.
Протокол Xmodem Cheksum передает данные пакетами по 128 байт. Вместе с пакетом передается его контрольная сумма. При получении пакета контрольная сумма вычисляется снова и сравнивается с суммой, вычисленной на передающей машине. Пакет передан без ошибок, если суммы совпадают.
Этот метод обеспечивает достаточно хорошую защиту от ошибок. Только один из 256 пакетов может содержать ошибки, даже если контрольная сумма правильная.
Xmodem c CRC. Более защищенным от ошибок является протокол Xmodem CRC (Cyclic Redundancy Check). Xmodem CRC — протокол с проверкой циклическим избыточным кодом. В нем 8-битовая контрольная сумма заменена на 16-битовый циклический избыточный код. Этот протокол гарантирует вероятность обнаружения ошибок, равную 99,9984%. Только один из 700 биллионов плохих пакетов будет иметь правильный CRC-код. Протокол Xmodem CRC также передает данные пакетами по 128 байт.
1K Xmodem. Если передача идет без ошибок, протокол 1К Xmodem увеличивает размер пакета с 128 до 1024 байт. При увеличении числа ошибок размер пакета снова уменьшается. Такое изменение длины пакета позволяет увеличить скорость передачи файлов. В остальном протокол 1K Xmodem совпадает с протоколом Xmodem CRC.
Ymodem.
Протокол Ymodem разработал Чак Форсберг в 1984-1985 годах. Протокол Ymodem похож на протокол 1K Xmodem, но имеет одно отличие: протокол Ymodem может передавать или принимать за один заход несколько файлов.
Существует модификация протокола Ymodem — Ymodem G. Протокол Ymodem G предназначен для использования с модемами, автоматически осуществляющими коррекцию ошибок на аппаратном уровне. Например, MNP-модемы с аппаратной реализацией MNP. В этом протоколе упрощена защита от ошибок, т.к. ее выполняет сам модем. Не используете этот протокол, если ваш модем не осуществляет аппаратную коррекцию ошибок.
Другой особенностью протокола Ymodem является то, что вместе с файлом передаются все его атрибуты. В результате как минимум имя файла и дата остаются неизменными.
Zmodem.
Zmodem — это быстрый протокол передачи данных, использующий окна. Zmodem осуществляет передачу данных пакетами по несколько штук в окне. При этом принимающий данные компьютер не передает сигнал подтверждения или сигнал переспроса неправильного пакета, пока не получит все пакеты в окне.
Протокол Zmodem, так же как и протокол 1K Xmodem, может изменять длину пакета (блока) от 64 до 1024 байт в зависимости от качества линии.
Кроме того, протокол обладает следующей полезной особенностью: если при передаче файла произошел сбой на линии и вы не успели передать весь файл, то в следующий раз при передаче этого же файла он автоматически начнет передавать с того же места, где произошел обрыв связи. Таким образом, очень большие файлы вы можете передавать по частям.
Из всех протоколов верхнего уровня, описанных выше, этот протокол самый быстрый и удобный.
BiModem.
Особенностью протокола Bimodem является возможность одновременной передачи двух файлов в разных направлениях. Кроме того, одновременно с передачей файлов вы можете побеседовать с оператором удаленного компьютера при помощи клавиатуры.
Kermit.
Широко известны две разновидности протокола Kermit — стандартный и Super Kermit. Этот протокол был разработан в Колумбийском университете в 1981 году для связи между различными типами компьютеров, включая большие компьютеры, мини-компьютеры и персональные компьютеры. В отличие от протоколов Xmodem и Zmodem он использует для передачи данных пакеты переменной длины и максимальным размером 94 байт.
Так же как и Ymodem, протокол Kermit может передавать или принимать несколько файлов за один сеанс.
Протокол Super Kermit предназначен специально для использования в сетях типа TeleNet или TymNet. Эти сети имеют очень большие задержки при передаче данных. Так что если ждать подтверждения для каждого пакета, это может привести к резкому снижению скорости обмена. В протоколе Super Kermit эта проблема решается следующим способом. Несколько пакетов передается за один раз. Все действия по контролю над ошибками остаются, за исключением того, что принимающий данные компьютер не передает сигнал подтверждения или сигнал на переспрос неправильного пакета, пока не получит все пакеты в окне.
В результате использования такого механизма происходит резкое сокращение времени задержки. Окно может содержать от одного до 31 пакета.
В дополнение Kermit использует также предварительную компрессию данных для увеличения эффективной скорости обмена данными.
6.Телекоммуникационные программы
Существует огромное множество различных телекоммуникационных программ, предоставляющих пользователю удобное средство работы с модемом — MTE, Telix, Comit, Bitcom и т.д.
Основные параметры по которым оцениваются коммуникационные программы являются: програмная эмуляция протоколов коррекции ошибок (MNP), наличие разнообразных протоколов обмена файлами, интерфейс с пользователем.
MTE.
Широко распространенная коммуникационная программа фирмы MagicSoft Inc. В MTE версии 2.10 програмно реализован протокол MNP. Поэтому, если ваш модем не имеет аппаратной реализации протокола MNP, использование МТЕ позволяет установить устойчивую связь с MNP-модемами.
МТЕ имеет следующие встроенные протоколы обмена файлами: ASCII, Xmodem CRC, Ymodem, Ymodem-G, Zmodem, Kermit.
Telix.
Telix, версия 3.12 — удобная коммуникационная программа, поддерживающая много протоколов обмена файлами. В Telix реализованы следующие протоколы: Kermit, Modem7, SEAlink, Telink, Xmodem, Xmodem-1k, Ymodem, ymodem-G, Zmodem, HSlink, MobyTurbo, ASCII.
Однако Telix имеет один большой недостаток: эта программа не поддерживает програмной эмуляции MNP. Вследствие этого ее невозможно использовать на сильно зашумленных линиях с модемами, не обеспечивающими аппаратную коррекцию ошибок.
Comit.
Comit, версии 1.27b — удобная коммуникационная программа, часто поставляется в комплекте с модемами, не имеющими аппаратной реализации MNP. Выполняет програмную эмуляцию протоколов MNP2, MNP4, MNP5, MNP7.
К сожалению, эта коммуникационная программа имеет очень бедный набор протоколов для обмена файлами. Поддерживаются протоколы Xmodem, Xmodem CRC, Ymodem, Ymodem-G, ASCII.
Bitcom.
Bitcom, версии 3.584 — коммуникационная программа, часто поставляемая в комплекте с модемами, не имеющими аппаратной реализации MNP. Выполняет програмную эмуляцию протоколов MNP (до MNP5 включительно).
Bitcom поддерживает следующие протоколы обмена файлами: ASCII, Xmodem CRC, Ymodem, Ymodem-G, Kermit, CompuServe Plus.
Следует также отметить, что в Bitcom неудачно реализован интерфейс с пользователем.
7. Использование модемов
7.1. Электронная доска обьявлений
BBS ( Bulletin Board System ) — это компьютер, снабженный одним или несколькими модемами, на котором выполняется специальная программа. Эта программа дает возможность удаленным пользователям связываться с ней по телефонным линиям и выполнять обмен файлами и сообщениями.
Большинство операторов станций BBS также являются членами сети FidoNet. Сеть FidoNet представляет собой международную некоммерческую сеть пользователей компьютеров многих стран. Не надо путать BBS и FidoNet. Станции BBS могут не входить в FidoNet, и в свою очередь, узлы FidoNet могут не иметь BBS, а использоваться только для пересылки почты.
Если вы успешно установили модем на своем компьютере, то у вас возникнет естественное желание куда-нибудь позвонить. Для этого вы можете воспользоваться любой телекоммуникационной программой — MTE, COMIT, BITCOM. Если ваш модем не имеет аппаратной коррекции ошибок, то лучше использовать MTE или другую программу, имеющую возможность эмуляции MNP (например COMIT).
Хотя различные BBS используют различные программы для организации своей работы — TPBoard, Allan's Kakboard, Remote Access, Opus, Phoenix, Maximus и т.д., фактически все они имеют одинаковый набор команд. Здесь мы рассмотрим станции BBS, использующие программу Maximus.
Maximus организует диалог с пользователем, позволяет пользователю получить адресованные ему сообщения (почту), отправить почту другим пользователям данной станции BBS или сети FidoNet (если данная станция входит в эту сеть).
Пользователь BBS получает возможность просматривать архивы файлов BBS, переписывать себе интересующие его файлы, передавать на BBS свои файлы, которые могут кого-нибудь заинтересовать.
Итак, вы звоните на BBS. В большинстве случаев после соединения с BBS на вашем дисплее появится следующее сообщение:
CONNECT 2400
FrontDoor 2.02; Noncommercial version
Press Escape twice for Maximus
Maximus is being loaded
Оно означает, что станция является узлом какой-либо сети, например FidoNet, и на ней выполняется специальная почтовая программа FrontDoor. Вам предлагается нажать два раза на клавишу ESC для загрузки программы Maximus, которая и будет далее поддерживать диалог с вами.
Если в это время станция работает только для обмена почтой в сети, то на экране появится другое сообщение:
CONNECT 2400
FrontDoor 2.02; Noncommercial version
Mail-only system. Please hang up.
Если BBS работает, то через некоторое время на ней запустится программа Maximus или аналогичная и на вашем экране появится заставка — информация о данной BBS, которая может включать номера телефонов, расписание работы, фамилию системного оператора.
Затем BBS попросит ввести вас свое имя и фамилию. Если вы входите на BBS первый раз, то у вас будут запрошены истинные имя и фамилия, рабочий и домашний телефоны, тип используемого вами терминала.
Под типом терминала понимается возможность распознавать те или иные управляющие символы. Обычно вам предоставляется выбор из двух возможных типов терминалов — TTY и ANSI.
TTY представляет собой наиболее простой тип терминала. Он не позволяет управлять цветом символов, выводимых на экран и устанавливать курсор в заданную позицию.
ANSI — это наиболее универсальный тип терминала. Он поддерживает управление положением курсора, а также цветом символов и фоном символов. Управление цветом и положением курсора обеспечивается специальными Escape-последовательностями.
После такой процедуры регистрации вас попросят выбрать себе пароль и вы автоматически становитесь пользователем данной BBS. При последующих входах на эту BBS используйте то же имя и фамилию, что и первый раз. Программа на BBS отыщет ваше имя в списке пользователей и предложит вам ввести пароль, определенный при первом вхождении в систему.
Главное меню BBS
Когда система наконец признает в вас своего пользователя, на экран будет выведено основное меню:
MAIN:
M)essage Areas F)ile Areas S)tatistics
C)hange Setup W)ho is on /)Chat Menu
Y)ell for Sysop R)egistration G)oodbye
Рассмотрим каждую из команд меню:
Message Areas
Выбрав этот элемент основного меню, вы переходите в область сообщений. На экране отобразится меню работы с сообщениями, из которого вы сможете просмотреть, послать или принять сообщения.
File Areas
Переход в файловую область BBS. На экране появится меню для работы с файлами. Из него вы сможете просмотреть список файлов, имеющихся на BBS, принять или передать на BBS файлы.
Statistics
Эта команда отображает на экране статистику вашей работы с BBS: время, отведенное на этот сеанс, время которое вы уже проработали с этой системой и оставшееся время. Также выводится информация о размерах принятой и переданной вами информации, а также сколько еще килобайт вы можете перекачать себе сегодня.
Change Setup
При выборе этого элемента меню вы сможете изменить ваше имя, пароль, номера телефонов, тип терминала, который вы используете.
Who is on
Система сообщит вам, о том, кто еще подключился к BBS ( если BBS имеет несколько телефонных линий).
Chat Menu
Если система имеет несколько телефонных линий, то вы сможете передать сообщение тому, кто находится на другой линии этой BBS.
Yell for Sysop
При помощи этой команды можно попробовать вызвать системного оператора, если он находится поблизости от BBS и пожелает вступить в переговоры. Если вам повезет, вы сможете с помощью клавиатуры передать ему сообщение и получить ответ.
Registration
Система начнет задавать вам вопросы для вашей регистрации на BBS.
Goodbye
С помощью этой команды вы разорвете связь с BBS.
7.2. Электронная почта
Электронные доски обьявлений BBS являются, пожалуй, самым простым способом обмена сообщениями и файлами. Значительно больший интерес предоставляет использование глобальных сетей.
Одной из возможностей использования глобальных сетей является организация электронной почты. Если ваш компьютер подключен к глобальной сети и вы имеете специальное програмное обеспечение для обмена почтой, то вы можете отправлять через сеть письма другим пользователям сети.
Само письмо представляет собой обычный файл, содержащий текст письма и специальный заголовок, в котором указано, от кого письмо направлено, кому предназначено, какая тема письма и дата отправления.
В зависимости от используемой вами сети электронный адрес может иметь различный формат.
Отправляя электронное письмо, надо знать только адрес получателя. Маршрут, по которому оно будет передаваться, определяется самой системой электронной почты и может изменяться в зависимости от загруженности отдельных линий.
Таким образом, отправленное вами письмо через несколько минут или дней ( в зависимости от расстояния и других причин) попадет на компьютер адресата. Когда у адресата будет время, он сможет просмотреть пришедшую почту и в случае необходимости отправит вам ответ.
Другой возможностью использования глобальных сетей являются телеконференции. Использование телеконференций соответствует возможности обмена сообщениями на BBS, но предпола-
гает больший сервис и круг пользователей.
Телеконференции или новости обычно делятся в зависимости от их тематики на несколько областей. Абонент сети может «подписаться» на интересующие его конференции. После этого он получает возможность отправлять свои сообщения по тематике данной конференции и автоматически получать все новые сообщения по этой конференции, отправленные другими пользователями сети.
В настоящее время в нашей стране самыми большими являются сеть Relcom и FidoNet. Relcom является маленьким подмножеством сети InterNet. Обе эти сети позволяют передавать данные не только внутри России, но и по всему миру.
7.3. Факс-модемные платы
В последнее время на рынке появилось множество факсимильных и факс-модемных плат. Если вы подключите эту плату к вашему компьютеру, то вы получите факсимильный аппарат. Благодаря этим платам вы можете передать факс на любой факсимильный аппарат или на любую факс-модемную плату в мире.
Факс-модемные платы можно использовать и как обычные модемы.
Програмное обеспечение, обслуживающее факс-модемные платы, позволяет преобразовывать данные в различных форматах к формату факсимильных аппаратов. Например, программа Quick Link II Fax позволяет передавать на факс-машины и другие факс-модемы следующие данные: текст, файлы в форматах TIFF, IMG подготовленные программой GEM Artline или Ventura Pablisher, BMP из Microsoft Windows, CUT из Dr.Halo и PCX из Paintbrush.
Некоторые модемы позволяют даже послать звуковое письмо. Они обеспечивают запись и последующее воспроизведение речевого сигнала с помощью встроенных аналогово-цифрового и цифроаналогового преобразователей.
www.ronl.ru
Национальный технический университет Украины «КПИ» Факультет информатики и вычислительной техникиI курс, группа ИС-91 | |||||
Кафедра АСОИУ | |||||
РЕФЕРАТ | |||||
ДИСЦИПЛИНА: Алгоритмические языки и программирование ПРЕПОДАВАТЕЛЬ: Ковалюк Т.В. ТЕМА: Модемы ИСПОЛНИТЕЛЬ: Семеренко Владислав Русланович | |||||
Киев 1999г. | |||||
Название | Цена ($) |
Fax-Modem DataFlex 28.8K internal+Voice OEM(Англия, без тлф.кабеля) | 26 |
Fax-Modem GVC 33.6K UKRainian ext+Voice, Rockwell | 60 |
Fax-Modem GVC 56K ext+Voice, Rockwell | 80 |
Fax-Modem IDC 2814 BXL Voice 33.6K ext. | 163 |
Fax-Modem SpeedCom 56K external ( voice, MOTOROLA Chip, V90 ) | 65 |
Fax-Modem SpeedCom 56K internal ( voice, MOTOROLA Chip, V90 ) | 35 |
works.tarefer.ru
Реферат на тему:
Моде́м (акроним, составленный из слов модулятор и демодулятор) — устройство, применяющееся в системах связи для физического сопряжения информационного сигнала со средой его распространения, где он не может существовать без адаптации (то есть переносе его на несущую с модуляцией), и выполняющее функцию модуляции и демодуляции этого сигнала (чаще всего в речевом диапазоне).
Модулятор в модеме осуществляет модуляцию несущего сигнала, то есть изменяет его характеристики в соответствии с изменениями входного информационного сигнала, демодулятор — осуществляет обратный процесс. Модем выполняет функцию оконечного оборудования линии связи. Само формирование данных для передачи и обработки принимаемых данных осуществляет т. н. терминальное оборудование (в его роли может выступать и персональный компьютер).
Модемы широко применяются для связи компьютеров (одно из их периферийных устройств), позволяющее одному из них связываться с другим (также оборудованным модемом) через телефонную сеть (телефонный модем) или кабельную сеть (кабельный модем). Также модемы ранее применялись в сотовых телефонах (пока не были вытеснены цифровыми способами передачи данных).
Внешний аппаратный модем
Внутренний модем для шины PCI
Ещё один внутренний модем
По исполнению:
По принципу работы:
По виду соединения:
Наиболее распространены в настоящее время:
Плата модема Acorp Sprinter@ADSL LAN120M
Факс-модем — позволяет компьютеру, к которому он присоединён, передавать и принимать факсимильные изображения на другой факс-модем или обычную факс-машину.
Голосовой модем — с функцией оцифровки сигнала с телефонной линии и воспроизведения произвольного звука в линию. Часть голосовых модемов имеет встроенный микрофон. Такой модем позволяет осуществить:
Акустический модем
Компания AT&T Dataphone Modems в Соединённых Штатах была частью SAGE (ПВО системы) в 50-х годах. Она соединяла терминалы на различных воздушных базах, радарах и контрольных центрах с командными центрами SAGE, разбросанными по США и Канаде. SAGE использовала выделенные линии связи, но устройства на каждом из концов этих линий были такими же по принципу как современные модемы.
Первым модемом для персональных компьютеров стало устройство компании Hayes Microcomputer Products, которая в 1979 году выпустила Micromodem II для персонального компьютера Apple II. Модем стоил 380 долл. и работал со скоростью 110/300 б/сек.
В 1981 году фирма Hayes выпустила модем Smartmodem 300 б/сек, система команд которого стала стандартом де-факто
скачатьДанный реферат составлен на основе статьи из русской Википедии. Синхронизация выполнена 11.07.11 02:24:09Похожие рефераты: GSM модем, Беспроводной модем, Софт-модем, Голосовой модем, Нуль-модем.Категории: Сетевые протоколы, Компьютерное аппаратное обеспечение.
Текст доступен по лицензии Creative Commons Attribution-ShareAlike.wreferat.baza-referat.ru