Писарев А.П.
Интерфейсы АСОИУ
КУРС ЛЕКЦИЙ
Аннотация В данном курсе рассмотрены вопросы организации систем ввода-выво...
9 downloads
221 Views
981KB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
Писарев А.П.
Интерфейсы АСОИУ
КУРС ЛЕКЦИЙ
Аннотация В данном курсе рассмотрены вопросы организации систем ввода-вывода АСОИУ, даны их архитектуры и режимы работы. Приведены основные понятия интерфейсов, функции и их классификация. Вторая часть лекций посвящена практической реализации интерфейсов. Курс лекций разработан на кафедре ИВС ИИВТ ПГУ и предназначен для студентов специальности 230102 - АСОИУ.
СИСТЕМЫ ВВОДА-ВЫВОДА Наиболее наглядно и полно можно проследить и прочувствовать проблемы и тенденции развития систем ввода-вывода при рассмотрении ретроспективы эволюции интерфейсов и структур систем ввода-вывода на примере персональных компьютеров типа IBM PC В начале эры персональных компьютеров частота работы процессора составляла 10 МГц, при этом на выполнение даже самых простейших операций процессор затрачивал несколько тактов. В таких условиях для обеспечения бесперебойной работы процессора было достаточно всего 4 миллионов обращений к памяти в секунду, что соответствовало циклу работы в 250 нс. Этим условиям удовлетворяла одношинная структура систем ввода-вывода, когда все устройства компьютера, включая ОЗУ, общались с процессором через общую шину (рис.1a), которую называли системной. Все интерфейсы ПУ подключались к этой шине. Наиболее распространенной системной шиной в этот период стала сначала 8 разрядная, затем 16 разрядная шина ISA, работающая на частоте 8 МГц. С ростом частоты работы ПК и изменения времени доступа к ОЗУ пропускная способность шины ISA стала тормозить работу процессора. Решение проблемы нашли в выделении канала передачи данных МП-ОЗУ в отдельную шину, построенную на базе внешнего интерфейса МП, и изолированную от медленной шины ISA посредством контроллера шины данных. Это повысило производительность работы центрального процессора. Все ПУ продолжали взаимодействовать с центральным процессором через системную шину (см. рис. 1б). С дальнейшем ростом частоты работы МП тормозом
в работе стало ОЗУ. Тогда ввели
дополнительную высокоскоростную кэш-память, что уменьшило простои МП. На определенном этапе развития компьютеров стали широко использовать мультимедиа. Сразу выявилось узкое место во взаимодействии центрального процессора и видеокарты. Имеющиеся системные шины ISA, ЕISA не удовлетворяли этим условиям. Выход был найден с разработкой и внедрением высокоскоростных локальных шин, посредством которых можно было связаться с памятью, на этой же шине работали жесткие диски, что также повышало качество вывода графической информации. Первой такой шиной была шина VL-bus, практически повторявшая интерфейс МП i486. Затем появилась локальная шина РСI. Она была процессорно-независимой и поэтому получила наибольшее распространение для последующих типов МП. Эта шина имела частоту работы 33 МГц и при 32-х разрядных данных обеспечивала пропускную способность в 132 Мбайт/сек (см. рис. 1.9в). Системная шина ISA по-прежнему использовалась в компьютерах, что позволяло применять в новых компьютерах огромное количество ранее разработанных аппаратных и программных средств.
В такой системе ввода-вывода различные ПУ подключались к разным шинам. Медленные - к ISA, а высокоскоростные - к РСI. С появление шины РСI стало целесообразным использовать высокоскоростные параллельные и последовательные интерфейсы ПУ (SCSI, ATA, USB). На этом этапе системной стали называть шину МП, через которую он взаимодействовал с ОЗУ. Шина РСI и ISA и подобные другие назвали шинами ввода-вывода или шинами расширения. Действительно, эти шины как бы расширяли число устройств, работающих с ЦПр, и их основной функцией стало обеспечение процессов ввода и вывода информации.
МП
ОЗУ
Шина микро процессора
Шина памяти
Шина ISA
а)
--
Контроллер ввода-вывода
Контроллер ввода-вывода
ПУ
ПУ
МП
Адаптер сигналов
ОЗУ Шина памяти
Шина микро процессора
Контроллер шины Шина ISA
б)
--
Контроллер ввода-вывода
Контроллер ввода-вывода
ПУ
ПУ
Адаптер сигналов
Процессор КЭШ с контроллером
Системная шина
Шина ISA
Мост Контр. памяти
ОЗУ
Локальная Шина PCI
Рис. 1. Эволюция шинной архитектуры
Сеть
Видео
Мост PCI / ISA
ЖМД
Контроллер в/в
ПУ
Контроллер в/в
ПУ
Появление шины РСI не сняло всех проблем по качественному выводу визуальной информации для 3-х мерных изображений, "живого" видео. Здесь уже требовались скорости в сотни Мбайт/сек. В 1996г. фирма Intel разработала новую шину AGP, предназначенную только для связи ОЗУ и процессора с видеокартой монитора. Эта шина обеспечивает пропускную способность в сотни Мбайт/сек. Она непосредственно связывает видеокарту с ОЗУ минуя шину РСI. Таким образом, спустя годы снова пришли к многомагистральной структуре ввода-вывода с радиально-магистральными интерфейсами ПУ. Все шины систем ввода-вывода объединяются
в
единую транспортную среду передачи информации с помощью специальных устройств - мостов. Мост – устройство, применяемое для объединения шин, использующих разные или одинаковые протоколы обмена. Мост – это сложное устройство, которое осуществляет не только коммутацию каналов передачи данных, но и производит управление соответствующими шинами. Для обеспечения выполнения функций интерфейсов, входящих в систему ввода-вывода, применяются специальные контроллеры и схемы. К ним можно отнести контроллеры прерываний и прямого доступа к памяти, таймер, часы реального времени, буферы шин данных, дешифраторы, мультиплексоры, регистры и другие логические устройства. В первых компьютерах, построенных с использованием микропроцессоров, контроллер и другие устройства строились на базе набора интегральных схем малой, средней и большой
степени
интеграции. Адаптеры, таймер и др. выпускались в виде отдельных микросхем (8250, 8255, 8259, 8237 и т.д.) С повышением производительности компьютеров и увеличением степени интеграции все вышеперечисленные устройства и схемы стали объединяться в микросхемы со сверхбольшой степенью интеграции, образуя специальные наборы интегральных схем, называемых «чипсет» (ChipSet). В настоящее время управление потоками передаваемых данных производится с помощью мостов и контроллеров, входящих в ChipSet. Именно ChipSet определяет основные особенности архитектуры компьютера и, соответственно, достигаемый уровень производительности в условиях, когда лимитирующим фактором становится не процессор, а его окружение – память и система ввода-вывода. Принято называть две главные микросхемы южный мост и северный мост. Северный мост обслуживает системную шину, шину памяти, AGP и является главным контроллером PCI. Южный мост обслуживает работу с ПУ (шины PCI, IDE). Для компьютеров среднего класса, использующих процессоры Celeron, Pentium II и Pentium III, фирма Intel выпустила чипсет с новой архитектурой i810, состоящий из 3-х микросхем. Особенностями чипсета этого типа являются следующие: -
использование хабовой архитектуры, в чипсете имеется три микросхемы – хаба, которые объединяются не с помощью медленной шины
PCI, как в предыдущих случаях, а с
помощью специальной внутренней шины, работающей на частоте 266 МГц; -
встроенное, интегрированное в микросхему 2Д/3Д графическое ядро, с использованием в качестве видеопамяти быстродействующей (800 Мбайт/сек и более) системной памяти, работающей по новым технологиям – Direct AGP и Dynamic Video Memory Technology (D.V.M.T.), что обеспечивает большую пропускную способность по сравнению с обычной шиной AGP, работающей со скоростью 528 Мбайт/сек, это существенно удешевляет стоимость видеокарт;
-
отсутствие шины PCI, как внутренней шины, для чипсета она является внешней шиной, подобной ISA.
На рис.1. 2 показана система ввода-вывода на основе чипсета i810. Функции микросхем чипсета следующие: контроллер памяти и видео, контроллер ввода-вывода и хаб фирменного программного обеспечения.
Процессор
Pentium III Pentium II Celeron
Контроллер
Системная
памяти и видео GMCH
TV
память
Контроллер вводавывода ICH
Монитор
PCI
Slot
Шина
PCI
IDE 2 Ultra
IDE Хаб Фирменного Програмного Обеспечения FWH
ATA/66
2 Ports
Ports ISAIDE
Super I/O
AC’97
LAN
USB
Audio Codec
USB USB
M d
Рис. 1. 2. Чипсет Intel i810
C d
Этот чипсет имеет следующие характеристики: •
поддержка однопроцессорной конфигурации;
•
системная шина 66 и 100 МГц 64 разряда;
•
интерфейс памяти SDRAM на 100 МГц;
•
интегрированное 2Д/3Д графическое ядро;
•
поддержка шины PCI на 33 МГц, совместимой со спецификацией версии 2.2 с числом слот 4 или 8 ;
•
управление энергопотреблением;
•
интегрированный IDE контроллер с поддержкой Ultra ATA/66;
•
поддержка интерфейса LPC (Low Pin Count), шина 4 бита, 33 МГц, заменяет ISA при подключении контроллера гибкого диска и портов ввода-вывода;
•
хранение системного и видео BIOS и аппаратный датчик случайных чисел;
•
отсутствие ISA.
Как следует из вышеизложенного, системы ввода-вывода и соответствующие им чипсеты являются
главными
средствами,
центральных процессоров.
позволяющими
реализовать
потенциальные
возможности
СТРУКТУРЫ СИСТЕМ ВВОДА- ВЫВОДА Структура систем ввода-вывода представляет собой совокупность взаимосвязанных внутренних и внешних интерфейсов (шин), посредством которых все устройства (модули) объединены в единую систему, называемую компьютером. Причем каждая шина имеет определенную скорость передачи информации, и к ней подсоединяются устройства с соответствующим быстродействием. Все шины, как правило, могут работать параллельно, обеспечивая высокую производительность вычислительной системы. Шины соединяются между собой с помощью специальных устройств – мостов. Кроме того, в структуру систем ввода-вывода входят устройства управления шинами и схемы организации процессов передачи информации при различных режимах ввода-вывода. В процессе развития вычислительной техники формировалась структура самого компьютера и его систем ввода-вывода, разрабатывались и внедрялись различные типы интерфейсов. Из поколения в поколение менялась элементная база и архитектура компьютеров. К моменту появления микропроцессоров (МП), больших интегральных схем (БИС) и персональных компьютеров уже сформировались определенные принципы построения и структуры систем ввода-вывода (см. рис.1). В больших компьютерах класса «Мейнфрейм» (IBM-360/370, ЕС ЭВМ), работающих в мультипрограммном режиме и имеющих мощный процессор, большой емкости ОЗУ и много разнообразных ПУ, уже много лет успешно используется многомагистральная структура с выделенными каналами ввода-вывода и каскадно-магистральным подключением ПУ (см. рис. 1.а). В таких машинах, как правило, используются мультиплексный,
работающий
с
специализированные
медленными
ПУ
и
каналы ввода-вывода:
селекторный,
обслуживающий
быстродействующие ПУ. Такая структура позволила максимально использовать вычислительную мощность компьютера за счет одновременного решения нескольких задач и параллельной работы процессора и каналов ввода-вывода. В таких компьютерах аппаратно реализовывались все функции
по управлению потоками
данных. В них система ввода-вывода содержит оптимальный набор из нескольких типов интерфейсов. Высокоскоростные интерфейсы процессора и ОЗУ, через которые взаимодействуют основной процессор, специализированные процессоры, блоки оперативной памяти обеспечивают максимально эффективное
использование
процессорного
времени.
Интерфейсы
ввода-вывода,
аппаратно
реализованные каналы ввода-вывода и контроллеры ПУ, освобождают центральный процессор от процедур управления вводом-выводом. Интерфейсы ПУ предназначаются для подключения ПУ к компьютеру.
а)
ОЗУ
ОЗУ Интерфейс ОЗУ
Интерфейсный блок
Интерфейс ввода-вывода
Канал ввода-вывода
Пр
Контроллер ввода-вывода Интерфейс ПУ
Пр
ПУ
Ввода-вывода
Контроллер ввода-вывода Интерфейс ПУ
б)
Пр
ПУ
ПУ
Контроллер ввода-вывода
ПУ
ОЗУ
Системный интерфейс
Системный контроллер
Интерфейс ПУ
Интерфейс ввода-вывода
Канал
Процессорный интерфейс
Контроллер ввода-вывода
Контроллер прерывания
Контроллер ПДП
Контроллер ввода-вывода
ПУ
Рис. 1. Структура систем ввода-вывода
Контроллер ввода-вывода
ПУ
Интерфейс ПУ
В то же время, система ввода-вывода малых вычислительных машинах типа DEC PDP-11, СM ЭВМ, которые были намного дешевле больших, строилась по одномагистральной структуре с распределенным каналом ввода-вывода и радиально-магистральным подключением ПУ (см. рис.1.б). Функции управления вводом-выводом выполнял процессор. В качестве высокоскоростного канала применялся контроллер прямого доступа к памяти. Существовали стандарты на используемые внутримашинные системные шины, например, Unibus фирмы DEC (отечественный аналог – «Общая шина»). С появлением
МП и БИС наступил новый этап развития структур систем ввода-вывода,
обусловленный новым принципом построения
вычислительных машин на основе модульности,
микропрограммируемости и магистральности. Новый этап повторял стадии развития предыдущего, но на качественно новой элементной базе и других подходах к компоновке компьютеров. С развитием элементной базы компьютеров, повышением скорости работы микропроцессоров и микросхем памяти, увеличением емкости ОЗУ совершенствовалась и изменилась структура системы ввода-вывода информации, повышалась скорость работы интерфейсов. Развитие интерфейсов и систем ввода-вывода было направлено на минимизацию потерь в производительности компьютера, вызванных задержками в передаче информации между его модулями (устройствами), т.е. передач процессор ОЗУ, процессор - ПУ, ПУ – ОЗУ.
ОСНОВНЫЕ РЕЖИМЫ ВВОДА - ВЫВОДА Для учета особенностей реализации процессов ввода-вывода и специфики различного типа ПУ используются три режима ввода-вывода информации: программный ввод-вывод, ввод-вывод в режиме прерываний и с прямым доступом к памяти. Интерфейсы должны учитывать возможность реализации всех 3-х режимов ввода-вывода. Программный ввод-вывод. Здесь инициализация и управление процессом ввода-вывода осуществляет процессор. Существует три способа его выполнения (см. рис.1). а) Прямой - для а) б) синхронных ПУ
б) Условный с занятием цикла
в) Условный с замещением
Нет
ВВ Нет
Готов?
Готов? Нет
Да Да
ВВ ВВ
Рис.1. Программный ввод-вывод Первый способ – прямой, используется для синхронных ПУ, т.е. устройств, которые всегда готовы к работе и циклов ожидания не требуется. Второй – условный с занятием цикла, когда при не готовности ПУ, процессор ждет до тех пор, пока наступит его готовность. Третий – условный с совмещением. В отличие от предыдущего, процессор не ждет готовности ПУ, а переходит к продолжению программы с периодической проверкой готовности ПУ.
Ввод-вывод в режиме прерываний. В этом случае инициатором начала процесса ввода-вывода является ПУ. Оно, когда готово, подает сигнал процессору "запрос на прерывание". Процессор, если ПУ разрешен такой режим, завершает текущую команду и переходит к выполнению процесса вводавывода (см. рис. 2). Сначала он осуществляет контекстное переключение, т.е. запоминает свое состояние, чтобы можно было после продолжить программу, идентифицирует ПУ и передает управление драйверу данного ПУ (ПП), который и осуществляет ввод или вывод информации. Идентификация ПУ производится с помощью адреса вектора прерывания, который содержит номер ячейки, где хранится первая команда этого драйвера. Адрес вектора прерывания ПУ передается процессору от контроллера прерываний.
Начало
Инкрементирование счетчика команд
Выбор команды
Дешифрация и выполнение команды.
Нет
Есть 3апрос?
Да Нет
Разрешено прерывание Да Контекстное переключение
Идентификация ПУ с максимальным приоритетом
ПП1
ПП n
Контекстное переключение
Рис.2. Ввод-вывод в режиме прерывания
Следует отметить два момента. Во-первых, ПУ должно иметь, предварительно установленное, разрешение на работу в режиме прерываний. Во-вторых, возможны коллизии, когда несколько ПУ выставляют процессору запрос прерывания. Эта коллизия разрешается с помощью механизма задания уровня приоритетов для каждого ПУ. Возможна организация вложенных прерываний, когда ПУ с
большим приоритетом прерывает работу ПУ с меньшим приоритетом. Все эти моменты должен учитывать стандарт на интерфейс. Прямой доступ к памяти (см. рис. 3). Этот режим используется для высокоскоростных ПУ. В этом режиме активным устройством является контроллер прямого доступа к памяти (КПДП). Процессор, получив от КПДП заявку на прямой доступ, прерывает свою работу и отключается от интерфейса, передавая его задатчику, т.е. КПДП. Процессор при этом не выполняет контекстного переключения, а может продолжать свою работу, если она не требует интерфейса. Управление интерфейсом переходит к КПДП, который посредством выполнения операций чтения и записи передает информацию между ОЗУ и ПУ с соответствующим заданием адресов памяти. В этом режиме используется механизм задания уровня приоритетов для тех ПУ, которые работают с прямым доступом к памяти. Этот режим также должен быть предусмотрен в интерфейсах. Как следует из вышеизложенного, канал ввода-вывода (главный контроллер) реализует функции управления общие для всех ПУ, а контроллер внешнего интерфейса учитывает специфику интерфейса, связывающего его с соответствующим ПУ. В компьютерах, которые работают с малой интенсивностью ввода-вывода, главный контроллер (канал) ввода-вывода обычно отсутствует, а его функции берет на себя процессор. В этом случае процессор работает непосредственно с контроллером ввода-вывода ПУ, что упрощает структуру компьютера. При работе с высокоскоростным ПУ обычно используется режим прямого доступа к памяти. Для этого режима аппаратно реализуется специальный канал ввода-вывода в виде КПДП.
Запрос от ПУ к КПДП
Нет
Разрешен ПДП?
Да Формирование адреса
Передача данных
Модификация адреса
Окончен ПДП? Нет Да
Рис.
3.
Режим
прямого
доступа
к
памяти
ОСНОВНЫЕ
ПРИНЦИПЫ
ОРГАНИЗАЦИИ
ПЕРЕДАЧИ
ИНФОРМАЦИИ
В
ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМАХ В процессе работы компьютера передача информации по одному и тому же интерфейсу в один и тот же момент времени идет только между двумя устройствами (модулями) по принципу «точкаточка». При этом одно из устройств является активным (ведущим, задатчиком), другое – пассивным (исполнителем, ведомым). Активное устройство начинает процедуру обмена и управляет ею. Пассивное устройство выполняет предписания активного. В компьютере одни устройства всегда является задатчиками (активными), другие только исполнителями (пассивными), третьи в разные моменты времени могут быть как задатчиками, так и исполнителями. Процессор всегда активное устройство, оперативная память (ОЗУ) – пассивное устройство. Периферийные устройства при работе с процессором являются исполнителями, а при работе с ОЗУ (прямой доступ к памяти) – задатчиками. Возможна передача между двумя ПУ, тогда одно – задатчик, другое – исполнитель (см. рис.1а). Задатчик ведущий (Master)
а)
Исполнитель ведомый (Target)
Активное устройство
Пассивное устройство Данные Оперативная память
Процессор Периферийное устройство
Периферийное устройство
Команда
Программа (драйвер)
Устройство управления
б)
в) Оперативное запоминающее устройство
Процессор Данные
Устройство управления
Центральный
Периферийное
процессор
устройство Данные
Рис.1. Управление обменом информации Таким образом, пассивными устройствами являются либо ОЗУ, либо ПУ. Со стороны процессора средства управления этими двумя типами устройств существенно различны. Это обусловлено тем, что для передач процессор-ОЗУ заранее известны все типы и параметры устройств, которые должны соединяться между собой, т.к. эти устройства однотипны, в то время как ПУ существенно различаются, как по задержке, так и по пропускной способности. Кроме того, процесс управления ПУ намного сложнее и требует большего времени и учета специфики работы.
Поэтому управление передачей процессор-ОЗУ реализуется в рамках одной компьютерной команды на уровне микрокоманд (см. рис. 1б), а управление процессом ввода-вывода с учетом специфики ПУ с помощью специальной подпрограммы, которая называется драйвером и содержит как команды компьютера, так и команды управления, специфичные для каждого типа ПУ (см. рис.1в). Поэтому интерфейс, связывающий устройства при передаче данных должен учитывать эти особенности. Передача информации от задатчика к исполнителю реализуется операцией записи, а обратная – операцией чтения. Процесс передачи между ПУ и ЦПр называют вводом-выводом информации. Ввод реализуется с помощью операции чтения, а вывод – операцией записи. Если на процессор возложить функции управления вводом-выводом, то у него не хватит времени для выполнения своей главной функции – преобразования информации. Это обусловлено широким диапазоном скоростей работы ПУ, сложностью их управления и большим разнообразием и количеством разных ПУ. Для минимизации загрузки процессора при выполнении процессов ввода-вывода функции управления распределяются на несколько устройств: процессор, главный контроллер (канал) вводавывода, контроллер ПУ и блок управления ПУ. Главный контроллер и контроллеры различного типа ПУ вместе с соответствующим программным обеспечением образуют Систему ввода-вывода. Процессор, главный контроллер, контроллеры ПУ находятся в системном блоке, а блок управления ПУ – в самом периферийном устройстве, в ряде случаев контроллер ПУ может находиться в самом ПУ. Такое распределение позволяет оптимизировать загрузку каждого вида устройств присущими ему функциями при мультипрограммном режиме работы компьютера. Это происходит за счет совмещения во времени работы различных по функциям устройств. Функциональная схема передачи информации в компьютере показана на рис.2.
Интерфейс периферийных устройств
Системная шина
Центральный Процессор
Система Ввода-вывода Главный контроллер
Контроллер интерфейса
(канал) ввода-вывода
Процессор
2
Схема
Периферийные
ввода-вывода (ПУ) 3
управления
Схема
устройства 8
Схема
управления
управления
4 Оперативное Запоминающее Устройство
Вектор
1 5
прерывания
Драйвер
Регистр состояния
6
Регистр управления
7
Регистр управления
9
9
10
10
Регистр состояния
Регистр управления
6 10
Данные
8
Регистр состояния
Регистр данных
I
10
II
Регистр данных
III
Регистр данных
IV
Системный блок 1. Состояние главного контроллера 2. Команда ввода-вывода 3. Адрес контроллера ввода-вывода 4. Состояние контроллера ввода-вывода 5. Адрес вектора прерывания
6. Команда драйвера 7. Команда главного контроллера 8. Состояние периферийных устройств 9. Приказ периферийному устройству выполнение операции ввода-вывода 10. Выполнение операции ввода-вывода
на
Рис. 2. Функциональная схема организации передачи информации в компьютере Операцию ввода-вывода начинает процессор, выдавая в главный контроллер ввода-вывода соответствующую команду (2). Предварительно, с помощью слова состояния канала, процессор должен убедиться, что он готов к работе (1). Канал приступает к управлению вводом-выводом с помощью специальной программы канала. После чего процессор отключается от процесса ввода-вывода и функции управления принимает на себя канал.
Канал, после анализа слова состояния (4) соответствующего контроллера о его готовности, передает ему управляющий приказ (команду канала) (6,7) и может переходить к работе с контроллером другого ПУ. Контроллер ПУ принимает эстафету управления вводом-выводом, формирует и передает в блок управления ПУ необходимый управляющий код (сигнал) (8,9), получив который
ПУ
преступает к процессу передачи данных (10). Как следует из рассмотрения, каждый уровень управления вводом-выводом
должен иметь
регистры управления, состояния и данных для реализации своих действий по передаче информации. При реализации такой многоуровневой системы управления вводом-выводом
для связи
устройств между собой используется два вида интерфейсов: системные интерфейсы (внутренние) для взаимосвязи модулей в системном блоке и внешние интерфейсы ПУ (интерфейс периферийных устройств) для подсоединения ПУ к системному блоку (см. рис.2).
ИНТЕРФЕЙСЫ. ОСНОВНЫЕ ПОНЯТИЯ И ОПРЕДЕЛЕНИЯ Вычислительная машина содержит помимо процессора (процессоров) и основной памяти, образующих принципам
ее
ядро,
многочисленные и
разнообразные по выполняемым функциям и
действия периферийные устройства (ПУ), предназначенные для хранения больших
бъемов информации (внешние запоминающие устройства) и для ввода в ЭВМ и вывода из нее информации, в том числе для ее регистрации и отображения (устройства ввода-вывода). Передача информации с периферийного
устройства
операцией ввода, а
из
передача
в
ядро
ЭВМ (память или процессор) называется
ядра ЭВМ в периферийное устройство - операцией вывода.
Производительность и эффективность использования ЭВМ определяется не только возможностями ее
процессора
и характеристиками основной памяти, но в очень большой степени составом ее
ПУ, их техническими данными и способом организации их совместной работы с ядром (процессором и основной памятью) ЭВМ. Связь устройств ЭВМ друг с другом осуществляется с помощью сопряжений, которые в вычислительной технике представляет собой совокупность линий и предназначенную для осуществления
обмена
разработке
интерфейсами. Интерфейс -
шин, сигналов, электронных схем и алгоритмов,
характеристик интерфейсов во многом зависят вычислительной машины. При
называются информацией
между
производительность
систем
ввода-вывода
устройствами.
и должны
надежность быть
следующие проблемы. Во-первых, должна быть обеспечена возможность реализации машин с переменным составом оборудования (машин с переменной конфигурацией), в первую очередь с различным набором периферийных устройств, с тем чтобы пользователь мог выбирать состав оборудования (конфигурацию) машины в соответствии с ее назначением, легко дополнять машину новыми устройствами. Во-вторых, для эффективного и высокопроизводительного использования оборудования ЭВМ должны реализовываться параллельная во времени работа процессора над программой и выполнение периферийными устройствами процедур ввода-вывода. В-третьих, необходимо упростить для пользователя и стандартизовать программирование операций ввода-вывода, обеспечит независимость программирования ввода-вывода от особенностей того или иного периферийного устройства. В-четвертых,
необходимо
обеспечить
автоматическое
распознавание и реакцию ядра ЭВМ на многообразие ситуаций, возникающих в ПУ (готовность устройства, отсутствие носителя, различные нарушения нормальной работы и др.).
От
решены
Создание современных средств вычислительной техники связано с задачей объединения в единый комплекс различных блоков ЭВМ, устройств хранения и отображения информации, измерительных приборов, устройств для связи с объектом (УСО), аппаратуры передачи данных и непосредственно ЭВМ. Эта задача возлагается
на унифицированные
системы сопряжения –
интерфейсы. Термин «интерфейс» обычно трактуется как синоним слова «сопряжения»
и
понимается как совокупность схемотехнических средств, обеспечивающих непосредственное взаимодействие составных элементов устройства, системы. Нередко это определение используется для обозначения составных компонентов интерфейса. В одних случаях под интерфейсом понимают программные средства, обеспечивающие взаимодействие программ операционной системы, в других – устройства сопряжения, обеспечивающие взаимосвязь между составными функциональными блоками или устройствами системы. Для акцентирования внимания на комплексном характере интерфейса используются термины «интерфейсная система», «программный
интерфейс»,
«физический интерфейс», «аппаратный интерфейс», и т.п. Под стандартным интерфейсом понимается совокупность унифицированных аппаратных, программных и конструктивных средств, необходимых для реализации взаимодействия различных функциональных элементов в автоматических системах сбора и обработки информации при условиях,
предписанных
стандартом
и
направленных
на
обеспечение
информационной,
электрической и конструктивной совместимости указанных элементов. Структурная схема интерфейса показана на рис 1.
ФБ
ИБ
ФБ
УБ
ФБ
ИБ
К
ИБ
Интерфейс
Рис.1. Структурная схема интерфейса: ФБ – функциональный блок, К – контроллер, УБ – управляющий блок, ИБ – интерфейсный блок Средства интерфейса обеспечивают совместную работу независимых разнородных функциональных блоков системы. Условно ИБ можно разделить на две части: часть, обращенная к ФБ и учитывающая его специфику, и часть, поддерживающая взаимодействие с другими устройствами в рамках требований интерфейса.
Проектирование интерфейсов выполняется на основе четырех основных взаимосвязанных принципов: группового, агрегатирования, унификации, взаимозаменяемости. Принцип
группового
проектирования
заключается
в
создании
ряда
(семейства)
функционального и конструктивно подобранных устройств(модулей, систем) определенного назначения, соответствующих разнообразным условиям их использования. Основная задача группового проектирования – достижение максимальной универсальности и совместимости ЭВМ, вычислительных
комплексов
(ВК)
внутри
проектируемого
ряда.
Примером
использования принципа группового проецирования являются разработки IBM
эффективного РС – техники,
Macintosh Apple . Принцип агрегатирования (модульного построения) состоит в рациональном разделении системы, устройства на совокупность более простых функционально и конструктивно законченных блоков (модулей) с целью совершенствования их технических характеристик, а также обеспечения высокопроизводительных способов производства и обслуживания. Принцип унификации заключается в минимизации номенклатуры составных узлов, блоков устройства, модулей связей между ними при условии рациональной компоновки и эффективного функционирования устройства или системы. Интерфейс можно рассматривать как практический пример унификации связей и устройств составных элементов ЭВМ и систем. Принцип взаимозаменяемости основывается на способности модуля выполнять в устройстве различные
установочные
функции
без
дополнительной
конструкторской
доработки.
Взаимозаменяемость является следствием процесса унификации. Эта характеристика определяет степень универсальности устройства. Эффективное использование рассмотренных принципов проектирования при разработке и внедрении интерфейсов и устройств сопряжения позволяет: организовать крупносерийное производство; повысить качество; сократить сроки изготовления; снизить стоимость производства, отладки и эксплуатации; осуществить преемственность технических решений и удлинить сроки морального старения средств ВТ. Основным назначением интерфейса является унификация внутрисистемных и межсистемных связей и устройств сопряжения с целью эффективной реализации прогрессивных методов проектирования функциональных элементов вычислительных систем.
Качество стандарта на интерфейс может быть оценено соотношением, устанавливаемым между ограничениями на реализацию интерфейса и устройств сопряжения и возможностями варьирования тех или иных технических характеристик интерфейса с целью наиболее эффективного приспособления его к конкретной системе. Слишком жесткая регламентация условий совместимости ограничивает область применения интерфейса или же вызывает неоптимальное его использование. Однако при этом упрощается задача проектирования устройств сопряжения. В противоположном случае увеличивается вероятность несовместимости интерфейсного оборудования, разрабатываемого различными производителями. Жесткая зависимость интерфейсов от архитектурных особенностей ЭВМ является одной из
причин, препятствующих унификации многочисленных модификаций интерфейсов. Однако на определенном этапе развития технологии тенденция сохранения интерфейса снижает эффективность использования средств ВТ и возможность внедрения новых принципов построения ЭВМ и систем на их основе. Опыт показывает, что унификация и стандартизация наиболее широко применяемых интерфейсов дают значительный экономический эффект. Этот
эффект
достигается
в
сфере
производства (сокращение номенклатуры изделий, увеличение объемов партий изделий и пр.), при проектировании и эксплуатации систем. Современные темпы развития микроэлектронной технологии, а также тенденции и практика построения микропроцессорных систем в настоящее время определили следующие направления развития интерфейсов: 1. Дальнейшее повышение уровня унификации интерфейсного оборудования и стандартизации условий совместимости существующих наиболее распространенных интерфейсов на основе обобщения опыта их широкого использования. Это совершенствование направлено на создание новых стандартных интерфейсов или на повышение уровня стандартизации существующих. 2. Модернизация и расширение функциональных возможностей существующих интерфейсов без нарушения условий совместимости благодаря новейшим достижениям в микроэлектронной технологии и технологии разработки средств передачи информации. Основная цель этого направления—удлинение сроков морального старения стандартных интерфейсов и расширение области их применения. 3. Создание принципиально новых интерфейсов и разработка требований на их унификацию и стандартизацию. Эта тенденция обусловлена в первую очередь разработкой систем с параллельной распределенной обработкой информации на основе качественно новых принципов организации вычислительного процесса, а также интегрированных распределенных систем.
КЛАССИФИКАЦИЯ ИНТЕРФЕЙСОВ В настоящее время не существует достаточно полной объективной классификации интерфейсов. Имеющиеся классификации основываются, как правило, на одном классификационном признаке или же строятся для одного класса интерфейсов. Определенным обобщением этих классификаций является стандарт на классификационные признаки интерфейсов (ГОСТ 26.016-81), включающий четыре признака классификации: -
способ соединения компонентов системы (магистральный, радиальный, цепочечный,
смешанный); При магистральном способе имеются коллективные шины, к которым устройства системы. Характерно,
подключены
все
что сигналы шины доступны всем устройствам, но в каждый
момент времени только два устройства могут обмениваться данными (1:1). Возможны также широковещательные операции (1:М). В системе с радиальной структурой имеется центральное устройство (контроллер или концентратор), связанный с каждым из абонентов индивидуальной группой однонаправленных линий. При цепочечной структуре каждое устройство связано не более чем с двумя другими. Частным случаем цепочечной структуры является кольцевая. -
способ
передачи
информации
(параллельный,
последовательный,
параллельно-
последовательный); -
принцип обмена информацией (асинхронный, синхронный);
-
режим
обмена
информацией
(симплексный;
полудуплексный;
дуплексный
и
мультиплексный режим обмена). Для случая связи двух абонентов в симплексном режиме лишь один из двух абонентов может инициировать в любой момент времени передачу информации по интерфейсу Для случая связи двух абонентов в полудуплексном режиме любой абонент может начать передачу информации другому, если линия связи интерфейса при этом оказывается свободной. Для случая связи двух абонентов в дуплексном режиме каждый абонент может начать передачу информации другому в произвольный момент времени. В случае связи нескольких абонентов в мультиплексном режиме в каждый момент времени связь может быть осуществлена между парой абонентов в любом, но единственном направлении от одного из абонентов к другому. Указанные признаки позволяют характеризовать только определенные аспекты организации интерфейсов. Более полная характеристика и систематизация интерфейсов могут быть выполнены при условии классификации по нескольким совокупностям признаков: -
области распространения (функциональному назначению);
-
логической и функциональной организации;
-
физической реализации.
В соответствии с первой совокупностью признаков интерфейсы можно разделить на следующие основные классы: -
машинные (или системные);
-
периферийного оборудования;
-
мультимикропроцессорных систем;
-
распределенных ВС (вычислительных локальных сетей, распределенных систем
управления). Машинные
интерфейсы
предназначены
для
организации
связей
между
составными
компонентами ЭВМ, ВК, ВС, т. е. непосредственно для их построения и связи с внешней средой. Интерфейсы периферийного оборудования выполняют функции сопряжения процессоров, контроллеров с УВВ, измерительными приборами, исполнительными механизмами, аппаратурой передачи данных (АПД) и внешними запоминающими устройствами (ВЗУ). Интерфейсы периферийного оборудования представляют самый большой класс систем сопряжения, что объясняется широкой номенклатурой и разнообразием периферийного оборудования. По своему функциональному назначению эти интерфейсы могут быть разделены на группы интерфейсов радиальной структуры (обеспечивающие схему сопряжения «точка-точка») и магистральной структуры (обеспечивающие схему «многоточечного» подключения). Системы сопряжения первой группы составляют в основном так называемые малые интерфейсы,
применяемые
для
сопряжения
исполнительных
механизмов
ввода-вывода
с
контроллерами. К этим интерфейсам относятся: системы сопряжения с параллельной передачей информации, предназначенные для подключения стандартной периферии, системы сопряжения для подключения устройств, размещенных на большом удалении друг от друга. Интерфейсы
второй
группы
используются
как
самостоятельно,
так
и
в
качестве
системотехнического дополнения, расширяющего функциональные возможности ЭВМ на уровне связи с объектом управления. К ним относятся магистральные интерфейсы программно-модульных систем типов IEC 625-1. Эти интерфейсы обеспечивают сопряжение программируемых контроллеров и ЭВМ с широким спектром цифровых измерительных приборов, преобразователей информации, генераторов, датчиков,
пультов
оператора. В
вычислительных
системах
к
такого
рода
интерфейсам относятся SCSI, USB. Интерфейсы
мультимикропроцессорных
систем
представляют
собой
в
основном
магистральные системы сопряжения, ориентированные на объединение в единый комплекс нескольких процессоров, модулей оперативных запоминающих
устройств
(ОЗУ),
контроллеров
ВЗУ, ограниченно размещенных в пространстве. В группу интерфейсов мультимикропроцессорных систем входят в основном внутриблочные, процессорно -независимые системы сопряжения. Характерным их отличием от обычных
магистральных интерфейсов
является техническая
реализация функций селекции и координации, что позволяет подключать к ним один или несколько процессоров как обычные УВВ. Этот класс интерфейсов отличают высокая пропускная способность и минимальное время доступа процессора к общей ОЗУ. Данный класс систем сопряжения может быть разделен на две крупные группы в соответствии со структурой шин адреса и данных: с раздельными и мультиплексными шинами. Как правило, эти интерфейсы представляют собой внутриблочную систему сопряжения магистральной структуры с высокой пропускной способностью. Интерфейсы
распределенных
ВС
предназначены
информации, размещенных на значительном расстоянии
для
интеграции
средств
обработки
и ориентированы на использование в
системах различного функционального назначения. Обычно это системы сопряжения с бит последовательной передачей информации магистральной или кольцевой структуры. Этот класс интерфейсов в зависимости от назначения разделяется на группы интерфейсов: -
локальных сетей (с длиной магистрали от десятков метров до нескольких километров);
-
распределенных систем управления;
-
территориально и географически распределенных сетей ЭВМ (с длиной линии более
десяти километров). По конструктивному исполнению интерфейс могут быть разделены на четыре категории: -
межблочные, обеспечивающие взаимодействие компонентов на уровне прибора,
автономного устройства, блока, стойки, шкафа: -
внутриблочные, обеспечивающие взаимодействие на уровне плат, субблоков;
-
внутриплатные, обеспечивающие взаимосвязь между интегральными схемами (СИС,
БИС, СБИС) на печатной плате; -
внутрикорпусные, обеспечивающие взаимодействие компонентов внутри СБИС. Межблочное сопряжение реализуется на уровне следующих конструктивных средств:
коаксиального
и
оптоволоконного
кабеля;
многожильного
плоского
кабеля
(шлейфа);
многожильного кабеля на основе витой пары проводов. Внутриблочное сопряжение печатных плат, субблоков выполняется печатным способом или накруткой витой парой проводов внутри блока, стойки, шкафа. Ряд интерфейсов может быть реализован комбинацией внутри-блочного и межблочного
исполнений.
Внутриплатное
сопряжение
внутрикорпусное — методами микроэлектронной технологии.
реализуется
печатным
способом,
СТРУКТУРНАЯ ОРГАНИЗАЦИЯ ИНТЕРФЕЙСОВ Составными физическими элементами связей интерфейса являются электрические цепи, называемые линиями интерфейса. Различают одно- и двунаправленные линии. Если на линии работает только один передатчик, линия считается однонаправленной, в этом случае используется традиционное схемотехническое решение приемопередающих
узлов – один источник сигнала
подключен к нескольким приемникам. В случае двунаправленных линий количество передающих устройств на линии больше одного, и это требует применения в передающих устройствах специальных решений – выходные каскады с высокоимпедансным состоянием (т. н. «третье» состояние), с открытым коллектором, с открытым стоком. При этом средства управления интерфейсом должны «регулировать» активность передающих устройств таким образом, чтобы в каждый момент времени передачу вело только одно устройство. Часть линий, сгруппированных по функциональному назначению, называется шиной, а вся совокупность линий—магистралью, В системе шин интерфейсов условно можно выделить две магистрали: информационного канала и управления информационным каналом. По информационной магистрали передаются коды данных, адресов, команд и состояний устройств. Аналогичные наименования присваиваются соответствующим шинам интерфейса. Коды данных представляют информацию о процессах, протекающих в ВС. Обычно в машинных интерфейсах используется двоичное кодирование в формате машинного кода. Линии ШД обычно нумеруются DATXX, где ХХ – двоичный вес линии. Т.е. по линии DAT00 передается младший разряд машинного слова, по линии DAT01 – разряд с весом 2**1 и т.д. Коды адресов предназначены для выборки в магистрали устройств, узлов устройства, ячеек памяти. Обычно для адресации используется позиционный двоичный код (двоичный номер объекта), однако нередко применяется и кодирование, при котором каждому устройству выделяется отдельная линия адреса. Примером реализации такой системы адресации является интерфейс КАМАК Коды команд используются для управления функционированием устройств и обеспечения сопряжения между ними. В стандартах на интерфейс регламентируется минимально необходимый набор команд, который может быть расширен пользователем за счет резервных полей в кодах. По функциональному назначению различают адресные команды управления обменом информации между
устройствами,
команды
изменения
состояния
и
режимов
работы.
К
наиболее
распространенным командам относятся: «Чтение», «Запись», «Конец передачи», «Запуск». Коды состояния представляют собой сообщения, описывающие состояния устройств сопряжения. Коды формируются в ответ на действия команд или являются отображением состояний функционирования устройства, таких как «Занятость устройства», «Наличие ошибки», «Готовность устройства» к приему или передаче информации и т. п.
В большинстве случаев коды данных, адресов, команд и состояний передаются по шинам интерфейса с разделением времени за счет мультиплексирования шин. Это достигается введением дополнительных линий для обозначения типа передаваемой информации, называемых линиями идентификации.
Их
применение
позволяет
существенно
сократить
общее
число
линий
информационной магистрали интерфейса, однако при этом происходит снижение быстродействия передачи информации. Магистраль
управления
информационным
каналом
по
своему
функциональному
назначению делится на ряд шин: -
управления обменом,
-
передачи управления,
-
прерывания,
-
специальных управляющих сигналов.
Шина управления обменом включает в себя линии синхронизации передачи информации. В зависимости от принятого принципа обмена (асинхронного, синхронного) число линий может изменяться от одной до трех. Асинхронная передача происходит при условии подтверждения приемником готовности к приему и завершается подтверждением о приеме данных. При синхронной передаче темп выдачи и приема данных задается регулярной последовательностью сигналов. Линии шины управления обменом в случае двунаправленной информационной магистрали выполняются, как правило, двунаправленными. Шина
передачи управления выполняет операции
приоритетного занятия магистрали
информационного канала. Наличие этой шины определяется тем, что взаимодействие в большинстве интерфейсов выполняется по принципу «ведущий-ведомый» («задатчик-исполнитель»), при котором «ведущее» устройство может брать управление шиной на себя в определенные моменты времени. При наличии в системе нескольких устройств, способных выполнять функции «ведущего», возникает проблема приоритетного распределения ресурсов шины (арбитража). Состав и конфигурация линий этой шины зависят от структуры управления интерфейсом. Различают децентрализованную и централизованную структуры. В интерфейсах, предназначенных для объединения только двух устройств (соединение типа «точка-точка»), шина передачи управления отсутствует. Шина прерывания применяется в основном в машинных интерфейсах ЭВМ и программномодульных систем. Основная ее функция — идентификация устройства, запрашивающего сеанс обмена информацией. Идентификация состоит в определении контроллером (процессором) исходной информации о запрашиваемом устройстве. В качестве информации об устройстве используется адрес источника прерывания либо адрес программы обслуживания прерывания (вектор прерывания). Шина специальных управляющих сигналов включает в себя линии, предназначенные для обеспечения работоспособности и повышения надежности устройств интерфейса. К этим линиям относятся: линии питания, контроля источника питания, тактирующих импульсов, защиты памяти, общего сброса, контроля информации и т. п.
В соответствии с существующим стандартом структуры связей интерфейсов подразделяются на следующие классы: магистральную; радиальную; цепочечную и смешанную (комбинированную). Тем не менее такое разделение не позволяет дать детального представления о пространственном размещении функциональных устройств и устройств сопряжения, а также о возможностях взаимосвязи этих устройств, т. е. их связности. Связность линии определяет возможность двустороннего или одностороннего направления передачи сигналов, т. е. передачи в прямом и обратном направлениях. Для однонаправленных линий связи возрастает пропускная способность информационной магистрали, упрощаются приемопередающие элементы и улучшается согласование линий. Однако применение однонаправленных линий приводит к увеличению общего числа линий.
ФУНКЦИЯ СИНХРОНИЗАЦИИ Синхронизация определяет согласование процессов взаимодействия между функциональными устройствами системы. Рассмотрим особенности выполнения процессов взаимодействия составных элементов системы. Два или более процесса являются синхронными, если смены состояний этих процессов взаимонезависимы и
выполняются через
одинаковые фиксированные
интервалы времени.
Взаимодействие функциональных устройств при этом рассматривается как совокупность процессов передачи информации источником и приема этой информации одним или несколькими приемниками. Синхронизация процесса взаимодействия заключается в том, что интервал времени смены состояния процесса передачи заведомо не может быть меньше самого длительного интервала времени изменения состояния процесса приема. Два или более процесса являются асинхронными, если смены состояний этих процессов взаимозависимы, а время изменения состояния одного процесса определяется временем смены состояния другого процесса. При асинхронном взаимодействии между процессами передачи и приема существует отношение предшествования. Асинхронный принцип не означает, что синхронизация отсутствует, при асинхронном
принципе период синхронизации является
переменным, а при синхронном этот период постоянен и определяется частотой работы самого медленного устройства. Реализация асинхронных процессов взаимодействия основывается на принципе обратной связи, которая может быть однопроводной и двухпроводной. Процессы взаимодействия интерфейсных блоков
образуют
иерархическую
структуру.
Уровни
иерархии
процессов
взаимодействия
соответствуют иерархии структурных элементов информации, передаваемой между устройствами системы. Процессам взаимодействия различных уровней иерархии соответствуют различные операции синхронизации. Можно выделить три процесса синхронизации передачи: битов слова, слов и массивов слов. Синхронизация битов слова выполняется при параллельной передаче многоразрядных кодов. Ее необходимость обусловливается переходными процессами установления сигналов в линиях информационного канала из-за разброса параметрических характеристик приемопередающих элементов линий связи. Если известен разброс времени переходного процесса установления сигнала в одной линии информационной шины, то совокупность переходных процессов в каждой линии процесса передачи слова информации по отношению к процессу приема можно представить как совокупность
детерминированных
процессов.
Процесс
приема
передаваемого
слова
синхронизируется специальным стробирующим сигналом от источника данных или приемника, выдаваемым с фиксированной задержкой по отношению к моменту выдачи всех разрядов кода слова. Время задержки τ = max{ t1,t1} - min{ t1,t1}
где
{t1,t1} — длительность переходного процесса формирования синхронизирующего импульса
(строба) определяется источником информации или
внутренним
тактирующим генератором
приемника (рис. 1). max{ t1,t1}
ШД 00
ШД 01
ШД N
СИ
min{ t1,t1}
Рис. 1. Временная диаграмма синхронизации передачи битов слова: СИ – синхронизация источника. ШД
СИ
Рис. 2. Временная диаграмма синхронизации передачи слов без обратной связи: ШД — шина данных; СИ — синхронизация источника
Синхронизация передачи слова определяет такие технические характеристики интерфейса, как возможность взаимодействия одного источника с несколькими приемниками, максимальная скорость передачи и допускаемая длина линий связи. На этом уровне используются два основных способа синхронизации передачи: без обратной связи и с обратной связью (рис. 2, 3). Схема синхронизации без обратной связи выполняется на основе одного общего или отдельных тактирующих генераторов высокой стабильности. Необходимым условием реализации способа является наличие отдельной линии стробирования. Способ используется в основном в последовательных интерфейсах с побитным принципом передачи. Основной недостаток синхронного способа заключается в том, что скорость выдачи данных источником не может быть больше скорости приема этих данных самым медленнодействующим приемником. Этот недостаток может быть исключен благодаря применению в интерфейсных блоках модульных буферных ЗУ, например, со стековым механизмом записи и считывания. Способы технической реализации обратной связи в схемах синхронизации можно разделить: по характеру сигналов стробирования и обратной связи на импульсные (рис. 2, а) и потенциальные (рис. 2,б,в); по числу контуров обратной связи на однопроводные (рис. 2,а,б), двухпроводные (рис. 2,в).
Рис. 3. Временные диаграммы синхронизации передачи слов с обратной связью: СИ — синхронизация источника; ГП — готовность приемника; ДП — данные; приняты; ШД — шина
данных;
Применение обратной связи позволяет гибко адаптироваться к изменению скорости передачи информации и наиболее полно использовать пропускную способность информационного канала,
который в асинхронном режиме функционирует с быстродействием, максимальным для каждого устройства системы. Основными недостатками асинхронного способа по сравнению с синхронным являются в ряде случаев более низкая скорость передачи и необходимость введения дополнительных линий обратной связи. Важным качеством синхронизации с обратной связью является возможность одновременной передачи информации от одного источника к нескольким приемникам. Число необходимых линий синхронизации для выполнения данной функции зависит от наличия в устройствах интерфейса буферных регистров. При их наличии достаточна однопроводная обратная связь. При отсутствии буферных регистров используется двухпроводная обратная связь. Сигнал на второй линии обратной связи (в данном случае сигнал ДП) выполняет функции сигнализации окончания приема слова данных и формируется аналогично сигналу на линии обратной связи для однопроводного варианта. Подобный способ синхронизации принят в интерфейсе IEC 625-1. Синхронизация передачи массива слов является процессом синхронизации верхнего уровня. Процессы
передачи
массива
могут
быть
детерминированными
или
стохастическими.
К
детерминированным относятся процессы передачи массива слов фиксированной длины (от одного до нескольких тысяч слов за сеанс связи), к стохастическим— переменной длины. В первом случае используется синхронный принцип сигнализации окончания процесса взаимодействия, во втором — асинхронный.
СЕЛЕКЦИЯ ИНФОРМАЦИОННОГО КАНАЛА Селекция, или арбитраж, информационного канала обеспечивает однозначность выполнения процессов взаимодействия сопрягаемых элементов системы посредством приоритетного разрешения внутриорганизационных конфликтов. Наличие конфликтов при доступе к информационному каналу является следствием взаимодействия параллельных процессов, протекающих в системе обработки информации. При взаимодействии устройств, функционирующих параллельно во времени с общим информационным каналом, возможны конфликты двух уровней: при доступе устройства к информационному каналу интерфейса, при доступе одного устройства к другому. Первый уровень определяется занятостью информационного канала, и конфликт разрешается функцией селекции, второй—занятостью устройства, к которому происходит обращение, и конфликт разрешается при координации взаимодействия. Управление операциями селекции может выполняться
как централизованно, так и
децентрализованно. Основным признаком централизованной структуры управления селекцией является в большинстве случаев наличие разомкнутых линий шин передачи управления и прерывания, а также отдельного функционального узла управления операциями селекции— арбитра. В децентрализованной структуре соответствующие линии являются двунаправленными или же замкнутыми однонаправленными, а схема арбитра симметрично распределена по устройствам сопряжения. Рассмотрим способы централизованной селекции информационной магистрали. На рис. 1,а показан вариант пространственной селекции на основе последовательного адресного сканирования источников запроса. Выбор источника запроса начинается по общему сигналу запроса и выполняется последовательной кодовой адресацией всех подключаемых устройств в соответствии с принятой дисциплиной обслуживания. При обнаружении источника запроса устанавливается сигнал «Занято» и дальнейшая выдача адресов прекращается.
Запрос
К
Подтверждение
а)
Адрес
ИБ
ИБ
Запрос
К
Занято
б)
ИБ Подтверждение
ИБ
Занято
К
Подтверждение N Запрос N
Подтверждение 1
Запрос 1
в)
ИБ
ИБ
Рис. 1.2. Схемы селекции магистрали централизованной структуры: К — контроллер; ИБ — интерфейсный блок
Основным достоинством этого способа селекции является гибкость в реализации дисциплин обслуживания. Практически при использовании программируемой генерации адресов на основе данного способа можно реализовать любую дисциплину обслуживания. Основным недостатком является низкое быстродействие. Схема
последовательной
(цепочечной) селекции, представленная
на рис.
1,б, широко
распространена в машинных интерфейсах как наиболее простая и достаточно быстродействующая. Поиск источника запроса начинается по сигналу «Запрос». Идентификация наиболее приоритетного устройства выполняется сигналом «Подтверждение», который последовательно проходит через все устройства. Приоритетным в данном случае будет устройство, наиболее близко расположенное к контроллеру. При поступлении сигнала «Подтверждение» в устройство (источник запроса) дальнейшее его прохождение блокируется и устройством выставляется сигнал «Занято». Основными преимуществами последовательного соединения интерфейсных блоков является простота реализации и высокое быстродействие по сравнению с адресным сканированием. Основным недостатком схем селекции на основе последовательного соединения является низкая надежность, в особенности при увеличении длины интерфейсных связей. Поэтому последовательное соединение находит основное применение во внутриблочных интерфейсах. Аналогично цепочечной схеме функционирует и схема селекции по выделенным линиям (рис. 1.2,в). Отличие ее от предыдущей заключается в том, что общие линии «Запрос» и «Подтверждение» заменяются системой радиальных линий. Максимальное время занятия информационной магистрали для этого варианта будет меньше, чем для цепочечной структуры, так как сигналы по шинам запроса и подтверждения могут передаваться параллельно. Данный способ характеризуется также гибкостью установления дисциплины обслуживания, поскольку контроллер с помощью масок может установить
произвольный приоритет и порядок опроса. Однако это достигается за счет существенного увеличения числа линий и усложнения схемотехнического оборудования. Для данного метода характерно ограничение по числу подключаемых устройств (низкая наращиваемость). Подобный способ селекции используется в IBM РC – подобной технике. Основные варианты реализации схем селекции децентрализованной структуры представлены на рис. 2.
Запрос
К
Подтверждение
а)
Адрес
ИБ
ИБ
Запрос
К
Занято
б)
ИБ
ИБ
Подтверждение
Рис. 2. Схема селекции магистрали децентрализованной структуры. Характерным признаком децентрализованной
селекции является наличие замкнутых линий
запроса и подтверждения. На рис. 1.3,а показан вариант децентрализованной цепочечной структуры, которая может быть получена из централизованной исключением линии «Занято» и замыканием общей линии «Запрос» с линией «Подтверждение». Необходимым условием установления запроса любым устройством является отсутствие входного сигнала подтверждения. При выдаче запроса этот сигнал «дизъюнктивно» формируется на линии и трансформируется в сигнал «Подтверждение», который будет проходить до устройства, выставившего запрос и находящегося наиболее близко по отношению к точке замыкания. На рис. 1.3,б показан вариант кольцевой децентрализованной схемы селекции. В варианте используется одна линия, определяющая состояние занятости информационного канала по циркуляции в линии маркерного импульса или серии импульсов. Устройство, запрашивающее шину,
не пропускает маркер к следующему устройству, и, таким образом, циркуляция импульсов прекращается. Способ широко распространен в интерфейсах локальных сетей. Основным недостатком способа является низкая помехоустойчивость. Одним из наиболее перспективных способов селекции для магистральных систем сопряжения является способ параллельного адресного сравнения или же децентрализованного кодового управления (ДКУ), структурная схема которого представлена на рис. 1.3,в. Сущность алгоритма ДКУ заключается в параллельном выделении приоритетного кода запроса посредством поразрядного сравнения кодов приоритета в асинхронном режиме одновременно во всех устройствах интерфейса, выставивших запросы. Такое решение использовано, например, в интерфейсных системах Multibus II и Fastbus. Анализ возможных вариантов реализации способов селекции устройств на информационной магистрали позволяет выделить следующие операции селекции: инициирование запроса, выделение приоритетного запроса, идентификация запроса. Идентификация запроса заключается в определении адреса приоритетного источника запроса. Операция выдачи приоритетного кода в зависимости от способа выделения приоритетного запроса выполняется параллельно с операцией выделения приоритетного кода (параллельное сравнение) или же последовательно (в структурах с цепочечным соединением устройств интерфейса). Адреса в интерфейсах могут быть заданы позиционным двоичным или унитарным кодом и передаваться по адресной или информационной шине.
ПАРАЛЛЕЛЬНЫЕ ИНТЕРФЕЙСЫ: CENTRONICS Параллельные интерфейсы характеризуются тем, что в них для передачи бит в слове используются отдельные сигнальные линии, и биты передаются одновременно. Параллельные интерфейсы, как правило, используют логические уровни ТТЛ (транзисторно-транзисторной логики), что ограничивает длину кабеля из-за невысокой помехозащищенности ТТЛ-интерфейса. Гальваническая развязка отсутствует. Для подключения принтера по интерфейсу Centronics в PC параллельного интерфейса - так возникло
был введен порт
название LPT-порт (Line PrinTer - построчный
принтер). Хотя сейчас через этот порт подключаются не только построчные принтеры, название "LPT" осталось. Понятие Centronics относится как к набору сигналов и протоколу взаимодействия, так и к 36-контактному разъему на принтерах. Назначение сигналов приведено в табл., а временные диаграммы обмена с принтером - на рис. 1. Сигнал
I/O*
Strobe#
I
Data [0:7]
I
Ack#
0
Busy
0
PaperEnd #
О
Select #
О
AutoLF#
I
Error#
О
Init#
I
Select# GND
-
Назначение Строб данных. Данные фиксируются по низкому уровню сигнала Линии данных. Data 0 - младший бит Acknowledge - импульс подтверждения приема байта (запрос на прием следующего). Может использоваться для формирования запроса прерывания Занято. Прием данных возможен только при низком уровне сигнала Высокий уровень сигнализирует о конце бумаги Сигнализирует о включении принтера (обычно в принтере соединяется резистором с цепью +5 В) Автоматический перевод строки. При низком уровне принтер, получив символ CR (Carriage Return - возврат каретки), автоматически выполняет и функцию LF (Line Feed - перевод строки) Ошибка: конец бумаги, состояние OFF-Line или внутренняя ошибка принтера Инициализация (сброс в режим параметров умолчания, возврат к началу строки) Выбор принтера (низким уровнем).При высоком уровне принтер не воспринимает остальные сигналы интерфейса Общий провод интерфейса
Традиционный порт SPP (Standard Parallel Port) является однонаправленным портом, через который программно реализуется протокол обмена Centronics. Порт вырабатывает аппаратное прерывание по импульсу на входе Ack#. Сигналы порта выводятся на разъем DB-25S (розетка), установленный непосредственно на плате адаптера (или системной плате) или соединяемый с ней плоским шлейфом.
Рис. 1. Передача данных по протоколу Centronics Адаптер параллельного интерфейса представляет собой набор регистров, расположенных в пространстве ввода/вывода. Регистры порта адресуются относительно базового адреса порта, стандартными значениями которого являются 3BCh, 378h и 278h. Порт может использовать линию запроса аппаратного прерывания, обычно IRQ7 или IRQ5.Порт имеет внешнюю 8-битную шину данных, 5-битную шину сигналов состояния и 4-битную шину управляющих сигналов, BIOS поддерживает до четырех LPT-портов (LPT1-LPT4) своим сервисом - прерыванием INT 17h, обеспечивающим через них связь с принтером по интерфейсу Centronics. Этим сервисом BIOS осуществляет вывод символа (по опросу готовности, не используя аппаратных прерываний), инициализацию интерфейса и принтера, а также опрос состояния принтера. Стандартный порт имеет три 8-битных регистра, расположенных по соседним адресам в пространстве ввода/вывода, начиная с базового адреса порта (BASE). Data Register (DR) - регистр данных. Данные, записанные в этот порт, выводятся на выходные линии интерфейса. Status Register (SR) - регистр состояния; представляет собой 5-битный порт ввода сигналов интерфейса, отображающих состояние принтера (Busy, Ack, Paper End, Select, Error). Control Register (CR) - регистр управления. Предназначен
для
программного управления
принтером путем активизации линий Select, Init, AutoLF, Strobe# , задания режима прерывания и направления передачи данных Процедура вывода байта по интерфейсу Centronics включает следующие шаги (в скобках приведено требуемое количество шинных операций процессора): - Вывод байта в регистр данных (1 цикл IOWR#). - Ввод из регистра состояния и проверка готовности устройства (бит SR. 7 - сигнал Busy). Этот шаг зацикливается до получения готовности или до срабатывания программного тайм-аута (минимум 1 цикл IORD#). - По получении готовности выводом в регистр управления устанавливается строб данных, а следующим выводом строб снимается (2 цикла IOWR#).
Видно, что для вывода одного байта требуется 4-5 операций ввода/вывода с регистрами порта (в лучшем случае, когда готовность обнаружена по первому чтению регистра состояния). Отсюда вытекает главный недостаток вывода через
стандартный порт - невысокая скорость
обмена при значительной загрузке процессора. Порт может обеспечить скорость не более 100-150 Кбайт/с при полной загрузке процессора, что недостаточно, например, для печати на лазерном принтере. Стандартный порт асимметричен - при наличии 12 линий, нормально работающих на вывод, на ввод работают
только 5 линий состояния. Если необходима симметричная
двунаправленная связь, на всех стандартных портах работоспособен режим полубайтного обмена Nibble Mode. В этом режиме одновременно передаются 4 бита данных, пятая линия используется для квитирования. Таким образом, каждый байт передается за два цикла, а каждый цикл требует по крайней мере 5 операций ввода/вывода. Стандарт на параллельный интерфейс IEEE 1284, принятый в 1994 году, определяет 5 режимов обмена данными, метод согласования режима, физический и электрический интерфейсы. Согласно IEEE 1284, возможны следующие режимы обмена данными через параллельный порт: -
Режим совместимости (Compatibility Mode) - однонаправленный (вывод) по протоколу
Centronics. Этот режим соответствует стандартному порту SPP. - Полубайтный режим (Nibble Mode) - ввод байта в два цикла (по 4 бита), используя для приема линии состояния. Этот режим обмена может использоваться на любых адаптерах. - Байтный режим (Byte Mode) - ввод байта целиком, используя для приема линии данных. Этот режим работает только на портах, допускающих чтение выходных данных (Bi-Directional или PS/2 Type 1). -
Режим ЕРР (Enhanced Parallel Port) (EPP Mode) - двунаправленный обмен данными.
Управляющие сигналы интерфейса генерируются аппаратно во время цикла обращения к порту. Эффективен при работе с устройствами внешней памяти. Главной отличительной чертой ЕРР является выполнение внешней передачи во время одного процессорного цикла ввода/вывода. Это позволяет достигать высоких скоростей обмена (0,5...2 Мбайт/с). - Режим ЕСР (Extended Capability Port) (ECP Mode) - двунаправленный обмен данными с возможностью аппаратного сжатия данных и использования FIFO-буферов и DMA. Управляющие сигналы интерфейса генерируются аппаратно. Эффективен для принтеров и сканеров. ПУ в стандарте IEEE 1284 обычно не требуют от контроллера реализации всех режимов, предусмотренных стандартом. Для определения режимов и методов управления конкретным устройством стандарт предусматривает последовательность согласования (negotiation sequence). Последовательность построена так, что старые устройства, не рассчитанные на применение IEEE 1284, на нее не ответят, и контроллер останется в стандартном режиме. Периферия IEEE 1284 может сообщить о своих возможностях, и контроллер установит режим, удовлетворяющий и хост, и
ПУ.
ПОСЛЕДОВАТЕЛЬНЫЕ ИНТЕРФЕЙСЫ: RS-232C Последовательный интерфейс для передачи данных использует одну сигнальную линию, по которой информационные биты передаются друг за другом последовательно. В ряде последовательных интерфейсов применяется гальваническая развязка внешних сигналов от схемной земли устройства, что позволяет соединять устройства, находящиеся под разными потенциалами. Последовательная передача данных может осуществляться в асинхронном или синхронном режимах. При асинхронной передаче каждому байту предшествует стартбит, сигнализирующий приемнику о начале посылки, за которым следуют биты данных и, возможно, бит паритета (четности). Завершает посылку стоп-бит, гарантирующий паузу между посылками (рис. 1). Старт-бит следующего байта посылается в любой момент после стоп-бита, то есть между передачами возможны паузы произвольной длительности. Старт-бит, имеющий всегда строго определенное значение (логический 0), обеспечивает простой механизм синхронизации приемника по сигналу от передатчика. Подразумевается, что приемник и передатчик работают на одной скорости обмена. Внутренний генератор синхронизации приемника использует счетчик-делитель опорной частоты, обнуляемый в момент приема начала старт-бита. Этот счетчик генерирует внутренние стробы, по которым приемник фиксирует последующие принимаемые биты. В идеале стробы располагаются в середине битовых интервалов, что позволяет принимать данные и при незначительном рассогласовании скоростей приемника и передатчика. Очевидно, что при передаче 8 бит данных, одного контрольного и одного стоп-бита предельно допустимое рассогласование скоростей, при котором данные будут распознаны верно, не может превышать 5%. С учетом фазовых искажений и дискретности работы внутреннего счетчика синхронизации реально допустимо меньшее отклонение частот. Чем меньше коэффициент деления опорной частоты внутреннего генератора (чем выше частота передачи), тем больше погрешность привязки стробов к середине битового интервала, и требования к согласованности частот становятся более строгими. Чем выше частота передачи, тем больше влияние искажений фронтов на фазу принимаемого сигнала. Взаимодействие этих факторов приводит к повышению требований к согласованности частот приемника и передатчика с ростом частоты обмена.
Рис.1. Формат асинхронной передачи -
-
Формат асинхронной посылки позволяет выявлять возможные ошибки передачи : если принят перепад, сигнализирующий о начале посылки, а по стробу старт-бита зафиксирован уровень логической единицы, старт-бит считается ложным и приемник снова переходит в состояние ожидания. Об этой ошибке приемник может и не сообщать. если во время, отведенное под стоп-бит, обнаружен уровень логического нуля, фиксируется ошибка стоп-бита.
-
если применяется контроль четности, то после посылки бит данных передается контрольный бит. Этот бит дополняет количество единичных бит данных до четного или нечетного в зависимости от принятого соглашения. Прием байта с неверным значением контрольного бита приводит к фиксации ошибки. Контроль формата позволяет обнаруживать обрыв линии: при этом принимается логический нуль, который сначала трактуется как старт-бит, и нулевые биты данных, потом срабатывает контроль стоп-бита. Для асинхронного режима принят ряд стандартных скоростей обмена: 50, 75, 110, 150, 300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600 и 115200 бит/с. Количество бит данных может составлять 5, 6, 7 или 8 (5- и 6-битные форматы распространены незначительно). Количество стоп-бит может быть 1, 1,5 или 2 ("полтора бита" означает только длительность стопового интервала). Синхронный режим передачи предполагает постоянную активность канала связи. Посылка начинается с синхробайта, за которым сразу же следует поток информационных бит. Если у передатчика нет данных для передачи, он заполняет паузу непрерывной посылкой байтов синхронизации. Очевидно, что при передаче больших массивов данных накладные расходы на синхронизацию в данном режиме будут ниже, чем в асинхронном. Однако в синхронном режиме необходима внешняя синхронизация приемника с передатчиком, поскольку даже малое отклонение частот приведет к искажению принимаемых данных. Внешняя синхронизация возможна либо с помощью отдельной линии для передачи сигнала синхронизации, либо с использованием самосинхронизирующего кодирования данных, при котором на стороне приемника из принятого сигнала могут быть выделены импульсы синхронизации. На физическом уровне последовательный интерфейс имеет различные реализации, различающиеся способом передачи электрических сигналов. В большинстве стандартов сигнал представляется потенциалом. Существуют последовательные интерфейсы, где информативен ток, протекающий по общей цепи передатчик-приемник - "токовая петля". Для связи на короткие расстояния приняты стандарты беспроводной инфракрасной связи. Наибольшее распространение в PC получил простейший последовательный интерфейс стандарт RS-232C, реализуемый СОМ -портами. В промышленной автоматике широко применяется RS-485. Интерфейс RS-232C предназначен для подключения аппаратуры, передающей или принимающей данные от оконечного оборудования данных (ООД, DTE - Data Terminal Equipment), к оконечной аппаратуре каналов данных (АКД, DCE - Data CommunicationEquipment). В роли АПД может выступать компьютер, принтер, плоттер и другое периферийное оборудование. В роли АКД обычно выступает модем. Конечной целью подключения является соединение двух устройств АПД. Полная схема соединения приведена на рис. 2. Интерфейс позволяет исключить канал удаленной связи вместе с парой устройств АПД, соединив устройства непосредственно с помощью нуль-модемного кабеля (рис. 3). Стандарт описывает управляющие сигналы интерфейса, пересылку данных, электрический интерфейс и типы разъемов. В стандарте предусмотрены асинхронный и синхронный режимы обмена, но СОМ -порты поддерживают только асинхронный режим.. Рис. 2. Полная схема соединения по RS-232C
Рис. 3. Соединение по RS-232C нуль-модемным кабелем Стандарт RS-232C использует несимметричные передатчики и приемники - сигнал передается относительно общего провода - схемной земли. Интерфейс НЕ ОБЕСПЕЧИВАЕТ ГАЛЬВАНИЧЕСКОЙ РАЗВЯЗКИ устройств. Логической единице соответствует напряжение на входе приемника в диапазоне -12...-3 В. Логическому нулю соответствует диапазон +3...+12В. Диапазон -3...+3В - зона нечувствительности, обусловливающая гистерезис приемника: состояние линии будет считаться измененным только после пересечения порога (рис. 4). Уровни сигналов на выходах передатчиков должны быть в диапазонах -12...-5 В и +5...+12 В для представления единицы и нуля соответственно.
Рис. 4. Прием сигналов RS-232C Стандарт RS-232C регламентирует типы применяемых разъемов. На аппаратуре АПД (в том числе на СОМ -портах) принято устанавливать вилки (male) DB-25P или более компактный вариант - DB-9P. Девятиштырьковые разъемы не имеют контактов для дополнительных сигналов, необходимых для синхронного режима (в большинстве 25штырьковых разъемов эти контакты не используются). На аппаратуре АКД (модемах) устанавливают розетки (female) DB-25S или DB-9S. Если аппаратура АПД соединяется без модемов, то разъемы устройств (вилки) соединяются между собой нуль-модемным кабелем, имеющим на обоих концах розетки, контакты которых соединяются перекрестно.
USB: СТРУКТУРА И ВЗАИМОДЕЙСТВИЕ УСТРОЙСТВ СИСТЕМЫ USB( Universal Serial Bus - универсальная последовательная шина) является промышленным стандартом расширения архитектуры РС, ориентированным на интеграцию с телефонией и устройствами бытовой электроники. Спецификация USB 1.0 была опубликована в январе 1996. Весной
2000г. опубликована
спецификация USB 2.0.
Архитектура USB определяется следующими критериями: •
Легко реализуемое расширение периферии РС.
•
Дешевое решение, поддерживающее скорость передачи до 480 Мбит/с.
•
Полна поддержка в реальном времени передачи аудио и сжатых видео данных.
•
Гибкость протокола для смешанной передачи изоморфных данных и асинхронных сообщений.
•
Интеграция в технологию выпускаемых устройств.
•
Доступность в РС всех конфигураций и размеров.
•
Открытие новых классов устройств, расширяющих РС.
C точки зрения пользователя привлекательны такие черты USB: •
Простота кабельной системы подключений.
•
Изоляция подробностей электрических подключений от пользователя.
•
Самоидентифицирующаяся периферия, автоматическая связь устройств с драйверами и конфигурирование.
•
Возможность динамического подключения и реконфигурирования периферии. USB обеспечивает обмен данными между хост-компьютером и множеством
одновременно доступных периферийных устройств. Распределение пропускной способности шины между подключенными устройствами планируется хостом и реализуется им с помощью посылки маркеров. Шина позволяет подключать, конфигурировать, использовать и отключать устройства во время работы хоста и самих устройств - динамическое ("горячее") подключение и отключение. Устройства (Device) USB могут являться хабами, "функциями" или их комбинацией. Хаб (Hub) обеспечивает дополнительные точки подключения устройств к шине. "Функции" (Function) USB предоставляют
системе дополнительные
возможности
-
например
подключение к ISDN, цифровой джойстик. акустические колонки с цифровым интерфейсом и т.д. Устройство USB должно иметь интерфейс USB, обеспечивающий поддержку протокола USB, выполнение стандартных операций(конфигурирование и сброс) и стандартное представление информации, описывающей устройство. Многие устройства, подключаемые к USB, имеют в своем составе и "функции" и хабы. Работой всей системы USB управляет хост-контроллер. являющийся программно-аппаратной подсистемой хост-
компьютера. Физическое соединение устройств осуществляется по топологии многоярусной звезды. Центром каждой звезды является хаб, каждый кабельный сегмент соединяет две точки - хаб с другим хабом или хаб с функцией. В системе USB имеется только один хостконтроллер, расположенный в вершине пирамиды устройств и хабов USB. Хост-контроллер интегрируется с корневым хабом (root hub), обеспечивающим одну или несколько точек подключения - портов. Контроллер USB, входящий в состав чипсетов многих современных системных плат обычно имеет двух/четырехпортовый хаб.
Логически устройство
подключенной к любому хабу и сконфигурированное может рассматриваться как подключенное напрямую к хост-контроллеру. "Функции" представляют собой устройства USB, способный принимать или передавать данные или управляющую информацию по шине. Физически в одном корпусе может быть несколько "функций" со встроенным хабом, обеспечивающим их подключение к одному порту. Каждая "функция" предоставляет конфигурационную информацию, описывающую его возможности и требования к ресурсам. Перед использованием функция должна быть сконфигурирована хостом - ей должна быть выделена полоса в канале, выбраны специфические опции конфигурации.
Хаб - ключевой элемент системы Plug-and-Play в
архитектуре USB. Хаб является кабельным концентратором, точки подключения называются портами хаба. Каждый хаб преобразует одну точку подключения в их множество. Архитектура подразумевает возможность соединения нескольких хабов. У каждого хаба имеется один восходящий порт (upstream port), предназначенный для подключению к хосту или к хабу верхнего уровня. Остальные порты являются являются нисходящими (downstream) и предназначены для подключения функций и хабов нижнего уровня. Хаб может распознать подключение или отключение устройств к этим портам и управлять подачей питания на их сегменты. Каждый из этих портов индивидуально может быть разрешен или запрещен и сконфигурирован на полную или ограниченную скорость обмена. Хаб обеспечивает изоляцию сегментов с низкой скоростью от высокоскоростных. Хабы могут
иметь
возможность
управления
подачей
питания
на
нисходящие
порты,
предусмотрена управляемая установка ограничения на ток, потребляемый каждым портом. Система USB разделяется на три уровня с определенными правилами взаимодействия. Устройство USB делится на интерфейсную часть, часть устройства и функциональную часть. Хост тоже делится на три части - интерфейсную, системную и ПО устройства. Каждая часть отвечает только за определенный круг задач, взаимодействие между ними показано на рисунке 1.
Рис 1. - Взаимодействие компонентов USB 1. Физическое
устройство
USB
-
устройство
на
шине,
выполняющее
функции,
интересующие пользователя. 2. Client SW - программное обеспечение, соответствующее конкретному устройству , исполняемое на хост-компьютере. Может являться составной частью ОС или специальным продуктом. 3. USB System SW - системная поддержка USB операционной системой, независимая от конкретных устройств и клиентского ПО. 4. USB Host Controller - аппаратные и программные средства, обеспечивающие подключение устройств USB к хост-компьютеру.
Рис.2. Пример подключения устройств USB
ИНТЕРФЕЙС I2C Интерфейс последовательной шины I2C (Inter IС Bus - шина соединения микросхем), разработан в конце 80-х
фирмой Philips как простое и дешевое средство сопряжения
микросхем бытовой электроники. Сейчас он стал фактическим промышленным стандартом для устройств различного назначения. В настоящее время действует спецификация 2.1, принятая в 2000г. Шина I2C очень удобна для обмена небольшими объемами данных, например, для конфигурации различных устройств. Приложения этого протокола могут быть самыми разнообразными. I2C
используется для идентификации модулей DIMM, информация о
которых хранится в маленьких микросхемах энергонезависимой памяти. В ряде современных системных плат присутствует шина SMBus, основанная на интерфейсе I2C. Эта шина используется для
доступа к памяти идентификаторов и средствам термоконтроля
процессоров Xeon. Она же входит и в состав сигналов слота CNR (слот подключения расширений
аудиокодека
коммуникационного
и
телекоммуникаций)
оборудования.
По
для
интерфейсу
конфигурирования
аудио-
I2C
мониторы
современные
и
обмениваются конфигурационной и управляющей информацией с графическим адаптером (а через него и с центральным процессором). I2C успешно применяется для подключения считывателей карт, штрих-кодов и т. п. С помощью интерфейса I2C можно загружать программы
(firmware)
в
энергонезависимую
память
(флэш)
ряда
популярных
2
микроконтроллеров. Интерфейс I C обеспечивает скорость передачи данных до 3,4 Мбит/с, при этом он гораздо проще и дешевле интерфейса RS-232C (максимум 115 Кбит/с) и позволяет легко подключать несколько устройств, с поддержкой «горячего» подключения/ отключения и технологии РnР. Интерфейс
I2C
—
синхронная
последовательная
шина,
обеспечивающая
двустороннюю передачу данных между подключенными устройствами по двум сигнальным линиям. Шина ориентирована на 8-битные передачи. Передача данных может быть как одноадресной, к выбранному устройству, так и широковещательной. Для устройств
используется
7-битная или
10-битной адресация.
выборки
Уровни сигналов —
стандартные, совместимые с широко распространенной логикой ТТЛ, КМОП, n-МОП, как с традиционным питанием +5 В так и с низковольтным (+3,3 В и ниже). Микросхемы с интерфейсом I2C, как правило, имеют аппаратную поддержку протокольных функций. Протокол позволяет взаимодействовать на одной шине устройствам с различным быстродействием интерфейса. Требования к временным параметрам сигналов весьма свободные, так что на компьютерах и микроконтроллерах, не имеющих аппаратной поддержки шины I2C, ее протокол может быть реализован даже чисто программно. В I2C определены три режима передачи:
стандартный — Standard Mode (S) — со скоростью 0-
100 Кбит/с, быстрый — Fast Mode (F) — со скоростью 0-400 Кбит/с, и высокоскоростной — High speed (Hs) — со скоростью до 3,4 Мбит/с. Режимы F и S логически работают одинаково, и для них используют обобщенное обозначение F/S. Интерфейс I2C использует две сигнальные линии: данных SDA (Serial Data) и синхронизации SCL (Serial Clock). В обменах участвуют два устройства — ведущее (master) и ведомое (slave). Ведущее и ведомое устройства могут выступать в роли и передатчика, и приемника данных. Протокол допускает наличие на шине нескольких ведущих устройств и имеет простой механизм арбитража (разрешения коллизий). Протокол обмена для обычных устройств F/S иллюстрирует рис. 1. Обе сигнальные линии имеют нагрузочные резисторы, «подтягивающие» их уровень к напряжению питания. На устройстве к каждой линии подключен приемник и передатчик типа «открытый коллектор» («открытый сток»), у ведомого устройства передатчик на линии SCL не обязателен. Все одноименные передатчики соединяются по схеме «Монтажное И»: уровень в линии будет высоким, если все передатчики пассивны, и низким, если хоть у одного передатчика выходной транзистор открыт. В покое (Idle, исходное состояние шины) все передатчики пассивны. Синхронизацию задает ведущее устройство, но ведомое, если оно не имеет достаточного быстродействия, может замедлять обмен данными.
Рис. 1. Протокол передачи данных I2C. Начало любой передачи — условие Start — инициируется ведущим устройством, убедившимся в том, что шина свободна (высокий уровень сигналов SCL и SDA). Условие Start (на диаграммах обозначается как S) — перевод сигнала SDA из высокого в низкий при высоком уровне SCL Завершается операция переводом сигнала SDA из низкого уровня в высокий при высоком уровне SCL — условие Stop (обозначается как Р), также вводящееся ведущим устройством. При передаче данных состояние линии SDA может изменяться только при низком уровне SCL, биты данных считаются действительными во время высокого уровня SCL Ведущее устройство может начать очередную передачу вслед за текущей, не вводя условие Stop, — это называется repeated Start (повторный старт, обозначающийся Sr). В протоколе условия S и Sr почти равнозначны. Каждая посылка данных состоит из 8 бит данных, формируемых передатчиком, после чего передатчик на один такт освобождает линию данных для получена подтверждения. Приемник во время девятого такта формирует бит подтверждения Ack, по которому передатчик убеждается, что передача прошла успешно.
После передачи бита подтверждения ведомое устройство может задержать следующую посылку, удерживая линию SCL на низком уровне. Ведомое устройство в режимах F/S может замедлить передачу по шине и на уровне приема каждого бита, удерживая SCL на низком уровне после его спада, сформированного передатчиком. Поэтому ведущее устройство должно генерировать сигнал SCL, анализируя состояние этой линии: сняв этот сигнал, новый импульс (открытие ключа передатчика) оно имеет право вводить, лишь убедившись, что сигнал SCL вернулся в пассивное состояние (высокий уровень). В противном случае синхронизация будет потеряна. Сигнал SCL может быть растянут и другим устройством, пытающимся захватить шину в это же время. Тактовый сигнал SCL не обязательно будет равномерным: время его нахождения на низком уровне будет определяться максимальным временем, в котором его захочет удержать самое медленное из устройств, участвующих в данном обмене (даже и конфликтующих). Коллизия (конфликт) на шине может возникнуть, когда два (или более) устройства, убедившись в покое шины, одновременно (или почти одновременно) инициируют обмен данными. Все они управляют линиями SCL и SDA и наблюдают за ними. Если устройство, передающее единицу (высокий уровень), в данном такте на линии SDA видит ноль (низкий уровень), оно должно признать свой проигрыш в конфликте и освободить линии SCL и SDA. Выигравшее устройство даже и не заметит проигравших конкурентов и продолжит работу. Искажения информации, передаваемой выигравшим устройством, не происходит (в отличие от коллизий, например, в сетях Ethernet). Если ведущее устройство, проигравшее в конфликте, имеет и функции ведомого устройства, по признанию проигрыша оно должно перейти в режим ведомого, поскольку конфликт мог быть вызван попыткой обращения к нему победившего ведущего устройства. Бит подтверждения ACK, вводящийся в конце каждого байта устройством-приемником, выполняет несколько функций. Когда передатчиком является ведущее устройство, приемник (ведомый) должен вводить нулевой бит ACK, свидетельствующий о нормальном получении очередного байта. Единичный бит ACK (нет подтверждения) в ответ на посылку адреса свидетельствует об отсутствии адресованного ведомого устройства на шине или его занятости внутренними процессами. Не получив бита подтверждения, ведущее устройство должно сформировать условие Stop, чтобы освободить шину. Когда ведущее устройство является приемником, оно должно формировать нулевой бит ACK после каждого принятого байта, кроме последнего. Единичный бит ACK в этом случае является указанием ведомому устройству на окончание передачи — оно теперь должно освободить линии SDA и SCL, чтобы ведущее устройство смогло сформировать условие Р или Sr. На вышеописанной физической основе строится протокол обмена данными по I2C. Каждое ведомое устройство имеет свой адрес, уникальный на шине. В начале любой
передачи ведущее устройство после условия S или Sr посылает адрес ведомого устройства или специальный адрес (адрес общего вызова для широковещательной передачи и пр.). Ведомое устройство, опознавшее свой адрес после условия Start, становится выбранным; оно обязано ответить подтверждением на адрес и последующие сигналы со стороны ведущего устройства, до получения условия Р или Sr. При 7-битной адресации в первом байте после S (Sr) ведущее устройство передает 7 бит адреса (А[6:0] в битах [7:1]) и признак операции RW в бите 0 (RW=1 — чтение, RW=0 — запись). Диапазоны адресов устройств различных типов централизованно выдаются изготовителям устройств фирмой Philips. Для микросхем памяти, например, 7-битный адрес содержит две части: старшие 4 бита А[6:3] несут информацию о типе устройства (EEPROM 1010), а младшие 3 бита А[0:2] определяют номер устройства данного типа на шине. Микросхемы с интерфейсом I2C имеют три адресных входа, коммутацией которых на логические уровни 1 и 0 задается номер устройства, а тип устройства «зашит» в нем самом его изготовителем. Когда ведущее устройство является передатчиком данных, оно в первом байте передает адрес ведомого устройства, при этом RW=0. Выбранное ведомое устройство отзывается подтверждением (АСК=0), после чего ведущее устройство посылает один или несколько байт данных, на каждый из которых ведомое устройство должно отвечать подтверждением. Когда ведущее устройство является приемником данных, оно в первом байте передает адрес ведомого устройства с RW=1. Выбранное ведомое устройство также отзывается подтверждением (АСК=0), после чего происходит смена направления передачи и данные уже передает ведомое устройство. Ведущее устройство подтверждает каждый принятый байт, кроме последнего. Эти передачи могут завершаться условием Р, вводимым ведущим устройством, после которого шину может захватить любое ведущее устройство. Возможны и комбинированные передачи, когда ведущее устройство после окончания очередного обмена не отдает шину, а формирует повторный старт (Sr), после чего обращается к тому же или иному устройству. Широковещательная передача может использоваться, например, аппаратным контроллером клавиатуры, не знающим, на какой адрес посылать свои асинхронно возникающие сообщения. Вместо этого возможна и иная схема: по включении (и сбросу) это устройство становится ведомым приемником, которому ведущее устройство (системный контроллер) сообщит адрес потребителя информации для дальнейших «узконаправленных» передач, в которых это устройство будет уже ведущим.
Радиоинтерфейс Bluetooth Беспроводные
(wireless)
интерфейсы
позволяют
освободить
устройства
от
связывающих их интерфейсных кабелей, что особенно привлекательно для малогабаритной периферии, по размеру и весу соизмеримой с кабелями. В беспроводных интерфейсах используются электромагнитные волны инфракрасного (IrDA) и радиочастотного (Bluetooth) диапазонов. Кроме этих интерфейсов периферийных устройств существуют и беспроводные способы подключения к локальным сетям. Bluetooth (синий зуб) — это фактический стандарт на миниатюрные недорогие средства передачи информации с помощью радиосвязи между мобильными (и настольными) компьютерами, мобильными телефонами и любыми другими портативными устройствами на небольшие расстояния. Разработкой спецификации занимается группа лидирующих фирм в областях телекоммуникаций, компьютеров и сетей — 3Com, Ericsson, IBM, Intel, Microsoft, Motorola, Nokia, Toshiba. Эта группа, образовавшая Bluetooth Special Interest Group, и вывела данную технологию на рынок. Доступность и открытость спецификации способствует ее быстрому распространению. Само название представляет собой прозвище датского короля, объединившего Данию и Норвегию, — намек на всеобщую объединяющую роль технологии. Каждое устройство Bluetooth имеет радиопередатчик и приемник, работающие в диапазоне частот 2,4 ГГц. Этот диапазон в большинстве стран отведен для промышленной, научной и медицинской аппаратуры и не требует лицензирования, что обеспечивает повсеместную применимость устройств. Для Bluetooth
используются радиоканалы с
дискретной (двоичной) частотной модуляцией, несущая частота каналов F = 2402 + k (МГц), где k = 0,...,78. Кодирование простое — логической единице соответствует положительная девиация частоты, нулю — отрицательная. Передатчики могут быть трех классов мощности, с максимальной мощностью 1, 2,5 и 100 МВт, причем должна быть возможность понижения мощности с целью экономии энергии. Передача ведется с перескоком несущей частоты с одного радиоканала на другой, что помогает в борьбе с интерференцией и замираниями сигнала. Физический канал связи представляется
определенной
псевдослучайной
последовательностью
используемых
радиоканалов (79 или 23 возможных частот). Группа устройств, разделяющих один канал (то есть использующих одну и ту же последовательность перескоков), образует так называемую пикосеть (piconet), в которую может входить от 2 до 8 устройств. В каждой пикосети имеется одно ведущее устройство и до 7 активных ведомых. Кроме того, в зоне охвата ведущего устройства в его же пикосети могут находиться «припаркованные» ведомые устройства: они тоже «знают» последовательность перескоков и синхронизируются (по перескокам) с ведущим устройством, но не могут обмениваться данными до тех пор, пока
ведущее устройство не разрешит их активность. Каждое активное ведомое устройство пикосети имеет свой временный номер (1-7); когда ведомое устройство деактивируется (паркуется), оно отдает свой номер для использования другими.
При последующей
активизации оно уже может получить иной номер (потому он и временный). Пикосети могут перекрываться зонами охвата, образуя «разбросанную» сеть (scatternet). При этом в каждой пикосети ведущее устройство только одно, но ведомые устройства могут входить в несколько пикосетей, используя разделение времени (часть времени он работает в одной, часть — в другой пикосети). Более того, ведущее устройство одной пикосети может быть ведомым устройством другой пикосети. Эти пикосети никак не синхронизированы, каждая из них использует свой канал (последовательность перескоков). Канал делится на тайм-слоты длительностью 625 мкс, слоты последовательно нумеруются с цикличностью 227. Каждый тайм-слот соответствует одной частоте несущей в последовательности
перескоков
(соответственно
1600
перескоков
в
секунду).
Последовательность частот определяется адресом ведущего устройства пикосети. Передачи ведутся пакетами, каждый пакет может занимать от 1 до 5 тайм-слотов. Ведущее и ведомые устройства ведут передачу поочередно: в четных слотах передачу ведет ведущее устройство, а в нечетных — адресованное им ведомое устройство. Между ведущим и ведомыми устройствами могут устанавливаться физические связи двух типов: синхронные и асинхронные. Синхронные связи (они же изохронные) с установлением соединения, SCO link (Synchronous Connection-Oriented),
используются
для
передачи
изохронного
трафика
(например,
оцифрованного звука). Эти связи типа «точка—точка» предварительно устанавливает ведущее устройство с выбранными ведомыми устройствами, и для каждой связи определяется период (в слотах), через который для нее резервируются слоты. Связи получаются симметричные двусторонние. Повторные передачи пакетов в случае ошибок приема не используются. По сетевой классификации связи SCO относятся к коммутации цепей. Асинхронные связи без установления соединения, ACL link (Asynchronous Connection-Less), реализуют коммутацию пакетов по схеме «точка—множество точек» между ведущим устройством и всеми ведомыми устройствами пикосети. Ведущее устройство может связываться с любым из ведомых устройств пикосети в слотах, не занятых под SCO, послав ему пакет и потребовав ответа. Ведомое устройство имеет право на передачу, только получив обращенный к нему запрос ведущего устройства (безошибочно декодировав свой адрес). Для большинства типов пакетов предусматривается повторная передача в случае обнаружения ошибки приема. Ведущее устройство может посылать и безадресные широковещательные пакеты для всех ведомых устройств своей пикосети.
Защита данных от искажения и контроль достоверности производится несколькими способами. Данные некоторых типов пакетов защищаются CRC-кодом, и приемник информации должен подтверждать прием правильного пакета или сообщить об ошибке приема. Кроме того, применяется избыточное передается
трижды,
что
позволяет
выбрать
кодирование: наиболее
каждый полезный бит
правдоподобный
вариант
мажорированием. Каждый голосовой канал обеспечивает скорость по 64 Кбит/с в обоих направлениях. Для передачи высококачественного аудиосигнала голосовые каналы Bluetooth непригодны, однако сжатый сигнал (например, поток МРЗ) вполне можно передавать по асинхронному каналу передачи данных. Асинхронный канал может обеспечивать максимальную скорость 723,2 Кбит/с в асимметричной конфигурации (оставляя для обратного канала полосу 57,6 Кбит/с) или же 433,9 Кбит/с в каждую сторону в симметричной конфигурации. Для обеспечения безопасности в Bluetooth применяется аутентификация и шифрование данных на уровне связи, которые могут дополняться средствами верхних протокольных уровней. В рамках спецификации Bluetooth определены несколько протоколов. Важной частью Bluetooth является протокол обнаружения сервисов SDP (Service Discovery Protocol), позволяющий устройству использовать функциональность окружающего его
оборудования.
В
дальнейшем,
установив
соединение,
устройство
сможет
воспользоваться требуемыми сервисами (например, выводить документы на печать, подключиться к Сети и т. п.). Протокол RFCOMM обеспечивает эмуляцию последовательного порта (9-проводного RS-232). С его помощью традиционные кабельные соединения устройств могут быть легко заменены на радиосвязь, без каких-либо модификаций ПО верхних уровней. Протокол позволяет устанавливать и множественные связи (одного устройства с несколькими), и радиосвязь заменит громоздкие и дорогие мультиплексоры и кабели. Через RFCOMM может работать и протокол РРР, над которым стоят протоколы стека TCP/IP, — это открывает дорогу во все приложения для Интернета. Через RFCOMM работают
АТ-команды,
управляющие телефонными соединениями и сервисами передачи факсов (эти же команды используются
в
модемах
для
коммутируемых
линий).
ИНТЕРФЕЙС PCI: ОСНОВНЫЕ ХАРАКТЕРИСТИКИ, ПОДДЕРЖКА PNP Шина PCI (Peripheral Component Interconnect bus) появилась в июне 1992 года (R1.0). Стандарт шины был объявлен открытым и передан PCI Special Interest Group, которая продолжила работу по совершенствованию шины.
Основные возможности шины следующие. •
Синхронный 32-х или 64-х разрядный обмен данными. При этом для уменьшения числа контактов (и стоимости) используется мультиплексирование, то есть адрес и данные передаются по одним и тем же линиям.
•
Поддержка 5V и 3.3V логики. Разъемы для 5 и 3.3V плат различаются расположением
ключей
Существуют и универсальные платы, поддерживающие оба напряжения. Заметим, что частота 66MHz поддерживается только 3.3V логикой. •
Частота работы шины 33MHz или 66MHz (в версии 2.1) позволяет обеспечить широкий диапазон пропускных способностей (с использованием пакетного режима): •
132 МВ/сек при 32-bit/33MHz;
•
264 MB/сек при 32-bit/66MHz;
•
264 MB/сек при 64-bit/33MHz;
•
528 МВ/сек при 64-bit/66MHz.
При этом для работы шины на частоте 66MHz необходимо, чтобы все периферийные устройства работали на этой частоте. •
Полная поддержка multiply bus master (например, несколько контроллеров жестких дисков могут одновременно работать на шине).
•
Поддержка write-back и write-through кэша.
•
Автоматическое конфигурирование карт расширения при включении питания.
•
Спецификация шины позволяет комбинировать до восьми функций на одной карте (например, видео + звук и т.д.).
•
Шина позволяет устанавливать до 5 слотов расширения, однако возможно использование моста PCI-PCI для увеличения количества карт расширения.
•
PCI-устройства оборудованы таймером, который используется для определения максимального промежутка времени, в течении которого устройство может занимать шину.
•
Шина поддерживает метод передачи данных, называемый "linear burst" (метод линейных пакетов). Этот метод предполагает, что пакет информации считывается (или записывается) в непрерывное пространство памяти, то есть адрес автоматически увеличивается для следующего байта. Естественным образом при этом увеличивается скорость передачи собственно данных за счет уменьшения числа передаваемых адресов.
Спецификация шины PCI определяет три типа ресурсов: два обычных (диапазон памяти
и
диапазон
ввода/вывода)
и
configuration
space
-
"конфигурационное
пространство". Автоконфигурирование устройств (выбор адресов, запросов прерываний) поддерживается средствами BIOS и ориентировано на технологию Microsoft/Intel Plug and Play (PnP) PC architecture. Стандарт PCI определяет для каждого слота конфигурационное пространство размером до 256 восьмибитных регистров, не приписанных ни к пространству памяти, ни к пространству ввода/вывода. Доступ к ним осуществляется по специальным циклам шины Configuration Read и Configuration Write, вырабатываемым контроллером при обращении процессора к регистрам контроллера шины PCI, расположенным в его пространстве ввода/вывода.
Конфигурационное пространство состоит из трех регионов: •
заголовка, независимого от устройства (device-independent header region);
•
региона, определяемого типом устройства (header-type region);
•
региона, определяемого пользователем (user-defined region).
В заголовке содержится информация о производителе и типе устройства - поле Class Code (сетевой адаптер, контроллер диска, мультимедиа и т.д.) и прочая служебная информация. Следующий регион содержит регистры диапазонов памяти и ввода/вывода, которые позволяют динамически выделять устройству область системной памяти и адресного пространства.
В
зависимости
от
реализации
системы
конфигурация
устройств
производится либо BIOS (при выполнении POST - power-on self test), либо программно. Базовый регистр expansion ROM аналогично позволяет отображать ROM устройства в системную память. Поле CIS (Card Information Structure) pointer используется картами cardbus (PCMCIA R3.0). В полях
Subsystem vendor/Subsystem ID
закодированы
производитель/функция, а последние 4 байта региона используются для определения прерывания и времени запроса/владения. После аппаратного сброса (или по включении питания) устройства PCI не отвечают на обращения к пространству памяти и ввода/вывода, они доступны только для операций конфигурационного считывания и записи. В этих операциях устройства выбираются по индивидуальным сигналам IDSEL#, устройства сообщают о потребностях в ресурсах и возможных
диапазонах
их
перемещения.
Инфракрасный интерфейс IrDA Беспроводные (wireless) интерфейсы позволяют освободить устройства от связывающих их интерфейсных кабелей, что особенно привлекательно для малогабаритной периферии, по размеру и весу соизмеримой с кабелями. В беспроводных интерфейсах используются электромагнитные волны инфракрасного (IrDA) и радиочастотного (Bluetooth) диапазонов. Кроме этих интерфейсов периферийных устройств существуют и беспроводные способы подключения к локальным сетям. Применение излучателей и приемников инфракрасного (ИК) диапазона позволяет осуществлять беспроводную связь между парой устройств, удаленных на расстояние до нескольких метров. Инфракрасная связь — IR (Infra Red) Connection — безопасна для здоровья, не создает помех в радиочастотном диапазоне и обеспечивает конфиденциальность передачи. ИК-лучи не проходят через стены, поэтому зона приема ограничивается небольшим, легко контролируемым пространством. Инфракрасная технология привлекательна для связи портативных компьютеров со стационарными компьютерами или док-станциями. Инфракрасный интерфейс имеют некоторые модели принтеров, им оснащают многие современные малогабаритные устройства: карманные компьютеры (PDA), мобильные телефоны, цифровые фотокамеры и т. п. Различают инфракрасные системы низкой (до 115,2 Кбит/с), средней (1,152 Мбит/с) и высокой (4 Мбит/с) скорости. Низкоскоростные системы служат для обмена короткими сообщениями, высокоскоростные — для обмена файлами между компьютерами, подключения к компьютерной сети, вывода на принтер, проекционный аппарат и т. п. Ожидаются более высокие скорости обмена, которые позволят передавать «живое видео». В 1993 году была создана ассоциация разработчиков систем инфракрасной передачи данных IrDA (Infrared Data Association), призванная обеспечить совместимость оборудования от различных производителей. В настоящее время действует стандарт IrDA 1.1. Интерфейсы стандарта обеспечивают следующие скорости передачи: • IrDA SIR (Serial Infra Red), HP-SIR - 9,6-115,2 Кбит/с; • IrDA HDLC, известный и как IrDA MIR (Middle Infra Red) - 0,576 и 1,152 Мбит/с; • IrDA FIR (Fast Infra Red) - 4 Мбит/с; Излучателем для ИК-связи является светодиод, имеющий пик спектральной характеристики мощности 880 нм; светодиод дает конус эффективного излучения с углом около 30°. В качестве приемника используют PIN-диоды, эффективно принимающие ИК-лучи в конусе 15°. Спецификация IrDA определяет требования к мощности передатчика и чувствительности приемника, причем для приемника задается как минимальная, так и максимальная мощность ИК-лучей. Импульсы слишком малой мощности приемник не «увидит», а слишком большая мощность «ослепляет» приемник — принимаемые импульсы сольются в неразличимый сигнал. Кроме полезного сигнала на приемник воздействуют помехи: засветка солнечным освещением и лампами накаливания, дающая постоянную составляющую оптической мощности, и помехи от люминесцентных ламп, дающие переменную (но низкочастотную) составляющую. Эти помехи приходится фильтровать. Спецификация IrDA обеспечивает уровень битовых ошибок (Bit Error Ratio, BER) более 10 -9 при дальности до 1 м и дневном свете. Поскольку передатчик почти неизбежно вызывает засветку своего же приемника, вводя его в насыщение, приходится задействовать полудуплексную связь с определенными временными зазорами при смене направления обмена. Для передачи сигналов используют двоичную модуляцию (есть свет — нет света) и различные схемы кодирования. Спецификация IrDA определяет многоуровневую систему протоколов, которую рассмотрим снизу вверх.
Ниже перечислены варианты, возможные на физическом уровне IrDA. • IrDA SIR — для скоростей 2,4-115,2 Кбит/с используется стандартный асинхронный режим передачи (как в СОМ-портах): старт-бит (нулевой), 8 бит данных и стоп-бит (единичный). Нулевое значение бита кодируется импульсом длительностью 3/16 битового интервала, единичное — отсутствием импульсов. Таким образом, в паузе между посылками передатчик не светит, а каждая посылка начинается с импульса старт-бита. • ASK IR — для скоростей 9,6-57,6 Кбит/с также используется асинхронный режим, но кодирование иное: нулевой бит кодируется посылкой импульсов с частотой 500 кГц, единичный — отсутствием импульсов. • IrDA HDLC — для скоростей 0,576 и 1,152 Мбит/с используется синхронный режим передачи и кодирование, аналогичное протоколу SIR, но с длительностью импульса 1/4-битового интервала. Для контроля достоверности кадр содержит 16-битный CRCкод. • IrDA FIR — для скорости 4 Мбит/с также применяется синхронный режим, но кодирование несколько сложнее. Здесь каждая пара смежных битов кодируется позиционно-импульсным кодом: 00 —> 1000, 01 —> 0100, 10 —> 0010,11 —>0001 (в четверках символов «1» означает посылку импульса в соответствующей четверти двухбитового интервала). Такой способ кодирования позволил вдвое снизить частоту включения светодиода по сравнению с предыдущим. Постоянство средней частоты принимаемых импульсов облегчает адаптацию к уровню внешней засветки. Для повышения достоверности применяется 32-битный CRC-код. Над физическим уровнем расположен протокол доступа IrLAP (IrDA Infrared Link Access Protocol) — модификация протокола HDLC, отражающая нужды ИК-связи. Этот протокол инкапсулирует данные в кадры и предотвращает конфликты устройств: при наличии более двух устройств, «видящих» друг друга, одно из них назначается первичным, а остальные — вторичными. Связь всегда полудуплексная. IrLAP описывает процедуру установления, нумерации и закрытия соединений. Соединение устанавливается на скорости 9600 бит/с, после чего согласуется скорость обмена по максиму из доступных обоим и устанавливаются логические каналы (каждый канал управляется одним ведущим устройством). Над IrLAP располагается протокол управления соединением IrLMP (IrDA Infrared Link Management Protocol). С его помощью устройство сообщает остальным о своем присутствии в зоне охвата (конфигурация устройств IrDA может изменяться динамически: для ее изменения достаточно поднести новое устройство или отнести его подальше). Протокол IrLMP позволяет обнаруживать сервисы, предоставляемые устройством, проверять потоки данных и выступать в роли мультиплексора для конфигураций с множеством доступных устройств. Приложения с помощью IrLMP могут узнать, присутствует ли требуемое им устройства в зоне охвата. Транспортный уровень обеспечивается протоколом Tiny TP (IrDA Transport Protocols) — здесь обслуживаются виртуальные каналы между устройствами, обрабатываются ошибки (потерянные пакеты, ошибки данных и т. п.), производится упаковка данных в пакеты и сборка исходных данных из пакетов (протокол напоминает TCP). На транспортном уровне может работать и протокол IrTP. Протокол IrCOMM позволяет через ИК-связь эмулировать обычное проводное подключение: • 3-проводное по RS-232C (TXD, RXD и GND); • 9-проводное по RS-232C (весь набор сигналов СОМ-порта); • Centronics (эмуляция параллельного интерфейса).
Протокол IrLAN обеспечивает доступ к локальным сетям, позволяя передавать кадры сетей Ethernet и Token Ring. Для ИК-подключения к локальной сети требуется устройствопровайдер с интерфейсом IrDA, подключенное обычным (проводным) способом к локальной сети, и соответствующая программная поддержка в клиентском устройстве (которое должно войти в сеть). Протокол объектного обмена IrOBEX (Object Exchange Protocol) — простой протокол, определяющий команды PUT и GET для обмена «полезными» двоичными данными между устройствами. Этот протокол располагается над протоколом Tiny ТР. У протокола IrOBEX есть расширение для мобильных коммуникаций, которое определяет передачу информации, относящуюся к сетям GSM (записная книжка, календарь, управление вызовом, цифровая передача голоса и т. п.), между телефоном и компьютерами разных размеров (от настольного до PDA). Этими протоколами не исчерпывается весь список протоколов, имеющих отношение к ИК-связи. Заметим, что для дистанционного управления бытовой техникой (телевизоры, видеомагнитофоны и т. п.) используется тот же диапазон 880 нм, но иные частоты и методы физического кодирования. Приемопередатчик IrDA может быть подключен к компьютеру различными способами; по отношению к системному блоку он может быть как внутренним (размещаемым на лицевой панели), так и внешним, размещаемым в произвольном месте. Размещать приемопередатчик следует с учетом угла «зрения» (30° у передатчика и 15° у приемника) и расстояния до требуемого устройства (до 1 м). Внутренние приемопередатчики на скоростях до 115,2 Кбит/с (IrDA SIR, ASK IR) подключаются через обычные микросхемы асинхронных приемопередатчиков UART, совместимые с 16450/ 16550, через сравнительно несложные схемы ИКмодуляторов/демодуляторов. В ряде современных системных плат на использование инфракрасной связи (до 115,2 Кбит/с) может конфигурироваться порт COM2. Для этого в дополнение к UART чипсет содержит схемы модулятора и демодулятора, обеспечивающие один или несколько протоколов инфракрасной связи. Чтобы порт COM2 использовать для инфракрасной связи, в CMOS Setup требуется выбрать соответствующий режим (запрет инфракрасной связи означает обычное использование COM2). Существуют внутренние адаптеры и в виде карт расширения (для шин ISA, PCI, PC Card); для системы они выглядят как дополнительные СОМ-порты. На средних и высоких скоростях обмена применяются специализированные контроллеры IrDA, ориентированные на интенсивный программно-управляемый обмен или DMA, с возможностью прямого управления шиной. Здесь обычный приемопередатчик UART непригоден, поскольку он не поддерживает синхронный режим и высокую скорость. Контроллер IrDA FIR выполняется в виде карты расширения или интегрируется в системную плату; как правило, такой контроллер поддерживает и режимы SIR. Существуют внешние ИК-адаптеры с интерфейсом RS-232C (для подключения к СОМ-порту) и с интерфейсом USB. Пропускной способности USB достаточно даже для FIR, СОМ-порт пригоден только для SIR. Для прикладного использования IrDA кроме физического подключения адаптера и трансивера требуется установка и настройка соответствующих драйверов. В ОС Windows 9x/ME/2000 контроллер IrDA попадает в группу Сетевое окружение. Сконфигурированное ПО позволяет устанавливать соединение с локальной сетью (для выхода в Интернет, использования сетевых ресурсов); передавать файлы между парой компьютеров; выводить данные на печать; синхронизировать данные PDA, мобильного телефона и настольного компьютера; загружать отснятые изображения из фотокамеры в компьютер и выполнять ряд других полезных действий, не заботясь ни о каком кабельном хозяйстве.
УСКОРЕННЫЙ ГРАФИЧЕСКИЙ ПОРТ AGP По мере развития возможностей графической системы - увеличения разрешения как по количеству пикселов, так и по глубине цвета - требования к пропускной способности шины, связывающей дисплейный адаптер с памятью и центральным процессором
компьютера,
повышаются.
Параллельно
повышению
пропускной
способности шины применяют меры по уменьшению потока данных, передаваемых по этой шине при графических построениях. Для этих целей графические платы снабжают акселераторами и увеличивают объем буферной памяти (видеопамяти), которой пользуется
процессор
акселератора
при
выполнении
построений.
В
результате
высокоинтенсивный поток данных в основном циркулирует внутри графической карты, относительно слабо нагружая внешнюю шину. Однако на новом витке гонки функциональных возможностей графический акселератор занимается и трехмерными построениями, в результате чего ему становится тесно в ограниченном объеме встроенной памяти графического адаптера и его поток данных снова выплескивается на внешнюю шину. Ускоренный графический порт (AGP) это расширение шины PCI, чье назначение обработка больших массивов данных 3D графики. Intel разрабатывала AGP для решения двух проблем перед внедрением 3D графики на PCI. Во-первых, 3D графика требуется как можно больше памяти информации текстурных карт (texture maps) и z-буфера (z-buffer). Чем больше текстурных карт доступно для 3D приложений, тем лучше выглядит конечный результат. При нормальных обстоятельствах z-буфер, который содержит информацию относящуюся к представлению глубины изображения, использует ту же память, как и текстуры. Этот конфликт предоставляет разработчикам 3D множество вариантов для выбора оптимального решения, которое они привязывают к большой значимости памяти для текстур и z-буфера, и результаты напрямую влияют на качество выводимого изображения. Разработчики PC имели ранее возможность использовать системную память для хранения информации о текстурах и z-буфера, но ограничение в таком подходе, была передача такой информации через шину PCI. Производительность графической
подсистемы
и
системной
памяти
ограничиваются
физическими
характеристиками шины PCI. Кроме того, ширина полосы пропускания PCI, или ее емкость, не достаточна для обработки графики в режиме реального времени. Чтобы решить эти проблемы Intel разработала AGP. Если определить кратко, что такое AGP, то это - прямым соединением между графической подсистемой и системной памятью. Это
решение позволяет обеспечить значительно лучшие показатели передачи данных, чем при передаче через шину PCI (рис. 1). AGP позволяет более эффективно использовать память страничного буфера (frame buffer), тем самым увеличивая производительность 2D графики также, как увеличивая скорость прохождения потока данных 3D графики через систему.
Рис. 1. Передача данных в AGP и PCI. В действительности, AGP соединяет графическую подсистему с блоком управления системной памятью, разделяя этот доступ к памяти с центральным процессором компьютера (CPU). Через AGP можно подключить только один тип устройств - это графическая плата. Этот порт представляет собой 32-разрядную шину с тактовой частотой 66/133 МГц, по составу сигналов напоминающую шину PCI. Повышенная пропускная способность порта AGP обеспечивается следующими тремя факторами: • Конвейеризацией операций обращения к памяти. • Сдвоенными передачами данных. • Демультиплексированием шин адреса и данных. Конвейеризацию обращений к памяти иллюстрирует рис. 2, где сравниваются обращения к памяти PCI и AGP. При неконвейеризированных обращениях PCI во время реакции памяти на запрос шина простаивает. Конвейерный доступ AGP позволяет в это время передавать следующие запросы, а потом получить плотный поток ответов (самих передаваемых данных). Спецификация AGP предусматривает возможность постановки в очередь до 256 запросов. AGP поддерживает две пары очередей для операций записи и чтения памяти с высоким и низким приоритетом. В процесс передачи данных любого запроса может вмешаться следующий запрос, в том числе и запрос в режиме PCI.
Рис. 2. Циклы обращения к памяти PCI и AGP Сдвоенные передачи данных обеспечивают при частоте тактирования шины в 66 МГц пропускную способность до 532 Мбайт/с, что для 32-битной шины (4 байта) несколько неожиданно: 66,6х4=266. В AGP кроме "классического" режима, называемого теперь "x1", в котором за один такт синхронизации передается один 4-байтный блок данных, имеется возможность работы в режиме "х2", когда блоки данных передаются как по фронту, так и по спаду сигнала синхронизации (как и в шине АТА Ultra DMA или DDR
RAM). Управление передачей в таком режиме названо SideBand Control
(сокращенно - приставка SB к имени сигнала). Заказать режим х2 может только графическая карта, если, конечно, она его поддерживает. Для тактовой частоты 133 МГц (режим "х4") пропускная способность соответственно удваивается. Демультиплексирование (разделение) шины адреса и данных сделано несколько необычным образом. В идеале демультиплексирование подразумевает наличие двух полноразрядных шин - адреса и данных. Однако реализация такого варианта была бы слишком
дорогой.
Поэтому
шину
адреса
в
демультиплексированием
режиме
представляют 8 линий SBA (SideBand Address), по которым за три такта синхронизации передаются четыре байта адреса, длина запроса (1 байт) и команда (1 байт). За каждый такт передаются по два байта - один по фронту, другой по спаду тактового сигнала. Поддержка демультиплексированной адресации не является обязательной для карты с портом AGP, но хост-контроллер, естественно, должен ее поддерживать. Альтернативой такому способу подачи адреса является обычный - по мультиплексированной шине АD. Таким образом, AGP может реализовать всю пропускную способность 64-битной основной памяти компьютера на процессоре Pentium и старше. При этом возможны конкурирующие обращения к памяти как со стороны процессора, так и со стороны мостов шин PCI.
Порт AGP может работать как в своем "естественном" режиме с
конвейеризацией
и сдвоенными
передачами,
так и в режиме
шины
PCI.
В
конвейеризированном режиме, в котором начало цикла отмечается сигналом РIРЕ#, возможны только обращения к памяти. В режиме PCI циклы начинаются с сигнала FRAME# и обращения возможны как к пространству памяти, так и пространству ввода/вывода и конфигурационному пространству. Кроме собственно AGP, в него
заложены и сигналы шины USB, которую предполагается заводить в монитор. Внешне карты с портом AGP похожи на PCI, но у них используется разъем повышенной плотности с "двухэтажным" расположением ламелей, и сам разъем располагается несколько дальше от задней кромки платы, чем разъем PCI. Порт позволяет работать в двух режимах - режиме DMA и режиме исполнения (Executive Mode). В режиме DMA акселератор при вычислениях рассматривает свой локальный буфер как первичную память, а когда ее объема недостаточно, подкачивает данные из основной памяти, используя быстрый канал AGP. При этом для трафика порта характерны длительные последовательные (блочные) передачи. В режиме исполнения локальный буфер и основная память для акселератора равнозначны и располагаются в едином адресном пространстве. Такой режим работы акселератора с памятью называется DIME (Direct Memory Execute). Для этого режима график порта будет насыщен короткими произвольными запросами. Надо заметить, что многие преимущества AGP носят потенциальный характер и могут быть реализованы лишь при встречной поддержке как со стороны аппаратных средств графического адаптера, так и со стороны программного обеспечения. 11 сентября 2002 г. - Корпорация Intel объявила о выходе окончательной версии спецификации AGP 3.0 (сокращение AGP расшифровывается как Advanced Graphics Port быстродействующий графический порт), отвечающей потребностям будущих приложений по
обработке
графики
в
отношении
производительности
и
масштабируемости.
Спецификация AGP 3.0, определяющая технические условия решения AGP8x - прямого наследника прежней технологии AGP4x, является интеллектуальной собственностью корпорации Intel, которая готова предоставить участникам программы безвозмездную лицензию на применение нового стандарта. Технология AGP8x удваивает скорость передачи графических данных по сравнению со своей предшественницей AGP4x, с которой обладает обратной совместимостью. Будучи изначально предназначенной для самых современных рабочих станций, новая шина призвана
со
временем
занять
доминирующие
позиции
на
рынке
настольных
компьютерных систем. Объявление о выходе окончательной версии спецификации, сделанное сегодня на осеннем Форуме Intel для разработчиков (IDF) 2002 г., проходящем в калифорнийском городе Сан-Хосе, увенчало собой двухлетние совместные усилия разработчиков Intel и их коллег из таких крупнейших фирм-изготовителей устройств по обработке графики, как ATI, NVIDIA, Matrox и 3D Labs. Технология
AGP8x
производительности
сыграет
графических
весьма
значительную
подсистем
роль
высококлассных
в
наращивании
рабочих
станций,
обслуживающих, в частности, приложения объемной визуализации. Удвоение пропускной способности шины AGP, обеспечивающее скорость передачи графических данных порядка 2,1 гигабайт в секунду (Гбайт/сек), сопряжено с наращиванием тактовой частоты процессоров графического вывода до 533 МГц, тем самым напрямую оказывая влияние на рост производительности графической подсистемы в целом. Наращивание пропускной способности интерфейса AGP позволит разработчикам создавать все более сложное программное обеспечение, например, быстродействующие приложения по обработке видео в реальном времени, обогащающие видеоматериалы новыми функциями. Корпорация Intel готовит к выпуску в четвертом квартале два набора микросхем (под кодовыми наименованиями Placer и Granite Bay), предназначенные для рабочих станций класса "high-end" и начального уровня, а к началу следующего учебного года аналогичное устройство для настольных систем массового производства. Наборы микросхем для рабочих станций будут продемонстрированы на этой неделе в рамках форума IDF. Технология AGP8x станет последним параллельным интерфейсом, отвечающим потребностям компьютерной индустрии, перед ее переходом в 2004 году на последовательное решение по передаче графических данных на базе шины PCI Express. Архитектура PCI Express представляет собой высокоскоростную технологию общего назначения, предназначенную для последовательного подключения множества устройств ввода-вывода на основе единого стандарта. В
ближайшие
год-два
технология
AGP8x
хорошо
послужит
программному
обеспечению рабочих станций, а в будущем году придаст мощный импульс разработке первоклассных, нуждающихся в высокой пропускной способности приложений для настольных компьютерных систем. Ведущие изготовители оборудования уже приступили к выпуску продукции на основе технологии AGP8x. Так, ранее в этом году появились первые графические адаптеры с интерфейсом
AGP8x
ПОСЛЕДОВАТЕЛЬНЫЙ ИНТЕРФЕЙС SERIAL ATA Параллельный интерфейс ATA исчерпал свои ресурсы пропускной способности, достигшей 133 Мбайт/с в режиме UltraDMA Mode 5. Для дальнейшего повышения пропускной способности интерфейса (но, естественно, не самих устройств хранения, которые имеют гораздо меньшие внутренние скорости обмена с носителем) было принято решение о переходе на последовательный интерфейс. Цель перехода — улучшение и удешевление кабелей и коннекторов, улучшение условий охлаждения устройств внутри системного блока (избавление от широкого шлейфа), обеспечение возможности разработки
компактных
пользователем,
устройств,
расширение
облегчение
диапазона
адресация
конфигурирования блоков
(объем
устройств накопителя
в
параллельном АТА ограничен 137 Гбайтами). Интерфейс
Serial
ATA
является
радиальным
(хост-центрическим),
в
нем
определяется только взаимодействие хоста с каждым из подключенных устройств. Взаимодействие между ведущим и ведомым устройствами, свойственное традиционному интерфейсу ATA, исключается. Программно хост видит множество устройств, подключенных к контроллеру, как набор каналов ATA, у каждого из которых имеется единственное ведущее устройство. Имеется возможность эмуляции пар устройств (ведущее — ведомое) на одном канале, если такая необходимость возникнет. Программное взаимодействие с устройствами Serial ATA практически совпадает с прежним, набор команд соответствует ATA/ATAPI-5. В то же время аппаратная реализация хостадаптера Serial ATA существенно отличается от традиционного
интерфейса ATA. В
параллельном интерфейсе ATA хост-адаптер был простым средством, обеспечивающим программное
обращение
к
устройствах. В Serial ATA
регистрам,
расположенным
в
самих
подключенных
хост-адаптер имеет блоки так называемых «теневых»
регистров (Shadow Registers), совпадающих по назначению с обычными регистрами устройств ATA. Каждому подключенному устройству соответствует свой набор регистров. Обращения к этим теневым регистрам вызывают процессы взаимодействия хост-адаптера с подключенными устройствами и исполнение команд. В стандарте рассматривается многоуровневая модель взаимодействия хоста и устройства, где прикладным уровнем является обмен командами, информацией о состоянии и хранимыми данными. На физическом уровне для передачи информации между контроллером и устройством используются две пары проводов. Данные передаются кадрами, транспортный уровень формирует и проверяет корректность информационных структур кадров (Frame Information Structure, FIS). Для облегчения высокоскоростной передачи на канальном уровне данные кодируются по схеме 8В/10В (8 бит данных кодируются 10-битным символом) и скремблируются, после чего по
физической линии передаются по простейшему методу NRZ (уровень сигнала соответствует передаваемому биту). Между канальным и прикладным уровнем имеется транспортный уровень, отвечающий за доставку кадров. На каждом уровне имеются свои средства контроля достоверности и целостности. В первом поколении Serial ATA данные по кабелю передаются со скоростью 1500 Мбит/с, что с учетом кодирования 8В/10В обеспечивает скорость 150 Мбайт/с (без учета накладных расходов протоколов верхних уровней). В дальнейшем планируется повышать скорость передачи, и в интерфейсе заложена возможность согласования скоростей обмена по каждому каналу в соответствии с возможностями хоста и устройства, а также качеством связи. Хост-адаптер имеет средства управления соединениями, программно эти средства доступны через специальные регистры Serial ATA. В стандарте предусматривается управление энергорежимом интерфейсов. Каждый интерфейс кроме активного состояния может находиться в состояниях PARTIAL и SLUMBER с пониженным энергопотреблением, для выхода из
которых требуется
заметное время (10 мс). Команды, требующие передачи данных, могут исполняться в различных режимах обмена. Обращение в режиме РIO и традиционный способ обмена по DMA (legacy DMA) выполняется аналогично параллельному интерфейсу ATA. Однако внутренний протокол обмена между хост-адаптером и устройствами позволяет передавать между ними разноплановую информацию. Последовательный интерфейс ATA, как и параллельный АТА, предназначен для подключений устройств внутри компьютера. Длина кабелей не превышает 1 м, при этом все соединения радиальные, каждое устройство подключается к хост-адаптеру своим кабелем. В стандарте предусмотрена
возможность «горячей» замены. Стандарт
определяет новый однорядный двухсегментный разъем с механическими ключами, препятствующими ошибочному подключению. Сигнальный сегмент имеет 7 контактов (S1-S7), питающий — 15 (Р1-Р15); все контакты расположены в один ряд с шагом 1,27 мм. Назначение контактов приведено в табл. 1 (справочно). Малые размеры разъема (полная длина — около 36 мм) и малое количество цепей облегчают компоновку системных плат и карт расширения. Питающий сегмент может отсутствовать (устройство может получать питание и от обычного 4-контактного разъема ATA). Вид разъемов приведен на рис. 1. Для обеспечения «горячего» подключения контакты разъемов имеют разную длину, в первую
очередь
соединяются
контакты
«земли»,
затем
контакты
предзаряда
конденсаторов в цепях питания (для уменьшения броска потребляемого тока), после чего соединяются основные питающие контакты и сигнальные цепи. Таблица 1. Разъем Serial ATA
Контакт S1 S2 S3 S4 S5 S6 S7 Р1 Р2 РЗ Р4 Р5 Р6 Р7 Р8 Р9 Р10 Р11 Р12 Р13 Р14 Р15
Цепь GND А+ АGND ВВ+ GND V33 V33 V33 GND GND GND V5 V5 V5 GND Резерв GND V12 V12 V12
Назначение Экран Дифференциальная пара Дифференциальная пара Экран Дифференциальная пара Дифференциальная пара Экран Питание 3,3 В Питание 3,3 В Питание 3,3 В, предзаряд Общий Общий Общий Питание 5 В, предзаряд Питание 5 В Питание 5 В Общий Общий Питание 12В, предзаряд Питание 12 В Питание 12В
Рис. 1. Разъемы Serial ATA: a — полный разъем на устройстве, б — сигнальный сегмент кабельного разъема, в — питающий сегмент кабельного разъема, г — сигнальный сегмент разъема хост-адаптера, д — разъем хоста для непосредственного подключения устройства.
Каждое устройство, подключенное к адаптеру Serial ATA, представляется тремя блоками регистров, два из которых соответствуют традиционным регистрам ATA и называются «теневыми», третий блок — новый. Привязка адресов блоков к адресному пространству хоста стандартом не регламентируется; для PCI-контроллера блоки задаются регистрами конфигурационного пространства и «теневые» регистры могут располагаться по стандартным адресам ATA некоторых регистров увеличена до 16.
с целью совместимости.
Разрядность
Новый блок регистров SCR (Serial ATA Status and Control registers) состоит из 16 смежных 32-разрядных регистров SCR0-SCR15, из которых пока определены лишь 3 (остальные зарезервированы). Сейчас уже ведутся работы над новой спецификацией Serial ATA II с большей пропускной способностью и специальными средствами для поддержки сетевых устройств хранения.