Как я и обещал ранее, я начал перевод некоторых глав из книги Samir Palnitkar, "Verilog HDL, A Guide to Digital Design and Synthesis". Это вольный перевод, так как я не являюсь профессиональным переводчиком. Переводить я буду не все, а только то, что мне кажется интересным или небходимым. Итак, "Обзор цифрового проектирования с языком Verilog HDL"
Часть 1. Обзор цифрового проектирования с языком Verilog HDL.
1.1 Эволюция компьютеризированных средств разработки цифровых схем.
Разработка цифровых схем развивалась особенно быстро последние 25 лет. Самые первые цифровые схемы были разработаны еще на вакуумных лампах, а затем на транзисторах. Потом были изобретены интегральные схемы, в которых логические элементы были упакованы в чип. Первые интегральные схемы (IC) назывались SSI (Small Scale Integration) и количество элементов (gates) в них было очень мало. Когда технологии усовершенствовались, разработчики смогли уместить уже сотни элементов в одном чипе. Эти микросхемы назывались MSI (Medium Scale Integration). С внедрением LSI (Large Scale Integration) разработчики могли уже уместить тысячи элементов в одной микросхеме. Уже с этого момента разработка микросхем стала непомерно сложной задачей, и разработчики задумались о необходимости автоматизации процесса разработки чипов. Начали развиваться системы автоматизации разработки (EDA – Electronic Design Automation). Разработчики начали использовать технологии моделирования (simulation) логических схем, чтобы проверить функциональность отдельных блоков. Тем не менее, схемы все еще тестировались на макетных платах, а разводка производилась на бумаге или на графических компьютерных терминалах.
С внедрением технологии VLSI (Very Large Scale Integration) разработчики могли использовать более 100.000 транзисторов. Из-за сложности таких цепей их уже было невозможно проверить на макетных платах. Использование компьютеризированных технологий проверки VLSI схем становилось все более критически важным. Компьютерные программы для автоматического размещения и трассировки элементов схем становились все популярнее. Тогда разработчики начали «рисовать» цифровые схемы в графических терминалах. Они могли разрабатывать небольшие блоки, которые затем использовались в более крупных проектах. Этот процесс разработки блоков от мелких к крупным продолжался до тех пор, пока не был разработан блок самого верхнего уровня (top-level block). Появилась логическое моделирование, чтобы проверить схемы, до того как они будут произведены на фабрике в виде чипа.
Так как проекты становились все более сложными, логическое моделирование было признано необходимым в процессе разработки. Проектировщики могли выявить баги в функциональности уже на ранних стадиях разработки.
1.2 Необходимость HDLs (Hardware Design Language).
Длительное время языки программирования такие как FORTRAN, Pascal, C использовались для описания компьютерных программ, которые по своей природе были последовательными. Аналогично, в сфере цифрового дизайна разработчики увидели необходимость в создании своего стандартного языка для описания цифровых схем. Так появились языки описания цифровых схем – Hardware Design Languages. Языки HDL позволяли описывать одновременные процессы происходящие в цифровых элементах. Языки описания аппаратуры Verilog(R) и VHDL стали популярны. Verilog HDL появился где-то в 1983 в компании Gateway Design Automation. Позднее был разработан VHDL по контракту из DARPA. Использование обоих Verilog и VHDL для симулирования больших цифровых схем было быстро воспринято разработчиками.
Несмотря на популярность новых языков для проектирования и проверки логики цифровых схем, разработчикам все еще приходилось в дальнейшем вручную переводить проекты с языков HDL в схемы цепей и соединения между элементами. Изобретение логического синтеза в конце 80х годов позволило радикально изменить методику проектирования. Цифровые схемы могут быть описаны на уровне перемещения данных из регистра в регистр (Register Transfer Level - RTL) с использованием языков HDL. Разработчики описывают, как данные перетекают из регистров в регистры и как они обрабатываются в схеме. Детальное представление проекта\схемы на уровне элементов (gates) и соединения между ними автоматически выделяется позднее из RTL описания средствами логического синтеза.
HDL так же начали использоваться в проектироании на уровне систем. HDL стал использоваться для симуляции системных плат, шин передачи данных, FPGA (Field Programmable Gate Arrays) и PAL (Programmable Array Logic). В результате оказалось, что с помощью HDL можно проектировать любые микросхемы и проверять их функциональность путем моделирования.
Сегодня Verilog HDL - это принятый IEEE стандарт. В 1995 был утвержден оригинальный стандарт IEEE 1364-1995. Последний стандарт IEEE 1364-2001 значительно улучшен по сравнению с первоначальным.
Подробнее...