|
задание OFFSET OUT, как контролировать минимальные значения? |
|
|
|
Mar 12 2009, 12:01
|
Знающий
   
Группа: Свой
Сообщений: 610
Регистрация: 22-04-05
Пользователь №: 4 410

|
Добрый день! Никак не могу понять как правильно написать этот констрейн. Прошу направить на путь истинный  Задача: Выдача данных с Virtex4 на ЦАП. Режим SYSTEM_SYNCHRONOUS. Клок на плис и на цап приходит в одной фазе с клочного дистрибьютера. Тактовая частота 192 Мгц (период соответсвенно ~ 5,2 нс). Данные должны быть достоверны во временном окне 0,8-4,37 нс относительно положительного клока. По всем документам которые прочитал (wp237 и т.д.) нужно задать примерно такой констрен: TIMEGRP "DAC_PAD_GRP" OFFSET = OUT 0.8 ns AFTER "DAC_Tx_CLK_P" TIMEGRP "DAC_RG_GRP" RISING; OFFSET = OUT по сути проверяет условие: временя прохождения данных до выходного пада от регистров + временя прохождения клока от входного пада до регистров < меньше требумой. У меня эта сумма получается больше периода, порядка 8,6-9,1 нс. Подвигать ее влево-вправо не проблема, вопрос в другом: как правильно задать констрейн в случае, когда время прохождения сигнала от входного до выходного пада больше периода? Если прибавить период или два, т.е написать OFFSET = OUT 6 ns или OFFSET = OUT 11.2 ns, то окно валидности данных проверяется только по одной границе. Как многоуважемые гуру поступают в таком случае?
|
|
|
|
|
 |
Ответов
|
Mar 12 2009, 19:21
|
Знающий
   
Группа: Свой
Сообщений: 610
Регистрация: 22-04-05
Пользователь №: 4 410

|
Цитата(RobFPGA @ Mar 12 2009, 19:44)  Вот только что сделал тест для проверки. 3 регистра (шириной 8 бит) включены цепочкой ->InReg->MidlReg->OutReg-> Clk завел через DCM. пока CLKOUT_PHASE_SHIFT=NONE задал
NET "Clk" TNM_NET = Clk; TIMESPEC TS_Clk = PERIOD "Clk" 200 MHz HIGH 50%; TIMEGRP "tg_dou" OFFSET = OUT 0.8 ns AFTER "Clk";
Естественно для 4vlx15-12 получил ошибку в PR. В post MAP TimeAnalisys ошибка для tg_dou = -1.4 ns при этом вижу что DCM дает только -2.4 ns .
Ставлю DCM. mode CLKOUT_PHASE_SHIFT =FIXED, PHASE_SHIFT=-180 ~ -3.5 ns Все проходит без проблем и без ошибок. - Худший вариант в группе для tg_dou = +0.05 ns. Лучший = +0.27 ns При этом в post PR TimeAnalisys вижу что DCM дает уже -5.65 ns
Так что мне кажется что особых танцев с бубнами тут и не нужно Вы можете выложить весь проект? Может у меня просветление наступит. Не понимаю почему у меня такой длинный путь. Вроде все то же. Правда у меня не 12, а только 10 спидгрейд. DCM тоже пробывал. Но в целом это не решает проблемы. У меня нет проблем с времянкой, существующая разводка кристалла меня полностью устраивает. Все работает. Безо всякого DCM. Я только хочу чтобы ISE ее контролировал автоматически, а не я каждый раз вручную. А он контролирует только верхнюю границу. В этом только и вопрос. DCM же кроме джиттера еще увеличивает потребление питания и требует формирование ресета. И нужен он только потому, что ISE не может проверить условие X > min. Обидно до кончика хвоста когда софт ограничивает возможности железа. Цитата(Boris_TS @ Mar 12 2009, 20:05)  Микросхема конечно греется, но не так страшно. Она радиатором прижата. Я задаю температуру в констрейнах, по логике ISE должен проверить задержки при худших условиях. Мне же главное чтобы эти задержки в заданных пределах оставались. Надо почитать подробнее что ISE с констрейном температуры делает. Цитата(Boris_TS @ Mar 12 2009, 20:05)  Есть идейка, не совсем то, что Вам нужно, но может навести на полезные мысли: Случай действительно не совсем мой, за совет спасибо!
|
|
|
|
Сообщений в этой теме
disel задание OFFSET OUT Mar 12 2009, 12:01 DmitryR Не скажу за гуру, но я в этих случаях поступаю так... Mar 12 2009, 13:13 Boris_TS Цитата(disel @ Mar 12 2009, 16:01) У меня... Mar 12 2009, 13:18 DmitryR Цитата(Boris_TS @ Mar 12 2009, 16:18) 1. ... Mar 12 2009, 13:42  disel Цитата(DmitryR @ Mar 12 2009, 16:42) Почи... Mar 12 2009, 13:57   DmitryR Цитата(disel @ Mar 12 2009, 16:57) Однако... Mar 12 2009, 14:24    disel Цитата(DmitryR @ Mar 12 2009, 17:24) Заде... Mar 12 2009, 14:35     DmitryR Цитата(disel @ Mar 12 2009, 17:35) Трегер... Mar 12 2009, 14:49      disel Цитата(DmitryR @ Mar 12 2009, 17:49) Забе... Mar 12 2009, 15:08       DmitryR Цитата(disel @ Mar 12 2009, 18:08) Не оче... Mar 12 2009, 15:13       Gothard Цитата(disel @ Mar 12 2009, 18:08) DCM мо... Mar 12 2009, 15:19   Gothard Цитата(disel @ Mar 12 2009, 16:57) Безо в... Mar 12 2009, 15:09    disel Цитата(Gothard @ Mar 12 2009, 18:09) каже... Mar 12 2009, 15:43     Boris_TS Есть идейка, не совсем то, что Вам нужно, но может... Mar 12 2009, 17:05 disel 1. Выходные регистры конечно используются
2. DCM н... Mar 12 2009, 13:44 DmitryR Цитата(disel @ Mar 12 2009, 16:44) 2. DCM... Mar 12 2009, 13:54 RobFPGA Приветствую!
...
min < временя прохождения... Mar 12 2009, 14:54  Gothard Цитата(disel @ Mar 12 2009, 22:21) У меня... Mar 13 2009, 07:05 RobFPGA Приветствую!
Поменял speed на -10. Тут конечн... Mar 12 2009, 20:47 disel Rob, спасибо за проект!
Выяснилась интереснта... Mar 13 2009, 07:42 Gothard Цитата(disel @ Mar 13 2009, 10:42) как DC... Mar 13 2009, 08:48  disel Цитата(Gothard @ Mar 13 2009, 11:48) Може... Mar 13 2009, 10:54   Gothard Цитата(disel @ Mar 13 2009, 13:54) У меня... Mar 13 2009, 11:23    disel Цитата(Gothard @ Mar 13 2009, 14:23) Вот ... Mar 13 2009, 11:38  Boris_TS Цитата(Gothard @ Mar 13 2009, 12:48) согл... Mar 13 2009, 11:59   disel Цитата(Boris_TS @ Mar 13 2009, 14:59) Обр... Mar 13 2009, 13:13    Boris_TS Цитата(disel @ Mar 13 2009, 17:13) Все та... Mar 13 2009, 13:52     disel Цитата(Boris_TS @ Mar 13 2009, 16:52) А в... Mar 13 2009, 14:15 Singer Была такая проблема - дикие времена (иногда даже о... Mar 14 2009, 16:52 disel Цитата(Singer @ Mar 14 2009, 19:52) Была ... Mar 15 2009, 08:36
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|