Altifigence Academy

23 / 24 · Теория

Измерьте производительность и проверьте проект

Задавайте окна наблюдения, диагностируйте остановки и ограничивайте выводы модели.

Перепроверьте числовые и временные требования

Правильное вычисление — лишь часть завершения. Проверяйте допуск входов, сохранение при остановках, конечное опустошение и границы сброса. Сообщайте окно наблюдения, принятые входы, выданные выходы, остановки входа/выхода и задержки транзакций. Предъявленные входы, отклонённые полным буфером, не должны считаться завершённой работой.

Пусть двенадцать результатов передаются между моментами сразу после фронта 0 и сразу после фронта 20 — окно из двадцати тактовых интервалов. Наблюдаемая пропускная способность — 0.6 транзакции за такт. При периоде пять наносекунд окно — 100 ns, скорость — 120 миллионов транзакций в секунду. Отличайте эту наблюдаемую скорость от структурного максимума без остановок 200 миллионов. Редкая выработка и частые остановки приёмника требуют разных исправлений при одинаковых скоростях.

Связывайте выдачу с приёмом по меткам. Tag7, принятый на фронте 4 и выданный на фронте 11, имеет задержку семь тактов, или 35 ns. Это превышает трёхтактовую задержку итогового проекта без остановок, не означая потерю. Записывайте диапазон или таблицу элементов, а не одно среднее. Утверждения о фиксированной задержке относятся только к путям без остановок.

НаблюдениеВозможная причинаЧто исследовать дальше
FIFO часто полнаМедленный приёмник или следующая ступеньOutput-ready и valid ступеней
Выход часто пустРедкие входы или пустые тактыПринятые входы и движение ступеней
Длинный путь readyМного комбинационных связей буферовВременные характеристики реализации
Неверный порядок метокРассогласование сопутствующих полейМетки и valid ступеней

Более глубокая буферизация поглощает всплески, но может увеличить ожидание. Установившаяся заполненность, частота поступления и время пребывания связаны; не применяйте установившиеся средние слепо к коротким окнам заполнения, опустошения или отмены.

Проверьте разрядности, знаковость, сужение, движение valid, замену, отмену сбросом, время памяти и правила зависимостей. Успех Node устанавливает выполнение целочисленной модели, а не компиляцию HDL или время размещённой схемы. Для расширений, например насыщения, кодов операций или ответов памяти, меняйте спецификацию и эталонные проверки вместе. Расширение тракта данных должно сохранять хранение, приём и интерпретацию наряду с добавлением оператора.

Попробуйте сами

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

Прочитать объяснение

Пропускная способность — 0.6 транзакции/такт. Окно 200 ns даёт 150 миллионов транзакций/секунду. Задержка tag3 — семь тактов, или 28 ns. Сообщайте наблюдения отдельно от максимальной производительности без остановок.

Выбор действует в этом браузере. Его можно изменить внизу страницы.