3 Replies Latest reply on May 16, 2010 3:21 PM by bradleyb_

    Digital Microphone

              I would like to know if the PSoC3/5 have the necessary resources to process the PDM signal from a digital microphone? I am not familiar with this currently, but I am looking to the eliminate codec in a design which currently processes the digital mic and passes the data to the PSoC via I2S. Thanks.   
        • 1. Re: Digital Microphone

          Yes. the resource and CPU hourse power in PSoC 3 and PSoC 5 allows users to develop audio signals. Check out the I2S comonent in PSoC Creator software. You can find it under Communication categlog. The Integrated Inter-IC Sound Bus (I2S) component operates in Master mode only. It also operates in two directions: as a transmitter (Tx) and a receiver (Rx). The data for Tx and Rx are independent byte streams. The byte streams are packed with the most significant byte first and
          the most significant bit in bit 7 of the first word. The number of bytes used for each sample (a sample for the left or right channel) is the minimum number of bytes to hold a sample.

          • 2. Re: Digital Microphone

            The I2S interface is not the problem/concern...The digital microphones provide a digital output referred to as PDM (Pulse Density Modulation) which is apparently created using a sigma delta adc. I am told it requires a decimation filter to convert it into a usable signal which may then be transported out of the cpu using the I2S interface. I don't have enough knowledge to understand the requirements for the decimation filter used to reconstruct the PDM signal or the clock required for the digital microphone and I assume the decimation filter as well. I am not sure how they might be related...one such microphone is manufactured by Analog Devices, ADMP421...the data sheet states that the microphone uses a 4th order sigma-delta modulator, but I cannot find anything that tells me what is needed to return that signal back to a 16-24 bit PCM signal.

            • 3. Re: Digital Microphone

              Your correct.  The signal that is recieved from this type of microphone will need to be decimated in order to convert it to a parallel data stream of samples.  We've implemented a prototype solution to this problem.  I specifically prototyped this with the Analog Devices ADMP421 part that you mentioned.  Since the data is coming in at multiple Mbps the processing needs to happen in hardware, so I implemented a CIC Sinc4 64x decimation filter in our programmable digital hardware.  I have some more work to do before providing this solution, but once that gets implemented I'll post a prototype to my blog.


              Brad Budlong
              PSoC Sensei