SRAM (память)

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Типы компьютерной памяти
Энергозависимая
Энергонезависимая

Статическая оперативная память с произвольным доступом (SRAM, static random access memory) — полупроводниковая оперативная память, в которой каждый двоичный или троичный разряд хранится в схеме с положительной обратной связью, позволяющей поддерживать состояние без регенерации, необходимой в динамической памяти (DRAM). Тем не менее, сохранять данные без перезаписи SRAM может только пока есть питание, то есть SRAM остается энергозависимым типом памяти. Произвольный доступ (RAM — random access memory) — возможность выбирать для записи/чтения любой из битов (тритов) (чаще байтов (трайтов), зависит от особенностей конструкции), в отличие от памяти с последовательным доступом (SAM — sequential access memory).

Двоичная SRAM[править | править вики-текст]

Рис. 1. Шеститранзисторная ячейка статической двоичной памяти (бит) SRAM

Типичная ячейка статической двоичной памяти (двоичный триггер) на КМОП-технологии состоит из двух перекрёстно (кольцом) включённых инверторов и ключевых транзисторов для обеспечения доступа к ячейке (рис. 1.). Часто для увеличения плотности упаковки элементов на кристалле в качестве нагрузки применяют поликремниевые резисторы. Недостатком такого решения является рост статического энергопотребления.

Линия WL (Word Line) управляет двумя транзисторами доступа. Линии BL и BL (Bit Line) — битовые линии, используются и для записи данных, и для чтения данных.

Запись. При подаче «0» на линию BL или BL параллельно включенные транзисторные пары (M5 и M1) и (M6 и M3) образуют логические схемы 2ИЛИ, последующая подача «1» на линию WL открывает транзистор M5 или M6, что приводит к соответствующему переключению триггера.

Чтение. При подаче «1» на линию WL открываются транзисторы M5 и M6, уровни записанные в триггере выставляются на линии BL и BL и попадают на схемы чтения.

Восьмитранзисторная ячейка двоичной SRAM описана в [1].

Переключение триггеров через транзисторы доступа является неявной логической функцией приоритетного переключения, которая в явном виде, для двоичных триггеров, строится на двухвходовых логических элементах 2ИЛИ-НЕ или 2И-НЕ. Схема ячейки с явным переключением является обычным RS-триггером. При явной схеме переключения линии чтения и записи разделяются, отпадает нужда в транзисторах доступа в схеме записи-чтения с неявным приоритетом(по 2 транзистора на 1 ячейку), но появляется нужда в схемах записи-чтения с явным приоритетом.

В настоящее время появилась усовершенствованная схема [2] с обратной связью отключаемой сигналом записи, которая не требует транзисторов нагрузки и соответственно избавлена от высокого потребления энергии при записи.

Троичная SRAM[править | править вики-текст]

Проект троичной SRAM на трёхразрядных однозначных троичных триггерах описан в [3].

Один логический элемент 2ИЛИ-НЕ состоит из двух двухзатворных транзисторов (четырёх однозатворных), три — из шести (двенадцати однозатворных), плюс три транзистора доступа, всего — девять транзисторов (пятнадцать) на одну трёхбитную ячейку памяти (трит).

Преимущества[править | править вики-текст]

  • Быстрый доступ. SRAM — это действительно память произвольного доступа, доступ к любой ячейке памяти в любой момент занимает одно и то же время.
  • Простая схемотехника — SRAM не требуются сложные контроллеры.
  • Возможны очень низкие частоты синхронизации, вплоть до полной остановки синхроимпульсов.

Недостатки[править | править вики-текст]

  • Невысокая плотность записи (шесть-восемь элементов на бит[4], вместо двух у DRAM).
  • Вследствие чего — дороговизна килобайта памяти.

Тем не менее, высокое энергопотребление не является принципиальной особенностью SRAM, оно обусловлено высокими скоростями обмена с данным видом внутренней памяти процессора. Энергия потребляется только в момент изменения информации в ячейке SRAM.

Применение[править | править вики-текст]

SRAM применяется в микроконтроллерах и ПЛИС, в которых объём ОЗУ невелик (единицы килобайт), зато нужны низкое энергопотребление (за счёт отсутствия сложного контроллера динамической памяти), предсказываемое с точностью до такта[5] время работы подпрограмм и отладка прямо на устройстве.

В устройствах с большим объёмом ОЗУ рабочая память выполняется как DRAM. SRAM’ом же делают регистры и кеш-память.

См. также[править | править вики-текст]

Примечания[править | править вики-текст]

  1. http://www.citforum.ru/book/optimize/sdram.shtml Принципы функционирования SRAM. Крис Касперски
  2. http://timeinventor.com/news.php?readmore=118 D-триггер или ячейка регистра/памяти
  3. Троичная SRAM
  4. Компания MoSys продаёт DRAM со встроенным контроллером под маркой 1T-SRAM, но это, естественно, не делает её SRAM’ом.
  5. Например, программный USB в V-USB.