Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Введение
COASt, аббревиатура от "cache on a stick", является стандартом для упаковки модулей, содержащих SRAM, используемых в качестве L2 кэша в компьютере. Модули COASt выглядят как несколько увеличенные SIMM-модули. Эти модули были достаточно популярны на платформах Apple и PC в начале и середине 1990-х годов, но в современных компьютерах кэш обычно встроен либо в процессор, либо в материнскую плату. Модули COASt отделяли кэш от материнской платы, позволяя создавать различные конфигурации. Система с низкой стоимостью могла работать без кэша, а более дорогая система могла быть оснащена 512 КБ или более кэша. Позднее модули COASt оснащались конвейерной burst SRAM. Стандарт был первоначально определён компанией Motorola с шириной от 4,33 до 4,36 дюйма (110 и 111 мм) и высотой от 1,12 до 1,16 дюйма (28 и 29 мм). Он использовался во многих Apple Macintosh в начале и середине 90-х годов, но исчез после перехода Mac на платформу PowerPC. Intel также использовала стандарт COASt для своих систем Pentium, где он встречался вплоть до 1998 года в системах Pentium MMX с использованием чипсетов Intel, таких как 430VX и 430TX. Впоследствии Intel объединила эту архитектуру с процессором и создала картридж Slot 1, который содержал как процессор, так и отдельные чипы кэша. Разъём, в который подключался модуль COASt, назывался "CELP" (card edge low profile), что отражает небольшую плату и контакты на её краю. Он имел 80 контактов с каждой стороны платы (всего 160), расположенных на расстоянии 0,050 дюйма друг от друга, а также идентификационную выемку между контактами 42 и 43.
COASt, an acronym for "cache on a stick", is a packaging standard for modules containing SRAM used as an L2 cache in a computer. COASt modules look like somewhat oversized SIMM modules. These modules were somewhat popular in the Apple and PC platforms during early to mid 1990s, but with newer computers cache is built into either the CPU or the motherboard. COASt modules decoupled the motherboard from its cache, allowing varying configurations to be created. A low cost system could run with no cache, while a more expensive system could come equipped with 512 KB or more cache. Later COASt modules were equipped with pipelined burst SRAM. The standard was originally defined by Motorola to be between 4.33 and 4.36 inches (110 and 111 mm) wide, and between 1.12 and 1.16 inches (28 and 29 mm) high. It could be found in many Apple Macintosh in the early to mid 90s, but disappeared as the Mac moved to the PowerPC platform. Intel also used the COASt standard for their Pentium systems, where it could be found as late as 1998 in Pentium MMX systems utilizing Intel chipsets such as 430VX and 430TX. Later, Intel combined this architecture with the CPU and created the Slot 1 CPU cartridge which contained both the CPU and separate cache chips. The slot that the COASt module plugged into was named "CELP", or "card edge low profile", referring to the small circuit board and the conductors on its edge. It had 80 contacts on each side of a circuit board (for a total of 160), spaced 0.050" apart, plus an identification notch between contacts 42 and 43.
Операция
Модули COASt обеспечивали 256 или 512 КБ кэша с прямой адресацией, организованного в виде 8192 или 16384 строк по 32 байта. 64-битная шина данных позволяла передавать кэш-линию за 4 цикла. Модули содержали 256 или 512 КБ быстрой конвейерной burst SRAM, а также 8 или 11 бит более быстрой статической оперативной памяти на строку для хранения тегов кэша. (Модуль имеет контакты для 11 строк, но многие материнские платы и модули поддерживали только 8.) В некоторых вариантах (как показано на рисунке справа) память для тегов размещалась на материнской плате, а на модуле находилась только основная кэш-память. Сначала рассмотрим модуль 256 КБ. 8-битный тег позволяет кэшировать память, в 256 раз превышающую размер кэша, то есть 64 МБ. 11-битный тег поддерживает до 512 МБ. Каждая строка кэша также содержит бит валидности и бит загрязнения, которые хранятся в контроллере кэша (общий размер – 16 Кбит, или 2 Кбайт). Модуль 512 КБ содержит вдвое больше строк кэша, поэтому для поддержки того же объема кэшируемой памяти требуется на один бит тега меньше. Освободившийся бит тега используется для хранения бита загрязнения кэша, а все 16 Кбит в контроллере кэша используются для битов валидности.
COASt modules provided either 256K or 512K of direct mapped cache, organized as 8192 or 16384 lines of 32 bytes. A 64 bit data bus allowed the cache line to be transferred in a 4 cycle burst. The modules contained 256K or 512K of fast pipeline burst SRAM, plus 8 or 11 bits of even faster static RAM per line to store the cache tags. (The module provides pins for 11 lines, but many motherboards and modules provided only 8.) Some variants (illustrated to the right) placed the tag RAM on the motherboard and only the main cache RAM was on the module. Consider the 256K module first. An 8 bit tag allows caching memory up to 256 times the cache size, or 64 MiB. An 11 bit tag supports up to 512 MiB. Each cache line also has a valid bit and a dirty bit, stored in the cache controller. (16 Kbits, or 2 Kbytes, total size.) A 512K module contains twice as many cache lines, and so requires one fewer tag bit to support the same cacheable memory size. The leftover tag bit is instead used to store the cache line dirty bit, and all 16 Kbits in the cache controller are used for valid bits.