Детерминированная задержка в преобразователях стандарта JESD204B: ответы на вопросы
В системах высокоскоростной дискретизации и обработки сигналов на основе массива синхронизированных аналого-цифровых преобразователей (АЦП) первостепенное значение имеет устранение расфазировки и согласование разброса задержек между преобразователями. Крайне важно проектировать систему с опорой на эту функцию, так как любое рассогласование задержек на пути от аналоговых входов до блоков обработки данных приводит к ухудшению характеристик. Выравнивание выборок также необходимо при обработке в режиме временного чередования, когда выборки с соседних преобразователей отстоят друг от друга на долю периода тактовой частоты.
Одной из ключевых особенностей JESD204B — 3‑го поколения стандарта последовательного интерфейса быстродействующих преобразователей данных — является возможность определения детерминированной задержки для каждого преобразователя в системе. Правильно понимая суть этой функции и надлежащим образом ее используя, можно создать систему аналого-цифрового преобразования из множества АЦП, работающих синхронно или в режиме временного чередования.
Что такое детерминированная задержка и как она определяется в стандарте JESD204B?
Детерминированная задержка на линии интерфейса JESD204B определяется как время распространения последовательных данных от блока формирования кадров на параллельном входе передатчика (АЦП или выход ПЛИС) до блока расформирования кадров на параллельном выходе приемника (цифро-аналоговый преобразователь или вход ПЛИС). Это время обычно измеряется либо в разрешаемых периодах сигнала кадровой синхронизации (FRAME CLK), либо в периодах сигнала тактовой синхронизации (CLK) устройства.
В определении детерминированной задержки, используемом в стандарте JESD204B, не учитывается время прохождения сигнала во входном аналоговом тракте АЦП и выходном аналоговом тракте цифро-аналогового преобразователя (ЦАП). Учету подлежит только время от формирования до расформирования цифровых кадров интерфейса JESD204B. Эта задержка зависит не только от двух активных устройств, но и от путей прохождения сигналов между ними в пространстве. Следовательно, в системе из множества преобразователей детерминированная задержка на конкретной линии связи может оказаться больше или меньше, в зависимости от длины дорожек интерфейса JESD204B и задержек в них. Скомпенсировать разницу в задержках, обусловленную путями прохождения, можно с помощью буферных задержек в приемнике (рис. 1).
Вместо использования простой конфигурации последовательной линии связи, например низковольтной дифференциальной передачи сигналов (LVDS), в интерфейсе JESD204B выборки данных объединяются в кадры. Граница каждого кадра из нескольких выборок маркируется специальным управляющим символом в ходе квитирования, или трансляции передатчиком начальной последовательности синхронизации линии (initial lane alignment sequence, ILAS). Группа кадров установленного размера, называемая мультикадром (multiframe), также маркируется соответствующим управляющим символом в ILAS. После передачи этой последовательности управляющие символы более не нужны, и можно использовать всю пропускную способность линии связи. Границы кадра и мультикадра совпадают с сигналами кадровой и мультикадровой синхронизации (MULTIFRAME CLK) соответственно.
Что означают подклассы протокола JESD204B в контексте детерминированной задержки?
В протоколе JESD204B есть три подкласса, определяющих возможность и методы работы с детерминированной задержкой линии связи. Подкласс 0, обратно совместимый с JESD204 и JESD204A, не поддерживает работу с детерминированной задержкой. Подкласс 1 поддерживает работу с детерминированной задержкой, применяя системный опорный сигнал SYSREF. Подкласс 2 поддерживает работу с детерминированной задержкой путем использования сигнала ~SYNC, у которого также есть второе назначение: с его помощью приемник может инициировать процедуру квитирования ILAS. Выбор подкласса для проектируемой системы определяется возможностью точно располагать сигналы SYSREF или ~SYNC во времени относительно синхросигнала.
Как можно использовать детерминированную задержку для выравнивания выборок между несколькими преобразователями?
В реализациях преобразователей, соответствующих подклассу 1, производится внутреннее выравнивание сигналов кадровой и мультикадровой синхронизации на каждом устройстве по фронту системного опорного сигнала SYSREF. При обнаружении фронта сигнала SYSREF оба синхросигнала совмещаются с ним во времени. Поскольку эти синхросигналы остаются внутренними для каждого устройства, их границы в каждом передатчике обозначаются управляющими символами, транслируемыми по линии последовательной передачи данных.
Каждый приемник может неявным образом дешифрировать положение сигналов кадровой и мультикадровой синхронизации во времени относительно собственных синхросигналов того же наименования и относительно всех передающих устройств. Это позволяет устранять расфазировку выборок в приемнике по относительно раннему прибытию данных для синхронизации линии связи с последними прибывшими данными, используя буферные задержки (рис. 2).
Для синхронной выборки эти линии передачи данных могут быть синхронизированы с FPGA. Для выборки в режиме временного чередования можно сообщить каждой линии соответствующую относительную задержку по фазе. Детерминированную задержку каждой линии можно определить, измерив интервал времени от фронта сигнала мультикадровой синхронизации приемника до управляющего символа мультикадра на соответствующей линии. Единственное ограничение здесь состоит в том, что детерминированная задержка каждой линии должна быть меньше периода сигнала мультикадровой синхронизации (рис. 3).
Детерминированная задержка — это то же самое, что и полная задержка преобразователя?
Полная задержка АЦП — это время, затрачиваемое на выборку аналогового сигнала, его обработку и вывод в цифровом виде. Сходным образом, полная задержка ЦАП — время, проходящее от ввода в него числового значения до вывода соответствующего аналогового уровня. Как правило, оба параметра измеряются в периодах тактового сигнала, поскольку зависят от частоты, что до некоторой степени определяется архитектурой аналогового тракта обработки в одиночном преобразователе. Это принципиально не то же самое, что детерминированная задержка в реализации линии связи интерфейса JESD204B, зависящая от трех составляющих.
Каков максимальный временной запас по устранению расфазировки выборок на множестве преобразователей?
В ходе процедуры ILAS передатчик транслирует управляющие символы мультикадра, которыми обозначаются границы сигналов мультикадровой синхронизации. Приемник распознает эти символы и на их основе вырабатывает собственный, локальный сигнал мультикадровой синхронизации, выровненный с каждым из передатчиков. В случае больших массивов АЦП, когда используется несколько приемников, сигналы мультикадровой синхронизации выравниваются также между всеми приемниками. А потому детерминированная задержка любой линии связи от преобразователя не может превышать одного периода сигнала мультикадровой синхронизации. Это и есть максимальный временной запас по устранению расфазировки выборок на всех линиях.
Обычно период сигнала мультикадровой синхронизации составляет десятки периодов частоты дискретизации. Его длительность можно увеличить или уменьшить установкой значений конфигурационных параметров, которые передаются в ходе квитирования линии связи.
Обеспечит ли также эта функция корректное временное выравнивание выборок на ЦАП или потребуются дополнительные меры?
Детерминированная задержка позволяет выравнивать выборки во времени по их прибытии на блок формирования кадров интерфейса JESD204B. Помимо этой задержки, у АЦП будет дополнительная задержка на обработку выборки в аналоговом тракте до прибытия на блок формирования кадров JESD204B. Поставщик преобразователя должен указать эту задержку, выраженную в периодах тактового сигнала. В случае ЦАП понадобится дополнительное время на обработку выборки после блока расформирования кадров для ее вывода в аналоговой форме.
Сколько времени требуется на выравнивание, прежде чем будут готовы данные выборки?
Процесс выравнивания запускается фронтом сигнала SYSREF, поступающим на преобразователь и FPGA. Прежде чем данные выборки будут готовы, должно пройти несколько периодов сигнала мультикадровой синхронизации плюс время, необходимое для передачи последовательности ILAS. В сумме это эквивалентно множеству периодов частоты дискретизации. Конкретная длительность может зависеть от специфических детерминированных задержек ядра JESD204B в преобразователе, и такое значение должен сообщить поставщик. В течение всего указанного времени линия находится в неактивном состоянии и корректные данные не передаются. В абсолютном выражении длительность выравнивания является функцией частоты дискретизации.
В чем состоит главная трудность проектирования систем для синхронной дискретизации?
Одна из главных трудностей, связанных с реализацией обработки в синхронном режиме или в режиме временного чередования на уровне отдельных выборок в рамках подкласса 1, — выравнивание во времени разрешающего фронта сигнала SYSREF между несколькими преобразователями. К тому же фронт каждого сигнала SYSREF должен располагаться на временной оси относительно соответствующего сигнала частоты дискретизации с учетом времени установления и удержания. Это несколько уменьшает располагаемый временной запас. Возможность активной и независимой точной коррекции разности фаз между сигналом SYSREF и соответствующим тактовым сигналом поможет обеспечить точную синхронизацию между преобразователями.
Обязан ли сигнал SYSREF быть однократным — или же он может быть повторяющимся?
Сигнал SYSREF, по фронтам которого производится выравнивание, может представлять собой одиночный импульс, периодический, кусочно-периодический или повторяющийся апериодический сигнал. Это диктуется требованиями к системе и возможностью гибкой коррекции разности фаз между тактовым сигналом и сигналом SYSREF в тактовом генераторе. Если сигнал SYSREF имеет повторяющийся характер, сигналы кадровой и мультикадровой синхронизации выравниваются заново при каждом его повторении. Но поскольку цель состоит в том, чтобы получить выровненный во времени набор синхросигналов, разрешающий фронт повторяющегося периодического сигнала SYSREF должен приходиться на границы сигнала мультикадровой синхронизации. Так как за первым фронтом сигнала SYSREF синхросигналы должны быть уже выровнены, это избавит от лишнего повторного выравнивания.
Один из недостатков периодического сигнала SYSREF заключается в том, что он способен создавать наводку на исследуемый аналоговый сигнал. Поэтому периодические сигналы не всегда рекомендуются к употреблению, и их следует применять только в случае абсолютной необходимости. Если все же используется периодический сигнал SYSREF, нужно позаботиться о его надлежащей развязке с аналоговым трактом АЦП.
Какие есть способы удержать расфазировку сигнала SYSREF в пределах одного периода тактового сигнала?
В идеальном случае можно было бы точно выверить пути прохождения сигнала SYSREF и тактовых сигналов каждого преобразователя и FPGA с временны′м запасом для строгого учета периода установления и удержания всех компонентов. Но ввиду постоянного роста частот дискретизации быстродействующих преобразователей уже не всегда удается достичь идеального выравнивания во времени одной только разводкой дорожек печатной платы. Разброс параметров между выводами компонентов вкупе с их уходом под влиянием напряжения питания и температуры может привести к относительно сильной расфазировке в пределах массива быстродействующих преобразователей. Для активной коррекции расфазировки сигнала SYSREF иногда требуются и дополнительные меры.
Например, в оповещении от АЦП может передаваться информация о том, попал ли фронт сигнала SYSREF в интервалы времени установления и удержания. Если подобное произошло, возникает неопределенность относительно того, какой фронт тактового сигнала следует принимать за точку отсчета — N‑ный или N+1‑ный. В зависимости от того, когда был зафиксирован фронт сигнала SYSREF, можно придавать тактовому сигналу CLK задержку по фазе относительно SYSREF в тактовом генераторе, чтобы обеспечить корректное положение фронта сигнала SYSREF относительно интервалов времени установления и удержания.
Другой вариант — ориентироваться на задний, а не на передний фронт тактового сигнала, чтобы получить запас по фазе в половину периода. Так удается настроить каждый преобразователь в системе при условии, что в тактовом генераторе предусмотрена возможность независимой коррекции разности фаз между соответствующими сигналами SYSREF и CLK (рис. 4).
Обязателен ли преобразователь с поддержкой подклассов 1 или 2 для работы с детерминированной задержкой?
Согласно стандарту JESD204B, работу с детерминированной задержкой поддерживают только подклассы 1 и 2. В подклассе 1 детерминированная задержка определяется сигналом SYSREF, а в подклассе 2 — сигналом ~SYNC. Некоторые поставщики преобразователей создали реализацию подкласса 0, предназначенную для применения в схеме синхронизации с выравниванием выборок. В этом случае процедура выравнивания сигналов мультикадровой синхронизации между преобразователями и FPGA не используется.
Для маркировки фронта сигнала SYSREF применим механизм временных меток на уровне выборок путем дополнения данных так называемыми управляющими битами. Каждая выборка, совпадающая с фронтом сигнала SYSREF, маркируется специальным управляющим битом. Каждой линии, на которой обнаруживается эта временная метка, можно придавать в FPGA задержку, соответствующую самому длинному пути, а затем выравнивать линии друг относительно друга вне зависимости от разницы в задержках между преобразователями (рис. 5 и 6).
Как реализовать поддержку детерминированной задержки в ПЛИС?
Компания Intel (подразделение Intel PSG, бывшая Altera) предоставляет IP-ядро для поддержки JESD204B в различных сериях ПЛИС и системах на кристале (SoC). Ядро содержит полную реализацию физического и канального уровней, что позволяет использовать его с большинством доступных АЦП и ЦАП, в том числе с новейшими микросхемами Analog Devices. Дополнительно Intel предлагает несколько примеров реализации транспортного уровня для значительной экономии времени при разработке устройства с JESD204B (рис. 7).
Ядро JESD204B от Intel действует с частотой линий передачи данных до 12,5 Гбит/с (сертифицировано по JESD204B), до 16 Гбит/с (не сертифицировано по JESD204B) и поддерживает все три подкласса протокола для работы с детерминированной задержкой, включая синхронизацию работы нескольких микросхем АЦП или ЦАП.
IP-ядро JESD204B от Intel поставляется в виде готового компонента с соответствующими моделями для симуляции, необходимой документацией и примерами применения, как в связке с HDL-кодом, так и во взаимодействии с софт-процессором Nios II. Разработчики также имеют возможность установить готовые модули с АЦП и ЦАП — например, Analog Devices AD6676 Evaluation Module или Analog Devices AD9144 Evaluation Board — напрямую на отладочные платы Intel через разъем FMC.
Какие преобразователи поддерживают функцию детерминированной задержки?
Все больше аналоговых продуктов поддерживают функцию детерминированной задержки, среди них можно выделить широкую линейку АЦП, ЦАП и генераторов тактового сигнала от Analog Devices. Компоненты, проверенные на совместимость с IP-ядром Intel PSG (Altera), представлены в таблице.
Наименование |
Функциональное описание |
Поддержка функции детерминированной задержки |
AD9680 |
Серия сдвоенных 14-битных АЦП на скорости преобразования |
Да |
AD9250 |
Серия сдвоенных 14-битных АЦП на скорости преобразования |
Да |
AD9625 |
Серия 12-битных АЦП на скорости преобразования |
Ограниченно |
AD6676 |
Широкополосный приемник |
Ограниченно |
AD9144 |
Счетверенный 16-битный ЦАП на скорость преобразования |
Да |
АЦП конфигурируются программированием регистра 0x590, бит 5, при помощи которого можно задать подкласс работы устройства. По умолчанию выбрано значение 1, которое программирует функционирование АЦП в режиме подкласса 1. Если не требуется использовать полный функционал детерминированной задержки, данный бит можно перевести в значение 0, и тем самым берется подкласс 0. Тактовый сигнал SYSREF в данном случае может не потребоваться, кроме систем с несколькими синхронизованными параллельными АЦП.
ЦАП AD9144 также поддерживает подклассы 0 и 1, кроме подкласса 2. Программирование ЦАП производится при помощи конфигурирования регистров 0x301 и 0x458 (каждое соединение). При выборе работы в рамках подкласса 1 появляется возможность синхронизовать передачу пакетов внутри 1/2 рабочего периода ЦАП. Для подкласса 1 требуется внешний тактовый сигнал SYSREF, совмещенный по фазе с рабочим тактовым сигналом ЦАП.
Выводы
Детерминированная задержка относится к числу относительно сложных функций JESD204B, но при надлежащем использовании эта функция становится серьезным подспорьем в деле проектирования высокопроизводительных систем обработки сигналов. Выборки с массива АЦП можно выравнивать во времени с устранением расфазировки с помощью буферных задержек в FPGA для реализации аналого-цифрового преобразования в синхронном режиме или в режиме временного чередования. Для выяснения возможностей временного выравнивания в системе важно знать подкласс протокола JESD204B. Первостепенное значение для выравнивания выборок имеет точное согласование во времени сигналов SYSREF и CLK всех АЦП, входящих в состав системы.
Понимая сложность реализации функции детерминированной задержки, производители Altera и Analog Devices подтвердили совместимость некоторых высокоскоростных устройств (среди них АЦП, ЦАП и ПЛИС различных семейств). Благодаря функциям, присутствующим в IP-ядре от Intel PSG (Altera) и доступным референс-дизайнам, разработчики могут максимально быстро реализовать высокоскоростную систему обработки данных с несколькими производительными аналоговыми компонентами, включенными параллельно.