Память компьютера делится на 2 типа: основную и вспомогательную.
Основная – это память, к которой микропроцессор может непосредственно обратиться. Такую память называют оперативной (ОЗУ), потому что процессор может обратиться к ней в любой момент. Доступ к памяти получается через адресную шину, либо через порт ввода-вывода. Так как доступ реализуется к любому байту ОЗУ, то такая память называется памятью с прямым доступом – Random Access Memory (RAM). Память, требующая более значительных временных затрат, называется внешней. Она может в десятки и сотни раз превышать по объему внутреннюю память. Однако, чтобы данные из внешней памяти были обработаны микропроцессором, они должны быть занесены из внешней памяти в ОЗУ.
Хранение информации.Работа с памятью основывается на простой концепции. Память должна быть способна сохранить бит информации так,чтобы он мог быть потом извлечен оттуда. Динамическая память – устройство, базирующееся на способности сохранять электрический заряд – конденсаторы. Конденсатор способен сохранять заряд (свое состояние) несколько микросекунд -–время, за которое специальные схемы обеспечивают его подзарядку – обновление информации. Память, реализованная на таких принципах, называется динамической.
В современных компьютерах конденсаторы заменены специальными цепями проводников. Большое их количество объединяется в одном корпусе. Однако, как и в ообычных конденсаторах, информация такой микросхемы должна постоянно обновляться.
Статическая память.В отличие от динамической (удерживающей заряд) памяти статическая память позволяет потоку электронов циркулировать по цепи. Существуют только два направления движения. Это позволяет использовать данные цепи в качестве элементов памяти. Статическая память работает подобно механическому выключателю, имеющему два положения. Переключатель, управляемый электрическим током, известен как реле. Память первых компьютеров создавалась на основе электрических реле.
Транзисторы, удовлетворяющие всем требованиям переключателя, объединенные в единую цепь, исполняют роль чипов статической памяти. Статическая, как и динамическая память, нуждается в постоянном источнике питания, чтобы поддерживать ее состояние.
Постоянная память.Наиболее важная информация компьютера, как правило, не должна изменяться во времени. Для такой информации предназначена постоянная память, получившая название ROM, – память (Read Only Memory) или постоянное запоминающее устройство (ПЗУ). Компьютер не может изменять информацию в ПЗУ, а только читать ее. Такие микросхемы изготавливаются по специальной технологии, которая не только создает нужные цепи на керамическом кристалле, но и заносит в него нужную информацию.
Альтернативой непрограммируемых ПЗУ являются программируемые ПЗУ. Такой тип микросхемы содержит массивы элементов, программирование которых может выполняться после их изготовления специальным ПЗУ – программатором (ПЗУ – прожигается). Такой процесс называют прожиганием ПЗУ (технология взрыва элемента). Такие ПЗУ обеспечивают только одно программирование и не могут корректироваться.
Альтернативные стираемые ПЗУ (Erasable Programmable Read – Only Memory (EPROM)) позволяют стирать хранящуюся информацию и заносить в них новую при помощи ультрафиолетового луча, через специальное прозрачное окошко на корпусе.
Архитектура памяти.Память в PC имела достаточно простую структуру. Она была представлена одним блоком, в котором каждый байт был доступен по указанию его адреса. Микросхемы памяти разбивались на девять банков. Восемь микросхем выделяют по одному биту для организации каждого байта памяти, т.е. в каждом байте присутствовало по одному биту из различных микросхем с одним и тем же адресом. Девятая микросхема использовалась в качестве контрольного бита четкости. Этот бит всегда выставлялся таким образом, чтобы общее число бит в байте было нечетным.
Время обращения.Время обращения зависит не только от скорости работы микропроцессора, но и от скорости работы микросхем памяти, которые должны согласовываться. Так как обычно скорость работы микропроцессора превышает скорость работы микросхем памяти, для их согласования используют ввод необходимых, например в динамической памяти для обновления информации, циклов ожидания, а также специальные решения по архитектуре памяти и использованию более быстродействующих микросхем.
Для комплектации современных компьютеров, на примере 80386 процессора, используются микросхемы с временем доступа 120, 80 наносекунд и более скоростных. Важной характеристикой микросхемы является кроме времени доступа, время цикла, которое говорит о том, как быстро можно произвести повторное обращение. Более производительными, но и более дорогими, являются статические микросхемы, т.к. для них нет необходимости в обновлении информации.
Альтернативой является кэш – память (быстрая память), в которую заносится последующий программный код. Это помогает обойтись или уменьшить количество циклов ожидания процессора. Практически используемые объемы такой памяти 16-256Кб. Обычно работа с кэш-памятью управляется отдельным контроллером.
Разбивка оперативной памяти на страницы и замена части ее быстрыми специальными микросхемами, работа с которыми осуществляется как с кэш-памятью, также позволяет значительно уменьшить количество циклов ожидания, возникающих теперь только при переходе с одной страницы на другую. При этом существенную роль имеет размер страниц, т.к. чем больше страница, тем больше вероятность того, что следующий бит будет внутри текущей страницы (обычно размер страниц 2 или 4 Кб). Страничная организация выполняется при помощи специальных микросхем ОЗУ статического режима.
Одной из эффективных архитектур организаций памяти является и разделение памяти на два или более банков. Последовательность бит при этом хранится в разных банках при чтении информации, поэтому процессор обращается то к одному, то к другому банку. Во время обращения к одному банку, другой реализует цикл обновления информации, и поэтому микропроцессору не придется ждать.
Логическая организация памяти.При разработке РС конструкторы разделили всю память на разделы и каждый раздел предназначили для реализации специфических функций. Результирующую диаграмму называют картой памяти.
Память в пределах до 640 Кб называют базовой памятью.
В ее нижних адресах располагалась зона векторов прерываний и зона данных BIOS (0-128) и (1024-1280), зона программ DOS до 640Кб. Программы, написанные для MS DOS, могут использовать только эту память. Следующие 128 Кб были зарезервированы для буфера видеоадаптера.
Последние 256 Кб памяти использовались как адресное пространство ПЗУ, в которых мог, например, располагаться интерпретатор БЕЙСИКа либо другие программы.
Дополнительная память.Память, выходящая за пределы 1 Мбайта, обычно называют дополнительной памятью, или extended-памятью. Эта память доступна в защищенных режимах Intel 80286, I80386 процессорах. Для MS DOS, работающей в реальном режиме , такая память не доступна, но очень часто используется, например, для организации виртуального диска.
Одним из методов преодоления 640-Кб ограничения была организация расширенной Expended Memory Specification, или EMS-памяти. Работа с этой памятью основывалась на переключении при помощи специального устройства банков памяти по 16 Кбайт из дополнительной области размером 8 Мбайт в нормальное адресное пространство центрального микропроцессора. Для этого использовалась зона карты памяти в диапазоне от 784 до 960 Кбайт и специальные платы расширения с переключателями банков на них.
Дальнейшее развитие EMS стандарта дало принципиальную возможность реализовать многозадачный режим.