Understanding control characters in
JESD204B
Here's a closer examination of the control characters that are employed in the JESD204 interface.
By Jonathan Harris
Product Applications Engineer
Analog Devices Inc.
The shift to JESD204B as the digital interface of choice for high speed data converters is well underway. The
JESD204 interface was released in its original form, JESD204, in 2006 revised to JESD204A in 2008, and in August 20011 revised once more to the current JESD204B. The interface brings efficiency and offers several advantages over preceding technologies like LVDS. Designs employing JESD204B enjoy the benefits of a faster interface to keep pace with the faster sampling rates of converters. There is a reduction in package pin count which leads to smaller packages and less trace routes. The standard applies to both analogue-to-digital converters (A/D) as well as digital-to-analogue converters (D/A), and is primarily intended as a common interface to field programmable gate arrays (FPGAs) – for example the Xilinx Kintex or Vertex platforms – but it may also be used with ASICs.
JESD204B differs from its predecessors in up-front complexity due to the new terms and parameters that it introduces. In this article, we'll take a closer examination of the control characters that are used in the JESD204 interface. Understanding the control characters helps provide a better understanding of how a link is synchronised and aligned. This helps designers to understand how to debug link issues that may arise when prototyping a design with the JESD204 interface. Each of the control characters performs a different function and helps maintain the alignment of data on the link as well as synchronisation and error monitoring. If an expected character is missed or an unexpected character is received, the receiver knows that an error exists.
How it works is that the JESD204B words get mapped into valid 8b/10b encoded words and are set up in frames and multi-frames with specific rules. In the process, the 8b/10b encoding provides some benefits for the serial data link by using control characters that provide the ability to perform various lane alignment functions. There are five main control characters utilised in the 8b/10b encoding that allow for various functions in the JESD204B data stream. These characters are /K/, /F/, /A/, /R/, and /Q/ control characters.
What a bunch of characters!
The /K/ = /K28.5/ control character is used in the code group synchronisation process via the synchronisation interface (by asserting !SYNC). Once the receiver issues a synchronisation request, the transmitter begins emitting /K/ = /K28.5/ characters. The receiver synchronises and will wait for at least four consecutive /K/ = /K28.5/ characters. The receiver then deactivates its synchronisation request. This process is done according to the subclass of operation. For subclass 0 (no deterministic latency), the receiver deactivates the synchronisation request on any frame boundary after four consecutive /K/ = /K28.5/ characters have been received. For subclass 1 and 2 (deterministic latency with SYSREF or !SYNC, respectively), the receiver deactivates the synchronisation request on any local multi-frame clock boundary after four consecutive /K/ = /K28.5/ characters have been received.
Figure 1: /K/ control character streaming.