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.

PCM1803A

Other Parts Discussed in Thread: PCM1803A, ADCPRO, PCM1803

Hi,

i am using PCM1803A  for my audio application. I want to measure the SNR of this ADC. I dont have spectrum Analyzer or audio precision with me.

I am trying to take the samples from ADC and trying to find the SNR through ADCpro analysis tool from TI.

i want to know whether this method will work out... let me know is there any method to find SNR other than this.

 

 

  • Hi, Sathish,

    The ADCPro is a tool developed by our Precision Data Converter group. I am not sure if it will work with an audio ADC, or how you would use it as I am unfamiliar with the tool.

    I have moved your post into the Precision Data Converter forum in hopes that someone here will have some advice for you.

    -d2

  • Hi Sathish,

    Unfortunately, the PCM1803A is not directly compatible with ADCPro.  I don't know what you are using to control the PCM1803A, but one possibility is that you may be able to capture data from it and save it to a text file, then use the file reader option of the ADCPro tool to evaluate the SNR.

  • Thanks Dan & Tom.

    I am trying to take the samples from ADC through my audio processor(ADSP-21489 from ADI). The output from ADC is connected to SPORT of Audio processor. I am configuring the SPORT as 32 bit  with MSB first since ADC transmits the MSB first. My sample data are like

    0xE0043800

    0xDFF18600

    0xF1CB4000

    0xF1C3F700

    0x03C8D200

    The bits7-0 are filled with zero because the ADC transmits only 24 bit.  Whether i have to take only the 31-8 bits for calculation. i have re constructed the sine wave with help of 32 bits in Visual DSP tool. But i couldn't reconstruct the sine wave with 24 bits.

    If i dump this data to a file for analyzing the ADC pro tool, in which format(signed int , unsigned int) i have to dump. 

     

    Kindly help me...

     

  • Hi again Sathish,

    Attached is a zip file with some screen shots of ADCPro and a bit of an explaination on how to first, create a text file from the Triple Gen function and second, read that back into the FFT tool for analysis.  If you can capture data from your processor and edit the text file, you should be able to use the ADCPro tool to see how the PCM1803A is performing in your system.

    PCM1803A Capture.zip
  • 8206.Sample.txtHi Tom,

     

    Thanks for your timely information.

    I have taken the samples from ADC and the audio processor receives the data in Hex format and i converted them into unsigned int format.  When i feed this txt file to the ADCPro tool, i was not getting the proper sine wave. 

    I have attached the samples in Hex format and the samples in unsigned int format. Kindly help me

     

     

     

    6470.hex value.txt

  • Sathish,

    You are getting close.  You need to make the numbers signed values.  Notice in your text file that you have a code minumum and a maximum signed value in the header, but you use unsigned data.  Convert your data to signed values, and make sure that the minimum and maximum voltages are also correct within the header.

    [Device Information]
    EVM Device Name PCM1803A
    Date and Time 20Apr11 14:00 (India Standard Time)
    Notes
    Number of Channels 1
    [Channel Information]
    Channel Name CH1
    Sampling Frequency 48000.000
    Input Frequency 1000.000
    Max Code 8388607.000   This is a signed value
    Max Voltage 5.000
    Min Code -8388608.000 This is a signed value
    Min Voltage 0.000
    Data Format Decimal
    [Channel Data]
    4293675102 This value should be a signed value.  The clue is that it exceeds the maximum code.  Second clue is it doesn't match the hex code
    4294716981
    4294753469
    849251
    868250
    1930955

    Best regards,

    Bob B

  • Thanks Bob.....

    I am configuring the SPORT of my audio processor as 32 bit to receive the samples from ADC but i am receiving the 24 bit data only with MSB first. 31-8 bits are filled with data and the bits 7-0 are filled with zero. 

    If i convert this data to un singed value, i guess that the value exceeds the limit.

    So i think i have to shift the data 8 times to right and then i have convert the data into signed format.

     

    Did my assumption is correct....

  • Sathish,

    I'm not sure how your processor works, but if the data is captured in the manner you have specified you will need to shift the data to the right by eight (>>8).  You will then need to look at the 24th bit to see if it is 1 or 0.  If it is 0, then you need to do nothing, but if it is 1, then you will need to sign extend for the full 32 bits if you maintain the data as a signed integer. In other words, the top eight bits need to be 1 as well (data|=0xFF000000).

    Best regards,

    Bob B

  • Hi Sathish,

    Have a look at the attached file revisions in the zip archive. 

    8206_sample.zip
  • Thanks Guys....

    Meanwhile i tried to measure the SNR with Spectrum Analyzer. The Local dealers of SA told that i have to maintain 50 ohm termination to measure since the SA is maintained at 50 ohm termination,

    During the layout design the 50 ohm termination is not mentioned since its a two layer board..  So i am thinking of adding a 50 ohm between the I2S out pin and the ground. But i have little doubt that the ADC can drive.

    I am operating the ADC in slave mode.. Iout is given for only in master mode in the datasheet. Will it remain the same in slave mode also....Kindly provide your feedback on this.

     

     

    Regards

    Sathish

     

  • Thanks Tom.

     

    I was able to build the sine from your sample file(8206_2_Sample.txt). The input signal frequency is 1KHz. When i construct the FFT for it, the signal frequency is coming around 520Hz.  The frequency is getting reduced.

    I tried with new samples, but the result remains the same.

    Is there anything to be checked??

  • Sathish,

    I think you are missing a couple of important points.  The PCM1803 is an audio ADC, so it sets it's output to stereo (both a left and a right channel), so you need to be careful with the data.  I2S will be synchronized so that the data can be reconstructed based on a Left/Right clock.  If you read all of the data points (both left and right) and do not separate them, your frequency will be half of your input. frequency.

    So if you take every other sample of your data, you should be able to reconstruct the data for 1KHz.

    Another point I think you are missing is with the spectrum analyzer.  A spectrum analyzer is usually used with RF, and thus the 50 ohm termination that you mentioned.  Also, you do not want to connect the spectrum analyzer to the I2S output, as that analyzer will only analyze the I2S data stream frequency and not the data itself.

    What you really want is an audio analyzer that has the capability of reading digital I2S data.

    Best regards,

    Bob B

  • Thanks Bob.

    I was able to construct the sine wave with the original signal frequency with separating the LR content.

    But the SNR of the signal is very low . It is coming around 26 dB. I have attached the sample file and also the test result from ADC pro. Is there any setting to be done in the ADC Pro tool.

    Regards

    3750.Samples_8192_AP_Second.rar

  • Sathish,

    Look at your sample set in the MultiScope test.  You should see that you are saturating the input (look at the flat spots on the top/bottom of your sine wave).  You need to reduce the input signal level and you should see better results (the PCM1803A specs show a signal level at -0.5dB input).

    From withing ADCPro, there is a 'Tools' menu item.  Open the Coherent Frequency Calculator and enter your sampling rate, the desired frequency and use 4096 as the record length.  Dial in a frequency on your signal generator that will get you closer to having a coherent sample set.  That should get you better results as well. 

  • Thanks..

    I will try what you suggested.

    Meanwhile i tried the SNR measurement by feeding the I2S output from ADC to SPDIF transmitter and converted that into optical format.  Then i fed this optical output to Audio Precision tool to measure the SNR. My audio precision tool only supports the SNR measurement in digital and analog format. Not in I2S.

    So i fed 1Vrms with 118dB SNR analog signal to ADC and i measured the SPDIF output in AP.  The output signal was 1Vrms with 92 dB SNR.

    Is this measurement gives an near SNR value of ADC??

     

    Regards

    Sathish

     

  • Sathish,

    If you have converted the I2S data to SPDIF and then analyzed the digital data with the AP, then the AP should be giving you the correct results  for the PCM1803 in regards to SNR

    Best regards,

    Bob B