Процессор и сам может порождать прерывания, не синхронные текущему потоку инструкций, например, в случае истечения кванта времени (совпадение регистров 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.