Audio CD:
1) The bits of ultimate data don't correspond to the pits or the lands (holes and no-holes) in the CD, because that turned out to be too unreliable. Instead, seventeen bits' worth of track space (so to speak) are used to encode each 8 bit byte of information.
2) This data is also not entirely trustworthy, so every 24 bytes of data is wrapped up in an error detecting and correcting code that can correct single and double byte errors; larger errors can be detected but not corrected. A separate lecture will be provided on error-correcting codes. Keep reading.
3) To reduce the effect of a single error (like, a 'pop' in the sound track), consecutive bytes of audio data are not stored consecutively. Instead, 24 consecutive 24-byte "sample frames" are interleaved.Thus, the first frame contains data from 24 different times in a given chunk of music; the second frame contains 24 slightly later samples, etc. This interleaving technique spreads out the effect of an uncorrectable error, to reduce its impact on the audio.
Here's the idea in a simpler example, using 8 way interleaving.
Original signal: abcdefgh ijklmnop qrstuvwx yzABCDEF GHIJKLMN OPQRSTUV WXYZ1234 567890 etc.
Interleaved signal: aiqyGOW5 bjrzHPX6 cksAIQY7 etc...
Obviously this wouldn't help a computer file at all.
Constant Linear Velocity: Drive must speed up or slow down, depending on whether you're reading close to center or edge of the disk. Makes life more complex. (Compare DVD with its constant angular velocity -> cheaper, easier to implement.)
CD-ROM: Uses Audio CD technology as basis, with an additional error control and addressing layer. Uses 2352 byte physical blocks, consisting of 2048 bytes of useful data, 304 bytes of error correcting code and address data.
Two modes - Mode 1 (purely computer program data) & Mode 2 (any kind of media, with less error correction than Mode 1, thus a bit more capacity.) Mode 1 at single speed CD is 150 kbytes/s; Mode 2 is 175 kbytes/s.
Logical data format, including directory organization, was speciried in the High Sierra Proposal and subsequent ISO 9660 standard.
Seek times can be as high as 1 second (much worse than a hard drive.)
CD-WRITEABLE. Two flavors now exist: Write once, and Write multiple. Media for multiple are about 6x as expensive as write-once (which are around $2 each), so you have to ask why anybody would bother with write-multiple.
Error Correcting Codes - a more interesting topic. Methinks.
There's a marvelous lecture on the subject, laid out by a Francis Fung, a Princeton grad student, at this link. Here are the queries that go with it:
Query 12.1: A (3,2,3) code (=n,M,d) on the alphabet {0,1} is a code with messages of length n=3, M=two codewords (000 and 111) and minimum Hamming distance between codewords of d=3. Invent a (3,3,2) binary code. Is it error detecting? Is it error correcting?
Query 12.2: If there are fewer than d/2 errors in a given message, the code word from which the erroneous message is derived, can be rediscovered. Explain this concept intuitively.
Query 12.3: Show (by example) how adding a parity bit to a message produces a distance-2 code.
Query 12.4: Show an example of the old mag-tape nine bit by n+1 bit two dimensional parity error correcting code.
Query 12.5: Whoops. Time to set the Midterm Exam. Well, see
it for further questions.