This application is based upon and claims the benefit of priority of the prior Japanese Patent Application No. 2008-138312, filed on May 27, 2008, the entire contents of which are incorporated herein by reference.
The present invention relates to a circuit simulation apparatus for performing a circuit simulation pertaining to jitter that passes through an element, a medium containing a circuit simulation program, a circuit simulation method.
The amount of information processing demanded of digital electronic apparatuses has been on the increase in recent years. Signal speeds inside the apparatuses have increased accordingly, with the propensity for smaller transmission margins. It has therefore been necessary to estimate the transmission margins accurately, putting a large number of factors for margin deterioration together. In particular, a phase shift (jitter) in elements and transmission systems has been a factor of ever increasing significance.
Among the conventional technologies is a method of analyzing a transmission line, in which a rough estimation of the amount of jitter is calculated from an eye pattern that is obtained by transmitting short bit patterns through the transmission line. There is also a measuring apparatus which calculates the jitter transfer function, bit error rate, and jitter tolerance of a Device Under Test (DUT) with high efficiency (refer to, e.g., Patent Document 1: Japanese. Laid-Open Patent Publication No. 2007-292520 and Patent Document 2: International Publication Pamphlet No. WO 2003/073680).
It is not possible, however, to model elements that have a jitter transfer function titter pass elements), such as an optical module, buffer, and repeater, by using ordinary waveform simulators. As employed herein, the jitter transfer function of a jitter pass element refers to the ratio of output jitter to input jitter thereof, and is expressed as a frequency characteristic.
A signal transmission system is thus divided into systems preceding and subsequent to a jitter pass element, and the systems are subjected to respective circuit simulations. The jitter determined by the circuit simulation on the system in the preceding stage is then added to the jitter determined by the circuit simulation on the system in the subsequent stage, whereby the result of the entire circuit simulation is obtained.
This circuit simulation method has a significant drawback in terms of man-hours due to reasons such as complicated modeling and the incapability of comprehensive simulation.
According to an aspect of the invention, there is provided a circuit simulation apparatus for performing a circuit simulation using a jitter pass element model that is a model of a jitter pass element, the jitter pass element being an element for jitter to pass through, the apparatus including: a first acquisition unit that acquires information on a jitter transfer function of the jitter pass element with respect to a predetermined frequency band; a second acquisition unit that acquires information pertaining to input jitter to the jitter pass element; a first calculation unit that determines a jitter frequency based on the information acquired by the first acquisition unit or the second acquisition unit to calculate a jitter transfer function value which is a value of the jitter transfer function acquired by the first acquisition unit at the jitter frequency; and a second calculation unit that calculates output jitter from the jitter pass element based on the information pertaining to the input jitter acquired by the second acquisition unit and the jitter transfer function value calculated by the first calculation unit.
The object and advantages of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the claims.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the invention, as claimed.
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
Description will be given of the configuration of a circuit simulation apparatus according to the present embodiment.
Circuit data on the relevant device which is designed by using the models in the model library 3 is stored in the circuit data storing unit 1. The control unit 2 controls a circuit simulation on the circuit data stored in the circuit data storing unit 1, by using the models in the model library 3. An example of the circuit simulation apparatus is a computer having a CPU (Central Processing Unit) and a storage device. An example of the circuit data storing unit 1 is the storage device. Examples of the control unit 2 and the model library 3 are programs which are stored in the storage device and executed by the CPU.
Next, the operation of the circuit simulation apparatus according to the present embodiment will be overviewed.
The parameter set processing will be described below.
The parameter setting unit 11 displays a parameter input screen, and sets the attributes of the jitter pass element model 7 of the relevant element according to user inputs on the parameter input screen.
(1) The limit values of input amplitude (MIN, MAX);
(2) The jitter transfer function of the relevant element;
(3) Additional jitter;
(4) The waveform characteristic of the output signal;
(5) The jitter tolerance of the receiving element; and
(6) Target jitter type.
When the limit values of the input amplitude are input by the user, the parameter setting unit 11 sets these values as an attribute of the jitter pass element model 7.
When the coordinates of a change point or change points in the frequency characteristic of a jitter transfer function are input by the user, the parameter setting unit 11 sets the jitter transfer function as an attribute of the jitter pass element model 7. The jitter transfer function is a frequency characteristic expressed by a line graph, being composed of catalog data or measured data.
The parameter setting unit 11 also displays the jitter transfer function of an element without jitter amplification or suppression, where input jitter is transferred to the output directly, as an alternative on the parameter input screen. When this alternative is selected by the user, the parameter setting unit 11 sets a jitter transfer function that is 1 to across the entire frequency range, as an attribute of the jitter pass element model 7. This parameter set processing makes it possible to discriminate an element without jitter amplification or suppression for the sake of reduced man-hours for input.
In some jitter pass elements, jitter may be added fixedly because of noise and other factors. In this case, the amount of the jitter to be added (additional jitter) is predetermined. When additional jitter is input by the user, the parameter setting unit 11 therefore sets the value as an attribute of the jitter pass element model 7.
The parameter setting unit 11 sets the waveform characteristic of an output signal as an attribute of the jitter pass element model 7 according to user input. The waveform characteristic of the output signal includes amplitude and rise/fall time.
When the jitter tolerance of the receiving element is input by the user from the parameter input screen, the parameter setting unit 11 sets it as an attribute of the jitter pass element model 7. The jitter tolerance has a frequency characteristic which is expressed by a line graph, and is input in terms of the coordinates of a change point or change points as with the jitter transfer function. This parameter set processing makes it possible to include the jitter tolerance of the receiving element as one of the conditions for calculating the transfer function of the jitter pass element. The frequency characteristic of the jitter tolerance can be input in terms of change points.
The parameter setting unit 11 sets target jitter type as an attribute of the jitter pass element model 7 according to user input. The target jitter type refers to the type of intended jitter among the output jitters of the sending element in the preceding stage of the relevant element. The target jitter type is selected from Dj and Rj. This selection is made by the user, based on such factors as the function of the relevant device and the frequency of power supply noise that occurs on the printed circuit board (the jitter frequency of the sending element which typically coincides with the frequency of the power supply noise). Both of Dj and Rj may be selected, and neither may be selected.
This parameter set processing makes it possible to select the type(s) of jitter(s) to be passed, from among the jitters of the sending element in the preceding stage. Some jitter-suppressing elements are considered to suppress all Dj in the element characteristic. For such elements, Dj can be excluded from calculation targets beforehand so that overestimation is avoided of the amount of jitter to pass.
The input jitter amount acquisition processing will be described below.
When expressing a jitter pass phenomenon, it is first necessary to identify the jitters included in the input signal. Actual waveforms contain various kinds of jitter components (such as random jitter and deterministic jitter). Typical circuit simulation programs, on the other hand, often express jitters that occur when a signal is transmitted through a transmission line and that are output from the sending element separately from each other.
Of these, the output jitter of the sending element in the preceding stage is defined in the catalog specifications of the sending element, and is typically set in the sending element model as parameters. The input jitter amount acquisition unit 12 reads and recognizes the parameters of the sending element model as variables (variable processing).
According to this input jitter amount acquisition processing, it is possible to divide the jitter input to the jitter pass element into the output jitter of the sending element and a transmission line jitter occurring from the transmission line, and process the output jitter as variables. This processing eliminates the need to express the jitter behavior of the sending element, thereby contributing to a reduced amount of calculation.
The transmission line jitter appears as a waveform deterioration due to transmission line loss, and varies with the transmission line loss. Information on the transmission line jitter therefore may not be recognized by variable processing as with the output jitter of the sending element. The input jitter amount acquisition unit 12 observes the eye pattern of the waveform input to the relevant element, and calculates the duration of the area (cross point) where this eye pattern crosses the time axis (cross point duration detection processing), thereby recognizing the cross point duration as the amount of transmission line jitter.
This input jitter amount acquisition processing makes it possible to recognize the transmission line jitter as the input jitter of the jitter pass element, and use it for subsequent processing.
The jitter transfer function value calculation processing will be described below.
The jitter transfer function value calculation processing varies with the types of intended jitter pass elements, which are broadly classified into two types. A first type of jitter pass element superimposes a certain jitter on input jitter before output. A second type of jitter pass element suppresses input jitter with a certain transfer function before output. The jitter transfer function of the first type is 1 to across the entire frequency range.
Next, the jitter transfer function value calculation processing of second type will be described in detail.
For a second type of jitter pass element, the frequency dependence of the jitter transfer function is often given as catalog data or measured data. It is technically quite difficult, however, to express the jitter frequency dependence with ordinary simulation models. The jitter transfer function value calculation unit 13 of the present embodiment determines the target frequency range based on the frequency dependence of the jitter tolerance of a CDR (Clock Data Recovery) circuit in the receiving element at the subsequent stage of the relevant element, and uses a maximum jitter transfer function value in that frequency range.
The jitter transfer function value calculation unit 13 initially performs minimum jitter tolerance extraction processing to extract a point of the minimum jitter tolerance from among the change points of the receiving element's jitter tolerance which is set by the parameter set processing. The specific calculation formula for the minimum jitter tolerance extraction processing is given by the following:
Minimum jitter tolerance=MIN(jitter tolerances in all change points).
In this example, the jitter transfer function value calculation unit 13 extracts the jitter tolerance of Point 3 to Point 4 from the frequency characteristic of the jitter tolerance of the receiving element as the minimum jitter tolerance. According to this minimum jitter tolerance extraction processing, it is possible to extract the minimum jitter tolerance from the change points of the jitter tolerance of the receiving element which are input as parameters, by using a typical MIN function.
Next, the jitter transfer function value calculation unit 13 performs target jitter frequency extraction processing to extract a frequency of the minimum jitter tolerance which is extracted by the minimum jitter tolerance extraction processing, as a target jitter frequency. This target jitter frequency extraction processing is performed for the following two reasons:
(1) Jitter pass elements typically have the characteristic that the jitter transfer function value increases with decreasing frequency; and
(2) Receiving elements having a built-in CDR typically decrease in jitter tolerance with increasing jitter frequency, and show a constant tolerance value above a certain frequency.
The specific calculation formula for the target jitter frequency extraction processing is given by the following:
Target jitter frequency=MIN(frequencies at minimum jitter tolerance extracted by the minimum jitter tolerance extraction processing).
In this example, the jitter transfer function value calculation unit 13 extracts the frequency of Point 3, which is the minimum frequency among those of Point 3 to Point 4 with the minimum jitter tolerance, as the target jitter frequency.
According to this target jitter frequency extraction processing, it is possible to narrow the change points of the jitter tolerance of the receiving element which are input as parameters, down to ones pertaining to the minimum jitter tolerance based on the general tendency on the jitter characteristics of jitter pass elements and receiving elements. Then, the frequency to be subjected to the jitter transfer function value calculation can be extracted therefrom by using an ordinary MIN function.
Next, the jitter transfer function value calculation unit 13 performs target jitter transfer function value calculation processing to calculate the jitter transfer function value of the relevant element at the target jitter frequency which is extracted by the target jitter frequency extraction processing. Here, the jitter transfer function value calculation unit 13 calculates the jitter transfer function value at the target jitter frequency by means of linear approximation using the plot of the jitter transfer function which is input as parameters.
In this example, the jitter transfer function value calculation unit 13 calculates the target jitter transfer function value, i.e., the value of the jitter transfer function at the target jitter frequency (Point 3) by means of linear approximation (interpolation) between Point 2 and Point 3.
The output jitter amount calculation processing will be described below.
The output jitter amount calculation unit 14 calculates the amount of output jitter based on the numerical values acquired. The formula for calculating the amount of output jitter is given by the following:
(The output jitter of the jitter pass element)={(the output jitter of the sending element in the preceding stage)+(transmission line jitter)}×(jitter transfer function value)+(additional jitter).
Next, the output waveform generation processing will be described.
The jitter pass element model 7 includes an output buffer model and a waveform display function as the output waveform generation unit 15. The output buffer model generates a waveform. The waveform display function adds the amount of output jitter calculated by the output jitter amount calculation processing to the generated waveform, thereby generating an output waveform.
The output buffer model is configured as an ordinary behavior model which is composed of current sources and resistances. Behavior models express amplitudes and output impedances by adjusting the current sources and resistances, and are incapable of jitter expression. The output waveform generation unit 15 of the present embodiment therefore provides a pseudo-expression of the jitter phenomenon by using the waveform display function.
One of the conventional techniques for expressing the behavior of a jitter pass element is to use transistor models. Elements having a jitter-suppressing effect, however, require transistor models of vast scale to model with. An enormous amount of simulation time is required to express the frequency dependence of PLLs (Phase Locked Loops) or the like. It has thus net been possible to practice the technique. According to the present embodiment, it is possible to express a jitter pass element with a behavior model and perform simulations thereon.
The present embodiment also makes it possible to verify an entire signal transmission system including a jitter pass element by a single circuit simulation, thereby reducing the circuit simulation time of a signal transmission system with high speed signals to or below 1/10.
The circuit simulation apparatus according to the present embodiment makes the same operation as in the first embodiment, with only differences in the contents of the parameter set processing and the jitter transfer function value calculation processing.
In the parameter set processing of the first embodiment, the parameter setting unit 11 sets the user-input information pertaining to the jitter tolerance of the receiving element into the jitter pass element model 7. In the jitter transfer function value calculation processing of the first embodiment, the jitter transfer function value calculation unit 13 acquires the jitter tolerance of the receiving element which is set in the jitter pass element model 7, and calculates the jitter transfer function value of the jitter pass element. This technique, however, makes it inconvenient to use the models as a library since the information needs to be input each time the receiving element is changed.
The parameter set processing according to the present embodiment will be described below.
The parameter setting unit 11b does not set the parameters pertaining to the jitter tolerance of the receiving element as an attribute of the jitter pass element model 7b. Instead, the receiving element model 5b sets the user-input parameters pertaining to the jitter tolerance of the receiving element as an attribute of the receiving element model 5b.
Now, description will be given of the jitter transfer function value calculation processing according to the present embodiment.
In the jitter transfer function value calculation processing of the present embodiment, the jitter transfer function value calculation unit 13b identifies the receiving element model connected to the subsequent stage of the relevant element, acquires the receiving element's jitter tolerance which is set in the receiving element model, and calculates the jitter transfer function value of the jitter pass element.
According to the present embodiment, the information on the characteristics of the element models is set into the respective models. This facilitates utilizing the models as a library.
In the circuit simulation apparatus according to the first embodiment, the characteristic of the jitter pass element is expressed by using the numerical values that are defined by the sending element in the preceding stage and the receiving element in the subsequent stage. An accurate expression of the jitter behavior, however, requires that the jitter be analyzed for frequency components.
The input frequency component acquisition processing will be described below.
In the input frequency component acquisition processing, the input jitter amount acquisition unit 12c acquires numerical data that expresses the frequency components of the input jitter contained in the input signal of the relevant element. This numerical data includes the frequencies of the frequency components of the jitter titter frequencies) and energy in pairs. Hereinafter, this numerical data will be referred to as the spectrum of the jitter.
The output frequency component calculation processing will be described below.
In the output frequency component calculation processing, the jitter transfer function value calculation unit 13c calculates the energy of the jitter to be output from the jitter pass element (output jitter energy) with respect to each of the jitter frequencies based on the spectrum of the input jitter and the jitter transfer function. The formula for calculating the output jitter energy at f, where f is the jitter frequency, is given by the following:
Output jitter energy(f)=energy(f) of the input jitter×jitter transfer function(f).
Next, the output jitter amount calculation processing will be described.
In the output jitter amount calculation processing, the output jitter amount calculation unit 14c integrates the frequency components of the output jitter calculated by the output frequency component calculation processing with respect to the frequency across the entire pass band, thereby calculating the amount of output jitter along the time axis.
According to the present embodiment, the frequency analysis function is incorporated into the jitter pass element model 7c so that simulations can be made with higher precision.
Each of the foregoing embodiments may be applied to techniques of signal waveform analysis for calculating a comprehensive transmission margin with consideration given to factors that can deteriorate transmission quality.
A program for making a computer that constitutes the circuit simulation apparatus perform the foregoing steps may be provided as a circuit simulation program. The program may be stored in a computer-readable recording medium so that it can be executed by a computer that constitutes the circuit simulation apparatus. Examples of the computer-readable recording medium include: internal storage devices implemented inside the computer such as ROM and RAM; portable recording media such as a CD-ROM, flexible disk, DVD disk, magneto-optical disk, and IC card; databases for storing computer programs, and other computers and their databases; and even online transmission media.
The present invention may be practiced in various other forms without departing from the spirit or essential characteristics thereof. The foregoing embodiments are therefore to be considered in all respects as illustrative and not restrictive. The scope of the invention is indicated by the appended claims rather than by the foregoing description. All changes, improvements, substitutions, and modifications which come within the meaning and range of equivalency of the claims are also intended to be embraced in the scope of the invention.
According to the circuit simulation apparatus, the medium containing a circuit simulation program, and the circuit simulation method disclosed therein, it is possible to perform a circuit simulation on a circuit including a jitter pass element with high efficiency.
All examples and conditional language recited herein are intended for pedagogical purposes to aid the reader in understanding the invention and the concepts contributed by the inventor to furthering the art, and are to be construed as being without limitation to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to a showing of the superiority and inferiority of the invention. Although the embodiment(s) of the present inventions have been described in detail, it should be understood that the various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention.
Number | Date | Country | Kind |
---|---|---|---|
2008-138312 | May 2008 | JP | national |