Логический блок

редактировать

перепрограммируемая компьютерная аппаратная технология

В вычислениях логический блок или конфигурируемый логический блок (CLB) является фундаментальным строительным блоком технологии программируемой вентильной матрицы (FPGA). Логические блоки могут быть сконфигурированы инженером для предоставления реконфигурируемых логических вентилей..

Логические блоки являются наиболее распространенной архитектурой FPGA и обычно размещаются в массиве логических блоков. Логическим блокам требуются площадки ввода / вывода (для взаимодействия с внешними сигналами) и каналы маршрутизации (для соединения логических блоков).

Программируемые логические блоки были изобретены Дэвидом У. Пейджем и Луверном Р. Петерсоном и определены в их патентах 1985 года.

Содержание
  • 1 Приложения
  • 2 Архитектура
    • 2.1 3D-архитектура
  • 3 Внешний ввод / вывод
  • 4 Маршрутизация
  • 5 Жесткие блоки
  • 6 Тактовые сигналы
  • 7 Ссылки
  • 8 См. Также
Приложения

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

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

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

Архитектура
Упрощенный пример иллюстрации логической ячейки

Как правило, логический блок состоит из нескольких логических ячеек (называемых ALM, LE, Slice и т. Д.). Типичная ячейка состоит из 4-входного LUT, полного сумматора (FA) и D-типа триггера, как показано справа. LUT на этом рисунке разделены на две LUT с 3 входами. В нормальном режиме они объединяются в LUT с 4 входами через левый мультиплексор. В арифметическом режиме их выходы подаются на ТВС. Выбор режима программируется в среднем мультиплексоре. Выход может быть синхронным или асинхронным, в зависимости от программирования мультиплексора справа, как показано на рисунке. На практике вся или части FA помещаются в LUT как функции для экономии места.

Логические блоки обычно содержат несколько ALM / LE / Slices. ALM и срезы обычно содержат 2 или 4 структуры, аналогичные рисунку в примере, с некоторыми общими сигналами.

В последние годы производители начали переходить на 6-входные LUT в своих высокопроизводительных компонентах, заявляя о повышении производительности.

3D-архитектура

Для уменьшения размера и энергопотребления Что касается FPGA, то такие производители, как Tabula и Xilinx, представили новые трехмерные или многослойные архитектуры. После выпуска своих 28-нанометровых ПЛИС серии 7 компания Xilinx сообщила, что некоторые из деталей с самой высокой плотностью в этих линейках продуктов ПЛИС будут построены с использованием нескольких матриц в одном корпусе с использованием технологии, разработанной для трехмерной конструкции и сборок с набором кристаллов. Технология устанавливает несколько (три или четыре) активных кристалла ПЛИС бок о бок на кремниевом переходнике - едином кремниевом элементе, несущем пассивное межсоединение. Конструкция с несколькими кристаллами также позволяет создавать разные части ПЛИС с использованием различных технологий обработки, поскольку требования к процессу различаются для самой матрицы ПЛИС и высокоскоростных последовательных трансиверов 28 Гбит / с. ПЛИС, построенная таким образом, называется гетерогенной ПЛИС.

Внешний ввод / вывод
Расположение выводов логического блока

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

В этом примере архитектуры расположение выводов логического блока FPGA показано справа.

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

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

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

Маршрутизация

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

Топология переключателя

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

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

Жесткие блоки

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

ПЛИС более высокого уровня могут содержать высокоскоростные мультигигабитные трансиверы и жесткие IP-ядра, такие как ядра процессора, Ethernet MAC, PCI / Контроллеры PCI Express и контроллеры внешней памяти. Эти ядра существуют вместе с программируемой структурой, но они построены из транзисторов вместо LUT, поэтому они имеют производительность и энергопотребление на уровне ASIC, не потребляя при этом значительного количества ресурсов фабрики, оставляя большую часть фабрики свободной для логики, зависящей от приложения. Мультигигабитные трансиверы также содержат высокопроизводительные аналоговые схемы ввода и вывода, а также высокоскоростные сериализаторы и десериализаторы, компоненты, которые не могут быть построены из LUT. Функциональные возможности уровня PHY более высокого уровня, такие как строковое кодирование, могут или не могут быть реализованы вместе с сериализаторами и десериализаторами в жесткой логике, в зависимости от FPGA.

Тактовые сигналы

Большинство схем, встроенных в ПЛИС, являются синхронными схемами, которым требуется тактовый сигнал. ПЛИС содержат выделенные глобальные и региональные сети маршрутизации для синхронизации и сброса, поэтому они могут быть доставлены с минимальным перекосом. Кроме того, ПЛИС обычно содержат аналоговые компоненты PLL и / или DLL для синтеза новых тактовых частот, а также для уменьшения джиттера. Сложные конструкции могут использовать несколько тактовых генераторов с разными частотными и фазовыми соотношениями, каждый из которых формирует отдельные тактовые области. Эти тактовые сигналы могут генерироваться локально генератором или могут быть восстановлены из высокоскоростного последовательного потока данных. При построении схемы пересечения тактовой области необходимо соблюдать осторожность, чтобы избежать метастабильности. ПЛИС обычно содержат блочные ОЗУ, которые могут работать как двухпортовые ОЗУ с разными тактовыми частотами, помогая в создании FIFO и двухпортовых буферов, которые соединяют разные тактовые области.

Ссылки
См. Также
Последняя правка сделана 2021-05-28 05:32:28
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте