Оперативная память Блок памяти используется для хранения программ, вычислений и результатов. Этот блок включает в себя два типа памяти:
ОЗУ, из которого можно как считывать информацию, так и записывать;
ПЗУ, предназначенное для хранения служебных программ ввода/вывода, программ работы с устройствами, входящими в состав ЭВМ и программ начального тестирования и инициализации, из которого можно только считывать информацию, но нельзя записывать. Программы, хранящиеся в ПЗУ, называются аппаратно - программными средствами.
Адреса ПЗУ располагаются в нижней части адресного пространства
Адреса ОЗУ располагаются в верхней части адресного пространства
Выбор ОЗУ или ПЗУ осуществляет адресный дешифратор.
Виртуальная память – способ организации памяти мультипрограммной ВС, при которой достигается гибкое динамическое распределение памяти. Принцип виртуальной памяти предполагает, что пользователь при подготовке своей программы имеет дело не с физической ОП, действительно работающей в составе ВС и имеющей некоторую фиксированную емкость, а с виртуальной памятью, емкость которой равна всему адресному пространству. Преобразование виртуальных адресов в физические упрощается, если физическую и виртуальную память разбить на блоки, называемые в этом случае страницами, которые имеют фиксированный размер 4Kb. Страницам виртуальной и физической памяти присваивают номера, называемые соответственно номерами виртуальных и физических страниц. Каждая физическая страница способна хранить одну из виртуальных страниц.
Соответственно для управления выбором типа памяти (дешифратор выбора типа
памяти), управлением чтением/записью, а также управление выводом данных в общую шину в структуру ОП необходимо ввести контроллер ОП. В данной структуре основными сигналами управления памятью есть сигналы:- чтение / запись; - разрешение вывода данных на общую шину и сигнал разрешения работы памяти .
При разработке структурной схемы памяти необходимо учесть, что сигнал - необходим только для блока ОЗУ, т.к. при выборе блока ПЗУ операции по записи данных не возможны.
В основной памяти хранятся 32-х разрядные слова, что означает, что организация блоков памяти должна быть [адресная_емкость] х 32 бита. Т.о. блок ОЗУ будет построена на ИМС памяти типа SRAM 4М x 32 (емкость = 16Mb), блок ПЗУ на ИМС типа E2PROM 32K x 32 бита (емкость = 128Kb).
Исходя из выше сказанного, возможно построение структурной схемы основной памяти (рис. 9):
Блок контроля
Рис. 9 Структурная схема основной памяти
Разрядность ЦП разрабатываемой ЭВМ составляет 32 бита, что позволяет адресовать 4 Гслова ОП. Реальный размер ОП значительно меньше. Возможность использования всего адресного пространства реализуется посредством механизма виртуальной памяти. Если программа не помещается в ОП, то те части, которые в данный момент не используются, переносятся во вторичное запоминающее устройства, например, на «винчестер». Программы, а в ходе их выполнения и процессор, ссылаются на пространство команд и данных, не зависимое от реального физического пространства ОП. Генерируемые процессор двоичные адреса памяти называются виртуальными адресами. Заданием предусмотрена сегментно-страничная организация памяти. При такой организации адресное пространство делится на сегменты, каждый из которых, в свою очередь, делится на страницы фиксированного размера. Адресация ячеек памяти происходит уже внутри страниц. Для того, чтобы реализовать такую адресацию, необходимо задать формат виртуального адреса. Разрядность адреса — 32. Два старших бита отводятся под управляющие значения: бит присутствия P, используемый для генерации страничных прерываний (1 — страница находится в ОП, 0 — страница выгружена из ОП), и второй бит, имеющий разное значения для КЭШа адреса и для страничных таблиц. В первом случае он является битом достоверности D, сигнализирующим об актуальности данных (если данные в ОП изменились, бит сбрасывается в 0, и что означает необходимость обновления данных КЭШа). Для страничных таблиц он служит битом модификации M (если информация в ОП изменилась, то при удалении страницы из ОП её необходимо выгрузить на «винчестер»). Следующие 8 разрядов выделяются на адресацию сегментов 28 = 256 сегментов. Следующие 10 разрядов отводятся на адресацию страниц внутри сегмента 210 = 1024 страницы. Младшие 12 разрядов служат для задания смещения внутри заданной страницы. Таким образом, объём страницы составляет 212 = 4096 слов. За счёт того, что два бита используются как управляющие, адресное пространство сокращается до 1Гслова. Решение пожертвовать частью адресного пространства объясняется значительным выигрышем в скорости и в упрощении реализации. Процессор за один цикл может принять только 32 информационных разряда, следовательно, при превышении этого значения передачу дескрипторов придётся производить в два цикла, поэтому для передачи управляющих битов было решено выделить два адресных разряда. Формат виртуального адреса:
Номер сегмента
| Номер страницы
| Смещение внутри страницы
|
По заданию разрабатываемым блоком является блок преобразования виртуальных адресов, поэтому более подробно процесс преобразования адресов описан в разделе Разработка блока преобразования виртуальных адресов.
.
Схема подключения ОП представлена на структурной схеме ЭВМ (рис. 2)
|