Слайд 1Лекция 2
План лекции
Измерения аналоговых и цифровых сигналов.
Непосредственный ввод сигнала в
компьютер.
Стандартные порты компьютера и протоколы обмена информацией (COM, LPT, USB, CAN, Game).
Драйверы доступа к портам.
Платы расширения.
Обмен сигналами с нестандартными устройствами.
Слайд 2Общий вид периферийных разъемов ПЭВМ
Слайд 3Параллельный интерфейс компьютера (LPT)
Параллельные интерфейсы характеризуются тем, что в них для
передачи бит в слове используются отдельные сигнальные линии. Из-за невысокой помехозащищенности имеют ограниченную длину кабеля. Передача данных может быть как однонаправленной (названной по названию компании разработчика Centronics), так и двунаправленной (Bitronics).
Восемь шин передачи данных обеспечивают скорость от 120 Кбит/с до 2 Мбит/с в зависимости от режима работы параллельного порта,
Адаптер параллельного интерфейса представляет собой набор регистров, расположенных в пространстве ввода/вывода. Регистры порта адресуются относительно базового адреса порта, стандартными значениями которого являются 378h и 278h.
Порт имеет внешнюю 8-битную шину данных, 5-битную шину сигналов состояния и 4-битную шину управляющих сигналов.
BIOS поддерживает до четырех LPT-портов своим сервисом - прерыванием INT 17h, обеспечивающим через них связь с принтером по интерфейсу Centronics.
Слайд 5Режимы работы LPT- порта
Стандартный параллельный порт (SPP) обеспечивает только одностороннюю передачу
данных от компьютера к принтеру, но позволяет работать практически со всеми устройствами, подключаемыми к параллельному порту, хотя скорость передачи при этом не превышает 200 Кбит/с.
Расширенный параллельный порт (EPP - Enhanced Parallel Port) полностью совместим со стандартным, но является двунаправленным. Он использует существующие сигналы параллельного порта и осуществляет асимметричный двунаправленный обмен данными со скоростью до 2 Мбит/с. В режиме ЕРР предусматривается возможность подключения в цепочку до 64 периферийных устройств.
Порт с расширенными возможностями (ECP - Extended Capability Port) является дальнейшим развитием ЕРР. ECP, как и ЕРР, использует протокол DMA и, предоставляя симметричный двунаправленный обмен данными, обеспечивает максимальную пропускную способность до 2,5 Мбит/c. Одной из наиболее важных функций, реализованных в ЕСР, является сжатие данных по методу RLE. ECP наилучшим образом подходит для передачи больших объемов данных (например, для сканеров и принтеров).
Слайд 6Протокол обмена данными
Передача начинается с проверки источником сигнала "Error". Если он
установлен, то обмен не производится. Затем проверяется состояние сигнала "Busy". Если он равен "0", то источник приступает к передаче байта данных. Для передачи байта источник выставляет на линии D0-D7 байт данных и выдает сигнал Strobe. Приемник по сигналу Strobe# (здесь и далее по тексту значок "#" после названия сигнала является признаком того, что сигнал имеет низкий активный уровень) читает данные с шины данных и выставляет сигнал Busy на время его обработки. По окончании обработки приемник выдает сигнал ACK# и снимает сигнал Busy. Если в течение длительного времени (6 - 12 сек) источник не получает ACK#, то он принимает решение о ошибке "тайм-аут" (time-out) устройства. Если после приема байта приемник по какой - либо причине не готов принимать данные, то он не снимает сигнал Busy. При программной реализации обмена по указанному протоколу желательно ограничить время ожидания снятия Busy (обычно 30 - 45 сек), иначе возможно зависание программы.
Слайд 7Программирование доступа к портам
procedure Out32(PortAddress:smallint;Value:smallint);stdcall;export;
var ByteValue:Byte;
begin
ByteValue:=Byte(Value);
asm
push dx
mov dx, PortAddress
mov al, ByteValue
out dx,al
pop dx
end;
end;
function Inp32(PortAddress:smallint):smallint;stdcall;export;
var ByteValue:byte;
begin
asm
push dx
mov dx, PortAddress
in al,dx
mov ByteValue,al
pop dx
end;
Inp32:=smallint(ByteValue) and $00FF;
end;
Слайд 8Аппаратное управление реле через LPT порт
Слайд 9Программно-аппаратный комплекс Kinematometer
Слайд 10Программно-аппаратный комплекс Kinematometer
Слайд 11Программно-аппаратный комплекс Kinematometer
Слайд 12Программно-аппаратный комплекс Kinematometer
Слайд 13Программно-аппаратный комплекс Kinematometer
Слайд 14Программно-аппаратный комплекс Kinematometer
Слайд 15Последовательный интерфейс компьютера (COM)
Последовательные порты (RS-232) обеспечивают, помимо крайне простой реализации,
высокую помехозащищенность на длинных линиях. Амплитуда сигналов достигает величины +/- 12 В, благодаря чему и обеспечивается высокая помехозащищенность.
Главный элемент COM-интерфейса – микросхема 16450 UART (Universal Asynchron Receiver Transmitter), обеспечивающий максимальную скорость передачи данных 115200 бит/с.
Пересылка по линии RS-232 осуществляется побитно, последовательно друг за другом, при этом возможен обмен данными в двух направлениях. Передача данных осуществляется в асинхронном режиме
Существует несколько родственных последовательных интерфейсов: RS-232C, RS-423A, RS-422A, RS-455A.
Слайд 16Линии COM -порта
Расшифровка названий линий порта.
RxD
Принимаемые данные.
TxD
Отсылаемые
данные.
DTR
Выход сигнала готовности DTE. Означает что DTE готово к обмену данными.
DSR
Вход сигнала готовности от DCE. Означает, что внешнее устройство готово.
RTS
Выход запpоса передачи. Означает, что DTE хочет пеpедать данные.
CTS
Вход сигнала, pазpешающего DTE передавать данные.
DCD
Hаличие несущей. Программы учитывающие этот сигнал должны при его отсутcтвии отбрасывать приходящие данные.
RI
Индикатор звонка обнаруженного модемом. Hа процесс передачи данных влияния не оказывает.
DTE (Data Terminal Equipment) - обычно компьютер
DCE (Data Communication Equipment) - внешнее устройство
Слайд 17Обмен данными
Последовательный интерфейс использует одну сигнальную линию, по которой биты передаются
друг за другом последовательно. Последовательная передача может осуществляться в асинхронном или синхронном режимах. При асинхронной передаче (COM-порт поддерживает только асинхронную передачу) каждому байту предшествует старт-бит, сигнализирующий приемнику о начале посылки, за которым следуют биты данных и, возможно, бит паритета (четности). Завершает посылку стоп-бит, гарантирующий паузу между посылками. Внутренний генератор синхронизации приемника генерирует внутренние стробы, по которым приемник фиксирует последующие принимаемые биты. В идеале стробы располагаются в середине битовых интервалов.
Слайд 18Асинхронный обмен данных
При асинхронной передаче каждому байту данных предшествует старт-бит. Старт-бит
следующей посылки может передаваться в любой момент времени, начиная с момента окончания стоп-бита предыдущей посылки, таким образом, между передачами могут быть паузы произвольной (и неограниченной) длительности.
Старт-бит позволяет организовать синхронизацию приемника по сигналу от передатчика. При этом приемник и передатчик работают на одной и той же скорости обмена (т.е. имеют одну и ту же тактовую частоту), измеряемую количеством передаваемых бит в секунду. В идеальном случае, внутренние стробы должны приходиться на середину битов, однако из-за разностей скоростей приемника и передатчика накапливается рассогласование. Для верного приема 8 бит данных, бита паритета и стоп-бита рассогласование не может превышать 5% на бит (в идеале, строб приходится на середину бита, при отклонении 50% мы примем бит с ошибкой, 50% / 10 бит = 5%).
Для асинхронного режима принят ряд стандартных скоростей обмена: 50, 75, 110, 150, 300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600 и 115200 бит/сек.
Таким образом, необходимо установить следующие параметры : скорость обмена, количество бит данных, наличие бита паритета, тип паритета (четность - нечетность), длину стоп-бита.
Слайд 19Синхронный обмен данных
Синхронный режим предполагает постоянную активность канала связи. Посылка начинается
с передачи синхробайта, за которым вплотную следует последовательность передаваемых бит. Если у передатчика нет данных для передачи, то он заполняет паузу непрерывной передачей старт-бит. При синхронном обмене можно добиться больших скоростей, т.к. не требуется предавать старт-бит, стоп-бит, бит паритета (в асинхронном на каждые 8 бит данных приходится по 3-4 служебных бита). При синхронном обмене необходима внешняя синхронизация. При синхронизации только в начале передачи блока данных даже небольшая разность частот приведет к появлению быстро накапливающийся ошибке.
Внешняя синхронизация может обеспечиваться как за счет использования отдельной линии для передачи сигнала синхронизации, так и за счет применения самосинхронизирующихся методов кодирования данных (манчестерский код, NRZ код), при использовании которых синхросигнал выделяется приемником из потока принимаемых данных.
Слайд 20Игровой (Game-порт) компьютера
Геймпорт персонального компьютера поддерживает 4 переменных сопротивления (потенциометра) и
4 мгновенных кнопки-выключателя (до 2-х джойстиков на порт).
В стандартном джойстике потенциометр оси Х отвечает за движение рукоятки влево/вправо, а сопротивление оси Y - вперед/назад..
12 и 15 - выходы для midi на передачу и прием соответственно.
Слайд 21Метод измерения сопротивления
Метод измерения сопротивления основан на программном определении длительности импульса,
пропорциональной сопротивлению. Преобразование начинается по выводу любого байта в регистр адаптера (20 lh), при этом биты 0-3 устанавливаются в 1. Время измеряется до возврата в нулевое состояние бит 0-3, соответствующих четырем аналоговым каналам. Для измеряемых сопротивлений в диапазоне 0-100 кОм время определяется по формуле
Т=24,2+ 0,011R,
где Т - время (в микросекундах),
R - сопротивление (в килоомах).
Точность и линейность преобразования невысока, преобразование выполняется не быстро (до 1,12 мс) и сильно загружает процессор.
Слайд 23Использование звуковой карты компьютера
Звуковая плата способна воспринимать и преобразовывать сигнал в
пределах звуковой частоты и амплитудой до 2В в цифровую форму со входа LINE-IN или же с микрофона. Возможно и обратное преобразование, — на выход LINE-OUT (Speakers). Таким образом, можно работать с любым сигналом до 20 кГц, и использовать программное обеспечение: осциллографы, осциллоскопы, спектроанализаторы, частотомеры, генераторы импульсов различных форм. Таким образом, на одном и том же компьютере можно задавать сигнал, скажем с помощью программы генератора, и тут же его контролировать осциллографом или анализатором спектра.
Подстроечным резистором напряжение на входе выставляется на нужном уровне, стабилитроны подбираются на напряжения менее 2 В. В случае превышения напряжения сигнала на входе звуковой карты (на резисторе R3) выше нормы, сработает защита — начнется пробой стабилитронов и напряжение не поднимется выше 1,9 В.
Звуковая карта не является полноценным АЦП и измерять амплитуду входного сигнала на аппаратном уровне не в состоянии. При этом нужно учитывать внутреннее сопротивление платы, которое ниже, чем у вольтметра. Шкалы некоторых программ-осциллографов можно откалибровать в «вольт/дел», чтобы она соответствовала действительным значениям амплитуды, хотя при этом не обеспечивается высокой точности.
Слайд 24Использование звуковой карты компьютера
Слайд 25Шина IEEE 1394
(FireWire)
Из-за политики компании-разработчика Apple (c 1995 г.) –
требования лицензионных выплат за каждый чип контроллера - не получила особого распространения и лишь с появлением портативных видеокамер стандартов MiniDV и Digital8 завоевала всеобщее признание.
увеличение максимальной скорости передачи с 12 Мбит/c (USB 1.1) до 400 Мбит/c (FireWire);
возможность питания внешних устройств от шины 1.25 A/12 В (FireWire) против максимальных 500 мA/5 В (USB).
Одноранговая шина FireWire не требует управления со стороны PC, устройства общаются по принципу peer-to-peer.
Стандарт IEEE 1394 поддерживает и асинхронный, и синхронный протоколы передачи данных и предоставляет гораздо больше возможностей, чем технология Plug&Play. Например, каждое устройство может быть подключено/отключено в любой момент времени, даже во время непосредственной передачи данных, при этом шина автоматически переконфигурируется и происходит новое назначение адресов. Все устройства IEEE 1394 подразделяются по максимальной скорости передачи данных на три класса: 100, 200 и 400 Мбит/с соответственно и позволяют последовательно подключать до 63 устройств при длине кабеля до 4,5 метров (разработки 2006 г. – до 100 м.)
В отличие от сетей Ethernet, высокоскоростные передачи потоков данных по FireWire в реальном времени не требуют дополнительных протоколов.
Вытесняется стандартом USB 3.x – примерно после 2010 г.
Слайд 26Последовательный интерфейс компьютера (USB 1.1)
В 1995 году, появилась альтернатива COM портам
в виде универсальной последовательной шины - USB (Universal Serial Bus), предложенной консорциумом компаний во главе с Intel.
Шина USB 1.1 может "держать" на себе до 127 различных последовательно подключенных устройств, но ее пропускная способность ограничена пиковой величиной в 12 Мбит/c, реально же - 700-900 Кбайт/с. Длина соединительного кабеля до 5 метров.
Обеспечивает возможностью "горячего" подключения к ПК самых разнообразных устройств.
Обеспечивает питание маломощных периферийных устройств непосредственно с интерфейса, ток потребления - до 500 mA. (USB 3.0 – до 900 mA).
Скорость передачи USB 2.0 – 3 режима до 480 Мбит/с (2001 г.); USB 3.0 – до 5 Гбит/с (2008 г.); USB 3.1 – до 10 Гбит/с (2013 г.)
Слайд 27Взаимодействие компонентов USB
Шина имеет два режима передачи. Полная скорость составляет
12 Мбит/с, низкая - 1,5 Мбит/с. Для
полной скорости используется экранированная витая пара
с импедансом 90 Ом и длиной сегмента до 5 м, для низкой - невитой неэкранированный кабель до 3 м;
Сигналы синхронизации кодируются вместе с данными по методу NRZI (Non Return to Zero Invert). Каждому пакету предшествует поле синхронизации SYNC, позволяющее приемнику настроиться на частоту передатчика.
Слайд 28Кодировка NRZI
Все обмены (транзакции) по USB состоят из трех пакетов. Каждая
транзакция планируется и начинается по инициативе контроллера, который посылает пакет-маркер {Token Packet). Он описывает тип и направление передачи, адрес устройства USB и номер конечной точки. В каждой транзакции возможен обмен только между адресуемым устройством (его конечной точкой) и хостом. Адресуемое маркером устройство распознает свой адрес и готовится к обмену. Источник данных (определенный маркером) передает пакет данных (или уведомление об отсутствии данных, предназначенных для
передачи). После успешного приема пакета приемник данных посылает пакет подтверждения (Handshake Packet).
На аппаратном уровне использование отказа от транзакции (NAck) при недопустимой интенсивности передачи предохраняет буферы от переполнения. Маркеры отвергнутых транзакций повторно передаются в свободное для шины время.
Слайд 29Кодировка NRZI
Устойчивость к ошибкам обеспечивают следующие свойства USB:
Высокое качество сигналов,
достигаемое благодаря дифференциальным приемникам/передатчикам и экранированным кабелям.
Защита полей управления и данных CRC-кодами.
Обнаружение подключения и отключения устройств и конфигурирование ресурсов на системном уровне.
Самовосстановление протокола с тайм-аутом при потере пакетов.
Для обнаружения ошибок передачи каждый пакет имеет контрольные поля CRC-кодов, позволяющие обнаруживать все одиночные и двойные битовые ошибки. Аппаратные средства обнаруживают ошибки передачи, а контроллер автоматически производит трехкратную попытку передачи. Если повторы безуспешны, сообщение об ошибке передается клиентскому ПО.
Слайд 30Последовательный интерфейс компьютера (USB 2.0 и 3.х)
Основным отличием новой ревизии USB
2.0 является пиковая скорость передачи данных, достигающая 480 Мбит/с против 12 Мбит/с у USB 1.1.
Скорость почти в 0.5 Гбит/с сопоставима со скоростью интерфейса UltraATA66 и на 20% превосходит своего основного конкурента IEEE 1394.
С целью максимальной совместимости с большим количеством периферийного оборудования, выполненного по спецификации USB 1.1, устройства стандарта USB 2.0 могут использоваться с контроллерами/хабами стандарта 1.1, при этом скорость будет ограничена все теми же 12 Мбит/с.
USB 2.0 имеет полудуплексную схему передачи (передача в одну сторону за 1 такт), USB 3.0 – полнодуплексную, как и в IEEE-1394
На CES 2013 компания Corning представила оптические кабели USB 3.0 и Thunderbolt. Разработчики сообщают о возможности передачи информации (но не энергии) на расстояние до 100 метров против 3-5 метров для стандартных «проводных» кабелей при соизмеримой стоимости.
Слайд 31PCI-интерфейс компьютера
Является заменой устаревшей шины ISA
Интерфейс шины PCI (Peripheral Component Interconnect
bus) - открытый непатентованный стандарт, который рассматривается как основа для платформ Windows, Macintosh и UNIX.
Имеет два варианта: 32-разрядный (в нем используется 124-контактный разъем) и 64-разрядный (188-контактный разъем). Тактовая частота PCI составляет 33 и 66 МГц. Максимальная теоретически возможная скорость обмена при тактовой частоте 33 МГц достигает 132 или 264 Мбайт/с для 32 и 64 разрядов данных, соответственно, что в 20 раз превышает пропускную способность ISA.
Основной режим обмена по шине — синхронный, тактируемый положительными фронтами тактового сигнала шины, но возможен и асинхронный обмен (как и в случае ISA). В цикл обмена (или транзакцию) входит фаза адреса (в начале) длительностью один такт и фаза данных длительностью в один или несколько тактов.
PCI-устройства с точки зрения пользователя самонастраиваемы (Plug and Play). После старта компьютера системное программное обеспечение обследует конфигурационное пространство PCI каждого устройства, подключённого к шине, и распределяет ресурсы. Настройка прерываний осуществляется также системным программным обеспечением.
Слайд 32Интерфейс PCI Express
Пропускная способность – 2,5
Гбит/с (v. 1.0)
(реально до 8 Г Транзакций/с , с учетом дуплексности для стандарта 3.0 – 2011 г.;
до 16 Г Транзакций/с для стандарта 4.0 – 2015 г.; )
В отличие от стандарта PCI, использовавшего для передачи данных общую шину с подключением параллельно нескольких устройств, PCI Express, в общем случае, является пакетной сетью с топологией типа звезда.
Шиной PCI Express поддерживается:
горячая замена карт;
контроль целостности передаваемых данных.
Так как программная модель PCI Express во многом унаследована от PCI, то существующие системы и контроллеры могут быть доработаны для использования шины PCI Express заменой только физического уровня, без доработки программного обеспечения. Высокая пиковая производительность шины PCI Express позволяет использовать её вместо шин AGP и тем более PCI и PCI-X. PCI Express вытесняет эти шины в компьютерах.