Help - Search - Members - Calendar
Full Version: I2S and buffer memory in CD player
Hydrogenaudio Forums > CD-R and Audio Hardware > Audio Hardware
Hoon
Hi.

1) I heard that I2S is used for data transfer from CD transport to DAC in a CD player.
2) Also I heard that some CD players have buffer between transport and DAC memory to improve I2S communication, for example jitter-eliminating.

Those things make me confused much.

As I2S protocol is synchronous, only one master clock inside CD player will control both of transport and DAC at the same time. In this case, I think if there would be jitter-like problem in music playing, it would be dependant on the precision of master clock itselt, not on being or being-not of buffer on the data transfer path.

Furthermore, the existence of buffer between transport and DAC will delay CD's palying time by the amound of clock numbers for data into and out of buffer, although the effect of delayed time could be noticed by listeners, or not. Also it will make circuits complicated and increase the manufacturing cost of CD player without any benefit.

Please give me advice to solve this conflict.
Should be buffer necessary for I2S improvement in CD players?
Arnold B. Krueger
QUOTE (Hoon @ May 20 2009, 21:23) *
1) I heard that I2S is used for data transfer from CD transport to DAC in a CD player.


Yes, I2S or something like it. I2S is a Johny-come-lately on the time scale of CD players. But there is a lot more between the transport and the DAC than just a bus.

QUOTE
2) Also I heard that some CD players have buffer between transport and DAC memory to improve I2S communication, for example jitter-eliminating.


They *all* do. The jitter at the output of the optical pickup is generally pretty horrible.

That's one of the big benefits of digital, minor misunderstandings are managable, often with very little effort.


QUOTE
As I2S protocol is synchronous, only one master clock inside CD player will control both of transport and DAC at the same time. In this case, I think if there would be jitter-like problem in music playing, it would be dependant on the precision of master clock itselt, not on being or being-not of buffer on the data transfer path.


In every case I've ever seen, the master clock in the CD player has total control. A CD player could conceivably have a terminal for an external master clock. I've never seen one.

If the buffer starts running out of data, then the spindle motor is sped up, and if the buffer starts getting too full, then the spindle motor slows down.

QUOTE
Furthermore, the existence of buffer between transport and DAC will delay CD's palying time by the amound of clock numbers for data into and out of buffer,


The circuitry of the CD player is designed to keep the buffer about half full. If memory serves, this buffer is around 1000 samples long, more or less. The L/R data is usually interleaved right up to the DAC.

QUOTE
although the effect of delayed time could be noticed by listeners, or not.


It's part of the delay between when you take the player out of pause, and before you hear the music starts playing. 500 samples is a pretty minimal delay. What are we talking? 50 milliseconds?

QUOTE
Also it will make circuits complicated and increase the manufacting cost of CD player without any benefit.


AFAIK there has never been a CD player that was built without the buffer. I obviously haven't read every schematic for every CD player ever built, but it was surely true in the beginning with the Sony CDP 101, etc.

In the early days the memory in the buffer was even costly enough to think about.

Today?? LOL!

QUOTE
Please give me advice to solve this conflict.


There are many sites on the web that lay this out.

http://www.electronicsforu.com/electronics...ow%20it%20works?


The buffer is in the box marked "RAM"

QUOTE
Should be buffer necessary for I2S improvement in CD players?


The buffer has been there longer than I2S has been! ;-)
Hoon
Wow!

Dear Arnold.

Thank you very much for your kind answer.
Regarding this, I would like to add other question.

I know there is buffer memory in CD players, but it locates before transport, not between transport unit and DAC. As you decribed in your reply, the function of buffer is to keep data from pick-up mechanism for data processing like decoding, correction, or controling servo.

What I wanted to know is that if there were other buffer memory to improve I2S transfer only. If it were, this memory should be located between transport and DAC and in this case, Cd player will have two buffers, one for data keeping or processing, and the other for I2S transfer.

I am afraid I might carry my meaning improperly because I am not familiar with this kind of knowledge.
So I hope you can understand well and make right if I am wrong.

Thanks again.
Mike Giacomelli
A DAC may or may not be clocked off the bus feeding it. If not there is some buffer memory onboard to synchronize incoming samples with the DAC's internal clock. If you want to know how your DAC works, find the datasheet and see how it's clocks are derived.

In either case I don't see how the bus makes any difference at all. If your system is bad enough that you have to care about jitter, its whatever clock that driving the DAC that matters, not the bus (which may or may not be synchronous).
Arnold B. Krueger
QUOTE (Hoon)
I know there is buffer memory in CD players, but it locates before transport,


??????????????

Only the disc is before the transport.

QUOTE
not between transport unit and DAC.


Please check the diagram in my reference. The memory buffer is after the transport and before the DAC.

QUOTE
As you decribed in your reply, the function of buffer is to keep data from pick-up mechanism for data processing like decoding, correction, or controling servo.


All of that, and more.

QUOTE
What I wanted to know is that if there were other buffer memory to improve I2S transfer only. If it were, this memory should be located between transport and DAC and in this case, Cd player will have two buffers, one for data keeping or processing, and the other for I2S transfer.


There is only one buffer.

Please see figure 2 at

http://www.electronicsforu.com/electronics...ow%20it%20works?

(corrected link)
Hoon
Dear Arnold.

The block diagram you linked is what I really have been looking for. Great!
And I think I made wrong expression about transport. Sorry.

Judging from the block diagram, I thought.....
In CD Player,
transport means the blocks including optics, servo, RF amplifier, decoder, memory and digital filter.
DAC means the blocks including D to A converter and audio pre-amplifier.

Anyway, I can ask a question much clearly from the block diagram.

"RAM" connected to "decoder" seems to be the buffer what you said to me.
In my opinion, I2S transfer must be performed from "digital filter" to "D to A converter".

So what I really want to know is if there is any other buffer memory inside two blocks, "digital filter" and "D to A converter" to help or to improve I2S transfer between them.
Arnold B. Krueger
QUOTE (Hoon @ May 21 2009, 00:45) *
"RAM" connected to "decoder" seems to be the buffer what you said to me.
In my opinion, I2S transfer must be performed from "digital filter" to "D to A converter".

So what I really want to know is if there is any other buffer memory inside two blocks, "digital filter" and "D to A converter" to help or to improve I2S transfer between them.


Since the I2S transfer is very reliable and stable, there is no need for more memory to help or improve it. Therefore, I would expect that there is none.
Hoon
Dear Arnold and Mike.

My doubt has become to be cleared and also could understand much about digital data transfer.
I really appreciate your answers!
Hoon
Hi.

I want to know where the buffer memory is located in audio CD players. I observed the PCB in my CD player, but couldn't find any kind of memory. Maybe I couldn't notice the memory IC although it was mounted somewhere on PCB. Otherwise the buffer memory of audio CD player may be normally built-in, so it may be hidden inside IC package which controls servo spindle or decodes audio data read from CD.

Which is normal for CD players? Does buffer memory exist on PCB or built-in ?

Also can I know the normal size of the buffer for audio CD palyer?
For fun, I calculated the necessary size from the fact that a CD/DVD combo drive with 52X read speed has 2MB for buffer.

(2 x 1024 x1024)/52 = 40329.94.....

So I expect the required size for audio CD(1X read speed) should be approximately 40KB
and please don't laugh at me, haha....!!!
Arnold B. Krueger
QUOTE (Hoon @ May 25 2009, 01:58) *
I want to know where the buffer memory is located in audio CD players. I observed the PCB in my CD player, but couldn't find any kind of memory. Maybe I couldn't notice the memory IC although it was mounted somewhere on PCB. Otherwise the buffer memory of audio CD player may be normally built-in, so it may be hidden inside IC package which controls servo spindle or decodes audio data read from CD.


tiny amounts of memory such as what is found in a CD player would be part of some kind of main processing chip.

QUOTE
Which is normal for CD players? Does buffer memory exist on PCB or built-in ?


Built into a master chip that does a whole lot of other things.

QUOTE
Also can I know the normal size of the buffer for audio CD palyer?


If memory serves, about 1000 samples.

It might be 1024 bytes - in the days when CD players first hit the market, that was the size of a popular, inexpensive SRAM chip.

QUOTE
For fun, I calculated the necessary size from the fact that a CD/DVD combo drive with 52X read speed has 2MB for buffer.

(2 x 1024 x1024)/52 = 40329.94.....

So I expect the required size for audio CD(1X read speed) should be approximately 40KB
and please don't laugh at me, haha....!!!


I don't follow your calculation. I would guess that a CD player buffer need only hold a small fraction of a second worth of data.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2009 Invision Power Services, Inc.