Открыть сервисСервис

Двухпортовая SRAM

Двухпортовая SRAM (англ. Dual-Port SRAM) — это разновидность статической оперативной памяти (SRAM), которая позволяет двум независимым устройствам (например, двум процессорам или контроллерам) одновременно обращаться к одной и той же ячейке памяти по разным портам. В отличие от однопортовой SRAM, где чтение и запись возможны только последовательно, двухпортовая архитектура обеспечивает параллельный доступ, что существенно повышает производительность в многопроцессорных системах, коммуникационных устройствах и буферах FIFO.

Принцип работы

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

Режимы доступа

  • Чтение одного порта, запись через другой: Наиболее распространённый сценарий, используемый в видео- и сетевых буферах, где один процессор или контроллер DMA пишет данные, а другой читает.
  • Одновременное чтение через оба порта: Возможно при обращении к разным ячейкам или при чтении одной и той же ячейки (данные будут доставлены обоим портам целостно).
  • Одновременная запись через оба порта: При попытке записи разных данных в одну и ту же ячейку возникает конфликт. Современные микросхемы двухпортовой SRAM либо блокируют вторую запись (с индикацией ошибки через специальный вывод), либо используют арбитраж, при котором одна из транзакций откладывается.

Архитектура и организация памяти

Внутренняя организация двухпортовой SRAM во многом повторяет классическую матричную структуру запоминающих устройств, однако добавляет дублированные схемы:

  • Декодеры адреса: Каждый порт имеет собственный декодер, преобразующий адресную шину в управляющие сигналы для выбора строки или столбца.
  • Усилители считывания и буферы записи: Для каждого порта существуют отдельные усилители считывания (Sense Amplifier) и буферы данных, что исключает взаимное влияние.
  • Матрица ячеек: Ячейки двухпортовой SRAM содержат больше транзисторов, чем однопортовые (обычно 8T вместо 6T), что увеличивает площадь кристалла, но обеспечивает изоляцию сигналов разных портов.

Виды двухпортовой SRAM по ширине шины

  • Симметричная (транспарантная): Оба порта имеют идентичную разрядность (например, 16 бит каждый). Используется для общих задач.
  • Асимметричная (с разными портами данных): Один порт может быть 32-битным, другой – 16-битным. Такая конфигурация востребована в системах с разной пропускной способностью (например, быстрый процессор и медленная периферия).

Применение

Двухпортовая SRAM широко применяется в областях, где требуется высокая скорость обработки данных и избежание простоев из-за блокировок памяти.

Сетевые коммутаторы и маршрутизаторы

В оборудовании связи двухпортовая SRAM используется для построения таблиц MAC-адресов и буферизации пакетов. Например, в коммутаторе Ethernet два порта позволяют одновременно записывать входящий пакет от одного порта и считывать ранее сохранённый пакет для отправки на другой. Это критически важно для работы на скорости линии (wire-speed).

Видео- и графические буферы

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

FIFO-буферы

Двухпортовая SRAM является основой для микросхем FIFO (First-In, First-Out — «первым пришёл, первым ушёл»). В такой конфигурации один порт всегда используется только для записи, а другой — только для чтения, что автоматически разрешает конфликты доступа. FIFO на двухпортовой SRAM применяется в последовательных интерфейсах, обработке потоковых данных и межпроцессорном взаимодействии.

Многопроцессорные системы и кэш-память

В многоядерных процессорах двухпортовая SRAM может использоваться для организации общей кэш-памяти (shared cache) или в качестве когерентного буфера. Одно ядро может записывать данные, а другое — считывать их, не дожидаясь завершения операции первого, что снижает задержки.

Преимущества и недостатки

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

  • Параллелизм: Два независимых одновременных обращения повышают пропускную способность.
  • Низкая задержка: В отличие от DRAM, SRAM не требует регенерации, поэтому задержка доступа составляет 1–2 такта.
  • Нетребовательность к тактированию: Работает асинхронно по отношению к тактовым сигналам, что упрощает интеграцию.
  • Энергонезависимость (в определённой степени): Данные сохраняются при отключении питания (при условии сохранения подачи напряжения на ячейки).

Недостатки

  • Высокая стоимость на бит: Из-за большего количества транзисторов на ячейку (8T вместо 6T) стоимость производства выше, чем у однопортовой SRAM.
  • Большая площадь кристалла: Двухпортовая SRAM занимает примерно на 30–50 % больше площади, чем однопортовая аналогичного объёма.
  • Ограничения по ёмкости: Типичные микросхемы двухпортовой SRAM выпускаются объёмом до нескольких десятков мегабит, что ниже, чем у DRAM.
  • Конфликты доступа: При одновременной записи в одну ячейку требуются дополнительные механизмы арбитража или блокировки.

Сравнение с другими типами памяти

ПараметрДвухпортовая SRAMОднопортовая SRAMFIFO (на SRAM)
Количество портов доступа212 (фиксированная роль)
Максимальная частота200–400 МГц200–600 МГц200–400 МГц
Потребляемая мощностьВыше (дублирование схем)УмереннаяУмеренная
Сложность управленияСредняяНизкаяНизкая

Производители

Основные мировые производители двухпортовой SRAM включают компании Cypress Semiconductor (ныне Infineon Technologies), Integrated Device Technology (IDT, также в составе Renesas), GSI Technology и Alliance Memory. Продукция этих компаний широко представлена на рынке сверхнадёжной электроники, телекоммуникационного оборудования и промышленных контроллеров.

Источники

  • Hodges, D. A., Jackson, H. G., «Analysis and Design of Digital Integrated Circuits», McGraw-Hill, 2004.
  • Техническая документация Cypress Semiconductor (Infineon) на семейство CY7C083xx.
  • «SRAM Design. Dual-Port vs. Single-Port. A Comparison», GSI Technology Application Note, 2019.
  • Weste, N., Harris, D., «CMOS VLSI Design: A Circuits and Systems Perspective», Addison-Wesley, 2010.
Заметили ошибку или не согласны с информацией в статье? Напишите нам support@bfometr.ru