ORGANIZATsIYa_EVM
.pdfНаборно-ассоциативная КЭШ состоит, как и КЭШ прямого отображения, из накопительного блока и тэгового.
Накопительный блок состоит из четырѐх отделений А, В, С, D. (четырѐх канальная КЭШ).
Обращение к каждому отделению (адрес) формируется из двух частей: a) адрес строки внутри отделения (набор).
б) адрес номера отделения.
Впредставленной архитектуре адрес номера отделения (2 разряда)
представляются двумя старшими разрядами КЭШ, которые формируются контроллером кэш и не входят в разрядную сетку адресной шины
отделения А 0 0 X X X X X
B0 1 X X X X X
C1 0 X X X X X
D1 1 X X X X X
т.е. набор представлен как подмножество из 4-ех одноимѐнных (имеющих одни
ите же значения адреса строк в отделениях) строк в отделениях.
Формирование адреса отделения формируется по разному в зависимости от
операции (чтение или запись)
Как видно из блок схемы, выбор отделения при чтении, осуществляется по сигналам CPBA, CPBB, CPBC, CPBD, однозначно его определяющие.
В режиме записи алгоритм сложнее, как видно из схемы, в блок формирования адресов номера отделения поступают 3 группы сигналов.
a) CPBA, CPBB, CPBC, CPBD
б)
,
,
, 
в) биты отслеживающие обращение в отделение КЭШ
,
, 
в соответствии с порядком перечисленным выше эти группы сигналов в таком приоритете участвуют в формировании адресов отделения .
1.При формировании одного из сигналов сравнения то есть hit=1 выбор
отделения осуществляется по соответствующему сигналу сравнения.
2. В случае отсутствия сигнала «hit» запись осуществляется после проверки бит
) |
, |
, |
, |
; в случае обнаружения |
=0 в одном из отделений, запись |
|
осуществляется в этот отделение. |
|
|||||
Если |
= |
= |
= |
=1, то в действие вступает алгоритм LPU, на основании |
||
которого формируется номер отделения, к которому не было в обращения в предыдущих 2-ух циклах выборки из КЭШ.
Схема обновления битов
,
,
контролирует все обращения при чтении устанавливая их и сбрасывая в 0 в соответствии с алгоритмом, и каждый раз по окончании цикла чтения записывает их обновлѐнные значения в блок памяти
LPU.
Что касается содержимого тэговой памяти ясно, что кроме значения тэгов
(старшей части адреса) в строках тэгов памяти хранятся биты достоверности и
значения
,
,
.
И так в основе архитектуры наборно-ассоциативной кэш используется тот же принцип построения как в КЭШ прямого отображения с той лишь разницей,
что в архитектуре наборно-ассоциативной КЭШ вводятся элементы ассоциативного характере при доступе к данным.
Структуру такой КЭШ можно представить как КЭШ с размером строк в несколько раз больше чем ширина выборки из основной памяти и определяемое числом отделений в КЭШ, но размер строки скрыт от системы и адресуется как в кэш прямого отображения, таким образом являясь собственностью контроллера кэш и поэтому строку в ней называют набором.
Контроллер имея в своем распоряжении набор размещает в нем данные согласно выше указанному алгоритму, а при чтении из кэш осуществляет поиск данных подобно как это реализуется в ассоциативной кэш ,обращаясь в одном такте одновременно к теговым памятям отделений.
Возможность произвольного размещения строки в границах набора позволяет частично устранить недостатки, связанные с четким расположением строк в КЭШ прямого отображения и содержать в строках набора группу строк из разных страниц.
Запись ,как мы уже говорили, строки набора происходит по выбранному алгоритму, реализованному в контроллере КЭШ, и, как наиболее часто используемых в таких системах, известен как механизм LPU. Суть которого заключается в том, что при записи используется строка к которой дольше всего не было обращения.
Least Recently Used
Например, для того, чтобы производить анализ количества обращений в КЭШ с
4 отделениями и выделить строку к которой подряд 2 раза не было обращения достаточно 3 разрядов (триггеров).
- триггер (бит) фиксирующий обращение к паре отделений из 2-ух возможных.
- Фиксированное обращение к отделениям в 1-ой паре.
- фиксированное обращение к отделениям во 2-ой паре.
Схема формирования
,
,
Установка триггеров
,
,
ясна из самой схемы. Значение разрядов номера отделения формируются на значениях
,
,
из памяти LPU на основе таблиц указанных на схеме. Значения эти используются в случае,
если значения битов достоверности во всех отделениях тэговой памяти имеют
=
=
=
=1
Если в каком либо отделении бит достоверности будет равен 0, то данные безусловно будут записаны в это отделение.
CPBA
CPBB
CPBC
CPBD
CPBA
CPBB
CPBC
CPBD
Схема установки (сброса)
,
,
S
R
S
R
S
R
Для того чтобы понять как работает механизм LRU рассмотрим все возможные комбинации триггеров B0,B1,B2 и соответствующие им обращения к отделениям.
Анализируя полученные варианты, можно заметить ,что при отсутствии обращения к отделению A состояние триггера B2 может принимать как 0 так и 1,а состояния триггеров B0 и B1 “10”соответственно.
При отсутствии обращения к отделению B триггера B0 B 1 находятся в 1, а состояние B2 безразлично.
Если не было обращений к отделению C, то B0 иB2 имеют нулевые состояния, а состояние B1 безразлично.
При отсуствии двух обращений к отделению D B0 в нулевом состоянии, B2 в единичном, а B1 в безразличном.
Обращение |
B0 |
обращение |
B1 |
обращение B2 |
не было к |
|
AvB |
0 |
B |
0 |
D |
0 |
C |
AvB |
0 |
B |
0 |
C |
1 |
D |
AVB |
0 |
A |
1 |
D |
0 |
C |
AVB |
0 |
A |
1 |
C |
1 |
D |
CVD |
1 |
B |
0 |
D |
0 |
A |
CVD |
1 |
B |
0 |
C |
1 |
A |
CVD |
1 |
A |
1 |
D |
0 |
B |
CVD |
1 |
A |
1 |
C |
1 |
B |
Результирующая таблица
1 |
1 |
х запись в B |
1 |
0 |
x запись в A |
0 |
x |
0 запись в C |
0 |
x |
1 запись в D |
корректировка B0, B1, B2. И запись в блок хранения
|
|
|
|
|
|
|
|
|
|
|
Тег |
набор |
смешение |
|
|||||||
смещение |
смещение |
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
||
|
Дешифратор набора |
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Набор0 |
|
|
||
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
СТРОКА0
Отделение А КЭШ ДАННЫХ
СТРОКАN
наборN
|
ТЕГ |
ТЕГ |
ТЕГ |
|
ТЕГ |
|
|
|
|||||
|
отделен |
отделен |
отделен |
|
отделен |
|
|
A |
B |
C |
|
D |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Строка0 блок0
*
*
*
*
строкаN блок0
строка0 блок1
Строка0 блокК-1
Количество блоков(страниц) определяется К=2*m
Где m-число разрядов в теге
СтрокаN блокК-1
|
= |
|
|
= |
|
|
= |
|
= |
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
ДАН |
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
В КЭШ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
СХЕМА |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
ФОРМИРОВ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
НОМЕРА |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
Исп отд А |
|
|
|||||
ОТДЕЛЕНИЯ |
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
ПРИ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
Исп отдВ |
|
|
|
|
|
|
|
|
|
||||
ЧТЕНИИ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
Исп отд С |
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
Исп отд D |
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ЛЕКЦИЯ N8
Тема лекции:
1.Процессор. Назначение, классификация архитектур процессоров по управлению потоками команд и данных, их хранению и по набору выполняемых команд.
2.Структура и форматы обрабатываемых команд и данных в процессоре. Последовательность выполнения команды в процессоре.
1)Процессоры – центральная часть, ядро ЭВМ, предназначенная для реализации алгоритма, заложенного в программе, аппаратными средствами.
2)Процессор состоит из совокупности блоков, каждый из которых отвечает за определенный этап процесса обработки информации.
Совокупность этапов связанных с обработкой одной команды называется шагом работы процессора или командным циклом.
3)Командный цикл, делящийся на более мелкие этапы работы процессора, называется машинным циклом, который в свою очередь делится на машинные такты.
Командный цикл
Машинный цикл |
Машинный цикл |
Машинный цикл |
||||||
|
|
|
|
|
|
|
|
|
T1 |
T2 |
T3 |
T1 |
T2 |
T3 |
T1 |
T2 |
T3 |
Такое деление характерно для микроконтроллеров и микропроцессоров то есть для процессоров имеющих архитектуру блока управления с «жесткой логикой».
Для архитектур процессоров с микропрограммным управлением используют понятие как микропрограмма, микрокоманда, микрооперация. По сути эти понятия не эквивалентны выше указанным.
Микропрограмма или группа микропрограмм формируют командный цикл Микрокоманда это группа микроопераций или одна микрооперация – по времени соответствует действию в процессоре в течении машинного такта. 4) Первоначально в процессоре существовало два потока информации: команды и данные, обрабатываемые процессором в этой команде , в дальнейшем с внедрением систем диагностирования и восстановления
работоспособности процессора за счет средств резервирования стали внедрятся в архитектуру процессора блоки контроля, диагностики, восстановления и соответствующие им информационные и управляющие тракты.
Хранение продвижение потоков команд и данных определяется двумя принципами ( Фон-Неймана и Гарвардской архитектурой), которые в современных архитектурах существуют совместно. В соответствии с наличием потоков команд и данных в процессоре существуют блоки занимающиеся обработкой и контролем продвижения данной информации.
Но прежде чем начать говорить о назначении и составе этих блоков в процессоре остановимся подробнее на реализации вышеупомянутых принципах подробнее.
