Ремонт принтеров, сканнеров, факсов и остальной офисной техники


назад Оглавление вперед




[27]

4.3. Cache

Как правило, кэш-память (Cache Memory) ассоциируется всегда с центральным процессором. Кэш-память представляет собой статическое ОЗУ, обладающее значительно более высоким быстродействием, нежели динамическое. Фактически, кэш-память предназначена для согласования (компенсации) скорости работы сравнительно медленных устройств с относительно быстрым центральным процессором, т. е. она играет роль быстродействующего буфера между процессором и относительно медленной динамической памятью. Для кэш-памяти характерно значительно меньшее время доступа (Access time). Время доступа - это характеристика, показывающая, сколько времени необходимо для того, чтобы получить доступ к той или иной ячейке памяти.

Кэш-память изготавливается на микросхемах статической памяти, не требующей регенерации. Кэш-память значительно дороже динамической, поэтому ее объем, как правило, не превышает 512 КБ. Объем и быстродействие кэш-памяти являются определяющими параметрами быстродействия всей системы для подавляющего большинства задач, решаемых на компьютере. Цифры впечатляющей разницы в быстродействии между различными видами DRAM уменьшаются во много раз при оценке производительности компьютера в целом из-за кэш-памяти. Для большего увеличения быстродействия кэш-памяти она встраивается в собственно кристалл процессора и работает при этом на той же тактовой частоте, что и сам процессор. Гри попытке доступа к данным процессор сначала обращается к внутренней кэш-памяти, если их там нет, то ко внешней, лишь затем к основной динамической памяти.

Когда процессор первый раз обращается к ячейке памяти, ее содержимое параллельно копируется в кэш, и в случае повторного обращения может быть с гораздо большей скоростью выбрано из кэша. Гри записи в память значение попадает в кэш, и либо одновременно копируется в память (схема Write Through - прямая или сквозная запись), либо копируется через некоторое время (схема Write Back - отложенная или обратная запись). Гри обратной записи, называемой также буферизованной сквозной записью, значение копируется в память в первом же свободном такте, а при отложенной (Delayed Write) - когда для помещения в кэш нового значения в кэш-памяти не оказывается свободной области. Гри этом в память вытесняется наименее используемая область кэша. Вторая схема более эффективна, но и более сложна за счет необходимости поддержания соответствия содержимого кэша и основной памяти. Очевидно, что контроллер кэш-памяти должен быть достаточно интеллектуальным, чтобы решать столь сложные задачи, в том числе, определять, какие данные могут понадобиться процессору в следующий момент.

Сейчас под термином "Write Back" в основном понимается отложенная запись, однако это может означать и буферизованную сквозную.

Гамять для кэша состоит из собственно области данных, разбитой на блоки (строки), которые являются элементарными единицами информации при работе кэша, и области признаков (tag), описывающей состояние строк (свободна, занята, помечена для дозаписи и т. п.). В основном используются две схемы организации кэша: с прямым отображением (direct mapped), когда каждый адрес памяти может кэши-роваться только одной строкой (в этом случае номер строки определяется младшими разрядами адреса динамической памяти), и n-связный ассоциативный (n-way associative), когда каждый адрес может кэшироваться несколькими стро-


ками. Ассоциативный кэш более сложен, однако позволяет

более гибко кэшировать данные.

Основные типы кэш-памяти:

Asynchronous SRAM,

Synchronous Burst SRAM,

Pipelined Burst SRAM.

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

1.Asynchronous SRAM (асинхронная статическая память) используется еще со времен 386-х процессоров. Принцип работы простейший! Процессор посылает адрес необходимой ячейки памяти, контроллер ищет данные и в случае успеха передает их процессору. При этом в оптимальном варианте работает схема 32-2-2 (3 такта на считывание первого сегмента данных и по два такта на считывание 3-х последующих).

2.2. Synchronous Burst SRAM (синхронная потоковая статическая память) позволяет получить наиболее быстрый доступ в системах с тактовой частотой шины до 66 МГц. Являясь пакетной, эта кэш-память позволяет реализовать схему 2-1-1-1. В системах с частотой системной шины более 66 МГц эта схема ухудшается до 3-2-2-2.

3.3. Pipelined Burst SRAM (статическая память с блочным конвейерным доступом) приобрела к 1997 году наибольшее распространение, обеспечивая схему доступа 3-1-1-1, которая не ухудшается с ростом тактовой частоты. "Конвейерность" заключается в том, что при считывании нескольких последовательных ячеек памяти они буферизируются, и это позволяет уменьшить время, которое затрачивает процессор на такую процедуру.

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

640KB to 1MB Cacheability

опция через установку в "Enabled" позволяет кэшировать последние 384 КБ из первого мегабайта ОЗУ. В предыдущей главе и в опциях, представленных далее, достаточно полно изложены всевозможные варианты "затенения" и кэширования фрагментов памяти, расположенных в верхних 384-х килобайтах первого мегабайта системной памяти. Несколько "особняком" от них выделяются предложенные опции. Не по их виду, а по тем значениям, которые возможны для них. Вот эти опции: Video BIOS C000-C3FF Video BIOS C400-C7FF C800-CBFF Memory CC00-CFFF Memory D000-D3FF Memory D000-D7FF Memory D800-DBFF Memory DC00-DFFF Memory Ext BIOS E000-E3FF Ext BIOS E400-E7FF Ext BIOS E800-EBFF Ext BIOS EC00-EFFF

Довольно внушительно. А вот и значения этих опций: "PCI Device" - выбранный диапазон отдается под потребности PCI-устройства,

"Shadowed" - выбранный диапазон "затеняется",


"Write Prot." - выбранный диапазон защищен от записи. Гри загрузке системы в этот адресный диапазон копируется некое ГЗУ и в процессе работы эти адреса доступны только для чтения,

"Uncached DRAM" - некэшируемый регион памяти, "PCI/Cached" - выбранный диапазон принадлежит PCI-устройству и кэшируется,

"Shadowed/Cached" - выбранный диапазон "затеняется" и кэшируется,

"Write/Cached" - по адресам выбранного фрагмента может производиться запись и этот фрагмент кешируется,

"Cached DRAM" - кэшируемая область памяти.

Cache Base 0-512k

Cache Base 512-640k

Cache Extended Memory Area

для использования этих опций, предложенных "Phoenix BIOS", предварительно должно быть включено кэширование в системе, для чего может быть предназначена интегрированная опция "Cache". Гонятно, что механизм кэширования может быть включен для двух областей: основной памяти и расширенной (типа XMS). А данные опции дают возможность выбрать метод кэширования для каждой из областей. Итак:

"Write Back" - данные сначала записываются в кэш, в основную же память по необходимости либо "при удобном случае". Наиболее быстрый метод. Более подробно см. ниже, "Write Through" - данные записываются в кэш и в основную память одновременно,

"Write Protect" - выбранная область кэшируется, но при этом защищена от записи,

"Uncached" (или "Disabled") - запрещено кэширование для выбранной области.

Следующая "пачка" опций "Phoenix BIOS" выглядит уже привычно, хотя присутствуют важные особенности.

Cache A000-AFFF Cache B000-BFFF Cache C800-CBFF

Значения опций: "Write Back", "Write Through", "Write Protect", "Disabled", а также

"USWC Caching" (Uncacheable Speculative Write Combining) -режим некэшируемой объединенной записи. Грименяется для отображаемых в памяти устройств ввода-вывода и отображаемого кадра видеопамяти.

"Cache Memory" - так называется внушительное меню "Phoenix BIOS" со следующими опциями:

Cache System BIOS Area Cache Video BIOS Area Cache DRAM Memory Area

-в данных опциях выбираются либо разрешение/запрет кэширования, либо метод кэширования (см. выше). Следующая опция-меню "Cache Memory Regions" может быть использована, если в опции (см. ниже) "Cache" выбрано любое из двух значений: "Intern only" или "Intern and Extern". Вот эти опции, надеюсь, уже понятные пользователю: C800 - CBFF CC00 - CFFF D000 - D3FF D400 - D7FF

D800 - DBFF DC00 - DFFF

Значения этих опций стандартны: "Enabled" и "Disabled". Включение какой-либо опции приводит к кэшированию выбранной адресной области. Если в системе используется ISA-карта с двухпортовой памятью, отображаемой в системной памяти в ROM-области, то для такой адресной области кэширование должно быть запрещено. Cache Rd+CPU Wt Pipeline

-разрешение опции ("Enabled") позволяет включить конвейеризацию для циклов чтения из кэш-памяти и циклов записи



[стр.Начало] [стр.1] [стр.2] [стр.3] [стр.4] [стр.5] [стр.6] [стр.7] [стр.8] [стр.9] [стр.10] [стр.11] [стр.12] [стр.13] [стр.14] [стр.15] [стр.16] [стр.17] [стр.18] [стр.19] [стр.20] [стр.21] [стр.22] [стр.23] [стр.24] [стр.25] [стр.26] [стр.27] [стр.28] [стр.29] [стр.30] [стр.31] [стр.32] [стр.33] [стр.34] [стр.35] [стр.36] [стр.37] [стр.38] [стр.39] [стр.40] [стр.41] [стр.42] [стр.43] [стр.44] [стр.45] [стр.46] [стр.47] [стр.48] [стр.49] [стр.50] [стр.51] [стр.52] [стр.53] [стр.54] [стр.55] [стр.56] [стр.57] [стр.58] [стр.59] [стр.60] [стр.61] [стр.62] [стр.63]