des00 25 3 августа, 2005 Опубликовано 3 августа, 2005 · Жалоба Добрый день! Изучаю документацию на использвание констрейнов в выше указаных пакетах и у меня возник следующий вопрос: Как поступают с временными констрейнами и констрейнами размещения (для ПР, а не для синтеза) в иерархических проектах ? ну с глобальным клоком/коками понятно, описываеться констрейн на клок в топ левел и он распространяеться на все дерево, а как быть с локальными клоками, задержками, falsh path и т.д. Тоже и с констрейнами размещения. Вариант решения проблемы есть, описывать в ucf файле топ левела иерархию, но ИМХО не есть выход, если проект будет меняться то .... Можно ли сделать под каждый модуль свой ucf и что бы синтезатор/мапер/ПР собирали из них полный uсf всего проекта ? У симлифая вроде есть такая возможность (до конца еще не изучил) а есть ли подобное у ИСЕ ? Заранее спасибо за ответ. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vitus_strom 0 3 августа, 2005 Опубликовано 3 августа, 2005 · Жалоба Вас спасет constraint guide и ключевые слова constraint propagation и RLOC, RLOC_origin, RLOC_range, U_SET, HU_set, H_set, TNM, TNM_NET, и т.д. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 3 августа, 2005 Опубликовано 3 августа, 2005 · Жалоба Вас спасет constraint guide и ключевые слова constraint propagation и RLOC, RLOC_origin, RLOC_range, U_SET, HU_set, H_set, TNM, TNM_NET, и т.д. <{POST_SNAPBACK}> Хмм этои разделы я изучал, смысл их понятен, но немного не то, что я хотел бы знать. В случай использования этих констрейнов ИМХО работы будет строиться так. собираем иерархический проект, потом выделяем группы цепей, пинов, клоков и т.д. и обконстрейниваем их все. Т.е. на этапе написания файла констрейнов нужно знать из чего модуль будет состоять. Мне же интересна схема работы наоборот. Т.е. сделали различные модули, отладили/оптимизировали их. в том числе и по констрейнам размешения. А потом просто подключили к проекту вместо с ucf файлом. Или это получаеться уже Modular Design и смотреть нужно в ту сторону ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vitus_strom 0 3 августа, 2005 Опубликовано 3 августа, 2005 · Жалоба Modular design это немножко не то... это о том как в комманде распланировать чип раздать игрокам работу, и пока они ее делают сделать топ левел на чипе и потом собрав модули упаковать их без лшенего геморроя на чип. Что касается вашего вопроса то политика должна быть скорее всего такая же как и на верхнем уровне с отличием что файл ограничений прицепить не к верхнему уровню а к уровню в иерархии... Правда сам не пробывал поэтому могу и ошибаться Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 3 августа, 2005 Опубликовано 3 августа, 2005 · Жалоба Modular design это немножко не то... это о том как в комманде распланировать чип раздать игрокам работу, и пока они ее делают сделать топ левел на чипе и потом собрав модули упаковать их без лшенего геморроя на чип. Что касается вашего вопроса то политика должна быть скорее всего такая же как и на верхнем уровне с отличием что файл ограничений прицепить не к верхнему уровню а к уровню в иерархии... Правда сам не пробывал поэтому могу и ошибаться <{POST_SNAPBACK}> понятно спасибо, попрбую на симплифае у них доке про это написанно. если интересно потом выложу результат. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
3.14 0 3 августа, 2005 Опубликовано 3 августа, 2005 · Жалоба 2 des00 Если проект будут менчятся, то в любом случае вам прийдется править констрейны, проза жизни - то синтезатор какой путь соптимизирует, то имена инстансов поменяет ... Ну а если ничего в модуле не меняется, то и констрейны (с большой степенью вероятности) править не надо будет. В модулар дезигн в принципе все так же. Там только констрейны для каждого модуля отдельно идут, которые приходится править в случае изменения межсоединений. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
3.14 0 3 августа, 2005 Опубликовано 3 августа, 2005 · Жалоба Хотя я немного "покатегоричничал" ;) Когда-то тоже задавался подобным вопросом. В синплифае/амплифае можно указывать констрейны, которые потом будут автоматом генериться. Вот только когда я экспериментировал (с годик назад), как то слабо кореллировало мое желание и получаемый результат. К тому же совсем не всегда дезигн вписывается только в PERIOD с OFFSET-ом, ну а тут только ручками ... В итоге пришел к такому "флоу" - создаю весь проект особо не заботясь о констрейнах (в лучшем случае PERIOD укажу), как более менее все устаканится, тогда детально описываю ограничения и создаю тестбенчи для более детального анализа. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
deast 0 4 августа, 2005 Опубликовано 4 августа, 2005 · Жалоба Еще вопрос, если можно. Есть группа внешних выводов. Необходимо чтобы система проанализировала задержки и выствавила все одинаковыми (по максимальной). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vitus_strom 0 4 августа, 2005 Опубликовано 4 августа, 2005 · Жалоба to deast: tak ne byvaet ctoby vse zaderzki byli odinakovymi, libo ukazyvaetsja minimum kotoryj nelzja prevysat (dlja vhodov), libo maksimum za kotoryj signal dolzen dobezat do vyhoda Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
3.14 0 4 августа, 2005 Опубликовано 4 августа, 2005 · Жалоба Хотя vitus_strom уже ответил, добавлю. Какой смысл выставлять констрейн по максимальному пути? Единственно что бы не помешало, это ограничить разбег задержек для групы, но как это сделать не знаю (констрейнов таких нет). Ну а вообще для подобных целей служит OFFSET, только он работает относительно внешнего тактового сигнала. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vitus_strom 0 4 августа, 2005 Опубликовано 4 августа, 2005 · Жалоба Еще есть FROM:TO и MAXDELAY, причем в каких то случах можно использовать один констрейнт как базовый для другого Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
deast 0 4 августа, 2005 Опубликовано 4 августа, 2005 · Жалоба Хорошо. Но если есть два выходных сигнала. Первый их них имеет более жесткие ограничения по выходным задержкам. Но это вовсе не значит, что он реально будет иметь меньшую задержку, чем второй, так как задается максимальное значение. А как тогда сделать, чтобы первый гарантировано имел задержку меньше, чем второй? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 4 августа, 2005 Опубликовано 4 августа, 2005 · Жалоба Хорошо. Но если есть два выходных сигнала. Первый их них имеет более жесткие ограничения по выходным задержкам. Но это вовсе не значит, что он реально будет иметь меньшую задержку, чем второй, так как задается максимальное значение. А как тогда сделать, чтобы первый гарантировано имел задержку меньше, чем второй? <{POST_SNAPBACK}> хмм а может быть схему тогда поменять ? зачем лечить последствия, когда можно вылечить причину :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
3.14 0 4 августа, 2005 Опубликовано 4 августа, 2005 · Жалоба 2 deast Рзделить констрейны для двух сигналов и для одного сделать более жесткие ограничения. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться