Основы микропроцессорной техники

Раздел 7. Организация персонального компьютера


«Структура курса | Раздел 1 | Раздел 2 | Раздел 3 | Раздел 4 | Раздел 5 | Раздел 6 | Раздел 7 | Глава 8 | Дополнения

Раздел 7 - Страницы: «1 | 2 | 3 | 4 | 5 | 6 | 7

7.3. Память персонального компьютера

Как и в любой другой микропроцессорной системе, память персонального компьютера состоит из двух частей: оперативной памяти и постоянной памяти. Обе части расположены в адресном пространстве памяти, в обоих компьютер может обращаться одинаковым образом. Обе памяти допускают обращения к отдельным байтов, 16-разрядных слов (которые имеют четные адреса), до 32-разрядных двойных слов (которые имеют адреса, кратные четырем) и до 64-разрядных учетверенним словам (которые имеют адреса, кратные восьми) . Различие только в том, что оперативную память используется для временного хранения программ и данных, а в постоянной памяти хранятся программы начального запуска, начального самотестирования компьютера, а также набор программ ввода / вывода нижнего уровня, т.е. то, что не должно теряться при выключении питания компьютера. Объем оперативной памяти намного больше, чем постоянной памяти.

7.3.1. Оперативная память

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

Все персональные компьютеры используют оперативную память динамического типа (DRAM - Dynamic Random Access Memory), основным преимуществом которой перед статической оперативной памятью (SRAM - Static RAM) является низкая цена. Это связано с тем, что если элемент статической памяти (триггер) требует 4-6 транзисторов, то элемент динамической памяти - это интегральный конденсатор, для обслуживания которого требуется 1-2 транзистора. Отсюда же вытекают и два основных недостатка динамической памяти: она требует регенерации (т.е. постоянного обновления заряда на конденсаторе, который со временем разряжается,) и имеет в несколько раз меньшую быстродействие по сравнению со статической памятью. К тому же во время регенерации динамическая память недоступна для обмена, что также снижает быстродействие компьютера. Отмети , что сейчас обычно применяют встроенную регенерацию, что не требует внешнего обслуживания, но опять-таки занимает время.

Переход на вполне статическую память слишком сильно повысил бы стоимость компьютера в целом (к тому же необходимый объем оперативной памяти компьютера все увеличивается), поэтому статическую память применяют только в самых "узких" местах, там, где без высокого быстродействия не обойтись, например, для кэш-памяти. Что касается динамической памяти, то ее развитие идет по пути снижения времени доступа благодаря структурным и технологическим усовершенствованиям. Например, второе поколение динамической памяти EDO RAM (Extended Data Output RAM) мало быстродействие примерно на 20-25% выше, чем у обычной памяти. Это достигается за счет того, что следующее обращение к памяти возможно еще до завершения предыдущего обращения. Третье поколение динамической памяти - SDRAM (Synchronous DRAM) - еще на столько же быстрее (рабочая частота в настоящее время достигает 133 МГц). Еще более быстродействующая память - DDR SDRAM (частота до 400 МГц) и память RDRAM (частота до 1 ГГц и даже выше).

Для упрощения установки оперативной памяти в компьютер ее выполняют в виде небольших модулей - печатных плат с ножевым (печатным) разъемом, на которые установлены микросхемы памяти (SIMM - Single In-Line Memory Module). Эти модули устанавливаются в специальные SIMM-разъема на материнской плате, что позволяет пользователю легко изменять объем памяти компьютера, учитывая при этом необходимый уровень быстродействия, сложность решаемых задач и свои финансовые возможности. Широко применяются 72-контактные SIMM-модули разного объема. Отметим, что не рекомендуется одновременно использовать несколько модулей с различным быстродействием: в некоторых компьютерах это вызывает сбои. В современных компьютерах на базе процессоров Pentium применяются также модули DIMM (Dual In-Line Memory Module - модуль памяти с двухсторонними печатными выводами), имеющих 64 бита данных.

Модули памяти иногда поддерживают проверку содержимого памяти на четность. Для этого в 8 битов данных каждой адреса памяти прилагается девятый бит четности. Он записывается при каждой записи информации в соответствующий байт памяти и проверяется при чтении информации из соответствующего байта памяти. Если выявляется несоответствие бита четности байта информации, то вырабатывается сигнал, вызывающий немасковане прерывания NMI.

Весь адресное пространство памяти компьютера разделяется на несколько областей, что связано, в первую очередь с необходимостью обеспечения совместимости с первыми компьютерами семейства. В компьютере IBM PC XT на процессоре и8088 процессор мог адресовать 1 Мбайт памяти (20 адресных разрядов). Но все программные и аппаратные средства строились исходя из предположения, что доступен адресное пространство - только младшие 640 Кбайт (тогда это казалось вполне достаточным. Данная область памяти получила название стандартной памяти (Conventional memory). Именно в пределах этих 640 Кбайт (адреса 0 ... 9FFFF) работает операционная система MS DOS и все ее приложения.

Первые 1024 байта (адреса 0 ... 3FF) сохраняют таблицу векторов прерывания (Interrupt Vectors) объемом 256 двойных слов, формируемое на этапе начальной загрузки. Однако если процессор работает в защищенном режиме, таблица векторов может располагаться в любом другом месте памяти.

Адреса 400 ... 4FF выделяющиеся область переменных BIOS (BIOS Data Area). Подробнее о BIOS будет рассказано в следующей главе.

Адреса 500 ... 9FFFF включают в себя область операционной системы DOS (DOS Area) и память пользователя (User RAM).

Остались от 1 Мбайта памяти 384 Кбайта (адреса A0000 ... FFFFF), зарезервированы под другие системные потребности, называются UMA (Upper Memory Area) - область верхней памяти или UMB (Upper Memory Blocks) - блоки верхней памяти или High DOS Memory.

Пространство видеопамяти (адреса A0000 ... BFFFF) содержит области для хранения текстовой и графической информации видеоадаптера.

Пространство памяти с адресами E0000 ... FFFFF отведено под системную постоянную память компьютера ROM BIOS.

В этой же области выделено окно размером в 64 байт (page frame) с адресами D0000 ... DFFFF, через которое программы могли получать доступ к дополнительной (отображаемой) памяти (Expanded memory) объемом до 32 Мбайт, оставаясь в пределах того же 1 Мбайта адресованной памяти. Это достигается путем поочередного отображения четырех страниц по 16 Кбайт с дополнительной памяти в выделенное окно. При этом положение страниц в дополнительной памяти можно изменять программным путем. Понятно, что работать с дополнительной памятью менее удобно, чем с основной, так как в каждый момент компьютер "видит" только окно в 64 Кбайт. Поэтому сейчас она применяется довольно редко.

В настоящее время область памяти с адресами З0000 ... DFFFF чаще используется для оперативной и постоянной памяти, которая входит в состав различных адаптеров и плат расширения компьютера.

В результате логическая организация адресного пространства в пределах 1 Мбайт получилась довольно сложной (Рис. 7.10). И такую же организации должны поддерживать все персональные компьютеры семейства IBM PC для обеспечения совместимости с предыдущими моделями.


Рис. 7.10. Распределение адресного пространства памяти.

При дальнейшем расширении адресованного пространства памяти в следующих моделях компьютеров вся память объемом более 1 Мбайт получила название расширенной памяти (Extended memory). Для доступа к ней микропроцессор должен переходить из реального режима в защищенный и обратно. Общий объем памяти персонального компьютера (верхняя граница расширенной памяти) может доходить до 16 Мбайт (24 разряда адреса) или до 4 Гбайт (32 разряда адреса).

Особого упоминания заслуживает так называемая теневая память (Shadow RAM), представляющая собой часть оперативной памяти, в которую при запуске компьютера переписывается содержимое постоянной памяти, и которая заменяет эту постоянную память на время работы комп ' ютера. Необходимость данной процедуры вызвана тем, что даже сравнительно медленная динамическая оперативная память оказывается все-таки быстрее, чем постоянная память. Постоянная память часто заметно сдерживает быстродействие компьютера. Поэтому было предложено выделять часть оперативной памяти для выполнения обязанностей в качестве системной постоянной памяти ROM BIOS, так и постоянной памяти, которая входит в состав дополнительных адаптеров, которые подключаются к компьютеру. Переписывание информации обычно предусмотрено в программе начального пуска.

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

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

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

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

7.3.2. Постоянная память

Системная постоянная память (ПЗУ) занимает сравнительно небольшой объем (обычно 64 байт). Однако ее значение для компьютера очень велико. Само ее название ROM BIOS (ROM Basic Input / Output System) - базовая система ввода / вывода - говорит о том, что в ней находится функционально полный набор программ нижнего уровня для управления устройствами ввода / вывода. Поэтому даже для загрузки в оперативную память программ, которые выполняются, с диска компьютер имеет возможность обслуживать клавиатуру, дисплей, подавать звуковые сигналы, общаться с дисками и т.д. Важно отметить, что большинство современных видеоадаптеров, а также контроллеров накопителей имеют собственную систему BIOS, который дополняет или даже заменяет системную BIOS во время основной работы. Вызов программ BIOS осуществляется через программные или аппаратные прерывания, для чего BIOS формирует соответствующую таблицу векторов прерываний. Но этим функции постоянной памяти не ограничиваются.

В принципе, во память ROM BIOS отведено 128 Кбайт адресного пространства памяти. В первых компьютерах (IBM PC XT) она занимала всего 8 Кбайт, сейчас обычно занимает 64 Кбайт. Если же нужно использовать системную постоянную память большего объема, то она поочередно отображается на окно системной памяти размером 64 Кбайт (адреса F0000 ... FFFFF). Это связано со стремлением сэкономить пространство верхней памяти для других целей.

При старте компьютера после включения питания, нажатие кнопки на передней панели RESET или после программного перезапуска начинает выполняться программа начального запуска (инициализации), которая также хранится в постоянной памяти (начальный адрес FFFF0). Эта программа включает в себя:

  • программу самотестирования компьютера (POST - Power On Self Test);
  • программу начальной загрузки операционной системы с соответствующего дискового накопителя компьютера;
  • программу настройки текущих параметров компьютера (Setup).

Кроме программы начального запуска ROM BIOS также обслуживает аппаратные прерывания от системных устройств (таймера, клавиатуры, дисков), а также отрабатывает базовые программные обращения к системных устройств.

Отметим, что в последнее время ROM BIOS выполняется не на микросхемах собственно постоянной памяти, а на микросхемах, допускающих многократный перезапись информации пользователем EPROM (Erasable Programmable ROM) с электрическим перезаписью - типа флеш (flash), что позволяет более гибко настраивать комп ' ютер. Пользователь может легко модернизировать BIOS компьютера с помощью программы перезаписи флэш-памяти. При использовании же микросхем ПЗУ с ультрафиолетовым стиранием для этого требовались специальный программатор и устройство, стирает (ультрафиолетовая лампа).

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

  • сообщениями на дисплее (наиболее наглядно и понятно пользователю);
  • звуковыми сигналами (что очень полезно при неработоспособном дисплее);
  • выдачей кодов в определенный порт ввода / вывода, в основном это порт с адресом 080 (на этом основаны все диагностические приборы).

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

Звуковые сигналы не отличаются особым разнообразием, но, однако, позволяют обнаружить и идентифицировать основные ошибки. Для примера в табл. 7.2 приведены звуковые сигналы об ошибках, которые используются BIOS компании IBM (для BIOS других фирм сигналы могут быть другими).

Табл. 7.2. Звуковые сигналы POST BIOS.
Звуковые сигналы Неисправность
1 короткий Все в порядке
2 коротких Ошибка монитора
Naujų сигналов Источник питания, системная плата
Непрерывный сигнал Источник питания, системная плата
Повторяющиеся короткие сигналы Источник питания, системная плата
1 длинный, 1 короткий Системная плата
1 длинный, 2 коротких Адаптер дисплея (MDA, CGA)
1 длинный, 3 коротких Адаптер дисплея (EGA)

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

Начиная с компьютеров на процессоре 80286 (IBM PC AT) постоянная память ROM BIOS обязательно дополняется небольшой энергонезависимой оперативной памятью CMOS RAM, которая выполнена на микросхемах с пониженным энергопотреблением с технологией КМОП (CMOS) и при выключении питания комп 'ютера подпитывается от батарейки или аккумулятора (эта память, как правило, входит в состав других микросхем. В CMOS-памяти хранится информация о текущих показания часов (даты и времени), о значении времени для будильника, о конфигурации компьютера: приоритеты загрузки с различных накопителей, количества памяти, типах накопителей, режимах энергопотребления, о типе дисплея , о установки клавиатуры и т.д. CMOS RAM отличается от постоянной памяти тем, что записанная в ней информация легко изменяется программным путем.

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

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

Программа Setup позволяет также принимать или отклонять теневой (Shadow) памяти как для системного BIOS, так и для BIOS используемых адаптеров (по отдельным сегментам памяти). При использовании теневой памяти в выбранную область оперативной памяти копируется содержимое BIOS ROM, эта область определяется как доступная только для чтения, и производится переадресация памяти. То есть при любых обращениях по адресам ROM чтение данных будет происходить из соответствующих адресов Shadow RAM, а постоянная память уже не используется. Такой подход может существенно (иногда в 4 - 5 раз) ускорить выборку команд для программ обмена с видеоадаптером и с дисковыми накопителями.

В программе Setup всегда предусмотрена возможность установки параметров компьютера по умолчанию (Default Setting). Это особенно удобно в случае разряда или повреждения батареи (аккумулятора).

В новых компьютерах, поддерживающих режим экономии потребляемой электроэнергии, можно также задавать переход компьютера в режимы Doze (спящий), Standby (ожидание или резервный) и Suspend (приостановка работы) при отсутствии обращений к узлам компьютера в течение заданного времени . Режимы перечислены в порядке снижения потребления электроэнергии. Компьютеры (а также их системные платы), где применяются такие режимы, называемые иногда "зелеными".


«Структура курса Раздел 7 - Страницы:« 1 | 2 | 3 | 4 | 5 | 6 | 7 | »