Лекция 8. Организация основной памяти ЭВМ

План: 1. Назначение и структура памяти ЭВМ.

2. Принципы кэширования памяти.

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

Оперативная память (ОЗУ)или RAM(Random Access Memory) относится к одному из важнейших компонентов ЭВМ. От ее параметров в значительной степени зависят функциональные возможности всей системы. Она позволяет не только считывать хранящиеся в ней данные, но и записывать новые. В микросхемах оперативной памяти хранится информация, которая меняется в процессе работы ПК. RAM отличается высокой скоростью записи и чтения. При выключении ПК данные, хранящиеся в RAM, теряются. Объем оперативной памяти зависит от количества и типа используемых микросхем.

Характеристики оперативной памяти и особенности ее устройства являются важнейшим фактором, от которого зависит быстродействие компьютера. Даже при наличии «быстрого» процессора скорость выборки данных из памяти может оказаться невысокой, и именно эта невысокая скорость работы ОЗУ будет определять быстродействие ЭВМ. Время цикла работы с памятью tm особенно заметно больше чем время цикла работы центрального процессора tc. При обращении к ОЗУ, время обращения T=tm+tc, в период этого времени ни одно устройство не может работать. Таким образом, возникает проблема доступа к ОП.

Оперативная память выполнена обычно на микросхемах динамического типа с произвольной выборкой DRAM (Dynamic Random Access Memory). Каждый бит такой памяти представляется в виде наличия (или отсутствия) заряда на конденсаторе, образованном в структуре полупроводникового кристалла. В современных ПК DRAM используется обычно в качестве оперативной памяти общего назначения, а также как память видеоадаптера. Из применяемых типов динамической памяти наиболее известны: DRAM, FPM DRAM, EDO DRAM, BEDO DRAM, ED RAM, CD RAM, Synchronous DRAM, DDR SDRAM и SL RAM; видеопамять: MDRAM, VRAM, WRAM, SGRAM, RDRAM и др.

Другой, более дорогой тип памяти – статический. SRAM (Static RAM) в качестве элементарной ячейки использует так называемый статический триггер, схема которого состоит из нескольких транзисторов. Статический тип памяти обладает более высоким быстродействием. SRAM обычно применяется в качестве КЭШ-памяти второго уровня для кэширования основного объема ОЗУ. Такая память выполняется на основе ТТП, КМОП или БиКМОП – микросхем. По способу доступа к данным может быть как асинхронной, так и синхронной.

Асинхронным называется доступ к данным, который можно осуществлять в произвольный момент времени. SRAM данного типа применялась на материнских платах третьего ¸ пятого поколения процессоров. Время доступа к ячейкам такой памяти составляло от 15нс (33МГц) до 8нс (66МГц).

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

Для асинхронной SRAM чтение одного слова выполняется за три такта, запись за четыре такта. Чтение нескольких слов определяется последовательностью: 3 – 2 – 2 – 2, а запись: 4 – 3 – 3 – 3.

Синхронная SRAM обеспечивает доступ к данным не в произвольные моменты времени, а синхронно с тактовыми импульсами. В промежутках между ними память может готовить для доступа следующую порцию данных. В большинстве материнских плат пятого поколения используется разновидность синхронной памяти – синхронно-конвейерная SRAM (Pipelined- Burst SRAM). Для которой типичное время одной операции чтения/записи составляет три такта, а групповая операция занимает 3 – 1 – 1 – 1 такта при первом обращении и 1 – 1 – 1 – 1 при последующих обращениях, что обеспечивает ускорение доступа более чем на 30%.

Логическое распределение оперативной памяти определяется при­меняемой операционной системой и особенностями аппаратной реализа­ции IBM-совместимых PC. Знание строения ОЗУ необходимо для программ­ной оптимизации системы.

Можно выделить пять важнейших логических областей оперативной памяти:

· Стандартная оперативная память (Conventional Memory);

· ЕМS-память (Expanded Memory Specification) – дополнительная память;

· UMA (Upper Memory Area) – верхняя память;

· HMA (High Memory Area);

· XMS (Extended Memory Specification) – расширенная память

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

Стандартная память начинается от адреса 0000:0000 и про­должается до адреса А000:0000, занимая 640Кбайт. Этот верхний предел был установлен процес­сорами 8088 и 8086, которые имели 20-разрядную адресную шину и потому могли адресовать только 1 Мбайт памяти (220=l 048 576 байт). В пределах этой памяти выше уровня 640 Кбайт фирмой IBM были зарезер­вированы 384 Кбайт для выполнения внутренних функций.

В стандартной памяти размещены таблица векторов прерываний, область данных BIOS и операционная система.

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

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

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

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

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

Если быть совсем точным, данный вид памяти называется Mask-ROM (Масочные ПЗУ). ROM устроена в виде адресуемого массива ячеек (матрицы), каждая ячейка которого может кодировать единицу информации. Данные на ROM записывались во время производства путём нанесения по маске (отсюда и название) алюминиевых соединительных дорожек литографическим способом. Наличие или отсутствие в соответствующем месте такой дорожки кодировало "0" или "1". Mask-ROM отличается сложностью модификации содержимого (только путем изготовления новых микросхем), а также длительностью производственного цикла (4-8 недель). Поэтому, а также в связи с тем, что современное программное обеспечение зачастую имеет много недоработок и часто требует обновления, данный тип памяти не получил широкого распространения.

Преимущества данного вида памяти обусловливают:

1. Низкая стоимость готовой запрограммированной микросхемы (при больших объёмах производства).

2. Высокая скорость доступа к ячейке памяти.

3. Высокая надёжность готовой микросхемы и устойчивость к электромагнитным полям.

Недостатки:

1. Невозможность записывать и модифицировать данные после изготовления.

2. Сложный производственный цикл.

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

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

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

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

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

Кэширование памяти.Производительность ПК зависит не только от процессора. Большой потенциал производительности ПК связан с организацией и способом функционирования памя­ти. Важную роль при этом играет кэш-память. Она выполняет функцию буфера между процессором и оперативной памятью.

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

Среди буферных запоминающих устройств наибольший объем, и самое высокое значение занимает КЭШ-память. В современных ЭВМ КЭШ-память имеет неоднородную структуру. Различают КЭШ-память уровней L1 и L2. Уровень L1 - интегрирован в микросхему процессора, имеет объем ~ 10г Кбайт и высокое быстродействие. Кэш первого уровня работает на полной внутренней тактовой частоте процессора.Он встроен во все процессоры класса 486 и выше. Чтобы повысить производитель­ность, для данных и команд часто используется раздельный кэш (так называемая Гарвардская архитектура – противоположность Принстонской, использующей общую память для команд и данных).

Кэш уровня L2 – выпускается в отдельных корпусах (SRAM) и устанавливается на материнской плате (плате программной поддержки работы процессора). Такой кэш обычно работает на внешней тактовой частоте процессора. Для процессо­ров 486 и Pentium является внешним (устанавливается на системной плате), а у Р6 и Pentium 4 располагается в одной упаковке с ядром и подключается к специальной внутрен­ней шине процессора, благодаря чему обеспечивается работа на полной тактовой частоте процессора.

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

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

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

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

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

Архитектура современных 32-разрядных процессоров включает ряд средств кэши­рования памяти: два уровня кэша инструкций и данных (LI Cache и L2 Cache), буферы ассоциативной трансляции (TLB) блока страничной переадресации и буферы записи. Эти средства в разных вариациях (на кристалле, картридже про­цессора или на системной плате) представлены в системах с процессорами 486, Pentium, Р6 и Pentium 4.

Процессор Pentium III имеет L2-кэш объемом 256 Кбайт, который работает на тактовой частоте, равной тактовой частоте ядра. У процессора Pentium 4 L2-кэш имеет объем 256 Кбайт, работает на тактовой частота ядра, обмен данными с ядром процессора идет по 256-битной шине.

Кэш-контроллер должен обеспечивать когерентность (coherency) – согласован­ность данных кэш-памяти обоих уровней с данными в основной памяти при том условии, что обращение к этим данным может производиться не только процессо­ром, но и другими активными (bus master) адаптерами, подключенными к шинам (PCI, VLB, ISA и т. д.). Следует также учесть, что процессоров может быть несколь­ко, и у каждого может быть свой внутренний кэш.

Литература :

1.К. Хамахер, З. Вранешич, С. Захи. Организация ЭВМ. СПб.: Питер, 2003-848 с.

2. Э. Таненбаум. Архитектура компьютера.-СПб.:Питер, 2003-704с.

3. М. Гук. Аппаратные средства IBM PC.- CG,^Gbnth? 2002-928c.

Наши рекомендации