Меню
Публикации
2026
2025
2024
2023
2022
2021
2020
2019
2018
2017
2016
2015
2014
2013
2012
2011
2010
2009
2008
2007
2006
2005
2004
2003
2002
2001
Главный редактор
НИКИФОРОВ
Владимир Олегович
д.т.н., профессор
Партнеры
doi: 10.17586/2226-1494-2026-26-2-378-384
УДК 004.436.2
Анализ эффективности оптимизации поведенческих описаний аппаратуры в логических синтезаторах для FPGA
Читать статью полностью
Язык статьи - русский
Ссылка для цитирования:
Аннотация
Ссылка для цитирования:
Андрейченко Л.В., Антонов А.А., Кустарев П.В. Анализ эффективности оптимизации поведенческих описаний аппаратуры в логических синтезаторах для FPGA // Научно-технический вестник информационных технологий, механики и оптики. 2026. Т. 26, № 2. С. 378–384. doi: 10.17586/2226-1494-2026-26-2-378-384
Аннотация
Введение. Рассмотрена проблема выбора оптимального уровня описания при проектировании цифровых схем на языках описания аппаратуры (Hardware Description Language, HDL). Актуальность исследования обусловлена тем, что ручная оптимизация дизайна для улучшения его характеристик часто вступает в противоречие с сохранением читабельности, конфигурируемости и сжатыми сроками на разработку. При этом конструкции, идиомы поведенческого описания аппаратуры, предлагаемые современными HDL, поддержаны оптимизирующими логическими синтезаторами в современных системах автоматизированного проектирования (САПР) программируемых вентильных матриц (Field-Programmable Gate Array, FPGA) с разным уровнем качества. Существующие наборы оценочных тестов (бенчмарков) зачастую фокусируются на интегральных показателях производительности, не позволяя детально оценить качество конкретных механизмов трансформации кода. В работе выполнен сравнительный анализ современных САПР FPGA и создание набора рекомендаций для эффективного использования HDL без ущерба качеству синтезированных решений. Метод. Исследование проводится в несколько этапов. На первом этапе проводится классификация известных методов оптимизации, применяемых при трансформации проекта на языке Verilog/SystemVerilog в структурное представление. На базе полученной классификации разрабатываются синтетические тесты, ориентированные на проверку оптимизаций, относящихся к конкретным классам. Данные тесты представляют собой пары эквивалентных по поведению описаний цифровых схем, одно из которых оптимизировано вручную, а во второе введена избыточность посредством использования конкретных конструкций языка Verilog/SystemVerilog и/или идиом поведенческого описания. Разница в характеристиках данных реализаций позволяет сделать вывод об уровне эффективности САПР в применении соответствующих оптимизаций. Основные результаты. Предложена трехуровневая классификация оптимизаций поведенческих описаний аппаратуры. В рамках данной классификации разработан тестовый набор из 19 тестов, выборочно направленных на оценку оптимизаций, принадлежащих разным уровням предложенной классификации. Данные тесты применены для ряда современных САПР FPGA (Vivado, Quartus, Yosys). Демонстрируется последовательное снижение эффективности применения идиом кодирования при их приближении к поведенческому уровню описания, причем с повышением уровня усиливаются различия между разными САПР. Существенное падение качества результата наблюдается при оценке оптимизации поведения на уровне множественных тактов синхросигнала. На основе полученных результатов сформулированы практические рекомендации для разработчиков цифровой аппаратуры по стилю написания HDL-кода, позволяющие максимально эффективно использовать возможности конкретных синтезаторов. Обсуждение. Результаты работы позволяют выделить общее «ядро» HDL и идиом описания логики без ущерба качеству синтезируемой аппаратуры, а также определить перспективные направления дальнейшего совершенствования синтезаторов и HDL.
Ключевые слова: САПР, FPGA, HDL, Verilog, SystemVerilog, логический синтез, поведенческий синтез
Список литературы
Список литературы
1. Wei R.-S., Sangiovanni-Vincentelli A. PLATYPUS: A PLA test pattern generation tool // Proc. of the 22nd ACM/IEEE Design Automation Conference. 1985. P. 197-203. https://doi.org/10.1109/dac.1985.1585935
2. Krakow W.T. The MCNC design initiative program // Proc. of the 8th University/Government/Industry Microelectronics Symposium. 1989. P. 35–39. https://doi.org/10.1109/UGIM.1989.37294
3. McElvain K. IWLS'93 benchmark set: version 4.0 // Distributed as part of the MCNC International Workshop on Logic Synthesis' 93 benchmark distribution. 1993.
4. Hansen M.C., Yalcin H., Hayes J.P. Unveiling the ISCAS-85 benchmarks: A case study in reverse engineering // Proc. of the IEEE Design & Test of Computers. 1999. V. 16. N 3. P. 72–80. https://doi.org/10.1109/54.785838
5. Brglez F., Bryan D., Kozminski K. Notes on the ISCAS'89 Benchmark Circuits. Technical report // Microelectronics Center of North Carolina. 1989. P. 1929–1934.
6. Albrecht C. IWLS 2005 benchmarks // International Workshop for Logic Synthesis (IWLS). 2005. V. 9.
7. Amarú L., Gaillardon P.E., De Micheli G. The EPFL combinational benchmark suite // Hypotenuse. 2015. V. 256. N 128. P. 214335.
8. Abi-Karam S., Sarkar R., Seigler A., Lowe S., Wei Z., Chen H., et al. HLSFactory: a framework empowering high-level synthesis datasets for machine learning and beyond // Proc. of the ACM/IEEE 6th Symposium on Machine Learning for CAD (MLCAD). 2024. P. 1–9. https://doi.org/10.1109/MLCAD62225.2024.10740213
9. Goswami P., Shahshahani M., Bhatia D. MLSBench: A synthesizable dataset of HLS designs to support ML based design flows // Proc. of the 2020 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays. 2020. P. 312. https://doi.org/10.1145/3373087.3375378
10. Wanna A., Chen H., Hao C. ForgeBench: a machine learning benchmark suite and auto-generation framework for next-generation HLS tools // arXiv. 2025. arXiv:2504.15185. https://doi.org/10.48550/arXiv.2504.15185
11. Bai Y., Cong J., Hu Z., Qin Z., Sohrabizadeh A., Sun Y. Towards a comprehensive benchmark for high-level synthesis targeted to FPGAs // Proc. of the 37th Conference on Neural Information Processing Systems. 2023. V. 36. P. 45288–45299. https://doi.org/10.52202/075280-1962
12. Scarabottolo I., Ansaloni G., Constantinides G.A., Pozzi L., Reda S. Approximate logic synthesis: a survey // Proceedings of the IEEE. 2020. V. 108. N 12. P. 2195–2213. https://doi.org/10.1109/JPROC.2020.3014430
13. Hu H., Cai S. OPTDTALS: approximate logic synthesis via optimal decision trees approach // arXiv. 2024. arXiv:2408.12304. https://doi.org/10.48550/arXiv.2408.12304
14. Lööw A. The simulation semantics of synthesisable Verilog // Proc. of the ACM on Programming Languages. 2025. V. 9. N OOPSLA1. P. 1295–1320. https://doi.org/10.1145/3720484

