Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Arkhitektura_IS.doc
Скачиваний:
9
Добавлен:
15.05.2015
Размер:
406.53 Кб
Скачать
    1. Динамическая память.

Основной метод построения оперативной памяти (RAM –Random Access Memory).

Ячейки представляют собой аналоги конденсаторов, образованных элементами полупроводниковых микросхем. При записи логической «1» конденсатор заряжается, при записи «0» - разряжается. Если к ячейке долго не обращаться, то за счет токов утечки конденсатор разряжается и информация теряется. Поэтому необходима постоянная подзарядка каждой ячейки, отсюда и название памяти – динамическая. Энергию необходимо тратить лишь для подзарядки конденсаторов, поэтому энергопотребление ниже, чем у статической памяти. Физически размер ячейки меньше, поэтому на одном кристалле удается размещать множество ячеек. Однако платой за это все является более сложный механизм работы. Конденсаторы расположены на пересечении горизонтальных и вертикальных шин матрицы. При считывании на микросхему памяти подается адрес строки матрицы, сопровождаемый сигналом RAS (строб адреса строки), затем через некоторое время – адрес столбца, с сигналом (CAS). Стоящий на пересечении этих строк и столбцов конденсатор разряжается через схему считывания, и если заряд был не нулевым – выставляется «1», затем, чтобы информация не потерялась, конденсатор подзаряжается до прежнего уровня.

Основные типы оперативной памяти:

FPM DRAM (Fast Page Mode) – динамическая память с быстрым страничным доступом. После выбора строки матрицы (RAS), он может удерживаться некоторое время, в течение которого может многократно меняться столбец (CAS). То есть если данные находятся внутри одной строки, быстродействие увеличивается. Время доступа 60-70 нс. Используется с МП 80386 и 80486.

RAM EDO (Extended Data Out) – динамическая память расширенного удержания. Удерживается последняя выбранная ячейка, что удобно при последовательном (блочном) считывании данных.

45 нс.

SDRAM (Synchronous DRAM) – память с синхронным доступом. В отличие от рассмотренных выше асинхронных типов памяти, в которых выборка нужной ячейки осуществляется только по сигналам RAS и CAS, память этого типа использует сигнал тактовой частоты системной шины. Это позволяет осуществлять конвейерный принцип работы: одновременно осуществлять считывание (запись) в одну ячейку, с поиском другой. За счет этого удается исключить такты ожидания. Работает, как правило, на частоте системной шины (100, 133 МГц). Но возможна и асинхронная работа по тому же принципу. Время доступа – 5-10 нс

DDR SDRAM (Double Data Rate) – тоже, что и SDRAM, но данные передаются по обоим фронтам (и верхним и нижним) тактового сигнала, что увеличивает максимальную пропускную способность в два раза. Частоты тоже увеличились и составляют 166, 200 (DDR400 или PC3200) МГц.

  1. Внутренняя энергонезависимая память.

Хранит записанные данные и при отсутствии питающего напряжения. Основным режимом работы такой памяти является считывание данных. Запись информации, называемая программированием или «прошивкой», обычно значительно сложнее. Отсюда название – ПЗУ или ROM.

По возможностям программирования различают

- программируемые при изготовлении – масочные ПЗУ или ROM;

- программируемые однократно ППЗУ или PROM;

- программируемые многократно РПЗУ или EPROM в качестве них используется и флэш-память (память с электрическим стиранием).

ПЗУ используются для хранения неизменяемой информации, например, для хранения базовой системы ввода-вывода (BIOS), особенно удобна флэш-память, она позволяет прямо с «дискеты» обновлять BIOS. Флэш-память также используется в качестве внешней памяти. Быстродействие у ПЗУ меньше, чем у оперативной памяти, поэтому для увеличения быстродействия содержимое ПЗУ копируется в ОЗУ, эта копия, называемая теневой памятью ПЗУ, в последствии и используется.

Аппаратные методы ускорения обработки данных

Ключевыми методами являются распараллеливание операций, кэширование памяти и расширение системы команд.

Распараллеливание операций

Выделяют конвейерную и суперскалярную технологии.

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

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

  1. Нарушение последовательности выполнения команд (из-за условных переходов).

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

Если эти ситуации случаются, происходят остановы конвейера, вследствие чего, он очищается и начинает заполняться заново. То есть недовыполненные инструкции начинают выполняться заново. И чем длинней конвейер, тем больше теряется производительности (инструкции надо пройти все стадии конвейера), чтобы быть выполненной. Поэтому ищется компромиссная длина конвейера, когда выигрыш от распараллеливания все еще превышает потери из-за останова. В микроархитектуре процессоров PIII AMD K8 конвейер имеет 10-12 стадии, в микроархитектуре процессоров P4 число стадий увеличено до 20 (гиперконвейерная микроархитектура). В новых процессорах Intel Core Duo конвейер вновь небольшой (10-12 стадий).

Основными методами борьбы с остановами конвейера являются: