Если же ни с одной СхСр не поступает сигнал «=» (сигнал совпадения), то это значит, что за словом следует обратиться в ОЗУ.
При передаче операнда из ОЗУ в АЛУ оно одновременно записывается в буферное ЗУ – СОЗУ в ячейку . Причем этой ячейке присваивается адрес А. При повторных обращениях по адресу А число будет уже выбираться из СОЗУ. Затраты времени уменьшатся.
<70>
СОЗУ, как буферная память, бурно развивалась и имеет ряд функциональных особенностей. Все промежуточные результаты пересылаются в СОЗУ. Но поскольку с некоторого момента t все ячейки могут оказаться занятыми, то существует процедура предварительного «освобождения» некоторых ячеек буферных ЗУ – СОЗУ с пересылкой их содержимого в ОЗУ.
Критерием (идеальным!) для выбора ячейки на освобождение должно быть самое редкое обращение (самое давнее обращение). Но это потребует аппаратурных затрат. Фиксация момента и отсчёт временных интервалов. Дисциплина именуется LRU (Least Recently Used – дольше всех неиспользуемый).
Существуют и другие дисциплины, среди которых для большинства программ эмпирически показана неплохая эффективность случайного освобождения (выбор ячейки наугад).
Безусловно, здесь тоже нужна специальная схема, но она существенно проще.
Случайное освобождение может быть реализовано на сдвигающем регистре, в который предварительно записан код «000100¼00».
Рис.1.3.4.2
(РгАУ – регистр адреса удаления). ПУ – сигнал признака удаления, когда в адресном поле нет свободной ячейки. Там, где окажется «1» (она движется под действием ГТИ), содержимое ячейки и адрес удаляются.
Стратегия удаления слова, к которому достаточно давно не было обращения, реализуется, например, с помощью схемы:
Рис.1.3.4.3
Первоначально во все Тг записывается «0» (признак неактивности). Сигналы подаются, когда к ячейке было обращение. Удаляется слово из той ячейки, которая имеет признак неактивности («0») и расположена ниже других. Когда везде будет «1» через интервал задержки произойдет обнуление.
<71>
1.3.5. Оценка эффективности использования СОЗУ в процессоре.
Здесь мы рассмотрим на примерах (достаточно простых), как обеспечивается рост эффективности организации вычислительного процесса за счет буферирования данных в СОЗУ.
Начнем с СОЗУ с прямой адресацией в качестве внутренней памяти процессора.
Условное изображение функциональной схемы:
Рис. 1.3.5.1
В этой схеме РОНы играют роль нескольких «аккумуляторов». Такую ситуацию мы рассматривали.
Адресация прямая, т.е. в командах должен быть указан адрес (адреса), но так как количество аккумуляторов значительно меньше ячеек ОЗУ, то адреса аккумуляторов являются укороченными. Соответственно, типичные форматы команд:
Рис. 1.3.5.2
Пусть требуется вычислить , причем a, b, c, d, e находятся в ОЗУ. Тогда получаем для двухадресной машины:
Таблица 1.3.5.1
1 |
Передача |
P1 |
A |
а РОН1 |
1 |
Деление |
A |
B |
a/b (A) |
2 |
Деление |
P1 |
B |
a/b РОН1 |
2 |
Умножение |
B |
C |
b´c (B) |
3 |
Передача |
P2 |
B |
b РОН2 |
3 |
Сложение |
A |
B |
a/b+bc (A) |
4 |
Умножение |
P2 |
C |
b´c РОН2 |
4 |
Умножение |
D |
E |
de (D) |
5 |
Сложение |
P1 |
P2 |
a/b +bc РОН1 |
5 |
Вычитание |
A |
D |
(A) – (D) (A) |
6 |
Передача |
P2 |
D |
d РОН2 |
|||||
7 |
Умножение |
P2 |
E |
de РОН2 |
|||||
8 |
Вычитание |
P1 |
P2 |
a/b+bc-de РОН1 |
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.