Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Оргазм_шпоры.docx
Скачиваний:
23
Добавлен:
07.07.2019
Размер:
1.08 Mб
Скачать
  1. Теги и дескрипторы

Одним из эффективных средств совершенствования архитектуры ЭВМ является теговая организация памяти, при которой каждое хранящееся  в памяти (или регистре) слово снабжается указателем — тегом (см. рис.2.13, а). Последний определяет тип данных — целое двоичное число, число с плавающей точкой, десятичное число, адрес, строка символов, дескриптор и т. д. В поле тега обычно указывается не только тип, но и длина (формат) данных и некоторые другие их параметры. Теги формируются компилятором. Наличие тегов придает хранящимся в машине данным свойство самоопределяемости, вносящее принципиальные особенности в архитектуру и функционирование ЭВМ. В современных компьютерах теговая организация используется в кэш-памяти и блоках обработки чисел с плавающей запятой. В архитектуре современных ЭВМ используются дескрипторы –служебные слова, содержащие описание массивов данных и команд.

 

Рис. Структура описания данных: а - с теговой организацией памяти; б - дескриптор данных

 

Дескриптор содержит сведения о размере массива данных, его местоположении (в ОП или внешней памяти), адресе начала массива, типе данных, режиме защиты данных (например, запрет записи в ячейки массива) и некоторых других параметрах данных. Отметим, что задание в дескрипторе размера массива позволяет контролировать выход за границу массива при индексации его элементов. На рис. 2.13, б в качестве примера представлен один из видов дескрипторов – дескриптор данных. Дескриптор содержит: А – адрес начала массива данных; L – длина массива; Х – индекс; Ук – группа указателей (атрибутов). Использование в архитектуре ЭВМ дескрипторов подразумевает, что обращение к информации в памяти производится через дескрипторы, которые при этом можно рассматривать как дальнейшее развитие аппарата косвенной адресации. Адресация информации в памяти может осуществляться с помощью цепочки дескрипторов, при этом реализуется многоступенчатая косвенная адресация. Более того, сложные  многомерные  массивы данных (таблицы и т. п.)  эффективно описываются древовидными структурами дескрипторов.

  1. Типовая структура кэш-памяти

Строки, составленные из информационных слов, и связанные с ними адресные теги хранятся в накопителе, который является основой кэш-памяти, остальные блоки относятся к кэш-контроллеру. Адрес требуемого слова, поступающий от центрального процессора (ЦП), вводится в блок обработки адресов, в котором реализуются принятые в данной кэш-памяти принципы использования адресов при организации их сравнения с адресными тегами. Само сравнение производится в блоке сравнения адресов (БСА), который конструктивно совмещается с накопителем, если кэш-память строится по схеме ассоциативной памяти. Назначение БСА состоит в выявлении попадания или промаха при обработке запросов от центрального процессора. Если имеет место кэш-попадание совпадение теговой части адреса, поступающего от центрального процессора, с адресным тегом одной из ячеек кэш-памяти), то в режиме чтения информации соответствующая строка из кэш-памяти переписывается в регистр строк. С помощью селектора из неё выделяется искомое слово, которое и направляется в центральный процессор.

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

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

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

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