Добрый день.
В данный момент пишу модуль под ПЛИС Altera в среде Quartus 7.2. Все инструменты родные (то есть не используется возможность подключения внешних синтезаторов, фиттеров и прочего).
У меня такой вопрос. Я создал проект. Создал файлы с описанием функциональных единиц. Задал требуемую fmax. Поставил тип оптимизации "Speed". Поставил все советуемые Ассистентом настройки компилятора и фиттера.
Проект компилируется, прогоняется через Classic Timing Analizer. Анализатор сообщает, что получившаяся прошивка удовлетворяет временным требованиям.
Но часто еще на этапе симуляции симулятор выдает сообщения о превышении th (оптимизация th вдоль всех путей включена). При прошивке в ПЛИС в качестве выходного результата получается бред (не всегда, но зависит от компиляции - то все хорошо, то все не очень хорошо).
Входной клок идет на ФАПЧ с коэфициентом 1:1. Все блоки дезайна сделаны синхронными и тактируются с выхода ФАПЧ.
Существует клок входных данных, совпадающий по частоте с входным. Входные данные через память переводятся в клоковую область выхода ФАПЧ.
Все клоки (кроме PLL) описаны как клоки в Assignments manager.
Загрузка ПЛИС - 10%.
Основной вопрос: что я делаю не так?
Подпункт 1: Почему при проверке анализатором все хорошо, но при симуляции и в реальной работе все плохо?
Подпункт 2: Возможно стоит задавать еще какие-то требования?