Почему задержки не синтезируются в Verilog? - PullRequest
0 голосов
/ 14 февраля 2019

Я пытаюсь понять, что происходит за кулисами в Verilog.Почему задержки не синтезируются в Verilog?Что-то происходит с фактическим синтезом ворот, которые этому препятствуют?

Ответы [ 2 ]

0 голосов
/ 14 февраля 2019

Почему не синтезируются задержки

Поскольку задержки, как известно, сложно реализовать.

Для начала: ячейка задержки имеет огромный диапазон.В зависимости от напряжения и температуры и даже больше: в процессе, фактическая задержка может варьироваться в 2 и более раз.В Verilog очень просто указать задержку в 2 нс, это очень, очень трудно сделать, и в настоящее время (почти?) Невозможно реализовать в кремнии без каких-либо эталонных часов.Я могу представить, что если кто-то сделает задержки синтезируемыми, вы должны указать их как (min, typ, max) задержки.

Места, где вы находите задержки, находятся в ячейках ввода-вывода, высокоскоростных портах ser-des, интерфейсе DDR и т. Д. В них есть калибровка или какая-либо другая схема обучения для управления задержкой.Даже тогда вы обнаружите, что регулярная калибровка необходима для компенсации дрейфа из-за температуры и напряжения.

Если у вас есть ПЛИС, это становится еще сложнее.Как вы можете видеть из времени, большая часть задержки в настоящее время находится в сетях.Таким образом, если вы хотите задержку в 2 нс, вы должны вычесть задержку из ячейки задержки и обратно.Это снова работает только в том случае, если задержка приводит только к одному шлюзу.Если вам нужно управлять несколькими конечными точками, задержка для каждой будет отличаться, если только вам не повезет, что каждый путь имеет одинаковую задержку (длина, сопротивление и емкость.)

Кроме того, вам нужен программируемая ячейка задержки.Я понятия не имею, насколько большими они будут, какой диапазон (какова задержка в 2 секунды?) Или сколько вам нужно.

Итог: сообщество ASIC / FPGA обнаружило, что задержки вызывают больше проблем, чем онирешать.Это один из тех «коротких путей», которые в большинстве случаев оказываются «тупиковыми».

0 голосов
/ 14 февраля 2019

Потому что инструменты синтеза RTL решили остаться в цифровой области функциональности.Задержки синтеза требуют знания аналоговых характеристик и деталей реализации.

Принцип работы инструментов синтеза заключается в том, что они сначала принимают описание RTL и генерируют наборы булевых уравнений.Невозможно представить задержку в булевой алгебре.

...