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

 
 
> TimeQuest. Борьба со slack., Задержки межд Fast input register/DDR reg и регистром приёмником.
Flip-fl0p
сообщение Aug 9 2017, 06:14
Сообщение #1


В поисках себя...
****

Группа: Свой
Сообщений: 729
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140



Работаю c чипом CYCLONE V - 5CSEMA5F31C6. САПР - Quartus 13.1.
Столкнулся с проблемой, что между Fast input register или выходами DDR регистра и регистром-приёмником данных набегает огромная задержка по данным. Из-за чего возникает нарушение по setup.
Для начала опишу кратко дизайн:
Имеем 3 приёмные LVDS линии c DDR регистрами. На вход CLK подается опорная частота, которая на PLL умножается на 10 5, для тактирования приёмников.



TimeQuest радостно сообщает о том, что у нас нарушение по setup и фиг вам, а не частота приёмников выше 200...230 MHZ.



Посмотрим, чуть внимательнее на само нарушение. Набегает огромная задержка почти в 3 нс по данным.


Может Quartus расположил регистры приёмники в другом конце чипа ?
Да нет, ближе практически некуда:



На данный момент у меня есть 2 мысли как можно решить проблему:
1. На pll сформировать частоту со сдвигом, и от неё тактировать регистры-приёмники.
2. На LCELL сформировать цепь задержки тактового сигнала регистров приёмников(тупиковый вариант).

Хотелось бы услышать совета от более опытных коллег. Может есть какой-то другой способ решения проблемы ?
Пока мой SDC файл выглядит так:
Код
#**************************************************************
# Create Clock
#**************************************************************
set_time_format -unit ns -decimal_places 3
create_clock -name {CLK}  -period 80MHz [get_ports {CLK}]

#**************************************************************
# Create PLL Clock
#**************************************************************
derive_pll_clocks

set_false_path -from [get_clocks {MY_PLL_COMP|my_pll_inst|altera_pll_i|general[0].gpll~PLL_OUTPUT_COUNTER|divclk}] -to [get_ports {RX0}]
set_false_path -from [get_clocks {MY_PLL_COMP|my_pll_inst|altera_pll_i|general[0].gpll~PLL_OUTPUT_COUNTER|divclk}] -to [get_ports {RX1}]
set_false_path -from [get_clocks {MY_PLL_COMP|my_pll_inst|altera_pll_i|general[0].gpll~PLL_OUTPUT_COUNTER|divclk}] -to [get_ports {RX2}]


Прикрепляю тестовый проект:

Сообщение отредактировал Flip-fl0p - Aug 9 2017, 07:32
Прикрепленные файлы
Прикрепленный файл  LVDS_RX_3CHANNEL.7z ( 368.83 килобайт ) Кол-во скачиваний: 18
 
Go to the top of the page
 
+Quote Post
3 страниц V   1 2 3 >  
Start new topic
Ответов (1 - 36)
Magnum
сообщение Aug 9 2017, 07:22
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 214
Регистрация: 26-05-05
Пользователь №: 5 397



По идее ДДР должен работать по двум фронтам клока, т.е. при 10-кратной десериализации параллельный клок надо умножать на 5, (а не на 10). ИМХа.
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Aug 9 2017, 07:31
Сообщение #3


В поисках себя...
****

Группа: Свой
Сообщений: 729
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140



Цитата(Magnum @ Aug 9 2017, 10:22) *
По идее ДДР должен работать по двум фронтам клока, т.е. при 10-кратной десериализации параллельный клок надо умножать на 5, (а не на 10). ИМХа.

Да действительно. Неправильно написал. У меня умножается на 5. Подправлю.
Go to the top of the page
 
+Quote Post
Magnum
сообщение Aug 9 2017, 07:50
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 214
Регистрация: 26-05-05
Пользователь №: 5 397



А если например в чип-планере выходной сдвиговый регистр погонять по чипу (ближе/дальше от пина), то слак сильно различается?
Go to the top of the page
 
+Quote Post
bogaev_roman
сообщение Aug 9 2017, 08:04
Сообщение #5


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

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



Цитата(Flip-fl0p @ Aug 9 2017, 09:14) *
Да нет, ближе практически некуда:

Два вопроса:
1. Проверьте задержку в IO буфере (delay chain) и приведите цифру.
2. Где расположена pll, от которой питается вся логика - не в другом ли она конце fpga, точно ли этот клок глобальный (пессимизм большой и сам разброс значений для клока)?
ЗЫ. Я так понимаю пины у Вас жестко привязаны (между ними банк памяти или умножитель, что не есть хорошо)? Ради интереса попробуйте их отвязать и посмотреть результат.
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Aug 9 2017, 08:04
Сообщение #6


В поисках себя...
****

Группа: Свой
Сообщений: 729
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140



Цитата(Magnum @ Aug 9 2017, 10:50) *
А если например в чип-планере выходной сдвиговый регистр погонять по чипу (ближе/дальше от пина), то слак сильно различается?

Отличается не сильно. А как вообще правильно вручную двигать ячейки ? У меня после того, как я подвинул и нажал кнопку "Check and Save all netlist changes" quartus начинает компилировать проект, и возвращает все изменения обратно...

Код
1. Проверьте задержку в IO буфере (delay chain) и приведите цифру.
2. Где расположена pll, от которой питается вся логика - не в другом ли она конце fpga?
ЗЫ. Я так понимаю пины у Вас жестко привязаны (между ними банк памяти или умножитель, что не есть хорошо)? Ради интереса попробуйте их отвязать и посмотреть результат.

Задержка везде по нулям.
Есть фракционный PLL чуть ближе. :
Сейчас PLL расположен тут(см. картинку)


А вот компиляция проекта с "отвязанными" пинами дала поразительный результат: слаки все ушли и времянка выполняется...
Пути совершенно другие стали:



Сообщение отредактировал Flip-fl0p - Aug 9 2017, 08:35
Go to the top of the page
 
+Quote Post
Magnum
сообщение Aug 9 2017, 08:38
Сообщение #7


Местный
***

Группа: Свой
Сообщений: 214
Регистрация: 26-05-05
Пользователь №: 5 397



Цитата
А как вообще правильно вручную двигать ячейки

Я обычно в окошке "логик лок регион виндов" создаю некий тематический "рут регион", задаю его координаты, размерность, фиксируемость и в свойствах накидываю всё то барахло, которое хочу в него запихнуть.
Go to the top of the page
 
+Quote Post
bogaev_roman
сообщение Aug 9 2017, 08:54
Сообщение #8


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

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



Цитата(Flip-fl0p @ Aug 9 2017, 11:04) *
Пути совершенно другие стали:

Проанализируйте два отличия:
1. Существенно поменялось время IC (хотя Вы написали, что задержка в io-буферах 0).
2. Существенно уменьшился разброс clocks_patch (все-таки убедитесь, что в первом случае клок пошел по глобальной шине клоков и, по возможности, используйте клокконтрол поближе к рабочей логике).
ЗЫ. Кроме этой логики в проекте есть еще какая-то другая логика, стоящая после этих регистров (проект посмотреть в данный момент времени возможности нет)? Если есть, попробуйте ее убрать.
ЗЫЫ. Ограничения на размещение я обычно прописываю прямо в .qsf- файле. Изначально их можно задавать в assignement editor,.
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Aug 9 2017, 09:02
Сообщение #9


В поисках себя...
****

Группа: Свой
Сообщений: 729
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140



Цитата(bogaev_roman @ Aug 9 2017, 11:54) *
Проанализируйте два отличия:
1. Существенно поменялось время IC (хотя Вы написали, что задержка в io-буферах 0).
2. Существенно уменьшился разброс clocks_patch (все-таки убедитесь, что в первом случае клок пошел по глобальной шине клоков и, по возможности, используйте клокконтрол поближе к рабочей логике).
ЗЫ. Кроме этой логики в проекте есть еще какая-то другая логика, стоящая после этих регистров (проект посмотреть в данный момент времени возможности нет)? Если есть, попробуйте ее убрать.
ЗЫЫ. Ограничения на размещение я обычно прописываю прямо в .qsf- файле. Изначально их можно задавать в assignement editor,.

Никакой логики в проекте нет (за исключением небольшого ряда мультиплексоров, которые никак не влияют на текущий результат работы). Вот структута приёмника:


Go to the top of the page
 
+Quote Post
Magnum
сообщение Aug 9 2017, 10:01
Сообщение #10


Местный
***

Группа: Свой
Сообщений: 214
Регистрация: 26-05-05
Пользователь №: 5 397



А если например поставить в ДДР лпм галочку регистеред аутпут, то до того регистра, тоже будет такая большая задержка?
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Aug 9 2017, 10:24
Сообщение #11


В поисках себя...
****

Группа: Свой
Сообщений: 729
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140



Цитата(Magnum @ Aug 9 2017, 13:01) *
А если например поставить в ДДР лпм галочку регистеред аутпут, то до того регистра, тоже будет такая большая задержка?

У меня такой нет sad.gif
Go to the top of the page
 
+Quote Post
Magnum
сообщение Aug 9 2017, 10:30
Сообщение #12


Местный
***

Группа: Свой
Сообщений: 214
Регистрация: 26-05-05
Пользователь №: 5 397



Цитата(Flip-fl0p @ Aug 9 2017, 17:24) *
У меня такой нет sad.gif

как же так? вот тут смотрели?

Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Aug 9 2017, 10:39
Сообщение #13


В поисках себя...
****

Группа: Свой
Сообщений: 729
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140



В 5 циклоне похоже таких нет...



У меня нет ALTLVDS_RX. У меня самописный приёмник. По некоторым причинам ALTLVDS_RX не подходит.

Сообщение отредактировал Flip-fl0p - Aug 9 2017, 10:43
Go to the top of the page
 
+Quote Post
Magnum
сообщение Aug 9 2017, 10:41
Сообщение #14


Местный
***

Группа: Свой
Сообщений: 214
Регистрация: 26-05-05
Пользователь №: 5 397



Отнюдь, очевидно это просто разные библиотеки.
Go to the top of the page
 
+Quote Post
bogaev_roman
сообщение Aug 9 2017, 10:53
Сообщение #15


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

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



Цитата(Flip-fl0p @ Aug 9 2017, 13:39) *
В 5 циклоне похоже таких нет...
У меня нет ALTLVDS_RX. У меня самописный приёмник. По некоторым причинам ALTLVDS_RX не подходит.

Все равно на выходе будет обычный дополнительный регистр на рассыпухе. Входной io буфер для данного случая представляет из себя DDIO in из трех регистров и цепочки delay chain, там физически что-то еще дополнительно засунуть нельзя.
Go to the top of the page
 
+Quote Post
Magnum
сообщение Aug 9 2017, 10:57
Сообщение #16


Местный
***

Группа: Свой
Сообщений: 214
Регистрация: 26-05-05
Пользователь №: 5 397



Цитата(Flip-fl0p @ Aug 9 2017, 17:39) *
У меня нет ALTLVDS_RX. У меня самописный приёмник. По некоторым причинам ALTLVDS_RX не подходит.

А что именно за причины? Это ж 1в1 для режима ддр тоже самое.
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Aug 9 2017, 11:10
Сообщение #17


В поисках себя...
****

Группа: Свой
Сообщений: 729
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140



Цитата(Magnum @ Aug 9 2017, 13:57) *
А что именно за причины? Это ж 1в1 для режима ддр тоже самое.

Для подстройки фазы клока я применяю выводы для управления динамическим сдвигом, для этого ALT_LVDS_RX я запускаю в режиме EXTERNAL_PLL. Поэтому между ALT_LVDS_RX и PLL необходимо применять клоковый буфер, который требует 2 частоты с PLL, иначе работать не будет. А 2 частоты я не могу применить из-за того, что мне просто не хватит выводов PLL для динамической подстройки. А вот попробовать применить ALT_LVDS_RX в качестве DDR приёмника - это мысль.

Сообщение отредактировал Flip-fl0p - Aug 9 2017, 11:53
Go to the top of the page
 
+Quote Post
Magnum
сообщение Aug 9 2017, 11:32
Сообщение #18


Местный
***

Группа: Свой
Сообщений: 214
Регистрация: 26-05-05
Пользователь №: 5 397



В том и фишка, при 2 разрядном выходе лвдс_рх вырождается в ддр с одним клоком.
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Aug 9 2017, 12:03
Сообщение #19


В поисках себя...
****

Группа: Свой
Сообщений: 729
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140



Цитата(Magnum @ Aug 9 2017, 14:32) *
В том и фишка, при 2 разрядном выходе лвдс_рх вырождается в ддр с одним клоком.

Результат аналогичный:

Проблема появляется если входы размещены в банке IOBANK_4A.
Если входы разместить в банке IOBANK_5B - то проблема уходит.
P.S. Реальная железка работает без нареканий wacko.gif
Quartus 15.0 результат аналогичный...

Сообщение отредактировал Flip-fl0p - Aug 9 2017, 12:05
Go to the top of the page
 
+Quote Post
bogaev_roman
сообщение Aug 9 2017, 12:26
Сообщение #20


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

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



Цитата(Flip-fl0p @ Aug 9 2017, 15:03) *
P.S. Реальная железка работает без нареканий wacko.gif

Временная модель, приведенная Вами - скорее всего для худшего случая (slow - повышенная температура, пониженное напряжение и технологический разброс). Все-таки Вы уверены, что клок идет по глобальной линии клока? Интересно посмотреть запас по холду, если он большой, то можно попробовать фазу подергать.
Зы Посмотрел внимательно на последний отчет по времянке, у Вас ограничения не потерялись в sdc (relationship соответствует 1нс, а должен по идее 2.5нс)?
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Aug 9 2017, 12:36
Сообщение #21


В поисках себя...
****

Группа: Свой
Сообщений: 729
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140



Цитата(bogaev_roman @ Aug 9 2017, 15:26) *
Временная модель, приведенная Вами - скорее всего для худшего случая (slow - повышенная температура, пониженное напряжение и технологический разброс). Все-таки Вы уверены, что клок идет по глобальной линии клока? Интересно посмотреть запас по холду, если он большой, то можно попробовать фазу подергать.
Зы Посмотрел внимательно на последний отчет по времянке, у Вас ограничения не потерялись в sdc (relationship соответствует 1нс, а должен по идее 2.5нс)?

В последнем отчете, я даже на задавл констрейны. Я Посмотрел на FMAX, посмотрел на слаки - и сделал вывод о том, что этот вариант так-же не работает. Не думаю, что если я поставлю PLL, задам констрейны он будет отличаться.

Сообщение отредактировал Flip-fl0p - Aug 9 2017, 12:36
Go to the top of the page
 
+Quote Post
bogaev_roman
сообщение Aug 9 2017, 12:57
Сообщение #22


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

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



Цитата(Flip-fl0p @ Aug 9 2017, 15:36) *
В последнем отчете, я даже на задавл констрейны. Я Посмотрел на FMAX, посмотрел на слаки - и сделал вывод о том, что этот вариант так-же не работает. Не думаю, что если я поставлю PLL, задам констрейны он будет отличаться.

Задайте ограничения, тогда slack уменьшится до -2нс, потом сдвиньте приемную частоту больше, чем на 2нс (300градусов), если hold не вылезет, то по setup должно пройти (в идеальном случае). Но откуда там набегает 3нс при переходе от ddr регистра до обычного в соседней ячейке - загадка.
Go to the top of the page
 
+Quote Post
andrew_b
сообщение Aug 9 2017, 14:02
Сообщение #23


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

Группа: Свой
Сообщений: 1 975
Регистрация: 30-12-04
Из: Воронеж
Пользователь №: 1 757



Цитата(bogaev_roman @ Aug 9 2017, 15:57) *
Но откуда там набегает 3нс при переходе от ddr регистра до обычного в соседней ячейке - загадка.
Вероятно, отгадка такая:
Цитата(http://www.alteraforum.com/forum/showthread.php?t=45705&p=189491#post189491)
Cyclone V DQ pin used for user pin(not DDR DQ pin), always need to route through HMCPHY_RE. this routing element would cause almost 2ns differnece between setup and hold. no way to bypass it.
so never use DQ pins as high speed input or output in cyclone V
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Aug 9 2017, 14:09
Сообщение #24


В поисках себя...
****

Группа: Свой
Сообщений: 729
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140



Цитата(andrew_b @ Aug 9 2017, 17:02) *
Вероятно, отгадка такая:

Ох ё... Это многое объясняет. В handboock на cyclone 5 я даже не видел ничего похожего (неудивительно 3800 страниц...).

Сообщение отредактировал Flip-fl0p - Aug 9 2017, 14:10
Go to the top of the page
 
+Quote Post
bogaev_roman
сообщение Aug 9 2017, 14:16
Сообщение #25


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

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



Цитата(andrew_b @ Aug 9 2017, 17:02) *
Вероятно, отгадка такая:

Очень интересно. Архитектурная особенность только для cyclone V или для других семейств типа arriaV тоже?
Go to the top of the page
 
+Quote Post
andrew_b
сообщение Aug 9 2017, 14:20
Сообщение #26


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

Группа: Свой
Сообщений: 1 975
Регистрация: 30-12-04
Из: Воронеж
Пользователь №: 1 757



Цитата(bogaev_roman @ Aug 9 2017, 17:16) *
Очень интересно. Архитектурная особенность только для cyclone V или для других семейств типа arriaV тоже?
Про Арию не знаю, не работал. В Циклоне я столкнулся со слаками пару лет назад: https://electronix.ru/forum/index.php?showtopic=130681
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Aug 9 2017, 15:34
Сообщение #27


В поисках себя...
****

Группа: Свой
Сообщений: 729
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140



Остался ещё один нерешённый вопрос. Почему Quartus удалил частоты С1 и С2 созданные на PLL.... И оставил только С0. Он их не будет "оптимизировать" только если я каждой частоте назначу разные сдвиги фаз.
Да и почему железка то работает как положено и самое главное стабильно, имея такое нарушение по Setup ?

Сообщение отредактировал Flip-fl0p - Aug 9 2017, 15:35
Go to the top of the page
 
+Quote Post
Magnum
сообщение Aug 9 2017, 17:20
Сообщение #28


Местный
***

Группа: Свой
Сообщений: 214
Регистрация: 26-05-05
Пользователь №: 5 397



Цитата(Flip-fl0p @ Aug 9 2017, 22:34) *
и почему железка то работает как положено и самое главное стабильно, имея такое нарушение по Setup ?

А что удивительного? если задержка ровно на такт у вас, то всё и работает как надо, другое дело, если вы начнете её в температуре гонять, от нулей до +70С, там могут начаться чудеса. Ну и при массовом производстве могут на разных экземплярах разные результаты получаться.
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Aug 10 2017, 08:19
Сообщение #29


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Упаду на хвост по теме. Не удаётся выполнить выходные времянки для ЦАП(Fclk = 100MHz,SDR,Cyclon III).
Код
set_output_delay 5 -max -clock {clk_dac} [get_ports {dac_*}]
set_output_delay -3 -min -clock {clk_dac} [get_ports {dac_*}]

Клок в плис приходит от ЦАП -> PLL -> формирование данных, fast_output_register задействован.
Вращение фазы PLL нужного эффекта не приносит. Почему-то на io_obuf задержка 5,3нс и разница на двух битах достигает 5,3 - 2,3 = 3нс.
Что посоветуете,коллеги?
Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
bogaev_roman
сообщение Aug 10 2017, 09:16
Сообщение #30


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

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



Цитата(_Anatoliy @ Aug 10 2017, 11:19) *
Что посоветуете,коллеги?

Эти ограничения из даташита (просто максимальное окно на работу при них получается всего 10-5-3=2нс)? clk_dac - это выход pll (из приведенных ограничений не видно)? Для подробного анализа можете привести схему чипланнера, на которой показаны расположения io-буферов и pll (может они по всему периметру раскиданы, так непонятно)?
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Aug 10 2017, 09:41
Сообщение #31


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Цитата(bogaev_roman @ Aug 10 2017, 12:16) *
Эти ограничения из даташита (просто максимальное окно на работу при них получается всего 10-5-3=2нс)? clk_dac - это выход pll (из приведенных ограничений не видно)? Для подробного анализа можете привести схему чипланнера, на которой показаны расположения io-буферов и pll (может они по всему периметру раскиданы, так непонятно)?

Да, из даташита. Окно действительно очень маленькое.
clk_dac - это выход pll
С чиппланером я не очень дружу. io-буфер видно, а как ещё и PLL показать?
Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
bogaev_roman
сообщение Aug 10 2017, 10:09
Сообщение #32


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

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



Цитата(_Anatoliy @ Aug 10 2017, 12:41) *
С чиппланером я не очень дружу. io-буфер видно, а как ещё и PLL показать?

Я сигналы сначала в timequest нахожу, потом правой кнопкой locate->chip planner, в окне chipplanner в show physical routing выделяю появившийся объект, слева (типа окна инструментов) можно подключить к этому объекту fan in/fan out, общее масштабирование - ctrl+колесо мыши. Таким образом можно посмотреть необходимые объекты на всей площади fpga.
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Aug 10 2017, 10:19
Сообщение #33


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Цитата(bogaev_roman @ Aug 10 2017, 13:09) *
Я сигналы сначала в timequest нахожу, потом правой кнопкой locate->chip planner, в окне chipplanner в show physical routing выделяю появившийся объект, слева (типа окна инструментов) можно подключить к этому объекту fan in/fan out, общее масштабирование - ctrl+колесо мыши. Таким образом можно посмотреть необходимые объекты на всей площади fpga.

Спасибо! Длинная линия внизу это путь клока от PLL до io_obuf. Это для dac_im[0].
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
bogaev_roman
сообщение Aug 10 2017, 10:32
Сообщение #34


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

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



Цитата(_Anatoliy @ Aug 10 2017, 13:19) *
Это для dac_im[0].

Можно сразу все dac_im* вытащить со всеми fan-in. Чтобы понять откуда разбег в 3нс получается приведите еще и путь для другого выхода (скорее всего пины находятся между банками памяти или dsp-блоками).
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Aug 10 2017, 11:26
Сообщение #35


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Цитата(bogaev_roman @ Aug 10 2017, 13:32) *
Можно сразу все dac_im* вытащить со всеми fan-in. Чтобы понять откуда разбег в 3нс получается приведите еще и путь для другого выхода (скорее всего пины находятся между банками памяти или dsp-блоками).

А как эту * поставить?

Здесь можно выбрать только один бит из списка.
Не выходит у меня вывести всю шину. На снимке справа внизу подсвеченные синим - это мои io_obuf. Внизу по центру - PLL. Показан клок для dac_im[10]. Вроде не через весь кристалл связи идут.

Разбежка в задержках клока в пределах шины = 1,641 - 1,582 = 0,059нс. Думаю что дело не в клоке, а разбежка задержек данных в пределах шины как раз и даёт те клятые 3,0 нс...

Но ведь в лапах стоят триггеры, они ведь должны устранить этот разбег данных wacko.gif
Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Aug 19 2017, 07:32
Сообщение #36


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Коллеги, а есть то она вообще, правда на земле? Может мне кто нибудь объяснить как с указанными Th и Tsu входного интерфейса ЦАП можно работать с тактовой 160МГц?
Thsu = Tsu - Th = 5 - (-3.2) = 8.2ns
T = 1 / F = 1 / 160 = 6.25ns
Thsu > T
Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
otv116
сообщение Feb 21 2018, 07:18
Сообщение #37


Участник
*

Группа: Участник
Сообщений: 34
Регистрация: 25-04-05
Пользователь №: 4 466



Цитата(andrew_b @ Aug 9 2017, 17:02) *
Вероятно, отгадка такая:


Большое спасибо, andrew_b, за эту находку. Который день мучаюсь с подобной проблемой. С одного пина быстро долетает, с другого тупит. Уже голову сломал.
Ну и г.. этот CycloneV, столько гадостей в нем, что его достоинства не всегда их могут перебороть.
Go to the top of the page
 
+Quote Post

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

 


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


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