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

Почему один и тотже триггер реализуется по-разному?

Верно! Фиттер реализует вероятностный подход в своей работе. И только LLR (Logic Lock Regions) он не трогает. Оставляет прежним от старой компиляции. При инкрементной компиляции это неизбежно (и удобно!). Все что вы зафиксировали в проекте будет прежним, а вот остальное он будет разводить каждый раз по-разному. Единственный критерий,- требования констрейнов. Воспроизводимость проектов разная, но дизайн - рабочий!

Т.е. Вы настаиваете, что в Квартусе используется внешний генератор случайных чисел? :biggrin: Пришлите мне пожалуйста проект, который разводится по разному от запуска к запуску при неизменных настройках, мне даже интересно.

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


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

Т.е. Вы настаиваете, что в Квартусе используется внешний генератор случайных чисел? :biggrin: Пришлите мне пожалуйста проект, который разводится по разному от запуска к запуску при неизменных настройках, мне даже интересно.

 

Это нам рассказывалось на сертифицированных курсах подготовки по дизайну с Квартусом в Киеве.(Преподаватель был по фамилии Антонюк) Подчеркивалась именно эта мысль! Проекты не воспроизводимы из-за встроенного генератора случайных чисел... Если только явно не залочить зоны!

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


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

Это нам рассказывалось на сертифицированных курсах подготовки по дизайну с Квартусом в Киеве.(Преподаватель был по фамилии Антонюк) Подчеркивалась именно эта мысль! Проекты не воспроизводимы из-за встроенного генератора случайных чисел... Если только явно не залочить зоны!

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

Скорее всего, преподаватель "слышал звон...".

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


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

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

Скорее всего, преподаватель "слышал звон...".

 

Нет такой аналогии разработки проекта под ARM и под FPGA!.. И не надо ничего представлять... Условия требований по констрейнам соблюдены, а на каком LUT это сделано физически,- все равно! И чем вас смущает факт попадания проекта в разные области ПЛИСины? Я не вижу противоречий!...

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


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

Условия требований по констрейнам соблюдены, а на каком LUT это сделано физически,- все равно!

Вот именно. Первое же решение останавливает работу компилятора.

А если решение не найдено, вот тогда ищутся способы...

 

В Quartus-е запускаем Design Space Explorer, находится лучший вариант, определяемый конкретным SEED. А потом, что - все теряем, ибо ничто не предсказуемо? не гарантируется, что будет повторено? Разве не бред?

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


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

Ну на самом деле я тоже из тех кто "слышал звон", более того, щупал его сам. У меня есть твердая уверенность, что когда-то раньше тот же квартус мог по разному оттрассировать проект от случая к случаю, просто размещая элементы в различных областях кристалла. Но во прямо сегодня взял попробовал несложный проект, примерно на 1000 лутов. Версия квартуса 12.1 расположила его с точностью до бинарного совпадения битовых файлов. Так что не знаю что теперь думать...

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


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

Версия квартуса 12.1 расположила его с точностью до бинарного совпадения битовых файлов. Так что не знаю что теперь думать...

Нашел первый попавшийся проектик (последний, по списку), и Quartus 9.1 выдал мне то же, что и 4 месяца назад.

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


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

Нашел первый попавшийся проектик (последний, по списку), и Quartus 9.1 выдал мне то же, что и 4 месяца назад.

А как вы проверяете?.. С точностью до бита?

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


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

тоже ради интереса пересобрал проект, который собирался последний раз аж в 2007 году. Совпадение битстрима 100%-ное.

 

Как проверяю совпадение - видимо, как все... cmp -l file1.rbf file2.rbf

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


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

Как проверяю совпадение - видимо, как все... cmp -l file1.rbf file2.rbf

Я проверяю в Total Commander, Файлы->Сравнить по содержимому.

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


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

Я проверяю в Total Commander, Файлы->Сравнить по содержимому.

 

Интересно...

Тогда как вы объясните проблему, описанную в старте топика?

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


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

Тогда как вы объясните проблему, описанную в старте топика?

Пусть бы он сам показал, с какими настройками запускал, с гарантией, что исходные файлы были одними и теми же.

Инкрементальная компиляция?

Может, задано "Использовать все доступные процессоры", а в другой раз музыку слушал, вот один из процессоров и стал недоступен? :laughing: Что там они делают одновременно?

Или винт форматировал? :rolleyes:

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


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

Тогда как вы объясните проблему, описанную в старте топика?

ТС не писал, что проект при этом никак не менялся. Лично я понял так, что перекомпиляции происходили именно по причине каких-то изменений в проекте, а не просто так без причин к этому.

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


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

Это нам рассказывалось на сертифицированных курсах подготовки по дизайну с Квартусом в Киеве.(Преподаватель был по фамилии Антонюк) Подчеркивалась именно эта мысль! Проекты не воспроизводимы из-за встроенного генератора случайных чисел... Если только явно не залочить зоны!

Не то чтобы я Вам не верил, но за всю свою практику я ни разу не сталкивался с невоспроизводимостью проекта при сохранении исходников и настроек. Т.е. не то чтобы я считаю это аксиомой, но на роль не опровергнутой теории вполне сойдёт. :) Что и подтверждается вышеотписавшимися товарищами.

Правда, существенная и ранняя часть моего опыта была именно с Xilinx-ом, так что за Квартус более чем пятилетней давности я не ручаюсь. Но в любом случае, если такое поведение имеет место, то это явный глюк. Поэтому я и просил Вас прислать мне пример, чтобы с этим глюком ознакомиться и иметь его ввиду.

P.S. Может быть на тех курса подразумевалось, что при изменениях в коде проекта, по другому разведутся и те куски, которые не менялись? Такая версия вполне разумна и соответствует действительности.

 

Интересно...

Тогда как вы объясните проблему, описанную в старте топика?

Не в одном из постов ТС-а нет утверждений, что разница возникает при полном сохранении исходных условий - настроек и кода.

Изменено пользователем o_khavin

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


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

Не холивара ради...

Взял простой проект в 13.1 версии Квартуса.

Собрал.

Взял те же исходники, собрал новый проект с теми же параметрами.

Собрал.

Результат разный, но полностью рабочий в комнатных условиях.

Как-то так...

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


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

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

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

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

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

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

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

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

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

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