DS 0 16 декабря, 2020 Опубликовано 16 декабря, 2020 · Жалоба Если используется входная логика типа ISERDES, то задержки не контролируются - там выделенные линии с фиксированной задержкой от входного буфера до ресурса. Управляется задержкой и фазой клока. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kronac 0 16 декабря, 2020 Опубликовано 16 декабря, 2020 · Жалоба 2 minutes ago, DS said: Если используется входная логика типа ISERDES, то задержки не контролируются - там выделенные линии с фиксированной задержкой от входного буфера до ресурса. Управляется задержкой и фазой клока. Если я правильно понимаю, "ISERDES" используется вместе с "IDELAYE". Получается задав задержку в поле "CNTVALUEIN" мегафункции "IDELAYE3", это единственный способ управлять задержками на линиях? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DS 0 16 декабря, 2020 Опубликовано 16 декабря, 2020 · Жалоба Может и без задержки. Статически - да. Но обычно используется динамическая автоподстройка, есть аппноты как делать. Для внутренней логики Vivado вполне себе может подобрать задержки, но это выделенные ресурсы, специально под работу или с ручной или с динамической установкой задержки. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kronac 0 16 декабря, 2020 Опубликовано 16 декабря, 2020 · Жалоба К сожалению не находил аппнотов для XILINX Ultrascale, всё только для 7 серии... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
blackfin 16 16 декабря, 2020 Опубликовано 16 декабря, 2020 · Жалоба XAPP1274? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kronac 0 16 декабря, 2020 Опубликовано 16 декабря, 2020 · Жалоба Проблема в чём. АЦП выравнивает клок на середину данных и отдаёт в ПЛИС, по пути трассировки имеются задержки, данные сдвигаются и иногда происходит потеря данных. Я ставлю блок IDELAYE c управляемыми задержками через регистр, после него ISERDES. Такая система стоит на данных и на FRAME. Таких имеется 8 каналов. При старте системы на некоторых каналах всё хорошо, на некоторых на 8К отчётов бьётся от 30 до 2000. Играя задержками через регистры, мне удаётся подобрать значения, при которых вся система будет корректно работать без сбоев. Но при следующей компиляции, вся сбивается и те задержки уже не подходят. Иногда у меня получается снова подобрать новые, а иногда как бы я не подбирал, ничего не выходит.. Вот и думаю, может проблема на глобальном уровне и надо что то сделать с входными пинами? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
nice_vladi 1 16 декабря, 2020 Опубликовано 16 декабря, 2020 · Жалоба 1 hour ago, Kronac said: Добрый день, может кто и мне поможет. Принимаю данные с АЦП (ADS42LB69) Работаю в QDR режиме. ПЛИС KINTEX ULTRASCALE (XILINX). Имеется 4 АЦП двухканальных, у каждого канала 4 линии, которые работают в QDR режиме, частота aclk (500MHz) и сигнал FRAME (по факту он равен 250МГц хоть и не является клоком) Стробируя по фрейму получаю необходимые мне 16 отчётов в QDR режиме. Всё бы хорошо, но иногда данные бьются и теряется какой то из бит. Пересмотрел различные примеры, в некоторых случаях объявляют фрейм как клок в xdc файле а затем задают set_false_path между фреймом и частотой aclk. Я так понимаю, это не совсем правильный подход. Верным будет указать ручками правильные ограничения для входных сигналов "set input/output delay" Как это сделать правильно не представляю. Раньше работал только с Altera, Quartus делает это всё автоматически и думать не приходится. Была ли похожая проблема у кого? Проверьте внимательно ноги, на которые заведены сигналы. Работают ли они на такой большой частоте? Бился как-то с похожей проблемой (правда, у альтеры). Оказалось, что шина АЦП была заведена на специфичные ножки ПЛИС, которые не могут в большие частоты в режиме user i/o. Могу наврать, но вроде это были ноги DQ/DQS, которые заводятся на memory controller и так же могут быть использованы как пользовательские вводы-выводы. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DS 0 16 декабря, 2020 Опубликовано 16 декабря, 2020 · Жалоба 1 hour ago, Kronac said: К сожалению не находил аппнотов для XILINX Ultrascale, всё только для 7 серии... А там разве есть принципиальные отличия ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kronac 0 16 декабря, 2020 Опубликовано 16 декабря, 2020 · Жалоба 1 minute ago, DS said: А там разве есть принципиальные отличия ? Ну работаю с XILINX не очень долго, но уже ни один раз наткнулся на то, что конструкции, буферы, функции, параметры, применимые к 7 серии просто недопустимы для работы с ULTRASCALE и имеют аналоги. Даже стандартный интерконнект не подходит, приходится использовать некий новый smartconnect Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DS 0 16 декабря, 2020 Опубликовано 16 декабря, 2020 · Жалоба Да, параметры другие, но идеология та же. Можно взять принцип из аппноты и сделать так же с учетом особенностей. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться