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