1. Technical Field
Embodiments of the present disclosure relate to signal test systems and methods, and particularly to a low voltage differential signaling (LVDS) timing test system and method.
2. Description of Related Art
LVDS is an electrical signaling system that can transmit differential signals at high data transfer rates with a low power consumption. Timing relationship between clock signals and data signals of LVDS is required to be tested to ensure error free data transmission. Currently, LVDS timing tests are manually performed, which is inefficient and error prone.
In general, the word “module,” as used herein, refers to logic embodied in hardware or firmware, or to a collection of software instructions, written in a program language. In one embodiment, the program language may be Java or C. One or more software instructions in the modules may be embedded in firmware, such as an EPROM. The modules described herein may be implemented as either software and/or hardware modules and may be stored in any type of computer-readable medium or other storage device.
In one embodiment, the test system 10 may include a timing test unit 16, a storage system 17, and a processor 18. One or more computerized codes of the timing test unit 16 may be stored in the storage system 17 and executed by the processor 18. In one embodiment, the storage system 17 may include a memory, a cache, and a hard disk drive.
The waveform obtaining module 200 obtains a waveform of the clock signal 13 (hereinafter, “clock signal waveform”) and a waveform of the data signal 14 (hereinafter, “data signal waveform”). It may be understood that a signal waveform is a graph of voltage plotted against time. In one embodiment, the waveform obtaining module 200 may control the oscilloscope 11 to obtain the data signal waveform and the clock signal waveform.
The data identification module 210 selects clock cycles of the clock signal 13 from the clock signal waveform, and identifies data bits transmitted within the selected clock cycles from the data signal waveform. In one embodiment, the data identification module 210 may select a time interval from a rising edge of the clock signal 13 to a subsequent rising edge as a selected clock cycle. The data identification module 210 may identify the data bits according to voltage values of the data signal waveform. Further details are described below.
The timing analysis module 220 determines bit positions of the data bits relative to the clock signal 13. The bit positions denote the timing relationship between the clock signal 13 and the data signal 14. In one embodiment, the timing analysis module 220 may identify a start time of a data bit and a start time of the selected clock cycle. Accordingly, the timing analysis module 220 calculates a time difference between the start time of the data bit and the start time of the selected clock cycle as the bit position of the data bit.
The determination module 230 determines if the number of each of the bit positions is less than a predetermined number such as 10. The determination module 230 may further determine whether each of the bit positions complies with LVDS timing specifications.
The output module 240 outputs the bit position to the output device 15. The output module 240 may further output a result that indicates whether the bit positions comply with the LVDS timing specifications.
In block S301, the waveform obtaining module 200 obtains a clock signal waveform and a data signal waveform. As mentioned above, the clock signal waveform is a waveform of the clock signal 13, and the data signal waveform is a waveform of the data signal 14. In one embodiment, the waveform obtaining module 200 may control the oscilloscope 11 to obtain the clock signal waveform and the data signal waveform. The waveform obtaining module 200 may send a waveform capture command to the oscilloscope 11. In response to the waveform capture command, the oscilloscope 11 captures the clock signal waveform and the data signal waveform, and sends the clock signal waveform and the data signal waveform to the waveform obtaining module 200.
In block S302, the data identification module 210 selects a clock cycle of the clock signal 13 from the clock signal waveform. In one embodiment, the data identification module 210 may select a time interval from a rising edge of the clock signal 13 to a subsequent rising edge as the selected clock cycle. In one embodiment with respect to
In block S303, the data identification module 210 identifies data bits transmitted within the selected clock cycle from the data signal waveform. The data identification module 210 may identify the data bits according to voltage values of the data signal waveform. In one embodiment, a high voltage (e.g., 5V) may denote a bit of digital 1, a low voltage (e.g., 0V) may denote a bit of digital 0, and a bit width of the data bits may be about 5 ns. In one example with respect to
In block S304, the timing analysis module 220 determines bit positions of the data bits relative to the clock signal 13. The bit positions denote the timing relationship between the clock signal 13 and the data signal 14. In one embodiment, the timing analysis module 220 may identify a start time of a data bit and a start time of the selected clock cycle. Accordingly, the timing analysis module 220 calculates a time difference between the start time of the data bit and the start time of the selected clock cycle as the bit position of the data bit.
In block S305, the determination module 230 determines whether the number of each of the bit positions is less than a predetermined number such as 10. In one example, ten values of each of the bit positions are desired. Accordingly, the determination module 230 determines whether the number of each of the bit positions is less than 10. If the number of the bit positions is less than the predetermined number, the procedure may return to block S302.
If the number of each of the bit positions is greater or equal to the predetermined number, in block S306, the determination module 230 determines a minimum value and a maximum value of each of the bit positions. In one example, ten “Pos1” values of 10.55, 10.64, 10.58, 10.73, 10.65, 10.52, 10.65, 10.75, 10.87 and 10.73 are obtained. Therefore, a minimum value of 10.52 ns and a maximum value of 10.87 ns are determined for “Pos1.”
In block S307, the determination module 230 determines whether each of the bit positions complies with LVDS timing specifications according to the corresponding minimum value and maximum value.
In block S308, the output module 240 outputs the bit positions to the output device 15. In one embodiment, the output module 240 outputs the minimum value and the maximum value of each of the bit positions to the output device 15. The output module 240 may further output a result that indicates whether the bit positions comply with the LVDS timing specifications.
Although certain disclosed embodiments of the present disclosure have been specifically described, the present disclosure is not to be construed as being limited thereto. Various changes or modifications may be made to the present disclosure without departing from the scope and spirit of the present disclosure.
Number | Date | Country | Kind |
---|---|---|---|
200910310585.6 | Nov 2009 | CN | national |