![]() ![]() Шины PCI, PCI Express и ISA![]() Самое главное достоинство современного персонального компьютера — открытая архитектура. На практике это означает, что вы можете самостоятельно подобрать конфигурацию конкретного экземпляра компьютера под ваши нужды. И такой компьютер будет максимально приспособлен для решения именно ваших задач и лишен ненужного балласта в виде неиспользуемых компонентов. Достигается это за счет возможности установить в компьютер ту или иную карту (плату) расширения. Например, если вы профессионально работаете со звуком, то просто устанавливаете звуковую карту соответствующего уровня; если вам требуется организовать подключение к беспроводной точке доступа, вы инсталлируете сетевую карту Wi-Fi и т.п. В настоящий момент многие функции, ранее требовавшие для своей реализации установки карт расширения, изначально заложены в чипсет. Скажем, подавляющее большинство современных компьютеров имеют интегрированные звуковой и сетевой контроллеры. Иногда добавляют новые возможности и производители материнских плат, интегрируя (распаивая на основной плате) соответствующий контроллер. Примером могут служить порты IEEE1394. Пока что большинство карт расширения для связи с остальными компонентами компьютера используют шину PCI. Физически это означает, что карта устанавливается в специальный разъем — слот — шины PCI на материнской плате. Некоторое время назад была распространена шина ISA, скорость работы которой весьма невелика, но ее вполне хватало для карт расширения, не требующих фантастического быстродействия (модемов, звуковых карт). Популярность этой шины объяснялась принципом совместимости — можно было установить в компьютер карты расширения, выпущенные за несколько лет до этого. Но в настоящий момент все современные компьютеры не имеют шины ISA. Зато появилась новая последовательная шина PCI Express («обычная» PCI и ISA — параллельные шины). Современные технологии позволили добиться высокой производительности при использовании минимального числа сигнальных линий (и, как следствие, числа контактов в разъеме). К тому же PCI Express весьма гибка — если для какой-то карты расширения не хватает быстродействия одной линии, можно объединить несколько линий PCI Express в одном разъеме. В остальном это такая же шина для подключения карт расширения. Более того, на программном уровне она совместима с «обычной» PCI. Рассмотрим, как происходит взаимодействие карт расширения с остальными компонентами компьютера. Основную роль здесь играют прерывания (IRQ — Interrupt ReQuest). Если какой-либо карте необходимо передать или получить данные, она выставляет выделенное ей прерывание в активное значение, «сообщая» таким образом процессору о своих «потребностях». Процессор, обнаружив активное прерывание, прерывает работу с текущими данными и выполняет обработку запроса карты расширения, после чего «возвращается» к прерванной задаче. Непосредственно сам процесс обмена данными происходит с помощью адресного пространства, выделяемого карте расширения. Если карте необходимо передать информацию, она записывает ее по выделенным адресам, если получить — считывает необходимые данные, обращаясь к выделенному адресному пространству. При работе в 32-х разрядном режиме адресное пространство современных карт расширения обычно находится в диапазоне между В «классическом» варианте имеется 16 прерываний. Часть из них жестко назначена определенным устройствам, остальные же могут использовать карты расширения.
Помимо этого имеется одно немаскируемое прерывание (NMI), имеющее наивысший приоритет. Оно генерируется, когда возникает ошибка чтения данных из памяти, любая другая неисправимая ошибка в системе. При использовании расширенного контроллера прерываний, атрибута любого современного компьютера, количество прерываний увеличивается до 24, что существенно упрощает наращивание возможностей компьютера за счет карт расширения и интегрированных контроллеров. К тому же современные карты расширения для шин PCI и PCI Express, как, впрочем, и многие аппаратные компоненты компьютера, способны разделять одну линию прерывания с другими устройствами, поэтому часто на одном прерывании «сидит» несколько устройств.
Физически контроллер прерывания «общается» с картой расширения посредством 4-х («классический» вариант) или 8-и (современные решения) сигнальных линий. Для начала рассмотрим «классический» вариант реализации контроллера. Карта расширения для шины PCI может генерировать до 4-х запросов на прерывания (INT A#—INT D#). Основным является INT A# (если он занят или карте требуется более одного прерывания, используется INT B#, за ним INT C# и, в последнюю очередь, INT D#). Сигнальные линии по возможности разводятся так, чтобы каждой карте расширения досталась свой основной запрос на прерывание (INT A#). Но, учитывая, что на полноразмерных материнских платах слотов расширения для шины PCI обычно больше четырех, плюс, имеется слот AGP для графической карты, на плате могут быть реализованы интегрированные устройства, некоторые слоты оказываются совмещенными по линиям контроллера прерываний. Приведем пример практической реализации соответствия сигнальных линий контроллера прерываний и запросов.
На разных материнских платах совмещенными оказываются разные слоты. Это могут быть 4-й и 5-й слоты, как в приведенном примере, 1-й и 5-й, 2-й и 5-й и т.п., все зависит от производителя. Поэтому таблицу соответствия сигнальных линий контроллера прерываний и запросов лучше всегда уточнять в руководстве к материнской плате. Как уже говорилось, в современных чипсетах количество сигнальных линий контроллера прерываний увеличено до 8-и, что позволяет развести карты расширения и интегрированные контроллеры на разные линии, значительно снизив вероятность неустойчивой работы или конфликта.
Кстати, в некоторых руководствах к материнским платам в таблице соответствия сигнальных линий контроллера прерываний и запросов указываются не все четыре запроса на прерывания (INT A#—INT D#), а только основной INT A#.
Еще один механизм, который может применяться картой расширения, называется прямым доступом к памяти (DMA — Direct Memory Access). Он позволяет карте обмениваться данными с оперативной памятью напрямую, минуя процессор. Всего имеется 8 каналов, так же, как и в случае с прерываниями, один канал может использоваться несколькими устройствами.
BIOS Setup позволяет выбрать режимы функционирования шин, например, указать возможность одновременного обращения к PCI и ISA, вручную назначить прерывание и канал прямого доступа к памяти для карты, вставленной в определенный слот (или закрепить прерывание за сигнальной линией контроллера) и т.д. Опубликовано 04.12.2008. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() ![]() ![]() © 2008—2012, Александр Микляев.
Все материалы, находящиеся на этом сайте, являются авторскими и защищены российским и международным законодательствами. Использование их в сетевых и офлайновых изданиях без письменного разрешения автора не допускается. Наличие ссылки на оригинал не является оправданием для кражи. Вы можете цитировать описания отдельных опций в частной переписке, при обсуждениях на интернет-форумах, досках объявлений, при написании комментариев к другим статьям при условии наличия рядом с цитатой ссылки на этот сайт. Если вам понравился ресурс, информация, приведенная здесь, помогла в решении ваших проблем с компьютером, буду благодарен за размещение ссылки на данный сайт. |