Continue to Site

Welcome to

Welcome to our site! is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

How can I shift the phase of a varying frequency signal to90

Not open for further replies.


Junior Member level 2
Jul 17, 2002
Reaction score
Trophy points
Activity points
how can we shift the sine wave signal 90 degree

I want to shift the phase of sine signal , which frequency varying form 100Hz to 10kHz , to 90 degree exactly.Could somebody give me an idea :?:
Thanks.Best Regards

shift signal 90 degree

can you probe with a simple operational amplificator with gain equal 1

sine signal back shift

Thanks very much. :)

The signal is output of a sine wave generator . Its frequecey can be tuned from 100hz to 10khz.I want to get two sine signals in quadrature from the sine wave generator .

Previously, I'v thought to get 90-degree-phase shift by an All Pass Filter
composed of Op Amp,resistors,capacitors.But when the resistance and capacitance of the All Pass Filter are specified,it is only shift phase of a fix frequecey to 90 degree. What can I do in my case with varying frequency.
Best Regards

sine signal shift

How about using an op amp integrator plus inverter to create the cosine function?

Integral(sin x) = -cos x + C

i know three methods for producing two quadrature sine wave :
1.produce a frequency two times the required freq.,then use two cross coupled D-Flip Flop to devide freq. by two,so far u have two exactly quadrature output,but yhe outputs are squre wave simply use active filters to make outputs sine wave.
2.produce a sine waveform at desired freq,then apply it to two simple RC filter,both have the same R and C,one of them in lowpass config. and the other in highpass this way u have two outputs,which have a 90 deg phase shift relative to each other,accuracy of this circuit highly depends on accuracy of R an C,thus for high presision applications it is necessary to use 1% tolerance resistors and capacitors.
3.use DDS,or simply write a asm. code for 8051 with a one cycle of sine wave look up table and,read the look up table with a constant freq.(timer int.) and each time two number with correct index shift,and write the values to two ports of 8051,by using two low cost DAC at ports u can achieve very high precission waveforms with a simple filter.

Re: How can I shift the phase of a varying frequency signal

See fig 4A in the attached file.

1.try poly phae filter.
2. use gilbert cell for phase detector loop, it will let the output with 90 degree delay from input.

Try the quadratude oscilator. Page 984 in "microelectronics circuits" Sedra/Smith 4 edition.

It has 2 outputs exactly in quadrature.


This is a common requirement in designing SSB transmitters. The book "Electronc Design Handbook" by Arthur B. Williams has a whole chapter on this subject with example circuits and tables. This book is so popular that it should be in any library near you.

Hi Wowee

It is important to specify wether the amplitude of the original signal should be preserved or not.

If you want to have a linear network that gives a 90-degree phase shift over some bandwidth preseving the amplitude (i.e. a transfer function H(w)=jK over a finite bandwidth, called ideal Hilbert transformer or ideal Hilbert filter), this transfer function is not realizable. You have tho choose between:
1) to have 90-degree phase shift but not constant amplitude. The solution is an ideal integrator or an ideal derivator (as sparkytron suggested), -that can be implemented as nonideal, of course- but in your case the variations in amplitude will vary 100 times between 100 Hz and 10 KHz.
2) an approximation to the desired transfer function that have aprox. the constant 90-deg phase and aprox. constant amplitude. Filters of this class are used in generation os SSB by the so-called phasing method, as flatulent points out. Frequently this is not implemented as a single filter, but as a couple of transfer functions that give outputs that are (aproximately) 90-degrees apart and with the same amplitude. The networks in fig. 4 A and B of the article GaAs FET submitted are of this kind. For designing such filters you should specify the tolerances (allowed ripple) both in amplitude and phase. Less ripples and wider bandwidths need higher order in the filters.

A different approach is to use a PLL with a multiplier (or EXOR) type PD, and type 2 loop (i.e. with an integrator and a zero in the loop filter). The output of the VCO is in exact quadrature with the input, but the amplitude is constant (does not track the input amplitude).

You can also make a quadrature oscillator, as bastos4321 suggests, and (in the case you need that the frequency tracks the external generator) phase-lock it with the external source (your oscillator will be the VCO of a PLL).



Re: how can we shift the sine wave signal 90 degree

I want to shift the phase of sine signal , which frequency varying form 100Hz to 10kHz , to 90 degree exactly.Could somebody give me an idea :?:
Thanks.Best Regards

Try an MN3007 Bucket Brigade with the MN3101 Clock Driver (Panasonic)
normally used to simulate reverb. Can daisey chain if more phase shift (delay)

Apart from answering a seven years old thread, you didn't understand the problem. A delay can't produce a frequency independant phase shift. The solution has been however mentioned in several contributions.

Not open for further replies.

Part and Inventory Search

Welcome to