КОМПЬЮТЕРНОЕ ЖЕЛЕЗО
HARDWARE FOR PC

Шины и карты расширения

Поддержку пакетного режима имеют далеко не все устрой¬ства PCI, а у имеющих, как правило, есть существенные ограничения на макси¬мальную длину пакета. Радикально повысить пропускную способность позволяет переход на частоту 66 МГц и разрядность 64 бита, что обходится недешево. Для того, чтобы на шине могли нормально работать устройства, критичные к времени доставки данных (сетевые адаптеры, устройства, участвующие в записи и воспро¬изведении аудио-видеоданных и др.), не следует пытаться выжать из шины ее дек¬ларированную полосу пропускания полностью. Перегрузка шины может привес¬ти, например, к потере пакетов из-за несвоевременности доставки данных. Заметим, что адаптер Fast Ethernet (100 Мбит/с) в полудуплексном режиме занимает по¬лосу около 13 Мбайт/с (10% декларируемой полосы обычной шины), а в полно¬дуплексном — уже 26 Мбайт/с. Адаптер Gigabit Ethernet даже в полудуплексном режиме вписывается в полосу шины уже с натяжкой (он «выживает» лишь за счет больших внутренних буферов), для него больше подходит 64 бит/66 МГц.
6.2.6. Прерывания
В PC-совместимых компьютерах прерывания от устройств PCI обслуживаются с помощью традиционной связки пары контроллеров 8259А, расположенных на системной плате (см. п. 12.4), к которым обращается команда «подтверждение пре¬рывания». Прерывания на шине PCI свободны от одной из нелепостей системы прерываний ISA. Устройство PCI вводит сигнал прерывания низким уровнем (вы¬ходом с открытым коллектором или стоком) на выбранную линию INTA#, INTB#, INTC# или INTD*. Этот сигнал должен удерживаться до тех пор, пока программ¬ный драйвер, вызванный по прерыванию, не сбросит запрос прерывания, обратив¬шись по шине к данному устройству. Если после этого контроллер прерываний снова обнаруживает низкий уровень на линии запроса, это означает, что запрос на ту же линию ввело другое устройство, разделяющее данную линию с первым, и оно тоже требует обслуживания. Линии запросов от слотов PCI и PCI-устройств системной платы коммутируются на входы контроллеров прерываний относи¬тельно произвольно. Конфигурационное ПО может определить и указать занятые линии запросов и номер входа контроллера прерываний обращением к конфигу¬рационному пространству устройства (см. п. 6.2.12). Программный драйвер, про¬читав конфигурационные регистры, тоже может определить эти параметры для того, чтобы установить обработчик прерываний на нужный вектор и при обслу¬живании сбрасывать запрос с требуемой линии. К сожалению, в конфигурацион¬ных регистрах не нашлось стандартного места для бита, индицирующего введе¬ние запроса прерывания данным устройством, — тогда бы в прерываниях для PCI не было бы проблем с унификацией поддержки разделяемых прерываний.

Hosted by uCoz