Could I ask you some questions about sigma studio software? How to produce a sin(3*x) or sin(4*x) signal according to the input sin(x)? Many thanks.
How to proceed depends upon the nature of your input signal:
Suppose your input is known to vary only a relatively small range centered around, for example, 1 KHz. You can build a PLL which implements a frequency-to-voltage converter. Use its output to drive other VCOs at whatever multiple desired. The SigmaStudio example shown below runs on a ADAU1701 eval board. When its PLL locks, it produces an output tone three times the input frequency. As shown it's set up for a 1 KHz input, and a quick test shows it works over a +/- 10% range.
Perhaps there's other methods which would provide a larger range. Also I wonder if frequency-domain processing available on the higher-end SigmaDSPs might perform such a function with programming which I'm afraid remains beyond me.
why not just use 3 VCO and multiply the input frequency by 3 and 4?
mmmike If I understand Shaogang Yu's requirement correctly, he is wishing to accept a signal input of some frequency which may vary in real time, then generate sine wave outputs at 3x and 4x this frequency. Thus we need to somehow measure the input frequency in order to determine the desired output frequencies. We can certainly use several VCOs with input coefficients to get the frequency multiples, but first we need to produce a voltage proportional to the input frequency.
shaogangyu, please further clarify your requirements and application to help define an appropriate solution.
Retrieving data ...