CD & DVD

Compact Disk (CD) drives originated as a (then-) high-capacity distribution media for the distribution of data; of information and programs. These original data CD drives utilized the comparatively high volume manufacturing production of CD audio devices for the purpose of data storage and transfer; of the mechanisms used for the production, distribution and playback of read-only commercial audio products and media. These original drives are known as Compact Disk Read-Only Memory or CD-ROM drives.

top of pageThe Technology

The technology of these original read-only CD disk drives and disk media is based on playback of a series of pits literally embossed onto the substrate of the optical media. The rotating medium is scanned by a laser, and the presence or absence of a pit in the substrate is interpreted as the presence or absence of a single bit of data. Data is organized and recorded in a spiral pattern, from an inner ring positioned around the inner hole and spiraling outward toward the edge of the medium, and as physically pressed into the media from a master copy of the disk. (For those with enough gray hair to remember vinyl record disks, the basic structure is similar to the groove, save the CD recording spirals outward from innermost ring near the hole to the outermost edge of the media. Like vinyl, CD and DVD media can be recorded on both sides of the disk, though this is far less commonly seen with CD and DVD than with vinyl. That both the original CD media and vinyl records are also embossed from a master disk is another similarity, of course.)

These spiral recording patterns are called tracks. Unlike classic vinyl records -- well, other than a few creative disk recordings such as a well-known Monty Python “three-sided” album -- each side of a data CD or DVD can be divided into multiple sessions, each containing various tracks. Data recordings usually have one track. Depending on the host operating system software, these sessions might show up as separate devices or volumes, or as one volume comprised of an aggregate of the files in the track(s) of each session, or all sessions other than the first might not show up at all. Commercial audio recordings are not normally multi-session.

Subsequent generations of CD and DVD recordable media incrementally built on this basic recording technology and media, and particularly on the associated physical device mechanisms, with photo-chemical changes in the substrate typically replacing the physical pits in the classic substrate, and with increasingly higher recording densities and recording speeds possible, and with increasingly lower production costs. Higher-powered lasers were implemented and used to generate the appearance of physical pits within the recordable media substrate, allowing drives to provide write-once optical recording capabilities in addition to the CD-ROM capabilities. These drives are known as CD recordable or CD-R drives, and encode data onto recordable optical media, while the classic and now lower-powered pick-up lasers continuing to read the reflectivity of the media as the presence or absence of an actual or simulated pit; as the state of a data bit.

As the media substrate technologies and the drive technologies advanced, both write-once recordable (CD-R) and rewritable (CD-RW) capabilities became available; drives provide CD-ROM read capabilities, and the ability to read and to write CD-R and CD-RW media. The newest substrates provide two recording layers per media side and support dual-layer recording. Materials advances are not without problems, however, as the older CD-ROM drives are simply not as good nor as reliable at processing newer photochemically-recorded CD-R or CD-RW optical media.

The disk command interfaces in widest use at the time when CD-ROM was designed were the SCSI command set, and the IDE bus ATA fixed-disk interface. While SCSI could be extended to support optical drives, the ATA interface was limited by its specific to fixed hard disks and insufficient to the task of handling removable and optical media without substantial modifications. The SCSI interface was individually extended by the various vendors, and the SCSI command interface was itself integrated into the packet interface extensions to ATA; into the ATA/PI or ATAPI command interface.

SCSI had and has the advantage of flexibility and extensibility, while ATAPI had and has cost advantages; these cost differences carry through to the present, as do differences in the target markets. SCSI targets higher storage densities, higher thermal densities, higher duty-cycles and higher reliability requirements, while ATAPI targets the other end of the market; of the most cost-sensitive portions of the market. (With the advent of Serial Attached SCSI (SAS) and Serial ATA (SATA), the SCSI and ATA/ATAPI markets continue to blend the best capabilities.)

top of pageCompatibility

While CD and DVD optical drives and subsequent generations of optical recording devices started out with vendor-specific extensions to the then-current SCSI command interface standards, and various vendors involved in the manufacture and distribution of these devices and of the other hardware and software involved subsequently developed a series of extensions to the then-current SCSI standards. These include updated SCSI specifications such as the MultiMedia Commands (MMC) interface from the original ANSI T10 SCSI organization, and standards produced by the ANSI T13 ATA/ATAPI organization, and the Small Form Factor (SFF) industry organization. As experience was gained and as devices and software evolved, compliance and compatibility improved; arbitrary newer devices are far more compatible and far more likely to work in any particular configuration than will the older devices. Details on these SCSI and ATAPI specifications are available from the T10, T13 and SFF organizations, and details of the device features and of device compliance and related testing are generally available from the associated vendors.

To date, optical recording drives are still not entirely compatible, and compliance with the applicable specifications is still relative -- the industry specifications involved are evolving, and are large and complex, and compliance testing is entirely non-trivial. Further, there are various areas of the specifications that are unfortunately ambiguous; where more than one interpretation of the text is possible. Central to all device testing is the correct operation of the device with the Microsoft Windows operating system; a de facto interface specification. Unfortunately, there are multiple software and hardware platforms involved with the Microsoft Windows and Windows optical recording environment, and the various Microsoft and device-level interfaces continue to evolve, as well. Put another way, the only way to truly confirm that a particular device or software package will work in your configuration is to simply try it.

top of pageProgramming

If you would prefer to avoid programming and performing the I/O command operations directly, both commercial and open-source packages are readily available for most any operating system platform. The following sections can and will be of interest if you wish some additional background, or if you wish to directly program an optical device.

Software I/O control of an optical device, including the ability of the software to start and stop the motor and to read from and (when supported by a particular device) to write to optical media is based on command packets transferred between the computer and the optical device. These packets contain the details of the particular operation requested, such as READ or WRITE, and the parameters or options associated with the particular command, such as the data to be read from or written to the device, or details of a media format operation. SCSI provides structures known as command descriptor blocks (CDBs) as the structure of the command packets, and provides information and device configuration resource structures known as Mode Pages (MPs). Host software sends CDBs to devices, and uses these to read and write data. The Mode Pages can be read by the host and can, in specific cases, be written by the host to control the configuration and operation of the target device.

When programming I/O directly with an optical recording device, you will obviously want to avoid customizing the software to the particular device whenever possible, maintaining an operating interface based on an empirically determined subset of the interface specifications. With this sub setting technique, you can maintain an MMC-compliant interface and can ensure operations with the widest variety of devices. Customizations for a particular device can offset maintainability and portability; be ready to surrender support for the more unusual devices, barring specific requirements or mitigating circumstances. Required older devices and the more unusual devices, of course, will require at least some custom programming -- once the particular device model involved is uniquely recognized by the host software support, and the proper interface routines are selected.

When creating a program, some consideration must be given to the command sets to be supported. The dash-format DVD recordable and rewritable technologies (DVD-R and DVD-RW) differ from the plus-format technologies (DVD+R, DVD+RW), for instance. Most current drives support DVD-R, DVD-RW, DVD+R and DVD+RW, and many add the Double-Layer or Dual-Layer (DVD DL) support capabilities for these formats. Classic commercial DVD-ROM pre-recorded media is already dual-layer capable, as this provides the capacity necessary for pre-recorded movies. All DVD recording drives that HoffmanLabs is familiar with on the market including the newest DL devices also provide CD recording capabilities, though the CD recording operations and commands do differ from those of common DVD operations.

Key considerations when programming involve the use of the aforementioned command subset, and the processing of the various error and status values that can be returned. (For details of the architected structure of and for a list of the status and error values that can be returned, see the appendices of the T10 documents.) In particular, the proper use of the SYNCHRONIZE CACHE command operation and the processing of the particular status returned by the WRITE command operation are key. SYNCHRONIZE CACHE causes the drive to flush its cache out onto the media, allowing a sequence of writes to complete, and allowing the state of a drive to be recovered when a sequence of writes fails. The WRITE command and other error processing must contend with and adapt to the differences in the particular status values returned from a WRITE or various other operations, as drives do differ in this area.

top of pageFutures

Newer and yet higher-density optical recording work continues, with blue-laser recordings and yet newer media continues apace, with the Blu-Ray disk (BD) technology expected to roughly triple the best DL capabilities currently available. Current CD and DVD optical drives use red lasers, and a migration to drives with both red (for compatibility with existing media) and blue lasers (for far higher recording densities) is expected.

When HoffmanLabs actually obtains a production HD DVD or BD DVD or other similar high-density recording capabilities device, do expect to see more information provided here. (These HD and BD devices are just appearing in the US market, and device and media prices are correspondingly high, and availability is scarce.)

top of pageGlossary