Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Организация памяти




Подсистема памяти

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

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

Рис.2.2.1 Иерархическая структура памяти

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

Кэш-память. Поскольку основная память реализуется на сравнительно медленных ОЗУ, обращение к ней приводит к тактам ожидания. Поэтому между ОЗУ и процессором стали устанавливать небольшой по объему, но высокоскоростной буфер, называемый кэш-памятью. Отличительная особенность кэш, что она не добавляет адресуемой памяти для процессора. В кэш хранятся копии блоков информации, вероятность обращения к которым в настоящее время высока. Кэш не может хранить копию всей оперативной памяти, так как имеет небольшой объем, он хранит ограниченное количество блоков информации и каталог – список текущего соответствия областям основной памяти. Кэш-память обычно разделяют на встроенную в процессор внутреннюю кэш (L1) и внешнюю кэш (L2). Структура кэш-памяти показана на рис.2.2.2.

Рис.2.2.2. Структура кэш-памяти.

Запоминающим элементом кэш-памяти является триггер, т.е. кэш-память строится на микросхемах статического ОЗУ.

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

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

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

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

характеристики Значение
Размер блока 4 – 128 байт
Время попадания 1 – 4 такта
Потери при промахе 8 – 32 такта
Время доступа 6 – 10 тактов
Время пересылки 2 – 22 такта
Доля промахов 1 – 20%
Размер кэш-памяти 4 Кбайт – 16 Мбайт

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

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

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

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

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

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

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

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

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

 




Поделиться с друзьями:


Дата добавления: 2014-12-16; Просмотров: 2748; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.012 сек.