The present invention relates to digital data signal testing.
Characterizing the transient behavior of digital signals, i.e. the transition from logical zero to logical one, and vice versa, has become increasingly important for designing as well as manufacturing such digital circuits. For testing a device under test (DUT), usually one or multiple stimulus signals are applied to the DUT and one or multiple response signals onto the stimulus signals are detected and analyzed (e.g. by comparing the detected response signal with an expected response signal).
A standard characterization of digital circuits requires determining the so-called Bit Error Rate (BER), i.e. the ratio of erroneous digital signals (Bits) to the total number of regarded digital signals. Bit Error Rate Testers (BERTs), such as the Agilent® 81250 ParBERT Platform with Agilent® E4875A User Software and Measurement Software both by the applicant Agilent Technologies, are provided to determine a so-called BER eye diagram as a two-dimensional graphical representation generated using a sweep over delay and threshold of an analyzer. The result is an eye pattern with a BER value dependent on the sampling point for a plurality of sampling points.
Each sampling point is determined by an absolute or relative time (e.g. with respect to corresponding transition of a clock signal—usually the system clock for generating the stimulus signals or a clock signal derived therefrom or from the response signal) and a threshold value for comparing the response signal with. The BER eye diagram gives information which BER value can be expected depending on the position of the sampling point within the eye. Parameters like jitter, level noise, phase margin, and quality factor (Q-factor) can be calculated from the BER eye diagram.
EP-A-1241483, pending European Patent Applications Nos. 02017334.0 and 02017333.2, and pending International Patent Application No. PCT/EP/0350307, all by the same applicant, disclose various aspects of BER testing, the teaching thereof shall be incorporated herein be reference.
It is an object of the invention to provide testing of digital data signals. The object is solved by the independent claim(s). Preferred embodiments are shown by the dependent claim(s).
The invention can be partly or entirely embodied or supported by one or more suitable software programs, which can be stored on or otherwise provided by any kind of data carrier, and which might be executed in or by any suitable data processing unit. Software programs or routines are preferably applied to control the measurement sequence and to compute the eye diagram or certain parameters thereof, e.g. rise time, fall time, signal levels, jitter.
Other objects and many of the attendant advantages of the present invention will be readily appreciated and become better understood by reference to the following detailed description when considering in connection with the accompanied drawing(s). Features that are substantially or functionally equal or similar will be referred to with the same reference sign(s).
In
The sampling path 30 comprises a comparator 50 for comparing the test signal 20 against a threshold value Vth and providing a comparison signal 50A as result of the comparison. The comparator 50 provides as the comparison signal 50A a first value (preferably a HIGH signal) in case the test signal is greater than the threshold value and a second value (preferably a LOW signal) in case the test signal is smaller than the threshold value.
A sampling device 60 receives as input the comparison signal 50A together with a timing signal 70 comprising a plurality of successive timing marks. The sampling device 60 is adapted to derive a value of the comparison signal for one or more (and preferably each) of the timing marks. The sampling device 60 provides as an output a sampling signal 60A representing the derived value(s) of the comparison signal 50A over the respective timing mark(s).
The sampling signal 60A is then subject (directly or after further processing) to further analysis by an analysis unit 80 for comparing the sampling signal 60A with an arbitrary test signal, which might be stored in a memory 90. Further, the analysis unit 80 might store the sampling signal 60A (e.g. for later analysis) in a separate memory 95 (but maybe also in the memory 90).
Optionally, a demultiplexer 65 and a divider 75 might be coupled before the inputs of the analysis unit 80 in order to decrease the data rate of the received signal. Often the BER-logic is implemented in lower speed digital circuits, e.g. FPGAs, and thus the high-speed data stream is broken up into several lower speed signals. This procedure is called demultiplexing or deserializing and is done with the demultiplexer 65. The divider 75 controls the demultiplexer 65 and delivers a lower speed clock to the analysis unit 80.
In the example of
The analysis unit 80 receives the sampling signal 60A as well as the timing signal 70. The analysis unit 80 provides a joint analysis of the sampling signal 60A, thereby using knowledge about the timing signal 70 together with the threshold value Vth.
Varying the threshold value Vth allows the sampling device 60 to sample at each possible threshold value. Varying the relative (e.g. delay) time of the timing marks with respect to corresponding transitions of the clock signal CLK then allows to further analyze the test signal 20 along its time axes. Thus e.g. an eye diagram of the test signal 20 can be determined.
Accordingly, each value sampled corresponds with a sampling point represented by a threshold value Vth, and a timing point in the digital data signal 20. For single-ended signals, the threshold value Vth is typically related with respect to a voltage level of the digital data signal 20. For differential signals, the threshold value Vth may be related with respect to a difference signal as the difference between a normal signal of the digital data signal 20 and a complementary signal of the digital data signal 20, with the complementary signal being complementary to the normal signal. In that case, the comparator 50 compares the normal signal against the complementary signal of the digital data signal 20 received at its inputs.
The timing point can be a relative timing point and might be related a fixed value of a period, but is preferably related to a current value of the period in order to cover variations of the period of the digital data signal 20.
Insofar, the embodiment of
Such arbitrary test signal can be any kind of signal being independent of and/or non-correlated to the digital data signal 20, being unrelated to data content of the digital data signal 20, or having otherwise no deterministic relationship with the digital data signal 20. The arbitrary test signal can be an arbitrary test value, e.g. a fixed logic value (such as a logic HIGH or LOW signal or any other logic level) in the simplest case. The arbitrary test signal might also be a more complex signal such as a pseudo random binary sequence (PRBS), any kind of alternating signal such as a signal of alternating logic values (e.g. alternating between a logic HIGH and a logic LOW signal).
For the sake of simplicity, the following description shall be based on a fixed logic value as the arbitrary test signal, so that the analysis unit 80 compares the sampling signal 60A against one logic value (HIGH or LOW). However, it goes without saying that the inventive comparing analysis can be provided as well with other and more complex arbitrary test signals. In an example of a signal of alternating logic values as the arbitrary test signal, the analysis can e.g. be executed individually for each value of the alternating logic values.
In the example here, the arbitrary test signal shall be a fixed logic LOW, so that the sampling signal 60A always compares the sampling signal 60A against the logic LOW. The analysis unit 80 thus interprets any deviation of the sampling signal 60A from the logic LOW as an error.
For each sampling point, the analysis unit 80 can then determine a value of BER representing the ratio of errors detected by comparing against the arbitrary test signal per number of bits. It is noted that the thus determined BER value is different from different BER values determined by comparing against an expected error-free signal, since in latter case the content of the digital data signal 20 is considered into the analysis while in the former case (of the present invention) the arbitrary test signal is completely unrelated to the content of the digital data signal 20. For the sake of better distinguishing those BER values, the BER values determined by comparing against the arbitrary test signal shall be denoted in the following as Arbitrary Bit Error Rate (ABER).
For determining the values of ABER, the analysis unit 80 counts in a sequence of the digital data signal 20 two of: the number of bits in the sequence, the number of errors detected in the sequence, and the number of error-free bits in the sequence as the bits where no error is detected. The details of determining the values of ABER correspond to the determining of BER, which are well known in the art and need not be repeated herein.
The analysis unit 80 can further analyze the determined ABER values in order to derive an indication of occurrences of the digital data signal 20 at a respective sampling point. Such analysis, however, might also be provided by a different (e.g. external unit) coupled to the analysis unit 80 The analysis is preferably done by differentiating a course of the determined ABER values e.g. over the threshold values. Such indication can be the number of occurrences, a distribution of occurrences, or a probability of occurrences.
The analysis unit 80 might further process the received or determined information for graphically representing the derived indications of occurrences for different sampling points. Such processing, however, might also be provided by a different (e.g. external unit) coupled to the analysis unit 80. The graphical representation can be, for example, an absolute or relative distribution of derived indications relative to the respective sampling points (e.g. timing points and threshold values or voltages of signal level), e.g. in an eye diagram. While the representation can show the respective values of the indications as determined, comprehension of the representation might be improved by dividing the values into ranges of values and assigning a specific type of representation (e.g. color and/or shading) to each range of values.
As can be seen e.g. in