реклама на сайте
подробности

 
 
> выполнение таймингов, идеология расчетов ,xilinx, vivado
serg_k1
сообщение Nov 30 2016, 08:47
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 115
Регистрация: 21-03-07
Пользователь №: 26 368



здравствуйте,
использую vivado 2015.4, artix xc7a200tfbg676-2. Нужно получить выходные сигалы под частоту 400МГц , данные DDR c setup>0.1n и hold >0.3n. Столкнулся с невыполнением таймингов.
Начал разбираться как подсчитывается время прохождения сигналов.
Пусть будет hold.
Для данных считается максимально быстрое прохождение сигналов, для частоты максимально медленное. Но rise один и тот же.
Для данных - посчитали Source Clock Path - состоит из 5 составляющих. сюда прибавили Data Path - еще 3 составляющие.
Для частоты - считают Destination Clock Patch - пусть состоит из 7 составляющих.
При этом Source Clock Path и Destination Clock Patch первые 3 составляющие пути одни и те же. Но считаются для Source Clock Path по максимально быстрому , а для Destination Clock Patch по максимально медленному. Собственно именно здесь и получается большая часть ошибки тайминга. Но ведь это один и тот же фронт в одно и то же время. И не может быть разного прохождения именно этих 3-х участков.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
des333
сообщение Nov 30 2016, 13:47
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 129
Регистрация: 19-07-08
Из: Санкт-Петербург
Пользователь №: 39 079



У Altera в TimeQuest есть вот такой параметр

Посмотрите что-то похожее у Xilinx.
Может быть, что этот параметр у Вас выключен.


--------------------
Go to the top of the page
 
+Quote Post
serg_k1
сообщение Nov 30 2016, 14:40
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 115
Регистрация: 21-03-07
Пользователь №: 26 368



Цитата(des333 @ Nov 30 2016, 17:47) *
У Altera в TimeQuest есть вот такой параметр

Посмотрите что-то похожее у Xilinx.
Может быть, что этот параметр у Вас выключен.

да, такой пораметр clock pessimism считается. и он как раз равен той величине , которая набегает при достижении точки раздвоения . но вот он почему-то усугубляет ситуацию. т.е. эта величина добавляется к Destination Clock Patch и увеличивает Required Time. и соответственно уменьшает hold.

Цитата(bogaev_roman @ Nov 30 2016, 18:00) *
- тактируемая частота обычно в кристалле идет по клоковой дорожке, задержки на которой отличаются от обычной дорожки, по которой идут данные, соответственно утверждение о том что при повышении температуры задержка на пути данных и пути частоты увеличатся на одинаковую величину ошибочно,

общая часть - это одна и та же клоковая дорожка
Цитата(bogaev_roman @ Nov 30 2016, 18:00) *
Вы бы привели полностью пути по расчету сетапа и холда для конкретного пути и сказали, какое место с Вашей точки зрения не корректно рассчитывается. А так на самом деле уточню пару моментов:








сейчас, как я выяснил ранее, почти все считается правильно. но вот параметр clock pessimism усугубляет ситуацию, а должен улучшать. т.е. приближать две рассчетные величины друг к другу
Go to the top of the page
 
+Quote Post
serg_k1
сообщение Dec 1 2016, 06:39
Сообщение #4


Частый гость
**

Группа: Участник
Сообщений: 115
Регистрация: 21-03-07
Пользователь №: 26 368



тут мне непонятно следующее. параметр clock pessimism на самом деле уравнивает время в точке раздвоения. мне непонятны знаки времени до этой точки. при этом если Destination Clock Patch считается по макс. времени , а Source Clock Path по миним. времени , то в этой точке цифры должны быть наоборот т.е. Destination Clock Patch больше и тогда clock pessimism должен бы вычитаться. но счет идет не так. но в любом случае с учетом clock pessimism время уравнено.
и это подтверждается тем, что иногда все считается правильно по времени. но все равно со знакамиотрицательными Destination Clock Patch и Source Clock Path до точки раздвоения мне непонятно.
здесь тот же проект, но без bufh. и все идеологически правильно с моей точки зрения. только отрицательные времена в начале. но к сожалению hold отрицательный.
эти разные подсчеты (подходы, результаты) мне непонятны.





Go to the top of the page
 
+Quote Post
Shivers
сообщение Dec 1 2016, 10:17
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 680
Регистрация: 11-02-08
Из: Msk
Пользователь №: 34 950



Цитата(serg_k1 @ Dec 1 2016, 09:39) *
тут мне непонятно следующее. параметр clock pessimism на самом деле уравнивает время в точке раздвоения.

CPPR - Common Path Pessimism Removal занимается тем, что выравнивает задержки клока вплоть до последней общей точки. Начиная с этой вилки клоки до StartPoint и EndPoint идут по разному.

Цитата(serg_k1 @ Dec 1 2016, 09:39) *
мне непонятны знаки времени до этой точки.

Отрицательное время - это значит, что клок пришел раньше; к примеру, фаза могла быть сдвинута PLL.

Цитата(serg_k1 @ Dec 1 2016, 09:39) *
при этом если Destination Clock Patch считается по макс. времени , а Source Clock Path по миним. времени

Так и считается нарушение Hold: наихудший случай, это когда источник сработал очень рано, а клок приемника пришел очень поздно. Почитайте эту статью на хабре про сетап и холд https://habrahabr.ru/post/302806/

Цитата(serg_k1 @ Dec 1 2016, 09:39) *
clock pessimism должен бы вычитаться. но счет идет не так. но в любом случае с учетом clock pessimism время уравнено.

clock pessimism в данном случае определяется исключительно результатами работы фиттера; поскольку дерево клока в ПЛИС не одинаково, то фиттер может расставить триггер-источник и триггер-приемник как с положительным clock pessimism, так и с отрицательным, причем значение clock pessimism тул очень точно рассчитывает, здесь нет каких прикидок и погрешностей - как тул написал, такой точно clock pessimism и будет в конкретно данной разводке. В Вашем случае clock pessimism получился отрицательным, почему - не знаю, надо у фиттера спросить.
Go to the top of the page
 
+Quote Post
serg_k1
сообщение Dec 1 2016, 14:31
Сообщение #6


Частый гость
**

Группа: Участник
Сообщений: 115
Регистрация: 21-03-07
Пользователь №: 26 368



Цитата(Shivers @ Dec 1 2016, 14:17) *
В Вашем случае clock pessimism получился отрицательным, почему - не знаю, надо у фиттера спросить.

Спасибо,вроде бы все понятно, кроме того, что оставил. Но ведь нужно попробовать справиться с отрицательным hold. И я решил подвигать частоту, идущую на данные. Частоту Destination Clock я уже двигал- ничего не получилось. Проверил 3 проекта - 1. С одной и той же частотой т.е. исходный 2. проходящей через bufg b 3. проходящей через 2 bufg.
Получилось следующее. Начальный одинаковый путь частоты считается по разному. для 1-го одно, для 2-го другое. При этом один путь не удалось получить какие бы изменения я не делал. Значит это не совсем случайно. 1-й и 2-й вроде бы как должно приблизить значения. Для setup есть запас и вроде бы он немного съелся. а для hold минус тоже должен уменьшиться, но он вырос. И только в 3-м проекте уменьшился. Но там уже setup не выполняется. Вот таблица.




еще меня смущает разное время у Destination Clock в компонентах ODDR (0.418 0.204 ), OBUFDS (1.484 0.842). Да и у других это просматривается. OBUFDS ( 1.366 0.726).
Go to the top of the page
 
+Quote Post
bogaev_roman
сообщение Dec 2 2016, 08:16
Сообщение #7


Профессионал
*****

Группа: Свой
Сообщений: 1 088
Регистрация: 20-10-09
Из: Химки
Пользователь №: 53 082



Цитата(serg_k1 @ Dec 1 2016, 17:31) *
Для setup есть запас и вроде бы он немного съелся. а для hold минус тоже должен уменьшиться, но он вырос. И только в 3-м проекте уменьшился. Но там уже setup не выполняется. Вот таблица.

setup и hold взаимосвязаны, если у Вас будет увеличиваться запас по setup, то будет уменьшаться запас по hold - это нормально. Теперь вопрос - что на максимальное быстродействие для DDR написано в даташите для конкретного чипа?
Думаю, что Вы пытаетесь работать на граничных условиях. Период 400МГц -> 2.5ns, в режиме DDR размер рабочего окна в идеальном случае соответствует 1.25ns из которых Вашими ограничениями съедается еще 0,4ns.
Кстати, распиновка у Вас фиксированная? Смотрю путь тактовой частоты - начало в координате x0y1 (это для клок контрола), а конец x0_y174, для данных x0_y192. Попробуйте вообще отвязать от пинов или подвинуть их ближе друг к другу и к переходу на клоковое дерево. Можно еще попробовать частоту пускать на прямую - без перехода на клоковый буфер.
Go to the top of the page
 
+Quote Post
serg_k1
сообщение Dec 2 2016, 08:56
Сообщение #8


Частый гость
**

Группа: Участник
Сообщений: 115
Регистрация: 21-03-07
Пользователь №: 26 368



Цитата(bogaev_roman @ Dec 2 2016, 12:16) *
setup и hold взаимосвязаны, если у Вас будет увеличиваться запас по setup, то будет уменьшаться запас по hold - это нормально. Теперь вопрос - что на максимальное быстродействие для DDR написано в даташите для конкретного чипа?

но когда я ставлю 1 bufg ( 1-й ---> 2-й) , то setup - запас уменьшается 0.867 ->0.656 , а hold запас тоже уменьшается -0.455 -> -0.709


чип xc7a200tfbg676-2, пока ставлю Artix-7 AC701 Evaluation Platform (xc7a200tfbg676-2)
DS181 ,стр.14


Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- serg_k1   выполнение таймингов, идеология расчетов ,xilinx, vivado   Nov 30 2016, 08:47
- - bogaev_roman   Цитата(serg_k1 @ Nov 30 2016, 11:47) При ...   Nov 30 2016, 09:57
|- - serg_k1   Цитата(bogaev_roman @ Nov 30 2016, 13:57)...   Nov 30 2016, 13:27
||- - bogaev_roman   Цитата(serg_k1 @ Nov 30 2016, 16:27) т.е....   Nov 30 2016, 14:00
|- - serg_k1   Цитата(bogaev_roman @ Nov 30 2016, 13:57)...   Dec 5 2016, 07:27
|- - bogaev_roman   Цитата(serg_k1 @ Dec 5 2016, 10:27) ошибк...   Dec 5 2016, 09:23
|||- - bogaev_roman   Цитата(serg_k1 @ Dec 2 2016, 11:56) но ко...   Dec 3 2016, 09:12
|||- - serg_k1   Цитата(bogaev_roman @ Dec 3 2016, 13:12) ...   Dec 5 2016, 06:18
||- - serg_k1   Цитата(bogaev_roman @ Dec 2 2016, 12:16) ...   Dec 2 2016, 11:47
|- - Shivers   Цитата(serg_k1 @ Dec 1 2016, 17:31) ..И я...   Dec 2 2016, 09:55
- - Flip-fl0p   Раз уж подняли тему констейнов.... Не могли бы вы ...   Dec 5 2016, 13:18
- - bogaev_roman   Цитата(Flip-fl0p @ Dec 5 2016, 16:18...   Dec 5 2016, 14:15
- - Flip-fl0p   Цитата(bogaev_roman @ Dec 5 2016, 17:15) ...   Dec 5 2016, 17:51
- - Shivers   Цитата(Flip-fl0p @ Dec 5 2016, 20:51...   Dec 5 2016, 21:02


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 13:17
Рейтинг@Mail.ru


Страница сгенерированна за 0.01492 секунд с 7
ELECTRONIX ©2004-2016