Перейти к содержанию
    

Компиляция VHDL в Квартусе

Господа!

Возник у меня вопрос по поводу корректности работы компилятора VHDL (и фиттера?) в Quartus 6.0.

 

Симптом: компиляция куска проекта на VHDL проходит нормально, код проверен несколько раз. Тайм аналайзер не дает ни ошибок, ни предупрежедений. Симуляция же показывает неправильное функционирование схемы...

Однако же если в настройках фиттера поменять занчения "Placement effort multiplier" и " Route effort multiplier" на 2.0 (вместо 1.0), то компиляция и тайминг аналайзер проходят также хорошо, но симулятор показывает полную работоспособность кода... :blink:

Просто озадачен, раньше при схемном вводе такого не замечал...

 

Удивительно, но получается, что "шаманские настройки" очень сильно влияют на работоспособность проекта. Даже подумать страшно о перспективах сборки всего проекта, поскольку придется подбирать "волшебные числа"...

 

Основной вопрос конечно же не в управлении качеством синтеза, вопрос в том, как формально по результатам компиляции и тайм-анализа судить о работоспособности схемы. Это реально без симулятора судить о гарантированной работоспособности (или неработоспособности) каждой из частей проекта после сборки, если каждая из частей проверялась по-отдельности до того?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот что сказано в хелпе Квартуса по поводу "Placement effort multiplier" :

 

"Values between 0 and 1 can reduce fitting time, but also can reduce placement quality and design performance. Values greater than 1 increase placement time and placement quality, but may reduce routing time for designs with routing congestion. For example, a value of 4 will increase fitting time by approximately 2 to 4 times, but may increase quality"

 

Очень похоже на то, что когда эти параметры равны 1 (по умолчанию), то задержки между отдельными узлами, которые получились у Квартуса после разводки, превышают некоторое критическое значение для той тактовой частоты, на который велось моделирование.

 

Задавайте констрайны на размещение. Или уменьшайте логику между регистрами, вводите конвееризацию.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Симптом: компиляция куска проекта на VHDL проходит нормально, код проверен несколько раз. Тайм аналайзер не дает ни ошибок, ни предупрежедений. Симуляция же показывает неправильное функционирование схемы...

Однако же если в настройках фиттера поменять занчения "Placement effort multiplier" и " Route effort multiplier" на 2.0 (вместо 1.0), то компиляция и тайминг аналайзер проходят также хорошо, но симулятор показывает полную работоспособность кода... :blink:

Просто озадачен, раньше при схемном вводе такого не замечал...

 

Удивительно, но получается, что "шаманские настройки" очень сильно влияют на работоспособность проекта. Даже подумать страшно о перспективах сборки всего проекта, поскольку придется подбирать "волшебные числа"...

 

Основной вопрос конечно же не в управлении качеством синтеза, вопрос в том, как формально по результатам компиляции и тайм-анализа судить о работоспособности схемы. Это реально без симулятора судить о гарантированной работоспособности (или неработоспособности) каждой из частей проекта после сборки, если каждая из частей проверялась по-отдельности до того?

 

Если вы желаете получить осмысленный ответ, то следует правильно ставить вопрос. Уж во всяком случае следовало бы пояснить, что у вас за проект, какая ПЛИС, какая рабочая частота, сколько ресурсов занято, в чем проявляется неработоспособность, и т. п.

А из того, что вы написали, можно предположить, что все ваши проблемы связаны с наличием асинхронностей в проекте. В этом случае данные временного анализа могут быть непоказательны, а настройки фиттера будут сильно влиять на работу. Наверно в симуляторе можно выясинть причины неработоспособности при неудачной разводке и переписать слабое место.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Симптом: компиляция куска проекта на VHDL проходит нормально, код проверен несколько раз. Тайм аналайзер не дает ни ошибок, ни предупрежедений. Симуляция же показывает неправильное функционирование схемы...

Однако же если в настройках фиттера поменять занчения "Placement effort multiplier" и " Route effort multiplier" на 2.0 (вместо 1.0), то компиляция и тайминг аналайзер проходят также хорошо, но симулятор показывает полную работоспособность кода... :blink:

Просто озадачен, раньше при схемном вводе такого не замечал...

 

Удивительно, но получается, что "шаманские настройки" очень сильно влияют на работоспособность проекта. Даже подумать страшно о перспективах сборки всего проекта, поскольку придется подбирать "волшебные числа"...

 

Основной вопрос конечно же не в управлении качеством синтеза, вопрос в том, как формально по результатам компиляции и тайм-анализа судить о работоспособности схемы. Это реально без симулятора судить о гарантированной работоспособности (или неработоспособности) каждой из частей проекта после сборки, если каждая из частей проверялась по-отдельности до того?

 

Если вы желаете получить осмысленный ответ, то следует правильно ставить вопрос. Уж во всяком случае следовало бы пояснить, что у вас за проект, какая ПЛИС, какая рабочая частота, сколько ресурсов занято, в чем проявляется неработоспособность, и т. п.

А из того, что вы написали, можно предположить, что все ваши проблемы связаны с наличием асинхронностей в проекте. В этом случае данные временного анализа могут быть непоказательны, а настройки фиттера будут сильно влиять на работу. Наверно в симуляторе можно выясинть причины неработоспособности при неудачной разводке и переписать слабое место.

 

Полностью поддерживаю. Похоже на асинхронность , в чистом виде или при переходе на

другую частоту, или какой-нибудь медленный set/clear, или на clock вообще нет констрэйнов...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...