Я получил проект verilog с ключевым компонентом, в котором он зашифрован.Как записать синхронизацию SDC зашифровать зашифрованный код Verilog?
Производительность на FPGA варьируется в зависимости от среды сборки и конфигурации [Примечание 1], и я подозреваю, что это вызвано недостаточными временными ограничениями [Примечание 2].
В анализаторе времени TimeQuest я могу видеть имена контактов, сетей, регистров, портов в зашифрованном ядре, но, не глядя на фактический код, я не знаю точно, что они означают.
Итак, как мне начать писать ограничение синхронизации SDC в этой ситуации?
Примечание 1:
Компонент является MIPI-CSI2 TX. На тестовой стороне RX я постоянно получаю ошибку SoT (ошибка SoT и синхронизация не достигнуты), а иногда и ошибки ECC.
Некоторое время, чтобы заставить его «работать» с FPGA, код должен быть построен на Windows-машине. Затем в код вводятся несколько незначительных и несвязанных изменений, они могут работать, если они построены на машине Linux. В последнее время машина для сборки Linux работает лучше, чем машина Windows.
Также изменение параметров оптимизации, по-видимому, очень сильно нарушает код. Например. в настоящее время работает только режим «Сбалансированный». Режимы «Производительность» и «Агрессивная производительность», которые должны повысить производительность, вызывают много ошибок в принимаемых сигналах. Содержимое памяти блока обработки восходящего потока также влияет на MIPI-CSI2 TX таким образом.
Прежде всего заставьте меня думать, что существуют неопределенности, которые не полностью ограничены ограничениями времени SDC.
Примечание 2:
Я не в состоянии полностью проверить эту теорию, потому что не было оборудования для полного тестового сигнала, я не мог сделать моделирование ворота уровня, так как зашифрованный код делает не позволяйте мне создавать список соединений EDA.
Я предполагаю, что использовал неправильный язык («недостаточное ограничение времени»), в то время как я действительно имел в виду «неполное ограничение времени». В моем случае мое ядро TX зашифровано, но файл ограничения времени верхнего уровня не имеет никаких ограничений для него. Я мог ошибаться, но я не думаю, что это вообще сдерживается. Я читал AN433 Альтера. Но мне кажется, что мне нужно знать точный узел, на который часы подают выход, чтобы указать минимальную задержку выхода. – user3528438
Итак, Altera Quartus продолжайте так. Если вы можете открыть проект в графическом интерфейсе, а затем использовать TimeQuest. В меню «Задачи» вам необходимо установить рабочее состояние. Не имеет значения, какая температура, просто выберите один. Есть несколько способов сделать это, но вы получите идею, запустите задачу Datasheet отчета. Затем в отчете вы увидите список отчетов в разделе «Минимальные часы» для вывода выводов. Внутри вы увидите список выходов и связанную с ними привязку часов. Надеюсь, это поможет. –