Основы микропроцессорной техники | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Раздел 8 Интерфейсы ПК | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| «Структура курса | Глава 1 | Глава 2 | Глава 3 | Глава 4 | Глава 5 | Глава 6 | Раздел 7 | Раздел 8 | Дополнения | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Раздел 8 - Страницы: « 1 | 2 | 3 | 4 | 5 | 6 | » | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
8.1.3. Распределение ресурсов компьютераКроме архитектуры аппаратных средств и параметров системной шины специфика любого компьютера определяется принятым стандартным распределением всех его ресурсов. Соблюдать правила, установленные этим распределением, должны и программисты (как системные, так и те, которые занимаются разработкой прикладных программ), и производители дополнительного оборудования, и даже те пользователи, которые просто хотят установить в компьютер новую плату расширения. В случае малейшего нарушения этих правил возможны как непредвиденные сбои в работе компьютера, невозможность его начальной загрузки, так и полный выход компьютера из строя. Во распределением ресурсов в данном случае понимается:
Понятно, что если программист захочет использовать те адреса памяти, которые отведены для системных нужд (например, для памяти дисплея и системных таблиц), то работоспособность компьютера нарушится. Если выполняемая программа попытается записать какую-либо информацию по тем адресам системной памяти, стандартом отведены под постоянную память (ROM), то записываемой информации будет просто потеряна, и программа работать не будет. Если писать информацию по тем адресам памяти, отведенные под видеопамять, то будет искажаться изображение на экране видеомонитора. Если плата расширения, которая вставляется в компьютер, использует неправильные (заняты другими устройствами) адреса в адресном пространстве памяти, то ее работа будет невозможна, и не исключен даже выход из строя аппаратуры компьютера (так как при циклах чтения с адресов памяти перекрываются, два устройства будут выставлять свои данные на шину одновременно, что может стать причиной выгорания буферных микросхем. Если производитель платы расширения с устройством ввода / вывода или пользователь, подключает новую плату расширения, установят адрес устройства так, что он будет совпадать с адресом системного телефона и адресом другой платы расширения, то возможны конфликты при обращении к данному устройству. При этом в цикле записи информация будет записываться не в один, а в два или более устройств, а в цикле чтения на шину данных будут одновременно выставлять свои данные не один, а несколько устройств. То есть в цикле записи возможном нарушении режимов работы системных устройств (например, контроллера прерываний или контроллера ПДП) или неправильная работа новой платы расширения, а в цикле чтения - даже выход из строя одного из устройств, выставляют свои данные на магистраль одновременно. Если при подключении к компьютеру новой платы расширения установить для нее неправильный канал запроса прерывания, это может привести к тому, что данное прерывание просто не будет обслуживаться. Может также перестать обслуживаться прерывания от системного устройства, с которым конфликтует новая плата. В худшем случае это может вызвать выход из строя новой платы расширения или системного устройства. Точно так же при неправильном выборе номера канала запроса прямого доступа к памяти может перестать обслуживаться запрос ПДП системного устройства и может выйти из строя системный устройство или новая плата расширения. Т.е. соблюдение правил стандартного распределения ресурсов компьютера - это не чья-то прихоть, а жизненная необходимость. Правда, последнее время получила распространение технология, которая снимает данные проблемы, автоматического распределения ресурсов Plug-and-Play (Pn, P & P), что можно перевести как "вставлять работай". При этом пользователю достаточно просто подключить свою плату к компьютеру, а все операции по распределению ресурсов компьютер выполнит самостоятельно, и любые конфликты будут автоматически устранены. Но для этого необходимо обязательное выполнение двух условий. Во-первых, технологию Pn должен поддерживать данный компьютер и программное обеспечение. Во-вторых, эту технологию должен поддерживать устройство, подключаемое к компьютеру. Определить это довольно просто: если на плате есть перемычки, переставляются, или механические переключатели для задания параметров платы (адресов портов ввода / вывода, номера используемого прерывания, базового адреса памяти, номера канала ПДП), то можно смело утверждать, что выбор конфигурации, учет стандартного распределения ресурсов компьютера несет пользователь. Компьютер здесь не помощник. Конечно же, перед установкой в компьютер новых плат расширения следует внимательно прочитать инструкцию и точно следовать ей. Подробнее о работе режима Pn будет рассказано ниже. А теперь рассмотрим принятый в персональных компьютерах нормальный распределение ресурсов. О стандартном распределении памяти уже говорилось в предыдущей главе. Несколько подробнее распределение адресов памяти описан в табл. 8.3. Из таблицы видно, что для памяти, входящей в состав устройств ввода / вывода, выделяется зона всего лишь в 92 Кбайт (адреса З8000 ... DFFFF. В этом пространстве может располагаться как оперативная память, так и постоянная память устройств ввода / вывода. Иногда память устройств ввода / вывода захватывает также и зону адресов З0000 ... З7FFF.
Важно помнить, что помимо этого распределения, общего для любых программных и аппаратных средств, существуют еще и распределения памяти, специфические для каждой операционной системы. Их также необходимо учитывать во избежание отказов при выполнении системных программ. Отметим, что в современных компьютерах, конечно же, не используются давно устаревшие дисплее стандартов CGA или MDA. Однако в том случае, если нужно универсальность программного обеспечения, надо учитывать и то, что его могут попытаться запустить на компьютерах с подобными дисплеями. Стандартный распределение адресов в адресном пространстве устройств ввода / вывода ПК приведен в табл. 8.4. Как уже отмечалось, стандарт допускает адресацию 64К устройств ввода / вывода (то есть можно использовать 16 разрядов адреса). Однако подавляющее большинство плат расширения для упрощения аппаратуры использует только 10 младших разрядов, что соответствует всего 1К (или 1024) адресов (от 000 до 3FF в шиснадцятковому коде. При этом 16-разрядные порты ввода / вывода имеют четные адреса, то есть их может быть всего 512.
Как видно из таблицы, значительная часть возможных адресов уже занята системными устройствами, свободных адресов не так много. Резервные адреса - это те, которые зарезервированы под дальнейшее расширение системы. В табл. 8.5 приведен стандартный распределение номеров аппаратных прерываний и соответствующих им номеров в таблице векторов прерываний (INT). Как видно из таблицы, большинство входов IRQ заняты системными ресурсами компьютера. Свободные (зарезервированы) только четыре канала: 10, 11, 12, 15, причем они находятся на 16-разрядной части разъема магистрали ISA. Правда, иногда в компьютерах применяется только один параллельный порт или (гораздо реже) только один последовательный порт, и тогда свободными оказываются еще IRQ3 и IRQ5. Сигналы IRQ0 ... IRQ2, IRQ8 и IRQ13 задействованы на системной плате и недоступны платам расширения.
В компьютере используются два 8-разрядных контроллера прерываний. Сигналы IRQ0 ... IRQ7 относятся к первому из них, а IRQ8 ... IRQ15 - ко второму. Для каскадирования второго контроллера прерываний задействован вход IRQ2 (Рис. 8.6). В связи с этим запросы прерывания имеют следующие приоритеты обслуживания в порядке возрастания: IRQ7, IRQ6, IRQ5, IRQ4, IRQ3, IRQ15, IRQ14, IRQ12, IRQ11, IRQ10, IRQ9. Такая схема включения сложилась исторически, так как в компьютере IBM PC XT использовался только один 8-канальный контроллер прерываний, а при переходе на IBM PC AT к нему был добавлен второй контроллер для удвоения количества каналов запросов прерываний. В современных компьютерах оба контроллера прерываний вместе с другими контроллерами могут входить в состав одной и той же микросхемы, но совместимость распределения прерываний прежнему обеспечивается.
Стандартный распределение каналов запроса прямого доступа к памяти приведен в табл. 8.6. Как и в случае с контроллерами прерываний, здесь применяется два контролера, причем один из них каскадуеться через другой. На каждой линии DRQ повиен быть один выход ISA-устройства. Каналы, соответствующие первому контроллеру ПДП (сигналы DRQ0 ... DRQ3), предназначенные только для 8-битного обмена, а соответствующие втором контроллеру (DRQ5. .. DRQ7) - для 16-битного. Канал DRQ4 используется для каскадирования двух контроллеров ПДП и потому недоступен пользователям. Сигнал запроса DRQ0 имеет самый высокий приоритет, сигнал DRQ7 - самый низкий. В IBM PC XT канал DRQ0 использовался для регенерации динамической памяти. Каждый канал ПДП может передавать данные в пределах 16-мегабайтным адресного пространства блоками длиной до 64 Кбайт (каналы 0, 1, 2, 3) или до 128 Кбайт (каналы 5, 6, 7).
Естественно, обычному пользователю запомнить всю эту информацию о распределении ресурсов достаточно сложно, к тому же при малейшей ошибке возможные неприятности. Именно поэтому фирмами Compaq Computer, Intel, Microsoft и Phoenix Technologies в 1993 году была предложена технология Plug-and-Play (Pn), что возлагает все заботы о конфигурации компьютера на сам компьютер. Пользователь при этом может даже ничего не знать о адресное пространство, прерывания и каналы прямого доступа, он просто подключает плату, и она сразу же начинает работать правильно. Правда, при этом все компоненты компьютера (базовая система ввода / вывода BIOS, операционная система, прикладное программное обеспечение, устройства, которые подключаются) должны поддерживать режим Pn. Наконец, технология Pn должна работать на всех используемых интерфейсах компьютера: ISA, PCI, VLB, IDE, RS-232C и т.д. Наиболее же приспособлена для этого системная шина PCI, что специально предусмотрены средства, что еще больше увеличивает ее шансы стать единым стандартом системной шины. При включении компьютера с Pn его программа начального запуска BIOS определяет устройства, необходимые в процессе загрузки. Затем BIOS спрашивает у каждого из этих устройств его уникальный номер (идентификатор), хранящейся в памяти PnP-устройства. После этого BIOS позволяет все конфликты между устройствами. При этом устройства, которые не нужны для загрузки компьютера, не обслуживаются. После загрузки операционной системы вступает в действие специальный программный драйвер - менеджер конфигурации (configuration manager), который с помощью драйверов-нумераторов шин (bus enumerators) определяет устройства, требующие системных ресурсов. Если подключенное не поддерживает Pn и не может выдать информацию о себе, то такая информация должна быть заложена в формируемый вручную базу данных. Вся собранная информация о текущей конфигурации хранится в оперативной памяти, в области hardware tree. Эту информацию в дальнейшем использует программа-арбитр ресурсов (resource arbitrator) при распределении системных ресурсов между устройствами. После этого менеджер конфигурации через нумераторы шин сообщает PnP-устройствам о том, какие ресурсы компьютера им присвоены, и данная информация в дальнейшем сохраняется в программно доступных регистрах (или flash-EPROM) этих устройств. На этом работа Pn по распределению ресурсов завершается, и далее компьютер функционирует как обычно, обращаясь ко всем устройствам стандартным образом. Отметим также, что в некоторых компьютерах предусмотрена возможность так называемого "горячего подключения" внешних устройств (т.е. без выключения питания компьютера. Режим Pn должен поддерживать и эту возможность, распределяя ресурсы не только при первоначальном загрузке, но и по мере подключения новых устройств. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| «Структура курса Раздел 8 - Страницы: « 1 | 2 | 3 | 4 | 5 | 6 | » | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||