Low-distortion waveform generating method and waveform generator using the same

Abstract: Waveform data read out of a memory (12) is converted by a D/A converter (13) into an analog waveform, which is amplified by an amplifier (15), from which a waveform signal is generated. To cancel the generation of a distortion in the amplifier, a composite waveform composed of a distortion canceling signal waveform and a fundamental frequency signal waveform to be generated is written into the memory. To determine a distortion canceling signal, the fundamental frequency component in the signal waveform which is output from the amplifier when multi-sine waveform data is read out of the memory, is attenuated by a notch filter (17), and the signal waveform is converted by an A/D converter (18) to a digital multi-sine waveform, which is provided to a computation and control part (10) and subjected to a Fourier transform analysis to compute the amplitude and phase of each harmonic component. Further, the output of the amplifier when fundamental frequency sine waveform data is read out of the memory, is fed via the notch filter and the A/D converter to the computation and control part, wherein it is subjected to a Fourier transform analysis to compute the amplitude and phase of each distortion component. At the same time, the output of the amplifier is converted into digital waveform data without being applied to the notch filter and the data is subjected to a Fourier transform analysis in the computation and control part. By this, the amplitude and phase of the fundamental frequency component are computed. Based on the results of these Fourier transform analyses, the amplitude and phase of each frequency component of the distortion canceling signal are determined, which are used to compute composite waveform data composed of the distortion canceling signal and the fundamental frequency signal.

Description: BACKGROUND OF THE INVENTION The present invention relates to a low-distortion waveform generating method in which waveform data read out of a memory is D-A converted to obtain a sine wave or similar waveform output. The invention also pertains to a waveform generator which utilizes such a waveform generating method. A conventional waveform generator of this kind is provided with a memory 12, a D/A converter 13, a low-pass filter 14 and an amplifier 15 as shown in Fig. 1. In the memory 12 there is prestored waveform data of one cycle of a waveform which is to be ultimately obtained; for example, in the case of obtaining a sinusoidal waveform output, waveform data of one cycle of a sine wave is prestored. The waveform data is repeatedly read out of the memory 12 and the read-out waveform data is converted by the D/A converter 13 into an analog signal, which is applied to the low-pass filter 14 to remove a sample clock component. The output signal of the low-pass filter 14 is amplified by the amplifier 15, from which an output waveform is provided. In the case of obtaining a low-frequency waveform output with the above conventional waveform generator, it is possible to obtain a low-distortion output waveform which is substantially faithful to the waveform desired to be ultimately obtained, because a low-distortion, low-frequency amplifier can be implemented as the amplifier 15. In the case of obtaining a waveform output of as high a frequency as hundreds of kilo-hertz to several mega-hertz or in the case of varying the frequency of the waveform output over a wide band, however, the prior art waveform generator cannot yield a low-distortion output waveform substantially faithful to the waveform desired to be ultimately obtained, because it is difficult to implement, as the amplifier 15, a low-distortion high-frequency amplifier or an amplifier capable of producing a low-distortion output over a wide band. A waveform generator according to the precharacterizing part of claim 1 is disclosed in EP-A-0 107 050. In this prior art, the waveform memory has prestored therein a waveform into which a plurality of predetermined spectra are combined, that is, a composite waveform. The waveform memory is read out with the count value of an address counter, and the read output is converted into an analog signal, which is provided as an output signal from the signal generator. A correction signal is generated and added to the output signal to correct the level of the center frequency component in the output signal. JP-A-1 218 201 also discloses a waveform generator according to the precharacterizing part of claim 1. This waveform generator has a waveform generating part with a first waveform memory and distortion compensating means including a second waveform memory storing a correction signal. The output signal of the waveform generating part is compared with the signal read from the second memory to obtain a signal difference. From the signal difference compensation data are calculated and used to correct the data stored in the first memory so as to bring the signal difference to zero. The distortion compensation is thus performed in a closed-loop time domain control structure. The document Electric Design, vol. 36, no. 8, 31.03.1988, Hasbrouck Heights, NJ, USA; pages 85-89, Lowitz et al.: "Predistortion improves digital synthesizer accuracy" discloses a waveform generator using a waveform memory storing a predistorted form of the waveform desired to be output by the waveform generator. The predistortion considers the non-flat frequency response of a low-pass filter needed to eliminate the aliased frequency components inherent in sampled systems. For obtaining the predistorted waveform the document employs the following procedure: A multi-tone reference waveform is applied to a waveform generating part and captured at the output thereof as a calibration signal with a high-performance digitizing oscilloscope. The calibration signal is compared with the ideal signal to obtain an error signal. The ideal signal and the error signal are added in the frequency domain resulting in a predistorted waveform in the frequency domain. An inverse FFT is applied to that predistorted waveform to convert it back into the time domain. The predistorted time domain waveform is then loaded into the waveform memory of the waveform generator. SUMMARY OF THE INVENTION It is an object of the present invention to provide a waveform generating method which permits the production of a remarkably low-distortion output waveform even if it is high-frequency or its frequency is varied over a wide band, in a waveform generator of the type that reads out waveform data from a memory and converts it to analog form to thereby obtain a sine-wave or similar waveform output. Another object of the present invention is to provide a waveform generator utilizing the above-mentioned method. This object is achieved with a waveform generator as claimed in claim 1 and a method as claimed in claim 5. Preferred embodiments are subject-matter of the dependent claims. In one embodiment of the present invention, a distortion measuring part includes a filter for attenuating the fundamental frequency component from the output signal of the amplifier, a first A/D converter for A/D converting the output signal of the filter, and a second A/D converter for A/D converting the output signal of the amplifier. A computation and control part makes a Fourier transform analysis of the output waveform data of each of the A/D converters to decide a cancel waveform for cancelling a distortion generated in the waveform generating part of the waveform generator, creates composite waveform data composed of the cancel waveform and the fundamental frequency waveform to be generated, and writes the composite waveform data into the memory. To determine the distortion cancel waveform, a multi-sine waveform which is composed of a plurality of sine waves of the same amplitude and having the same frequencies as those harmonic components forming distortion components is read out of the memory and the multi-sine waveform signal is output from the waveform generating part. The output multi-sine waveform signal is subjected to the attenuation of its fundamental frequency component by the filter, after which it is converted to a digital waveform and then applied to the computation and control part, wherein the amplitude and phase of each frequency component are computed by a Fourier transform analysis to thereby determine amplitude/phase characteristics of the waveform generating part which also contain the influence of the filter. Next, the fundamental frequency sine wave is read out of the memory and a waveform signal output from the waveform generating part, based on the read-out sine wave, is applied to the filter to attenuate the fundamental frequency component. The output of the filter is fed to the computation and control part, wherein it is subjected to the Fourier transform analysis to thereby compute the amplitude and phase of each distortion component. A waveform signal output from the waveform generating part, which is not provided to the filter, is subjected to the Fourier transform analysis to compute the amplitude and phase of the fundamental frequency component which are free from the influence of the filter. The amplitude and phase of the fundamental frequency component thus obtained are combined with those of each distortion component to determine a distortion characteristic of the waveform generating part which contains the influence of the filter. Based on the thus determined amplitude/phase characteristics and the distortion characteristic of the waveform generating part, a composite waveform is determined through computation for canceling each distortion component which results from the application of the fundamental frequency signal to the waveform generating part. With the waveform generator of the above construction according to the present invention, waveform data, whose distortion is canceled when it is amplified by the amplifier in the waveform generating part after being written into and read out of the memory in the waveform generating part and then D/A converted by the D/A converter in the waveform generating part, is prepared in the computation and control part, based on output data of each A/D converter in the distortion measuring part, and this waveform data is written into the memory in the waveform generating part. Thereafter, the waveform data is read out of the memory in the waveform generating part, the read-out waveform data is converted by the D/A converter in the waveform generating part to an analog signal and the output signal of the D/A converter is amplified by the amplifier in the waveform generating part, whereby a low-distortion waveform is obtained as the output waveform of the waveform generating part. BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a block diagram showing a conventional waveform generator; Fig. 2 is a block diagram illustrating an embodiment of the waveform generator according to the present invention; Fig. 3 is a flowchart showing the process for measuring amplitude/phase characteristics in the waveform generating method according to the present invention; Fig. 4 is a flowchart showing the process for measuring a distortion characteristic in the method of the present invention; Fig. 5 is a flowchart showing the process for waveform generation in the method of the present invention; Fig. 6 is a block diagram illustrating another embodiment of the present invention; Fig. 7 is a block diagram illustrating still another embodiment of the present invention; and Fig. 8 is a block diagram illustrating a further embodiment of the present invention. DESCRIPTION OF THE PREFERRED EMBODIMENTS Fig. 2 illustrates in block form an embodiment of the waveform generator according to the present invention. The waveform generator of this embodiment has a waveform generating part 11, a distortion measuring part 16 and a computation and control part 10. The waveform generating part 11 includes: a memory 12 into which waveform data can be written and from which it can be read out, such as a RAM; a D/A converter 13 for D/A converting the waveform data read out of the memory 12; a low-pass filter 14 for removing a clock component from the output signal of the D/A converter 13; and an amplifier 15 for amplifying the output signal of the low-pass filter 14. The distortion measuring part 16 includes: a notch filter 17 which is supplied with the output signal of the amplifier 15; an A/D converter 18 for A/D converting the output signal of the notch filter 17; and an A/D converter 19 for A/D converting the output signal of the amplifier 15. The computation and control part 10 includes: a RAM 10A for writing therein and reading out therefrom data; a Fourier transform analysis section 10B for making a Fourier transform analysis of input waveform data; a CPU 10C for controlling the operation of the device and for performing required computations; a ROM 10D having stored therein an operation program of the device; and an I/O interface 10E. These CPU, ROM and I/O interface constitute a typical microcomputer. Since it is well known to a skilled person how to utilize the functions of CPU, RAM, ROM and I/O interface to execute desired operations, various operations to be performed by the computation and control part will be described without referring to specific part in the computation and control part 10. Assuming that the waveform to be ultimately obtained is a sine wave expressed by S = sinωt and that waveform data corresponding to the sine wave, that is, waveform data faithful to the sine wave is prestored in the memory 12, the output waveform obtainable from the waveform generating part 11 by applying the sine wave data, read out of the memory 12, to the D/A converter 13, the low-pass filter 14 and the amplifier 15 contains a distortion caused mainly by the amplifier 15 and hence is expressed as follows: Sa = K 1 sin(ωt + δ 1 ) + A 2 sin(2ωt +  2 ) + A 3 sin(3ωt +  3 ) . . . + A n sin(nωt +  n ) where K 1 is the amplitude of a first order signal component (i.e. the fundamental frequency component) in the output waveform, letting the amplitude of the sine wave indicated by the waveform data written into the memory 12 be represented by 1, and δ 1 is the total phase shift amount of the signal component in the low-pass filter 14 and the amplifier 15. Accordingly, by prestoring in the memory 12 waveform data which includes second and higher harmonic components (distortion components) in Expression (1) inverted in phase, and which has taken into account the amplitude and phase variations by both the low-pass filter 14 and the amplifier 15 as expressed by the following Expression (2): Sc = sin(ωt) -(A 2 /K 2 )sin(2ωt +  2 - δ 2 ) -(A 3 /K 3 )sin(3ωt +  2 - δ 2 ) . . . -(A n /K n )sin(nωt +  n - δ n ) and by generating a waveform from the waveform generating part 11, based on the above-said waveform data read out of the memory 12, it is possible to obtain an output waveform substantially free from the second and higher harmonic components in Expression (1). That is, the signal component sinωt in Expression (2) generates in the amplifier 15 the second and higher harmonic components shown in Expression (1), but these harmonic components are canceled by selecting the values of K 2 , K 3 , ..., K n and δ 2 , δ 3 ..., δ n such that the passage of the waveform Sc of Expression (2) through the low-pass filter 14 and the amplifier 15 will make the second and higher harmonic components in Expression (2) such as follows: Se = - A 2 sin(2ωt +  2 ) - A 3 sin(3ωt +  3 ) . . . - A n sin(nωt +  n ) Consequently, the output waveform of the amplifier 15 is composed only of the first order signal component and is distortion-free. Yet, the second and higher harmonic components in Expression (2) themselves cause distortions mainly in the amplifier 15, but these distortions may be ignored because they are far smaller than the second and higher harmonic distortion components in Expression (1) which are produced in the amplifier 15 by the first order signal component in Expression (2). Further, since the distortion component usually becomes smaller in amplitude as the harmonic order rises, it would suffice to take into account the second and higher harmonic components in Expression (1) up to about a tenth harmonic, accordingly n in Expression (2) may be set to 10 or so. The above-mentioned coefficients K 1 , K 2 , K 3 , ..., K n and the phases δ 2 , δ 3 ..., δ n can be measured by reading out signal waveforms sinωt, sin2ωt, sin3ωt, ..., sin nωt of the same amplitude 1 from the memory 12 and by analyzing the resulting output signals from the waveform generating part 11 through the Fourier transformation. For instance, for simultaneous analysis of the output signals by the Fourier transformation, signal waveform data given by the following Expression (4) is written into the memory 12 and is then read out therefrom and the resulting signal Sf output from the waveform generating part 11 is subjected to the Fourier transform analysis in the computation and control part 10. Sg = sinωt - (sin2ωt + sin3ωt + ... + sin nωt) In the amplifier 15, by regarding each frequency component of the signal Sg given by Expression (4) as the fundamental frequency signal and by ignoring its harmonic distortion components since their amplitudes are sufficiently smaller than that of each fundamental wave signal, the signal Sf available from the waveform generating part 11 can be approximated by the following expression, because each fundamental wave signal in Expression (4) undergoes amplitude and phase variations in the low-pass filter 14 and the amplifier 15. Sf = K 1 sin(ωt + δ 1 ) - K 2 sin(2ωt + δ 2 ) - K 3 sin(3ωt + δ 3 ) . . . - K n sin(nωt + δ n ) Thus, the amplitude K i and the phase δ i of each frequency component can be-determined by the Fourier transform analysis of the signal Sf. The analysis of the amplitude and phase of each frequency component will hereinafter be referred to as the analysis of the amplitude/phase characteristics of the waveform generating part 11. On the other hand, by reading out waveform data sinωt from the memory 12 and by conducting the Fourier transform analysis of the resulting output signal from the waveform generating part 11, amplitudes A 2 , A 3 , ..., A n and phases  2 ,  3 , ...,  n of respective harmonic components (i.e. distortion components) relative to the output fundamental harmonic component are determined as shown by Expression (1). This analysis will hereinafter be referred to as the analysis of the distortion characteristic of the waveform generating part 11. A sine wave sinωt of low distortion could be provided from the waveform generating part 11 by determining the waveform data of Expression (2) through utilization of the results of analyses of the amplitude/phase characteristics and the distortion characteristic, storing the determined waveform data in the memory 12 and then reading out therefrom the waveform data at the time of waveform generation. In the actual analysis of the distortion characteristic, however, if the output waveform of the waveform generating part 11 is subjected intact to the Fourier transform analysis, the resulting values of the amplitudes A 2 , A 3 , ..., A n of the distortion components are not accurate, because these amplitudes are appreciably smaller than the amplitude of the fundamental harmonic component in the output waveform of the waveform generating part 11, that is, K 1 in Expression (1). In view of the above, if the signal component (the fundamental wave component) of the frequency ω is suppressed equal to or smaller than its harmonic components through use of the notch filter 17 shown in Fig. 2 and if the output signal of the notch filter 17 is subjected to the Fourier transform analysis with a high gain, then the amplitudes A 2 , A 3 , ..., A n can be determined with high accuracy. However, these harmonic components also undergo amplitude and phase variations by the notch filter 17. Taking into account the amplitude and phase variations by the notch filter 17, the present invention determines the waveform data shown by Expression (2), following the flowcharts depicted in Figs. 3, 4 and 5 as described hereinbelow. At first, an analysis of the amplitude/phase characteristics, inclusive of the influence of the notch filter 17, is made following the flowchart depicted in Fig. 3. In step S1 sample data of the multi-sine signal waveform Sg given by Expression (4), provided from the computation and control part 10, is stored in the memory 12. In the next step S2 the sample data of the signal waveform Sg are sequentially read out of the memory 12, and the resulting signal Sf available from the waveform generating part 11, given by Expression (5), is supplied to the distortion measuring part 16. As a result of this, the output signal S'f of the notch filter 17 is given by the following expression: S'f = d 1 ·K 1 sin(ωt + δ 1 + ε 1 ) - d 2 ·K 2 sin(2ωt + δ 2 + ε 2 ) - d 3 ·K 3 sin(3ωt + δ 3 + ε 3 ) . . . - d n ·K n sin(nωt + δ n + ε n ) where d 1 , d 2 , ..., d n and ε 1 , ε 2 , ..., ε n are amplitude coefficients and phase shift amounts which are imparted by the notch filter 17 to the respective frequency components. In step S3 the waveform of the output signal S'f from the notch filter 17 is converted by the A/D converter 18 into a digital waveform, which is fed into the RAM 10A of the computation and control part 10. In step S4 the computation and control part 10 makes a Fourier transform analysis of a series of sample values of the signal waveform S'f to obtain values of amplitudes d 1 ·K 1 , d 2 ·K 2 , ..., d n ·K n and phases δ 1 + ε 1 , δ 2 + ε 2 ···, δ n + ε n of components of respective frequencies ωt, 2ωt, ..., nωt, these values being stored in the RAM 10A. In this instance, the values d 1 ·K 1 and δ 1 + ε 1 are not used. Next, an analysis of the distortion characteristic, inclusive of the influence of the notch filter 17, is conducted following the flowchart depicted in Fig. 4. In step S1 signal waveform data Sj = sinωt is written into the memory 12 from the computation and control part 10. In step S2 the sample data of the signal waveform Sj are sequentially read out of the memory 12 and the resulting signal Sa available from the waveform generating part 11, expressed by Expression (1), is applied to the distortion measuring part 16. As a result of this, the output signal S'a of the notch filter 17 is given by the following expression: S'a = d 1 ·K 1 sin(ωt + δ 1 + ε 1 ) + d 2 ·A 2 sin(2ωt +  2 + ε 2 ) + d 3 ·A 3 sin(3ωt +  3 + ε 3 ) . . . + d n .A n sin(nωt +  n + ε n ) In step S3 the waveform of the output signal S'a from the notch filter 17 is converted by the A/D converter 18 to a digital waveform, which is provided to the computation and control part 10. Further, the waveform of the signal Sa which is provided from the waveform generating part 11 at the same time, given by Expression (1), is converted by the A/D converter 19 to a digital waveform at the same timing as the A/D converter 18, and this digital waveform is also provided to the computation and control part 10. In step S4 the computation and control part 10 conducts, with a high gain, a Fourier transform analysis of the digital signal waveform S'a corresponding to Expression (7) to obtain values of amplitudes d 2 ·A 2 , d 3 ·A 3 , ..., d n ·A n and phases  2 + ε 2 ,  3 + ε 3 , ...,  n + ε n of components of respective frequencies 2ωt, 3ωt, ..., nωt, these values being stored in the RAM 10A. The computation and control part 10 also makes a Fourier transform analysis of the digital signal waveform Sa corresponding to-Expression (1) and stores the amplitude K 1 and the phase δ 1 of the component of the fundamental frequency ω in the RAM 10A, discarding information on the other components. Of course, it makes no difference to the invention which of the analysis of the amplitude/phase characteristics in Fig. 3 and the analysis of the distortion characteristic in Fig. 4 is made first. Then, the waveform given in Expression (2) is determined following the flowchart shown in Fig. 5 and the waveform thus obtained is used to generate the desired waveform sinωt. In step S1 the computation and control part 10 reads out of the RAM 10A the amplitude data d 2 ·K 2 , d 3 ·K 3 , ..., d n ·K n in Expression (6) and the amplitude data d 2 ·A 2 , d 3 ·A 3 , ..., d n ·A n in Expression (7), computes (d 2 ·A 2 )/(d 2 ·K 2 ) = A 2 /K 2 and similarly obtains A 3 /K 3 , ..., A n /K n . Moreover, the computation and control part 10 reads out of the RAM 10A the phase data δ 2 + ε 2 , δ 3 + ε 3 , ..., δ n + ε n in Expression (6) and the phase data  2 + ε 2 ,  3 + ε 3 , ...,  n + ε n in Expression (7), computes ( 2 + ε 2 ) - (δ 2 + ε 2 ) =  2 - δ 2 and similarly obtains  3 - δ 3 , ...,  n - δ n . The waveform Sc by Expression (2) is computed using the above computed results and the amplitude K 1 and the phase δ 1 read out of the RAM 10A, and the waveform data thus obtained is stored in the RAM 10A. In step S2 the sample data of the waveform Sc are sequentially read out of the RAM 10A and written into the memory 12. In step S3 the sample data of the waveform Sc in the memory 12 are sequentially read out therefrom and converted by the D/A converter 13 to analog form for output via the low-pass filter 14 and the amplifier 15. As a result of the above operation, the components of the frequencies 2ω, 3ω, ..., nω in Expression (2) and harmonic components, which are derived from the component of the frequency ω in the amplifier 15, cancel each other, providing a low-distortion sine wave K 1 sin(ωt + δ 1 ). From the above it is evident to those skilled in the art to modify, in advance, the waveform Sc of Expression (2) so that the amplitude K 1 and the phase δ 1 may be of desired values. While in the above the amplitude K 1 and the phase δ 1 are obtained in steps S3 and S4 shown in Fig. 4, they may also be determined by making, in step S4 in Fig. 3, a Fourier transform analysis of those samples of the waveform given by Expression (5) which are obtained by the A/D converter 19 at the same timing as the A/D converter 18 in step S3 in Fig. 3. Fig. 6 illustrates in block form another embodiment of the waveform generator of the present invention. In this embodiment the memory 12 is a nonvolatile memory such as a ROM, in which there is prestored the waveform data expressed by Expression (2) mentioned previously. In the case of obtaining a waveform output of a sine wave, the waveform data written in the memory l2 is read out thereof by a read controller 10. The waveform thus read out is converted by the D/A converter 13 to an analog signal, the output signal from the D/A converter 13 is applied to the low-pass filter 14, wherein its clock component is removed, and the output signal from the low-pass filter 14 is amplified by the amplifier 15, from which is obtained an output waveform. Therefore, the output waveform is distortion-free as in the case of Fig. 2. Fig. 7 similarly illustrates in block form another embodiment of the waveform generator of the present invention. The waveform generator of this embodiment comprises a main waveform generating part 11, a distortion measuring part 16, a computation and control part 10 and a distortion canceling waveform generating part 21. As is the case with the waveform generating part 11 in the Fig. 2 embodiment, the main vaveform generating part 11 includes: a memory 12 into which waveform data can be written and from which it can be read out, such as a RAM; a D/A converter 14 for D/A converting the waveform data read out of tile memory 12; a low-pass filter 14 for removing a clock component from the output signal of the D/A converter 13; and an amplifier 15 for amplifying the output signal of the low-pass filter 14. The distortion measuring part 16 includes a notch filter 17 which is supplied with the output signal from the amplifier 15, an A/D converter 18 for A/D converting the output signal of the notch filter 17, and an A/D converter 19 for A/D converting the output signal of the amplifier 15, as is the case vith the distortion measuring part 16 used in the Fig. 2 embodiment. The distortion canceling waveform generating part 21 includes: a memory 22 into which waveform data can be written and from which it can be read out, such as a RAM; a D/A converter 23 for D/A converting the waveform data read out of the memory 22; a low-pass filter 24 for removing a clock component from the output signal of the D/A converter 23; and an amplifier 25 for amplifying the output signal of the low-pass filter 24. The output of the amplifier 25 is applied via an attenuator 26 to an adder 27 provided at the input of the amplifier 15 in the main waveform generating part 11 and is added to the output signal of the low-pass filter 14, and the added output is amplified by the amplifier 15 and then output as a low-distortion sine-wave signal. In the embodiment shown in Fig. 7, at first, waveform data of the multi-sine signal Sg given by Expression (4) is written into the memory 12 from the computation and control part 10 and is then read out from the memory 12 by the computation and control part 10; as a result of this, in the computation and control part 10 the amplitude data d 2 ·K 2 , d 3 ·K 3 , ..., d n ·K n and the phase data δ 2 + ε 2 , δ 3 + ε 3 , ..., δ n + ε n in Expression (6), which contain the amplitude/phase characteristics of the notch filter 17, are measured and the measured results are stored in the RAM 10A, as is the case with the Fig. 2 embodiment. Following this, waveform data expressed by Sj = sinωt is written into the memory 12 from the computation and control part 10 and is then read out of the memory 12 by the computation and control part 10; as a result of this, in the computation and control part 10 the amplitude data d 2 ·A 2 , d 3 ·A 3 , ..., d n ·A n and the phase data  2 + ε 2 ,  3 + ε 3 , ...,  n + ε n in Expression (7) are obtained by Fourier transform analysis, and further, the amplitude coefficients A 2 /K 2 , A 3 /K 3 , ..., A n /K n and the phases  2 - δ 2 ,  3 - δ 3 , ...,  n - δ n are computed and stored in the RAM 10A. For generating the distortion canceling waveform, these computed results are used to compute the following waveform data (Expression (8)) which is a composite waveform of the second and higher harmonic components in Expression (2) and the waveform data thus obtained is written in the memory 22 of the distortion canceling waveform generating part 21. Sd = -(A 2 /K 2 )sin(2ωt +  2 - δ 2 ) -(A 3 /K 3 )sin(3ωt +  3 - δ 3 ) . . . -(A n /K n )sin(nωt +  n - δ n ) Further, the waveform data sinωt is written into the memory 12 in advance. Incidentally, in the case where the value of the waveform data to be written into the memory 22 is selected to be, for example, 1000-fold so that it may be equivalent to the value of the waveform data to be written into the memory 12 and the 1000-fold value is attenuated by the attenuator 26 down to 1/1000, it is possible to supply a highly accurate distortion canceling waveform to the adder 27. When the distortion canceling signal waveform read out of the memory 22 is amplified by the amplifier 25, the waveform is distorted, but the distortion components are sufficiently smaller than the level of the cancelling signal waveform and are further attenuated by the attenuator 26, and hence they are negligible. Thereafter, the waveform data expressed by Sj = sinωt and the waveform data expressed by Expression (8) are read out by the same timing clock from the memories 12 and 22, respectively, and the read-out waveform data are converted by the D/A converters 13 and 23 to analog signals, which are applied to the low-pass filters 14 and 24 to remove clock components from the analog signals. The output signal of the low-pass filter 24 is amplified by the amplifier 25, and its output signal is applied via the attenuator 26 to the adder 27, wherein it is added to the output signal of the low-pass filter 14. The added output is amplified by the amplifier 15 to obtain a sine waveform having canceled therefrom the distortion components. Accordingly, the output waveform is distortion-free. Fig. 8 illustrates in block form still another embodiment of the waveform generator of the present invention. In this embodiment, the memory 12 in the main waveform generating part 11 and the memory 22 in the distortion canceling waveform generating part 22 are each a nonvolatile memory such as a ROM, and in the case of obtaining a sine waveform, the waveform data expressed by Sj = sinωt and the waveform data given by Expression (8) are prestored in the memories 12 and 22, respectively. The respective waveform data are read out by the read controller 10 from the memories 12 and 22 and are then converted by the D/A converters 13 and 23 to analog signals. The output signals of the D/A converters 13 and 23 are applied to the low-pass filters 14 and 24, wherein clock components are removed from them. The output signal of the low-pass filter 24 is amplified by the amplifier 25 and is applied via the attenuator 26 to the adder 27, wherein it is added to the output signal of the low-pass filter 14. The added output is amplified by the amplifier 15, by which a distortion-canceled output waveform is obtained. Accordingly, the output waveform is free from distortion. As described above, according to the present invention, an extremely low-distortion output waveform can be obtained even in the case of obtaining a high-frequency waveform output and in the case of varying the frequency of the waveform output over a wide band. It will be apparent that many modifications and variations may be effected without departing from the scope of the novel concepts of the present invention.

Claims: A waveform generator comprising: a waveform generating part (11) including: memory means (12; 12, 22) into which waveform data can be written and from which said data can be read out; D/A converter means (13; 13, 23) for D/A converting said waveform data read out from said memory means; and amplifier means (15; 15, 25) for amplifying the output signal of said D/A converter means; characterized by a distortion measuring part (16) including: filter means (17) for attenuating a particular frequency component in the output signal of said amplifier means; and A/D converter means (18, 19) for A/D converting the output signal of said amplifier means and the output signal of said filter means; and a computation and control part (10) adapted to perform a Fourier transform analysis of the output data of said A/D converter means, to decide, based on the result of said analysis, distortion canceling harmonic components for canceling distortion components which are produced in said waveform generating part, to write into said memory means waveform data representing a waveform component to be generated and said distortion canceling harmonic components, and to read out said waveform data from said memory means during waveform generation. The waveform generator of claim 1, wherein said computation and control part (10) includes temporary storage means (10A) and Fourier transform analysis means (10B), and wherein said computation and control part is adapted to fetch thereinto, via said distortion measuring part (16), a waveform signal which is provided from said waveform generating part (11) when reading out a reference signal waveform from said memory means (12; 12, 22), to determine amplitudes and phases of distortion components in said fetched waveform signal by performing a Fourier transform analysis of said waveform signal with said Fourier transform analysis means and to write said amplitudes and phases of said distortion components into said temporary storage means, to fetch thereinto said waveform signal via said A/D converter means (18, 19) without said waveform signal passing through said filter means (17), to determine an amplitude and a phase of a fundamental frequency component of said reference signal waveform by performing a Fourier transform analysis of said fetched waveform signal with said Fourier transform analysis means and to write said amplitude and phase of said fundamental frequency component into said temporary storage means, to fetch thereinto, via said distortion measuring part, a waveform signal which is provided from said waveform generating part when reading out of said memory means a composite waveform including harmonic components each having a predetermined amplitude and phase and the frequency of a corresponding one of said distortion components, to determine amplitude/phase characteristics of said waveform generating part with respect to each of said harmonic components by performing a Fourier transform analysis of said fetched waveform signal with said Fourier transform analysis means and to write said amplitude/phase characteristics into said temporary storage means, to compute amplitudes and phases of said distortion canceling harmonic components based on said determined amplitudes and phases of said distortion components, said determined amplitude and phase of said fundamental frequency component and said determined amplitude/phase characteristics written in said temporary storage means, and to write into said memory means waveform data composed of said reference signal waveform and said distortion canceling harmonic components determined by said computed amplitudes and phases. The waveform generator of claim 2, wherein said memory means includes a first memory (12) for storing said reference signal waveform when a low-distortion waveform is generated, and a second memory (22) for storing said distortion canceling harmonic components; said D/A converter means includes a first D/A converter (13) for converting said reference signal waveform read out of said first memory into an analog waveform and a second D/A converter (23) for converting said distortion canceling harmonic components read out of said second memory into an analog waveform; and said amplifier means includes first and second amplifiers (15, 25) for amplifying the outputs of said first and second D/A converters, respectively, and adder means (27) for adding the output of said second amplifier to the input to said first amplifier and for inputting the added output into said first amplifier. The waveform generator of claim 3, further comprising an attenuator (26) provided between the output of said second amplifier (25) and the input of said adder means (27), for attenuating the output signal of said second amplifier by a predetermined rate. A waveform generating method in which waveform data read out of a memory (12; 12, 22) by a computation and control part (10) is converted by a D/A converter (13; 13, 23) to an analog waveform, said analog waveform is amplified by an amplifier (15; 15, 25) and a waveform signal is generated as the output of a waveform generating part (11), said method comprising the steps of: writing into said memory data of a multi-sine waveform which is a composite waveform composed of n sine waves respectively having a fundamental frequency ω of a signal waveform to be generated and two-fold, three-fold, ..., n-fold harmonic frequencies and each having a predetermined amplitude; reading out said multi-sine waveform from said memory, converting said multi-sine waveform by said D/A converter to an analog waveform and amplifying said analog waveform by said amplifier to thereby output said multi-sine waveform; applying said multi-sine waveform from said amplifier to a filter (17) to attenuate the component of said fundamental frequency ω, converting the output of said filter by an A/D converter (18) to digital multi-sine waveform data and fetching said digital multi-sine waveform data into said computation and control part; measuring amplitude/phase characteristics of said waveform generating part, inclusive of the influence of said filter, by obtaining the amplitude and phase of each of said harmonic frequency components through a Fourier transform analysis of said fetched digital multi-sine waveform data; writing signal waveform data of said fundamental frequency to be generated into said memory; reading out said signal waveform data of said fundamental frequency ω from said memory, converting said read-out signal waveform data by said D/A converter to an analog signal waveform, amplifying said analog signal waveform by said amplifier and outputting said amplified analog signal waveform; applying said amplified analog signal waveform from said amplifier to said filter to attenuate the component of said fundamental frequency, converting the output of said filter by said A/D converter to a digital signal waveform and fetching said digital signal waveform into said computation and control part; measuring a distortion characteristic of said waveform generating part, inclusive of the influence of said filter, by obtaining amplitudes and phases of harmonic distortion components with respect to said fundamental frequency ω through a Fourier transform analysis of said fetched digital signal waveform; determining, based on said measured amplitude/phase characteristics and said measured distortion characteristic, the amplitude and phase of each of distortion canceling sine signal waveforms of frequencies 2ω, 3ω, ..., nω for canceling distortion components which are generated in said waveform generating part with respect to said signal waveform of said fundamental frequency to be generated; computing composite waveform data composed of said distortion canceling sine signal waveforms and said fundamental frequency signal waveform and writing said composite waveform data into said memory; reading out said composite waveform data from said memory, converting said read-out composite waveform data by said D/A converter to an analog waveform, and amplifying said analog waveform by said amplifier and outputting said amplified analog waveform as said signal waveform to be generated.

Inventors: FURUKAWA YASUO, FURUKAWA, YASUO
Applicants: ADVANTEST CORP, ADVANTEST CORPORATION
Application year: 1991
Main classification: G06J1
IPC codes: H03B28, G06J1