- •Организация памяти вс
- •Иерархическая структура памяти
- •Емкость (объем)
- •Организация внутренней памяти вс
- •Архитектура оперативной памяти
- •Адресная память
- •Ассоциативные запоминающие устройства
- •Стековые запоминающие устройства
- •Увеличение объема внутренней памяти
- •Логическая организация памяти
- •Вычисление физического адреса памяти
- •Сегментная структура памяти
- •Согласование оперативной памяти с процессором по быстродействию
- •Конвейеризация (опережающая выборка команд из памяти).
- •Организация банков (модулей) памяти.
- •Использование буферной (сверхоперативной) памяти.
- •Структура кэш-памяти
- •Технологии флэш-памяти
- •Где нужна память…
- •И будет флэш…
-
Увеличение объема внутренней памяти
С увеличением числа и сложности решаемых ВС задач все большее значении приобретает объем внутренней памяти. В свою очередь объем памяти с произвольной адресацией ограничивается размеров адресного пространства системы и зависит от числа линий шины адреса. Архитектура процессора (разрядность внутренних регистров) накладывает ограничение на увеличение разрядности шины адреса, то есть адрес , передаваемый по шине должен помещаться в регистрах процессора и должен быть кратным байту (байт, слово, двойное слово и т.д.). Кроме этого нельзя безгранично увеличивать разрядность внутренних элементов процессора, так как в этом случае необходимо принимать во внимание ряд конструкционных и технологических факторов (габаритные размеры, надежность, потребляемая и рассеиваемая мощности и т.д.).
Разрешить эти противоречивые требования позволяет сегментация памяти – разбиение всего массива на сегменты. При этом каждая ячейка памяти должна иметь как бы две координаты: адрес сегмента в массиве памяти и адрес ячейки внутри массива. Такое представление адреса называется логическим адресом. При этом в состав процессора необходимо ввести сумматор адресов для вычисления физического адреса ячейки памяти.
Операции с логическим адресом производятся при написании программного обеспечения системы, а на аппаратном уровне элементы логического адреса обрабатываются элементами и устройствами процессора. Все остальные устройства системы получают по шине адреса физический адрес.
Рассмотрим логическую организацию памяти для ВС на базе процессоров семейства 80х86.
Логическая организация памяти
В связи с использованием механизма сегментации памяти положение каждой ячейки определяется сегментом, в котором она находится, а также смещением относительно начала этого сегмента (см. рис.3.6). Следовательно, с логической точки зрения положение ячейки может быть описано базовым адресом сегмента segment и смещением относительно начала этого сегмента offset Эта пара чисел называется логическим адресом ячейки памяти и записывается в виде segment:offset. База сегмента segment всегда хранится в сегментном регистре (селекторе).
Все сегментные регистры имеют специализированное назначение, что определяет специализацию адресуемых ими сегментов памяти, а именно:
CS - сегмент программного кода CS;
DS - основной сегмент данных DS;
ES, FS, GS - дополнительные сегменты данных ES, FS, GS;
SS - сегмент стека SS.
Cмещение offset чаще всего берется из регистров указателей адреса: указателя адреса команды IP, указателя стека SP (для программного стека), указателя базового адреса некоторого массива данных BP, указателей индексов внутри массива для ячеек источников и истприемников SI и DI, либо вычисляется в соответствии со способом адресации операндов, указанным в команде.
Таким образом, логический адрес состоит из двух беззнаковых 16-битных значений (является двойным словом) для 16-битной адресации, а также 16-битного значения сегмента и 32-битного значениия смещения при 32-биной адресации.
Программа всегда оперирует логическими адресами. При обращении к памяти шинный интерфейс процессора из заданного логического адреса ячейки памяти вычисляет ее физический адрес, который и выдается на шину адреса.