КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Оптимального управления 6 страница
Обеспечивается многозадачность (ради нее и введена защита) за счет возможности быстрого переключения контекста загрузкой TR. Сегмент состояния задачи (TSS) обеспечивает автоматическую перезагрузку всех регистров, кроме FPU/MMX/XMM. Там же имеется карта разрешения для портов ввода-вывода.Используется страничное управление памятью как средство организации виртуальной памяти с подкачкой страниц по запросу. Линейный адрес делится на страницы фиксированного размера (4к, 4М, 2М), которые могут присутствовать в ОЗУ или нет. Элементы каталогов и таблицы следующие: базовый адрес (если есть) и атрибуты: присутствие, R/W, U/S (2-ур защита), управление кэшированием. Таблицы каталогов и страниц должны быть в ОЗУ (иначе двойной отказ — исключение). Введено кэширование описателей — буферассоциативной трансляции (TLB Translate Look-Aside Buffer), в котором хранятся последние используемые описатели. Страничное управление позволяет использовать 36 бит физического адреса. Обеспечено кэширование памяти. Длина строки для Р 486 — 16 байт, для Р5-Р6 — 32 байта, для Р4 — 64 байта. Имеются прерывания в защищенном режиме, т. е. переключение задач. При этом задачи должны иметь возможность сообщать о прерываемом или нет состоянии, но им нельзя давать прямое управление флагом. В V86 программные прерывания (вызовы сервисов DOS и BIOS) влекут переключение задач. В EV86 —- модификация режима и возможность перенаправления программных прерываний на обработчик в той же задаче. В микроархитектуре процессоров семейства Pentium существенное значение имеет реализация различных способов конвейеризации и распараллеливания вычислительных процессов, а также других технологий, не свойственных процессорам прежних поколений. Процессоры Intel — Pentium 4 (у AMD — Athlon) целенаправленно разрабатывались в направлении развития конвейеризации и потоковости работы. Конвейер Pentium 4 состоит из 20 ступеней. Возможности распараллеливания архитектурой х86 ограничены, так как 8 неравноправных регистров не располагают к программированию с учетом параллельности исполнения. Основные особенности процессоров Pentium следующие. Подсистема памяти содержит системную шину, кэш 1 и 2 уровня, блок интерфейса памяти, блок переупорядочивания обращений к памяти. Блок выборки/декодирования содержит блок выборки инструкций, буфер целевых адресов переходов, декодер инструкций, секвенсор микрокодов и таблицу переименования регистров NetBurst (микроархитектура процессора Pentium 4) и ориентирован на такие новые задачи, как потоковые приложения, включая обработку видеоинформации в реальном вре мени, трехмерная визуализация; распознавание речи — SSE2 (2*64 бит FP в ХММ, новые целочисленные в ММХ и ХММ, управление кэшированием, загрузка в обход кэша). Процессор (рис. 2.26) имеет гиперконвейерную архитектуру: 20 ступеней от выборки из трассы кэша, не считая декодирования и вывода (тогда 30—35). Процессор вместо первичного кэша инструкций имеет кэш трасс исполнения ТС (Execution Trace Cache). Трассы — это последовательности микроопераций, в которые были декодированы инструкции х86. Кэш трасс плюс блок выборки и декодирования — это устройство предварительной обработки, обеспечивающее: предварительную выборку инструкций; декодирование инструкций в микрооперации; генерацию последовательностей микрокодов для сложных инструкций; доставку декодированных инструкций из кэша трассы; предсказание переходов с использованием "продвинутого" алгоритма. NetBurst позволяет сократить задержки декодирования инструкций с целевого адреса, указанного в переходе, а также потери производительности декодеров в случаях, когда точка перехода или целевой адрес находятся в середине строки кэша. Последовательность микроопераций хранится в кэше трассы в порядке потока исполнения.
Поэтому не надо прыгать по стро кам кэша при ветвлении. В память кэша трассы не попадают инструкции, которые никогда не будут исполняться. Кэш трассы способен хранить до Г2К микроопераций и за каждый такт доставлять ядру до трех микроопераций. Кэш трасс и транслирующий механизм кооперируются с аппаратурой предсказания ветвлений. Целевые адреса ветвлений предсказываются по своим линейным адресам. Если целевая инструкция уже имеется в кэше трасс, то ее готовая последовательность микроопераций берется из ТС. Если ее в кэше нет, то приходится инструкцию выбирать из иерархии памяти (вторичного кэша (на кристалле процессора) или ОЗУ) и декодировать. Для предсказания ветвлений используется комбинация статических и динамических методов, а также прямые указания программного кода. По сравнению с Р6 размер буфера ВТВ увеличен в 8 раз (теперь он хранит до 4 К адресов инструкций ветвлений). "Намеки" используются только на этапе построения трасс, и если в ВТВ данной инструкции еще нет, они перекрывают статическое предсказание. Исполнительное ядро процессора имеет пиковую пропускную способность, превышающую возможности блока предварительной обработки и блока завершения (до 6 микроопераций за такт). Блок завершения выполняет до трех микроопераций за такт. В Pentium 4 с частотой 3,06 ГГц и в Хеоп внедрена технология Hyper-Threading. Она обеспечивает 2 логических процессора на 1 физическом и повышение производительности и коэффициента загрузки блоков. Есть общие и выделенные ресурсы. Требует поддержки BIOS, ОС и приложений (пустой цикл блокирует второй поток). Доступные ОС лицензированы на 2 SMP. Процессор Pentium 4 содержит 42 миллиона транзисторов и имеет: системную шину с частотой 800 МГц при частоте генератора 3 ГГц; системную шину с частотой 533 МГц при генераторах: 3,06 ГГц, 2,80 ГГц, 2,66 ГГц, 2,53 ГГц, 2,40В ГГц, 2,26 ГГц; системную шину с частотой 400 МГц при генераторах: 2,60 ГГц, 2,50 ГГц, 2,40 ГГц, 2,20 ГГц, 2А ГГц, 2 ГГц, 1,90 ГГц, 1,80 ГГц, 1,70 ГГц; кэш L2 - 512 Кб (у Celeron - 128 Кб). Компания AMD выпускает процессор Athlon. Производительность у него достигается не только высокой тактовой частотой, но и особой суперконвейерной суперскалярной микроархитектурой. Преимущества процессора Athlon проявляются на приложениях, использующих интенсивные вычисления (особенно с плавающей точкой) и, естественно, оптимизированных под расширенную систему команд. Процессоры Athlon ХР имеют микроархитектуру QuantiSpeed. У них повышенная рабочая частота и больше инструкций за цикл. Процессор Duron — это облегченный вариант Athlon (кодовое название — Spitfire). У него вторичный кэш, уменьшенный до 64 кбайт, но работающий на частоте ядра, располагается на кри сталле ядра. В процессорах применяется системная шина EV6, использованная в процессоре Alpha (DEC) (200—400 МГц, 1,6 Гбайт/с), Протокол шины EV6 поддерживает многопроцессорность, что является новинкой для AMD, так как ее предыдущие процессоры мулыипроцессирование не поддерживали. Другие процессоры AMD на ядре Hammer — это Athlon 64 (для настольных и мобильных) и Opteron (для серверов 1—8 SMP и рабочих станций 1—4 SMP). У них: удвоена разрядность, есть совместимость, введены дополнительные РОН; ядро процессора L1 имеет кэш 64+64 К, L2 — 1 М (256 К у Athlon-64), а также параллельность, микроинструкции и др.; интегрированный контроллер памяти DDR РС2100—2700, Opteron —128 бит, Athlon — 64 бит, 256 Тбайт; шина ввода/вывода на основе технологии Hyper Transport: последовательно-параллельная шина, программно хорошо стыкуется с PCI, от процессора 16 бит — 6,4 Гбайт/с, после "туннеля" 8 бит — 3,2 Гбайт/с и AGP (2 Гбайт/с), адресация 40/ 64 бит. В серверном варианте 3*16 бит — 19,2 Гбайт/с.Процессоры архитектуры RISC (Power PC, MIPS, SPARC, и др.) имеют "упрощеные" системы команд не по выполняемым операциям, а по сложности и регулярности. У них фиксированная длина инструкции, много РОН, операции в регистрах, с памятью только пересылки, нет инструкций со сложной адресацией. Они легче конвейеризируются, распараллеливаются, разгоняются. На архитектуру 32/64-битных RISC-процессоров имеется открытый стандарт SPARC (Scalable Processor Architecture. Можно указать следующие известные RISC-процессоры: High End — UltraSPARC IIICu для мощных серверов (до 100- процессорных); Mid Range — UltraSPARC Illi для 2-4 SMP (и однопроцес-сорных); Blades — UltraSPARC II — сервер на одном кристалле. Мультипроцессорные системы — это объединение нескольких ЦП с общей памятью, что обеспечивает надежность (FRC) и производительность (SMP). В FRC два процессора соединяются параллельно, шиной управляет 1-й (Master), 2-й (checker) проверяет шинные операции, если находит несоответствие, то дает прерывание. В SMP встает вопрос объединения процессоров, их кэшей и связи с памятью. В х86 Intel (Pentium, Pentium 4) используется общая шина, ее полоса делится между всеми CPU и памятью. У AMD Athlon EV6 — это двухточечная шина, полоса которой используется монопольно, несколько ЦП объединяются на хабе. У Athlon-64 и Opteron каждый процессор входит в систему со своим контроллером памяти, шина объединения отделена от шины памяти. По сути это уже мультикомпьютер. В PC используются два уровня иерархии интерфейсов; системный (шины расширения ввода-вывода: ISA/EISA, PCI, PC Card, CardBus, порт AGP) и периферийный. Интерфейсы периферийного уровня связаны с системным уровнем через адаптеры и контроллеры. Спецификой интерфейсов системного уровня в настоящее время является использование параллельных шин на системной плате, обеспечивающих тесную связь с центром (процессором и памятью), высокие требования к производительности (быстродействию), малую протяженность и требовательность к протоколу. Однако это приводит к уязвимости всего компьютера при нарушениях и к сложности отладки. Периферийные интерфейсы изолированы от центра компьютера своими адаптерами и контроллерами, являющимися фактически регистрами ввода и вывода, обеспечивающими взаимодействие памяти и пространства ввода-вывода. Смысловые различия ОЗУ и регистров состоят в том, что память используется для хра нения, а регистры могут образовывать каналы передачи данных ! или управления. При этом недопустимы кэширования, изменения порядка физических операций и холостые чтения регистров.Прерывания — это сигнализация асинхронных событий от устройств. Они могут быть маскируемые и немаскируемые, При маскируемых прерываниях контроллер принимает сигналы запросов, передает общий запрос процессору, по INTA отвечает 1 вектором прерывания. В соответствии с вектором запускается обработчик (ISR). Если операционная система (ОС) не может идентифицировать источник, она выстраивает ISR в цепочки. Немаскируемыми прерываниями являются сообщения о фатальных ошибках, возможно, требующих перезагрузки. Стандартным для персональных компьютеров (PC) контроллером прерываний является PIC (Peripheral Interrupt Controller), а для мультипроцессорных систем продвинутым контроллером прерываний является APIC (Advanced PIC), который используется и в однопроцессорных ЭВМ. Альтернативой и дополнением прерываний может быть полинг. Основными блоками памяти являются оперативное запоминающее устройство (ОЗУ) и BIOS (постоянное запоминающее I устройство (ПЗУ), флэш). Иерархия памяти обычно следующая: регистры ЦП, кэш, ОЗУ, устройства хранения фиксированные, устройства хранения со сменными носителями. Элементной базой ОЗУ является структура ячейки DRAM на полевых транзисторах, которые хранят заряд в емкости за-; твора. Однако заряд стекает, и поэтому нужна регенерация через -10 мс. Обращение к матрице хранящих ячеек производится через RAS CAS по классической временной диаграмме чтения (RAS I CAS Data). Время доступа Гс> 20 не. Для повышения производительности используется широкая шина данных (64/128 бит). Имеется режим быстрого страничного обмена FPM (Fast Page Mode). Для обеспечения некоторой конвейеризации работы, повышающей производительность при чтении, используется регистр-защелка (data latch) EDO DRAM (Extended или Enhanced Data Out). Кроме регистра-защелки выходных данных имеется еще и внутренний счетчик адреса колонок для пакетного цикла. В результате удлинения конвейера выходные данные как бы отстают на один такт от сигнала CAS#, зато следующие данные появля ются без тактов ожидания процессора, чем обеспечивается лучший цикл чтения. Синхронный интерфейс SDRAM обеспечивает возможность подачи команд к разным банкам одной микросхемы. То же, но с удвоенной частотой передачи данных обеспечивает DDR SDRAM. Память RDRAM (Rambus DRAM) имеет синхронный интерфейс, существенным образом отличающийся от выше описанного. Запоминающее ядро этой памяти построено на все тех же КМОП-ячейках динамической памяти, но пути повышения производительности интерфейса совершенно иные. Подсистема памяти (ОЗУ) RDRAM состоит из контроллера памяти, канала и собственно микросхем памяти. Разрядность ОЗУ RDRAM (16 байт) не зависит от числа установленных микросхем, а число банков, доступных контроллеру, и объем памяти суммируются по всем микросхемам канала. При этом в канале могут при сутствовать микросхемы разной емкости в любых сочетаниях. Если есть несколько слотов для модулей, то во всех должна быть либо память, либо заглушки (нужен непрерывный канал). Память SMRAM — это физически изолированное пространство для процедур системного управления, таких как управление энергосбережением, эмуляция устройств (например, контроллера клавиатуры через US В). Статическая память SRAM (Static RAM) не требует регенерации. Она быстродействующая и применяется в КЭШе (и в других местах). Плотность упаковки ниже DRAM, энергопотребление выше. Буферы — это память для промежуточного хранения (в устройствах, контроллерах), часто FIFO (не адресуемые). Кэш — это неадресуемая сверхоперативная (быстродействующая) память, хранящая копии некоторых блоков ОЗУ. Масочные постоянные запоминающие устройства ПЗУ или ROM имеют высокое быстродействие (время доступа 30-70 не). Однократно программируемые постоянные запоминающие устройства ППЗУ или PROM имеют аналогичные параметры (раньше использовали для BIOS). Репрограммируемые постоянные запоминающие устройства РПЗУ или EPROM до недавних пор были самыми распространенными носителями BIOS. Электрически стираемая (и перезаписываемая) память EEPROM, или E2PROM (Elecrical Erasable PROM), отличается простотой выполнения записи. Флэш-память по определению относится к классу EEPROM (электрическое стирание), но использует особую технологию построения запоминающих ячеек. Стирание во флэш-памяти производится сразу для целой области ячеек (блоками или полностью всей микросхемы). Кроме того, может использоваться статическая энергонезависимая память FRAM (Ferroelectric RAM). Системная плата — это основа PC. На ней располагаются ЦП (CPU, 1-2), ОЗУ (RAM, может и с кэшем), (Г1)ПЗУ (флэш-BIOS), системная периферия (таймер, контроллер прерываний, контроллер клавиатуры, динамик), интегрированные ПУ (необязательно), шины расширения ввода-вывода, вспомогательные цепи (синхронизация, аппаратный сброс, управление питанием). "Северная" часть системной платы содержит процессор(ы) и память, а "Южная" часть: шину PCI, являющуюся основой расширения, и остальные шины (ISA и др.) подключаются к ней через мосты; контроллер ATA (PCI IDE) со скоростью обмена 33/66/100/ 133 Мбайт/с (на канал) или Serial ATA со скоростью от 150 Мбайт/с; порты USB 2.0 со скоростью 480 Мбит/с (60 Мбайт/с); другие штатные устройства (контроллеры прерываний, клавиатуры, НГМД, портов СОМ и LPT) со скоростью порядка 2 Мбайт/с. Эволюция системных плат прошла от систем PC/XT на основе шины ISA, а на ней все, включая ЦП и контроллер DRAM до (Pentium) подключения к шине процессора контроллера памяти (с кэшем) и моста на шину расширения (ISA, EISA, PCI). При этом шина на "экваторе", (отсюда и названия "север-юг"), "север" усложнился (появился AGP) и хабовая архитектура. В данном контексте хабы (мосты) — это специализированные микросхемы, обеспечивающие передачу данных между подключенными к ним шинами. Северный хаб (мост) определяет: поддерживаемые процессоры, их типы, частоты системной шины, возможности мультипроцессорных или избыточных конфигураций; типы памяти и частоту работы шины памяти; максимальный объем памяти (число слотов и поддерживаемые объемы модулей); Число каналов памяти — чаще всего один, но бывает два канала RDRAM, чередование банков DRAM. контроль достоверности памяти и исправления ошибок (паритет, ЕСС); наличие и возможности порта AGP; возможности системы управления энергопотреблением (ACPI или АРМ) — реализуемые энергосберегающие режимы процессора и памяти, SMM. Северный хаб (мост) плат для сокетов 5, 7 и Super? определяет также возможности кэша, частоты шины PCI (33 и 66 МГц), возможное количество контроллеров шины PCI (число пар сигналов арбитра PCI), способы буферизации, возможности одновременных обменов. Северный хаб на эти параметры уже не влияет, поскольку PCI подключается к южному хабу. Южный хаб чипсета обеспечивает подключение шин PCI, ISA (но уже не всегда), АТА (2 канала), USB, а также "мелких" контроллеров ввода-вывода, памяти CMOS и флэш-памяти с системной BIOS. В южной части располагаются таймер (8254), контроллер прерываний (совместимый с парой 8259 или APIC), контроллер DMA для шины ISA и периферии системной платы. Если в чипсет интегрирован и звук, то южный хаб (мост) имеет контроллер интерфейса AC-Link для подключения аудиокодека, а то и сам аудиокодек, а также контроллер SMBus. Флэш-память BIOS подключается к специальному хабу (Firmware hub), соединяемому с южным хабом отдельной шиной (аналогичной LPC). Чипсет обеспечивает взаимодействие множества шин, большинство которых синхронные. У синхронного чипсета все часто ты жестко связаны между собой с коэффициентами 1:1, 1:2, 2:3.Асинхронный чипсет обеспечивает возможность относительно произвольного задания частот системной шины, шины памяти, порта AGP, шины PCL. Интерфейсы системного уровня, самые близкие к центру (процессору и памяти) обеспечивают доступ к их абонентам непосредственно инструкциями процессора. Абоненты отображаются на пространстве памяти (Mem) и ввода/вывода (10); могут сами, управляя шиной, получить доступ к памяти и другим устройствам. В адресации используются физические адреса, формируемые процессором (после страничного преобразования логического адреса). Конструктивно — это параллельные шины на системной плате, со слотами для карт расширения (шины расширения ввода-вывода). Есть и непосредственно подключенные абоненты (интегрированная периферия). Все абоненты всех шин расширения должны занимать непересекающиеся адреса в допустимых диапазонах Mem, I/O (между собой и с ОЗУ-ПЗУ). У каждого имеется свой дешифратор адреса, программируемый механически (джамперы) или программно. Задача распределения ресурсов — это опрос потребностей, выбор распределения, конфигурирование устройств, сообщение настроек заинтересованному ПО. Для ее решения требуется возможность селективного обращения (без помех) к каждому устройству на стадии конфигурирования. При нормальной работе — это просто обращения по адресам (Mem, I/O). Шин расширения может быть несколько, все они связаны мостами с хостом (друг через друга). Мосты программируются, после чего обеспечивается прозрачность. Транзакция — это элементарная операция на шине (обмен данными по адресу). В каждой транзакции есть инициатор (задат- чик, master) и целевое (ведомое) устройство (target). Инициатор задает адрес и тип операции и в операциях записи передает данные. Целевое устройство опознает адресованные к нему транзакции, принимает данные записи, передает данные в чтении. К первому поколению шин ввода-вывода относится ISA(Industrial Standard Archtecture) — асинхронная параллельная шина без обеспечения надежности и достоверности, без автоконфигурирования. В первых IBM PC она была системной шиной (к ней подключались и CPU с памятью), потом стала шиной расширения. Происхождение ведет от microbus/multibus i8080-8088 и их периферийных ИС. Исходно ISA-8 (62-контактный слот), а начиная с PC/AT и до сих пор-- ISA-16 (с дополнительным 18-контактным слотом) имеют раздельные шины адреса, данных и управления, асинхронный обмен (привязка к сигналам шины управления), maxV = 8 Мбайт/с (PIO, 16 бит). Шина данных имеет 16 бит с возможностью 8-битных обменов (16-битный обмен запрашивается устройством явно). 32- и 16-битные транзакции от инструкций процессора разбиваются на 8-, 16-битные в соответствии с возможностями устройства и выравненностью адреса, порядок адресов в 386+ зависит от положения относительно границы 32-битного слова. Не рекомендуются 16(32)-битные транзакции по нечетному адресу. Шина адреса имеет 24 бита для адресации 16 Мбайт памяти (0~FFFFFFh)3 устройства могут занимать OAOQQO-OEFFFFh, иногда и F00000—FEFFFFh (если в Setup включено Memory Hole). Для I/O используются младшие 16 бит (64К портов), но старые карты расширения были и с 10-битной адресацией. Шина управления на каждый тип транзакции (R/W, Мет/ 10) имеет свой управляющий сигнал, общий сброс. Возможность программирования длительности циклов (число WS — тактов ожидания, задается по типам операций в Setup), растяжки и укорочения (0WS) по инициативе устройства. Централизованный контроллер DMA (8237А+регистры страниц) имеет 4 канала на 8-бит плюс 3 канала на 16-бит. Он следит за границами страниц. Режим передачи: одиночный, блочный (max V=2 Мбайт/с, 16 бит), по запросу. 16-битные каналы используются для запроса управления шиной. Шина РС/104 - это логически та же шина ISA, но другой разъем и маломощные сигналы. ISA и РС/104 применяются в промышленных компьютерах и управляющих контроллерах. Второе поколение шин — это MCA, EISA, PCI. Основные признаки этого поколения следующи. Параллельный интерфейс с протоколом обеспечения надежного обмена. Разрядность шины адреса и данных — 32 бита с возможным расширением до 64 бит. Достоверность обеспечивается контролем четности, надежность передачи — обязательным ответом целевого устройства, благодаря чему инициатор транзакции всегда узнает ее судьбу.деСинхронный интерфейс и пакетные передачи с высокой скоростью. Тактовая частота 33 МГц при разрядности 32 бита позволяет достигать пиковой скорости передачи 133 Мбайт/с; возможно повышение частоты до 66 МГц, что при разрядности 64 бит дает пиковую скорость до 532 Мбайт/с. Автоматическое конфигурирование устройств, заноженное в спецификации шины. Набор стандартизованных конфигурационных регистров позволяет собирать сведения о потребностях всех устройств в системных ресурсах (адресах и прерываниях), конфигурировать устройства (назначать ресурсы) и управлять их поведением (разрешать работу в качестве целевых устройств и инициаторов транзакций). Набор команд обращений к ресурсам различных пространств, включая и команды оптимизированного обращения к целым строкам кэш-памяти. Шина EISA имеет дополнительные контакты слота (недоступны картам ISA) и обеспечивает расширение шин данных и адреса до 32 бит. Это новая шина управления для передачи в синхронном режиме и пакетных циклов, обеспечивающая надежный ввод-вывод. Селективное управление AEN для слотов позволяет в специальном режиме изолированно обращаться к I/O каждого слота. Карты ISA можно вставлять в слоты EISA, но не наоборот. PCI (Peripheral Component Interconnect) local bus — это шина соединения периферийных компонентов, основная шина расширения в современных компьютерах. Синхронная, параллельная, высокопроизводительная, надежная, со средствами автоматизированного конфигурирования устройств. Шина адреса/данных мультиплексирована и ориентирована на пакетные передачи. Каждая транзакция начинается с фазы передачи адреса, за ней может следовать произвольное (заранее не указываемое) число фаз данных. Данные имеют 32 бита, в каждой фазе могут быть разрешены любые из 4 байт. Есть расширение шины до 64 бит. Адрес; Mem — 32 бита, можно 64 (даже и на 32-битной шине); I/O — 16 бит. Отдельное пространство адресов — конфигурационные регистры, по 256 байт на каждую функцию устройства. Для выбора конфигурационного пространства каждого устройства (слота) — своя линия CSEL, ее формирует мост. Заметим, что декларированная высокая пропускная способность шины достигается лишь при работе активных устройств шины (Bus Master'oB) — только они способны генерировать длинные пакетные транзакции. Ввод-вывод по шине PCI, выполняемый центральным процессором, дает гораздо более скромные значения реальной пропускной способности. Особенностью шины PCI является ограниченное (не более 5—6) число устройств, подключаемых к шине (в предыдущих шинах такого жесткого ограничения не было). Для подключения большего числа устройств используются мосты PCI, организующие дополнительные шины. Мосты PCI прозрачны и через них проходят все необходимые транзакции. Однако механизмы буферизации, применяемые в мостах PCI, вносят значительную задержку в выполнение транзакций через мост. Слабое место протокола PCI — это операции чтения, особенно если они адресуются к не очень быстрой памяти. Эти операции могут на длительное время непродуктивно занимать шину ожиданием данных. Нарекания вызывает и традиционный способ сигнализации аппаратных прерываний на PCI, так как 4 линии запроса на все устройства всех шин обрекают на их разделяемое использование несколькими устройствами. Хотя электрических противопоказаний (как на ISA) здесь нет, отсутствие стандартизованного признака запроса прерывания затрудняет и замедляет идентификацию устройства, вызвавшего прерывание. Этот стандартный признак появился только в PCI 2.3 — после долгих лег активного использования шины. Начиная с версии 2.2 появился новый механизм оповещения о прерываниях — MSI, который снимает все проблемы традиционной сигнализации. Спецификация PCI стала отправной точкой для создания выделенного интерфейса графического акселератора — порта AGP. Порт AGP (Accelerated Graphic Port) — это синхронный 32-разрядный параллельный двухточечный интерфейс системного уровня для подключения графического акселератора (ГА). Он обеспечивает конвейеризацию обращений к памяти и ускоренную передачу данных (2х, 4х, 8х). При тактовой частоте 66 МГц достигается скорость 264 Мбайт/с (режим 1х), 533 Мбайт/с (2х за счет двойной синхронизации), 1066 Мбайт/с (4х с синхронизацией от источника данных) и в самой последней версии AGP8x— 2,132 Мбайт/с. Кроме повышения пиковой скорости, в AGP применен более сложный протокол, позволяющий ставить запросы к памяти в очереди. Благодаря этому шина не простаивает в ожидании данных, что положительно сказывается на эффективной производительности. Еще одна особенность AGP — аппаратная трансляция адресов памяти, позволяющая согласовать "видение" физической памяти со стороны акселератора с виртуальной памятью, в которой работает графическое ПО на центральном процессоре. Порт AGP является специализированным интерфейсом к нему подключают только графический акселератор (видеокарту). GART (Graphics Address Remapping Table) обеспечивает непрерывную область памяти для акселератора, отображаемую на разбросанные страницы ОЗУ. Он реализуется в чипсете, используется при обращениях ГА к ОЗУ через апертуру AGP (диапазон транслируемых адресов, примыкает к локальной памяти ГА). С шин PCI к устройству на AGP возможна запись, при этом чтение не гарантируется. ЦП может с устройством на AGP делать все. Если чипсет разрешает процессору обращения по физическим адресам внутри апертуры, то это разрешается и устройствам шин PCI, и через GART должны выполняться те же преобразования адреса, что и для обращений от устройства на AGP (может и не разрешать, но тогда он обязан отвергать транзакции).В качестве шины общего назначения PCI получила развитие в виде стандарта PCI-X, вышедшего уже и во второй версии. Здесь тоже повышена пиковая скорость: тактовая частота может быть поднята до 133 МГц (варианты PCI-X66, PCI-X100 и PCI- XI33). В версии 2.0 появился новый режим Mode 2 с синхронизацией от источника данных, в котором скорость записи в память (и только для этой операции) может подниматься в 2 или 4 раза (PCI-X266 и PCI-X533 соответственно). Таким образом, пиковая скорость записи в память в 64-битном варианте шины может достигать 4 Гбайт/с (чтения — до 1 Гбайт/с). В версии 2.0 определен и 16-битный вариант шины. В PCI-X изменен шинный протокол: введена дополнительная фаза передачи атрибутов транзакции, в которой инициатор сообщает свой идентификатор (на PCI целевое устройство не имеет понятия о том, кто запрашивает транзакцию). Кроме того, сообщается и число байтов, подле жащих передаче — это позволяет участникам транзакции планировать свои действия. Главное изменение протокола — это возможность расщепленных транзакций: если целевое устройство не способно быстро ответить, оно заставляет инициатора освободить шину, а позже само организует доставку запрошенных данных. Благодаря этому существенно повышается эффективность использования шины, так как исключаются простои при ожидании данных. Расщепление транзакций повышает и эффективность работы мостов — их издержки становятся менее "разорительными". В PCI-X2.0 введен и новый способ коммуникации между устройствами: обмен сообщениями, адресуемыми по идентификаторам устройств (номер шины, устройства и функции), а не по адресам ресурсов (памяти или ввода-вывода). В предыдущих версиях шин такой возможности не было; этот способ коммуникации полезен для повышения "интеллектуальности" подсистемы ввода-вывода.
Дата добавления: 2015-04-29; Просмотров: 408; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |