Программируемый контроллер прерываний — КиберПедия 

Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...

История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...

Программируемый контроллер прерываний

2017-09-30 387
Программируемый контроллер прерываний 0.00 из 5.00 0 оценок
Заказать работу

Обычно логическая схема обработки прерывания реализуется в виде программируемого контроллера прерываний (PIC), который располагается на кристалле вместе с CPU.

 


 

 

 
 
№ запроса

 


 

 

 

Рис. 13. Схема взаимодействия PIC и CPU

АВП – адрес вектора прерываний.

Все регистры контроллера имеют адреса (либо четные, например 20h, либо нечетные – 21h). Кроме регистров, изображенных на рисунке, в состав контроллера входят дополнительные управляющие регистры. Запрос от ВУ «защелкивается» (размещается) на регистре запросов прерывания (IRR). Наиболее приоритетным является IR0 запрос. На регистре IRR размещаются одновременно несколько запросов. Для выбора запроса (на IRR) с максимальным приоритетом используется логическая схема маскирования и выделения приоритета. Выбранный запрос идентифицируется в виде номера запроса, задаваемого с помощью трех младших разрядов регистра типа прерывания. Старшие разряды регистра типа прерывания устанавливаются при инициализации контроллера таким образом, чтобы величина (N), содержащаяся в данном регистре, соответствовала адресу вектора прерывания для выбранного запроса. Для выбранного запроса устанавливается бит в регистре ISR обслуживания прерывания, а сам запрос в IRR сбрасывается. Это свидетельствует о начале обслуживания прерывания.

Логическая схема маскирования и выделения приоритета формирует сигнал INT, поступающий на специальный вход процессора INTR (запрос прерывания). Если в CPU флаг прерывания IF установлен в 1, что означает отсутствие маскирования внешних запросов прерывания, то CPU выдает сигнал INTA (подтверждение прерывания), предоставляя возможность контроллеру сформировать АВП.

По сигналу INTA все запросы на IRR, имеющие приоритет равный или меньший приоритета выбранного для обслуживания запроса, маскируются до тек пор, пока не будет сброшен (обнулен) бит в регистре ISR для обслуживаемого прерывания. Этот сброс осуществляется программой обслуживания прерывания. Для сброса необходимо в программе обслуживания прерывания выполнить команду OUT, в которой задан известный адрес регистра ISR.

После появления сигнала INTA контроллер формирует на регистре типа прерывания АВП, который подается на младшие разряды D0-D7 шины данных CPU.

АВП используется для указания адреса первой из двух ячеек памяти (ОЗУ), в которых хранится адрес (CS:IP) начала программы обработки запроса прерывания. Предполагается 256 типов прерываний и каждому типу соответствует пара ячеек (вектор), в которых хранится адрес начала обработчика. АВП представляет собой величину 4N, где N – тип прерывания.

 

 

Типы прерываний

Типы прерываний представлены группами, каждая из которых объединяет восемь типов прерываний. Номер группы задается с помощью старших (с 3 по 7) разрядов регистра типа. Для обслуживания запросов прерываний от внешних устройств необходимо при инициализации занести в регистр типа номер группы, равный величине (const) 00001, так как аппаратным прерываниям соответствуют типы 8h-0Fh, 70h-77h.

N Регистр типа 7 - 3 2 - 0
    000 – системный таймер
    001 - клавиатура
F   111 – принтер (LPT1)

Классификация прерываний:

1) 0-7 – логические;

2) 8-F, 70h-77h – аппаратные;

3) 10-1Fh, 40-5Fh – BIOS;

4) 20-3Fh – DOS;

5) 80-F0h – Basic;

6) 60-67h – для пользовательских нужд.

Рассмотренные примеры типов прерываний входят в состав 256 возможных типов.

Для любого типа прерывания существует обработчик, 32-разрядный адрес (IP и CS) которого расположен в специальной таблице IVT.

 
 

 


Схема обработки прерывания имеет следующий вид:

 

 

 

 


Рис. 14. Схема обработки запросов прерываний

Рассмотренная организация системы прерывания реализуется во многих CPU и, в частности, в ранних версиях процессоров intel. Появление ОС типа Windows способствовало совершенствованию CPU и системы прерываний. При программировании в среде Windows нужно знать о возможных режимах работы CPU. Существуют реальный и защищенный режимы работы. Прерывания в защищенном режиме обрабатываются иначе, чем в реальном режиме работы CPU. В защищенном режиме вместо IVT используется таблица дескрипторов прерываний IDT, размещаемая в любом месте оперативной памяти. Для обращения к таблице используются системные функции.

Таблица IDT размещается в памяти по линейному адресу, который хранится в специальном регистре IDTR. Таблица IDT представляет собой массив так называемых шлюзов (специальных структур), через которые осуществляется переход к обработчику. Индекс IDT определяется так: N*8, так как для дескриптора используется 8 байт. При обслуживании прерывания в стек размещается минимум 12 байт. Четыре байта для CS, четыре байта для IP и четыре байта для расширенного регистра флагов EFLAG (PCW).

Анализ существующих систем прерывания позволяет выделить следующие характеристики системы прерывания:

1) Общее количество допустимых запросов прерывания.

2) Время реализации запроса (отклика). Время между появлением запроса и началом выполнения обработчика.

3) Временные затраты на переключение программ.

А) Запоминание текущего состояния CPU.

Б) Восстановление текущего состояния CPU.

4) Глубина прерывания – количество программ, которые могут прерывать друг друга.

5) Насыщение системы прерывания – это количество накопившихся запросов на обработку между первым и следующим запросом от одного и того же источника.

6) Момент обслуживания запроса на прерывание.

А) Обслуживание после выполнения текущей команды.

Б) Обслуживание после выполнения текущей микрокоманды.

В) Немедленное обслуживание.

7) Количество уровней запроса на прерывание – IRQL (Interrupt Request Level). Представляет собой число, определяющее приоритет. Программный код, выполняемый на данном уровне IRQL, не может быть прерван программным кодом, имеющим равный или более низкий IRQL. CPU сравнивает значение текущего IRQL со значением полученного запроса IRQL.

ОС Windows использует идеализированную систему приоритетов, которая учитывает особенности разных CPU.

Таблица уровней IRQL

Наименование Назначение
HIGH_LEVEL Диагностика ЭВМ; ошибка шины.
POWER_LEVEL Прерывание по сбою в электроснабжении.
IPI_LEVEL Прерывания межпроцессорного взаимодействия.
CLOCK_LEVEL Интервальный таймер.
PROFILE_LEVEL Таймер профилирования.
DIRQL Платформенно-зависимое число уровней для прерываний устройств ввода-вывода.
DISPATCH_LEVEL Планирование потоков и выполнение отложенных процедурных вызовов.
APC_LEVEL Выполнение асинхронных процедурных вызовов.
PASSIVE_LEVEL Уровень нормального исполнения потоков.

 

 

Организация сети ЭВМ

 

Сеть ЭВМ – это совокупность ЭВМ, связанных между собой аппаратными средствами передачи данных и имеющих программное обеспечение, используемое для управления связями и передачей данных.

Сетевые ЭВМ и их программное обеспечение подразделяются на клиентские и серверные части. Сервер – это обычно специально выделенный компьютер, обеспечивающий различный сервис клиентам, например, предоставление принтера, осуществление поиска удаленного файла, реализацию взаимодействия с другими компьютерами сети. В глобальной сети Internet сервер, использующий для доступа к удаленной информации программные средства системы WWW (World Wide Web), называют Web-сервером. Серверы хранят на своих жестких дисках информацию, предоставляемую по запросам пользователям. Web-сервер может быть объединен с другими серверами, например, с сервером электронной почты или с сервером баз данных. Локальные сети, подключаемые к Internet-сети, могут состоять из нескольких серверов, содержащих информацию, организованную в виде документов. Каждому хранимому в сети документу соответствует уникальный адрес в системе WWW, обозначаемый URL (Uniform Resource Locator).

Клиент – это прикладная программа пользователя. Пользователь с помощью программ, называемых клиентским приложением, формирует запрос и посылает его на сервер, который формирует ответ и посылает его клиенту.

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

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

Трансиверы (приемо-передатчики), обеспечивающие повышенное качество передачи данных по каналу. Предназначены для передачи, приема данных и обнаружения конфликтов при обмене данными.

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

Хабы (концентраторы проводов), позволяющие объединять сегменты кабелей и обеспечивающие возможность изменения топологии связей. В последнее время хабы вытесняются коммутаторами.

Трансивер часто располагается на канальном кабеле и имеет отвод для соединения с сетевой картой (сетевой адаптер). На рис. 15 представлена схема использования трансивера для подключения к каналу сетевой карты.

 

Подсоединение ЭВМ к сети осуществляется по схеме, изображенной на рис. 16. Для доступа к сетевым ресурсам ЭВМ должна иметь сетевую карту и клиентское программное обеспечение, состоящее из следующих программ. Драйвера сетевой карты. Программы, обеспечивающей взаимодействие драйвера со стеком протоколов. Программы, осуществляющей загрузку из стека протоколов программного модуля, реализующего нужный протокол. Набора программ, обеспечивающих вызовы сетевых услуг.

 

 


Сетевая карта (сетевой адаптер) имеет в сети фиксированный адрес (6 байт), который назначается плате при её изготовлении.

Если канал объединяет ЭВМ в пределах здания, то сеть называют локальной (LAN). Локальные сети имеют незначительную протяженность. Локальные сети объединяются в глобальные. Для передачи сообщений по сети используется пакетное представление передаваемых данных. Т. е. передаваемые данные разделяются на порции, оформляемые в виде нумеруемых пакетов, которые отправляются к получателю возможно разными маршрутами. Получателю необходимо объединить поступающие пакеты и представить данные пользователю в виде документа. Пакет имеет заголовок, порцию данных и концевик, содержащий контрольную информацию. В заголовке пакета задаются, в частности, адреса источника данных и приемника. Драйвер сетевого адаптера распознает совпадение адреса сетевой карты и адреса, заданного в заголовке пакета, пришедшего по каналу в ЭВМ. Если зафиксировано совпадение адресов, то соответствующий пакет изымается из канала и передается в ЭВМ для обработки.

Для описания правил взаимодействия сетевых компонентов предусмотрено несколько уровней. С 1993 года в качестве стандарта признана 4-уровневая модель взаимодействия. Кроме 4-уровневой модели существует 7-уровневая модель. Нижний уровень 4-уровневой модели сетевого взаимодействия ЭВМ именуется канальным и служит для описания правил представления данных в виде потока битов и управления их передачей. На высшем уровне, называемом прикладным, используются специальные программные модули, которые обслуживают запросы пользовательских программ (клиентов). На каждом уровне при передаче пакетируемых данных к передаваемому пакету добавляется свой заголовок. На принимающей стороне пакет разворачивается (освобождается от заголовка). Заголовки указывают принадлежность к уровню полученных пакетных данных. Для обработки пакетных данных на каждом уровне существуют правила, задаваемые в виде протоколов. Программы, реализующие сетевые протоколы, извлекаются из стека протоколов. Для 4-уровневой модели взаимодействия сетевых ЭВМ используются наборы протоколов, именуемые TCP/IP (transmission Control Protocol / internet Protocol). Протоколы TCP/IP обеспечивают правильность прохождения пакетов по сети и поддерживаются различными операционными системами. Протоколы TCP/IP обеспечивают надежную передачу данных по линии с высоким уровнем помех.

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

На рис.17 изображена структура программных модулей, имеющаяся в каждом узле сети, поддерживающей протоколы TCP/IP. На ЭВМ клиента пользователь формирует к конкретному серверу запрос, который представляется на прикладном уровне в виде прикладного сообщения (уровень 4). Для указания местоположения каждого сервера, к которому формируется запрос, на транспортном (третьем) уровне используются соответствующие номера портов. Транспортный уровень служит для обеспечения соединения между портом с номером i на ЭВМ клиента с портом i на ЭВМ сервера и передачи пакетированных данных, называемых на этом уровне транспортным сообщением. После завершения передачи данных между узлами сети программные средства транспортного уровня осуществляют разъединение узлов сети. Выбор маршрута передачи пакетов осуществляется с помощью средств сетевого (второго) уровня. Для адресации ЭВМ источника и приемника информации на сетевом уровне используются логические адреса размером 4 байта (IP-адрес). Пакеты, передаваемые между адресуемыми ЭВМ, на сетевом уровне называют IP-пакетами. Протоколы сетевого уровня определяют не только правила передачи данных, но также правила обмена маршрутной информацией. Дальнейшая детализация местоположения источника и приемника информации осуществляется на канальном уровне преобразованием логических адресов в физические (аппаратные), имеющие размер 6 байтов. Физический адрес соответствует идентификатору конкретной сетевой карты. Пакеты, передаваемые на канальном уровне, называют канальными кадрами.

Наиболее общими протоколами, определяющими для ЭВМ правила соединения и обмена являются TCP, UDP, IP, ARP, ICMP, назначение которых приведено ниже.

TCP является высокоуровневым протоколом, обеспечивающим на основе протокола IP (или совместно с ним) надежную службу доставки пакетов с установкой соединения между передатчиком и приемником. Протокол гарантирует правильность последовательности передачи данных, поддерживает работу с контрольными суммами заголовков и данных пакетов. От получателя требуется подтверждение правильности приема передаваемых данных. При искажении или потере пакета данный протокол обеспечивает повторную передачу пакета.

UDP (User Datagram Protocol) протокол дополняет протокол TCP. Он обеспечивает службу передачи датаграмм без установления соединения между узлами сети. При передаче данных не гарантируется ни правильность последовательности пакетов, ни отсутствие искажений данных. Данный протокол обеспечивает передачу данных от одного источника ко многим приемникам.

IP протокол обеспечивает только доставку пакетов. Он не контролирует целостность данных в пакетах и правильность последовательности поступления пакетов. Названный контроль осуществляется протоколами более высокого уровня.

ARP (Address Resolution Protocol) протокол не имеет прямого отношения к передаче данных. Этот протокол используется протоколом IP для преобразования IP-адреса в физический адрес. Протокол IP получает физический адрес с помощью рассылки специального пакета запроса ARP, содержащего адрес IP получателя. Все ЭВМ сети распознают пакет запроса ARP и, если адрес IP в запросе соответствует адресу какой-либо ЭВМ, то она формирует пакет ответа ARP, в котором передает свой физический адрес.

ICMP (Internet Control Message Protocol) протокол обеспечивает доступ к сведениям о состоянии процесса передачи данных. Данный протокол используется протоколами высокого уровня для выявления сбоев в сети.

Уровень 4

(прикладной).

Используется для взаимодействия с прикладными программами. На этом уровне формируются в качестве передаваемых данных прикладные сообщения, содержащие запросы услуг. Запросы поступают к серверам, имена которых представлены в эллипсах.

 

 


Краткая справка о стандартах и интерфейсах ETHERNET.

Для среды передачи данных используется стандартное название:

X Base Y,

где X - обозначение скорости передачи Мбит/с (10, 100, 1000, …);

Base – ключевое слово, обозначающее немодулированную передачу;

Y – обозначение среды передачи данных и дальности связи.

В качестве среды передачи данных современные сети Ethernet используют кабель, витую пару, оптоволокно. Топология сети звездообразная. Центральным устройством звезды может быть повторитель (он же ХАБ hub) или коммутатор (SWITCH). Возможно 2-точечное соединение двух узлов. Шинная топология из-за низкой надежности используется редко.

Для сети Ethernet, имеющей скорость передачи данных 10 Мбит/с, существуют следующие стандарты.

10Base5 – сеть, построенная на толстом коаксиальном кабеле RG-8(500) с шинной топологией и максимальной длиной кабельного сегмента 500 м. Сетевой адаптер должен иметь интерфейс AUI, подключаемый кабелем (4 экранированные витые пары) к трансиверу, установленному на кабеле. Данный вариант в современных сетях не применяется.

10Base2 – сеть, построенная на тонком коаксиальном кабеле RG-58(500) с шинной топологией и максимальной длиной кабельного сегмента 185 м. Для подключения сетевого адаптера используется интерфейсный разъем BNC или AUI с трансивером. Самый дешевый вариант, но бесперспективный.

10BaseT – сеть, построенная на витой паре категории 3 и выше (2 пары проводов). Эффективный вариант. Длина связи, реализуемая с помощью витой пары, может достигать 100 м. При использовании кабеля категории 5 можно достичь дальности связи 200 м., но не рекомендуется. Для подключения сетевого адаптера необходимо иметь интерфейсный разъем RJ-45 или AUI с трансивером. Использование проводки категории 5 и выше позволяет функционировать сети на скорости 100 и 1000 Мбит/с.

10BaseF и FOIRL – сеть, построенная на оптоволоконном кабеле (пара волокон). Для подключения необходимо использовать интерфейс AUI с оптическим трансивером. Часто используются дешевые многомодовые трансиверы (длина волны 850 нм) с дальностью связи до 1 км. Для обеспечения дальности, измеряемой десятками километров, используются одномодовые трансиверы (1310 нм), которые могут работать и с многомодовым оптоволокном (до 2-х км).

Для сетей Fast Ethernet, обеспечивающих скорость передачи данных 100 Мбит/с, существуют следующие стандарты.

100BaseTX – сеть, построенная на витой паре категории 5 и выше (2 пары проводов). Для подключения сетевого адаптера используется разъем RJ-45. Это наиболее перспективный вариант подключения узлов к сети.

100BaseT4 – редко используемый вариант.

100BaseFX – используется оптоволоконный кабель, составляющий десятки километров.

100BaseSX – длина связи до 300 м.

Для сетей Gigabit Ethernet, функционирующих со скоростью 1000 Мбит/с, существуют следующие стандарты. При построении сетей применяются только коммутаторы.

1000BaseT – сеть, построенная на витой паре категории 5 и выше (4 пары). Дальность связи до 100 м. Для подключения сетевого адаптера используется интерфейсный разъем RJ-45.

 


Поделиться с друзьями:

Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...

Своеобразие русской архитектуры: Основной материал – дерево – быстрота постройки, но недолговечность и необходимость деления...

Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...

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



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.046 с.