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

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

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

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

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

Опираясь на накопленные статистические сведения, иногда свойства локальности выражают в численной фор­ме в виде так называемого правила «90/10»: 90% времени работы программы связано с доступом к 10% адресного пространства этой программы.

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

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

Центральное место в иерархии памяти ВМ занимает основное ЗУ (основная или внутренняя память). С точки зрения структурной организации ВМ (см. подраздел 1.2) основное ЗУ является определяющим и минимально необходимым запоминающим устройством. Основное ЗУ включает в себя два типа устройств: оперативные за­поминающие устройства (ОЗУ) и постоянные запоминающие устройства (ПЗУ).

ОЗУ (или оперативная память) образует преимущественную долю основной памяти и называется опера­тивным, потому что используется для временного оперативного хранения информации (программ и данных) и оперативного обмена этой информацией с процессором, внешней памятью и периферийными подсистемами ВМ. В ОЗУ допускается как запись, так и считывание информации, причем обе операции выполняются однотипно, практически с одной и той же ско­ростью, и производятся с помощью электрических сигналов. Оперативная память в подавляющем большинстве практических случаев строится на базе микросхем динамической памяти DRAM. Хотя и предлагаются другие механизмы оперативного сохранения информации (например, микросхемы памяти типов MRAM и FeRRAM), ни одному из них пока не удалось даже приблизиться к тому соотношению емкости, стоимости и скорости работы, которое обеспечивают микросхемы на основе традиционного механизма DRAM. Известные и широко применяемые для других типов памяти быстродействующие микросхемы SRAM занимают относительно большую площадь и не позволяют получить недорогие микросхемы высокой емкости. Существующие менее дорогостоящие технологии не обеспечивают достаточного быстродействия, а недорогие и сравнительно быстрые технологии (например, флэш-память) пока имеют ограниченный для условий работы ОЗУ срок службы. То есть, элементарная ячейка DRAM до сих пор остается практически единственным вариантом фундамента, на котором строятся все массовые типы современной оперативной памяти.

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

ПЗУ строится на основе различных вариантов микросхем класса ROM и используется для энергонезависимого хранения постоянной или, по-другому, неизменной (точнее редко изменяемой) программной и справочной информации – комплекта программ базовой системы ввода/вывода (BIOS – Basic Input Output System), драйверов постоянно используемых устройств, программ тестирования аппаратных средств, таблиц знакогенераторов, стандартных справочных сообщений и т. п.

BIOS реализует следующие основные функции:

1) выполнение при включении компьютера так называемой проверки POST (Power On Self Test) – тестовой проверки всех важнейших компонентов системы;

1) запуск загрузчика операционной системы – Bootstrap Loader;

2) обслуживание аппаратных прерываний от системных устройств – BIOS Hardware Interrupts;

3) предоставление операционной системе аппаратных драйверов и осуществление сопряжения между системной платой и компонентами компьютера – ROM BIOS Services;

4) предоставление для настройки специальной программы установки параметров BIOS и аппаратной конфигурации компьютера – программы CMOS Setup.

В момент включения компьютера в его ОЗУ нет ни данных, ни программ, но процессору для работы нужны команды, в том числе и в первый момент времени после включения. Поэтому сразу после включения на его адресной шине выставляется стартовый адрес. Это происходит аппаратно, без участия программ (всегда одинаково). Этот исходный адрес указывает не ОЗУ (которое в момент включения компьютера является пустым), а область ПЗУ, где записан комплект программ BIOS. Из BIOS считываются команды, и начинается процесс запуска компьютера. Работа ряда стандартных устройств обслуживается программами (драйверами), входящими в BIOS, но такими средствами нельзя обеспечить работу со всеми возможными устройствами. Сведения о параметрах других внешних устройств, например, жестких и гибких дисках, а также сведения о конфигурации компьютера и ее изменениях записываются и хранятся в специальной области энергонезависимой памяти, называемой (традиционно по термину технологии изготовления) CMOS Memory. Она размещается в специальной микросхеме – контроллере. На этот контроллер непрерывно подается питание от специальной аккумуляторной батареи, расположенной на системной (материнской) плате, поэтому содержимое CMOS Memory сохраняется при выключении компьютера. Иногда такую память называют ППЗУ – «полупостоянное» ЗУ. От ПЗУ эта память отличается тем, что данные в нее можно записывать и изменять автоматически или самостоятельно с помощью программы CMOS Setup в соответствии с тем, какие аппаратные компоненты входят в состав данного компьютера. В микросхеме CMOS хранятся сведения о гибких и жестких дисках, о процессоре, о некоторых других устройствах материнской платы. Программы, записанные в BIOS, считывают данные о составе оборудования компьютера из микросхемы CMOS, после чего они могут выполнить обращение к жесткому (а при необходимости и к гибкому или оптическому диску) и передать управление тем программам, которые там записаны. Кроме сохранения установок CMOS Setup аккумуляторная батарея обеспечивает постоянный ход часов реального времени (Real Time Clock – RTC) и переключение даты.

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

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

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

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

Оптимальное распределение разных типов ЗУ по уровням иерархии памяти способствует существенному повышению производительности ВМ в целом.

 








Дата добавления: 2015-12-17; просмотров: 1776;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

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

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.005 сек.