Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
81
Добавлен:
29.03.2016
Размер:
585.73 Кб
Скачать

Теги и дескрипторы

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

Теговая организация памяти способствует реализации принципа независимости программ от данных. Использование тегов экономит память, так как в программах обычных машин имеется большая информационная избыточность на задание типов и размеров операндов при их использовании несколькими командами. Однако при использовании тегов работа микропроцессора несколько замедляется из-за того, что установление соответствия типа команды типу данных выполняемое в обычных ЭВМ на этапе компиляции, в машинах с тегами переносится на этап выполнения программы.

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

Адресация информации в памяти может осуществляться с помощью цепочки дескрипторов или их древовидной структуры.

Особенности risc _ архитектуры

Развитие архитектуры ЭВМ, направленное на повышение их производительности, во многих случаях идет по пути усложнения микропроцессора путем расширения набора команд, введения сложных команд выполняющих процедуры приближающиеся к примитивам языков высокого уровня, увеличения числа используемых способов адресации и так далее. Однако, это порождает ряд нежелательных эффектов. В частности, увеличивается, длинна кода команды, число форматов команд. Это усложняет и замедляет процесс дешифрирования кода команды и увеличивает длительность обработки. Затрудняется реализация микропроцессора в кристалле.

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

RISС - архитектура реализует сокращенный набор простейших, но часто употребляемых команд, что позволяет упростить аппаратные средства микропроцессора и благодаря этому повысить его быстродействие. Выбор набора команд и структуры микропроцессора направлен на то, чтоб все команды системы выполнялись за один машинный цикл микропроцессора. Выполнение более сложных, но редко встречающихся операций обеспечивается подпрограммами. В данном случае машинным циклом называют время в течении которого производится выборка двух операндов из регистров, выполнение операции в АЛУ и запоминание результатов в регистре. Большинство команд являются быстрыми типа <регистр- регистр> и выполняются без обращения к оперативной памяти, которые сохраняются лишь в командах загрузки регистров из памяти и записи в память. В связи с этим RISC - микропроцессоры должны иметь достаточно большое число общих регистров (до нескольких десятков и даже сотен).

Сокращение системы команд, небольшое число (2-3) простых способов адресации (в основном регистровой), небольшое число простых форматов команд с фиксированными размерами и назначением их полей упрощает управляющий блок микропроцессора и делает возможным его реализацию на жесткой логике.

Большое число регистров, особенно при наличии обеспечивающего их эффективное использование <оптимизирующего компилятора>, позволяет до предела сократить обращения к памяти путем сохранения в регистрах промежуточных результатов, передачи через регистры операндов из одних программ в другие, отказа от передач на сохранение в память содержимого в регистрах при прерываниях.

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

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

Недостатки RISC - архитектуры: большая длина объектного кода по сравнению с кодом CISC - архитектуры. Однако, выигрыш в скорости выполнения команд перекрывает проигрыш от удлинения объектного кода.

Соседние файлы в папке Лекции