SuperRAM от AMIC Technology. Статические озу

Общие сведения. Статическая память (Static Random Access Memory – SRAM) способна сколь угодно долго хранить данные в отсутствие обращений (при наличии питающего напряжения), т.е. в статическом режиме. Ячейки статической памяти строятся на элементах с двумя устойчивыми состояниями (на бистабильных ячейках или триггерах). По сравнению с динамическими емкостными элементами памяти они проще в управлении и не требуют регенерации, однако являются более сложными в схемном отношении и занимают больше места на кристалле. Быстродействие и энергопотребление статической памяти определяются технологией изготовления и схемотехникой запоминающих ячеек. Самая экономичная КМОП-память (CMOS Memory) пригодна для длительного хранения данных при питании от маломощной батареи. Она применяется в памяти конфигурации персональных компьютеров. Время доступа КМОП-памяти составляет более 100 нс. Самая быстродействующая статическая память имеет время доступа в несколько наносекунд (и даже десятых долей наносекунды). Такая память способна функционировать на частоте системной шины совместно с процессором, не требуя от него тактов ожидания.

Типовой объем памяти современных микросхем SRAM достигает 1 Мбит и более. Существуют три разновидности микросхем статической памяти: Async SRAM, Sync Burst SRAM и Pipelined Burst SRAM. Относительно высокая удельная стоимость хранения данных при низкой плотности упаковки не позволяет использовать SRAM в качестве основной памяти компьютеров.

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

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

Таким образом, к основным особенностям статических ОЗУ следует отнести:

  • способность при включенном компьютере сколь угодно долго хранить данные (информацию) в отсутствие обращений. Такая способность обеспечивается бистабильными ячейками памяти с двумя устойчивыми состояниями, которые выполняются на биполярных или КМОП-структурах;
  • сравнительно высокое быстродействие микросхем на биполярных структурах (время доступа составляет единицы наносекунд), позволяющее работать синхронно с процессорами на частотах выше 500 МГц;
  • низкое энергопотребление КМОП-микросхем, обеспечивающее длительное хранение параметров системы ввода-вывода (BIOS);
  • сравнительно большие габариты микросхем и высокая стоимость , что связано с большим числом транзисторов и кластеризованным их размещением (используются кластеры из шести транзисторов);
  • типовой объем памяти микросхем SRAM достигает 1 Мбит и более;
  • основная область применения – кэш-память и память конфигурации компьютера.

Статическая память

Статическая память (SRAM ) обычно применяется в качестве кэш-памяти второго уровня (L2) для кэширования основного объема ОЗУ. Статическая память выполняется обычно на основе ТТЛ-, КМОП- или БиКМОП-микросхем и по способу доступа к данным может быть как асинхронной , так и синхронной . Асинхронным называется доступ к данным, который можно осуществлять в произвольный момент времени. Асинхронная SRAM применялась на материнских платах для третьего - пятого поколений процессоров. Время доступа к ячейкам такой памяти составляло от 15 нс (33 МГц) до 8 нс (66 МГц).

Синхронная память обеспечивает доступ к данным не в произвольные моменты времени, а одновременно (синхронно) с тактовыми импульсами. В промежутках между ними память может готовить для доступа следующую порцию данных. В большинстве материнских плат пятого поколения используется разновидность синхронной памяти - синхронно-конвейерная SRAM (Pipelined Burst SRAM), для которой типичное время одиночной операции чтения/записи составляет 3 такта, а групповая операция занимает 3-1 - 1 - 1 такта при первом обращении и 1 - 1 - 1 - 1 при последующих обращениях, что обеспечивает ускорение доступа более чем на 25 %.

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

Async SRAM (Асинхронная статическая память). Это кэш-память, которая используется в течение многих лет с тех пор, как появился первый 386-й компьютер с кэш-памятью второго уровня. Обращение к ней осуществляется быстрее, чем к DRAM, и может, в зависимости от скорости процессора, использовать варианты с 20-, 15- или 10-нс доступом (чем меньше время обращения к данным, тем быстрее память и тем короче может быть пакетный доступ к ней). Тем не менее, как видно из названия, эта память является недостаточно быстрой для синхронного доступа, что означает, что при обращении процессора все-таки требуется ожидание, хотя и меньшее, чем при использовании DRAM.

SyncBurst SRAM (Синхронная пакетная статическая память). При частотах шины, не превышающих 66 МГц, синхронная пакетная SRAM является наиболее быстрой из существующих видов памяти. Причина этого в том, что, если процессор работает на не слишком большой частоте, синхронная пакетная SRAM может обеспечить полностью синхронную выдачу данных, что означает отсутствие задержки при пакетном чтении процессором 2-1-1 - 1, т. е. синхронная пакетная SRAM выдает данные в пакетном цикле 2-1-1 - 1. Когда частота процессора становится больше 66 МГц, синхронная пакетная SRAM не справляется с нагрузкой и выдает данные пакетами по 3-2-2-2, что существенно медленнее, чем при использовании конвейерной пакетной SRAM. К недостаткам относится и то, что синхронная пакетная SRAM производится меньшим числом компаний и поэтому стоит дороже. Синхронная пакетная SRAM имеет время адрес/данные от 8,5 до 12 нс.

Существует несколько основных конструктивных особенностей синхронной пакетной SRAM, которые делают ее существенно превосходящей асинхронную SRAM при использовании в качестве высокоскоростной кэш-памяти:

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

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

Указанные особенности дают микропроцессору возможность более быстрого доступа к последовательным адресам, чем это можно сделать при других способах использования технологии SRAM. Хотя у некоторых поставщиков и имеется асинхронная SRAM 3.3V со временем таймер-данные, равным 15 нс, конвейерная синхронная пакетная SRAM, выполненная по такой же технологии, может обеспечить время таймер-данные менее 6 нс.

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

Благодаря этому такая память является наиболее быстрой кэш-памятью для систем с производительностью шины более 75 МГц. РВ SRAM может работать при частоте шины до 133 МГц. Она, кроме того, работает не намного медленнее, чем синхронная пакетная SRAM при использовании в медленных системах: она выдает данные все время пакетами по 3-1-1 - 1. Насколько высока производительность этой памяти, можно видеть по времени адрес/данные, которое составляет от 4,5 до 8 нс.

1-Т SRAM . Как уже отмечалось ранее, традиционные конструкции SRAM используют статический триггер для запоминания одного разряда (ячейки). Для реализации одной такой схемы на плате должно быть размещено от 4 до 6 транзисторов (4-Т, 6-Т SRAM). Фирма Monolithic System Technology (MoSys) объявила о создании нового типа памяти, в которой каждый разряд реализован на одном транзисторе (1-Т SRAM). Фактически здесь применяется технология DRAM, поскольку приходится осуществлять периодическую регенерацию памяти. Однако интерфейс с памятью выполнен в стандарте SRAM, при этом циклы регенерации скрыты от контроллера памяти. Схемы 1-Т позволяют снизить размер кремниевого кристалла на 50-80 % по сравнению с аналогичными для традиционных SRAM, а потребление электроэнергии - на 75 %.

Статическая оперативная память

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

1. Устройство триггера.

Для того чтобы понять принцип работы статической памяти, обратимся к истокам схемотехники. И начнем с описания принципа работы триггера, изображенного на рисунке 1.

Триггер – это элемент памяти с двумя стабильными состояниями – «0» и «1». В установленном состоянии триггер сохраняется, пока на него подается питание.

Обычно триггер имеет два входа:

  • R (Reset) – сбросить триггер (установить в состояние «0»),
  • S (Set) – установить триггер в состояние «1»,

и два выхода: Q и инвертированное Q ().

Входы R и S используются для установки состояния триггера. Если на вход S подать напряжение, соответствующее логической единице (далее просто логическую единицу), а на вход R – напряжение, соответствующее логическому нулю (далее просто логический ноль), то триггер перейдет в состояние единицы и сохранит это состояние даже, если на вход S перестать подавать сигнал.

Если на вход S подать логический ноль, а на вход R – логическую единицу, то триггер перейдет в состоянии сохранения нуля.

При подаче на оба входа логического нуля, состояние триггера не измениться.

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

В таблице 1 приводится перечень всех возможных состояний триггера.

S R Q i Q i+1 i i+1
1 0 0 1 1 0
1 0 1 1 0 0
0 1 0 0 1 1
0 1 1 0 0 1
0 0 0 0 1 1
0 0 1 1 0 0
1 1 0 ? 1 ?
1 1 1 ? 0 ?

Таблица 1. Состояния триггера, в зависимости от сигналов на входе.

Рассмотрев логику работы триггера, давайте разберемся, как же он устроен. Структурная схема триггера приведена на рисунке 2.

Как видно из рисунка, состоит он из двух инвертеров (логических элементов «НЕ»), причем выход одного инвертера замкнут на вход другого.

Давайте рассмотрим, как же работают эти инвертеры при подаче различных сигналов на вход.

Первый случай, на вход S подана логическая единица, а на вход R – логический ноль, то есть установка триггера в единичное состояние. И так, если на вход S подать логическую единицу, то, пройдя через инвертер D.D2, она примет значение логического нуля. Таким образом, на выходе будет логический ноль. На вход R был подан логический ноль, в результате, на выходе инвертера D.D1 будет логическая единица, а, соответственно, на выходе Q будет так же логическая единица.

Если сигналы с входов снять (на вход S и R подать логический ноль), то состояние триггера не изменится. Логическая единица с выхода инвертера D.D1 пойдет на вход инвертера D.D2, а логический ноль с выхода D.D2 пойдет на вход инвертера D.D1, в результате чего на выходе инвертера D.D1 будет логическая единица. То есть мы замкнули цикл, который будет продолжаться до тех пор, пока будет на триггер подводиться питание. Зачем нужно питание, рассмотрим чуть позже, когда будем разбирать принцип устройства инвертера.

Рассмотрим второй случай, когда на вход S подан логический ноль, а на вход R –логическая единица, то есть сброс триггера. И так, если на вход S подать логический ноль, то, пройдя через инвертер D.D2, он примет значение логической единицы. Таким образом, на выходе будет логическая единица. На вход R была подана логическая единица, в результате, на выходе инвертера D.D1 будет логический ноль, а, соответственно, на выходе Q будет тот же логический ноль.

Так же, как и в первом случае, при снятии сигналов с входов R и S состояние триггера не изменится.

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

На рисунке представлена простейшая схема реализации инвертера, состоящая из одного транзистора. Давайте рассмотрим, как он работает.

На элемент всегда подается питание Uп. В результате, создаваемый ток может пойти либо по линии AB, в этом случае на выходе инвертера ток будет отсутствовать (будет логический ноль), либо – по линии AC, в этом случае на выходе инвертера ток будет присутствовать (будет логическая единица).

По линии AB ток пойдет, если транзистор VT1 будет открыт, а для этого необходимо подать напряжение на вход инвертера.

По линии AC ток пойдет, если транзистор VT1 будет закрыт, а это произойдет при отсутствии напряжении на входе инвертера.

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

2. Устройство ячейки статической памяти.

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

На рисунке 4 приведена упрощенная схема одного из способов организации ячейки статической памяти.

Как видите, она состоит из одного триггера и трех транзисторов, выполняющих роль ключей, открывающих и закрывающих доступ к ячейке памяти. Транзисторы VT1 и VT2 используются для разрешения и запрета записи в ячейку, а транзистор VT3 – для разрешения и запрета чтения.

Для записи данных необходимо подать напряжение в линию строки, после чего транзисторы VT1, VT2 и VT3 откроются. Затем для записи единицы необходимо подать напряжение, соответствующее логической единице, на линию D и напряжение, соответствующее логическому нулю, на линию . Для переключения триггера в состояние хранения нуля необходимо подать напряжение, соответствующее логическому нулю, на линию D и напряжение, соответствующее логической единице, на линию .

В установленном состоянии триггер будет оставаться даже после снятия напряжения с линии строки и с линий D и до тех пор, пока на него будет подаваться питание Uп.

Для считывания данных необходимо на выходы D и подать напряжение, соответствующее логическому нулю, так как подача двух логических нулей на входы триггера не изменит его состояния, а затем подать напряжение на строку. В результате, транзистор VT3 откроется, и ток с триггера по линии Q пройдет в устройство считывания. Одновременно с транзистором VT3 откроются транзисторы VT1 и VT2. Но так как напряжение на линиях D и соответствует логическому нулю, то оно не повлияет на состояние транзистора.

Считывание данных с ячейки статической памяти, в отличие от чтения с ячейки динамической памяти, не приводит к потере сохраненного бита данных, поэтому, перезапись данных в ячейку статической памяти не требуется.

3. Устройство микросхемы статической памяти.

Давайте перейдем к следующему этапу изучения работы статической памяти и рассмотрим ее общую логику работы. Для этого обратимся к упрощенной структурной схеме статической памяти, изображенной на рисунке 5.

Начнем с записи данных в статическую память и рассмотрим случай записи единицы в ячейку М 11 .

В контроллер шины памяти от контроллера памяти, встроенного в северный мост материнской платы или в процессор , приходит адрес ячейки памяти и данные для записи. Адрес ячейки преобразуется на две составляющие – номер строки и номер столбца. Номер строки передается в «Дешифратор адреса строки», откуда на нужную строку подается напряжение.

Так как мы рассматриваем запись в ячейку М 11 , то напряжение с дешифратора адреса строки подается на первую строку. В результате, транзисторы VT1, VT2 и VT3 открываются. Аналогичные транзисторы других ячеек памяти, располагающихся в этой строке, также открываются.

Через транзистор VT3 первой ячейки и аналогичные транзисторы других ячеек памяти первой строки пойдет ток, соответствующий состоянию триггеров этих ячеек, в «Буфер данных». Однако «Буфер данных» получаемую информацию будет игнорировать, так как у него нет сигнала от «Блока управления» на сохранение считываемых данных.

Параллельно с подачей напряжения на строку матрицы памяти с «Блока работы с данными» будет выдано напряжение, соответствующее записываемым данным, в «Блоки записи 1 - m», а с «Блока дешифровки адреса столбца» на соответствующие столбцы будет выдано разрешение (напряжение, соответствующее логической единице) на запись данных.

Блоки записи используются для запрета выдачи тока в линии D и при чтении данных и преобразования из входящих сигналов данных их инвертируемых сигналов для переключения состояния триггеров, в которые необходимо сохранить данные.

В нашем случае, запись проводится в ячейку М 11 , и записывается единица. Соответственно, с «Блока работы с данными» будет выдана логическая единица в «Блок записи 1», и с «Блока дешифровки адреса столбца» будет выдана логическая единица в «Блок записи 1».

Рассмотрим работу «Блока записи 1» при таких входных сигналах. И так, на входе элемента D.D3 будет логическая единица, а на выходе – логический ноль, так как элемент D.D3 – инвертер (логический элемент «НЕ»). Соответственно, на входах элемента D.D4 (логический элемент «И») будут: логический ноль и логическая единица. В результате, на выходе этого элемента будет логический ноль.

На входах элемента D.D5 (логический элемент «И») будут две логические единицы, в результате, на выходе этого элемента будет логический ноль.

Следовательно, на выходе D1 «Блока записи 1» будет напряжение, соответствующее логическому нулю, а на выходе 1 будет напряжение, соответствующее логической единице. Эти напряжения будут поданы на все ячейки памяти первого столбца. Однако у всех ячеек, кроме первой, транзисторы, разрешающие запись, закрыты, а, следовательно, подаваемое напряжение попадет только на триггер первой ячейки и переведет его в состояние хранения единицы.

После изменения состояния триггера первой ячейки напряжение с первой строки снимается, и транзисторы VT1, VT2 и VT3 закрываются, запрещая запись и чтение из ячейки.

При записи нуля в ячейку памяти все происходит по той же схеме, только с «Блока работы с данными» в «Блок записи 1» будет подано напряжение, соответствующее логическому нулю. Это значит, что на выходе D1 «Блока записи 1» будет напряжение, соответствующее логической единице, а на выходе 1 будет напряжение, соответствующее логическому нулю. Эти значения напряжений переведут триггер первой ячейки памяти в состояние хранения нуля.

В установленном состоянии триггер первой ячейки останется, пока на него будет подаваться питание Uп.

Чтение записи происходит еще проще. От контроллера памяти приходит адрес ячеек памяти, с которых требуется считать данные, и команда на чтение.

В результате, адрес преобразуется в номер строки, и на соответствующую строку будет подано напряжение, которое откроет транзисторы разрешения/запрета чтения/записи.

Рассмотрим случай, когда данные считываются из первой ячейки. В этом случае напряжение с «Дешифратора адреса строки» будет подано в первую строку, что приведет к открытию транзисторов VT1, VT2 и VT3 ячейки М 11 и всех остальных ячеек первой строки. Ток с триггера первой ячейки, через транзистор VT1, беспрепятственно пройдет в «Буфер данных». То же самое произойдет с остальными ячейками первой строки. Считанные с ячеек памяти первой строки данные сохранятся в «Буфере данных».

После того, как информация в «Буфере данных» будет сохранена, «Дешифратор адреса столбцов» выдаст номера столбцов, данные с которых необходимо считать, в «Буфер данных». Соответствующие данные будут переданы из микросхемы памяти в контроллер памяти, располагающийся в материнской плате или непосредственно в процессоре.

Для того чтобы при чтении данных не происходила запись в эти же ячейки, ведь транзисторы, разрешающие запись, открыты, блоки записи выдают в линии D и всех столбцов матрицы памяти напряжение, соответствующее логическому нулю. Это происходит из-за того, что с блока дешифровки адреса столбцов выдается напряжение, соответствующее логическому нулю на все «Блоки записи».

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

4. Достоинства и недостатки статической памяти.

Достоинства:

  • высокая скорость работы;
  • нет необходимости регенерации ячеек.

Недостатки:

  • высокая цена;
  • низкая плотность упаковки;
  • небольшой объем;
  • высокое энергопотребление.

В связи с перечисленными выше достоинствами и недостатками, область применения статической памяти ограничивается, в основном, использованием ее в качестве КЭШ-памяти, что позволяет при небольшом увеличении стоимости уменьшить влияние недостатков динамической памяти на производительность ЭВМ. Однако, это все лишь компромисс, позволяющий несколько сгладить разрыв в производительности процессора и памяти, и все вытекающие отсюда последствия.

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


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

Двоичная SRAM

Рис. 1.

Типичная ячейка статической двоичной памяти (двоичный триггер) на КМОП-технологии состоит из двух перекрёстно (кольцом) включённых инверторов и ключевых транзисторов для обеспечения доступа к ячейке (рис. 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 описана в .

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

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

Троичная SRAM

Рис. 2. Проект троичной SRAM на трёхразрядных однозначных троичных триггерах

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

Преимущества

· Быстрый доступ. SRAM -- это действительно память произвольного доступа, доступ к любой ячейке памяти в любой момент занимает одно и то же время.

· Простая схемотехника -- SRAM не требуются сложные контроллеры.

· Возможны очень низкие частоты синхронизации, вплоть до полной остановки синхроимпульсов.

Недостатки

· Высокое энергопотребление.

· Невысокая плотность записи (шесть элементов на бит , вместо двух у DRAM).

· Вследствие чего -- дороговизна килобайта памяти.

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

Применение

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

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

DRAM (dynamic random access memory) -- тип энергозависимой полупроводниковой памяти с произвольным доступом (RAM), также запоминающее устройство, наиболее широко используемое в качестве ОЗУ современных компьютеров.

Физически память DRAM состоит из ячеек, созданных в полупроводниковом материале, в каждой из которых можно хранить определённый объём данных, от 1 до 4 бит. Совокупность ячеек такой памяти образуют условный «прямоугольник», состоящий из определённого количества строк и столбцов. Один такой «прямоугольник» называется страницей, а совокупность страниц называется банком. Весь набор ячеек условно делится на несколько областей.

Как запоминающее устройство, DRAM-память представляет собой модуль различных конструктивов, состоящий из электрической платы, на которой расположены микросхемы памяти и разъём, необходимый для подключения модуля к материнской плате.


Рис. 3. Рис. 3.1

Физически DRAM-память представляет собой набор запоминающих ячеек, которые состоят из конденсаторов и транзисторов, расположенных внутри полупроводниковых микросхем памяти.

При отсутствии подачи электроэнергии к памяти этого типа происходит разряд конденсаторов, и память опустошается (обнуляется). Для поддержания необходимого напряжения на обкладках конденсаторов ячеек и сохранения их содержимого, их необходимо периодически подзаряжать, прилагая к ним напряжения через коммутирующие транзисторные ключи. Такое динамическое поддержание заряда конденсатора является основополагающим принципом работы памяти типа DRAM. Конденсаторы заряжают в случае, когда в «ячейку» записывается единичный бит, и разряжают в случае, когда в «ячейку» необходимо записать нулевой бит.

Важным элементом памяти этого типа является чувствительный усилитель (англ. sense amp), подключенный к каждому из столбцов «прямоугольника». Он, реагируя на слабый поток электронов, устремившихся через открытые транзисторы с обкладок конденсаторов, считывает всю страницу целиком. Именно страница является минимальной порцией обмена с динамической памятью, потому что обмен данными с отдельно взятой ячейкой невозможен.

Регенерация

В отличие от статической памяти типа SRAM (англ. static random access memory), которая является конструктивно более сложным и более дорогим типом памяти и используется в основном в кэш-памяти, память DRAM изготавливается на основе конденсаторов небольшой ёмкости, которые быстро теряют заряд, поэтому информацию приходится обновлять через определённые промежутки времени во избежание потерь данных. Этот процесс называется регенерацией памяти. Он реализуется специальным контроллером, установленным на материнской плате или же на кристалле центрального процессора. На протяжении времени, называемого шагом регенерации, в DRAM перезаписывается целая строка ячеек, и через 8-64 мс обновляются все строки памяти.

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

память компьютерный триггер кэш

Триггеры

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

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

ОЗУ, собранное на триггерах, называется статической памятью с произвольным доступом или просто статической памятью. Достоинство этого вида памяти -- скорость. Поскольку триггеры собраны на вентилях, а время задержки вентиля очень мало, то и переключение состояния триггера происходит очень быстро. Данный вид памяти не лишён недостатков. Во-первых, группа транзисторов, входящих в состав триггера, обходится дороже, даже если они вытравляются миллионами на одной кремниевой подложке. Кроме того, группа транзисторов занимает гораздо больше места, поскольку между транзисторами, которые образуют триггер, должны быть вытравлены линии связи. Используется для сверхбыстрого ОЗУ.

Статическая память (SRAM) обычно применяется в качестве кэш-памяти второго уровня для кэширования основного объема ОЗУ. Статическая память выполняется обычно на основе ТТЛ-. КМОП- или БиКМОП-микросхем и по способу доступа к данным может быть как асинхронной, так и синхронной. Асинхронным назы­вается доступ к данным, который можно осуществлять в произволь­ный момент времени. Асинхронная SRAM применялась на мате­ринских платах для третьего - пятого поколений процессоров. Вре­мя доступа к ячейкам такой памяти составляло от 15 (33 МГц) до 8 нс (66 МГц).

Синхронная память обеспечивает доступ к данным не в произ­вольные моменты времени, а синхронно с тактовыми импульсами. В промежутках между ними память может готовить для доступа сле­дующую порцию данных. В большинстве материнских плат пятого поколения используется разновидность синхронной памяти - пакетно-конвейерная SRAM (Pipelined Burst SRAM), для которой ти­пичное время одиночной операции чтения/записи составляет 3 так­та, а групповая операция занимает 3-1-1-1 такта при первом обра­щении и 1-1-1-1 при последующих обращениях, что обеспечивает ускорение доступа более чем на 25 %.

Async SRAM (Асинхронная статическая память). Это кэш-па­мять, которая используется в течение многих лет с тех пор, как поя­вился первый 386-й компьютер с кэш-памятью второго уровня. Об­ращение к ней производится быстрее, чем к DRAM, и могут, в за­висимости от скорости ЦП, использоваться варианты с доступом за 20, 15 или 10 нс (чем меньше время обращения к данным, тем быст­рее память и тем короче может быть пакетный доступ к ней). Тем не менее, как видно из названия, эта память является недостаточно быстрой для синхронного доступа, что означает, что для обращения ЦП все-таки требуется ожидание, хотя и меньшее, чем при исполь­зовании DRAM.

SyncBurst SRAM (Синхронная пакетная статическая память). При частотах шины, не превышающих 66 МГц, синхронная пакет­ная SRAM является наиболее быстрой из существующих видов па­мяти. Причина этого в том, что, если ЦП работает на не слишком большой частоте, синхронная пакетная SRAM может обеспечить полностью синхронную выдачу данных, что означает отсутствие за­держки при пакетном чтении ЦП 2-1-1-1. Когда частота ЦП стано­вится больше 66 МГц, синхронная пакетная SRAM не справляется с нагрузкой и выдает данные пакетами по 3-2-2-2, что существенно медленнее, чем при использовании конвейерной пакетной SRAM. К недостаткам относится и то, что синхронная пакетная SRAM про­изводится меньшим числом компаний и поэтому стоит дороже.

Синхронная пакетная SRAM имеет время адрес/данные от 8,5 до 12 не.

РВ SRAM (Конвейерная пакетная статическая память). Конвей­ер - распараллеливание операций SRAM с использованием вход­ных и выходных регистров. Заполнение регистров требует дополни­тельного начального цикла, но, будучи заполненными, регистры обеспечивают быстрый переход к следующему адресу за то время, пока по текущему адресу считываются данные.

Благодаря этому такая память является наиболее быстрой кэш-памятью для систем с производительностью шины более 75 МГц. РВ SRAM может работать при частоте шины до 133 МГц. Она, кроме того, работает ненамного медленнее, чем синхронная пакетная SRAM при использовании в медленных системах: она вы­дает данные пакетами по 3-1-1-1 все время. Время адрес/данные со­ставляет от 4,5 до 8 нс.

1-Т SRAM. Традиционные конструкции SRAM используют для запоминания одного разряда (ячейки) статический триггер. Для реа­лизации одной такой схемы на плате должно быть размещено от че­тырех до шести транзисторов (4-Т, 6-Т SRAM). Фирма Monolithic System Technology (MoSys) объявила о создании нового типа памя­ти, в которой каждый разряд реализован на одном транзисторе (1-Т SRAM). Фактически здесь применяется технология DRAM, по­скольку приходится осуществлять периодическую регенерацию па­мяти. Однако интерфейс с памятью выполнен в стандарте SRAM, при этом циклы регенерации скрыты от контроллера памяти. Схе­мы 1-Т позволяют снизить размер кремниевого кристалла на 50-80 % по сравнению с аналогичными для SRAM, а потребление электроэнергии - на 75 %.

    Системы видеопамяти

Известны следующие типы видеопамяти (табл. 2.1, здесь отражены также некоторые из вышеперечисленных универсальных сиетем памяти). VRAM (Video RAM - видеоОЗУ) - так называемая двухпортовая DRAM. Этот тип памяти обеспечивает доступ к данным со стороны сразу двух устройств, т. е. есть возможность одновременно писать данные в какую-либо ячейку памяти и одновременно с этим читать данные из какой-нибудь соседней ячейки. За счет этого по­зволяет совмещать во времени вывод изображения на экран и его обработку в видеопамяти, что сокращает задержки при доступе и увеличивает скорость работы.

WRAM (Window RAM) - вариант VRAM, с увеличенной на -25 % пропускной способностью и поддержкой некоторых часто применяемых функций, таких как отображение шрифтов, переме­щение блоков изображения и т. п. Применяется практически только на акселераторах фирм Matrox и Number Nine, поскольку требует специальных методов доступа и обработки данных, наличие всего одного производителя данного типа памяти (Samsung) сильно со­кратило возможности ее использования. Видеоадаптеры, построен­ные с использованием данного типа памяти, не имеют тенденции к падению производительности при установке больших разрешений и частот обновления экрана.

SGRAM (Synchronous Graphics RAM - синхронное графическое ОЗУ) - вариант DRAM с синхронным доступом. В принципе, ра­бота SGRAM полностью аналогична SDRAM, но дополнительно поддерживаются еще некоторые специфические функции, типа бло­ковой и масочной записи. В отличие от VRAM и WRAM, SGRAM является однопортовой, однако может открывать две страницы па­мяти как одну, эмулируя двухпортовость других типов видеопамяти.

MDRAM (Multibank DRAM - многобанковое ОЗУ) - вариант DRAM, разработанный фирмой MoSys, организованный в виде множества независимых банков объемом по 32 Кбайт каждый, ра­ботающих в конвейерном режиме, и использующий распараллели­вание операций доступа к данным между большим количеством банков памяти.