Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учеб. пособие по ОЭВМ.doc
Скачиваний:
2
Добавлен:
01.04.2025
Размер:
4.34 Mб
Скачать

Лабораторная работа № 9. Моделирование буферной памяти с признаковым обменом и сквозной записью. Моделирование функционирования группо-ассоциативного буфера.

Для организации функционирования группо-ассоциативного буфера также, как и в случае секторного буфера, все поле памяти разбивается на блоки равной величины, содержащие по L байтов. Блоки объединяются в зоны по N блоков, которые называются сегментами и секторами, соответственно, для ОП и БП. В группо-ассоциативном буфере j-й блок, j=(0; N-1), i-го сегмента ОП, i=(0;С-1) (С-число сегментов), может быть помещен на место j-го блока к-го сектора БП, к=(0, S-1) (S-число секторов), однако в одном секторе буфера могут находиться блоки различных сегментов ОП. Поэтому в группо-ассоциативном буфере каждому блоку придается адресная часть, в которой указывается, какому сегменту ОП принадлежит данный блок. Кроме того, при использовании признакового обмена каждый блок в БП содержит дополнительно бит изменения. Бит изменения блока равен 1, если содержимое блока изменялось, в противном случае бит изменения равен 0.

Номер сегмента, номер блока и номер байта внутри блока определяются по исполнительному адресу так же, как для секторного буфера.

Рассмотрим функционирование группо-ассоциативного буфера. При обращении к памяти по исполнительному адресу определяется номер блока. Затем в БП просматриваются адресные части блоков с выделенным номером и анализируются номера сегментов. В том случае, когда номер сегмента, заданный исполнительным адресом, совпадает с номером сегмента, заданным адресной частью блока в БП, то это означает, что адресуемый блок хранится в БП. При наличии адресуемого блока в БП в зависимости от кода операции происходит чтение информации из БП в ЦП или запись информации в БП из ЦП по адресу, который определяется младшими ]log2(N)[ разрядами исполнительного адреса.

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

Рассмотрим дисциплину признакового обмена. Для блока, подлежащего вытеснению, проверяется бит изменения. В том случае, если бит изменения равен 1, т.е. это означает, что содержимое блока было изменено, блок переписывается в ОП, а бит изменения сбрасывается в 0.

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

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

Ассоциативный буфер является частным случаем группо-ассоциативного буфера, в котором j-й блок, j=(0;N-1), i-го сегмента ОП, i=(0;C-1), может быть помещен на место n-го блока, n=(0;N-1), к-го сектора БП, к=(0;S-1). Таким образом, если разбить весь объем буфера V

на N групп S=V/N, то в группо-ассоциативном буфере j-й блок ОП может занять одно из S мест в j-й группе БП. При N=1 получаем ассоциативный буфер. Графическое изображение окна программы при выборе лабораторной работы «Группо-ассоциативный буфер (кэш-память)» приведено на рис. 51.

Рис. 51. Окно программы при выборе лабораторной работы «Группо-ассоциативный буфер (кэш-память)»