Сверхоперативная память в которой хранятся наиболее часто используемые участки оперативной памяти

Добавил пользователь Евгений Кузнецов
Обновлено: 18.09.2024

Содержание

История

Функционирование

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

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

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

Если кэш ограничен в объёме, то при промахе может быть принято решение отбросить некоторую запись для освобождения пространства. Для выбора отбрасываемой записи используются разные алгоритмы вытеснения.

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

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

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

Аппаратная реализация

Кэш центрального процессора

В связи с ростом частоты, на которой функционируют процессоры, и повышением производительности подсистемы оперативной памяти (ОЗУ), узким местом вычислительной системы стал интерфейс передачи данных.

Кэш-память может давать значительный выигрыш в производительности в случае, когда тактовая частота ОЗУ значительно меньше тактовой частоты процессора. Ряд моделей процессоров обладают собственным кэшем для минимизации времени доступа к оперативной памяти (ОЗУ), которая медленнее, чем регистры (эти регистры и буферы ввода-вывода могут считаться кэшем нулевого уровня). Тактовая частота для кэш-памяти обычно ненамного меньше частоты ЦП.

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

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

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

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

В неэксклюзивной кэши могут вести себя как угодно.

Уровни кэша процессора

Кэш центрального процессора разделён на несколько уровней. Максимальное количество кэшей — четыре. В универсальном процессоре в настоящее время число уровней может достигать трёх. Кэш-память уровня N+1, как правило, больше по размеру и медленнее по скорости доступа и передаче данных, чем кэш-память уровня N.

  • Самым быстрым является кэш первого уровня — L1 cache (level 1 cache). По сути, он является неотъемлемой частью процессора, поскольку расположен на одном с ним кристалле и входит в состав функциональных блоков. В современных процессорах обычно L1 разделён на два кэша — кэш команд (инструкций) и кэш данных (Гарвардская архитектура). Большинство процессоров без L1 не могут функционировать. L1 работает на частоте процессора, и, в общем случае, обращение к нему может производиться каждый такт. Зачастую является возможным выполнять несколько операций чтения/записи одновременно.
  • Вторым по быстродействию является кэш второго уровня — L2 cache, который обычно, как и L1, расположен на одном кристалле с процессором. В ранних версиях процессоров L2 реализовывался в виде отдельного набора микросхем памяти на материнской плате. Объём L2 от 128 кбайт до 1−12 Мбайт. В современных многоядерных процессорах кэш второго уровня, находясь на том же кристалле, является памятью раздельного пользования — при общем объёме кэша в n Мбайт на каждое ядро приходится по n/c Мбайта, где c — количество ядер процессора.
  • Кэш третьего уровня наименее быстродействующий, но он может быть очень большим — более 24 Мбайт. L3 медленнее предыдущих кэшей, но всё равно значительно быстрее, чем оперативная память. В многопроцессорных системах находится в общем пользовании и предназначен для синхронизации данных различных L2.
  • Существует четвёртый уровень кэша, применение которого оправдано только для многопроцессорных высокопроизводительных серверов и мейнфреймов. Обычно он реализован отдельной микросхемой.

Ассоциативность кэша

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

Кэширование внешних накопителей

Многие периферийные устройства хранения данных используют внутренний кэш для ускорения работы, в частности, жёсткие диски используют кэш-память от 1 до 256 Мбайт (модели с поддержкой NCQ/TCQ используют её для хранения и обработки запросов), устройства чтения CD/DVD/BD-дисков также кэшируют прочитанную информацию для ускорения повторного обращения.

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

Применение кэширования внешних накопителей обусловлено следующими факторами:

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

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

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

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

    Программная реализация

    Политика записи при кэшировании

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

    Существуют две основные политики записи кэш-памяти — сквозная запись (write-through) и отложенная запись (write-back):

    1. Сквозная запись — запись производится непосредственно в основную память (и дублируется в кэш), то есть запись не кэшируется.
    2. Отложенная запись — запись данных производится в кэш. Запись же в основную память производится позже (при вытеснении или по истечении времени), группируя в одной операции несколько операций записи в соседние ячейки. Технология обратной записи на некоторое время делает данные в основной памяти неактуальными, для самого ЦП эти неактуальности не заметны, но перед обращением к памяти другого ведущего системной шины (контроллера DMA, bus-master-устройства шины PCI) кэш должен быть записан в память принудительно. При использовании обратной записи в многопроцессорной системе кэши различных ЦП должны быть согласованы (или процессоры должны использовать одну кэш-память).

    Алгоритм работы кэша с отложенной записью

    Изначально все заголовки буферов помещаются в список свободных буферов. Если процесс намеревается прочитать или модифицировать блок, то он выполняет следующий алгоритм:

    Алгоритм вытеснения

    Если список свободных буферов пуст, то выполняется алгоритм вытеснения буфера. Алгоритм вытеснения существенно влияет на производительность кэша. Существуют следующие алгоритмы:

    1. Реализуемые с помощью таймера:
      1. LRU (англ. Least Recently Used ) — вытесняется буфер, неиспользованный дольше всех;
      2. MRU (англ. Most Recently Used ) — вытесняется последний использованный буфер;
      1. LFU ( англ. ) (англ. Least Frequently Used ) — вытесняется буфер, использованный реже всех;
      2. ARC ( англ. ) (англ. Adaptive Replacement Cache ) — алгоритм вытеснения, комбинирующий LRU и LFU, запатентованный IBM.

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

      Кэширование, выполняемое операционной системой

      Кэш оперативной памяти состоит из следующих элементов:

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

      Кэширование интернет-страниц

      Как вариант, кэширование веб-страниц может осуществляться с помощью CMS конкретного сайта для снижения нагрузки на сервер при большой посещаемости. Кэширование может производиться как в память, так и в файловый кэш [9] . Недостаток кэширования заключается в том, что изменения, внесённые на одном браузере, могут не сразу отражаться в другом браузере, в котором данные берутся из кэш-памяти.

      Кэширование результатов работы

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

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

      Устройства памяти подразделяются по двум основным критериям: по функциональному назначению (роли или месту в иерархии памяти) и принципу организации.

      Классификация ЗУ по функциональному назначению (иерархия запоминающих устройств)

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

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

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

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

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

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

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

      Следующим уровнем иерархии памяти является оперативная память. Оперативное ЗУ (ОЗУ) является основным запоминающим устройством ЭВМ, в котором хранятся выполняемые в настоящий момент процессором программы и обрабатываемые данные, резидентные программы, модули операционной системы и т.п. Информация, находящаяся в ОЗУ, непосредственно доступна командам процессора, при условии соблюдения требований защиты.

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

      В состав памяти ЭВМ входят также ЗУ, принадлежащие отдельным функциональным блокам компьютера. Формально эти устройства непосредственно не обслуживают основные потоки данных и команд, проходящие через процессор. Их назначение обычно сводится к буферизации данных, извлекаемых из каких-либо устройств и поступающих в них. Типичные примеры такой памяти – видеопамять графического адаптера и буферная память контроллеров жестких дисков и других внешних запоминающих устройств. Емкости и быстродействие этих видов памяти зависят от конкретного функционального назначения обслуживаемых ими устройств. Для видеопамяти, например, объем может достигать величин, сравнимых с оперативными ЗУ, а быстродействие – даже превосходить быстродействие последних.

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

      Все остальные запоминающие устройства можно объединить с точки зрения функционального назначения в одну общую группу, охарактеризовав ее как группу внешних ЗУ. Под словом “внешние” следует подразумевать то, что информация, хранимая в этих ЗУ, в общем случае расположена на носителях не являющихся частью собственно ЭВМ. Это дискеты, флеш-накопители, CD, DVD, BD-диски и др.

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

      По функциональным возможностям ЗУ можно разделять:

      простые, допускающие только хранение информации;

      многофункциональные, которые позволяют не только хранить, но и перерабатывать хранимую информацию без участия процессора непосредственно в самих ЗУ.

      По возможности изменения информации различают ЗУ:

      постоянные (или с однократной записью – CD-ROM, ПЗУ);

      односторонние (с перезаписью или перепрограммируемые – CD-RW);

      двусторонние (имеют близкие значения времен чтения и записи – HDD).

      По способу доступа различают ЗУ:

      с адресным доступом (произвольный, последовательный);

      с ассоциативным доступом (по ключу).

      По организации носителя различают ЗУ:

      с неподвижным носителем (SDD, flash);

      с подвижным носителем (HDD).

      По способу подключения к системе ЗУ делятся на:

      По количеству блоков, образующих модуль или ступень памяти, можно различать:

      многоблочные ЗУ (позволяют обрабатывать данные параллельно).

      Состав, устройство и принцип действия основной памяти

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

      Запоминающие устройства делятся на:

      основную память (ОП),

      сверхоперативную память (СОЗУ) – устаревшее название кэш и/или регистровой памяти

      внешние запоминающие устройства (ВЗУ).

      Основная память включает в себя два типа устройств: оперативное запоминающее устройство (ОЗУ или RAM - Random Access Memory) и постоянное запоминающее устройство (ПЗУ или ROM - Read Only Memory).

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

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

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

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

      Основной составной частью микросхемы является массив элементов памяти (ЭП), объединенных в матрицу накопителя.

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

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

      ОЗУ связано с остальным микропроцессорным комплектом ЭВМ через системную магистраль (рис.1).

      Рис. 1. Структурная схема ОЗУ

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

      По шине данных передается информация, записываемая в память или считываемая из нее.

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

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

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

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

      Основными характеристиками ОЗУ являются объем и быстродействие.

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

      ПЗУ (энергонезависимая память)

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

      Сверхоперативные ЗУ(в настоящее время это кэш-память) используются для хранения небольших объемов информации и имеют значительно меньшее время (в 2 - 10 раз) считывания/записи, чем основная память. СОЗУ (или кэш) обычно строятся на регистрах и регистровых структурах.

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

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

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

      Регистры могут быть объединены в единую структуру. Возможности такой структуры определяются способом доступа и адресации регистров.

      Если к любому регистру можно обратиться для записи/чтения по его адресу, такая регистровая структура образует СОЗУ с произвольным доступом.

      Безадресные регистровые структуры могут образовывать два вида устройств памяти: магазинного типа и память с выборкой по содержанию (ассоциативные ЗУ).

      Память магазинного типа образуется из последовательно соединенных регистров (рис. 2).

      Если запись в регистровую структуру (рис.2,а) производится через один регистр, а считывание - через другой, то такая память является аналогом магазинной памяти и работает по принципу “первым вошел - первым вышел” (FIFO - first input, first output).

      Если же запись и чтение осуществляются через один и тот же регистр (рис. 2,б), такое устройство называется стековой памятью, работающей по принципу “первым вошел — последним вышел” (FILO - first input, last output). При записи числа в стековую память сначала содержимое стека сдвигается в сторону последнего, К-го регистра (если стек был полностью заполнен, то число из К-го регистра теряется), а затем число заносится в вершину стека -регистр 1. Чтение осуществляется тоже через вершину стека, после того как число из вершины прочитано, стек сдвигается в сторону регистра 1.

      Рис.2. Регистровая структура магазинного типа: а - типа FIFO; б - типа FILO

      Стековая память получила широкое распространение. Для ее реализации в ЭВМ разработаны специальные микросхемы. Но часто работа стековой памяти эмулируется в основной памяти ЭВМ: с помощью программ операционной системы выделяется часть памяти под стек (в IBM PC для этой цели выделяется 64 Кбайта). Специальный регистр микропроцессора (указатель стека) постоянно хранит адрес ячейки ОП, выполняющей функции вершины стека. Чтение числа всегда производится из вершины стека, после чего указатель стека изменяется и указывает на очередную ячейку стековой памяти (т.е. фактически стек остается неподвижным, а перемещается вершина стека). При записи числа в стек сначала номер ячейки в указателе стека модифицируется так, чтобы он указывал на очередную свободную ячейку, после чего производится запись числа по этому адресу. Такая работа указателя стека позволяет реализовать принцип “первым вошел - последним вышел”. В стек может быть загружен в определенной последовательности ряд данных, которые впоследствии считываются из стека уже в обратном порядке, на этом свойстве построена система арифметических преобразований информации, известная под названием “логика Лукашевича”.

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

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

      Рис. 3. Возможный состав системы памяти ЭВМ

      Кэш 1-го уровня – 8 Кслов, ( не более 128 Кб ) 1-2 такта

      Кэш 2-го уровня – 256 Кслов, (от 128 Кбайт до 1−12 Мбайт) 3-5 тактов

      Кэш 3-го уровня – 1 Мслов, (более 24 Мбайт) 6-11 тактов

      Основная память – 4 Гслов, 12-55 тактов

      Внешняя память – к*Тслов, от 10 6 слов

      Буферные ЗУ:Их назначение состоит в сокращении времени передачи информации между процессором и более медленными уровнями памяти компьютера. Буферная память может устанавливаться на различных уровнях. Ранее такие буферные ЗУ в отечественной литературе называлисверхоперативными (СОЗУ), сейчас это название практически полностью вытеснил термин "кэш-память" или простокэш.

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

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

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

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

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

      Сверхоперативная память имеет более высокое быстродействие, чем основная оперативная память. В некоторых ЭВМ имеется также промежуточная или буферная память, используемая в качестве хранилища числового материала, который по мере необходимости поступает в оперативную память. [2]

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

      Сверхоперативная память рассчитана на 4 пятнадцатиразрядных числа с временем обращения 3 мксек. [4]

      Сверхоперативная память позволяет осуществлять одновременное выполнение арифметических операций и обмен информацией. [5]

      Сверхоперативная память содержит обычно небольшое число слов, имеет малое время доступа и часто входит непосредственно в состав арифметических устройств, где используется для хранения промежуточных данных с небольшим временем жизни. Реализация памяти такого типа в 564 серии осуществляется на ИС 564ИР11 и 564ИР12, каждая из которых обеспечивает одновременное и независимое считывание двух слов. [6]

      Сверхоперативная память ( общего назначения) строится на регистрах и по логике своей работы относится к обрабатывающему ( арифметическому) устройству машины. Эта память в ряде случаев позволяет сокращать время обмена информацией с оперативной памятью. [7]

      Сверхоперативной памяти ( СОП) присущи небольшая емкость и высокое быстродействие. Появление СОП вызвано тем, что в среднем к десяти процентам ячеек памяти наиболее часто обращаются в процессе работы. [8]

      Сверхоперативной памятью называют оперативную память, время обращения к которой незначительно по сравнению с временем выполнения операций. [9]

      Если сверхоперативная память используется не только для хранения результатов вычислений, но и операндов, то она соединяется с регистрами АУ и ОЗУ. Порядок обращения к ячейкам СОЗУ определяется командами программы. [11]

      Существует еще сверхоперативная память для временного хранения промежуточных результатов, которые вскоре могут понадобиться. Она представляет собой набор электронных ячеек памяти - регистров. Именно поэтому такую память часто называют регистровой. Сам по себе регистр - это последовательность триггеров, на каждом из которых запоминается один бит информации. Изготовляются регистры из быстродействующих элементов, что обеспечивает сверхоперативность запоминания и извлечения информации. Регистровый способ хранения данных широко применяется в каждом компьютере. Это связано не столько с производительностью, сколько с необходимостью иметь промежуточный буфер хранения информации при передаче от одного узла компьютера к другому. [12]

      Регистровая или сверхоперативная память . [13]

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

      В режиме сверхоперативной памяти с организацией четыре регистра по десять разрядов микросхема MAP рассматривается как четыре байтовых регистра, имеющих по два тетрадных контрольных разряда. [15]

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

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

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

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

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

      Видеопамять. Еще один вид памяти в компьютерах это видеопамять, то есть память, используемая для хранения изображения, выводимого на экран монитора. Эта память обычно входит в состав видеоконтроллера — электронной схемы, управляющей выводом изображения на экран.

      Кроме оперативной памяти существует ещё и постоянная память (ПЗУ). Её главное отличие от ОЗУ -невозможность в процессе работы изменить состояние ячеек ПЗУ.В свою очередь и эта память делится на постоянную и репрограммируемую.

      • приёминформации из других устройств;
      • запоминаниеинформации;

      выдача информации по запросу в другие устройства машины.

      Память компьютера делится на внешнюю (основную) и внутреннюю.

      К внутренней памяти относятся:

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

      2. Регистры — это сверхскоростная память процессора. Они сохраняют адрес команды, саму команду, данные для её выполнения и результат.

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

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

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

      Основными характеристиками внешней памяти являются её объем, скорость обмена информацией, способ и время доступа к данным.

      К внешней памяти принадлежат также накопители на гибких дисках (дискетах). Наиболее распространёнными являются дискеты диаметром 3,5дюйма

      1. Состави структура системного блока компьютера
      2. Основныефакторы, влияющие на производительность компьютера
      3. Запоминающиеустройства компьютера — ОЗУ и ПЗУ
      4. Основныетехнические характеристики компьютера
      5. Процессоры,типы и основные характеристики

      Статьи к прочтению:

      Устройства хранения данных


      Похожие статьи:

      Содержание Введение. 3 1. Устройства, входящие в состав персонального компьютера. 4 1.1 Память персонального компьютера. 4 1.2 Системные устройства. 7…

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

      Читайте также: