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

Обновлено: 07.07.2024

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

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

Содержание статьи

Что такое кэш-память процессора

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

Все упомянутые операции производятся на очень высокой скорости. Однако, даже самая быстрая оперативная память работает медленнее любого "неторопливого" процессора. Каждое считывание из нее информации и обратная ее запись отнимают много времени. В среднем, скорость работы оперативной памяти в 16 – 17 раз ниже скорости процессора.

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

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

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

Устройство кэш-памяти процессора

Система кэш-памяти процессора состоит из двух блоков - контроллера кэш-памяти и собственно самой кэш-памяти.

Контроллер кэш памяти

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

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

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

Задача контроллера – сделать так, чтобы кэш-промахи происходили как можно реже, а в идеале – чтобы их не было вообще.

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

• размером и структурой кэш-памяти (чем больше ресурсов имеет в своем распоряжении контроллер, тем ниже вероятность кэш-промаха);

• эффективностью алгоритмов, по которым контроллер определяет, какая именно информация понадобится процессору в следующий момент времени;

• сложностью и количеством задач, одновременно решаемых процессором. Чем сложнее задачи и чем их больше, тем чаще "ошибается" контроллер.

Кэш-память процессора

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



Впервые кэш размером 8 KB был встроен в процессор Intel i486 в 1989 г.

Однако, эта скорость зависит также от объема конкретной микросхемы. Чем значительней объем микросхемы, тем сложнее обеспечить высокую скорость ее работы.

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

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

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

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

• Кэш-память третьего уровня (L3) – еще более объемная, но и более медленная схема памяти. Тем не менее, она значительно быстрее оперативной памяти. Ее размер может достигать нескольких десятков мегабайт. В отличие от L1 и L2, она является общей для всех ядер процессора.

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

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

Влияние кэш-памяти процессора на быстродействие компьютера

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

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

Указанные показатели касаются простых задач. С повышением нагрузки на процессор число кэш-промахов увеличивается.

Эффективность кэш-памяти процессора сводит к минимуму влияние скорости оперативной памяти на быстродействие компьютера. Например, компьютер одинаково хорошо будет работать с оперативной памятью 1066 МГц и 2400 МГц. При прочих равных условиях разница производительности в большинстве приложений не превысит 5%.

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

Какая структура кэш-памяти лучше: двух- или трехуровневая?

Трехуровневая кэш-память более эффективна.

Чтобы определить, как сильно L3 влияет на работу процессора, сайтом Tom’s Hardware был проведен эксперимент. Заключался он в замере производительности процессоров Athlon II X4 и Phenom II X4. Оба процессора оснащены одинаковыми ядрами. Первый отличается от второго лишь отсутствием кэш-памяти L3 и более низкой тактовой частотой.

Приведя частоты обеих процессоров к одинаковому показателю, было установлено, что наличие кэш-памяти L3 повышает производительность процессора Phenom на 5,8 %. Но это средний показатель. В одних приложениях он был почти равен нулю (офисные программы), в других – достигал 8% и даже больше (компьютерные 3D игры, архиваторы и др.).

Как влияет размер кэша на производительность процессора?

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

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

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



Объем внутренней кэш-памяти некоторых моделей серверных процессоров Intel Xeon
составляет 37,5 MB

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

Эффект от большого кэша наиболее ощутим при использовании архиваторов, в 3D играх, во время кодирования видео. В "не тяжелых" же приложениях разница стремится к нулю (офисные программы, интернет-серфинг, работа с фотографиями, прослушивание музыки и др.).

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

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

Как узнать размер кэш-памяти процессора?


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

Программа не требует установки. После ее запуска нужно перейти на вкладку "Caches" (см. изображение).

На примере видно, что проверяемый процессор оснащен трехуровневой кэш-памятью. Размер кэша L3 у него составляет 3 MB, L2 – 512 KB (256x2), L1 – 128 KB (32x2+32x2).

Можно ли как-то увеличить кэш-память процессора?

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

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

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

Что такое оперативная память?

Аббревиатура RAM расшифровывается как Random-Access Memory, что на русский можно перевести как память в свободном доступе. Чаще всего оперативная память выглядит как зеленая планка с элементами на поверхности. Тем не менее сейчас чаще всего производители настольных компьютеров стали создавать более закрытые структуры, которые должны влиять на улучшение производительности или рассеивание тепла.

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

Что такое оперативная память?

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

Как выглядело начало ОЗУ?

Первая оперативная память - это трубка Уильямса, которая была представлена в 1947 году. Только через год программа была в состоянии работать на ней.

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

Современные планки начали свою карьеру как одиночные транзисторы.

Каким образом емкость оперативной памяти изменилась с течением времени?

В 1980 году компьютеры имели 8 КБ памяти, в 1986 году это было уже 128 КБ. Затем разработка прошла очень быстро, в 1992 году уже было 2 МБ памяти. В 2000 году 32 МБ. В настоящее время минимум составляет 4 ГБ, в среднем на компьютерах установлено 8 ГБ ОЗУ, а игроки или люди, использующие для работы компьютерное оборудование, часто имеют до 256 ГБ памяти.

Интересен факт, что компьютер миссии Apollo имел 4 КБ ОЗУ. Для сравнения, в настоящее время имеется финансовый калькулятор HP с той же оперативной памятью. Суперкомпьютер Cray-1, работающий в 1976 году, имел 8 МБ ОЗУ. Другой суперкомпьютер Sunway TaihuLight, введенный в эксплуатацию в 2016 году, имел только 1 406 140 416 МБ ОЗУ (1,31 PB).

Зачем пишут о DDR рядом с ОЗУ?

DDR, или, скорее, DDR SDRAM, является термином для современных планок памяти. Следующие поколения появляются со следующим номером, и поэтому у нас в настоящее время есть DDR2, DDR3, DDR4 и DDR5 на рынке. DDR позволяет увеличить скорость передачи данных по отношению к планкам, у которых его нет. Память выбранного поколения соответствуют только материнским платам, которые их поддерживают. Соответственно, чем выше число с DDR, тем лучше. Однако, следует помнить, что при покупке, надо убедиться, что память соответствует конфигурации.

Мне не хватает ОЗУ, что делать?

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

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

Не стоит забывать и о том, что каждая материнская плата имеет сой придел поддержки объема оперативной памяти. И хотя на них будет установлено 32 ГБ, в системе будет отображаться только 16. То же самое относится к более старым операционным системам. Кроме того, 32-разрядные системы Windows имеют ограничение в 4 ГБ ОЗУ. Это также относится к Windows 10 с 32 битной системой в любой сборке!

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

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

Прежде чем начать путешествие в прошлое, давайте разберемся в обозначенной выше классификации и поймем, для чего нужен каждый из типов памяти. Компьютер представляет информацию в виде последовательности бит — двоичных цифр со значениями 1 или 0. Общепринятой универсальной единицей информации считают байт, как правило, состоящий из 8 бит. Все используемые компьютером данные занимают некоторое количество байт. К примеру, типичный музыкальный файл занимает 40 миллионов бит — 5 миллионов байт (или 4,8 мегабайта). Центральный процессор не сможет функционировать без элементарного запоминающего устройства, ведь вся его работа сводится к получению, обработке и записи обратно в память. Именно поэтому легендарный Джон фон Нейман (мы не раз упоминали его имя в цикле статей про мейнфреймы) придумал размещать внутри компьютера независимую структуру, где хранились бы все необходимые данные.

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

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

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

Компьютер Bendix G15 с барабанной памятью. Оператор в костюме прилагается.

Одним из основных компонентов первых компьютеров были электромагнитные переключатели, разработанные известным американским ученым Джозефом Хенри еще в 1835 году, когда ни о каких компьютерах никто даже не помышлял. Простой механизм состоял из обмотанного проводом металлического сердечника, подвижной железной арматуры и нескольких контактов. Разработка Хенри легла в основу электрического телеграфа Сэмюеля Морзе и Чарльза Витстоуна.

Первый компьютер, построенный на переключателях, появился в Германии в 1939 году. Инженер Конрад Зюс использовал их при создании системной логики устройства Z2. К сожалению, прожила машина недолго, а ее планы и фотографии были утеряны во время бомбардировок Второй мировой войны. Следующее вычислительное устройство Зюса (под именем Z3) увидело свет в 1941 году. Это был первый компьютер, управляемый программой. Основные функции машины реализовывались при помощи 2000 переключателей. Конрад собирался перевести систему на более современные компоненты, но правительство прикрыло финансирование, посчитав, что идеи Зюса не имеют будущего. Как и ее предшественница, Z3 была уничтожена во время бомбардировок союзников.

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

Линии задержки разработал американский инженер Джон Преспер Экерт. Компьютер EDVAC, представленный в 1946 году, содержал два блока памяти по 64 линии задержки на основе ртути (5,5 Кб по современным меркам). На тот момент этого было более чем достаточно для работы. Вторичная память также присутствовала в EDVAC — результаты вычислений записывались на магнитную пленку. Другая система, UNIVAC 1, увидевшая свет в 1951 году, использовала 100 блоков на основе линий задержки, а для сохранения данных у нее была сложная конструкция со множеством физических элементов.

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

За кадром нашего исследования осталось два довольно значимых изобретения в области носителей данных. Оба сделал талантливый сотрудник Bell Labs Эндрю Бобек. Первая разработка — так называемая твисторная память — могла стать прекрасной альтернативой памяти на основе магнитных сердечников. Она во многом повторяла последнюю, но вместо ферритовых колец для хранения данных использовала магнитную пленку. У технологии были два важных преимущества. Во-первых, твисторная память могла одновременно записывать и считывать информацию с целого ряда твисторов. Плюс к этому, было легко наладить ее автоматическое производство. Руководство Bell Labs надеялось, что это позволит существенно снизить цену твисторной памяти и занять перспективный рынок. Разработку финансировали ВВС США, а память должна была стать важной функциональной ячейкой ракет Nike Sentinel. К сожалению, работа над твисторами затянулась, а на первый план вышла память на основе транзисторов. Захват рынка не состоялся.

«Не повезло в первый раз, так повезет во второй»,— подумали в Bell Labs. В начале 70-х годов Эндрю Бобек представил энергонезависимую пузырьковую память. В ее основе лежала тонкая магнитная пленка, которая удерживала небольшие намагниченные области (пузырьки), хранящие двоичные значения. Спустя какое-то время появилась первая компактная ячейка емкостью 4096 бит — устройство размером один квадратный сантиметр обладало емкостью целой планки с магнитными сердечниками.

Изобретением заинтересовались многие компании, и в середине 70-х разработками в области пузырьковой памяти занялись все крупные игроки рынка. Энергонезависимая структура делала пузырьки идеальной заменой как первичной, так и вторичной памяти. Но и тут планам Bell Labs не удалось сбыться — дешевые винчестеры и транзисторная память перекрыли кислород пузырьковой технологии.

Вакуум — наше все

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

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

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

Первичная память на основе этой технологии появилась в 1946-1947 годы, когда изобретатели Фредди Вильямс и Том Килберн представили трубку Вильямса — Килберна. Метод сохранения данных был весьма остроумным. На трубке при определенных условиях появлялась световая точка, которая слегка заряжала занимаемую поверхность. Зона вокруг точки приобретала отрицательный заряд (ее называли «энергетическим колодцем»). В «колодец» можно было поместить новую точку или оставить его без внимания — тогда первоначальная точка быстро исчезала. Эти превращения истолковывались контроллером памяти как двоичные фазы 1 и 0. Технология была очень популярна. Память на трубках Вильямса — Килберна устанавливали в компьютеры Ferranti Mark 1, IAS, UNIVAC 1103, IBM 701, IBM 702 и Standards Western Automatic Computer (SWAC).

Параллельно свою трубку, именуемую селектрон, разрабатывали инженеры из компании Radio Corporation of America под управлением ученого Владимира Зворыкина. По задумке авторов селектрон должен был вмещать до 4096 бит информации, что в четыре раза больше, чем у трубки Вильямса — Килберна. Предполагалось, что к концу 1946 года будет произведено около 200 селектронов, но производство оказалось очень дорогим.

Наравне с вакуумными трубками в некоторых компьютерах того времени использовалась барабанная память, изобретенная Густавом Таусчеком в 1939 году. Простая конструкция включала большой металлический цилиндр, покрытый сплавом из ферромагнетика. Считывающие головки, в отличие от современных винчестеров, не перемещались по поверхности цилиндра. Контроллер памяти ждал, пока информация самостоятельно пройдет под головками. Барабанная память использовалась в компьютере Атанасова — Берри и некоторых других системах. К сожалению, ее производительность была очень низкой.

Селектрону не было суждено завоевать рынок вычислительных машин — опрятные на вид электронные компоненты так и остались пылиться на свалке истории. И это несмотря на выдающиеся технические характеристики.

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

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

Правда, здесь кроется один подвох. Производительности существующих чипов DDR2 достаточно для большинства компьютерных приложений (сложные научные программы не в счет). Установка модулей DDR3, работающих на частоте 1066 МГц и выше, не ведет к ощутимому приросту скорости.

Звездный путь в будущее

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

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

Потом наступило время массивов с близко расположенными ферритовыми кольцами — изобретение американских физиков Эн Вэнг и Вэй-Донг Ву, доработанное студентами под управлением Джея Форрестера из Массачусетского технологического университета (MIT). Через центры колец под углом 45 градусов проходили соединительные провода (по четыре на каждое кольцо в ранних системах, по два в более совершенных). Под напряжением провода намагничивали ферритовые кольца, каждое из которых могло сохранить один бит данных (намагничено — 1, размагничено — 0).

Джей Форрестер разработал систему, при которой управляющие сигналы для многочисленных сердечников шли всего по нескольким проводам. В 1951 году вышла память на основе магнитных сердечников (прямой аналог современной оперативной памяти). В дальнейшем она заняла достойное место во многих компьютерах, включая первые поколения мейнфреймов компаний DEC и IBM. По сравнению с предшественниками у нового типа памяти практически отсутствовали недостатки. Ее надежности хватало для функционирования в военных и даже космических аппаратах. После крушения шаттла «Челленджер», которое привело к смерти семи членов его экипажа, данные бортового компьютера, записанные в памяти с магнитными сердечниками, остались в полной целости и сохранности.

Технологию постепенно совершенствовали. Ферритовые кольца уменьшались в размерах, скорость работы росла. Первые образцы функционировали на частоте порядка 1 МГц, время доступа составляло 60 000 нс — к середине 70-х годов оно сократилось до 600 нс.

Дорогая, я уменьшил нашу память

Производители памяти в наше время больше заботятся о внешнем виде своих продуктов — все равно стандарты и характеристики заранее определены в комиссиях вроде JEDEC.

Следующий скачок в развитии компьютерной памяти произошел, когда были придуманы интегральные микросхемы и транзисторы. Индустрия пошла по пути миниатюризации компонентов с одновременным повышением их производительности. В начале 1970-х полупроводниковая промышленность освоила выпуск микросхем высокой степени интеграции — на сравнительно малой площади теперь умещались десятки тысяч транзисторов. Появились микросхемы памяти емкостью 1 Кбит (1024 бит), небольшие чипы для калькуляторов и даже первые микропроцессоры. Случилась самая настоящая революция.

Особый вклад в развитие первичной памяти внес доктор Роберт Деннард, сотрудник компании IBM. Он разработал первый чип на транзисторе и небольшом конденсаторе. В 1970 году рынок подстегнула компания Intel (которая появилась всего двумя годами раньше), представив чип памяти i1103 емкостью 1 Кбит. Спустя два года этот продукт стал самым продаваемым полупроводниковым чипом памяти в мире.

Во времена первых Apple Macintosh блок оперативной памяти занимал огромную планку (на фото сверху), тогда как объем не превышал 64 Кб.

Микросхемы высокой степени интеграции быстро вытеснили старые типы памяти. С переходом на следующий уровень развития громоздкие мейнфреймы уступили место настольным компьютерам. Основная память в то время окончательно отделилась от вторичной, оформилась в виде отдельных микрочипов емкостью 64, 128, 256, 512 Кбит и даже 1 Мбит.

Наконец, микросхемы первичной памяти переехали с материнских плат на отдельные планки, это сильно облегчило установку и замену неисправных компонентов. Частоты начали расти, время доступа уменьшаться. Первые синхронные динамические чипы SDRAM появились в 1993 году, их представила компания Samsung. Новые микросхемы работали на частоте 100 МГц, время доступа равнялось 10 нс.

С этого момента началось победоносное шествие SDRAM, а к 2000 году этот тип памяти вытеснил всех конкурентов. Определением стандартов на рынке оперативки занялась комиссия JEDEC (Joint Electron Device Engineering Council). Ее участники сформировали спецификации, единые для всех производителей, утвердили частотные и электрические характеристики.

Дальнейшая эволюция не так интересна. Единственное значимое событие произошло в 2000 году, когда на рынке появилась оперативная память стандарта DDR SDRAM. Она обеспечила удвоенную (по сравнению с обычной SDRAM) пропускную способность и создала задел для будущего роста. Вслед за DDR в 2004 году появился стандарт DDR2, который до сих пор пользуется наибольшей популярностью.

В современном IT-мире фразой Patent Troll (патентный тролль) называют фирмы, которые зарабатывают деньги на судебных исках. Они мотивируют это тем, что другие компании нарушили их авторские права. Целиком и полностью под это определение попадает разработчик памяти Rambus.

С момента основания в 1990 году Rambus занималась лицензированием своих технологий сторонним компаниям. К примеру, ее контроллеры и микросхемы памяти можно найти в приставках Nintendo 64 и PlayStation 2. Звездный час Rambus настал в 1996 году, когда Intel заключила с ней соглашение на использование в своих продуктах памяти RDRAM и разъемов RIMM.

Сначала все шло по плану. Intel получила в свое распоряжение продвинутую технологию, а Rambus довольствовалась партнерством с одним из крупнейших игроков IT-индустрии. К сожалению, высокая цена модулей RDRAM и чипсетов Intel поставили крест на популярности платформы. Ведущие производители материнских плат использовали чипсеты VIA и платы с разъемами под обычную SDRAM.

Rambus поняла, что на этом этапе она проиграла рынок памяти, и начала свои затяжные игры с патентами. Первым делом ей под руку попалась свежая разработка JEDEC — память стандарта DDR SDRAM. Rambus накинулась на нее, обвинив создателей в нарушении авторских прав. В течение некоторого времени компания получала денежные отчисления, однако уже следующее судебное разбирательство с участием Infineon, Micron и Hynix расставило все по своим местам. Суд признал, что технологические наработки в области DDR SDRAM и SDRAM не принадлежат Rambus.

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

Сегодня мы поговорим о том месте, которое занимает в вашем цифровом устройстве каждый вид памяти. Та память, которую мы сегодня рассмотрим, именуется компьютерной, хотя и применяется не только в ПК, но и в других цифровых устройствах. Речь идет в том числе и о мобильных девайсах: смартфонах и планшетах, которые являются компьютерами по сути. Память служит для хранения данных и бывает нескольких типов. Некоторые типы памяти взаимозаменяемы. Другие же служат для выполнения совершенно различных задач. Проиллюстрируем написанное простым примером. И оперативная память и кеш процессора и флеш-карта вашего смартфона являются компьютерной памятью, хотя на первый взгляд между ними не так уж много общего. О системе памяти новой игровой консоли Xbox One мы недавно рассказывали довольно подробно. И хотя перед нами игровая консоль, ее память в полной мере компьютерная.

Компьютерная память

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

Компьютерная память


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

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

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

  • Оперативная память. Оперативное запоминающее устройство. ОЗУ, RAM
  • Постоянная память. Постоянное запоминающее устройство. ПЗУ, ROM
  • Кеш-память, Cache
  • Динамическая оперативная память. Dynamic RAM, DRAM
  • Статическая оперативная память. Static RAM, SRAM
  • Флеш-память, Flash memory
  • Память типа Memory Sticks в виде карт памяти для цифровых фотоаппаратов
  • Виртуальная память, Virtual memory
  • Видеопамять, Video memory
  • Базовая система ввода-вывода, БСВВ, BIOS

Как мы уже писали, память применяется не только в компьютерах, но и в иных цифровых устройствах. Тех «компьютероподобных» устройствах, которые для удобства изложения материала мы будем считать компьютерами, не отвлекаясь на постоянные обсуждения различий между ними. В частности, планшеты многие аналитики относят к компьютерам. Речь идет в том числе и о:

  • Сотовых телефонах
  • Смартфонах
  • Планшетах
  • Игровых консолях
  • Автомобильных радиоприемниках
  • Цифровых медиаплеерах
  • Телевизорах

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

Иерархическая пирамида компьютерной памяти

Иерархическая пирамида компьютерной памяти


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

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

Вершиной пирамиды является регистр процессора.
За ним следует кеш-память первого (L1)
и второго уровня (L2)
Оперативная память делится на:
физическую и виртуальную
И кеш, и оперативная память являются временными хранилищами информации
Далее идут постоянные хранилища информации:
ПЗУ/BIOS; съемные диски; удаленные накопители (в локальной сети); жесткий диск
Подножие пирамиды образуют устройства ввода, к которым относятся:
клавиатура; мышь; подключаемые медиаустройства; сканер/камера/микрофон/видео; удаленные источники; другие источники

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

Роль оперативной памяти в общем «оркестре» компонентов компьютера

Компьютерная память


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

Вы включили компьютер. Он, в свою очередь, загрузил данные из постоянной памяти (ROM) и начал самотестирование при включении (power-on self-test, POST). Компьютер проверяет сам себя и определяет, исправен ли он и готов ли к новому трудовому сеансу. Целью этого этапа работы является проверка того, что все основные компоненты системы работают корректно. В ходе самотестирования контроллер памяти посредством быстрой операции чтения/записи проверяет все ячейки памяти на наличие или отсутствие ошибок. Процесс проверки выглядит так: бит информации записывается в память по определенному адресу, а затем считывается оттуда.

Компьютер загружает из ПЗУ базовую систему ввода-вывода, более известную по английской аббревиатуре BIOS. В этом «биосе» содержится базовая информация о накопителях, порядке загрузки, безопасности, автоматическом распознавании устройств (Plug and Play) и некоторые иные сведения.

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

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

Что происходит, когда вы сохраняете файл и закрываете приложение? Файл записывается на жесткий диск, а приложение «выталкивается» из оперативной памяти. То есть и само приложение, и связанные с ним файлы удаляются из оперативной памяти. Тем самым освобождается место для новой информации: других приложений и файлов. Если измененный файл не был сохранен перед удалением из временного хранилища, все изменения будут потеряны.

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

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


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

Содержание

Функции памяти

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

Физические основы функционирования

В основе работы запоминающего устройства может лежать любой физический эффект, обеспечивающий приведение системы к двум или более устойчивым состояниям. В современной компьютерной технике часто используются физические свойства полупроводников, когда прохождение тока через полупроводник или его отсутствие трактуются как наличие логических сигналов 0 или 1. Устойчивые состояния, определяемые направлением намагниченности, позволяют использовать для хранения данных разнообразные магнитные материалы. Наличие или отсутствие заряда в конденсаторе также может быть положено в основу системы хранения. Отражение или рассеяние света от поверхности CD, DVD или Blu-ray-диска также позволяет хранить информацию.

Классификация типов памяти

Доступные операции с данными

  • Память только для чтения (read-only memory, ROM)
  • Память для чтения/записи

Память на программируемых и перепрограммируемых ПЗУ (ППЗУ и ПППЗУ) не имеет общепринятого места в этой классификации. Её относят либо к подвиду памяти «только для чтения» [1] , либо выделяют в отдельный вид.

Энергозависимость

Метод доступа

Назначение

Организация адресного пространства

Удалённость и доступность для процессора

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

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