Синхронный способ передачи данных
Процессы передачи или приема информации в вычислительных комплексах и сетях могут быть привязаны к определенным временным отметкам, т.е. один из процессов может начаться только после того, как полностью завершится другой процесс. Такие процессы называются синхронными.
В то же время существуют процессы, в которых нет такой привязки, и они могут выполняться независимо от степени полноты переданных данных. Такие процессы называются асинхронными.
Таким образом, синхронизация данных - согласование различных информационных процессов во времени. При организации взаимодействия устройств внутри компьютера задача синхронизации решается очень просто, так как в этом случае все модули синхронизируются от общего тактового генератора.
Для внешней передачи данных в компьютерных сетях могут использоваться как синхронный, так и асинхронный способы передачи данных.
При синхронном способе передачи приемник работает синхронно с передатчиком (с фазовым сдвигом, обусловленным временем распространения сигнала), при этом проблема синхронизации приемника и передатчика может решаться двумя способами:
с помощью внешней синхронизации путем обмена специальными тактовыми синхроимпульсами (флагами) по отдельной линии (практически не применяется из-за дороговизны реализации дополнительного канала),
путем самосинхронизирующего кодирования, когда синхросигналы периодически вставляются в основной сигнал и выделяются приемником, так как имеют заранее обусловленные коды или импульсы характерной формы, отличные от формы импульсов данных. В ЛВС чаще других применяют самосинхронизирующийся манчестерский код.
Рассмотрим синхронную передачу данных по телефонным сетям с использованием модемов. В этом случае (рис. 2.2) информация передается пакетами или блоками (от 1 до 1024 байтов) через строго определенные временные интервалы. В состав блока включаются специальные синхронизирующие символы и символы, позволяющие обнаруживать ошибки при обмене информацией.
Несколько слов об используемых при синхронной передаче методах повышения достоверности передачи, так как вероятность искажения некоторых бит передаваемых данных не исключена. В конце блока данных в канал связи выдается контрольная последовательность (1,2 или 4 байта), сформированная по специальному алгоритму. Чаще всего это контрольная сумма блока (checksum) или реже 16-битный циклический код CRC (Cyclic Redundancy Check – избыточный циклический контроль). Более подробно о методах контроля достоверности передачи в другой теме.
Рис.2.2. Синхронная передача данных
По этому же алгоритму формируется контрольная последовательность при приеме информации из канала связи. Если обе последовательности (или младшая их части совпадают) – принимающая сторона считает, что блок данных передан без ошибок. Если же последовательности не совпадают, то произошла – ошибка и необходима повторная передача этого блока. Для этой цели в протокол обмена данными включается как обязательный элемент сигнал-квитанция, которая подтверждает правильность приема данных и посылается приемником передатчику. Передача повторяется до получения передатчиком квитирующего сигнала. Если повторные передачи не дают положительного результата, то фиксируется состояние аварии. Так работает старт-стопный протокол передачи файлов (протоколы X- и YModem), в конвейерных протоколах (протокол ZModem) такое подтверждение может быть получено после передачи нескольких блоков (кадров). В последнем случае меньше задержки на ожидание подтверждений (квитанций), но больше затраты на повторную пересылку в случае ошибок
Вероятность обнаружения ошибок с помощью контрольной суммы достигает 99,6%. Вероятность обнаружения ошибок с помощью CRC-контроля существенно выше и достигает 99,9984%
В случае синхронной передачи передатчик постоянно активен — он непрерывно посылает битовую последовательность если не полезных данных, то символов синхронизации, как некоторого заполнителя.
Синхронная передача - высокоскоростная и почти безошибочная. Она используется не только для обмена сообщениями между устройствами ЭВМ, а также в глобальных вычислительных сетях для высокоскоростной передачи данных по телефонным линиям. Синхронная передача требует дорогостоящего оборудования. Параллельные интерфейсы персонального компьютера всегда работают в синхронном режиме.