HDL - это язык описания оборудования, язык программирования, используемый для разработки микросхем. Двумя основными из них являются Verilog и VHDL.

Взято из GJ Lipovsky, "Hardware Description Languages: Voices from the Babel Tower", Computer, Vol. 10, No. 6, июнь 1977 г., стр. 14-17. Бумага доступна здесь.

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

Адаптировано из руководства по языку описания оборудования с небольшими изменениями:

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

Три распространенных HDL - это Verilog, VHDL и SystemC. Из них SystemC является новейшим. HDL обеспечат быстрое проектирование и лучшую проверку. В большинстве отраслей используются Verilog и VHDL. Verilog, один из основных языков описания оборудования, стандартизованный как IEEE 1364, используется для проектирования всех типов схем. Он состоит из модулей, а язык поддерживает поведение, поток данных и структурное описание. VHDL (язык описания аппаратного обеспечения высокоскоростных интегральных схем) стандартизирован IEEE 1164. Проект состоит из объектов, состоящих из нескольких архитектур. SystemC - это язык, состоящий из набора классов и макросов C++. Это позволяет моделировать электронные системы и транзакции.

Потребность в ЛПВП

Закон Мура 1970 года произвел коренные изменения в области ИС-технологий. Это изменение заставило разработчиков создать сложные цифровые и электронные схемы. Но проблема заключалась в отсутствии лучшего языка программирования, позволяющего кодировать аппаратное и программное обеспечение. Сложные конструкции цифровых схем требуют больше времени на разработку, синтез, моделирование и отладку. Появление HDL помогло решить эту проблему, позволив работать над каждым модулем отдельной команде.

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

Преимущества HDL

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