Этот пример показывает верификацию Манчестерского энкодера с помощью смешанных языков HDL, VHDL и Verilog. Манчестерское кодирование является простой схемой модуляции, которая преобразовывает основополосные цифровые данные в закодированную форму волны без компонента DC. Наиболее широко известное приложение этого метода является Ethernet.
Эта модель моделирует чисто-цифровой получатель закодированных данных Манчестера. Получатель реализован в VHDL/Verilog. Получатель использует простой механизм восстановления тактового сигнала DLL, который требует, чтобы несколько циклов заблокировали с входящим потоком данных. Производительность получателя исследуется путем применения фазы и ошибок частоты к случайным образом сгенерированному потоку битов, который закодирован с помощью простой функции MATLAB®: manchesterencoder ().
Фактический код VHDL/Verilog запустит в ModelSim®/Incisive® использование блока cosimulation, названного "Смешанный Приемник манчестерского кода HDL"
В этом примере реализации VHDL используются для более низких блоков уровня, и главная реализация блока находится в Verilog. Связи установлены с некоторыми сигналами в Verilog и другими в VHDL через панель портов блока EDA Simulator Link. Несмотря на различия в языках HDL, синтаксис для связей сопоставим. Также важно заметить, что панель портов используется здесь, чтобы соединиться с сигналами HDL, которые не являются на самом деле портами в модуле верхнего уровня. На самом деле связи могут быть установлены с сигналами на любом уровне иерархии HDL HDL Verifier cosimulation блок.
Языки использовали для реализаций блоков HDL:
верхний уровень (Манчестер): Verilog
декодер: VHDL
конвертер IQ: VHDL
счетчик состояния: VHDL
Фактический код VHDL и Verilog запустится в симуляторе HDL, и его выполнение будет рассматриваться в Simulink как поведение Ссылки Средства моделирования EDA cosimulation блок, названный "Смешанный Приемник манчестерского кода HDL".
Откройте ModelSim® модель на разных языках.
Откройте Incisive® модель на разных языках.