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

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

Исходный код и схематическое представление устройства после синтеза

Синтез на уровне регистровых передач править

Синтез описания на уровне логических передач широко используется в индустрии. Спецификация, написанная на языке описания аппаратуры, таком как VHDL или Verilog может содержать комбинаторные и синхронные элементы, образующие операционный автомат, и конечные автоматы, выполняющие функции управляющего автомата.[1] Синтез состоит из двух этапов. На первом этапе программа оптимизирует код независимо от используемой технологии, производя необходимые минимизации и упрощения. На втором этапе проект преобразовывается в соответствии с библиотекой компонентов используемой технологии.[2]

Высокоуровневый синтез править

Синтез описаний на высоких уровнях абстракции, написанных на языках высокого уровня (таких как C/C++ и SystemC), давно является объектом интенсивной разработки. Такой подход к проектированию логических устройств позволяет экономить время и разрабатывать аппаратное обеспечение без знания языков описания аппаратуры. Первые коммерческие программы, поддерживающие синтез высокоуровневого описания, появились в 2004 году.[3] В настоящее время высокоуровневый синтез набирает популярность[4][5][6] и развивается благодаря появлению таких продуктов, как Vivado ESL от Xilinx.[7]

Коммерческие инструменты для логического синтеза править

Программы для работы с интегральными схемами специального назначения править

Программы для работы с программируемой логикой править

Примечания править

  1. Samary Baranov. Logic and System Design of Digital Systems. — TUT Press, 2008. — С. 35—36. — 368 с. — ISBN 978-9-9855-9769-9.
  2. Donald E. Thomas, Philip R. Moorby. Register Transfer Level Synthesis // The Verilog® Hardware Description Language. — Axel Springer AG, 2002. — С. 35—36. — 381 с. — ISBN 978-1-4020-7089-1. Архивировано 4 декабря 2014 года.
  3. EETimes: High-level synthesis rollouts enable ESL (недоступная ссылка)
  4. Ozgul, B.; Langer, J.; Noguera, J.; Visses, K. Software-programmable digital pre-distortion on the Zynq SoC (англ.) // International Conference on Very Large Scale Integration (VLSI-SoC) : сборник. — Стамбул, 2013.
  5. van de Belt, J. ; Sutton, P.D. ; Doyle, L.E. Accelerating software radio: Iris on the Zynq SoC, (англ.) // International Conference on Very Large Scale Integration (VLSI-SoC) : сборник. — Стамбул, 2013.
  6. Monson, J.; Wirthlin, M.; Hutchings, B.L.,. Implementing high-performance, low-power FPGA-based optical flow accelerators in C (англ.) // International Conference on Application-Specific Systems, Architectures and Processors (ASAP) : сборник. — Вашингтон, 2013.
  7. Xilinx. Vivado ESL Design (англ.). Xilinx. Дата обращения: 11 февраля 2014. Архивировано 22 февраля 2014 года.

Литература править