iiv 29 3 мая, 2011 Опубликовано 3 мая, 2011 · Жалоба Всем привет, очень Всем форумчанам благодарен за классные и полезные советы, которые наконец-то оживили мой проект! Обнаружил одно наблюдение, и хочу посоветоваться, может кто-то сталкивался и знает что можно сделать. Есть довольно плотный проект для стратикса, который использует около 40К алутов, 90К регистров, 382 умножителя и 4.5М блочной памяти. Весь проект работает на 3-х клоках, назовем их Clk1, Clk2, Clk3 c жестко связанными частотами Freq(Clk2)=Freq(Clk1)/2, Freq(Clk3)=Freq(Clk2)/3 Клоки получаются на одном внутреннем PLL. Ресурсы распределены по клок домейнам так: Clk1: все умножители, 30% алютов и около 70% регистров, Clk2: 70% алютов и 30% регистров, Clk3: вся блочная память. Если собирать этот проект, установив частоты на PLL как 400МГц, 200МГц, 66МГц, то fmax, достигается около 405МГц, 235МГц и 110МГц, что, конечно классно, и нет слаков, но, верхняя частота получается почти на пределе. Если же собрать все то же самое, указав на PLL чуть выше частоты, например 417МГц, 208МГц, 70МГц, то fmax получается существенно лучше, а именно 443МГц, 227МГц, 80МГц. Итак, получается, что у меня есть запас заставить квартус собрать проект с большей надежностью на высоких частотах, причем, это происходит за счет ухудшения тайминга на медленных клоках, но, на них-то как раз у меня есть огромный запас и мне именно это хочется сделать. Скажите, пожалуйста, как сказать квартусу, чтобы он собрал проект на мои 400МГц, 200МГц, 66МГц частоты, но, сделал больший запас по слакам для самого скоростного клок домейна? Наверное есть что-то сакровенное в SDC файле или где-то в настройках, но, гуглив и читая, я сам не смог найти такую опцию. PS: в опциях квартуса в "Time Optimization Advisor" все стоит по-максимому. PPS: бездумно играться опциями как-то не хотелось бы, так как время сборки проекта составляет полтора часа. Спасибо ИИВ Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AndrewS6 0 4 мая, 2011 Опубликовано 4 мая, 2011 (изменено) · Жалоба Шаманство где-то в настройках , а точнее в настройках фиттера с параметром Seed Value могут как улучшить, так и ухудшить запас. В Квартусе есть специальный шаманский бубен - Design Space Explorer (где-то рядом на этом форуме топик был про него), бейте в него . ИМХО только так. PS: смотреть лучше не на Fmax - это несколько косвенный признак, а на запас по сетапу и холду, причем крайне желательно, чтобы он был примерно одинаковым. Смотреть, разумеется, на разных предельных случаях (Fast и Slow Corner). Изменено 4 мая, 2011 пользователем AndrewS6 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
warrior-2001 0 4 мая, 2011 Опубликовано 4 мая, 2011 · Жалоба Весь вопрос - зачем это вам? Если вы получили свои 400 МГц, то по заверениям Altera вы их выдержите и на холоде и в печке в диапазоне, соответствующем вашей ПЛИС. Если проект усложнится, компилятор сам перекинет логику так, чтобы вытянуть нужные частоты, если сможет. Уточните, что за стратикс. А то логики у вас что-то много на 400 МГц вытянулось. Подозрительно ;) Если хотите подтянуть только верхнюю частоту, то увеличивайте только её. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
bogaev_roman 0 4 мая, 2011 Опубликовано 4 мая, 2011 (изменено) · Жалоба Весь вопрос - зачем это вам? +1 Если все ограничения заданы, то работать будет. Но если очень хочется, то DSE, о котором AndrewS6 уже написал. Задайте настройки по быстродействию и seed 1-99. Запустите на выходные и DSE прогонит несколько сот точек :) PS// Кстати, что значит в опциях квартуса в "Time Optimization Advisor" все стоит по-максимому? Как бы некоторые настройки только ухудшают разводку, иногда даже банальная оптимизация по площади в синтезе дает лучший временной результат нежели оптимизация по быстродействию. Все зависит от конкретного проекта. Просто нет оптимальной настройки, чтоб разводилось с наилучшим результатом по быстродействию для всех проектов. То что написано в Advisor - просто советы и если выставить все "что там рекомендовано", то результат может быть довольно плачевным. Изменено 4 мая, 2011 пользователем bogaev_roman Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
nmurzin 0 4 мая, 2011 Опубликовано 4 мая, 2011 · Жалоба Смотреть, разумеется, на разных предельных случаях (Fast и Slow Corner). Просветите пожалуйста, что это значит Fast и Slow Corner ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SergeyF 0 4 мая, 2011 Опубликовано 4 мая, 2011 · Жалоба Просветите пожалуйста, что это значит Fast и Slow Corner ? Быстрая и медленная временная модель (наименьшие возможные и наибольшие возможные задержки соответственно). Определяются исходя из отклонений, обусловленных техпроцессом и изменениями температуры и напряжения питания в допустимом диапазоне. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
S_Hawk 0 6 мая, 2011 Опубликовано 6 мая, 2011 · Жалоба я пару раз баловался с подобной задачей. Для себя нашел выход - собираю проект на завышенной частоте и делаю логикЛок для всего, кроме pll и интерфейсной мелочи. Потом понижаю частоту и собираю повторно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
iiv 29 14 мая, 2011 Опубликовано 14 мая, 2011 · Жалоба Уважаемые форумчане, спасибо всем, кто отвечал и советовал! Воспользовался методом от S_Hawk - получилось просто и быстро. Спасибо ИИВ Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться