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

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

История логического синтеза

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

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

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

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

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

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

Логические операции обычно состоят из логических операций AND, OR, XOR и NAND и являются наиболее основными формами операций в электронной схеме. Арифметические операции обычно реализуются с использованием логических операторов.

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

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

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

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

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

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

Смотрите также

использованная литература

  • Руководство по автоматизации проектирования электроники для интегральных схем , составленное Лаваньо, Мартином и Шеффером, ISBN  0-8493-3096-3 Обзор области автоматизации проектирования электроники . Вышеприведенное резюме было взято с разрешения главы 2 тома 2 « Логический синтез » Сунила Хатри и Нарендры Шеной.

дальнейшее чтение

  • Бургун, Люк; Грейнер, Ален; Прадо Лопес Эдес (октябрь 1994 г.). «Последовательный подход в логическом синтезе для архитектур FPGA». Материалы Международной конференции по ASIC (ASICON) . Пекин: 104–107.
  • Цзян, Цзе-Хун «Роланд»; Девадас, Шринивас (2009). «Глава 6: Логический синтез в двух словах». Ин Ван, Лаунг-Тернг; Чанг, Яо-Вэнь; Cheng, Kwang-Ting (ред.). Автоматизация электронного проектирования: синтез, проверка, испытания . Морган Кауфманн. ISBN 978-0-12-374364-0.
  • Hachtel, Gary D .; Соменци, Фабио (2006) [1996]. Алгоритмы логического синтеза и проверки . Springer Science & Business Media . ISBN 0-7923-9746-0. ISBN  0-387-31004-5 .
  • Хассун, Соха ; Сасао, Цутому, ред. (2002). Логический синтез и проверка . Kluwer. ISBN 978-0-7923-7606-4.
  • Perkowski, Marek A .; Григель, Станислав (1995-11-20). «6. Исторический обзор исследований разложения». Обзор литературы по разложению функций (PDF) . Версия IV. Группа функциональной декомпозиции, Департамент электротехники, Портлендский университет, Портленд, Орегон, США. CiteSeerX  10.1.1.64.1129 . Архивировано (PDF) из оригинала 28 марта 2021 года . Проверено 28 марта 2021 . (188 стр.)
  • Станкович, Радомир С .; Сасао, Цутому; Астола, Яакко Т. (август 2001 г.). «Публикации за первые двадцать лет теории переключений и логического проектирования» (PDF) . Серии Международного центра обработки сигналов Тампере (TICSP). Технологический университет Тампере / TTKK, Монистамо, Финляндия. ISSN  1456-2774 . S2CID  62319288 . №14. Архивировано (PDF) из оригинала на 2017-08-09 . Проверено 28 марта 2021 . (4 + 60 страниц)