The present invention relates to a technology used for the random-pattern analysis, skew analysis, jitter analysis, and eye-pattern analysis of differential signal or ordinary signal.
Operation frequencies of information processing equipment such as network units or personal computer have been remarkably raised recently from megahertz to gigahertz. Thereby, a waveform analysis considering influences of various noises is requested also for a high-frequency signal for transmitting a wiring pattern of a printed circuit board.
A circuit designer of an integrated circuit and the like selects a circuit device constituting a circuit and a parameter for controlling the characteristic of the circuit device so that operations of the circuit are suited to a purposed specification before designing the circuit.
At the present when the computer art is developed, a circuit simulator is used for circuit design. The circuit simulator simulates a circuit operation on a computer without fabricating an actual circuit and shows the circuit operation for a designer. The simulator operated by the software referred to as SPICE2 developed by University of California at Berkley in 1972 is publicly known.
For example, in the case of an analysis using the above circuit simulator, a simulation is executed in accordance with the connection data between circuit devices constituting a circuit to be analyzed and device parameters to estimate the number of noises under a predetermined operational state of each circuit device and display or print the estimated number of noises.
Moreover, a random-pattern analysis has been performed so far, in which the waveform of a random pattern is falsely generated to analyze the reflection characteristic when the random pattern is transmitted to the circuit. As shown in
Because the differential waveform makes it possible to cancel noises by using the difference between the negative waveform 70 and positive waveform 71 even if noises are superimposed on the negative waveform 70 and positive waveform 71, it is a waveform having a high noisiness. Moreover, the differential waveform is defined as bit 0 when the positive waveform 71 is equal to 0 V and bit 1 when the positive waveform 71 is equal to 3 V.
The above random pattern is obtained by combining the bit 1 and the bit 0 at random, in which the reflection characteristic is almost certainly deteriorated in the case of a specific combination. Therefore, by intentionally falsely transmitting a random pattern to the circuit, it is possible to determine good or bad of the reflection characteristic.
To generate the waveform of a random pattern by a conventional circuit simulator, it is necessary to carefully manually set rise and fall timings of the positive waveform 71 (Pos_Wave) and the negative waveform 70 (Neg_Wave) as shown in FIG. 26B.
As described above, the conventional circuit simulator shows the power in a waveform analysis up to approx. 100 MHz and is greatly supported by various designers. Because frequencies of information equipment have been remarkably raised recently and are reaching a gigahertz band from a megahertz band, a waveform analysis considering influences of various noises is requested for a high-frequency signal for transmitting a wiring pattern to a printed circuit board.
However, the conventional circuit simulator has a problem that it is not easy to correspond to signal analyses such as the skew analysis, jitter analysis, and eye-pattern analysis of a high-frequency differential signal and a general signal.
Moreover, as described by referring to FIG. 26A and
It is an object of this invention to provide a method of and apparatus for signal-waveform simulation using the random-pattern analysis, skew analysis, jitter analysis, and the eye-pattern analysis of high-frequency differential waveforms or ordinary signal waveforms. It is another object of this invention to provide a computer readable recording medium that stores a computer program which when executed realizes the method according to the present invention.
The apparatus for signal-waveform simulation according to one aspect of this invention comprises a model generation unit which generates a signal-analysis simulation model in accordance with high-frequency-circuit design information; a random-pattern analysis unit which generates and analyzes a dummy random-pattern waveform for transmitting the signal-analysis simulation model and a differential waveform corresponding to the dummy random-pattern waveform in accordance with a command including the bit information of a random-pattern waveform; and a skew analysis unit which skews the random-pattern waveform or the differential waveform in accordance with a preset skew width.
The apparatus for signal-waveform simulation according to another aspect of this invention comprise a model generation unit which generates a signal-analysis simulation model in accordance with high-frequency-circuit design information; a random-pattern analysis unit which generates and analyzes a dummy random-pattern waveform for transmitting the signal-analysis simulation model and a differential waveform corresponding to the dummy random-pattern waveform in accordance with a command including the bit information of a random-pattern waveform; and a setting unit which sets a region to be excluded from a range to be analyzed in the random-pattern waveform or the differential waveform.
The apparatus for signal-waveform simulation according to another aspect of this invention comprise a model generation unit which generates a signal-analysis simulation model in accordance with high-frequency-circuit design information; a random-pattern analysis unit which generates and analyzes a dummy random-pattern waveform for transmitting the signal-analysis simulation model and a differential waveform corresponding to the dummy random-pattern waveform in accordance with a command including the bit information of a random-pattern waveform; and an eye-pattern analysis unit which generates an eye-pattern waveform by superimposing waveforms obtained by frame-dividing the random-pattern waveform or the differential waveform by a division width that includes a waveform of one bit and is of one data width or wider.
Other objects and features of this invention will become apparent from the following description with reference to the accompanying drawings.
FIG. 5A and
FIG. 7A and
FIG. 8A and
FIG. 9A and
FIG. 10A and
FIG. 12A and
FIG. 14A and
FIG. 15A and
FIG. 18A and
FIG. 19A and
FIG. 20A and
FIG. 23A and
FIG. 26A and
Embodiment/s of a method of and apparatus for signal-waveform simulation, and a computer product according to the present invention is/are described below in detail by referring to the accompanying drawings.
The input section 1 is used to input the wiring data, the parameter, and various commands of a circuit to be designed.
In the printed wiring 40, a superimposed signal between a transmitter signal DS1 transmitted from a driver 31 and a transmitter signal DS2 transmitted from a driver 51 is transmitted. The characteristic impedance of the printed wiring 40 is assumed as Z0. In the transceiving circuit 30, the driver 31 serves as a circuit for transmitting the transmitter signal DS1 to the transceiving circuit 50 through the printed wiring 40.
The output resistance of the driver 31 is assumed as an output resistance Rout1. A correction circuit 33 outputs the transmitter signal DS1 to a receiver 32 as a correction signal. The receiver 32 receives the transmitter signal DS2 as a receiver signal DR2 by obtaining the difference between the superimposed signal (transmitter signal DS1+transmitter signal DS2) sent from the printed wiring 40 and the correction signal (transmitter signal DS1) generated by the correction circuit 33.
In the transceiving circuit 50, the driver 51 serves as a circuit for transmitting the transmitter signal DS2 to the transceiving circuit 30 through the printed wiring 40. The output resistance of the driver 51 is assumed as an output resistance Rout2. A correction circuit 53 outputs the transmitter signal DS2 to a receiver 52 as a correction signal. The receiver 52 receives the transmitter signal DS1 as a receiver signal DR1 by obtaining the difference between the superimposed signal (transmitter signal DS1+transmitter signal DS2) sent from the printed wiring 40 and the correction signal (transmitter signal DS2) generated by the correction circuit 53. Moreover, in the case of the signal transmission circuit 20, it is necessary to match the characteristic impedance Z0 with the output resistance Rout1 (output resistance Rout2) in order to prevent reflection of a signal.
In
A random-pattern analysis section 5 performs a random-pattern analysis in accordance with a signal of a bit string comprising a random combination between 0 and 1 referred to as a random pattern (refer to FIG. 5A and FIG. 5B). An eye-pattern analysis section 6 generates an eye pattern (refer to FIG. 12A and
A jitter analysis section 7 performs a jitter analysis of falsely generating jitter (refer to
Operations of the above embodiment are described by referring to the flowchart shown in FIG. 3. In step SA1, a wiring pattern for a circuit to be simulated is designed. A parameter corresponding to the wiring pattern is input from the input section 1. In this case, the following parameters used for various types of determinations to be described later are also input from the input section 1.
Unit: [V] that can be designated up to the third decimal place.
Unit: [V] that can be designated up to the third decimal place.
Unit: [%] that can be designated up to the third decimal place
Unit: [V] that can be designated up to the third decimal place
Unit: [V] that can be designated up to the third decimal place
Unit: [ps] that is designated by an integer
Unit: [Ps] that is designated by an integer
Unit: [V] that can be designated up to the third decimal place
The control section 2 stores the parameters in the storage section 3 and simultaneously starts the wiring-model generation section 4. In step SA2, the wiring-model generation section 4 executes the wiring modeling for modeling a wiring pattern in accordance with the above parameters. In step SA3, the processing for generating the above random pattern is executed. Specifically, a user inputs a random-pattern generation command 60 having the format shown in FIG. 4A. The random-pattern generation command 60 is a command for generating the random-pattern waveform shown in
In the random-pattern generation command 60, EYEBIT (Input Bit Pattern) is used to set a random bit (random combination between 0 and 1) corresponding to a random-pattern waveform. In the case of the embodiment, [Input Bit Pattern] and the random-bit-pattern format 61 shown in
BITWIDTH [Bit-Width] sets one bit width of the random bit string 63 shown in FIG. 4D. EYEEVENT [Eye-pattern Event] sets the number of repetitions of a bit pattern set in accordance with EYEBIT [Input Bit Pattern].
Moreover, when the random-pattern generation command 62 is input, the random-pattern analysis section 5 generates a random-pattern waveform constituted of the positive waveform 71 and negative waveform 70 shown in FIG. 5A and the differential waveform 72 shown in
In step SA5, the control section 2 determines whether a skew analysis command is input from the input section 1. When the determination result is “No”, the control section 2 performs the determination in step SA7. However, when the determination result in step SA5 is “Yes”, the control section 2 starts the skew analysis section 8. Thereby, in step SA6, the skew analysis section 8 executes the processing of skewing the positive waveform 71 or negative waveform 70 in the random-pattern waveform shown in FIG. 5A.
To skew the positive waveform 71, a user sets rise and fall timings of the positive waveform 71 (Pos_Wave) and negative waveform 70 (Neg_Wave) as shown in FIG. 7B. In this case, as shown in
However, to skew a negative waveform 70, the user sets rise and fall timings of the positive waveform 71 (Pos_Wave) and negative waveform 70 (Neg_Wave) as shown in FIG. 8B. In this case, as shown in
In step SA7, the control section 2 determines whether a jitter addition command (refer to
In this case, the jitter addition command 80 shown in
Moreover, the jitter analysis section 7 causes jitter by executing the jitter addition command 80 and swinging the negative waveform 70 and positive waveform 71 rightward and leftward by the jitter addition value JV (total of 2 JV) as shown in FIG. 10B. The jitter analysis result is displayed on the display section 10 in step SA11 to be described later. In this case, the jitter analysis section 7 also displays a bold line 90 in order to make a portion where jitter occurs clear as shown in FIG. 10B.
Moreover,
In step SA9, the control section 2 determines whether an eye-pattern analysis command is input from the input section 1. When the determination result is “No”, the control section 2 executes the processing in step SA10. However, when the determination result in step SA9 is “Yes”, the control section 2 starts the determination section 9. Thereby, the determination section 9 determines good or bad of an eye pattern from step SA12 to step SA14.
Good or bad is determined for the following three cases.
Moreover, in the case of the good/bad determination of an eye pattern, cases are also determined in which a jitter analysis is applied to random-pattern waveforms of the above (case 1) to (case 3).
In step SA12, the eye-pattern analysis section 6 executes the processing of frame-dividing a waveform by one data width (UI—1, UI—2, . . . , UI_n) as shown in FIG. 12A. In step SA13, the eye-pattern analysis section 6 superimposes the frame-divided waveforms as shown in FIG. 12B and
The eye-pattern waveform 110 shown in
In step SA14, the determination section 9 determines qualities of the eye-pattern waveforms 130 and 110 shown in FIG. 13B and
Specifically, when the eye portion of the eye-pattern waveform 130 or 110 even slightly enters the reference eye pattern 120, the determination section 9 sets the determination result to “bad”. In this case, the determination section 9 displays waveforms corresponding to an error bit and two bits before and after the error bit among those constituting the eye-pattern waveform 130 or 110.
Moreover, when the eye portion of the eye-pattern waveform 130 or 110 does not enter the reference eye pattern 120, the determination section 9 sets the determination result to “good”. In step SA11, the above analysis results are displayed on the display section 10.
However, when the determination result in step SA9 is “No”, the determination section 9 performs good/bad determinations of the random-pattern waveform shown in FIG. 5A and the differential waveform 72 shown in
Moreover, for the embodiment, cases are good/bad-determined in which a jitter analysis is applied to random-pattern waveforms of the above (Case 1) to (Case 3).
Specifically, the determination section 9 determines whether the value of (((value of positive waveform 71)+(value of negative waveform 70))/2) shown in
The determination section 9 determines whether the differential voltage amplitude |VID| ((value of positive waveform 71)−(value of negative waveform 70)) shown in
In step SA11, the random-pattern waveform and the differential waveform 72 shown in FIG. 6A and
An example is described above in which goodness or badness of the eye-pattern is determined according to the random-pattern waveform constituted of the positive waveform 71 and negative waveform 70 (refer to FIG. 5A), and the differential waveform 72 (refer to FIG. 5B), which are generated by the random-pattern generation command 62.
In other words, by the random-pattern generation command 62 shown in
When a capacitance component of a coupling capacitor is included for example in the printed wiring 40 (transmission line) shown in
The adverse effects on the eye-pattern determination caused by the unstable regions will be explained below.
Thus in the transition period T, there is a bit pattern of 30 bits (one data width equivalent to UI—1-UI_n) constituted of “1011011100” (first repetition), “1011011100” (second repetition) and “1011011100” (third repetition).
In contrast to the random-pattern waveform in the stable region shown in
A differential waveform 142 shown in
To perform the eye-pattern determination, in step SA12 shown in
In step SA13, the eye-pattern analysis section 6 superimposes the frame-divided random-pattern waveforms and differential waveforms as shown in FIG. 15A and
The eye-pattern waveform 143 shown in
Since the “eyes” in the eye-pattern waveforms 143 and 144 are squashed, the above mentioned accurate good/bad determination of the eye-pattern cannot be performed.
Thus in the embodiment, a setting is carried out, in which the unstable regions (transition period T: refer to
Specifically, in step SA3 shown in
In the random-pattern generation command 150, EYEBIT [Input Bit Pattern], BITWIDTH [Bit-Width] and EYEEVENT [Eye-pattern Event] are equivalent to those in the random-pattern generation command 60 (refer to FIG. 4A).
In other words, in the random-pattern generation command 150, EYEBIT [Input Bit Pattern] is used to set a random bit (random combination between 0 and 1) corresponding to the random-pattern waveform. In the embodiment, [Input Bit Pattern], and a random-bit-pattern format 151 shown in
BITWIDTH [Bit-Width] sets a bit width of the random bit string. EYEEVENT [Eye-pattern Event] sets number of repetitions of the bit pattern set in accordance with EYEBIT [Input Bit Pattern].
DUMMYEVENT [Dummy Event] sets period of non-displaying the random-pattern waveform and the differential waveform and not performing eye-pattern determination, by the number of repetitions of the bit pattern. During the period set in accordance with DUMMYEVENT [Dummy Event] a waveform analysis is performed as the internal processing. A setting example of a random-pattern generation command 152 is shown in FIG. 16C.
In the random-pattern generation command 152, a random-pattern 153 (random-pattern waveform and differential waveform) in which a bit pattern, “1011011100” (EYEBIT) with a bit width (BITWIDTH) of one-thousand-two-hundred-and-fifty, is repeated one-hundred-and-three times (DUMMYEVENT+EYEEVENT).
As for the random-pattern 153, the random-pattern waveform and differential waveform of the random-pattern having a number of events of three (from first to third repetitions; referred to as a dummy event below) are not displayed on the display section 10 (refer to FIG. 1), and eye-pattern determination is not performed.
As for the case of the random-pattern after the dummy event, having a number of events of one hundred (from fourth to one-hundred-third repetitions), the random-pattern waveform and differential waveform are displayed on the display section 10 and eye-pattern determination is performed.
When the random-pattern generation command 152 is input, the random-pattern analysis section 5 generates a random-pattern waveform and differential waveform corresponding to the random-pattern 153 (refer to
The results of the random-pattern analysis are displayed on the display section 10 in a later-described step SA11. The display section 10 displays the random-pattern waveform and differential waveform of the stable regions (refer to
To perform eye-pattern determination, the eye-pattern analysis section 6 executes the processing of frame-dividing the random-pattern waveform (refer to
In step SA13, the eye-pattern analysis section 6 superimposes the frame-divided waveforms as shown in FIG. 19A and
The eye-pattern waveform 163 shown in
In the eye-pattern waveforms 163 and 164, it is obvious that “eyes” are clear and eye-pattern determination can be performed, in contrast to the eye-pattern waveforms 143 and 144 shown in
In step SA14, the determination section 9, as explained above, determines good or bad of the eye-pattern waveforms 163 and 164 shown in
When a setting of DUMMYEVENT=0 is used in
By the random-pattern generation command 154, a random-pattern 155 (random-pattern waveform and differential waveform) in which a bit pattern “1011011100” (EYEBIT) having a bit width (BITWIDTH) of one-thousand-two-hundred-and-fifty is repeated one-hundred times (EYEEVENT), is generated.
In the random-pattern 155, there is no dummy event, the random-pattern waveform and differential waveform corresponding to the random-pattern having a number of events of one hundred (one to hundred repetitions) are displayed on the display section 10 and eye-pattern determination is executed.
In the above-mentioned embodiment, an example, in which the waveform is frame-divided by one data width (UI—1, UI—2, . . . , UI_n) upon processing of frame-dividing of step SA12 (refer to
When transmission line characteristics of the printed wiring 40 (transmission line) shown in
The eye-pattern waveform 170 shown in
When such a problem arises, as shown in FIG. 21 and
Specifically, in step SA12 shown in
For example, in the case of the dividing width F2, the eye-pattern analysis section 6 firstly shifts a dividing origin Pa (cross point of the positive waveform 180 and negative waveform 181) half of one data width UI/2 to the left to set a new dividing origin Pa′ there. The dividing origin Pa is equivalent to the dividing origin of FIG. 12A.
Secondly, the eye-pattern analysis section 6 sets the dividing width F2 having a width that is twice the width of one data width UI from the new dividing origin Pa′. In this setting, adverse effects of phase shifts and distortion on the eye-pattern waveform are absorbed because the dividing width F2 is wider than one data width UI—2 that corresponds to one bit worth of random-pattern waveform and differential waveform 182. Other dividing widths F1, and F3-Fn can be set in the same manner as that of the dividing width F2 described above.
In step SA13, the eye-pattern analysis section 6 superimposes waveforms frame-divided respectively by the dividing width F1-Fn, and displays eye-pattern waveforms 193 and 194 shown in FIG. 23A and
Left side section of a random-pattern waveform constituted of a negative waveform 190 and positive waveform 191 and left side section of a differential waveform 192, which are shown in
For example, in the case of the dividing width F6 shown in
Secondly, the eye-pattern analysis section 6 sets the dividing width F6 having a width that is twice the width of one data width UI from the new dividing origin Pb′. In this setting, adverse effects of phase shifts and distortion on the eye-pattern waveforms are absorbed because the dividing width F6 is wider than one data width UI—6 that corresponds to one bit worth of the random-pattern waveform and differential waveform 192. Other dividing widths F1-F5, and Fn can be set in the same manner as that of the dividing width F6 described above.
In step SA13, the eye-pattern analysis section 6 superimposes waveforms frame-divided respectively by the dividing width F1-Fn, and displays eye-pattern waveforms 193 and 194 shown in FIG. 23A and
Eye-pattern waveforms 195 and 196 shown in
Goodness or badness of the eye-pattern waveform corresponding to one of the random-pattern waveform and the differential waveform can be determined selectively.
As described above, according to the above-explained embodiment, a wiring model is generated in accordance with the parameter (design information) about a high-frequency circuit and a dummy random-pattern waveform for transmitting a wiring model and a differential waveform corresponding to the dummy random-pattern waveform are generated to skew the random-pattern waveform or differential waveform in accordance with a preset skew width (Skew_MAX). Therefore, it is possible to easily perform the random-pattern analysis and skew analysis of high-frequency differential waveforms or ordinary signal waveforms.
Moreover, jitter is caused in a random-pattern waveform in accordance with a preset jitter addition value (JV) and an eye-pattern waveform is generated by superimposing frame-divided random-pattern waveforms or differential waveforms. Therefore, it is possible to easily perform the jitter analysis and eye-pattern analysis of high-frequency differential waveforms or ordinary signal waveforms.
Furthermore, good/bad determination of a differential waveform or eye-pattern waveform is performed in accordance with a preset reference value as described in steps SA10 and SA14. Therefore, it is possible to immediately return a good/bad determination result to high-frequency circuit design.
Moreover, a signal-analysis simulation model is generated in accordance with high-frequency-circuit design information; a dummy random-pattern waveform for transmitting the signal-analysis simulation model and a differential waveform corresponding to the dummy random-pattern waveform are generated in accordance with a command including the bit information of a random-pattern waveform; and region to be excluded (for example, a region that would have adverse effects on the analysis) from a range to be analyzed when analyzing the random-pattern waveform or differential waveform, is set in the DUMMYEVENT shown in FIG. 16C. As a result, accuracy of the analysis can be increased.
Furthermore, good or bad of an eye-pattern waveform corresponding to the random-pattern waveform or differential waveform in accordance with a preset reference value, over the range excluding the region (for example, the region of which good or bad of the eye-pattern can be determined) set in DUMMYEVENT, is determined. Thus, accuracy of the good/bad determination of the eye-pattern can be increased.
Moreover, as already explained in reference to FIG. 21 and
An embodiment of the present invention is described above by referring to the accompanying drawings. However, a specific configuration is not restricted to the embodiment. Design modifications are also included in the present invention as long as they are not deviated from the gist of the present invention. For example, in the case of the above embodiment, it is also permitted to realize functions of the signal-waveform simulation apparatus shown in
The computer 200 shown in
The CPU 201 realizes functions of the above signal-waveform simulation apparatus by reading a signal-waveform simulation program from the recording medium 300 via the reader 205 and then executing the signal-waveform simulation program. The recording medium 300 includes not only a portable recording media such as an optical disk, a floppy disk, and a hard disk but also a transmission medium for temporarily storing data like a network.
Moreover, the embodiment explained about differential waveform. However, ordinary signal waveform may also be used.
As described above, according to the present invention, it is possible to easily perform the random-pattern analysis and skew analysis of high-frequency differential waveforms or ordinary signal waveforms.
Moreover, it is possible to immediately return a good/bad determination result to high-frequency circuit design.
Furthermore, it is possible to increase the accuracy of the waveform analysis.
In addition, it is possible to increase the accuracy of the good/bad determination of the eye-patterns.
What is more, it is also possible to decrease the effects of phase shifts and distortion and to obtain eye-patterns of which their good or bad can be determined.
Moreover, the good/bad determination can be performed with eye-patterns having little effects of phase shifts and distortion and the accuracy of the good/bad determination can be increased.
Although the invention has been described with respect to a specific embodiment for a complete and clear disclosure, the appended claims are not to be thus limited but are to be construed as embodying all modifications and alternative constructions that may occur to one skilled in the art which fairly fall within the basic teaching herein set forth.
Number | Date | Country | Kind |
---|---|---|---|
2000-273267 | Sep 2000 | JP | national |
2001-250102 | Aug 2001 | JP | national |
Number | Name | Date | Kind |
---|---|---|---|
4777616 | Moore et al. | Oct 1988 | A |
4908576 | Jackson | Mar 1990 | A |
5361277 | Grover | Nov 1994 | A |
5394106 | Black et al. | Feb 1995 | A |
5701441 | Trimberger | Dec 1997 | A |
5838954 | Trimberger | Nov 1998 | A |
6006350 | Tsujii | Dec 1999 | A |
6185509 | Wilstrup et al. | Feb 2001 | B1 |
6449570 | Wilstrup et al. | Sep 2002 | B1 |
Number | Date | Country |
---|---|---|
11-274307 | Oct 1999 | JP |
Number | Date | Country | |
---|---|---|---|
20020032555 A1 | Mar 2002 | US |