I have some strange issue, may be somebody can decide what the reason.
I bought DIY board with PCM2704 (86M134M) and connect to laptop (Windows 7 64 bit, USB 2.0). Device was correctly recognized and driver was installed (USB\VID_08BB&PID_27C4&REV_0100&MI_00, 'USB AUDIO DAC').
When I play music with foobar2000 using WASAPI I listen insane level of distortions. I try to play single tone 50 Hz and record DAC output. I found that DAC waveform was distorted in next way: lower half of sine period was not distorted at all, upper half has big jumps at some levels. These jumps occurs in left and right channel and repeats each period in same way.
Next, using MATLAB I generate ramp waveform that goes through all levels for 16 bit signed number (-32768..32767), play it and record.
I found next issue: for all positive values of waveform where 8-th bit was 1 waveform drops down. Negative values outputs normally.
When I modify any waveform data and zero all 8-th bit for positive values I can play signals, of course slightly distorted.
When I fit all waveform data to negative values I can play signals without audible distortions.
When I change volume using buttons on board or windows mixer, output also changes in amplitude, but with same distortions.
It looks like 8-th bit works same as 16-th bit (sign bit).
Signals with levels within (-128..127) (that didn't touch 8-th bit) plays normally.
PS: to prevent some questions I already check that problem NOT in laptop/OS/recoding/playback/sampling frequency/volume/additional sound effects/signal amplitude/.wav file parameters/usb connection/IC power/external noise/cables/soldering/voltages/smd components.
I have no SPDIF device to record PCM2704 SPDIF output.
So, my questions:
Is this IC can have such problem with one bit in data?
Where it came from: windows driver / USB transfer / DAC / IC registers?
Is it possible to understand it is original IC or bad copy.