Логический синтез в цифровой электронике

Опубликовано: 25 Сентября, 2022

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

Запрограммированное производство логических компонентов в конкретной цифровой схеме, которая может включать различные сложные комбинации логических элементов и транзисторов. Если цифровой образец находится на уровне регистрации-передачи логический синтез, а затем преобразовать его в реализацию Gate-Level . Он играет важную роль в устранении разрыва и связывании высокоуровневого синтеза и механизации физического проектирования.

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

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

Недостатки существующей системы:

  1. Код и логические схемы приходилось писать вручную на бумаге.
  2. Существовало ограничение на количество переменных, которые можно было использовать в логическом проекте.
  3. Мог только проектировать очень маленькие и простые конструкции, которые не могли решать сложные задачи.

Необходимость логического синтеза:

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

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

Развитие Logic Design привело к сокращению цикла проектирования ASIC.

ASIC Дизайн:

Проектирование ASIC — это процедура снижения стоимости и размера электронной схемы за счет сокращения и интеграции различных видов электронных микросхем в один единственный элемент, который называется — специализированная интегральная схема.

Цикл проектирования ASIC включает в себя такие этапы, как:

  1. Концепция дизайна
  2. Оптимизация чипа
  3. Логическая и физическая реализация
  4. Утверждение и проверка дизайна.
  1. Спецификация чипа: определены микроархитектура, спецификации, функциональные возможности и функции.
  2. Функциональная проверка: запуск моделирования на уровне проекта и проверка функциональности схемы.
  3. Синтез блока RTL: Преобразование кода RTL в список соединений на уровне шлюза путем логического синтеза при ограничениях.
  4. Разделение микросхемы: микросхема разделена на множество функциональных блоков, связанных друг с другом в иерархическом порядке таким образом, чтобы микросхема была энергоэффективной, занимала небольшую площадь и была недорогой.
  5. Планировка этажа: это план физической реализации чипа.
  6. Синтез дерева часов: настройка дерева часов и просмотр предопределенных временных параметров, требований к мощности и площади.
  7. Окончательная проверка: последний шаг физической проверки — просто проверить, есть ли какие-либо ошибки в цепи.
    Цикл проектирования ASIC

Предпосылка для синтеза логического вентиля:

  1. Мы должны знать, что хотим, чтобы мы хотели, как выход
  2. Определить характеристики цепи
  3. Мы должны знать его эффективность, частоту, используемую мощность, время, размер и возможность изготовления.
  4. Какая технология должна быть реализована для синтеза.
  5. Поместите дизайн в виде кода Verilog, который называется RTL.

RTL: уровень передачи регистра:

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

Например, операторы if-then-else могут использоваться для выполнения контролируемых функций, которые можно комбинировать вместе для выполнения сложной операции. Он используется для создания высокоуровневых представлений цепей.

Логический дизайн:

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

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

Например, сложение, вычитание, умножение (повторное сложение), инвертирование и т. д.

Существует семь типов логических вентилей:

  1. И ВОРОТА
  2. ИЛИ ВОРОТА
  3. НЕ ВОРОТА
  4. НАНД ВОРОТА
  5. НО ВОРОТА
  6. ВОРОТА ИСКЛЮЧАЮЩИЕ
  7. СЕВЕРНЫЕ ВОРОТА

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

Цели логического синтеза:

  1. Минимизируйте размер числа ячеек логического вентиля и размер ячейки
  2. Минимизируйте мощность при переключении между гейтами
  3. Максимальная производительность с точки зрения тактовой производительности синхронных систем и пропускной способности асинхронных
  4. Быстрое создание точных функциональных моделей
  5. Получение предсказуемых и точных результатов. Расчеты временной области и энергопотребления должны соответствовать фактическим значениям, измеренным на физическом устройстве после его изготовления.

Поток логического синтеза:

  1. Анализ синтаксиса: принимает входные данные HDL-файлов и проверяет наличие синтаксических ошибок.
  2. Определение библиотеки: Предоставляет и распределяет стандартные ячейки и библиотеки IP.
  3. Разработка и связывание: переводит RTL в логическую структуру. Связывает все ячейки и делает библиотеки доступными.
  4. Определение ограничения: для создания специализированного и конкретного чипа нам необходимо определить ограничения, в соответствии с которыми чип будет функционировать. Например, тактовая частота, энергоэффективность и т. д.
  5. Оптимизация перед сопоставлением: выполняется сопоставление с общими ячейками в библиотеке.
  6. Сопоставление технологий: выполняет сопоставление универсальных библиотек с технологическими библиотеками.
  7. Оптимизация после сопоставления: изменяет дизайн ворот в соответствии с ограничениями.
  8. Отчет и экспорт: Выдайте конечные результаты с отчетами о времени и экспорте.

Реализация логического синтеза:

1. ИЛИ Мультиплексор:

/*Register transfer Language*/
module OR (i, j, s0, s1, k);
     input [3:0] i;
     input [3:0] j;
     input s0, s1;
     output [3:0] k;
     reg k;
always @ (i or j or s0 or s1)
     if (!s0 && s1 || s0)
             k=i;
     else
             k=j;
endmodule

2. Полный сумматор:

/*Register Transfer Language*/
module fulladder (input [3:0] a,
            input [3:0] b,
            input c_in,
            output c_out,
            output [3:0] sum);
assign {c_out, sum} = a+b+c_in;
endmodule