Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Как ЦПУ реагирует на прерывание. Выбор линии IRQ для устройства. Определение используемых в системе прерываний. Обслуживание прерываний. Каскадные IRQ. Передача информации вслед за IRQ.




Материнская плата. Типы шин расширения ПК. Взаимодействие устройств

 

Материнская плата – она содержит сложные микросхемы такие как ЦП, модули памяти ОЗУ и BIOS. Кроме того на материнской плате находятся слоты расширения, куда включены карты (платы) такие как модемы, сетевые адаптеры или видео карты. Эти устройства расширяют устройство компьютера. В любой материнской плате есть шины – которые служат для подключения каждого компонента и обеспечения взаимодействия микросхем. Материнская плата содержит множество микросхем подключенных к разным шинам, которые позволяют им взаимодействовать. Основная шина называется системной. Подключение к слоту устройство должно быть способным взаимодействовать с ЦПУ. Порядок взаимодействия должен быть рассмотрен в данном вопросе, а именно: Внутри системного блока устройства взаимодействуют посредством обмена электрическими сигналами. Например, при перемещении мыши ее электроника передает сигналы ЦПУ. Когда модем принимает данные, он также передает сигналы ЦПУ и т.д.

Устройства, не встроенные в материнскую плату, отправляет ЦПУ сигналы по специальным линиям запроса на прерывание IRQ (interrupt-request) – уведомляя процессор, что требуется его внимание..

 

 

Регистры микропроцессора х86. Стэк. Регистр признаков. Назначение флагов.

 

Стек — это специальным образом организованный участок памяти, используемый для временного хранения переменных, для передачи параметров вызываемым подпрограммам и для сохранения адреса возврата при вызове процедур и прерываний. Легче всего представить стек в виде стопки листов бумаги (это одно из значений слова «stack» в английском языке)— вы можете класть и забирать листы бумаги только с вершины стопки. Таким образом, если записать в стек числа 1, 2, 3, то при чтении они будут получаться в обратном порядке— 3, 2, 1. Стек располагается в сегменте памяти, описываемом регистром SS, а текущее смещение вершины стека записано в регистре ESP, причем при записи в стек значение этого смещения уменьшается, то есть стек растет вниз от максимально возможного адреса. Такое расположение стека «вверх ногами» может быть необходимо, например в бессегментной модели памяти, когда все сегменты, включая сегмент стека и сегмент кода, занимают одну и ту же область — всю память. Тогда программа исполняется в нижней области памяти, в области малых адресов, и EIP растет, а стек располагается в верхней области памяти, и ESP уменьшается.

РЕГИСТР ФЛАГОВ

По результатам операций АЛУ устанавливает либо сбрасывает отдельные биты в регистре флагов F.

x обозначает, что содержимое этого бита не имеет значения. Некоторые операции влияют только на отдельные флаги, а другие совсем на них не воздействуют, поэтому при описании флагов подразумевается выполнение тех команд (операций), которые влияют на эти флаги. В дальнейшем, в тексте, фраза "содержимое XX" будет обозначаться круглыми скобками - (XX).

  • ZF - флаг/признак нулевого результата (Zero), устанавливается в 1, если получен нулевой результат, иначе (ZF)=0.
  • CF - флаг переноса (Carry) устанавливается, если в результате выполнения операции из старшего бита переносится или занимается 1 при сложении или вычитании, иначе (CF)=0. На CF влияют также команды сдвига и умножения.
  • SF - флаг знака результата (Sign) равен единице, если результат отрицательный, т.е. он дублирует старший знаковый бит результата.
  • PF - флаг четности (Parity). (PF)=1, если сумма по модулю два всех битов результата равна нулю (число единичных битов - четное).
  • AF - флаг дополнительного переноса (Auxiliary) устанавливается, если есть перенос из старшего бита младшей тетрады (бит D3) в младший бит старшей тетрады (бит D4). Используется в операциях над упакованными BCD числами.
  • OF - флаг переполнения (Overflow) устанавливается, когда результат операции превысит одно- или двухбайтовый диапазон чисел со ЗНАКОМ, а также в некоторых других случаях. Другое определение: (OF)=1, если перенос/заем в старший бит результата не равен переносу/заему из старшего бита.

 

Как ЦПУ реагирует на прерывание. Выбор линии IRQ для устройства. Определение используемых в системе прерываний. Обслуживание прерываний. Каскадные IRQ. Передача информации вслед за IRQ.

 

Программа – это список команд, выполняемых ЦПУ для решения некоторой задачи. Предположим, вы используете браузер для навигации в WEB, ЦПУ в свою очередь затрачивает большую часть времени на выполнение команд браузера для отображения текста и графики. Процессор занят обработкой команд, но компьютер реагирует на движение мыши, перемещая курсор на экране. Для этого ЦПУ реагирует на прерывания, генерируемые мышью. Когда ЦПУ обнаруживает прерывания, он останавливает выполнение текущей задачи (прерывается) для выполнения команд относящихся к определенному устройству. Команды, выполняемые ЦПУ для обнаружения и обслуживания устройства называется обработчиком прерываний устройства. После обработки прерываний ЦП продолжает выполнение предыдущей задачи. Когда процессор принимает прерывания на линии 12, не предполагается, что оно вызвано мышью. Более того, ЦПУ не имеет значения какое устройство генерирует событие. Вместо этого процессор содержит таблицу адресов памяти, в которой каждому прерыванию соответствует запись.

Когда возникает прерывание ЦПУ, начинает выполнение команд обработчика прерываний, которое занимает адрес памяти соответствующий ему. Процессору безразлично, для какого устройства он выполняет команды.

Устройства, которые взаимодействуют с ЦПУ, исключая прерывания для обладающих собственной линией IRQ. При попытке использования одной и той же линии IRQ двумя устройствами возникает конфликт, который не позволяет функционировать обоим устройствам. Их называют IRQ-конфликтами. Методика выбора IRQ для устройства зависит от его типа. В некоторых случаях использует переключатель, которые находятся на плате устройства. Иногда это перемычки - их паяют или используют специальные программы. Чтобы избежать конфликтов при установке нового устройства нужно знать как оно функционирует с ЦПУ. Если устройство подключено к USB или SCSI шине для него не нужно указывать линию IRQ. Такие устройства самоконфигурируются, чтобы использовать ресурсы незанятые системой. При подключении устройства не Plug and Play в слот материальной платы, необходимо определить какие прерывания достигаются в данный момент, а затем сконфигурировать устройство таким образом, чтобы оно использовало доступную линию IRQ.

Программа «Сведения о системе»

0- 1- 2- . . . 15-

Первые ПК поддерживали 8 линий прерываний. С появлением ЦП 80286 был добавлен 2-ой контроллер прерываний, что обеспечивает поддержку 16 линий прерываний. В таблице прерываний указано, что когда ЦПУ принимает прерывание по линии 2 ЦП распознаёт, что IRQ соответствует 2-му котроллеру, а следовательно прерываниям от 8-15. После приёма сигнала прерывания по линии 2 процессор анализирует порты ввода\вывода OxAO и OxA1, чтобы определить какое прерывание на 2м контроллере в действительности.

С помощью прерываний устройство сигнализирует ЦПУ о том, что для ни необходимо выполнить определённые действия. После получения запроса на прерывание, процессор запускает коды соответствующего обработчика. Обработчик прерываний принимает от устройства информацию об операциях, которое ЦП выполняет для устройства..Для передачи этой информации обработчик прерываний использует специальные. область памяти, называемые портами ввода\вывода I\O. Адрес порта используемого для взаимодействия с ЦПУ зависит от типа устройства. Каждое устройство, использующее прерывание, обладает уникальным адресом портов. Уникальные адреса также необходимы устройствам как и уникальные линии IRQ. Если два устройства используют один адрес порта, возникает ошибка, которая исключает их правильное функционирование. При установке платы расширения, которая не поддерживает автоматически конфигурируемые устройства нужно обеспечить, чтобы устанавливаемые параметры порта устройства не конфликтовали с существующими устройствами. Предпринимаемые для установки адресов порта действия зависят от типа устройства. В одних устройствах используется переключатели, в других джамперы, в третьих программные средства.

 

Структура памяти ЭВМ

 

Упрощенная иллюстрация размещения информации и разделения адресного пространства процессора между оперативной памятью, памятью контроллера (адаптеров) и постоянной памятью показана на рис. 1.3.

 


 

Первые 640 Кбайт оперативной памяти использовались программами диско­вой операционной системы (DOS). Диапазон памяти от 640 Кбайт до 1024 Кбайт (верхняя память) зарезервирован для обслуживания различных устройств ком­пьютера (аппаратурный уровень), а диапазон от 1024 Кбайт и выше (расширен­ная память) - для хранения программ операционной системы Windows, OS/2 или Unix. Пространство памяти от 0 Кбайт до 1024 Кбайт стало стандартным с целью обеспечения полной совместимости различных процессоров. Кратко поясним назначение участков памяти.

Векторы прерывания - стартовые адреса программ обработчиков преры-ваний.

BIOS (Basic Input/Output System) - базовая система ввода/вывода, являю­щаяся частью операционной системы, управляющая работой устройств компьютера и взаимодействующая с прикладными программами.

Прикладные программы (приложения) - программы, предназначенные для работы под управлением операционной системы.

BIOS хранится в постоянной памяти, содержит набор процедур (пакет служебных программ) и выполняет следующие функции: загрузку операционной системы, инициализацию, тестирование, конфигурирование устройств компь­ютера, обслуживание аппаратных и программных прерываний. Данные BIOS -это данные о типе компьютера, объеме памяти, версии операционной системы, имеющемся оборудовании (числе и типе видеоадаптеров, гибких дисков, принтеров, игровых портов и т. д.).

Для модернизации BIOS стали использовать флэш-память (специальное ПЗУ с многократным перепрограммированием).

Флэш-память может быть перезаписана без участия программатора непос­редственно в компьютере. Она характеризуется энергонезависимостью, электрическим стиранием информации с большой скоростью (частично или полностью) и малым временем доступа.

Драйверы - программы специального формата, управляющие работой устройств компьютера (принтера, накопителями гибкого и жесткого дисков, клавиатурой, мышью и т. д.).

Резидентные программы - программы, остающиеся в оперативной памяти после их выполнения и предохраняющиеся операционной системой от возможного их искажения другими программами, которые через прерывание получают к ним доступ. Например, резидентными являются программы сжатия информации диска, кэширования памяти, сетевых протоколов и т. д.

ROM-BIOS - базовая система ввода/вывода, которая постоянно содержится в памяти, доступной только для чтения.

Программы пользователей - программы, загружаемые в оперативную па­мять в данный момент для выполнения.

Видеопамять - область памяти, размещенная в видеоадаптере, использую­щая адресное пространство оперативной памяти для вывода на экран графической и текстовой информации.

Каждому типу видеоадаптера отводятся определенные адресные участки оперативной памяти (видеобуфера), например видеоадаптеры VGA и SuperVGA (VGA - Video Graphics Array, Видеографическая матрица) занимают адресное пространство А000 - BFFF (128 Кбайт), видеоадаптер CGA (Color Graphics Adapter, Цветной графический адаптер) - адресное пространство В8000 - ВСООО (16 Кбайт) и т. д.

Операционная система - пакет программ, управляющих устройствами компьютера и осуществляющих взаимодействие пользователя с компьютером и программ между собой, то есть обеспечивающих связь программ, аппаратуры и пользователя с целью достижения удобства управления компьютером и расширения его функциональных возможностей. Операционная система выполняет следующие функции: диагностики компьютера, управления в водом/выводом, работы с файлами, организации диалога с пользователем, защиты и т. д.

Известны командная неграфическая система (DOS - Disk Operating System, Дисковая операционная система) и графическая операционная система Windows. DOS - неграфическая операционная система, наиболее приближенная к аппаратуре компьютера, основная часть программ которой хранится на диске, и использующая командную строку.

DOS выполняет символьные инструкции, вводимые в командную строку тек­стового экрана для запуска соответствующих программ. Кроме того, для удобства работы были разработаны специальные программы–оболочки (например, Norton Commander), которые позволяют исключить набор соответствующих сложных команд DOS, что облегчает и ускоряет работу пользователя на компьютере.

Windows - графическая операционная система, ориентированная на широ­кий круг пользователей и позволяющая значительно упростить их общение с компьютерами путем применения графических знаков (элементов изображе­ния) и стандартного (единообразного) подхода для работы с приложениями. Windows требует использования 4-8 и более Мбайт оперативной памяти. 4-10 и более Мбайт дисковой памяти. OS/2 - многозадачная операционная система 32-разрядных процессоров, поддерживаемая IBM.

Unix - многопользовательская, многозадачная, переносимая на большинство компьютеров операционная система с графической версией.

Буферы плат расширения области оперативной памяти, предназначенные для хранения данных, передаваемых от одного устройства компьютера другому.

Буферы используются для согласования скорости передачи информации между устройствами с разным быстродействием. Например, сетевые платы имеют буферы объемом от 8 Кбайт до 64 Кбайт, размещенные в адресном про­странстве оперативной памяти (процессора).

Контроллеры жестких дисков, некоторые видеоадаптеры и отдельные сканеры содержат микросхемы постоянной памяти, которые хранят программы для управления вводом/выводом информации. Участок адресов памяти (диапазон от 640 Кбайт до 1024 Кбайт) в основном зарезервирован за памятью, размещенной в адаптерах и контроллерах периферийных устройств.

Расширенная память используется операционными системами Windows, OS/2, Unix.


Таким образом, можно отметить, что процессор на разных уровнях связан с несколькими типами памяти различного назначения (рис. 1.4).

Каждая память имеет свое функциональное назначение, принцип построения и технические характеристики. Наибольшим быстродействием обладает кэш-память, непосредственно связанная с процессором и берущая на себя ос­новную нагрузку по обслуживанию оперативной памяти. Память жестких дисков на сегодняшний момент времени имеет наибольшую емкость (больше, чем у оперативной памяти), но характеризуется меньшим быстродействием по сравнению с оперативной памятью. К постоянной памяти предъявляются вы­сокие требования по чтению информации с малым временем доступа.

В связи с необходимостью обрабатывать большие массивы информации трехмерных графических изображений в реальном времени видеопамять имеет относительно большую емкость и два канала доступа к ней. Первый канал необходим для подключения процессора, а второй - видеоадаптера или графического процессора.

Сменная память компакт-дисков приобретает все большее значение, особенно с появлением многослойных DVD и развитием лазерной технологии.

 

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...