This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

'Scale' component in PurePath Studio for TAS3308

Other Parts Discussed in Thread: TAS3308

Hello,

 

I need more info on 'Scale' component under 'Basic DSP' in PurePath Studio for TAS3308. I am using PurePath 1.88 Build 5.

 

Following is the info available from PurePath documentation regarding the 'Scale' block:

"The Scale Component allows the user to scale a signal using another signal as the scaling factor.
The Scale Component allows the user to use the audio data of another signal to scale the value of the input audio channel."

In need to multiply input audio signal by a variable that is calculated within the same process flow chart. The input audio is split into two using a 'Split' component.

1st output of 'Split' component is connected to a 'Scale' component.

2nd output of 'Split' is connected to 'RMS Detector'. RMS is calculated over a time window of 10ms (parameter alpha is calculated to be 0.0021).

Output of 'RMS Detector' is connected to 'Control' port on 'Scale' component.

 

If the input is a 1kHz sinewave with an amplitude of 0.5V, I expect that the RMS Detector component calculates the RMS value as 0.35V and 'Scale' component multiplies the output1 from Split component with this RMS value. The expected output is a sinewave at 1kHz, scaled by a value equal to its RMS, that is, a sinewave with amplitude 0.5 X 0.35 = 0.175.

However, I see an amplitude modulated signal at PWMOut.

1) Is the Scale component performing additional processing than what is listed in the Documentation?

2) Is there an alternative component to Scale that can accept a variable multiplying factor and apply it to the input audio signal?

3) Is there a library of Third Party components (either Free or Paid) that I can browse and see if something fits my application?

4) What does a Fixedpoint value of 25000, seen on the chart of Probe Points GUI, translate to in analog domain?

5) Is there a TI webpage that contains example PurePath Studio Process Flow charts for TAS3308 DAPs, each example demonstrating the functionality of each component?

Thanks,

Shyam Nallabolu.

  • Shyam,

    1) I looked at the source code of scale, it doesn't do any additioanl processing as you suspect, but it's more like a modulation than a scaling when you use it the way you did.  This component is more useful when using real audio signals to control the multiplication factor of another audio signal.  When using sine wave, try to use a bigger time constant to see whether it helps.

    2) can you explain a bit more about what you expect the scaler to do and under what senario it is functioning?

    3) Not I am aware of, other people may know more about this

    4) A fixed-point 25000 appear in the chart of probe point GUI displayed what's in the 48-bit register, but without the 2^23 factor. (It's a bit comfusing, sometime even myself remembered wrong.)

    5) We don't have a webpage, if you have something in mind, we could try to find one/put one together and forward you an example.

    Regards,

    Susan

  • susanxu said:

    2) can you explain a bit more about what you expect the scaler to do and under what senario it is functioning?

     

    In Volume Control Component in Pure Path Studio, a constant gain parameter (dB) can be specified. I need a component that has a Control Input (as in Scaler) that accepts a variable Gain Factor calculated from other components within the same Process Flow, and applies the Control Input as a Gain Factor to its input signal.

    Scaler component multiplies Input Signal with Control Signal. In my application, the Control Input to Scaler is the Output of RMS Detector, which I assume to be a constant over 10 ms time window when the Audio Input is a 1 kHz sine wave. If Scaler block multiplies the constant control input with incoming sine wave input, its output is expected to be a scaled sine wave. However, I see an amplitude modulated sine wave at the output of Scaler, which indicates that RMS Detector output (Control Input to Scaler) is not constant, but is a high frequency periodic signal (carrier).

    Thanks,

    Shyam.

  • Shyam,

    Since this RMS is running average based implememtation, when time counstant is 10ms, yes it will " converge" after 10ms to the signal level, but it will have some high frequency ocillation around the signal level depending on the frequency of the tone you used.  If the time constant is bigger, then it will take longer time to converge, but the ocillation amplitude would be smaller.

    In lots of audio applications, the time constant is in the range of hundreds to make the signal level caculation less vulnerable to the high frequency component of the signal.

    If you want absolute constant, then maybe you could make a component after RMS to constain the data to one certain value if it's ocillating.

    Regards,

    Susan