Jump to content

    
Sign in to follow this  
Vadim_nsk

Как использовать временные ограничения в FPGA?

Recommended Posts

Если используется входная логика типа ISERDES, то задержки не контролируются - там выделенные линии с фиксированной задержкой от входного буфера до ресурса. Управляется задержкой и фазой клока.

Share this post


Link to post
Share on other sites
2 minutes ago, DS said:

Если используется входная логика типа ISERDES, то задержки не контролируются - там выделенные линии с фиксированной задержкой от входного буфера до ресурса. Управляется задержкой и фазой клока.

Если я правильно понимаю,  "ISERDES" используется вместе с  "IDELAYE". Получается задав задержку в поле "CNTVALUEIN" мегафункции "IDELAYE3", это единственный способ управлять задержками на линиях?

Share this post


Link to post
Share on other sites

Может и без задержки. Статически - да. Но обычно используется динамическая автоподстройка, есть аппноты как делать. Для внутренней логики Vivado вполне себе может подобрать задержки, но это выделенные ресурсы, специально под работу или с ручной или с динамической установкой задержки.

Share this post


Link to post
Share on other sites

Проблема в чём. АЦП выравнивает клок на середину данных и отдаёт в ПЛИС, по пути трассировки имеются задержки, данные сдвигаются и иногда происходит потеря данных. Я ставлю блок IDELAYE c управляемыми задержками через регистр, после него ISERDES. Такая система стоит на данных и на FRAME. Таких имеется 8 каналов. При старте системы на некоторых каналах всё хорошо,  на некоторых на 8К отчётов бьётся от 30 до 2000. Играя задержками через регистры, мне удаётся подобрать значения, при которых вся система будет корректно работать без сбоев. Но при следующей компиляции, вся сбивается и те задержки уже не подходят. Иногда у меня получается снова подобрать новые, а иногда как бы я не подбирал, ничего не выходит.. Вот и думаю, может проблема на глобальном уровне и надо что то сделать с входными пинами?

Share this post


Link to post
Share on other sites
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 и так же могут быть использованы как пользовательские вводы-выводы.

Share this post


Link to post
Share on other sites
1 hour ago, Kronac said:

К сожалению не находил аппнотов для XILINX Ultrascale, всё только для 7 серии...

А там разве есть принципиальные отличия ?

Share this post


Link to post
Share on other sites
1 minute ago, DS said:

А там разве есть принципиальные отличия ?

Ну работаю с XILINX  не очень долго, но уже ни один раз наткнулся на то, что конструкции, буферы, функции, параметры, применимые к 7 серии просто недопустимы для работы с ULTRASCALE и имеют аналоги. Даже стандартный интерконнект не подходит, приходится использовать некий новый smartconnect

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this