Paсширенная, или ехрanded-памягь

Компьютеры, использующие процессор i80286 с 24-разрядными адресными шинами, физически могут адресовать 16 Мбайт, а в случае процессоров i80386/486 — 4 Гбайта памяти. Такая возможность появляется только при защищённом режиме работы процессора (protected mode), которого операционная система MS DOS не поддерживает. Расширенная память располагается выше области адресов 1 Мбайт. Для работы с extended-памятью микропроцессор должен переходить из реального в защищенный режим и обратно. Микропроцессоры i80386/486 выполняют эту операцию достаточно легко, чего не скажешь о i80286. При наличии соответствующего программного драйвера расширенную память можно эмулировать как дополнительную. Аппаратную поддержку в этом случае должен обеспечивать процессор не ниже i80386 или вспомогательный набор специальных микросхем.

Кэш-память

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

У микропроцессора, синхронизируемого, например, тактовой частотой 33 МГц, тактовый период составляет приблизительно 30 нс. Обычные современные микросхемы динамической памяти имеют время выборки от 60 до 80 нс. Отсюда, в частности, следует, что центральный процессор вынужден простаивать 2-3 периода тактовой частоты (т.е. имеет 2-3 цикла ожидания), пока информация из соответствующих микросхем памяти ус­тановится на системной шине данных компьютера. Понятно, что в это время процессор не может выполнять никакую дру­гую работу. Такая ситуация ведет обычно к тому, что общая производительность системы снижается, что, разумеется, крайне нежелательно.

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

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

На кристалле микросхемы оперативной памяти SRАМ на­ходится огромное количество транзисторов. Как уже говори­лось, принщп работы ячейки динамической памяти состоит в сохранении ; заряда на крошечном конденсаторе, выполненном в полупроводниковой структуре кристалла. Понятно, что для того чтобы зарядить конденсатор до определенного значения, необходимо некоторое время. Чтобы конденсатор разрядился, также необходимо определенное время. Таким образом, в ре­зультате процессов заряда и разряда конденсатора ячейка памяти устанавливает либо в состояние 1, либо в состояние 0. Поскольку для заряда и разряда конденсатора необходимо вполне определенное (и немалое) время, то в этом и кроется причина ограниченного быстродействия динамической памяти.

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

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

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

Метод Buffered Write Through является разновидностью метода Write Through и называется также методом буферизованной сквозной записи. Для того чтобы как-то уменьшить загрузку шины, процесс записи выполняется в один или нес­колько буферов, которые работают по принципу FIFO (First Input-First Output). Та­ким образом, цикл записи для микропроцессора заканчивает­ся практически мгновенно (т.е. когда данные записаны в буфер), хотя информация в основной памяти еще не сохранена. Сам же микропроцессор может выполнять дальнейшую обра­ботку команд. Конечно, соответствующая логика управления должна заботиться о том, чтобы своевременно опустошать за­полненные буферы. При использовании данного метода про­цессор полностью освобожден от работы с основной памятью.

При использовании метода Write Back, называемого также методом обратной записи, цикл записи микропроцессора происходит сначала в кэш-память, если там есть адрес приемни­ка. Если адреса приемника в кэш-памяти не оказывается, то информация записывается непосредственно в память. Содержимое основной памяти обновляется только тогда, когда из кэш-памяти в нее записывается полный блок данных, назы­ваемый длиной строки-кэша (cache-line).

При работе с кэш-памятью применяется ассоциативный принцип, когда старшие разряды адреса используются в качестве признака, а младшие — для выбора слова. Архитекту­ра кэш-памяти определяется тем, каким образом память отоб­ражается на кэш. Существуют три разновидности отображе­ния: кэш-память с прямым отображением, частично ассоциа­тивная и полностью ассоциативная. При прямом отображении каждая ячейка основной памяти может отображаться только на одну ячейку кэша, в частично ассоциативной —на две и больше (т.е., если одна ячейка кэша занята, можно использовать другую). В случае наличия четырех входов кэш-память называют 4-канальной частично ассоциативной, как, напри­мер, у i486. При полностью ассоциативном подходе в качестве разрядов признаков используются все адресные разряды.

BIOS и CMOS RAM

Базовая система ввода-вывода BIOS (Basic Input Output System) называется так потому, что включает в себя обшир­ный набор программ ввода-вывода, благодаря которым опера­ционная система и прикладные программы могут взаимо­действовать с различными устройствами как Самого компьюте­ра, так и с устройствами, подключенными к нему. Вообще говоря, в архитектуре IBM-совместимого компьютера система BIOS занимает особое место. С одной стороны, ее можно рассматривать, как составную часть аппаратных средств, с другой стороны, она является как бы одним из программных модулей операционной системы. )