Return to previous page Return to menu Go to next page

4.3 Subcode

(1) Subcode update and SCDQ flag

Subcode Q is updated every frame (1 sector). The SCDQ flag is 1 each time the subcode Q is updated. (Same as the periodic response update timing)
Subcodes R to W are updated in 4 packs (1 packet) per frame and stored in the pack buffer. The CD block has a pack buffer for 24 packs (6 packets) with a ring buffer structure.

<< For CD-DA playback (standard speed) >>

Figure 4.5 Subcode update and SCDQ flag timing

(2) Subcode extraction timing

The host issues an acquisition command when the SCDQ flag is set to 1, and retrieves subcodes Q and R to W data. (To prevent polling due to continuous issuance of commands)

(3) Get subcode Q (CDC_TgetScdQch)

The acquisition command can always be executed regardless of the CD drive status. However, an invalid value may be returned depending on the CD drive status such as 〈OPEN〉.

(4) Get subcode R to W (CDC_TgetScdRwch)

Pack data is extracted by repeatedly issuing acquisition commands until the pack buffer is empty. However, do not take out more than 16 packs in one frame time (13.3ms).
∙ Once the host issues an acquisition command, it is necessary to complete the data transfer within one pack decoding time (3.2ms).
WAIT is returned when the pack buffer is empty and there is no pack data.


Return to previous page Return to menu Go to next page