Назначение таблицы векторов прерываний
Поможем в ✍️ написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

Переход к соответствующему обработчику прерывания осуществляется (в реальном режиме работы микропроцессора) посредством таблицы векторов прерываний. Эта таблица располагается в самых младших адресах ОП, имеет объём 1 Кб и содержит значения сегментного регистра команд (CS) и указателя команд (IP) для 256 обработчиков прерываний.

Адрес          

|

1Кб

|

255 IPL IPH CSL CSH Тип 255
           
8 IPL IPH CSL CSH Тип 2
4 IPL IPH CSL CSH Тип 1
0 IPL IPH CSL CSH Тип 0

Обращение к элементам таблицы осуществляется по восьмиразрядному коду – типу прерывания. Однако, при выполнении операции записи ситуация коренным образом меняется. Именно процессор определяет размер записи (обычно от 1 до 8б), и только эта часть блока может быть изменена. В общем случае это подразумевает выполнение над блоком последовательности операций «чтение – модификация – запись», т.е. чтение оригинального блока, модификация его части и запись нового значения блока. Более того, модификация блока не может начинаться до тех пор, пока проверяется тег, чтобы убедиться в том, что обращение является попаданием.

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

· Сквозная запись – write through, store through – информация записывается в два места: в блок кэш-памяти и в блок более низкого уровня памяти.

· Запись с обратным копированием – write back, copy back, store in – информация записывается только в блок кэш-памяти. Модифицированный блок кэш-памяти записывается в основную память только тогда, когда он замещается. Для сокращения частоты копирования блоков обычно с каждым блоком кэш-памяти связывается так называемый бит модификации. Этот бит состояния показывает, был ли модифицирован блок, находящийся в кэш-памяти. Если он не модифицировался, то обратное копирование отменяется, поскольку более низкий уровень содержит ту же самую информацию, что и кэш-память.

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

При сквозной записи промахи по чтению не влияют на записи в более высокий уровень, и кроме того, сквозная запись проще для реализации. Сквозная запись также имеет преимущество в том, что основная память имеет наиболее свежую копию данных. Это важно в мультипроцессорных системах, а также для организации ввода-вывода. Когда процессор ожидает завершения записи при выполнении сквозной записи, то говорят, что он приостанавливается для записи – write stall.

Общий приём минимизации «останов по записи» связан с использованием буфера записи write buffer, который позволяет процессору продолжить выполнение команд во время обновления содержимого памяти. Следует отметить, что остановы по записи могут возникать и при наличии буфера записи. При промахе во время записи имеются две дополнительные возможности:

· Разместить запись в кэш-памяти – write allocate – называется также выборкой при записи – fetch on write. Блок загружается в кэш-память, вслед за тем выполняются действия, аналогичные выполняющимся при выполнении записи с попаданием. Это похоже на промах при чтении.

· Не размещать запись в кэш-памяти – называется записью окружения – write around. Блок модифицируется на более низком уровне и не загружается в кэш-память.

Формула для среднего времени доступа в памяти в системах с кэш-памятью выглядит следующим образом:

Среднее время доступа = Время обращения при попадании + Доля промахов * Потери при промахе

Эта формула наглядно показывает пути оптимизации работы кэш-памяти, сокращение потерь при промахе, а также сокращение времени обращения кэш-памяти при попадании.

Организация памяти ЭВМ

В основе реализации иерархии памяти современных ЭВМ лежат два принципа:

· Принцип локальности обращений

· Соотношение «стоимость/производительность»

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

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

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

Производительность ЭВМ в значительной мере определяется составом и характеристиками отдельных ЗУ, которые различаются по принципу действия, техническим характеристикам, назначению.

Основные операции с памятью:

· Процедура записи

· Процедура чтения (выборки)

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

За одно обращение к памяти «обрабатывается» для различных устройств различные единицы данных (байт, слово, длинное слово, блок). Основные технические характеристики памяти: Ёмкость, быстродействие (время обращения к ЗУ).

В некоторых ЗУ считывание данных сопровождается их разрушением. В этом случае цикл обращения к памяти должен содержать функцию «регенерация данных» (для ЗУ динамического типа).

Этот цикл состоит из трёх шагов:

· Время от начала операции обращения до момента, как данные станут доступны (время доступа)

· Считывание после обращения

· Регенерация

Процедура записи имеет:

· Время доступа

· Время подготовки (приведение в исходное состояние поверхности магнитного диска при записи)

· Запись

Максимальная длительность чтения-записи называется временем обращения к памяти.

По физическим основам все ЗУ делятся на полупроводниковые, магнитные, магнитооптические, оптические и т.д.

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

По способу организации доступа к данным все ЗУ делятся на:

· ЗУ с произвольным доступом

· ЗУ с прямым или циклическим доступом

· ЗУ с последовательным доступом

Дата: 2019-02-02, просмотров: 301.