Renesas R5S72623 User Manual

Page of 2152
 
Section 23   CD-ROM Decoder 
R01UH0134EJ0400  Rev. 4.00  
 
Page 1257 of 2108 
Sep 24, 2014 
 
 
 
SH7262 Group, SH7264 Group 
23.6.3
 
Link Blocks 
The CD-ROM decoder uses the header information before ECC correction to detect link blocks. 
Accordingly, an input data stream that contains an error may be erroneously detected as a link 
block. To prevent this, the following measures should be implemented in software.  
  During buffering (BUF_ACT = 1 in the CBUFST0 register), check the LINK_OUT1 bit in the 
CROMST5 register on each ISEC interrupt. If it is set to 1, check to see if an IERR interrupt 
has also occurred; if an IERR interrupt has not occurred, save the MFS values from the 
HEAD20 to HEAD23 registers. If an IERR interrupt has occurred, do not save the MSF 
values. 
  Perform the following processing for seven sectors (indicated by ISEC being generated seven 
times) after finding that the LINK_OUT1 bit has been set to 1. 
In either of cases 1 and 2 below,  
1.  LINK_ON = 1 (in the CROMST5 register) is confirmed at each ISEC interrupt, and 
LINK_ON = 1 is detected again within the subsequent two-sector period  
2.  LINK_ON = 1 was not detected at any ISEC interrupt  
Forcibly stop decoding, set the CROMSY0 register to place the decoder in external sync mode, 
and retry decoding by specifying the MSF value stored above + 7 as the MSF value for the 
target sector. The start sector address will be the address where RUN_OUT is stored + 7. 
 
23.6.4
 
Stopping and Resuming CD-DSP Operation 
When stopping and resuming the stream data input to the CD-ROM decoder, note that the input 
data stream does not stop immediately before a sync code and that the CD-ROM decoder may 
recognize the data as incorrect when the input stream is resumed. This happens because the system 
holds a combination of the data up to the point where input was stopped and data that is input from 
the point of resumption. Take care on this point when stopping and resuming input.  
23.6.5
 
Note on Clearing the IREADY Flag 
To clear the IREADY flag to 0 in interrupt processing etc., be sure to read one sector of data (2768 
bytes) beforehand. If the IREADY flag is cleared to 0 before reading of one sector of data is 
complete, decoding of the subsequent sectors will not be possible. For recovery from this 
situation, write 1 to the LOGICRST bit in the CD-ROM decoder reset control register 
(ROMDECRST), and then clear the bit to 0.