Сдам Сам

ПОЛЕЗНОЕ


КАТЕГОРИИ







Тема 2.2. Организация памяти вычислительных машин





В результате изучения данной темы Вы будете:

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

Конфигурация памяти компьютера в основном определяется тремя пара­метрами: объемом, быстродействием, стоимостью.

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

Очевидно, можно найти некоторый компромисс между перечисленными харак­теристиками памяти. На любом этапе развития технологий производства запоми­нающих устройств действуют следующие, достаточно устойчивые, соотношения:

  • чем меньше время доступа, тем дороже каждый бит;
  • чем выше емкость, тем ниже стоимость бита;
  • чем выше емкость, тем больше время доступа.

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

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

1. снижается стоимость бита;

2. возрастает емкость памяти;

3. возрастает время доступа к памяти;

4. снижается частота обращений процессора к памяти.

Рис. 2.3. Иерархия запоминающих устройств

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

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

Адреса основной памяти

Память состоит изячеек, каждая из которых может хранить некоторую порцию информации. Каждая ячейка имеет номер, который называетсяадресом. По адре­су программы могут ссылаться на определенную ячейку. Если память содержит n ячеек, они будут иметь адреса от 0 до n-1. Все ячейки памяти содержат одинако­вое число битов. Если ячейка состоит из k битов, она может содержать любую из 2k комбинаций. На Рис. 2.4 показаны 3 различных способа организации 96-битной памяти. Отметим, что соседние ячейки по определению имеют последовательные адреса.

Рис. 2.4. Три способа организации 96-битной памяти

Ячейка – минимальная единица, к которой можно обращаться. В последние годы практически все производители выпускают компьютеры с 8-битными ячей­ками, которые называютсябайтами. Байты группируются вслова. Компьютер с 32-битными словами имеет 4 байта на каждое слово, а компьютер с 64-битными словами – 8 байтов на каждое слово. Такая единица, как слово, необходима, по­скольку большинство команд производят операции над целыми словами (напри­мер, складывают два слова). Таким образом, 32-битная машина будет содержать 32-битные регистры и команды для манипуляций с 32-битными словами, тогда как 64-битная машина будет иметь 64-битные регистры и команды для перемеще­ния, сложения, вычитания и других операций над 64-битными словами.

Упорядочение байтов

Байты в слове могут нумероваться слева направо или справа налево. На Рис. 2.5, а) изображена часть памяти 32-битного компьютера, в котором байты пронумерованы слева на­право (как у компьютеров SPARC или больших IBM). Рис. 2.5, б) показывает аналогичную репрезентацию 32-битного компьютера с нумерацией байтов справа налево (как у компьютеров Intel).

Рис. 2.5. Память с нумерацией байтов слева направо (а); память с нумерацией байтов справа налево (б)

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

Кэш-память

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

Рис. 2.6. Кэш и основная память

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

На Рис. 2.7 показана структура основной памяти и кэша. Основная па­мять состоитиз 2n адресуемых слов, каждое из которых характеризуется своим уникальным n-битовым адресом. Предполагается, что вся память со­стоитиз определенного количества блоков фиксированной длины, в каждый из которых входит К слов. Таким образом, всего имеется М=2n / К блоков. Кэш состоит из С слотов, по К слов в каждом. При этом количество слотов намного меньше количества блоков. Некоторое подмножество блоков основной памяти хранится в слотах кэша. Если нужно прочесть из памяти слово, находящееся в определенном блоке, которого нет в кэше, то этот блок передается в один из слотов кэша. Из-за того, что блоков больше, чем слотов, нельзя за­крепить за каждым блоком свой слот. Поэтому каждый слот должен содер­жать дескриптор (числовой код), идентифицирующий хранящийся в нем блок. В роли дескриптора обычно выступает число, состоящее из старших битов адреса, и по нему происходит обращение ко всем адресам, которые начинаются этой по­следовательностью битов.

Рис. 2.7. Структура кэша (а) и основной памяти (б)

Рассмотрим простой пример, в котором адреса состоят из шести битов, а де­скрипторы – из двух. Дескриптор 01 указывает на то, что в слоте находится блок, в который входят адреса 010000(2)… 011111(2).

Подведем итоги

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

Вопросы для самоконтроля

1. Что такое основная память?

2. Что такое адрес ячейки памяти?

3. Как Вы думаете, каким ОЗУ является кэш-память – статической или динамической? Объясните почему.

4. Адреса компьютера состоят из 8 бит, а де­скрипторы кэш-памяти – из 3. Какая длина блока кэш-памяти?

5. Что такое вспомогательная память?

6. Объясните принципы организации запоминающих устройств. Приведите пример такой организации.








Что способствует осуществлению желаний? Стопроцентная, непоколебимая уверенность в своем...

Что делает отдел по эксплуатации и сопровождению ИС? Отвечает за сохранность данных (расписания копирования, копирование и пр.)...

ЧТО ТАКОЕ УВЕРЕННОЕ ПОВЕДЕНИЕ В МЕЖЛИЧНОСТНЫХ ОТНОШЕНИЯХ? Исторически существует три основных модели различий, существующих между...

ЧТО ПРОИСХОДИТ ВО ВЗРОСЛОЙ ЖИЗНИ? Если вы все еще «неправильно» связаны с матерью, вы избегаете отделения и независимого взрослого существования...





Не нашли то, что искали? Воспользуйтесь поиском гугл на сайте:


©2015- 2024 zdamsam.ru Размещенные материалы защищены законодательством РФ.