Асинхронные прерывания от самого процессора

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

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

Регистры ITV, PMV, CMCV
                                                                                                                             
ignored m ignored vector  

Регистр ITV задает маскирование и вектор для прерываний связанных со счетчиком тактов процессора. Регистр PMV – для прерываний связанных c монитором производительности, CMCV – для прерываний связанных с коррекцией машинных ошибок.

Поля регистров ITV, PMV, CMCV
Поле Бит Описание
m   Mask: если 1, прерывания данного типа от процессора не происходят.
vector   Номер выделенного вектора внешнего прерывания от 16 до 255.

POSTRISC 64-bit virtual processor.
Instruction Set Architecture (ISA) and assembler syntax.
Copyright © 2004-2007 Dmitry Buvailo.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: