Шинная архитектура ЭВМ
Содержание
Введение
- Внутренняя структкра ЭВМ
- Шины расширений
- Шина PC/XT bus
- Шина PC/AT bus
- Шина ISA
- Шина EISA
- Шина МСА
- Локальные шины
- Шина VLB
- Шина PCI
- Шина SCSI
Заключение
Список литературы
Введение
С середины
60-х годов существенно
Архитектура ЭВМ— это общее описание структуры и функций ЭВМ. Архитектура не несет в себе описание деталей технического и физического устройства компютера.
Архитектура
ЭВМ охватывает широкий круг проблем,
связанных с построением
Среди этих факторов важнейшими являются: стоимость, сфера применения, функциональные возможности, удобство эксплуатации, а один из главных компонентов архитектуры является аппаратные средства.
Архитектуру вычислительного средства следует отличать от его структуры. Структура вычислительного средства определяет его конкретный состав на некотором уровне детализации (устройства, блоки узлы и т. д.) и описывает связи внутри средства во всей их полноте. Архитектура же определяет правила взаимодействия составных частей вычислит средства, описание кот. выполняется в той мере, в какой это необходимо для формирования правил их взаимодействия.
- Внутренняя структура ЭВМ
Внутренняя структура ЭВМ содержит интелектуальные контроллеры. Для связи между отдельными функциональными узлами ЭВМ используется общая шина (часто ее называют магистралью). Шина состоит из трех частей:
- шина данных, по которой передается информация;
- шина адреса, определяющая, кому передаются данные;
- шина управления, регулирующая процесс обмена информацией.
Кодовая шина данных (КШД), содержит провода и схемы сопряжения для параллельной передачи всех разрядов числового кода (машинного слова) операнда.
Кодовая шина адреса (КША), включающая провода и схемы сопряжения предназначена для параллельной передачи всех разрядов кода адреса ячейки основной памяти или порта ввода-вывода внешнего устройства.
Кодоваю шина инструкций (КШИ), содержащая провода и схемы сопряжения, служит для передачи инструкций (управляющих сигналов, импульсов) во все блоки машины.
Шина питания, имеющаю провода и схемы сопряжения для подключения блоков ПК к системе энергопитания.
Системная
шина обеспечивает три
- между микропроцессором и основной памятью;
- между микропроцессором и портами ввода-вывода внешних устройств;
- между основной памятью и портами ввода-вывода внешних устройств (в режиме прямого доступа к памяти).
Все блоки,
а точнее их порты ввода-вывода, через
соответствующие
Отметим, что существуют модели компьютеров, у которых шины данных и адреса для экономии объединены. У таких машин сначала на шину выставляется адрес, а затем через некоторое время данные; для какой именно цели используется шина в данный момент, определяется сигналами на шине управления.
Описанную схему легко пополнять новыми устройствами - это свойство называют открытостью архитектуры. Для пользователя открытая архитектура означает возможность свободно выбирать состав внешних устройств для своего компьютера, т.е. конфигурировать его в зависимости от круга решаемых задач.
Рис.1 Шинная архитектура ЭВМ.
В подавляющем большинстве современных ПК в качестве системного интерфейса используется системная шина.
Важнейшими
функциональными
В качестве системной шины в разных ПК использовались и могут использоваться:
- шины расширений — шины общего назначения, позволяющие подключать большое число самых разнообразных устройств;
- локальные шины, специализирующиеся на обслуживании небольшого количества устройств определенного класса.
- Шины расширений
- Шина PC/XT bus
Первой системной шиной, разработанной для компьютеров PC / XT, в основе которых лежали микропроцессоры, была шина PC / XT-bus. Она была 8-и разрядной, а ее контролер обеспечивал работу на частоте микропроцессора (4,77 МГц) ; имеет 4 линии для аппаратных прерываний и 4 канала для прямого доступа в память (каналы DMA — Direct Memory Access). Шина адреса ограничивала адресное пространство микропроцессора величиной 1 Мбайт. Используется с МП 8086,8088.
- Шина PC/AT bus
С появлением машин типа PC
/ AT, использующих 16-и разрядные
- Шина ISA
Шина ISA (Industry Standart Architecture) – шина, применявшаяся с первых моделей PC и ставшая промышленным стандартом. В PC моделей XT применялась шина с разрядностью данных 8 бит и адреса – 20 бит. В моделях AT шина была расширена до 16 бит данных и 24 бита адреса, какой она остается до сих пор. Конструктивно шина выполнена в виде двух слотов. Подмножество ISA-8 использует только первый 62-контактный слот, в ISA-16 применяется дополнительный 36-контактный слот. Тактовая частота – 8 МГц. Скорость передачи данных до 16 Мбайт\с. Обладает хорошей помехоустойчивостью.
Шина обеспечивает своим абонентам возможность отображения 8- или 16-битных регистров на пространство ввода-вывода и памяти. Диапазон доступных адресов памяти ограничен областью UMA (Unified Memory Architecture - унифицированная архитектура памяти), но для шины ISA-16 специальными опциями BIOS Setup может быть разрешено и пространство в области между15-м и 16-м мегабайтом памяти (правда при этом компьютер не сможет использовать более 15 Мбайт ОЗУ). Диапазон адресов ввода-вывода сверху ограничен количеством используемых для дешифрации бит адреса, нижняя граница ограничена областью адресов 0-FFh, зарезервированных под устройства систнемной платы. В PC была принята 10-битная адресация ввода-вывода, при которой линии адреса A[15:10] устройствами игнорировались. Таким образом, диапазон адресов устройств шины ISA ограничивается областью 100h-3FFh, то есть всего 758 адресов 8-битных регистров. На некоторые области этих адресов претендуют и системные устройства. Впоследствии стали применять и 12-битную адресацию (диапазон 100h-FFFh), но при ее использовании всегда необходимо учитывать возможность присутствия на шине и старых 10-битных адаптеров, которые "отзовутся" на адрес с подходящими ему битами A[9:0] во всей допустимой области четыре раза.
В распоряжении абонентов шины ISA-8 может быть до 6 линий запросов прерываний IRQ (Interrupt Request), для ISA-16 их число достигает 11. Заметим, что при конфигурировании BIOS Setup часть из этих запросов могут отобрать устройства системной платы или шина PCI.
Абоненты шины могут использовать до трех 8-битных каналов DMA (Direct Memory Access - прямой доступ к памяти), а на 16-битной шине могут быть доступными еще три 16-битных канала. Сигналы 16-битных каналов могут использоваться и для получения прямого управления шиной устройством Bus-Master. При этом канал DMA используется для обеспечения арбитража управления шиной, а адаптер Bus-Master формирует все адресные и управляющие сигналы шины, не забывая "отдать" управление шиной процессору не более, чем через 15 микросекунд (чтобы не нарушить регенерацию памяти).
Все перечисленные ресурсы системной шины должны быть бесконфликтно распределены между абонентами. Бесконфликтность подразумевает следующее:
- Каждый абонент должен при операциях чтения управлять шиной данных (выдавать информацию) только по своим адресам или по обращению к используемому им каналу DMA. Области адресов для чтения не должны пересекаться. "Подсматривать" не ему адресованные операции записи не возбраняется.
- Назначенную линию запроса прерывания IRQx абонент должен держать на низком уровне в пассивном состоянии и переводить в высокий уровень для активации запроса. Неиспользуемыми линиями запросов абонент управлять не имеет права, они должны быть электрически откоммутированы или подключаться к буферу, находящемуся в третьем состоянии. Одной линией запроса может пользоваться только одно устройство. Такая нелепость (с точки зрения схемотехники ТТЛ) была допущена в первых PC и в жертву совместимости старательно тиражируется уже много лет.
Задача распределения
ресурсов в старых адаптерах решалась
с помощью джамперов, затем появились
программно-конфигурируемые
Для шин ISA ряд фирм выпускает карты-прототипы (Protitype Card), представляющие собой печатные платы полного или уменьшенного формата с крепежной скобой. На платах установлены обязательные интерфейсные цепи - буфер данных, дешифратор адреса и некоторые другие. Остальное поле платы представляет собой "слепыш", на котором разработчик может разместить макетный вариант своего устройства. Эти платы удобны для макетной проверки нового изделия, а также для монтажа единичных экземпляров устройства, когда разработка и изготовление печатной платы нерентабельно.
С появлением 32-битных процессоров делались попытки расширения разрядности шины, но все 32-битные шины ISA не являются стандартизованными, кроме шины EISA.
- Шина EISA
С появлением 32-разрядных микропроцессоров 80386 (версия DX) фирмами Compaq, NEC и рядом других фирм, была создана 32-разрядная шина EISA, полностью совместимая с ISA.
Шина EISA (Extended ISA) - жестко стандартизованное расширение ISA до 32 бит. Конструктивное исполнение обеспечивает совместимость с ней и обычных ISA-адаптеров. Узкие дополнительные контакты расширения расположены между ламелями разъема ISA и ниже таким образом, что адаптер ISA, не имеющий дополнительных ключевых прорезей в краевом разъеме, не достает до них. Установка карт EISA в слоты ISA недопустима, поскольку ее специфические цепи попадут на контакты цепей ISA, в результате чего системная плата окажется неработоспособной.
Расширение шины касается не только
увеличения разрядности данных и
адреса: для режимов EISA используются
дополнительные управляющие сигналы,
обеспечивающие возможность применения
более эффективных режимов
Каждый
слот (максимум - 8) и системная плата
могут иметь селективное
EISA - дорогая,
но оправдывающая себя
- Шина МСА
Шина MCA (MicroChannel Architecture) - микроканальная архитектура - была введена в пику конкурентам фирмой IBM для своих компьютеров PS/2 начиная с модели 50 в 1987 году. Обеспечивает быстрый обмен данными между отдельными устройствами, в частности с оперативной памятью. Шина MCA абсолютно несовместима с ISA/EISA и другими адаптерами. Состав управляющих сигналов, протокол и архитектура ориентированы на асинхронное функционирование шины и процессора, что снимает проблемы согласования скоростей процессора и периферийных устройств. Адаптеры MCA широко используют Bus-Mastering, все запросы идут через устройство CACP (Central Arbitration Control Point). Архитектура позволяет эффективно и автоматически конфигурировать все устройства программным путем (в MCA PS/2 нет ни одного переключателя).
При всей прогрессивности
архитектуры (относительно ISA) шина MCA не
пользуется популярностью из-за узости
круга производителей MCA-устройств
и полной их несовместимости с
массовыми ISA-системами. Однако MCA еще
находит применение в мощных файл-серверах,
где требуется обеспечение
- Локальные шины
Современные вычислительные системы характеризуются:
• стремительным ростом быстродействия микропроцессоров (например, МП Pentium может выдавать данные со скоростью 528 Мбайт/с по 64-разрядной шине данных) и некоторых внешних устройств (так, для отображения цифрового полноэкранного видео с высоким качеством необходима пропускная способность 22 Мбайт/с);
• появлением программ, требующих выполнения большого количества
интерфейсных операций (например, программы обработки графики в Windows, работа в среде Multimedia).
В этих условиях пропускной способности шин расширения, обслуживающих одновременно несколько устройств, оказалось недостаточно для комфортной работы пользователей, ибо компьютеры стали подолгу "задумываться".
Разработчики интерфейсов пошли по пути создания локальных шин, подключаемых непосредственно к шине МП, работающих на тактовой частоте МП (но не на внутренней рабочей его частоте) и обеспечивающих связь с некоторыми скоростными внешними по отношению к МП устройствами: основной и внешней памятью, видеосистемами и др.
Сейчас существуют два основных стандарта универсальных локальных шин: VLB и PCI.
- Шина VLB
Локальная шина стандарта VLB (VESA Local Bus, VESA – Video Equipment Standart Association – Ассоциация стандартов видеооборудования) разработана в 1992 году. Главным недостатком шины VLB является невозможность её использования с процессорами, пришедшими на замену МП 80486 или существующими параллельно с ним (Alpha, PowerPC и др.).
Шины ввода-вывода ISA, MCA, EISA имеют
низкую производительность, обусловленную
их местом в структуре PC. Современные
приложения (особенно графические) требуют
существенного повышения
VLB - стандартизованная 32-битная
локальная шина, практически представляющая
собой сигналы системной шины
процессора 486, выведенные на дополнительные
разъемы системной платы. Шина
сильно ориентирована на 486 процессор,
хотя возможно ее
Конструктивно VLB-слот аналогичен 16-битному обычному MCA-слоту, но является расширением системного слота шины ISA-16, EISA или MCA, располагаясь позади него вблизи от процессора. Из-за ограниченной нагрузочной способности шины процессора больше трех слотов VLB на системной плате не устанавливают. Максимальная тактовая частота шины - 66 МГц, хотя надежнее шина работает на частоте 33 МГц. При этом декларируется пиковая пропускная способность 132 Мбайт/с (33 МГц x 4 байта), но она достигается только внутри пакетного цикла во время передач данных. Реально в пакетном цикле передача 4 x 4 = 16 байт данных требует 5 тактов шины, так что даже в пакетном режиме пропускная способность составляет 105.6 Мбайт/с, а в обычном режиме (такт на фазу адреса и такт на фазу данных) - всего 66 Мбайт/с, хотя это и значительно больше, чем у ISA. Жесткие требования к временным характеристикам процессорной шины при большой нагрузке (в т. ч. и микросхемами внешнего кэша) могут привести к неустойчивой работе: все три VLB-слота могут использоваться только на частоте 40 МГц, при нагруженной системной плате на 50 МГц может работать только один слот. Шина в принципе допускает и применение активных (Bus-Master) адаптеров, но арбитраж запросов возлагается на сами адаптеры. Обычно шина допускает установку не более двух Bus-Master адаптеров, один из которых устанавливается в "Master"-слот.
Шину VLB обычно использовали для подключения графического адаптера и контроллера дисков. Адаптеры локальных сетей для VLB практически не встречаются. Иногда встречаются системные платы, у которых в описании указано, что они имеют встроенный графический и дисковый адаптер с шиной VLB, но самих слотов VLB нет. Это означает, что на плате установлены микросхемы указанных адаптеров, предназначенные для подключения к шине VLB. Такая неявная шина по производительности, естественно, не уступает шине с явными слотами. С точки зрения надежности и совместимости это даже лучше, поскольку проблемы совместимости карт и системных плат для шины VLB стоят особенно остро.
Рис. 2. Конфигурация системы с шиной VLB
- Шина PCI
Шина PCI (Peripheral Component Interconnect bus – взаимосвязь периферийных компонентов) - шина соединения периферийных компонентов. Была анонсирована компанией Intel в июне 1992 года на выставке PC Expo.
Эта шина занимает особое место
в современной PC-архитектуре (mezzanine
bus), являясь мостом между локальной
шиной процессора и шиной ввода-вывода
ISA/EISA или MCA. Эта шина разрабатывалась
в расчете на Pentium-системы, но хорошо
сочетается и с 486 процессорами, а
также с не-Intel'овскими
На одной шине PCI может быть не более четырех устройств (слотов). Мост шины PCI (PCI Bridge) - это аппаратные средства подключения шины PCI к другим шинам. Host Bridge - главный мост - используется для подключения PCI к системной шине (шине процессора или процессоров). Peer-to-Peer Bridge - одноранговый мост - используется для соединения двух шин PCI. Две и более шины PCI применяются в мощных серверных платформах - дополнительные шины PCI позволяют увеличить количество подключаемых устройств.
Автоконфигурирование устройств (выбор адресов, запросов прерывания) поддерживается средствами BIOS и ориентировано на технологию Plug and Play. Стандарт PCI определяет для каждого слота конфигурационное пространство размером до 256 восьмибитных регистров, не приписанных ни к пространству памяти, ни к пространству ввода-вывода. Доступ к ним осуществляется по специальным циклам шины Configuration Read и Configuration Write, вырабатываемым контроллером при обращении процессора к регистрам контроллера шины PCI, расположенным в его пространстве ввода-вывода.
В состав шины PCI введены сигналы для тестирования адаптеров по интерфейсу JTAG. На системной плате эти сигналы не всегда задействованы, но могут и организовывать логическую цепочку тестируемых адаптеров.
Шина PCI все обмены трактует как пакетные: каждый кадр начинается фазой адреса, за которой может следовать одна или несколько фаз данных. Количество фаз данных в пакете неопределенно, но ограничено таймером, определяющим максимальное время, в течении которого устройство может пользоваться шиной. Каждое устройство имеет собственный таймер, значение для которого задается при конфигурировании устройств шины.
В каждом обмене участвуют два устройства - инициатор обмена (Initiator) и целевое устройство (Target). Арбитражем запросов на использование шины занимается специальный функциональный узел, входящий в состав чипсета системной платы. Для согласования быстродействия устройств-участников обмена предусмотрены два сигнала готовности IRDY# и TRDY#. Для адреса и данных на шине используются общие мультиплексированные линии AD. Четыре мультиплексированных линии C/BE[3:0] используются для кодирования команд в фазе адреса и разрешения байт в фазе данных.
Шина имеет версии с питанием 5 В, 3.3 В. Также существует универсальная версия (с переключением линий +V I/O c 5 В на 3.3 В). Ключами являются пропущенные ряды контактов 12, 13 и 50, 51. Для 5 В-слота ключ расположен на месте контактов 50, 51; для 3 В - 12, 13; для универсального - два ключа: 12, 13 и 50, 51. Ключи не позволяют установить карту в слот с неподходящим напряжением питания. 32-битный слот заканчивается контактами A62/B62, 64-битный - A94/B94.
В отличие от адаптеров
остальных шин, компоненты карт PCI расположены
на левой поверхности плат. По этой
причине крайний PCI-слот обычно разделяет
использование посадочного
Шина PCI являлась до последнего времени второй (после ISA) по популярности применения. В современных системах происходит отказ от шин ISA, и шина PCI выходит на главные позиции. Некоторые фирмы для этой шины выпускают карты-прототипы, но, конечно же, доукомплектовать их периферийным адаптером или устройством собственной разработки гораздо сложнее, чем карту ISA. Здесь сказываются и более сложные протоколы, и более высокие частоты (8 МГц у шины ISA против 33 или 66 МГц у шины PCI). Также шина PCI обладает плохой помехоустойчивостью, поэтому для построения измерительных систем и промышленных компьютеров используется все еще относительно редко.
На некоторых системных
(материнских) платах имеется небольшой
разъем, который называется Media Bus. Он
расположен позади разъема шины PCI одного
из слотов. На этот разъем выводятся
сигналы обычной шины ISA, и предназначен
он для того, чтобы на графическом
адаптере с шиной PCI можно было разместить
и недорогой чипсет звуковой карты,
предназначенный для шины ISA. Этот
разъем, а тем более и такие
комбинированные аудио-видео
Рис. 3. Конфигурация системы с шиной PCI
- Шина SCSI
Шина SCSI (Small Computer System Interface - cистемный интерфейс малых компьютеров, произносится "скази") была стандартизована ANSI (American National Standards Institute - Американский институт стандартов) еще в 1986 году. Интерфейс предназначен для соединения устройств различных классов - памяти прямого и последовательного доступа, CD-ROM, оптических дисков однократной и многократной записи, устройств автоматической смены носителей информации, принтеров, сканеров, коммуникационных устройств и процессоров. Устройством SCSI (SCSI Device) - называется как хост-адаптер, связывающий шину SCSI с какой-либо внутренней шиной компьютера, так и контроллер целевого устройства - target controller, с помощью которого оно подключается к шине SCSI. С точки зрения шины все устройства могут быть равноправными и являться как инициаторами обмена, так и целевыми устройствами, однако чаще всего в роли инициатора выступает хост-адаптер. К одному контроллеру может подключаться несколько периферийных устройств, по отношению к которым контроллер может быть как внутренним, так и внешним. Широкое распространение получили периферийные устройства со встроенным контроллером SCSI (embeded SCSI controller), к которым, например, относятся накопители на жестких магнитных дисках, CD-ROM, стриммеры.
По физической реализации интерфейс является 8-битной параллельной шиной с тактовой частотой 5 МГц. Шина допускает подключение до 8 устройств, скорость передачи данных в первоначальной версии достигала 5 Мбайт/с. Впоследствии (1991 г.) появилась новая спецификация - SCSI-2, расширяющая возможности шины как в количественных, так и в качественных показателях. Тактовая частота шины Fast SCSI-2 достигает 10 МГц, а Ultra SCSI-2 - 20 МГц. Разрядность данных может быть увеличена до 16 бит - эта версия называется Wide SCSI-2 (широкий), а 8-битную версию назвали Narrow (узкий). 16-битная шина позволяет увеличивать число устройств до 16. Стандарт SCSI-2 определяет и 32-битную версию интерфейса, но такие устройства пока не распространены из-за неоправданно высокой стоимости интерфейса. Комбинации тактовой частоты и разрядности обеспечивают широкий диапазон пропускной способности, достигающей 40 Мбайт/с для реальной версии Ultra Wide SCSI-2.
Спецификация SCSI-2 определяет систему
команд, которая включает набор базовых
команд, обязательных для всех периферийных
устройств, и специфических команд
для периферии различных
