Similar presentations:
Интерфейсы и шины в вычислительной системе. (Тема 3)
1. Интерфейсы и шины в вычислительной системе
Структура взаимосвязейвычислительной машины
2.
ОперацияАдрес
Память
N ячеек
Данные
Данные
Операция
Внутренние данные
Адрес
Внутренние данные
Модуль
ввода-вывода
Внешние данные
M портов
Сигналы прерывания
Внешние данные
Команды
Сигналы управления
Данные
Центральный
процессор
Данные
Сигналы прерывания
3.
Интерфейс - это аппаратное и программноеобеспечение (элементы соединения и
вспомогательные схемы управления, их
физические, электрические и логические
параметры), предназначенное для сопряжения
систем или частей системы (программ или
устройств). Под сопряжением подразумеваются
следующие функции:
выдача и прием информации;
управление передачей данных;
согласование источника и приемника
информации.
4. Шина
• Шина (магистраль) - это среда передачисигналов, к которой может параллельно
подключаться несколько компонентов
вычислительной системы и через
которую осуществляется обмен данными.
Очевидно, для аппаратных
составляющих большинства
интерфейсов применим термин шина,
поэтому зачастую эти два обозначения
выступают как синонимы, хотя
интерфейс - понятие более широкое.
5. Интерфейс
• Для интерфейсов возможны следующиереализации режимов обмена: дуплексный,
полудуплексный и симплексный. К дуплексным
относят интерфейсы, обеспечивающие
возможность одновременной передачи данных
между двумя устройствами в обоих
направлениях. В случае, когда канал связи
между устройствами поддерживает
двунаправленный обмен, но в каждый момент
времени передача информации может
производиться только в одном направлении,
режим обмена называется полудуплексным.
6. Основные технические характеристики интерфейсов
• вместимость (максимально возможноеколичество абонентов, одновременно
подключаемых к контроллеру
интерфейса без расширителей);
• пропускная способность или скорость
передачи (длительность выполнения
операций установления и разъединения
связи и степень совмещения процессов
передачи данных);
• максимальная длина линии связи;
• разрядность;
• топология соединения
7.
• Взаимосвязь частей ВМ и ее «общение» свнешним миром обеспечиваются системой
шин. Большинство машин содержат
несколько различных шин, каждая из
которых оптимизирована под определенный
вид коммуникаций. Часть шин скрыта внутри
интегральных микросхем или доступна
только в пределах печатной платы.
Некоторые шины имеют доступные извне
точки, к которым легко подключить
дополнительные устройства, большинство
таких шин не просто доступны, но и
отвечают определенным стандартам, что
позволяет подсоединять к шине устройства
различных производителей.
8.
• Чтобы охарактеризовать конкретнуюшину, нужно описать:
• совокупность сигнальных линий;
• физические, механические и
электрические характеристики шины;
• используемые сигналы арбитража,
состояния, управления и синхронизации;
• правила взаимодействия подключенных
к шине устройств (протокол шины).
9.
• Шину образует набор коммуникационныхлиний, каждая из которых способна
передавать сигналы, представляющие
двоичные цифры 1 и 0. По линии может
пересылаться развернутая во времени
последовательность таких сигналов. При
совместном использовании несколько
линий могут обеспечить одновременную
(параллельную) передачу двоичных
чисел. Физически линии шины
реализуются в виде отдельных
проводников, как полоски проводящего
материала на монтажной плате либо как
алюминиевые или медные проводящие
дорожки на кристалле микросхемы.
10. Электрические аспекты
• Все устройства, использующие шину,электрически подсоединены к ее
сигнальным линиям. Меняя уровни
напряжения на сигнальных линиях, ведущее
устройство формирует на них
информационные или управляющие
сигналы. Когда ведущее устройство
выставляет на сигнальной шине какой-то
уровень напряжения, этот уровень может
быть воспринят приемниками в любой точке
линии. Это идеализированная картина
происходящих на шине процессов —
реальные процессы значительно сложнее.
11.
• Схему, меняющую напряжение насигнальной шине, обычно называют
драйвером. При реализации шины
необходимо предусмотреть возможность
отключения драйвера от сигнальной линии
на период, когда он не использует шину.
Один из способов— применение драйвера,
выход которого может находиться в одном из
трех состояний: «высокий уровень
напряжения» (high), «низкий уровень
напряжения» (low) и «отключен» (off). Для
перевода в состояние «off», эквивалентное
отключению выхода драйвера от сигнальной
линии, используется специальный вход
драйвера.
12.
• Совместное использование линии шинынесколькими устройствами возможно также за
счет подключения этой линии к выходу
драйвера через резистор, соединенный с
источником питания (схемы с открытым
коллектором (ТТЛ), открытым стоком (МОП) или
открытым эмиттером (ЭСЛ)). Данный способ
исключает электрические конфликты на шине и
позволяет реализовать вид логической
операции, «монтажное ИЛИ» или «монтажное
И». Если к линии одновременно подключается
несколько драйверов, то сигнал на линии
представляет собой результат логического
сложения (операция ИЛИ) всех поступивших на
линию сигналов. Это используется при
решении задачи арбитража. В некоторых шинах
«монтажное ИЛИ» используется лишь в
отдельных сигнальных линиях.
13. Факторы влияющие на распространение сигнала
• скорость распространения;• отражение;
• перекос;
• эффекты перекрестного влияния.
Теоретическая граница скорости
распространения сигнала —300 мм/нс.
Реальная скорость, определяемая
физическими характеристиками
сигнальных линий и нагрузкой, не может
превысить 70% от скорости света.
14. Отражение
• Сигнал драйвера «подтягивает» линию ксвоему уровню напряжения. Изменение
напряжения распространяется от точки
подключения драйвера в обоих
направлениях, пока на всей линии не
установится уровень сигнала драйвера.
Характер распространения сигнала
определяют емкость, индуктивность и
характеристическое сопротивление линии,
локальные значения которых по длине
линии зависят от локальных свойств
проводника и его окружения.
15.
По мере распространения по реальной линиисигнал преодолевает области с различным
сопротивлением. Там, где оно меняется, сигнал
искажается. Часть сигнала продолжает
продвижение, а часть отражается в
противоположную сторону. Прямой и
отраженный сигналы могут повторно
отражаться, в результате чего на линии
формируется сложный результирующий сигнал.
В конце линии сигнал отражается назад. Если на
конце линии имеется согласующий резистор, с
сопротивлением, идентичным импедансу линии,
сигнал будет поглощен без отражения. Такие
резисторы должны размещаться по обоим
концам сигнальной линии. Точное значение
импеданса линии не известно, из-за чего
номиналы резисторов невозможно точно
согласовать с линией, и отражение всегда имеет
место.
16. Перекос
При параллельной передаче по линиям шины сигналы наразных линиях достигают соответствующих приемников
не одновременно. Это явление известно как перекос
сигналов.
Распространяясь по линии, сигнал создает вокруг нее
электростатическое и магнитное поля. Поля от близко
расположенных линий перекрываются, приводя к тому,
что сигнал на одной линии влияет на сигнал в другой.
Этот эффект называют перекрестной или переходной
помехой.
Способы уменьшения перекрестной помехи –
пространственно разнести линии шины , уменьшение
взаимных емкости и индуктивности линий, за счет
размещения вблизи сигнальных линий «земляных»
линий, разделение линий изолятором с малой
диэлектрической постоянной. В целом, при
проектировании шин обычно используется комбинация
перечисленных методов борьбы с перекрестной
помехой.
17. Арбитраж
• Операции на шине называют транзакциями.Основные виды транзакций — транзакции
чтения и транзакции записи. Шинная
транзакция включает в себя две части: посылку
адреса и прием (или посылку) данных.
• Когда два устройства обмениваются
информацией по шине, одно из них должно
инициировать обмен и управлять им. Такого
рода устройства называют ведущими (bus
master). «Ведущий» — это любое устройство,
способное взять на себя владение шиной и
управлять пересылкой данных
18.
• Ведущий может захватить управление шиной винтересах другого устройства. Устройства, не
обладающие возможностями инициирования
транзакции, носят название ведомых (bus
slave). К шине может быть подключено
несколько потенциальных ведущих, но в любой
момент времени активным может быть только
один из них: если несколько устройств
передают информацию одновременно, их
сигналы перекрываются и искажаются. Для
предотвращения одновременной активности
нескольких ведущих в любой шине
предусматривается процедура допуска к
управлению шиной только одного из
претендентов (арбитраж).
19. Схемы приоритетов
• Каждому потенциальному ведущемуприсваивается определенный уровень
приоритета, который может оставаться
неизменным (статический приоритет) либо
изменяться по какому-либо алгоритму
(динамический приоритет). Недостаток
статических приоритетов в том, что устройства,
имеющие высокий приоритет, в состоянии
полностью блокировать доступ к шине
устройств с низким уровнем приоритета.
Системы с динамическими приоритетами дают
шанс каждому из запросивших устройств рано
или поздно получить право на управление
шиной.
20.
Алгоритмы динамического измененияприоритетов:
• простая циклическая смена
приоритетов;
• циклическая смена приоритетов с
учетом последнего запроса;
• смена приоритетов по случайному
закону;
• схема равных приоритетов;
• алгоритм наиболее давнего
использования.
21.
• В алгоритме простой циклической сменыприоритетов после каждого цикла арбитража все
приоритеты понижаются на один уровень, при этом
устройство, имевшее ранее низший уровень
приоритета, получает наивысший приоритет.
• В схеме циклической смены приоритетов с учетом
последнего запроса все возможные запросы
упорядочиваются в виде циклического списка.
После обработки очередного запроса
обслуженному ведущему назначается низший
уровень приоритета. Следующее в списке
устройство получает наивысший приоритет, а
остальным устройствам приоритеты назначаются в
убывающем порядке, согласно их следованию в
циклическом списке.
22.
• При смене приоритетов по случайному законупосле очередного цикла арбитража с помощью
генератора псевдослучайных чисел каждому
ведущему присваивается случайное значение
уровня приоритета.
• В схеме равных приоритетов при поступлении к
арбитру нескольких запросов каждый из них имеет
равные шансы на обслуживание. Возможный
конфликт разрешается арбитром. Такая схема
принята в асинхронных системах.
• В алгоритме наиболее давнего использования
(LRU, Least Recently Used) после каждого цикла
арбитража наивысший приоритет присваивается
ведущему, который дольше чем другие не
использовал шину.
23. Схемы арбитража
• Арбитраж запросов на управление шинойможет быть организован по
централизованной или
децентрализованной схеме.
• При централизованном арбитраже в
системе имеется специальное устройство
– центральный арбитр, ответственное за
предоставление доступа к шине только
одному из запросивших ведущих. Это
устройство, называемое иногда
центральным контроллером шины, может
быть самостоятельным модулем или
частью ЦП.
24. Обслуживание нескольких устройств
Реализация приоритетов прерываний с использованиеминдивидуальных линий подтверждения прерывания
INTRp
INTR1
Устройство
1
INTA1
Арбитражная
схема
Устройство
2
Устройство
p
INTAp
25.
• Достоинство данного метода высокаяскорость арбитража, потому что
арбитраж производится параллельно.
• Недостаток – большое количество
сигнальных линий.
• INTR1 – запрос на захват шины
• INTA1 - разрешение на захват шины
• Приоритет определяется алгоритмом
арбитра
26. Обслуживание нескольких устройств
Схемы приоритетов : гирляндная цепьINTR
INTA
Устройство
1
Устройство
2
Устройство
n
27.
• Запрос на обслуживание шины всеустройства подают по одной шине INTR
параллельно. Если шина не занята,
контроллер выдает сигнал предоставления
работы с шиной который последовательно
проходит через устройства пока не встретит
первое устройство запросившее шину.
Устройство блокирует прохождение сигнала
дальше, выставляет сигнал занятости шины
и начинает управлять шиной. Приоритет не
изменяемый и зависит от местоположения
устройства.
28. Обслуживание нескольких устройств
Схемы приоритетов : группы с приоритетамиINTR1
INTA1
Устройство
Устройство
INTR p
INTA p
Устройство
Арбитражная
схема
Устройство
29.
• Совмещает первые два способа.Группы обслуживаются параллельно с
заданным алгоритмом определения
приоритета, а внутри группы приоритет
зависит от местоположения устройства.
30. Разрешение конфликтов на шине
Схема распределенного арбитражаVcc
____
ARB3
____
ARB2
____
ARB1
____
ARB0
______________
Start - Arbitration
Открытый
коллектор
0
1
0
1
0
1
1
1
31.
• Предположим, что устройства А и В, которыеимеют идентификационные номера 5 и 6,
одновременно запрашивают шину. Устройство А
передает значение 0101, а устройство В –
значение 0110. Оба они получают код 0111. После
этого каждое из устройств сравнивает код со своим
идентификационным номером, начиная с самого
старшего разряда, и, если обнаруживает различие
хотя бы в одном разряде, отключает свой
повторитель в этом разряде и все повторители
младших разрядов. Для этого оно просто помещает
на входы соответствующих повторителей значение
0. В нашем примере устройство А обнаруживает
различие на линии
32.
ARB1, поэтому отключает повторители налиниях ARB1 и ARB0. В результате код на
линиях арбитража меняется на 0110, и это
означает, что победило устройство В.
Поскольку код на линиях приоритета в течение
короткого промежутка времени был равен
0111, устройство В смогло временно
отключить свой повторитель на линии ARB0.
Однако оно снова включит этот повторитель,
как только увидит на линии ARB1 значение 0,
появившееся в результате действий
устройства А. Т.О. чем больше номер, тем
больше приоритет
33. Типы шин
• Важным критерием, определяющимхарактеристики шины, может
служить ее целевое назначение. По
этому критерию можно выделить:
• шины «процессор-память»;
• шины ввода/вывода;
• системные шины.
34.
• Шина «процессор-память» обеспечиваетнепосредственную связь между центральным
процессором вычислительной машины и
основной памятью . В современных
микропроцессорах такую шину часто называют
шиной переднего плана и обозначают
аббревиатурой FSB (Front-Side Bus).
Интенсивный трафик между процессором и
памятью требует, чтобы полоса пропускания
шины, то есть количество информации,
проходящей по шине в единицу времени, была
наибольшей. Роль этой шины иногда выполняет
системная шина однако в плане эффективности
значительно выгоднее, если обмен между ЦП и
ОП ведется по отдельной шине.
35.
• Шина ввода/вывода служит для соединенияпроцессора (памяти) с устройствами
ввода/вывода (УВВ). Учитывая разнообразие
таких устройств, шины ввода/вывода
унифицируются и стандартизируются. Связи с
большинством УВВ не требуют от шины
высокой пропускной способности. При
проектировании шин ввода/вывода в учет
берутся стоимость конструктива и
соединительных разъемов. Такие шины
содержат меньше линий по сравнению с
вариантом «процессор-память», но длина
линий может быть весьма большой. Типичными
примерами подобных шин могут служить шины
PCI и SCSI.
36.
• С целью снижения стоимости некоторые ВМимеют общую шину для памяти и устройств
ввода/вывода. Такая шина часто называется
системной. Системная шина служит для
физического и логического объединения всех
устройств ВМ. Поскольку основные устройства
машины, как правило, размещаются на общей
монтажной плате, системную шину часто
называют объединительной шиной (backplane
bus), хотя эти термины нельзя считать строго
эквивалентными.
• Системная шина в состоянии содержать
несколько сотен линий. Совокупность линий
шины можно подразделить на три
функциональные группы: шину данных, шину
адреса и шину управления. К последней
обычно относят также линии для подачи
питающего напряжения на подключаемые к
системной шине модули.
37.
• Все этапы передачи данных по шинедолжны быть синхронизированы по
времени.
• По типу синхронизации передачи
данных шины различаются на
синхронные и асинхронные.
• Время необходимое для передачи
данных называют циклом шины
38. Синхронная шина
Временная диаграмма операции пересылкипо синхронной шине при вводе данных
Время
Тактовый
сигнал шины
Адрес и
Команды
Данные
t0
t1
Цикл шины
t2
39.
• В случае синхронной шины всеустройства получают
синхронизирующую информацию по
общей тактовой линии. На эту линию
подаются тактовые импульсы со
строго фиксированной частотой.
Промежуток времени между
последовательными тактовыми
импульсами в простейшей
синхронной шине составляет цикл
шины, в течение которого
выполняется одна операция
пересылки данных.
40.
• На этом и следующих рисунках на линияхадреса и данных показаны сигналы и
низкого и высокого уровня. Это
стандартный прием, обозначающий, что
на одних из этих линий уровень сигнала
низкий, а на других, наоборот, высокий и
зависит от конкретных значений адреса и
данных. Точки пересечения линий на
рисунке соответствуют моментам
изменения этих значений. Сигнальная
линия в неопределенном, или
высокоимпедансном, состоянии
представлена промежуточным уровнем,
находящимся посередине между
высоким и низким.
41.
• В момент времени t0 хозяин шины помещает наадресные линии адрес устройства и отсылает
по управляющим линиям необходимую
команду. В этой команде определяется
операция ввода и, задается длина
считываемого операнда. Информация
передается по шине со скоростью,
определяемой ее физическими и
электрическими характеристиками.
Длительность тактового импульса t1 - t0
должна быть больше максимального времени
задержки на распространение сигнала между
двумя соединенными с шиной устройствами и
все устройства должны успеть декодировать
адрес и управляющие сигналы, с тем чтобы
адресуемое устройство могло ответить на
команду в момент времени t1.
42.
• В течение промежутка времени от t0 до t1информация на шине ненадежна, поскольку
состояние сигналов изменяется. В момент времени
t1 адресуемое устройство помещает запрошенные
входные данные на линии данных.
• В конце тактового цикла (t2) хозяин шины
стробирует данные на линиях данных в свой
входной буфер. Слово «стробировать» в
используемом контексте означает снять значения с
линий данных в указанный момент времени и
сохранить их в буфере. Для того чтобы данные
правильно загружались в любое устройство
хранения они должны находиться на его входе в
течение времени, достаточного для их сохранения.
Поэтому период времени t2 – t1 должен быть
больше максимального времени распространения
сигнала по шине в сумме со временем установки
входного буферного регистра хозяина шины.
43. Синхронная шина
Временная диаграмма для операции пересылки входных данныхс учетом задержек на распространение сигнала
Время
Тактовый
сигнал шины
Для хозяина шины
tAM
Адрес и команда
Данные
tDM
Для подчиненного
устройства
tAS
Адрес и команда
Данные
tDS
t0
t1
t2
44.
• Каждый сигнал, за исключением тактового,показан здесь в двух вариантах. Поскольку
на передачу сигнала от одного устройства к
другому уходит некоторое время, разные
устройства видят изменения этого сигнала в
разные моменты. Одно представление
соответствует тому, как данный сигнал видит
хозяин шины, а другое – тому, как его видит
подчиненное устройство. При этом
предполагается, что изменения тактового
сигнала все подключенные к шине
устройства замечают одновременно
45.
• Поскольку пересылка данных выполняется за одинтакт, период t2 - t0 должен выбираться таким
образом, чтобы вместить и наиболее долгие
задержки на шине, и задержки самого медленного
интерфейса устройств. В результате все
устройства будут работать со скоростью самого
медленного из них. Кроме того, у процессора нет
возможности определить, какое из адресуемых
устройств на самом деле ответило на запрос. Он
предполагает, что в момент времени t2 выходные
данные получены устройством ввода-вывода или
что входные данные имеются на линиях данных.
Если же по какой-либо причине устройство не
ответит, процессор даже не обнаружит ошибку.
46. Синхронная шина
Пересылка данных с использованием несколькихтактов
1
Тактовый сигнал
Адрес
Команда
Данные
Slave-ready
2
3
Время
4
47.
• Для преодоления этих ограничений в шинувключают управляющий сигнал (Slave-ready),
передаваемый в качестве ответа устройства. Эти
сигналы информируют хозяина шины о том, что
подчиненное устройство готово участвовать в
операции пересылки данных. Кроме того, они
позволяют откорректировать длительность
периода пересылки данных в соответствии с
требованиями участвующих в операции устройств.
Для упрощения этой задачи используется тактовый
сигнал высокой частоты, при котором цикл
пересылки занимает несколько тактов. Таким
образом, количество тактов, затрачиваемых на
операцию пересылки данных, зависит от
конкретной пары устройств.
48. Асинхронные шины
Пересылка входных данных по шине сиспользованием квитирования (ввод)
Время
Адрес и
команда
Master-ready
Slave-ready
Данные
t0
t1
t2
Цикл шины
t3
t4
t5
49.
• Альтернативная схема управленияпересылкой данных по шине основывается
на механизме квитирования, то есть
подтверждения связи, между хозяином
шины и подчиненным устройством.
Концепция квитирования является
обобщением идеи использования сигнала
Slave-ready. В схеме с квитированием
тактовая линия заменяется двумя
управляющими линиями синхронизации:
Master-ready и Slave-ready. Первая
принадлежит хозяину шины, который
передает по ней сигнал готовности к
транзакции, а по второй отвечает
подчиненное устройство.
50.
• Пример выполнения операции пересылки входныхданных с использованием квитирования
• t0 – хозяин шины помещает на нее адрес и
команду, и все устройства на шине начинают
декодировать эту информацию.
• t1 – хозяин шины активизирует линию Master-ready,
чтобы проинформировать устройства вводавывода о том, что адрес и команда поданы на
шину. Задержка, равная t1 - t0 учитывает сдвиг
сигналов и время декодирования.
• t2 –подчиненное устройство выполняет операцию
ввода. Одновременно оно активизирует сигнал
Slave-ready. Длительность промежутка времени t2
– t1 зависит от расстояния между хозяином шины и
подчиненным устройством, а также от задержек в
схеме подчиненного устройства. Поскольку
указанный промежуток времени имеет разную
длительность, схема получается асинхронной.
51.
• t3 – сигнал Slave-ready достигает хозяина шины исообщает ему, что на шине имеются данные.
После задержки (t2 – t3 ), равной сумме времени
максимального сдвига сигналов на шине и
минимального времени установки буфера, хозяин
шины стробирует данные в свой входной буфер.
Одновременно он удаляет с шины сигнал Masterready, сообщая тем самым о получении данных.
• t4 – хозяин шины удаляет с шины адрес и команду.
• t5 – когда интерфейс устройства фиксирует
переход сигнала Master-ready из 1 в 0, он удаляет с
шины данные и сигнал Slave-ready. На этом
пересылка входных данных завершается.
52. Асинхронные шины
Пересылка выходных данных по шине сиспользованием квитирования (вывод)
Время
Адрес и
команда
Данные
Master-ready
Slave-ready
t0
t1
t2
Цикл шины
t3
t4
t5
53.
• Процесс выполнения операции выводапочти ничем не отличается от процесса
выполнения операции ввода. Правда, в этом
случае хозяин шины одновременно с
адресом и командой помещает на линии
данных выходную информацию. Получив
сигнал Master-ready, подчиненное
устройство стробирует данные в свой
входной буфер и сообщает об этом
установкой сигнала Slave-ready в 1. Дальше
все происходит точно так, как при вводе
данных.
54. Методы управления вводом/выводом
• В ВМ находят применение три способаорганизации ввода/вывода:
• программно управляемый ввод/вывод;
• ввод/вывод по прерываниям;
• прямой доступ к памяти.
55.
• При программно управляемом вводе/выводевсе связанные с этим действия происходят
по инициативе центрального процессора и
под его полным контролем. ЦП выполняет
программу, которая обеспечивает прямое
управление процессом ввода/вывода,
включая проверку состояния устройства,
выдачу команд ввода или вывода. Выдав в
МВВ команду, центральный процессор
должен ожидать завершения ее
выполнения, поскольку ЦП работает
быстрее, чем МВВ, это приводит к потере
времени.
56.
• Ввод/вывод по прерываниям во многомсовпадает с программно управляемым
методом. Отличие состоит в том, что после
выдачи команды ввода/вывода ЦП не
должен циклически опрашивать МВВ для
выяснения состояния устройства. Вместо
этого процессор может продолжать
выполнение других команд до тех пор, пока
не получит запрос прерывания от МВВ,
извещающий о завершении выполнения
ранее выданной команды. Как и при
программно управляемом вводе/выводе, ЦП
отвечает за извлечение данных из памяти
(при выводе) и запись данных в память (при
вводе).
57.
• Повышение как скорости ввода/вывода, таки эффективности использования ЦП
обеспечивает третий способ ввода/вывода
— прямой доступ к памяти (ПДП). В этом
режиме основная память и модуль
ввода/вывода обмениваются информацией
напрямую, минуя процессор. Процессор
инициирует операцию и передает
управление контроллеру ПДП. По
завершении ввода/вывода контроллер
оповещает ЦП с помощью прерывания.
58. Стандартные интерфейсы ввода/вывода
• Шина процессора – это шина, управляемая темиже сигналами, что и микросхема процессора. Из-за
некоторых ограничений электрической природы с
процессором может быть соединено лишь
несколько устройств. На материнской плате
обычно имеется еще одна шина, способная
поддерживать большее количество устройств. Эти
две шины соединены между собой с помощью
специальной схемы, называемой мостом и
предназначенной для преобразования сигналов в
соответствии с протоколами, регулирующими
применение этих двух шин. Устройства,
подключенные к шине расширения,
представляются процессору непосредственно
соединенными с его собственной шиной. Мост
вызывает небольшую задержку при пересылке
данных между процессором и этими устройствами.
59.
• Универсальный стандарт для шиныпроцессора определить невозможно,
поскольку ее структура очень тесно связана
с архитектурой процессора. Структура шины
зависит от электрических характеристик
процессора, в том числе от его тактовой
частоты. Однако на шину расширения эти
ограничения не распространяются, поэтому
для нее можно использовать стандартную
схему сигналов. Для шин расширения
разработан целый ряд стандартов.
Некоторые стандарты разрабатывались
объединенными усилиями крупных
компаний, которые были заинтересованы в
создании совместимых устройств.
60. Стандартные интерфейсы ввода-вывода
• В этом разделе вы познакомитесь стремя широко применяемыми
стандартами шин:
• PCI (Peripheral Component
Interconnect)
• SCSI (Small Computer Systems
Interface)
• USB (Universal Serial Bus).
61. Стандартные интерфейсы ввода-вывода
Пример компьютерной системы, в которой используетсянесколько стандартов интерфейса
Процессор
Основная память
Шина процессора
Мост
Шина PCI
Дополнительная Контроллер
память
SCSI
Шина SCSI
Дисковый
контроллер
Диск 1
Диск 2
Интерфейс
Ethernet
Контроллер
CD-ROM
CD-ROM
Контроллер
USB
Видео
Клавиатура
Интерфейс
ISA
Диск
Игровое
устройство
62. Шина PCI
• Шина PCI – это разновидность системнойшины, появившейся в ответ на потребность
в стандартизации используемых устройств.
Она поддерживает функции, типичные для
шины процессора, но в
стандартизированном формате, независимо
от типа процессора. Подключенные к этой
шине устройства представляются
процессору непосредственно соединенными
с его собственной шиной. Им назначаются
адреса из адресного пространства памяти
процессора.
63.
• Шина PCI предназначена для поддержки режимапакетного ввода/вывода данных. Операция чтения
или записи одного слова интерпретируется ею как
чтение или запись пакета длиной в одно слово.
Шина поддерживает три независимых адресных
пространства: памяти, ввода-вывода и
конфигурации. Назначение первых двух понятно.
Адресное пространство ввода-вывода
используется такими процессорами, как Pentium,
имеющими отдельное адресное пространство
ввода-вывода. Конфигурационное адресное
пространство предназначено для поддержки
технологии plug-and-play. Сопровождающая адрес
4-разрядная команда указывает, какое из трех
адресных пространств должно использоваться в
этой операции пересылки данных.
64.
• Хозяином шины в каждый конкретныймомент времени может быть только одно
устройство. Это устройство имеет право
инициировать операции пересылки данных с
помощью команд чтения и записи. Согласно
терминологии PCI, хозяин шины называется
инициатором. Им может быть либо
процессор, либо контроллер ПДП.
Адресуемое устройство, отвечающее на
команды чтения и записи, называется
целевым. Рассмотрим назначение сигналов
пересылки данных по шине PCI
65.
ИмяОписание
CLK
Тактовый сигнал с частотой
FRAME*
Активизируется инициатором с целью определения
длительности транзакции
AD
Представляет 32 линии для пересылки адресов и
данных (количество линий при необходимости
может быть увеличено до 64)
С/ВЕ#
Представляет 4 линии для команды считывания
(Command) и массив, указывающий, какие байты
подлежат считыванию (Byte enable)
IRDY#,
TRDY#
Сигналы готовности инициатора
устройства соответственно
DEVSEL#
Ответ устройства, указывающий, что оно
распознало свой адрес и готово к операции
пересылки данных
IDSEL#
Сигнал выбора инициализируемого устройства
и
целевого
66. Шина PCI
Операция чтения на шине PCICLK
1
2
3
4
5
6
7
Frame#
AD
Адрес
C/BE#
Команда
IRDY#
TRDY#
DEVSEL#
#1
#2
#3
Разрешающий сигнал
#4
67.
• Рассмотрим операцию в которой процессорсчитывает из памяти 32-разрядное слово. Ее
инициатором является процессор, а
целевым устройством – память. Полная
операция пересылки данных по шине,
включающая пересылку адреса и пакета
данных, называется транзакцией.
Пересылка отдельного слова в ходе
транзакции называется фазой. Тактовый
сигнал используется для координирования
различных фаз транзакции. Все изменения
сигналов инициируются передним фронтом
тактового сигнала. Из-за задержек
изменения сигналов следуют через
некоторое время после тактовых импульсов.
68.
• На такте 1 процессор помещает на шину сигналFRAME#, сообщая тем самым о начале
транзакции. Одновременно он помещает адрес на
линии AD и команду на линии С/ВЕ#. В данном
случае команда указывает, что запрошена
операция чтения и что в ней используется
адресное пространство памяти.
• Такт 2 предназначен для переключения линий
шины AD. Процессор удаляет с них адрес и
отключает свои выходные повторители. Выбранное
целевое устройство, напротив, включает свои
повторители на линиях AD и в течение такта 3 по
мещает на эти линии запрошенные данные. Затем
оно активизирует сигнал DEVSEL# и поддерживает
его в активном состоянии до конца транзакции.
69.
• Линии С/ВЕ#, использовавшиеся для пересылкикоманды на такте 1, в оставшейся части
транзакции применяются для другой цели. Каждая
из них связана с одним байтом данных на линиях
AD. Инициатор активизирует одну или несколько
линий С/ВЕ#, для того чтобы указать, какие из
линий AD должны использоваться для пересылки
данных. Если целевое устройство способно
одновременно пересылать 32 бита данных, все
четыре линии С/ВЕ# устанавливаются в 1.
• В течение такта 3 инициатор активизирует сигнал
IRDY#, с тем чтобы сообщить о своей готовности к
получению данных. Если целевое устройство к
этому моменту уже готово к отправке данных, оно
устанавливает сигнал TRDY# и помещает на шину
слово данных. В конце такта инициатор загружает
данные в свой входной буфер. На тактах 4-6
целевое устройство отсылает инициатору еще три
слова данных.
70.
• С помощью сигнала FRAME# инициаторуказывает длину пакета данных. Во время
передачи предпоследнего слова он снимает
этот сигнал, отмечая окончание пакета. В
нашем примере инициатор хочет прочитать
четыре слова. Поэтому он снимает сигнал
FRAME# на такте 5, во время которого
получает третье слово данных. После
отправки четвертого слова на такте 6
целевое устройство отсоединяет свои
повторители от линий AD и в начале такта 7
снимает сигнал DEVSEL#.
71. Шина PCI
Роль сигналов IRDY# и TRDY# в операции чтенияCLK
Frame#
AD
C/BE#
IRDY#
TRDY#
DEVSEL#
Адрес
Команда
#1
#2
#3
Разрешающий сигнал
#4
72.
• С помощью сигналов IRDY# и TRDY# инициатор ицелевое устройство делают паузы в середине
транзакции. Целевое устройство отсылает третье
слово на такте 5. Предположим, что в этот момент
инициатор не готов к его получению. Тогда он
снимает сигнал IRDY#, а целевое устройство
сохраняет третье слово на линях AD до тех пор,
пока сигнал IRDY# не появится снова. На такте 6
инициатор активизирует сигнал IRDY# и в конце
этого такта загружает данные в свой входной
буфер. Допустим, что теперь целевое устройство
не готово к немедленной отправке четвертого
слова данных. В начала такта 7 оно снимает
сигнал TRDY#, а на такте 8 помещает четвертое
слово на линии AD и активизирует сигнал TRDY#.
Поскольку на третьем слове данных сигнал
FRAME# снимается, после пересылки четвертого
слова данных транзакция завершается.
73. Конфигурирование устройства
• Если устройство подключено к компьютеру,программному обеспечению нужно знать его адрес
информацию о различных характеристиках
устройства, таких как скорость работы канала
связи, использование битов четности и т. д.
• Стандарт PCI упрощает этот процесс путем
включения в интерфейс каждого устройства вводавывода конфигурационной ROM-памяти
небольшого объема, предназначенной для
хранения информации об устройстве. При
включении или перезапуске компьютера
программное обеспечение, выполняющее
инициализацию шины PCI, считывает содержимое
этой памяти на основании полученных данных
определяет тип каждого устройства (принтер,
клавиатура, сетевая плата, дисковый контроллер и
т. д.) и, если нужно, узнает опции и характеристики
устройства.
74.
• В результате процесса инициализации устройствамназначаются адреса. Это означает, что в ходе
операции конфигурирования шины доступ к
устройствам по их адресам не возможен, поскольку
таковые им пока еще не назначены. Поэтому для
доступа к адресному пространству конфигурации
применяется другой механизм. У каждого
устройства имеется входной сигнал, называемый
IDSEL# (Initialization Device Select – выбор
инициализируемого устройства). В ходе операции
конфигурирования выбор устройства выполняется
с помощью этого сигнала, а не с помощью адреса,
поданного на AD-входы устройства. На
материнской плате в каждом разъеме, к которому
подключается интерфейс устройства вводавывода, имеется контакт IDSEL#, соединенный с
одной из 21 старших адресных линий, от AD11 до
AD31.
75.
• Выбор устройства для конфигурированиявыполняется путем подачи на шину
конфигурационной команды и адреса, в котором
соответствующая линия AD установлена в 1, а
оставшиеся 20 линий – в 0. Младшие адресные
линии, от AD10 до AD00, используются для
задания типа операции и для доступа к
содержимому конфигурационной ROM устройства.
Такая организация шины PCI позволяет
подключить к ней не более 21 устройства вводавывода. Конфигурационное программное
обеспечение сканирует 21 область
конфигурационного адресного пространства, чтобы
узнать, какие устройства подключены к
компьютеру.
76.
• Каждое устройство может запросить адрес впространстве ввода-вывода или в пространстве
основной памяти. Назначенный устройству адрес
записывается в один из его регистров. Кроме того,
конфигурационное программное обеспечение
устанавливает такие параметры, как приоритет
прерываний устройства. Шина PCI включает
четыре линии запроса прерывания. Записывая
данные в регистр конфигурации устройства,
программное обеспечение информирует
устройство о том, какие из этих линий оно может
использовать для запроса прерывания. Если
устройству необходима инициализация,
предназначенный для этой цели код хранится в
специальной ROM его интерфейса. (Это не та
ROM, которая используется в процессе
конфигурирования.) Программное обеспечение PCI
считывает данный код и выполняет его для
инициализации устройства.
77.
• Описанная процедура освобождаетпользователя от участия в
конфигурационном процессе. Теперь ему
необходимо лишь вставить интерфейсную
плату в разъем и включить питание. Все
остальное делает программное
обеспечение, по окончании работы которого
устройство готово к использованию. Эта
процедура подключения устройств вводавывода, получила название plug-and-play.
Шины PCI была пионером этого нового
механизма
78. Подключение шины PCI
79. PCI Express
• Интерфейс PCI Express используетконцепцию PCI, однако физическая их
реализация кардинально отличается. На
физическом уровне PCI Express
представляет собой не шину, а некое
подобие сетевого взаимодействия на основе
последовательного протокола. Высокое
быст