Dual-Mode FPGA-Based Triple-TDC With Real-Time Calibration and a Triple Modular Redundancy Scheme

This paper proposes a triple time-to-digital converter (TDC) for a field-programmable gate array (FPGA) platform with dual operation modes. First, the proposed triple-TDC employs the real-time calibration circuit followed by the traditional tapped delay line architecture to improve the environmental effect for the application of multiple TDCs. Second, the triple modular redundancy scheme is used to deal with the uncertainty in the FPGA device for improving the linearity for the application of a single TDC. The proposed triple-TDC is implemented in a Xilinx Virtex-5 FPGA platform and has a time resolution of 40 ps root mean square for multi-mode operation. Moreover, the ranges of differential nonlinearity and integral nonlinearity can be improved by 56% and 37%, respectively, for single-mode operation.

To improve the linearity in FPGA-based TDC design, Kalisz et al. presented the calibration circuit to implement a TDC having a resolution of 200 ps and a measurement range of 43 ns in a QuickLogic pASIC FPGA device [18,19]. In reference [20], TDCs with a resolution of 65 and 46.2 ps including time calibration were implemented in an Altera FPGA device and a Xilinx FPGA device, respectively. Wang et al. used the command LOC and RLOC to specify the location of delay cells in Xilinx ISE tools [21], which enabled P&R to be performed automatically with EDA tools. Thus, the time-consuming process of manually performing P&R could be avoided. Wave-union TDCs improve the time resolution of FPGA-based TDCs, especially when ultra-wide bins (UWBs) occur in FPGA-based TDCs [22][23][24]. An averaging multiple delay line is used to smooth out large quantization errors [25] and thus improve the time resolution. However, an FPGA-based TDC with such a delay line has a complex architecture.
In general, the measured integral nonlinearity (INL) and differential nonlinearity (DNL) are important metrics influencing the time linearity. Thus, several schemes have been presented to correct INL or DNL values by using time histograms [14,[26][27][28][29].
In this paper, a dual-mode FPGA-based triple-TDC is proposed to deal with the environment effect and improve the time linearity. Three separated tapped delay lines (TDLs) and their corresponding calibration circuits are used in the Xilinx Virtex-5 FPGA device [28,29]. Therefore, the proposed triple-TDC improves the temperature variation effect. The measurement results indicate that the triple-TDC achieves a time resolution of the 40 ps root mean square (RMS) for multimode operation. The triple modular redundancy (TMR) scheme [32] is used to improve the uncertainty in the FPGA device for single-mode operation, such as the UWB effect. The TMR triple-TDC can achieve a resolution of 35.5 ps RMS and improve INL and DNL values by an average of 56% and 37%, respectively.

Tapped Delay Line TDC
The TDL is a popular structure for FPGA-based TDC design because it has a simple structure and is easy to design. Figure 1 illustrates the architecture of the traditional TDL-TDC, which includes N delay buffers, N registers, and an encoder module for N-bin TDC. An FPGA is a suitable platform for TDL-TDC implementation due to its regular slice structure. However, the delay buffers manufactured for FPGA-based TDCs have a nonuniform delay. Figure 2 displays the time distribution of the delay buffer for the three separated TDLs, which is measured based on the code density method. The TDLs have a nonuniform delay time due to their different delay buffers. The calibration circuit presented in reference [29] improves the uniformity in the delay time of TDLs.

Proposed Triple-TDC Design
The proposed triple-TDC implements three separated TDLs with their corresponding calibration circuits. Figure 3 illustrates the architecture of the proposed triple-TDC, which consists of a mode-selection module, three TDLs and their corresponding calibration circuits, and a voter module. For the multiple-time conversion mode called as multi-mode, the mode-selection module passes three start and stop time signals to convert three time differences and the voter module bypasses the three digital codes. For the single-time conversion mode, a single start and stop time signal is broadcast to three TDLs, and the voter module converts a single time difference value according to the majority selection. In accordance with the concept of TMR, the proposed triple-TDC allocates three TDLs for every 20 vertical slice chains to obtain good diversity in a single FPGA chip. Figure 4 illustrates the layout of three TDLs in the Xilinx Virtex-5 FPGA chip. In comparison with the previous TDL-based TDC, the proposed triple-TDC has the following key advantages and disadvantages:

Advantages:
• Three TDLs can be layout into different locations of a single FPGA chip, thus the diversity of the delay cell can improve the uncertainty of time delay with the TMR technology. The time resolution can be improved.

•
The proposed triple-TDC provides dual operation modes for multi-channel and high-resolution applications.

Disadvantages:
• For the high-resolution application (single-mode), three-fold resources are used to improve the resolution. The resources overhead include area, power, and speed.

Triple-TDC Implementation
The proposed triple-TDC is implemented in a Xilinx XUPV5-LX110T ML505 FPGA evaluation board. The chip number is Xilinx XC5VLX110T-1FF1136 FPGA, and the EDA tool used is Xilinx ISE 14.7 tool. Three TDLs are allocated in the X40, X60, and X80 vertical slice chains with a high-speed carry cell called CARRY4 by using the LOC command for Xilinx ISE 14.7 tool, which is exclusively used by Xlinix FPGAs. A total of 512 delay buffers are employed for each TDL, and 128 cells are adapted after the calibration circuit, which covers the 6-ns conversion range. This is limited by the number of vertical slices and the delay time of the CARRY4 cell. Thus, the least-significant bit (LSB) value of the proposed triple-TDC is 6000/128 = 46.875 ps. Table 1 presents the resource usage of the proposed triple-TDC with TMR in the XC5VLX110T FPGA. A total of 4% and 9% of slice resources are used for slice registers and look-up tables (LUTs), respectively. A limited amount of resources are used in the proposed design. The operation flow char is shown in Figure 5. First, the calibration circuit will run the code density test to calibrate the linearity of these three TDLs. Then, the time conversion can be operated with the three-time conversion and high-resolution TMR time conversion for multi-mode and single-mode, respectively.

Experimental Setup
The calibration circuits employ the code density test for DNL calibration. Thus, the calibration cal_start and cal_stop signals are generated from two uncorrelated sources: (1) the on-board 100-MHz differential oscillator with an on-chip phase-locked loop (PLL) for generating the 166-MHz cal_start clock signal and (2) the on-board 200-MHz oscillator with another on-chip PLL for generating the 166-MHz cal_stop clock signal. These two uncorrelated cal_start and cal_stop signals sent to calibrate three TDL of the proposed triple-TDC. The run-time conversion start and stop signals are generated from an Agilent 81130A instrument for multi-mode operation. Moreover, a constant-delay stop signal generated from the start signal is adapted in single-mode operation to measure the RMS of the triple-TDC with the TMR function. Figure 6 illustrates the experimental setup of the measurement environment. The conversion output is connected to the host of PC, and the Xilinx ChipScope Pro and Matlab tools will capture and analyze the conversion times.

Experimental Results
To demonstrate the performance of the proposed FPGA-based triple-TDC, 2 20 Table 2. Note that the results of TDL-TDC without calibration are measured from the same TDLs, as shown in Figure 3. Furthermore, the time resolution of the RMS values was measured using the constant-delay input. The histogram in Figure 8 indicates that the three TDCs had good RMS values, especially the first TDC, which achieved a time resolution of 3.2 ps RMS.   [−7.2, 4.3] with the proposed TMR, respectively. As shown in Table 3, the proposed triple-TDC with TMR enhances the INL values by 37% and 22% and the DNL values by 56% and 9% compared with the traditional TDL-TDC and triple-TDC without TMR, respectively. Furthermore, a resolution of 35.5 ps RMS can be achieved with the TMR scheme, which enhances the resolution of the triple-TDC by 11.3% compared with that of the traditional TDL-TDC. Figure 9 illustrates the INL, DNL, and RMS values for the proposed triple-TDC with TMR.

Conclusions
A triple-TDC is implemented in the Xilinx FPGA platform with a real-time calibration circuit. The triple-TDC utilizes the three TDCs with different calibration circuits to deal with the environmental effect for multi-mode operation and employs TMR scheme to avoid the manufacturing effect in the FPGA chip for single-mode operation. The measurement results indicate that the proposed triple-TDC can achieve DNL and INL values superior to those of the traditional TDL-TDC. The proposed triple-TDC with TMR enhances the INL values by 37% and 22% and the DNL values by 56% and 9% compared with the traditional TDL-TDC and triple-TDC without TMR, respectively. Moreover, a high RMS time resolution is achieved. Consequently, the proposed FPGA-based TDC avoids the environmental and manufacturing effects and is recommended for multi-channel applications, such as PET and TOF-PET. Furthermore, the TMR scheme improves the time resolution for high-accuracy scientific applications.