Меню
Главная
Авторизация/Регистрация
 
Главная arrow Товароведение arrow Электроника

Программируемые пользователем вентильные матрицы (FPGA)

Структура программируемых пользователем вентильных матриц FPGA похожа на структуру канальных БМК (см. рис. 4.32, а). В их внутренней области, так же как у канального БМК, размещается множество регулярно расположенных ячеек – логических блоков, между которыми проходят трассировочные каналы, а на периферии кристалла расположены ячейки другого типа – блоки ввода/вывода. Современные микросхемы FPGA содержат и другие узлы, но знакомство с архитектурой этого класса СБИС начнем с их классической структуры.

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

В качестве ЛБ используются:

  • • транзисторные пары, простейшие логические схемы "И-FIE", "ИЛИ-HE" и т.п. Такие ЛБ называются SLC (Simple Logic Cells, простые логические цепи);
  • • логические модули на основе мультиплексоров;
  • • табличные логические модули на основе программируемых ПЗУ, такие ЛБ называют LUTs {Look-Up Tables, таблицы поиска).

Двумя основными характеристиками ЛБ являются их "зернистость" (Granularity) и "функциональность" (Functionality). Эти характеристики противоречивы: чем ниже свойства ЛБ, характеризуемые одной из них, тем выше будут его свойства, характеризуемые другой. "Зернистость" связана с тем, насколько "мелкими" будут те части, из которых можно "собирать" нужные схемы, а "функциональность" – с тем, насколько велики логические возможности ЛБ.

Примером наиболее мелкозернистого может служить ЛБ, который содержит цепочки транзисторов с р- и n- каналами (рис. 4.35, а). Между цепочками транзисторов имеются трассировочные каналы, в которых могут быть реализованы необходимые межсоединения элементов. Каждая пара транзисторов (обведена на рис. 4.35, а пунктиром) представляет собой комплементарную пару, из которых можно строить простейшие логические схемы "И-НЕ", "ИЛИ-HE" в КМОП-логике. Принцип построения таких схем был подробно рассмотрен в параграфе 3.4. Чтобы "разорвать" цепочки транзисторов, на затворы транзисторов одной из пар подаются запирающие напряжения: напряжение питания – на верхний и корпус – на нижний. При этом транзисторы, находящиеся слева и справа от них, становятся изолированными друг от друга. Затем из полученных элементарных логических схем путем выполнения необходимых межсоединений осуществляется построение более сложных логических устройств.

Примеры логических блоков

Рис. 4.35. Примеры логических блоков:

а – мелкозернистый; б крупнозернистый; в – обозначение входов и выходов у мультиплексора "2–1"

Мелкозернистость ЛБ ведет к большой гибкости их использования. В то же время мелкозернистость усложняет систему межсоединений FPGA из-за большого числа программируемых точек связи.

Примером более крупного логического блока, используемого в FPGA, может служить ЛБ, состоящий из трех мультиплексоров "2–1" и элемента "ИЛИ" (рис. 4.35, 6). Подключая к входам такого Л Б переменные и константы, можно получить комбинационные функции двух переменных, многие функции четырех переменных и некоторые функции большего числа переменных, вплоть до восьми.

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

Табличные логические модули представляют собой программируемые ПЗУ. Само ППЗУ уподобляется таблице истинности функции, в которой каждая строка – ячейка ППЗУ – соответствует какому-то набору аргументов, т.е. аргументы логической функции служат адресом при выборе ячейки ПЗУ. При программировании в таблицу истинности заносятся значения функции, которые она должна принимать на каждом наборе. Такие табличные преобразователи могут реализовывать любые логические функции п аргументов, где п – разрядность адреса ППЗУ.

Самые сложные ЛБ, используемые в FPGA, могут содержать в своем составе несколько табличных преобразователей на основе ППЗУ, набор мультиплексоров и триггеров. На основе таких ЛБ можно реализовывать достаточно сложные логические устройства с большим числом аргументов.

 
Если Вы заметили ошибку в тексте выделите слово и нажмите Shift + Enter
< Предыдущая   СОДЕРЖАНИЕ   Следующая >
 

Популярные страницы