shide_3 0 20 мая, 2014 Опубликовано 20 мая, 2014 · Жалоба здравствуйте уважаемые. появилось желание поглубже изучить ISE, и назрел вопрос. Баловался с временными констрейнами, и сравнил, то что дает Timing Report и симулятор после PAR'а. и обнаружил некоторое расхождение (например время пути сигнала с одного триггера до входа CE другого 3,5 нс во временном отчете, а в симуляторе около 1,5 нс.) может я что-то не догоняю, но очень хотелось бы разобраться. спасибо если кто ответит! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
topor_topor 0 20 мая, 2014 Опубликовано 20 мая, 2014 · Жалоба здравствуйте уважаемые. появилось желание поглубже изучить ISE, и назрел вопрос. Баловался с временными констрейнами, и сравнил, то что дает Timing Report и симулятор после PAR'а. и обнаружил некоторое расхождение (например время пути сигнала с одного триггера до входа CE другого 3,5 нс во временном отчете, а в симуляторе около 1,5 нс.) может я что-то не догоняю, но очень хотелось бы разобраться. спасибо если кто ответит! А с какого пина до какого задержка указана в Timing Report и как Вы меряли в симуляторе? Может в Timing Report это с FF1.C до FF2.D a в симуляторе померяно с FF1.Q до FF2.CE Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
shide_3 0 20 мая, 2014 Опубликовано 20 мая, 2014 · Жалоба А с какого пина до какого задержка указана в Timing Report и как Вы меряли в симуляторе? Может в Timing Report это с FF1.C до FF2.D a в симуляторе померяно с FF1.Q до FF2.CE нет, во временном отчете- это время от появления сигнала на одном триггере до входа второго триггера, то есть получается от FF1.C до FF2.CE. и в симуляторе я также задавал Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
topor_topor 0 20 мая, 2014 Опубликовано 20 мая, 2014 · Жалоба нет, во временном отчете- это время от появления сигнала на одном триггере до входа второго триггера, то есть получается от FF1.C до FF2.CE. и в симуляторе я также задавал А симулятор в каком корнере PVT симулил? не в фасте-ли? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
shide_3 0 20 мая, 2014 Опубликовано 20 мая, 2014 · Жалоба А симулятор в каком корнере PVT симулил? не в фасте-ли? простите, не могли бы Вы ткнуть где про это написано? поиск по ISim User Guide не дает результатов.. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
topor_topor 0 21 мая, 2014 Опубликовано 21 мая, 2014 · Жалоба простите, не могли бы Вы ткнуть где про это написано? поиск по ISim User Guide не дает результатов.. Где про это в Вашей тулзе написано - не знаю :( Но вообщето симуляция после роутинга с реальными задержками обычно делается на min\typ\max т.е. величина задержки зависит от условий експлуатациию Должна быть возможность переключать эти задержки в симуляторе.... Я лично делаю симуляцию с SDF, где эти задержки собственно и прописаны после экстракции с лейаута... А переключение min\typ\max делается либо в Verilog тесбенче, либо в опциях командной строки симулятора при запуске, либо галочкой в GUI симулятора.... ---------- В любом случае, построутинг симуляция с реальными задержками без понимания для какого PVT (Process Voltage Temperature) корнера она делается - смысла не имеет :( Может на typ всё ОК, а на min\max нет..... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
shide_3 0 21 мая, 2014 Опубликовано 21 мая, 2014 · Жалоба Где про это в Вашей тулзе написано - не знаю :( Но вообщето симуляция после роутинга с реальными задержками обычно делается на min\typ\max т.е. величина задержки зависит от условий експлуатациию Должна быть возможность переключать эти задержки в симуляторе.... Я лично делаю симуляцию с SDF, где эти задержки собственно и прописаны после экстракции с лейаута... А переключение min\typ\max делается либо в Verilog тесбенче, либо в опциях командной строки симулятора при запуске, либо галочкой в GUI симулятора.... ---------- В любом случае, построутинг симуляция с реальными задержками без понимания для какого PVT (Process Voltage Temperature) корнера она делается - смысла не имеет :( Может на typ всё ОК, а на min\max нет..... Странно, почему во временном отчете тогда не пишется , для какого PVT приводятся задержки. кстати, а что означают задержки "minimum data path" (Hold path) во временном отчете? Maximum data path - это понятно, это реально то что на самом деле получилось... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
topor_topor 0 21 мая, 2014 Опубликовано 21 мая, 2014 · Жалоба Странно, почему во временном отчете тогда не пишется , для какого PVT приводятся задержки. кстати, а что означают задержки "minimum data path" (Hold path) во временном отчете? Maximum data path - это понятно, это реально то что на самом деле получилось... Не пишется... потому, что вы это задаёте сами, перед началом STA - это входной параметер, а не выходной. Если Вы PVT не задавали, то разработчик тулзы чёто неявно сам задал.... Судя по вопросу, его стоит перефразировать на такой - "а как вообще тулза делает STA, если как мы понимаем, задержки варируются от min до max, в зависимости от условий експлуатации (температуры, напряжения питания, старения)" Ответ - Ваша тулза, неявно, учитывает случай худший из худшего. Это называется wc\bc analysys (worst case\best case). Нормальные тулзы позволяют выбирать стратегию анализа. Например можна выбрать single corner - только для указанного PVT. Очень кстати хорошая мысль.... ----- Так для сетап тайма - худшим будет максимальная температура, минимальное напряжение питания. Вот она эту задержку и пишет в репорт. Контрольный вопрос - а что есть наихудшим корнером для холд тайма? ----- "minimum data path" это - Hold \ Maximum data path - Setup. Смотрите спецификацию тригера И это оба - "то что на самом деле получилось"... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
shide_3 0 21 мая, 2014 Опубликовано 21 мая, 2014 · Жалоба Так для сетап тайма - худшим будет максимальная температура, минимальное напряжение питания. Вот она эту задержку и пишет в репорт. Контрольный вопрос - а что есть наихудшим корнером для холд тайма? ----- "minimum data path" это - Hold \ Maximum data path - Setup. Смотрите спецификацию тригера И это оба - "то что на самом деле получилось"... Для холд - видимо все наоборот :rolleyes: Я не могу понять , что физически из себя представляет "minimum data path" . Если по тайминг репорту, то это тоже самое что Maximum data path (я имею ввиду источники задержек и пути сигналов), только почему -то сами задержки поменьше чем в "maximum data path". Смотрел через cross probing в Fpga Editor'е, так там визуально "maximum" и "minimum" path -это одно и то же Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
topor_topor 0 22 мая, 2014 Опубликовано 22 мая, 2014 · Жалоба Для холд - видимо все наоборот :rolleyes: Я не могу понять , что физически из себя представляет "minimum data path" . Если по тайминг репорту, то это тоже самое что Maximum data path (я имею ввиду источники задержек и пути сигналов), только почему -то сами задержки поменьше чем в "maximum data path". Смотрел через cross probing в Fpga Editor'е, так там визуально "maximum" и "minimum" path -это одно и то же Это так кажется... есть есчё case анализис.... Правда в большинстве случаев, таки да - физически они совпадают. Тут всё очевидно - "minimum data path" - это путь с минимальной задержкой, а "maximum data path" - с максимальной с учётом корнера. И это всё для одной и той-же пары source\destination тригеров. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
shide_3 0 22 мая, 2014 Опубликовано 22 мая, 2014 · Жалоба Это так кажется... есть есчё case анализис.... Правда в большинстве случаев, таки да - физически они совпадают. Тут всё очевидно - "minimum data path" - это путь с минимальной задержкой, а "maximum data path" - с максимальной с учётом корнера. И это всё для одной и той-же пары source\destination тригеров. ну, выходит тогда результаты симуляции у меня не сходятся даже с "minimum data path" (в симуляторе летает быстрее) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
topor_topor 0 22 мая, 2014 Опубликовано 22 мая, 2014 · Жалоба ну, выходит тогда результаты симуляции у меня не сходятся даже с "minimum data path" (в симуляторе летает быстрее) что значит "в симуляторе летает быстрее"? Вы в каком корнерне симулшите задержки - min, typ или max? И чё там в репорте написано? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
shide_3 0 22 мая, 2014 Опубликовано 22 мая, 2014 (изменено) · Жалоба что значит "в симуляторе летает быстрее"? Вы в каком корнерне симулшите задержки - min, typ или max? И чё там в репорте написано? Ну вот, например. ===================================== Maximum Data Path: sec_16 to led11 Location Delay type Delay(ns) Physical Resource Logical Resource(s) ------------------------------------------------- ------------------- SLICE_X10Y107.YQ Tcko 0.272 sec<17> sec_16 SLICE_X43Y104.G2 net (fanout=2) 1.141 sec<16> SLICE_X43Y104.COUT Topcyg 0.423 sec_cmp_eq0000_wg_cy<3> sec_cmp_eq0000_wg_lut<3> sec_cmp_eq0000_wg_cy<3> SLICE_X43Y105.CIN net (fanout=1) 0.000 sec_cmp_eq0000_wg_cy<3> SLICE_X43Y105.COUT Tbyp 0.066 sec_cmp_eq0000_wg_cy<5> sec_cmp_eq0000_wg_cy<4> sec_cmp_eq0000_wg_cy<5> SLICE_X43Y106.CIN net (fanout=1) 0.000 sec_cmp_eq0000_wg_cy<5> SLICE_X43Y106.XB Tcinxb 0.232 sec_cmp_eq0000 sec_cmp_eq0000_wg_cy<6> SLICE_X47Y104.CE net (fanout=27) 0.536 sec_cmp_eq0000 SLICE_X47Y104.CLK Tceck 0.418 led11 led11 ------------------------------------------------- --------------------------- Total 3.088ns (1.411ns logic, 1.677ns route) (45.7% logic, 54.3% route) ================================================= Minimum Data Path: sec_16 to led11 Location Delay type Delay(ns) Physical Resource Logical Resource(s) ------------------------------------------------- ------------------- SLICE_X10Y107.YQ Tcko 0.250 sec<17> sec_16 SLICE_X43Y104.G2 net (fanout=2) 1.049 sec<16> SLICE_X43Y104.COUT Topcyg 0.389 sec_cmp_eq0000_wg_cy<3> sec_cmp_eq0000_wg_lut<3> sec_cmp_eq0000_wg_cy<3> SLICE_X43Y105.CIN net (fanout=1) 0.000 sec_cmp_eq0000_wg_cy<3> SLICE_X43Y105.COUT Tbyp 0.061 sec_cmp_eq0000_wg_cy<5> sec_cmp_eq0000_wg_cy<4> sec_cmp_eq0000_wg_cy<5> SLICE_X43Y106.CIN net (fanout=1) 0.000 sec_cmp_eq0000_wg_cy<5> SLICE_X43Y106.XB Tcinxb 0.213 sec_cmp_eq0000 sec_cmp_eq0000_wg_cy<6> SLICE_X47Y104.CE net (fanout=27) 0.493 sec_cmp_eq0000 SLICE_X47Y104.CLK Tckce (-Th) -0.030 led11 led11 ------------------------------------------------- --------------------------- Total 2.485ns (0.943ns logic, 1.542ns route) (37.9% logic, 62.1% route) =================================================== При этом, вот что мы видим при симуляции, на картинке видна задержка от входа CLK триггера sec_16 до входа CE led11. она где-то примерно 1,5 нс. вот про корнер извините не могу ничего сказать, пока еще не разобрался... Изменено 22 мая, 2014 пользователем shide_3 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
topor_topor 0 22 мая, 2014 Опубликовано 22 мая, 2014 · Жалоба Ну вот, например. При этом, вот что мы видим при симуляции, на картинке видна задержка от входа CLK триггера sec_16 до входа CE led11. она где-то примерно 1,5 нс. вот про корнер извините не могу ничего сказать, пока еще не разобрался... Никогда репорт в такой форме не видел...но всёже... Глядя в репорт я вижу что это пас от sec_16.YQ to led11.CLK. Это и надо в симуляторе посмотреть. Это что, sec_16 - делитель частоты чтоль? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
shide_3 0 22 мая, 2014 Опубликовано 22 мая, 2014 · Жалоба Никогда репорт в такой форме не видел...но всёже... Глядя в репорт я вижу что это пас от sec_16.YQ to led11.CLK. Это и надо в симуляторе посмотреть. Это что, sec_16 - делитель частоты чтоль? ну да, делитель. специально написал лажовый тест чтоб проще изучать. честно говоря, не понимаю, как в список задержек сигнала sec_16 попало время Tckce , это же сетап время для входа CE второго триггера. а поскольку там присутствует Tcko, то видимо это путь не от YQ, а от CLK.. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться