Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Bilety_po_AiP.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
2.1 Mб
Скачать

2. Принцип однородности памяти.

Отсутствие принципиальной разницы между программой и данными дало возможность ЭВМ самой формировать для себя программу в соответствии с результатом вычислений.

Программы и данные хранятся в одной и той же памяти. Поэтому компьютер не различает, что хранится в данной ячейке памяти — число, текст или команда. Над командами можно выполнять такие же действия, как и над данными. Это открывает целый ряд возможностей. Например, программа в процессе своего выполнения также может подвергаться переработке, что позволяет задавать в самой программе правила получения некоторых ее частей (так в программе организуется выполнение циклов и подпрограмм). Более того, команды одной программы могут быть получены как результаты исполнения другой программы. На этом принципе основаны методы трансляции — перевода текста программы с языка программирования высокого уровня на язык конкретной машины.

3. Принцип адресности.

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

обобщенная архитектура ЭВМ.

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

Память (ЗУ) хранит информацию (данные) и программы. Запоминающее устройство у современных компьютеров “многоярусно” и включает оперативное запоминающее устройство (ОЗУ), хранящее ту информацию, с которой компьютер работает непосредственно в данное время (исполняемая программа, часть необходимых для нее данных, некоторые управляющие программы), и внешние запоминающие устройства (ВЗУ) гораздо большей емкости, чем ОЗУ. но с существенно более медленным доступом На ОЗУ и ВЗУ классификация устройств памяти не заканчивается – определенные функции выполняют и СОЗУ (сверхоперативное запоминающее устройство), и ПЗУ (постоянное запоминающее устройство), и другие подвиды компьютерной памяти.

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

Конвейеризация вычислений.

Конвейеризация вычислений – один из способов разгрузить шину через перераспределение выполнения операций обмена во времени. В большинстве современных ВС фон Неймана выполнение каждой команды в процессоре разбивается на отдельные операции различных типов. Например: выборка команды из памяти, декодирование команды, вычисление адреса операнда, выборка операнда, выполнение команды и запись результата. Для выполнения каждой такой операции определенного типа служат специализированные исполнительные устройства.

Общий прием конвейеризации – во время выполнения предыдущей команды с упреждением производится выборка из памяти очередной команды, тем самым достигается рациональное использование времени работы шины и процессора, минимизируются простои, сокращается длительность цикла выполнения команд.

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

Реально производительность конвейера снижается, т.к.

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

  2. разные этапы выполнения команд имеют разную продолжительность во времени, т.к. разные блоки процессора работают с различными скоростями (пропускная способность конвейера ограничивается быстродействием самого медленного исполнительного устройства)

  3. различные команды имеют разные форматы, отличаются числом и местом хранения операндов, поэтому не в каждой команде при ее выполнении используются все исполнительные блоки, т.е. возможны простои из-за различной длительности выполнения операций или пропусков отдельных этапов различными командами.

При организации конвейера используется принцип локальности ссылок в программе.

Кэш-память.

Кэш-память – быстродействующая буферная память ограниченного объема, расположенная между процессором и относительно медленной основной памятью.

Если медленной памятью является RAM (random access memory), а быстрой - RAM, реализованная по более быстрой технологии, то концепция называется кэш-памятью.

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

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

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

Кэш используется для хранения команд или данных и часто используемой служебной информации.

Выборка содержимого кэш производится произвольным образом.

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

Кэш снижает нагрузку системной шины, уменьшая число обращений к основной памяти.

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

Кроме встроенного кэш (первый уровень кэширования) в микропроцессорных системах на базе Intel допускается использование дополнительной внешней кэш-памяти (второй уровень кэширования). Для управления ею процессор вырабатывает специальные сигналы.

Нормальная согласованная работа микропроцессорной системы с кэш обеспечивается специальными механизмами, поддерживающими соответствие кэш и основной памяти. Кэш-память невидима для процессора, все управление обменом при ее использовании происходит под управлением контроллера кэш-памяти, определяющего необходимость подкачки данных из оперативной памяти в кэш, место размещения этих данных и необходимость сохранения предыдущего содержимого кэш в основной памяти. Необходимость замещения данных возникает из-за ограниченного объема кэш. Содержимое памяти изменяется при обращении к ней для выполнения операции записи. При записи соответствие содержимого кэш и основной памяти достигается 2 способами:

  1. с помощью механизма сквозной записи (одновременное изменение содержимого основной памяти и кэш)

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

Встроенный кэш Pentium имеет 2 режима работы: со сквозной записью и с обратной. Внутренний кэш Intel486 работает со сквозной записью. Механизм обратной записи может быть реализован в кэш второго уровня.

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

Заполнение кэш происходит построчно, т.е. при промахе из основной памяти копируется целая строка (16 байт), включающая затребованный байт.

Адресация кэш (16-байтных строк) осуществляется с помощью 28 разрядов адреса (младшие 4 разряда обнуляются, т.к. обмен выполняется построчно и адрес выравнивают на границу 16), которые делятся на 2 поля: поле тега (21 разряд) и индекс набора (7 разрядов). При заполнении кэш обновляется строка в наборе, номер которого (от 0 до 127) определяется индексными разрядами сформированного физического адреса. Номер строки набора определяется в соответствии с алгоритмом «замещения наименее используемой информации». Тег выбираемого байта, слова или двойного слова заносится в массив тегов и становится атрибутом (признаком, ключом) данной строки для выполнения ассоциативного поиска информации в кэш в пределах одного набора.

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

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

При инициализации микропроцессора и очистке кэш все 128 наборов битов, используемых для обновления, обнуляются. Это показывает, что к соответствующим строкам наборов не было обращений.

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

В цикле записи при реализации кэш-попаданий производится запись в основную память по указанному адресу и в соответствующую строку кэш (сквозная запись). При кэш-промахе запись производится только в основную память, а обновление строки кэш не производится.

Управление функционированием внутренней кэш осуществляется битами CD и NH регистра CRO. Кэшированием на уровне страниц управляют биты PHT и PCD.

Кэш может быть очищена аппаратно (сброс) или программно с помощью специальных команд. Очистка сводится к сбросу битов достоверности всех строк.

Для поддержания соответствия содержимого внутри кэш и внешней основной памяти в мультипроцессорном режиме имеются специальные средства аннулирования строк.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]