Clock Data Recovery Design Techniques for E1/T1 Based on Direct Digital Synthesis Author: Paolo Novellini and Giovanni Guasti



Similar documents
Clock and Data Recovery Unit based on Deserialized Oversampled Data

Reading User Data from Configuration PROMs

DDS. 16-bit Direct Digital Synthesizer / Periodic waveform generator Rev Key Design Features. Block Diagram. Generic Parameters.

Loop Bandwidth and Clock Data Recovery (CDR) in Oscilloscope Measurements. Application Note

VCO K 0 /S K 0 is tho slope of the oscillator frequency to voltage characteristic in rads per sec. per volt.

Fractional Burst Clock Data Recovery for XG-PON Applications Author: Paolo Novellini and Massimo Chirico

LogiCORE IP AXI Performance Monitor v2.00.a

TIP-VBY1HS Data Sheet

PLL Dynamic Reconfiguration Author: Karl Kurbjun and Carl Ribbing

USB 3.0 CDR Model White Paper Revision 0.5

Designing Stable Compensation Networks for Single Phase Voltage Mode Buck Regulators

Simplifying System Design Using the CS4350 PLL DAC

ChipScope Pro Tutorial

PLL frequency synthesizer

DEVELOPMENT OF DEVICES AND METHODS FOR PHASE AND AC LINEARITY MEASUREMENTS IN DIGITIZERS

INTERNATIONAL TELECOMMUNICATION UNION

Infinite Impulse Response Filter Structures in Xilinx FPGAs

Clock Recovery in Serial-Data Systems Ransom Stephens, Ph.D.

Manchester Encoder-Decoder for Xilinx CPLDs

Rotary Encoder Interface for Spartan-3E Starter Kit

Chapter 6 PLL and Clock Generator

Source-Synchronous Serialization and Deserialization (up to 1050 Mb/s) Author: NIck Sawyer

Experiment # 9. Clock generator circuits & Counters. Eng. Waleed Y. Mousa

Creating a Controllable Oscillator Using the Virtex-5 FPGA IODELAY Primitive Author: Martin Kellermann

Having read this workbook you should be able to: recognise the arrangement of NAND gates used to form an S-R flip-flop.

A 3.2Gb/s Clock and Data Recovery Circuit Without Reference Clock for a High-Speed Serial Data Link

DS26303 OCTAL 3.3V T1/E1/J1 SHORT HAUL LIU PRODUCT BRIEF

Modeling Latches and Flip-flops

LMS is a simple but powerful algorithm and can be implemented to take advantage of the Lattice FPGA architecture.

Using Xilinx CPLDs to Interface to a NAND Flash Memory Device

Phase Locked Loop (PLL) based Clock and Data Recovery Circuits (CDR) using Calibrated Delay Flip Flop

Abstract. Cycle Domain Simulator for Phase-Locked Loops

Programmable Logic Design Grzegorz Budzyń Lecture. 10: FPGA clocking schemes

Post-Configuration Access to SPI Flash Memory with Virtex-5 FPGAs Author: Daniel Cherry

Using a Microprocessor to Configure Xilinx FPGAs via Slave Serial or SelectMAP Mode Author: Mike Peattie

CHAPTER 11: Flip Flops

Application Note. Line Card Redundancy Design With the XRT83SL38 T1/E1 SH/LH LIU ICs

SDLC Controller. Documentation. Design File Formats. Verification

MAX 10 Clocking and PLL User Guide

Clocks Basics in 10 Minutes or Less. Edgar Pineda Field Applications Engineer Arrow Components Mexico

Memory Elements. Combinational logic cannot remember

Clock Recovery Primer, Part 1. Primer

QAM Demodulation. Performance Conclusion. o o o o o. (Nyquist shaping, Clock & Carrier Recovery, AGC, Adaptive Equaliser) o o. Wireless Communications

TRIPLE PLL FIELD PROG. SPREAD SPECTRUM CLOCK SYNTHESIZER. Features

Modeling Registers and Counters

(Refer Slide Time: 2:10)

FPGA Clocking. Clock related issues: distribution generation (frequency synthesis) multiplexing run time programming domain crossing

DIGITAL-TO-ANALOGUE AND ANALOGUE-TO-DIGITAL CONVERSION

Accurate Measurement of the Mains Electricity Frequency

Signal Integrity: Tips and Tricks

ECE 3510 Final given: Spring 11

SDI SDI SDI. Frame Synchronizer. Figure 1. Typical Example of a Professional Broadcast Video

CLOCK AND SYNCHRONIZATION IN SYSTEM 6000

LEVERAGING FPGA AND CPLD DIGITAL LOGIC TO IMPLEMENT ANALOG TO DIGITAL CONVERTERS

How To Fix A 3 Bit Error In Data From A Data Point To A Bit Code (Data Point) With A Power Source (Data Source) And A Power Cell (Power Source)

PCM Encoding and Decoding:

AXI Performance Monitor v5.0

Vi, fi input. Vphi output VCO. Vosc, fosc. voltage-controlled oscillator

1997 Mixed-Signal Products SLAA011B

Title: Low EMI Spread Spectrum Clock Oscillators

1+1 PROTECTION WITHOUT RELAYS USING IDT82V2044/48/48L & IDT82V2054/58/58L HITLESS PROTECTION SWITCHING

ETEC 2301 Programmable Logic Devices. Chapter 10 Counters. Shawnee State University Department of Industrial and Engineering Technologies

Timing Errors and Jitter

Section 3. Sensor to ADC Design Example

How To Test The Performance Of An Oversampling Cdr In An Fgpa, Jitter And Memory On A Black Box (Cdr) In A Test Program

Chapter 9 Latches, Flip-Flops, and Timers

ICS SPREAD SPECTRUM CLOCK SYNTHESIZER. Description. Features. Block Diagram DATASHEET

30. Bode Plots. Introduction

Lecture 11: Sequential Circuit Design

Understanding CIC Compensation Filters

Laboratory 4: Feedback and Compensation

AVR131: Using the AVR s High-speed PWM. Introduction. Features. AVR 8-bit Microcontrollers APPLICATION NOTE

White Paper FPGA Performance Benchmarking Methodology

W a d i a D i g i t a l

User Guide. Introduction. HCS12PLLCALUG/D Rev. 0, 12/2002. HCS12 PLL Component Calculator

Design of a TL431-Based Controller for a Flyback Converter

IRTC Compensation and 1 Hz Clock Generation

ZL30136 GbE and Telecom Rate Network Interface Synchronizer

DS2187 Receive Line Interface

AVR127: Understanding ADC Parameters. Introduction. Features. Atmel 8-bit and 32-bit Microcontrollers APPLICATION NOTE

Download the Design Files

Lab #5: Design Example: Keypad Scanner and Encoder - Part 1 (120 pts)

ASYNCHRONOUS COUNTERS

76-77 GHz RF Transmitter Front-end for W-band Radar Applications

AN1991. Audio decibel level detector with meter driver

Department of Electrical and Computer Engineering Ben-Gurion University of the Negev. LAB 1 - Introduction to USRP

Clocking Wizard v5.1

Equalization for High-Speed Serial Interfaces in Xilinx 7 Series FPGA Transceivers

ICS379. Quad PLL with VCXO Quick Turn Clock. Description. Features. Block Diagram

Altera Error Message Register Unloader IP Core User Guide

LC 2 MOS Signal Conditioning ADC with RTD Excitation Currents AD7711

Understanding Power Impedance Supply for Optimum Decoupling

ANT-20, ANT-20E Advanced Network Tester PDH MUX/DEMUX

Using Altera MAX Series as Microcontroller I/O Expanders

Keysight N4877A Clock Data Recovery and Demultiplexer 1:2

MAINTENANCE & ADJUSTMENT

LLRF. Digital RF Stabilization System

Sheilded CATx Cable Characteristics

Transcription:

Application Note: Virtex and Spartan FPGA Families XAPP868 (v1.0) January 29, 2008 Clock Data ecovery Design Techniques for E1/T1 Based on Direct Digital Synthesis Author: Paolo Novellini and Giovanni Guasti Summary Low data rates (less than 10 Mb/s) in a telecommunications environment can be terminated and regenerated by fully digital PLLs in today s Xilinx FPGAs. In a direct digital synthesis (DDS) based receiver, the jitter tolerance is reduced by the reference clock period. For example, a 10 Mb/s receiver that uses a 100 MHz clock has a 0.1 UI jitter tolerance reduction due to the DDS architecture. This document details the design aspects of digital PLLs used in telecommunications applications (digital oscillator, phase detector, and filter design criteria) and evaluates them against PLL performance (including bandwidth and jitter peaking) and loop stability. The DDS approach to oversampling takes full advantage of the lookup table (LUT) structure. It is very resource efficient (60 Virtex-5 FPGA slices or 100 Spartan -3 FPGA slices plus 1 BUFG) and recovers a non-stepping clock from each channel. This application note provides a reference design that implements a fully optimized and compliant digital clock data recovery (CD) circuit and jitter attenuator for 2.048 Mb/s (E1) and 1.544 Mb/s (T1) operation. This design can be implemented in both Virtex and Spartan devices, allowing for clock recovery and jitter attenuation functionality in the low frequency range using the SelectIO pins. Introduction In the telecommunications access industry, many channels often need to be terminated at low frequency: 2.048 Mb/s (E1) in Europe 1.544 Mb/s (T1) in North America, Japan, and Korea These data rates are the first aggregation level for phone calls: 32 phone calls in an E1 line and 24 phone calls in a T1 line. Small companies often use E1 and T1 lines as data tributaries to carry data traffic (via the Internet). In comparison to ADSL, E1 and T1 lines offer symmetric downstream and upstream bandwidth. Thus E1 and T1 are preferred for broadband access by small companies. For details on E1 and T1 compliance, refer to ITU-T ecommendation G.703. This reference design has two main functions for E1 and T1 lines: Clock data recovery when the input is data Jitter attenuation when the input is an E1 or T1 clock The three main applications for this reference design are: 1. CD for E1/T1 lines that are internal to the network node. In many cases, a line interface unit (LIU) is used to extract the clock. This LIU can be removed by using the code provided with the reference design. 2. CD for E1/T1 lines that are external to the network node. The LIU can be replaced with a partial LIU (an LIU with no CD or jitter attenuation functionality). Alternatively, the connection between the LIU and the FPGA carrying the extracted clock can be removed, saving one pin in the FPGA. 2008 Xilinx, Inc. All rights reserved. XILINX, the Xilinx logo, and other designated brands included herein are trademarks of Xilinx, Inc. All other trademarks are the property of their respective owners. XAPP868 (v1.0) January 29, 2008 www.xilinx.com 1

Basic PLL Theory 3. All serial lines with data transfer rates less than 10 Mb/s that can be synchronized with the reference design. efer to eference Design Analysis, page 8 for how to customize the center frequency of the VCO. For telecommunications access, many channels have to be terminated on the same board, so that they can be multiplexed to a higher level in the synchronous digital hierarchy (SDH) or plesiochronous (1) digital hierarchy (PDH) and transported. Thus it is important to optimize the cost of these interfaces. The number of plesiochronous channels that can be terminated in a single FPGA is limited only by the amount of logic and the pins available. If n is the number of channels, the FPGA slices for all the channel ( n ) are given by Equation 1 for Virtex-5 FPGAs and Equation 2 for Spartan-3A FPGAs. n = 60 n + 1 BUFG Equation 1 n = 100 n + 1 BUFG Equation 2 One BUFG is needed independent of the number of plesiochronous channels implemented in the single FPGA, with any mix of E1 and T1 data rates. Basic PLL Theory The basic PLL shown in Figure 1 consists of three elements: a phase detector, a controlled oscillator, and a low-pass filter. X-ef Target - Figure 1 Controlled Oscillator Gain = K v [rad/s] θ i θ o Phase Detector Gain = K d [rad-1] v pd = K d (θ i - θ o ) Low-Pass v 2 Filter F(s) K v v 2 = Δω θ o Figure 1: Basic PLL/CD Block Diagram X868_01_121707 In an analog PLL, the controlled oscillator is a voltage controlled oscillator (VCO), the output of the phase detector is a voltage or current signal, and the low-pass filter is built with resistors and capacitors. In a digital PLL, there are no resistors or capacitors, and the outputs of the phase detector and the controlled oscillator (which is an accumulator) are 0s and 1s. The frequency of the most-significant bits in the accumulator is determined by the value accumulated at each clock cycle. The phase detector output (defined in Equation 3) is proportional to the difference between the input phase (θ i ) and the phase of the signal coming from the controlled oscillator (θ o ). K d (the phase detector gain factor) is measured in units of rad 1. υ PD = K d ( ϑ i ϑ o ) Equation 3 1. Two or more signals are defined plesiochronous if their significant instants occur at nominally the same rate, with any variation in rate being constrained within specified limits. XAPP868 (v1.0) January 29, 2008 www.xilinx.com 2

Basic PLL Theory When compared to the nominal frequency, the controlled oscillator s output frequency deviation (Δω) is proportional to the controlling signal at its input (υ 2 ) as shown in Equation 4. K V (the controlled oscillator s gain constant) is measured in units of radians/s. Δω = K υ υ 2 Equation 4 Frequency is the derivative of the signal phase (see Equation 5). The controlled oscillator output is the Laplace transform of the signal phase as shown in Equation 6. dθ --------- o = K dt ν ν 2 Equation 5 L dθ o --------- = sθ Equation 6 dt o ( s) = K ν V 2 ( s) Therefore the relationship between output phase and control is as defined in Equation 7. K θ o ( s) υ V 2 ( s) = ----------------------------- Equation 7 s The low-pass filter is described by its transfer function F(s), so that V 2 ( s) = Fs ( ) V d ( s) Equation 8 Combining Equation 3 through Equation 8 gives the loop equation (Equation 9) and the error equation (Equation 10). θ o ( s) ------------- = Hs ( ) = θ i ( s) K υ K d Fs ( ) ----------------------------------- s + K υ K d Fs ( ) Equation 9 θ i ( s) θ o ( s) -------------------------------- θ i ( s) θ e ( s) = ------------- = θ i ( s) s ----------------------------------- s + K υ K d Fs ( ) Equation 10 Digital Low-Pass Filter in a Second-Order Loop PLL The signal phase error (an output of the phase detector) must be low-pass filtered. The simplest low-pass filter is an integrator. The main benefit of the integrator is that the residual phase error in the steady state is 0. Unfortunately this system is always not stable, because the loop function crosses the 0 db axis with a slope of 40 db/decade, thus violating the Bode criterion for stability (Figure 2a). X-ef Target - Figure 2 Loop Gain (db) -40 db/dec Loop Gain (db) -20 db/dec Frequency Frequency X868_02_121307 a) With an Integrator as a Low-Pass Filter b) When the Filter in Figure 3 is Used Figure 2: Loop Gains XAPP868 (v1.0) January 29, 2008 www.xilinx.com 3

Basic PLL Theory One requirement is that the overall loop must remain stable. For this reason, a second branch is added in the low-pass filter, yielding the loop function depicted in Figure 3. The new loop function crosses the 0 db line with a slope of 20 db/decade, which satisfies the Bode criterion for stability. The designer must position the zero and the pole in the loop function respectively above and below the 0 db axis, to guarantee an adequate phase margin to the system. When G 1 = 0, the low-pass filter is always stable, but the residual phase error at the steady state is not 0. A filter with no integrator is often used in designs because the closed loop transfer function has no jitter peaking. With the integrator in the filter, jitter peaking can be minimized but is never eliminated. X-ef Target - Figure 3 G 1 K f a G 2 + G 3 b Figure 3: X868_01_010808 Selected Low-Pass Filter for the Digital CD for E1/T1 Lines Equation 11 lists the filter transfer function. PLL Transfer Function Bs ( ) K ----------- Fs ( ) G As ( ) 3 G f G = = 1 2 + ------------------- s Equation 11 Combining Equation 9 and Equation 11, the PLL transfer function for the digital low-pass filter is defined in Equation 12. Hs ( ) K d K υ G 2 G 3 s + K f G 1 G = ---------------------------------------------------------------------------------------- 3 s 2 + K d K υ G 2 G 3 s + K d K υ K f G 1 G 3 By gathering some gains in the loop, H(s) can be written more simply, as indicated in Equation 13. Equation 12 Hs ( ) = G 2 G ' 3 s + G' 1 G ' ------------------------------------------------------- 3 s 2 + G 2 G ' 3 s + G' 1 G ' 3 Equation 13 Where: G ' 1 = K f G 1 ---- s G ' 3 = G 3 K d K υ Figure 4 shows the location of the terms in Equation 13 within the digital CD. XAPP868 (v1.0) January 29, 2008 www.xilinx.com 4

Basic PLL Theory X-ef Target - Figure 4 G 1 G 1 Kf s Phase Detector K d G 3 VCO K v G 2 Figure 4: Term Location within the Digital CD Poles and Zeros in Loop Function: Sizing Criteria G 3 X868_04_011108 The PLL loop is generally known as a second-order loop because the highest power of s in the denominator of the transfer function is 2. It is common to write the transfer function in terms of two factors: ω n (the natural frequency of the loop) and ζ (the damping factor). Equation 14 and Equation 15 define ω n and ζ for the PLL in terms of the hardware gains, respectively. ω n = G' 1 G' 3 Equation 14 ζ = G ------ 2 2 G' ------- 3 G' 1 Equation 15 Equation 16 indicates the new form of the transfer function. Hs ( ) 2 2ζω n s + ω = ------------------------------------------ n s 2 2 + 2ζω n s + ω n Equation 16 ω n is not the bandwidth of the PLL, although its value is close. The bandwidth of the PLL with no integrator is listed in Equation 17. If the bandwidth is set to 50 Hz (i.e., 314 rad/s), G 2 is equal to 2 3. ω 3dB = G 2 K D K V Equation 17 When the bandwidth is determined, ζ can be selected so that the jitter peaking is acceptable. The acceptance criteria depends on the application. Jitter peaking leads to a critical condition when many regenerators are cascaded, because jitter is amplified in the ω n region. As shown in Figure 5, ζ > 3 guarantees a peaking that is better than 0.5 db. ζ = 3 can be obtained by setting G 1 =2 17 and G 3 =1. XAPP868 (v1.0) January 29, 2008 www.xilinx.com 5

eference Design Description X-ef Target - Figure 5 5 4 Transfer Function csi = 3 3 db 2 1 0.5 0 X: 3.981 Y: 0.4449-1 -2-3 -4-5 Figure 5: 4 5 6 7 8 9 10 20 30 40 Frequency X868_05_121707 ζ is Chosen Based on the Selected Maximum Jitter Peaking Tolerance eference Design Description Figure 6 shows the reference design symbol of the fully digital CD. X-ef Target - Figure 6 DT_IN DT_OUT ST SAMPLE_EN CLK SPEED_SEL TST_CLK_OUT Figure 6: Digital CD Digital CD Logic Symbol X868_06_010808 Table 1: Digital CD Pinout Descriptions Data is input into DT_IN at 2.048 Kb/s or 1.544 Kb/s. It is considered valid on DT_OUT when the digital CD is locked. The extracted clock appears on TST_CLK_OUT. The required reference clock (150 MHz) is input on CLK. SPEED_SEL determines whether the module operates at the E1 or the T1 rate. Table 1 lists the pinout and the required frequency tolerances of the digital CD. Pin Name Type Description Comments CLK I Input reference clock DT_IN I Data enters the CD on this pin The CLK frequency is required to be 150 MHz ± 40 ppm. Different reference clock frequencies can be used by changing the parameters of the CD. efer to Digital VCO, page 8 for details on how to change the parameters. The data rate must be 2.048 Kb/s ± 20 ppm or 1.544 Kb/s ± 20 ppm. XAPP868 (v1.0) January 29, 2008 www.xilinx.com 6

eference Design Description Table 1: Digital CD Pinout Descriptions (Cont d) Pin Name Type Description Comments DT_OUT O ST I eset SAMPLE_EN SPEED_SEL O TST_CLK_OUT O Extracted clock I DT_OUT is valid on the edge of SAMPLE_EN The data on DT_OUT is valid when SAMPLE_EN is High 1: 2.048 Kb/s operating mode (E1) 0: 1.544 Kb/s operating mode (T1) Use DT_OUT in combination with SAMPLE_EN to synchronously process the data out of the CD. For simulation only. In hardware, the system has no unknown states. SAMPLE_EN is used to clock logic (clock enable). No additional BUFGs are required. SPEED_SEL selects the operating mode. The reference clock does not need to be changed. This clock is recommended only for scope plotting and testing. It is not recommended for clocking logic, because it consumes a BUFG. This design provides a testbench that can be simulated (TB_CD). The testbench generates a pseudo-random binary sequence (PBS) data pattern and applies a step in frequency (about a 20 ppm increase) to show the tracking capability of the digital CD. A second testbench is available in the design directory (tb_top). This testbench can be implemented in the Virtex-5 FPGA ML52X demonstration board. It comprises two digital CDs working on two plesiochronous PBS data inputs, which can be set independently at 2.048 Mb/s or 1.544 Kb/s. Each data input can also be modulated on-the-fly in the range ±100 ppm (0.03 Hz is the minimum resolution step). The user can see the tracking capability of the digital CD and its limits (set at ±70 ppm) on a scope. Figure 7 shows the structure of the testbench. X-ef Target - Figure 7 ctrl_0 (+100 ppm) speedsel_0 sel_0 speed_sel0 err_rst0 err0 PBS Checker 0 DCO 0 DCO 1 PBS Generator 0 Common EFCLK: CLK_N (J16)/CLK_P (J17) PBS Generator 1 speedsel_1 ctrl_1 (+100 ppm) prbs0 prbs1 Figure 7: CD 0 CD 1 speed_sel1 sel_1 Testbench Structure rec_clk2m0 (K18) dt_out0 (AF19) rec_clk2m1 (AH15) dt_out1 (AG15) PBS Checker 1 err1 err_rst1 X868_07_012308 The reference design provides a ChipScope Pro analyzer project file (under the CSPO folder) to fully control all the parameters of the testbench (E1/T1, frequency tuning, resets, etc.) on-the-fly. The digital CD can track a signal between ±70 ppm (20 ppm is allocated to the CD and 40 ppm is allocated to the reference clock with a 10 ppm margin). The user can overdrive the XAPP868 (v1.0) January 29, 2008 www.xilinx.com 7

eference Design Analysis data source beyond the allowed 70 ppm, showing the limits of the digital CD. The CDs and the PBS generators can be programmed independently to work at 1.544 Kb/s or 2.048 Kb/s via the ChipScope Pro interface. The PBS checker checks the recovered data with an error detector that can be read and reset via the ChipScope Pro interface. Two analog recovered clocks that are available on two output pins (AF19 and AG15) of the ML52X board can be viewed with a scope. The minimum programmable frequency difference is 0.03 Hz. The two resampled data channels can be monitored on the K18 and AH15 pins. The 150 MHz reference clock must be provided differentially into the J16 and J17 pins. The user can design the application with single-ended clocks. The reference design and all testbenches are available in both VHDL and Verilog. Figure 8 shows an annotated directory structure. X-ef Target - Figure 8 Verilog Code Structure CD Code (Verilog) ChipScope Pro Tool Project Files (Verilog) Testbenches for the CD (Verilog) VHDL Code Structure CD Code (VHDL) ChipScope Pro Tool Project Files (VHDL) Figure 8: Testbenches for the CD (VHDL) Directory Code Structure X868_08_121707 eference Design Analysis This section provides details on the reference design implementation and how to customize it to change the data rate and/or the reference clock frequency. Details are provided on the digital VCO, phase detector, and digital filter as well as the hardware and software requirements. Digital VCO The digital VCO is implemented using a 32-bit accumulator and an adder, as shown in Figure 9. X-ef Target - Figure 9 32-bit Accumulator 32 Flip- Flop TST_CLK: MSB only (1 bit) Flip- Flop Pulse at Low Frequency ctrl 32 + + 32-bit Adder PHASE over 32 bits 32 Center_f Figure 9: Digital VCO Block Diagram The Accumulator and Flip-Flops are synchronous to 150 MHz X868_09_012908 XAPP868 (v1.0) January 29, 2008 www.xilinx.com 8

eference Design Analysis Equation 18 defines Center_f, which controls the center frequency of the VCO. In Equation 18, ƒ W is the low frequency wanted on the output, and ƒ CLK is the reference clock frequency. 2 32 Center_f = f w ----------- Equation 18 f CLK The digital VCO can be tuned based on the settings for ƒ CLK and ƒ W, which calculate Center_f according to Equation 18. Table 2 shows example values for Center_f based on ƒ CLK and ƒ W. Any reference clock frequency can be used, provided that it is much higher than the data rate. Table 2: Center_f Values ƒ W Phase Detector Figure 10 is a block diagram of the phase detector. ƒ CLK 150 MHz 155.520 MHz 125 MHz 2.048 MHz 0x37EC8EC 0x35F0688 0x431BDE8 1.544 MHz 0x2A2957A 0x28AA3EC 0x2A2957A X-ef Target - Figure 10 DT_IN Flip-Flop Flip-Flop Flip-Flop SAMPLE_PHASE CLK (150 MHz in this case) Figure 10: Phase Detector Block Diagram X868_10_011708 When a transition is present on the DT_IN input, a pulse on SAMPLE_PHASE is generated for 1 clock period. The SAMPLE_PHASE signal samples the 32-bit phase information of the digital VCO, which is expected to be 0, if the VCO output is aligned with the data. If the value is not 0, the phase error is inverted algebraically (to implement the negative feedback) and is loaded into the digital filter. The phase sampling and inversion is performed in the VCO block by this code fragment: POCESS(CLK,ST) begin if ST='0' then PHASE<=x"0000"; elsif CLK='1' and CLK'event then if SAMPLE_PHASE='1' then PHASE<=NOT(phase_int(31 downto 16)); else null; end if; end if; end POCESS; Only the 16 most-significant bits of the phase information are used. These 16 bits indicate that the phase resolution is better than 10 4 [radiant], which is an improvement over the time resolution used to sync the incoming transition (better than 1.3 x 10 2 ). XAPP868 (v1.0) January 29, 2008 www.xilinx.com 9

eference Design Inverting a signed number (phase_int) yields the mathematical opposite with an error of 1. This error, which is equivalent to less than 10 4 [radiant], is simply ignored to avoid the insertion of an additional adder. Digital Low-Pass Filter The digital filter implementation closely follows the structure in Figure 3, page 4. The ctrl output is limited to 13 bits signed. Thus the digital VCO can be tuned by ±143 Hz. As with all other blocks, the filter is fully synchronous to ƒ CLK, and the operation is pipelined to easily meet the timing. When customizing the digital CD, the designer must pay attention to the stability of the loop. G 1 and G 2 need to be checked and tuned as described in Poles and Zeros in Loop Function: Sizing Criteria, page 5. Hardware equirements The digital CD described in this application note can be implemented in a Virtex or a Spartan device. The reference design example is provided in both VHDL and Verilog for Virtex-5 FPGAs on the ML52X demonstration board. The required hardware for this reference design is: Xilinx ML52X demonstration board, revision C or higher Programmable USB cable (Model DLC9 or newer) Software equirements The required software for this reference design is: ChipScope Pro analyzer, version 9.1i or higher ISE tool, version 9.1i or higher Mentor ModelSim, version 6.1a or higher (to perform simulations) A real-time scope (to probe data and extracted clocks from the demonstration board) eference Design eferences Conclusion Acknowledgment The DDS based CD reference design for E1 and T1 can be downloaded at: https://secure.xilinx.com/webreg/clickthrough.do?cid=103271 The following material provides additional information related to this application note: ITU-T ecommendation G.703, Physical/electrical characteristics of hierarchical digital interfaces http://www.itu.int/itu-t/index.html UG225, ML52x User Guide. The reference design presented in this application note allows integration of the CD functionality of E1/T1 lines into a Xilinx FPGA, leaving on the outside of the FPGA just the electrical line termination. E1 and T1 lines can be mixed on-the-fly by the end user, keeping the BUFG usage limited to one for any configuration, independent of the number of E1/T1 lines. Xilinx wishes to thank Silvio Cucchi for his key contributions to this reference design and document. XAPP868 (v1.0) January 29, 2008 www.xilinx.com 10

evision History evision History The following table shows the revision history for this document: Date Version Description of evisions 01/29/08 1.0 Initial Xilinx release. Notice of Disclaimer Xilinx is disclosing this Application Note to you AS-IS with no warranty of any kind. This Application Note is one possible implementation of this feature, application, or standard, and is subject to change without further notice from Xilinx. You are responsible for obtaining any rights you may require in connection with your use or implementation of this Application Note. XILINX MAKES NO EPESENTATIONS O WAANTIES, WHETHE EXPESS O IMPLIED, STATUTOY O OTHEWISE, INCLUDING, WITHOUT LIMITATION, IMPLIED WAANTIES OF MECHANTABILITY, NONINFINGEMENT, O FITNESS FO A PATICULA PUPOSE. IN NO EVENT WILL XILINX BE LIABLE FO ANY LOSS OF DATA, LOST POFITS, O FO ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, O INDIECT DAMAGES AISING FOM YOU USE OF THIS APPLICATION NOTE. XAPP868 (v1.0) January 29, 2008 www.xilinx.com 11