-
- Структуры и архитектуры ЭВМ
- Компоненты системного блока
- Типы корпусов. Питание ПК
- История ВТ и характеристики ПК
- ПР № 1 Сборка системного блок ПК
- Подключение устройств ПК
- Интерфейсы устройств вычислительной техники
- Коммутаторы, шины, интерфейсы
- Интерфейсы устройств хранения. Внутренние и внешние интерфейсы периферийных устройств
- Карты расширений
- ПР № 2 Идентификация интерфейсов и подключение карт расширений
- Подключение устройств ПК
- Основные компоненты системной платы. Набор микросхем системной платы
- Система прерываний и конфигурация системной платы
- ПР№3 Определение модели материнской платы и идентификация установленных на ней компонентов
- ПР№4 Определение конфигурации системы с помощью утилиты CMOS Setup
- ПР№5 Тестирование компонентов диагностическими программами
- Классификация и типы процессоров. Характеристики ЦП
- ПР№6 Выбор и установка процессора
- Режимы работы центрального процессора. Конструктивное исполнение микропроцессора
- ПР№ 7 Тестирование и настройка параметров процессора
- Типы оперативной памяти
-
Система прерываний и конфигурация системной платы
Студент должен знать:
основные компоненты и типоразмеры системной платы;
назначение, типы и виды шин;
назначение и основные характеристики набора микросхем системной платы;
уметь: – конфигурировать системные платы.
Системные платы: основные компоненты, типоразмеры. Архитектура шины. Функциональное назначение шины. Шина ISA,PCI, AGP, USB, SCSI, IEEE 1397. Набор микросхем системной платы. Система прерываний и конфигурация системной платы. Параллельные и последовательные порты. Обзор современных моделей.
Цель:
- дать понятие системе прерывания; тактовый генератор; контроллер прерываний
- изучить типы прерывания, тактовые частоты и основные сведения о системных ресурсах.
В процессе работы ЭВМ очень часто возникает необходимость временно остановить выполнение основной программы для отработки некоторых специальных инструкций (нажатие клавиши, ход системных часов, готовность внешних устройств передать или принять данные и т.д.). С этой целью в CPU встроена эффективная система прерываний. Каждому прерыванию поставлен в соответствие номер (тип) 0..255. Прерывания с меньшим номером имеют более высокий приоритет.
Прерывания могут быть внешними (аппаратными), внутренними и командными. Запрос на прерывание вынуждает CPU после выполнения 1-2 текущих команд перейти к выполнению программы прерывания. Для этого в стеке запоминается адрес возврата на основную программу CS:IP и регистр флагов F (автоматически), а также содержимое регистров, которые потребуются для выполнения программы прерывания (программным путем). После выполнения прерывания восстанавливается состояние регистров CPU и продолжается выполнение основной программы.
Внутренние прерывания вырабатываются процессором и имеют либо предопределенный тип, либо содержатся в коде команды. Предопределенные прерывания, кроме пошагового выполнения, не могут быть запрещены. Например, прерывание типа 0 отрабатывается всегда после выполнения команды деления, когда делитель равен нулю.
Командные прерывания, определяемые пользователем, осуществляются по двухбайтовым командам INT n (кроме специальной однобайтовой команды INT0, по которой вырабатывается прерывание по переполнению, если установлен флаг OF=1). Программное прерывание во многом аналогично выполнению подпрограммы.
Аппаратные прерывания обеспечивают реакцию процессора на события, происходящие асинхронно по отношению к исполняемому программному коду. По возникновении такого события адаптер (контроллер) устройства формирует запрос прерывания, который поступает на вход контроллера прерываний. Контроллер прерываний формирует общий запрос прерывания для процессора, а когда процессор подтверждает получение этого запроса, контроллер сообщает процессору вектор прерывания, по которому выбирается программная процедура обработки прерываний. Процедура должна выполнить действия по обслуживанию данного устройства, включая сброс его запроса, и отправить команду завершения в контроллер прерываний, что дает возможность отреагировать на следующие события. Логика работы системы прерываний и программная модель контроллера прерываний, совместимого с микросхемой i8259A, являются важной частью стандартизации архитектуры PC-совместимых компьютеров.
Каждый сигнал от различных устройств компьютера, чтобы стать «осознанным», должен быть обработан какой-то программой. А выполнять программы может только микропроцессор. Но он один в компьютере, следовательно, в каждый конкретный момент времени микропроцессор может быть занят выполнением только одной программы. Как же ему узнавать о нажатиях клавиш и других сигналах, постоянно возникающих во время работы компьютера, если он выполняет некоторую программу?
Чтобы устройства, входящие в состав компьютера, могли взаимодействовать с центральным процессором, в IBM совместимых компьютерах предусмотрена система прерывании (Interrupts).
Система прерывании позволяет компьютеру приостановить текущие действия и переключиться на другие в ответ на поступивший запрос, например, на нажатие клавиши на клавиатуре.
Тактовый генератор
Системный тактовый генератор генерирует сигналы синхронизации для работы микропроцессора, всех контроллеров и системной шины. Для обеспечения высокой стабильности тактовых частот и их независимости от температуры применяются кварцевые резонаторы, то есть кристаллы кварца, имеющие высокостабильную частоту собственных колебаний. Как правило, в состав системной платы входит несколько кварцевых резонаторов, каждый из которых обеспечивает свой тактовый сигнал. Тактовую частоту процессора можно выбирать путем установки перемычек на системной плате. Это позволяет пользователю модернизировать компьютер путем замены процессора на другой, рассчитанный на более высокую тактовую частоту. Иногда удается заставить процессор работать на более высокой тактовой частоте, чем та, на которую он рассчитан, но здесь нужно соблюдать осторожность, так как повышение частоты ведет не только к увеличению потребляемой мощности и перегреву микросхемы, но и к ошибкам и сбоям в работе, причем проявляющихся только в отдельных режимах, например, в многозадачном.
В общем случае в компьютере существуют следующие тактовые частоты:
- Host BusClock (CLK2IN) — это опорная частота (внешняя частота шины процессора). Именно из нее могут получаться другие частоты и именно она задается перемычками (джамперами);
- CPUClock (Core Speed) — это внутренняя частота процессора, на которой работает его вычислительное ядро. Может совпадать с Host BusClock или получаться из нее умножением на 1,5, 2, 2,5, 3, 4. Умножение должно быть предусмотрено в конструкции процессора.
- ISABus Clock (ATCLK, BBUSCLK) — это тактовая частота системной шины ISA (сигнал SYSCLK). По стандарту она должна быть близка к 8 МГц, но в BIOS Setup имеется возможность выбрать ее через коэффициент деления частоты Host Bus Иногда компьютер остается работоспособным и при частоте шины ISA около 20 МГц, но обычно платы расширения ISA разрабатываются из расчета на 8 МГц, и при больших частотах они перестают работать. Не следует рассчитывать, что компьютер станет вдвое быстрее при удвоении этой частоты. Для каналов прямого доступа к памяти на системной плате используется еще один тактовый сигнал SCLK, частота которого, как правило, составляет половину от ISA Bus Clock.
- PCI Bus Clock — это тактовая частота системной шины PCI, которая по стандарту должна быть 25 — 33,3 МГц. Ее обычно получают делением частоты Host BusClock на нужный коэффициент. В компьютерах предусматривается возможность ее увеличения до 75 или даже 83 МГц, но из соображений надежности работы рекомендуется придерживаться стандартных значений.
- VLBBus Clock — это частота локальной шины VLB, определяемая аналогично PCI Bus Clock.
Контроллер прерываний
Контроллеры радиальных прерываний в первых компьютерах выполнялись на микросхемах i8259, каждая из которых имела 8 входов запроса прерываний. В IBM PC AT применялось две таких микросхемы, в результате чего количество входов запросов прерываний увеличилось до 15. Режимы работы контроллеров прерываний определяются процессором путем записи соответствующих управляющих кодов по адресам в пространстве устройств ввода/вывода.
При поступлении запроса прерывания на один из входов IRQ и удовлетворении этого запроса контроллер прерываний вырабатывает выходной сигнал запроса прерывания, поступающий на процессор. В ответ на это процессор запрашивает контроллер о том, прерывание с каким адресом вектора необходимо обслужить. Всего прерываний может быть 256 (от 00 до FF). Номер прерывания, полученный от контроллера, процессор умножает на 4 и получает, таким образом, адрес памяти, где хранится адрес начала программы обработки прерываний (вектор прерывания). Присваивание каждому из каналов IRQ своего номера процессор осуществляет на этапе инициализации контроллера.
Контроллер прерываний может выполнять следующий набор операций:
- маскирование запросов на прерывание, то есть временное запрещение реакции на них;
- установка приоритетов запросовпо различным входам, то есть разрешение конфликтов при одновременном приходе нескольких запросов на прерывание;
- работа в качестве основного контролера (Master) или подчиненного (Slave).
Для маскирования прерываний используется внутренний регистр контроллера, программно доступный процессору как по записи, так и по чтению. Замаскирован может быть каждый запрос (по каждой из линий IRQ ), путем установки соответствующего бита маскирования в записываемом в контроллер управляющем байте.
Схема приоритетов прерываний может быть задана процессором программным путем. В базовом варианте все приоритеты фиксированы (то есть IRQ0 имеет высший приоритет, а IRQ7 — низший). Но в принципе высший уровень приоритета задается для любого из входов запросов, можно также установить циклическое переключение приоритетов (последний обслуженный запрос получает низший приоритет), обеспечивая тем самым всем запросам равные приоритеты. Если во время обработки прерывания с меньшим уровнем приоритета приходит более приоритетный запрос, то процессор переходит на программу обработки более приоритетного запроса, а после ее выполнения возвращается к программе обработки менее приоритетного запроса. Отметим, что немаскируемое прерывание NMI имеет приоритет выше любого другого аппаратного прерывания.
Завершив выполнение программы обработки прерывания, процессору необходимо с помощью специальной команды сообщить об этом контроллеру прерываний, чтобы разрешить ему дальнейшую работу, в частности, вновь обрабатывать тот же самый запрос.
Контроллер 8259 предусматривает возможность выбора способа распознавания запроса на прерывание — по фронту сигнала IRQ и по уровню этого сигнала. В архитектуре компьютера типа PC используется запрос по фронту.
При каскадировании контроллеров основному контроллеру надо указать, к какому из его входов подключен подчиненный контроллер, а подчиненному контроллеру необходимо указать, к какому входу основного контроллера подключен его выходной сигнал запроса.
Все операции начальной настройки контроллеров прерываний выполняет BIOS, и пользователю нужно прибегать к программированию этих контроллеров только при необходимости смены режимов обслуживания прерываний или при написании собственной программы обработки аппаратных прерываний.
ВЫВОД: основные сведения о системных ресурсах
И так системные ресурсы! Современный компьютер состоит из большого количества разнообразных устройств, и для нормальной работы они должны поддерживаться процессором, им нужен доступ к оперативной памяти и возможность обмена данными с периферией. Необходимо также, чтобы устройства не мешали друг другу, что достигается распределением между ними системных ресурсов.
- Прерывания. С их помощью устройства могут использовать процессордля обработки возникших в них событий.
- Каналы прямого доступа к памяти (DMA). Используются для обмена данными между устройством и оперативной памятью без участия процессора. Для реализации этой технологии в каждой системной плате есть контроллер DMA, поддерживающий до восьми каналов обмена данными. За контроллером дискет, например, закреплен канал DMA 2; для параллельного порта, работающего в режиме ESP, обычно выделяется DMA 3; DMA 4 используется самим контроллером DMA. Остальные каналы часто свободные, поскольку эта технология редко применяется в новых устройствах. Распределение каналов DMA почти всегда выполняется успешно, и во многих современных версиях BIOS вообще нет настроек, с ним связанных.
- Порты ввода/вывода. Служат для обмена данными между устройством и процессором. Это диапазоны адресов в шестнадцатеричном виде, по которым процессорможет записывать или читать данные с помощью специальных команд IN или OUT. Для этих портов выделен диапазон в 64 Кбайт, большая часть которого свободна, поэтому конфликты с их использованием очень редки.
- Области оперативной памяти, специально выделенные для определенного устройства. Как и в случае с портами ввода/вывода, конфликты с областями памяти встречаются редко.
прерывания
В работе компьютера часто возникают ситуации, когда процессору необходимо отложить на время выполнение основной программы и обработать нажатие клавиши на клавиатуре, щелчок кнопкой мыши или другое событие, возникшее в одном из устройств. Для реализации этой задачи во всех компьютерах используют механизм прерываний. Прерывание (INT) — это приостановка процессором выполнения основной программы для обработки события, поступившего от внешнего устройства. В общем случае обработка прерывания происходит следующим образом:
- когда возникает ситуация, требующая вмешательства процессора (например, была нажата клавиша), устройство посылает специальный сигнал — запрос на прерывание (IRQ);
- запрос на прерывание обрабатывается контроллером прерываний, после чего передается процессору;
- процессор, получив запрос на прерывание, приостанавливает выполнение основной программы, сохраняет в оперативной памятитекущее состояние своих регистров и запускает подпрограмму обработки данного прерывания;
- завершив обработку прерывания, процессор восстанавливает из памяти своё исходное состояние и продолжает выполнять основную программу.
Прерывания могут накладываться друг на друга, и если во время обработки одного прерывания возникнет другое с более высоким приоритетом, то выполнение текущего будет приостановлено, и процессор перейдет к более важному.
Процессор может обрабатывать тысячи прерываний в секунду, но пользователи не замечают этого, поскольку скорость его работы достаточно высока.
Все прерывания можно условно разделить на несколько групп:
- Немаскируемые прерывания (Non-Maskable Interrupt, NMI). Они имеют наивысший приоритет. Эти прерывания обрабатываются при аварийных ситуациях, связанных с ошибками в работе оперативной памятиили других устройств.
Все современные процессоры также поддерживают другой тип немаскируемого прерывания SMI (System Management Interrupt), которое используется в схемах управления электропитанием.
- Маскируемые прерывания. В отличие от немаскируемых, их выполнение может быть временно приостановлено программным способом. К ним относят все прерывания от устройств, обрабатываемые контроллером прерываний. Обычно он позволяет обращаться к 16 прерываниям от различных устройств; их назначение приведено в таблице ниже:
В большинстве современных компьютеров используется расширенный контроллер прерываний, который изначально разрабатывался для многопроцессорных систем. APIC ускоряет обработку прерываний и увеличивает их количество до 24.
- Программные прерывания. Они полностью реализуются программным способом без участия контроллера прерываний. Эти прерывания, по сути, — подпрограммы, решающие определенные задачи. Например, все версии BIOSсодержат набор программных прерываний, которые выполняют основные операции ввода/вывода, и любая программа может их использовать, или, другими словами, . вызывать прерывания BIOS. Свои программные прерывания есть у операционной системы, а также у некоторых прикладных программ.
Системные ресурсы: технология Plug and Play
В старых компьютерах ресурсы для некоторых плат расширения настраивались вручную, при этом нередко возникали конфликты, особенно после установки новой платы расширения. Решить проблему распределения ресурсов позволила технология Plug and Play, которая выполняет автоматическое конфигурирование подключаемых устройств.
Чтобы воспользоваться всеми преимуществами Plug and Play, необходима поддержка этой технологии со стороны BIOS, операционной системы и подключаемого устройства. На сегодняшний день она полностью применяется как в аппаратном, так и программном обеспечении, а устройства без ее поддержки уже являются редкостью.
В системе, отвечающей стандарту Plug and Play, ресурсы частично распределяются операционной системой, а системная BIOS во время загрузки выполняет следующие операции:
- инициализирует устройства, которые используются в процессе загрузки системы;
- распределяет ресурсы между устройствами, не поддерживающими Plug and Play;
- опрашивает устройства, поддерживающие Plug and Play, и распределяет между ними оставшиеся ресурсы;
- формирует таблицы распределения ресурсов ESCD (Extended System Configuration Data — данные расширенной системной конфигурации);
- записывает данные ESCD, которые будут использованы для распределения ресурсов при следующей загрузке, в NVRAM — память с автономным питанием.
Работа с системными ресурсами в Windows
Операционные системы семейства Windows полностью совместимы со стандартом Plug and Play и предоставляют пользователям удобные средства, управляющие ресурсами.
Комментарии: