Логический синтез

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

В компьютерной инженерии логический синтез представляет собой процесс, посредством которого абстрактная спецификация желаемого поведения схемы схемы, обычно на уровне передачи регистров (RTL), превращается в проектную реализацию с точки зрения логических вентилей, обычно с помощью компьютерной программы, называемой инструментом синтеза. Общие примеры этого процесса включают синтез проектов, указанных на языках описания оборудования, включая VHDL и Verilog. Некоторые инструменты синтеза генерируют битовые потоки для программируемых логических устройств, таких как PAL или FPGA, в то время как другие нацелены на создание ASIC. Логический синтез - один из аспектов автоматизации проектирования электроники.

Содержание
  • 1 История логического синтеза
  • 2 Логические элементы
  • 3 Синтез высокого уровня или поведенческий синтез
  • 4 Минимизация многоуровневой логики
  • 5 См. Также
  • 6 Сноски
  • 7 Ссылки
  • 8 Дополнительная литература
История логического синтеза

Корни логического синтеза можно проследить до обращения с логикой с помощью Джордж Буль (1815–1864), в том, что теперь называется булевой алгеброй. В 1938 году Клод Шеннон показал, что двузначная булева алгебра может описывать работу коммутационных схем. В первые дни логический дизайн включал манипулирование представлениями таблицы истинности как картами Карно. Минимизация логики на основе карт Карно руководствуется набором правил того, как записи в картах могут быть объединены. Дизайнер-человек обычно может работать только с картами Карно, содержащими от четырех до шести переменных.

Первым шагом к автоматизации логической минимизации было введение алгоритма Куайна – Маккласки, который можно было реализовать на компьютере. Этот точный метод минимизации представил понятие основных импликантов и минимальных затрат, которые стали бы краеугольным камнем двухуровневой минимизации. В настоящее время стандартным инструментом для этой операции стал гораздо более эффективный эвристический минимизатор логики Espresso. Другой областью ранних исследований была минимизация состояний и кодирование конечных автоматов (FSM), задача, которая была проклятием для дизайнеров. Приложения для логического синтеза лежат в первую очередь в проектировании цифровых компьютеров. Следовательно, IBM и Bell Labs сыграли ключевую роль в ранней автоматизации логического синтеза. Эволюция от компонентов дискретной логики к массивам программируемой логики (PLA) ускорила потребность в эффективной двухуровневой минимизации, поскольку минимизация членов в двухуровневом представлении уменьшает площадь в PLA.

Однако двухуровневые логические схемы имеют ограниченное значение в конструкции очень крупномасштабной интеграции (СБИС); в большинстве проектов используется несколько уровней логики. Фактически, почти любое представление схемы в RTL или Behavioral Description является многоуровневым представлением. Первой системой, которая использовалась для разработки многоуровневых схем, была LSS от IBM. Он использовал локальные преобразования для упрощения логики. Работа над LSS и Yorktown Silicon Compiler стимулировала быстрый прогресс исследований в области логического синтеза в 1980-х годах. Несколько университетов внесли свой вклад, сделав свои исследования доступными для общественности, в первую очередь SIS из Университета Калифорнии, Беркли, RASP из Калифорнийского университета, Лос-Анджелес и BOLD из Университета Колорадо, Боулдер. В течение десятилетия технология перекочевала на продукты коммерческого логического синтеза, предлагаемые компаниями, занимающимися автоматизацией электронного проектирования.

Логические элементы

Логический дизайн - это этап стандартного цикла проектирования, на котором функциональный дизайн электронной схемы преобразуется в представление который захватывает логические операции, арифметические операции, поток управления и т. д. Обычным результатом этого шага является RTL-описание. За логическим проектированием обычно следует этап проектирования схем. В современной автоматизации проектирования электроники части логического проектирования могут быть автоматизированы с использованием инструментов высокоуровневого синтеза, основанных на поведенческом описании схемы.

Различные представления логических операций

Логические операции обычно состоят из логических операций И, ИЛИ, ИСКЛЮЧАЮЩЕЕ ИЛИ и И-НЕ и являются основными формами операций в электронной схеме. Арифметические операции обычно реализуются с использованием логических операторов.

Синтез высокого уровня или поведенческий синтез

С целью повышения продуктивности проектировщиков исследовательские усилия по синтезу схем, заданных на поведенческом уровне, привели к появлению коммерческих решений в 2004 году, которые используются для проектирования сложных ASIC и FPGA. Эти инструменты автоматически синтезируют схемы, указанные с использованием языков высокого уровня, таких как ANSI C / C ++ или SystemC, в спецификацию уровня передачи регистров (RTL), которая может использоваться в качестве входных данных для потока логического синтеза на уровне вентилей. При использовании высокоуровневого синтеза, также известного как синтез ESL, распределение работы по тактовым циклам и по структурным компонентам, таким как ALU с плавающей запятой, выполняется компилятором с использованием процедуры оптимизации, тогда как с помощью логического синтеза RTL (даже из поведенческих Verilog или VHDL, где поток выполнения может выполнять несколько операций чтения и записи в переменную за один такт), эти решения о распределении уже приняты.

Минимизация многоуровневой логики

Типичные практические реализации логической функции используют многоуровневую сеть логических элементов. Начиная с RTL-описания проекта, инструмент синтеза конструирует соответствующую многоуровневую логическую сеть.

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

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

.

См. Также
Сноски
  1. ^«Синтез: Verilog to Gates» (PDF).
  2. ^Навид А. Шервани (1999). Алгоритмы автоматизации физического проектирования СБИС (3-е изд.). Kluwer Academic Publishers. п. 4. ISBN 978-0-7923-8393-2.
  3. ^ EETimes: развертывание высокоуровневого синтеза позволяет использовать ESL
Справочная информация
  • Руководство по автоматизации проектирования электронных схем для интегральных схем, Лаваньо, Мартин и Шеффер, ISBN 0-8493-3096-3 Обзор области автоматизации электронного проектирования. Приведенное выше резюме было взято с разрешения тома 2, главы 2, Логический синтез Сунила Хатри и Нарендры Шеной.
  • Последовательный подход в логическом синтезе для архитектур FPGA, Бургун Люк, Грейнер Ален и Прадо Lopes Eudes, Proceedings of the International Conference on Asic (ASICON), Pekin, October 1994, pp. 104–107.
Дополнительная литература
  • Джи-Хонг (Роланд) Цзян, Шринивас Девадас (2009). «Логический синтез в двух словах». Ин Лаунг-Тернг Ван; Яо-Вэнь Чанг; Кван-Тинг Ченг (ред.). Автоматизация электронного проектирования: синтез, проверка, испытания. Морган Кауфманн. ISBN 978-0-12-374364-0. глава 6.
  • Гэри Д..... Хачтель; Фабио Соменци (1996). Алгоритмы логического синтеза и проверки. Springer. ISBN 0-7923-9746-0.также опубликовано как softcover ISBN 0-387-31004-5 в 2006 г.
  • Соха Хассун ; Цутому Сасао, ред. (2002). Логический синтез и проверка. Kluwer. ISBN 978-0-7923-7606-4.
Последняя правка сделана 2021-05-28 05:32:47
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте