Как уже написали, совметсное использование нескольких языков сводистя к возможости подключения модулей, написанных на любом языке. В 95% случаев все достаточно прямолинейно: вставляется модуль с идентичными именами портов. При этом если модуль написан на VHDL и вставляется в Verilog, то в портах лучше ограничиться использованием стандартных типов. Оствшиеся 5% сильно зависят от конкретного используемого софта. Некоторые правила могут быть описаны в мануале. Вот несколько примеров таких особенностей без конкретики: 1) Чувствительность к регистру в портах; 2) Возможность вставки в VHDL без объявления компонента; 3) Связка generic VHDL и parameter Verilog. По последнему пункту несколько подробнее, т.к. это самое странное, с чем сталкивался. NC Verilog, по всей видимости, при вставке в VHDL модуля, написанного на Verilog, связывает generic и parameter только позиционно. То есть важен порядок объявления парвметров в Verilog и порядок строк в generic map VHDL. Значение из первой строки generic map всегда присвоится первому параметру, из второй - второму и т.д. На имена в generic map софт не обращает внимания.
|