ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 13.01.2021
Просмотров: 148
Скачиваний: 1
Первая шина PCI передавала 32 бита за цикл и работала с частотой 33 МГц (время цикла 30 нс), общая пропускная способность составляла 133 Мбайт/с. В 1993 году появилась шина PCI 2.0, а в 1995 году - PCI 2.1. Шина PCI 2.2 подходит и для портативных компьютеров (где требуется экономия заряда батареи). Шина PCI работает с частотой 66 МГц, способна передавать 64 бита за цикл, а ее общая пропускная способность составляет 528 Мбайт/с.
Хотя 528 Мбайт/с - достаточно высокая скорость передачи данных, этого недостаточно для шины памяти. С другой стороны, эта шина несовместима со старыми картами ISA. По этой причине разрабатывались компьютеры с тремя и более шинами. Центральный процессор мог обмениваться информацией с основной памятью через специальную шину памяти, а шина ISA была связана с шиной PCI. Такая архитектура использовалась во многих компьютерах Pentium II.
Ключевыми компонентами данной архитектуры являются мосты между шинами (эти микросхемы выпускает компания Intel). Мост PCI связывает центральный процессор, память и шину PCI. Мост ISA связывал шину PCI с шиной ISA, а также поддерживал один или два диска IDE. Системы Pentium II выпускались с одним или несколькими свободными слотами PCI для подключения дополнительных высокоскоростных периферийных устройств и с одним или несколькими слотами ISA для подключения низкоскоростных периферийных устройств.
Платы PCI различаются по потребляемой мощности, разрядности и синхронизации. Старые компьютеры обычно используют напряжение 5 В, а новые - 3,3 В, поэтому шина PCI поддерживает оба напряжения. Существуют и универсальные платы, которые также поддерживают оба напряжения. Платы различаются не только по мощности, но и по разрядности. Существует два типа плат: 32-битные и 64-битные. 32-битные платы содержат 120 выводов; 64-битные платы содержат те же 120 выводов плюс 64 дополнительных вывода (аналогично тому, как шина IBM PC была расширена до 16 битов). Шина PCI, поддерживающая 64-битные платы, может поддерживать и 32-битные, но обратное неверно. Наконец, шины PCI и соответствующие платы могут работать с частотой 33 МГц или 66 МГц. В обоих случаях контакты идентичны. Различие состоит в том, что один из выводов связывается либо с источником питания, либо с “землей”.
Шины PCI являются синхронными, как и все шины PC, восходящие к первой модели IBM PC. Все транзакции в шине PCI осуществляются между задающим и подчиненным устройствами. Чтобы не увеличивать число выводов на плате, адресные и информационные линии объединены. При этом используются 64 вывода для всей совокупности адресных и информационных сигналов.
Шина PCI управляется централизованным арбитром. В большинстве случаев арбитр шины встраивается в один из мостов между шинами. От каждого устройства PCI к арбитру тянутся две специальные линии. Одна из них (с сигналом REQ#) используется для запроса шины, а вторая (с сигналом GNT#) - для получения разрешения на доступ к шине. Алгоритм, которым руководствуется арбитр, не зависит от технических характеристик шины PCI.
3.6.3. Шина USB
Шина PCI хорошо подходит для присоединения высокоскоростных периферийных устройств. Использование же интерфейса PCI для низкоскоростных устройств ввода-вывода (например, мыши и клавиатуры) было бы слишком дорого. Изначально каждое стандартное устройство ввода-вывода подсоединялось к компьютеру отдельно, при этом для добавления новых устройств использовались свободные слоты ISA и PCI. Такая схема имеет ряд недостатков. Пользователь должен открыть системный блок, вставить плату, закрыть системный блок, а затем включить компьютер. Для многих этот процесс сложен и нередко приводит к ошибкам. Кроме того, число слотов ISA и PCI ограничено.
В середине 90-х годов представители ряда компаний (Compaq, DEC, IBM, Intel, Microsoft, NEC и т. д.) разработали шину USB (Universal Serial Bus - универсальная последовательная шина), которая сейчас широко используется в персональных компьютерах.
Некоторые требования, изначально составляющие основу проекта, следующие.
-
Пользователи не должны устанавливать переключатели и перемычки на платах и устройствах (как в ISA).
-
Пользователи не должны открывать компьютер, чтобы установить новые устройства ввода-вывода.
-
Должен существовать только один тип кабеля, подходящий для подсоединения всех устройств.
-
Устройства ввода-вывода должны получать питание через кабель.
-
Необходима возможность подсоединения к одному компьютеру до 127 устройств.
-
Система должна поддерживать устройства реального времени (например, звук, телефон).
-
Должна быть возможность устанавливать устройства во время работы компьютера.
-
Должна отсутствовать необходимость перезагружать компьютер после установки нового устройства.
-
Производство новой шины и устройств ввода-вывода для нее не должно требовать больших затрат.
Шина USB удовлетворяет всем этим условиям. Она разработана для низкоскоростных устройств (клавиатур, мышей, фотоаппаратов, сканеров, цифровых телефонов и т. д.). Общая пропускная способность шины составляет 1,5 Мбайт/с. Этого достаточно для большинства таких устройств. Предел был выбран для того, чтобы снизить стоимость шины.
Шина USB состоит из центрального хаба, который вставляется в разъем главной шины. Этот хаб (часто называемый корневым концентратором) содержит разъемы для кабелей, которые могут подсоединяться к устройствам ввода-вывода или к дополнительным хабам, чтобы обеспечить большее количество разъемов. Таким образом, топология шины USB представляет собой дерево с корнем в центральном хабе, который находится внутри компьютера. Коннекторы кабеля со стороны устройства отличаются от коннекторов со стороны хаба, чтобы пользователь случайно не подсоединил кабель другой стороной.
Кабель состоит из четырех проводов: два из них предназначены для передачи данных, один - для источника питания (+5 В) и один - для “земли”. Система передает 0 изменением напряжения, а 1 — отсутствием изменения напряжения, поэтому длинная последовательность нулей порождает поток регулярных импульсов.
Когда подсоединяется новое устройство ввода-вывода, центральный хаб распознает этот факт и прерывает работу операционной системы. Затем операционная система запрашивает новое устройство о том, что оно собой представляет и какая пропускная способность шины для него требуется. Если операционная система решает, что для этого устройства пропускной способности USB достаточно, она приписывает ему уникальный адрес (1-127) и загружает этот адрес и другую информацию в регистры конфигурации внутри устройства. Таким образом, новые устройства могут подсоединяться “на лету”, при этом пользователю не нужно устанавливать новые платы ISA или PCI. Многие устройства снабжены встроенными сетевыми концентраторами для дополнительных устройств. Например, монитор может содержать два хаба для правой и левой колонок.
Шина USB представляет собой ряд каналов от центрального хаба к устройствам ввода-вывода. Каждое устройство может разбить свой канал максимум на 16 подканалов для различных типов данных (например, аудио и видео). В каждом канале или подканале данные перемещаются от центрального концентратора к устройству или обратно. Между двумя устройствами ввода-вывода обмена информацией не происходит.
Ровно через каждую миллисекунду (±0,05 мс) центральный концентратор передает новый кадр, чтобы синхронизировать все устройства во времени. Кадр состоит из пакетов, первый из которых передается от концентратора к устройству. Следующие пакеты кадра могут передаваться в том же направлении, а могут и в противоположном (от устройства к хабу). Шина USB поддерживает 4 типа кадров: кадры управления, изохронные кадры, кадры передачи больших массивов данных и кадры прерывания.
Кадры управления используются для конфигурирования устройств, передачи команд устройствам и запросов об их состоянии. Изохронные кадры предназначены для устройств реального времени (микрофонов, акустических систем и телефонов), которые должны принимать и посылать данные через равные временные интервалы. Кадры следующего типа используются для передач данных большого объема от устройств и к устройствам без требований реального времени (например, сканеров, принтеров). Наконец, кадры последнего типа нужны для того, чтобы осуществлять прерывания, поскольку сама шина USB не поддерживает прерывания. Например, вместо того чтобы вызывать прерывание всякий раз, когда происходит нажатие клавиши, операционная система может вызывать прерывания каждые 50 мс и “собирать” все задержанные нажатия клавиш.
3.7. Средства сопряжения
Обычная компьютерная система малого или среднего размера состоит из микросхемы процессора, микросхем памяти и нескольких контроллеров ввода-вывода. Все эти микросхемы соединены шиной. Мы рассмотрели память, центральные процессоры и шины. Теперь кратко остановимся на микросхемах ввода-вывода. Именно через эти микросхемы компьютер обменивается информацией с внешними устройствами.
В настоящее время существует множество различных микросхем ввода-вывода. К наиболее распространенным относятся следующие: UART, USART, контроллеры CRT (CRT - электронно-лучевая трубка), дисковые контроллеры и РIO.
UART (Universal Asynchronous Receiver Transmitter - универсальный асинхронный приемопередатчик) - это микросхема, которая может считывать байт из шины данных и передавать этот байт по битам на линию последовательной передачи к терминалу или получать данные от терминала. Микросхема может обеспечивать проверку на четность или на нечетность. Микросхема USART (Universal Synchronous Asynchronous Receiver Transmitter - универсальный синхронно-асинхронный приемопередатчик) может осуществлять синхронную передачу, используя ряд протоколов. Она также выполняет все функции UART.
Типичным примером микросхемы PIO (Parallel Input/Output - параллельный ввод-вывод) является Intel 8255А. Она содержит 24 линии ввода-вывода и может сопрягаться с устройствами широкого диапазона (например, клавиатурой, принтером, переключателями, индикаторами). Программа центрального процессора может записать 0 или 1 на любую линию или считать входное состояние любой линии, обеспечивая высокую гибкость. Микросхема PIO часто используется во встроенных системах.
Центральный процессор может конфигурировать микросхему 8255А различными способами, загружая регистры состояния микросхемы. В простейшем режиме данную микросхему можно представить в виде трех 8-битных портов: А, В и С. С каждым портом связан 8-битный регистр. Чтобы установить линии, центральный процессор записывает 8-битное число в соответствующий регистр, и это 8-битное число появляется на выходных линиях и остается там до тех пор, пока регистр не будет перезаписан. Чтобы использовать порт для входа, центральный процессор считывает соответствующий регистр.
Другие режимы работы предусматривают двустороннюю связь с внешними устройствами. Например, чтобы передать данные устройству, микросхема 8255А может представить данные на порт вывода и подождать, пока устройство не выдаст сигнал о том, что данные получены и можно посылать еще. В данную микросхему включены необходимые логические схемы для фиксирования таких импульсов и передачи их центральному процессору.
Помимо 24 выводов для трех портов микросхема 8255А содержит восемь линий, непосредственно связанных с шиной данных, линию выбора элемента памяти, линии чтения и записи, две адресные линии и линию для переустановки микросхемы. Две адресные линии выбирают один из четырех внутренних регистров, три из которых соответствуют портам А, В и С. Четвертый регистр - регистр состояния. Он определяет, какие порты используются для входа, а какие для выхода, а также выполняет некоторые другие функции. Обычно две адресные линии соединяются с двумя младшими битами адресной шины.