Can you tell us what you want to with that? Otherwise it is just looking into a crystal ball :)

For the microphone, a pre-amplifier might be needed (e.g. if you use a pure electret microphone capsule). For the speaker - you cannot source more than 25mA of current. So the speaker nees to have a high enough impedance if you want to connect it directly (130 ohms when using 3.3V).

Here i want to connect the microphone to PSoC ,digitize the microphone output and store the values in memory of PSoC and i should hear the sound signal using speaker ,where speaker input is the output of the DAC(PSoC peripheral).

so i just want to know the specifications of Microphone and speaker to get better result using PSoC..

If you just want to test, you can use the speaker as the microphone, so you don't need a buy a microphone. Test the hardware first(ie build hardware to amplifier the signal from the MIC, and feed the output to another speaker (with series resistor). one you get good level. then use a pure sine wave as the souce for recording into the PSOC memeory and play back the tone. Once that is done. Then try to use the MIC to test. Do it one step a time

Don't use this circuit to connect your microphone to the PSoC! I creates up to 12V on its output, which will destroy your PSoC.

You need to get "line level" - which is about 1V (this is what gets delivered by a typical cinch output). Use either a microphone with integrated preamplifier, or get one suitable for your microphone.

If you really want to save money, and are willing to experiment: use a headphone as microphone. Connect it to a PGA on the PSoC with the highest amplification. This might be enough for basic experiments (I did not try it).

You you wants to test your SW only you can also use the line in and line out from the PC, you can adjust the levels easily. This way you don't need to worry about the hardware issue first. Fix you SW then come back the hardware.

Since the output from a mic or any other audio device will be AC you will need to bias it to avoid driving any PSoC pin below the specified maximum (or minimum) levels.

Basically you want to take the output from a MIC, amplify it to some level range that suits the ADC in the PSoC, and bias it to ensure it does not clip at the top or bottom range. Then sample the ADC, store the values in RAM.

For the output you need to take the output from the ADC and buffer it and amplify it to some level strong enough to drive your selected output device. You could consider using a piezo transducer instead of a speaker?