|
|
  |
неясности с результатами задания констрейнов |
|
|
|
Jan 24 2015, 19:45
|
Местный
  
Группа: Участник
Сообщений: 314
Регистрация: 27-04-10
Пользователь №: 56 923

|
Цитата(Timmy @ Jan 24 2015, 22:33)  Надо бы посмотреть на файл констрейнов(желательно все тайминги) до эксперимента и после, а также отчёт после эксперимента. Например, offset in может быть не только BEFORE но и AFTER  . И если до эксперимента констрейна на ADCI не было, это тоже многое проясняет. offset after я не задавал.. а до эксперимента я задавал offset before = 20 ns, и в отчете видел ту же цифру - -0.715. единственное что еще задавал - CLK period = 40 ns
Сообщение отредактировал shide_3 - Jan 24 2015, 19:47
|
|
|
|
|
Jan 29 2015, 10:01
|
Местный
  
Группа: Участник
Сообщений: 314
Регистрация: 27-04-10
Пользователь №: 56 923

|
Cобстно, вот подробный отчет STA , касаемо данного констрейна: Код ================================================================================ Timing constraint: COMP "ADCI<0>" OFFSET = IN -0.715 ns BEFORE COMP "CLK6I";
1 item analyzed, 0 timing errors detected. (0 setup errors, 0 hold errors) Offset is -0.715ns. -------------------------------------------------------------------------------- Slack: 0.000ns (requirement - (data path - clock path - clock arrival + uncertainty)) Source: ADCI<0> (PAD) Destination: DI_0 (FF) Destination Clock: CLK20N rising at 0.000ns Requirement: -0.715ns Data Path Delay: 5.464ns (Levels of Logic = 0) Clock Path Delay: 6.179ns (Levels of Logic = 4) Clock Uncertainty: 0.000ns
Data Path: ADCI<0> to DI_0 Location Delay type Delay(ns) Physical Resource Logical Resource(s) ------------------------------------------------- ------------------- P47.ICLK1 Tiopickd 5.464 ADCI<0> ADCI<0> ADCI_0_IBUF ADCI<0>.DELAY DI_0 ------------------------------------------------- --------------------------- Total 5.464ns (5.464ns logic, 0.000ns route) (100.0% logic, 0.0% route)
Clock Path: CLK6I to DI_0 Location Delay type Delay(ns) Physical Resource Logical Resource(s) ------------------------------------------------- ------------------- P87.I Tiopi 1.530 CLK6I CLK6I IBUFG_inst DCM_X1Y1.CLKIN net (fanout=1) 0.561 CLK6 DCM_X1Y1.CLKFX Tdcmino 0.014 DCM_inst DCM_inst SLICE_X29Y47.G2 net (fanout=1) 1.250 CLK20 SLICE_X29Y47.Y Tilo 0.441 _n0353 _n03531_INV_0 BUFGMUX6.I0 net (fanout=1) 1.489 _n0353 BUFGMUX6.O Tgi0o 0.001 BUFG_inst2 BUFG_inst2 P47.ICLK1 net (fanout=605) 0.893 CLK20N ------------------------------------------------- --------------------------- Total 6.179ns (1.986ns logic, 4.193ns route) (32.1% logic, 67.9% route)
--------------------------------------------------------------------------------
All constraints were met.
Data Sheet report: ----------------- All values displayed in nanoseconds (ns)
Setup/Hold to clock CLK6I ------------+------------+------------+------------------+--------+ | Setup to | Hold to | | Clock | Source | clk (edge) | clk (edge) |Internal Clock(s) | Phase | ------------+------------+------------+------------------+--------+ ADCI<0> | -0.715(R)| 4.209(R)|CLK20N | 0.000| ------------+------------+------------+------------------+--------+ То есть, получается, что slack нулевой, т.е. клок и данные приходят на входы регистра одновременно, и PAR этот косяк пропускает мимо. Выходит, нужно самому следить, чтобы соблюдалось Tsu и Th для внутренней логики ПЛИС, куда приходят внешние сигналы?
|
|
|
|
|
Jan 29 2015, 10:22
|
Знающий
   
Группа: Участник
Сообщений: 835
Регистрация: 9-08-08
Из: Санкт-Петербург
Пользователь №: 39 515

|
Цитата(shide_3 @ Jan 29 2015, 13:01)  То есть, получается, что slack нулевой, т.е. клок и данные приходят на входы регистра одновременно, и PAR этот косяк пропускает мимо. Выходит, нужно самому следить, чтобы соблюдалось Tsu и Th для внутренней логики ПЛИС, куда приходят внешние сигналы? Нулевой slack означает, что данные приходят на вход регистра с соблюдением Tsu, значение Tsu учитывается при вычислении пути данных, просто отчёт недостаточно подробный. А Th не проверялось, так как не задан VALID.
Сообщение отредактировал Timmy - Jan 29 2015, 10:23
|
|
|
|
|
Jan 29 2015, 10:32
|
Местный
  
Группа: Участник
Сообщений: 314
Регистрация: 27-04-10
Пользователь №: 56 923

|
Цитата(Timmy @ Jan 29 2015, 13:22)  Нулевой slack означает, что данные приходят на вход регистра с соблюдением Tsu, значение Tsu учитывается при вычислении пути данных, просто отчёт недостаточно подробный. А Th не проверялось, так как не задан VALID. Но в отчете вроде как ясно написано, что Data Path Delay - Clock Path Delay = - 0.715. А на вход микросхемы у меня типа как приходит Data на 0.715 позже Клока. То если логически мыслить, получается что данные и клок приходят на внутренний регистр одновременно... Надо бы для сравнения сбацать такой тест в Квартусе, посмотреть чего он мне скажет на это..
Сообщение отредактировал shide_3 - Jan 29 2015, 10:54
|
|
|
|
|
Feb 2 2015, 16:06
|
Местный
  
Группа: Участник
Сообщений: 314
Регистрация: 27-04-10
Пользователь №: 56 923

|
Цитата(SM @ Feb 2 2015, 11:39)  Было бы странно, если бы считался. слак - это ЗАПАС - если он нулевой, то констрейн выполнен, но без запаса. но все-таки странновато, что во временном отчете, что Квартуса, что ISE, data path -это время от data входа плис до выхода триггера. у всех ли плис время tpd триггера больше времени tsu того же триггера? и вот это я не пойму--- Setup/Hold to clock CLK6I ------------+------------+------------+------------------+--------+ | Setup to | Hold to | | Clock | Source | clk (edge) | clk (edge) |Internal Clock(s) | Phase | ------------+------------+------------+------------------+--------+ ADCI<0> | -0.715®| 4.209®|CLK20N | 0.000| ------------+------------+------------+------------------+--------+ что здесь означает hold to clk (4.209)? откуда оно берется? СLK(входной) я задал 80 ns. cоответственно СLK20N = 24 ns
Сообщение отредактировал shide_3 - Feb 2 2015, 16:23
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|