Nothing Special   »   [go: up one dir, main page]

WO1999063540A1 - Data processor and data processing method - Google Patents

Data processor and data processing method Download PDF

Info

Publication number
WO1999063540A1
WO1999063540A1 PCT/JP1998/002476 JP9802476W WO9963540A1 WO 1999063540 A1 WO1999063540 A1 WO 1999063540A1 JP 9802476 W JP9802476 W JP 9802476W WO 9963540 A1 WO9963540 A1 WO 9963540A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
dram
circuit
row
correction
Prior art date
Application number
PCT/JP1998/002476
Other languages
French (fr)
Japanese (ja)
Inventor
Hirotsugu Kojima
Kenji Kaneko
Nobuyuki Takei
Original Assignee
Hitachi, Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi, Ltd. filed Critical Hitachi, Ltd.
Priority to AU75501/98A priority Critical patent/AU7550198A/en
Priority to JP2000552676A priority patent/JP3904138B2/en
Priority to PCT/JP1998/002476 priority patent/WO1999063540A1/en
Priority to TW088105230A priority patent/TW436724B/en
Publication of WO1999063540A1 publication Critical patent/WO1999063540A1/en

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices

Definitions

  • the present invention relates to a DVD (Digita 1 Versatile Disk) and a CD-ROM (Compact) using a dynamic random access memory (hereinafter referred to as DRAM) as a data buffer.
  • DRAM dynamic random access memory
  • Disk read only memory or a data processing device including a reading device for error correction which can cope with both, and a processing method.
  • DVD drive device As a next-generation personal computer peripheral device, a DVD drive device is attracting attention.
  • the DVD drive that replaces the currently installed CD-ROM is a practically essential requirement to be able to support the CD-ROM that has been widely used. I have.
  • When configuring devices that reproduce signals read from the disks of the CD-ROM and DVD drive devices it is an important issue to develop components that can handle both of them. At this time, the remarkable difference between the recording format of DVD and that of CD-ROM is the S road when developing the configuration means that can cope with both.
  • FIG. 19 (a) is an arrangement diagram of time-series data after CD-ROM demodulation
  • FIG. 19 (b) is a format diagram of an error correction code of CD-ROM data.
  • the signal read from the disc passes through a demodulation circuit and becomes an 8-bit (1 byte) time-series signal as shown in Fig. 19 (a).
  • One byte of subcode followed by 32 bytes of data is called a frame.
  • One section consists of 98 frames.
  • One section consists of 98 subframes starting with special subcodes SO and S1 that indicate the start of the section, and a subcode is a group of meaningful data written in one section. ing.
  • Figure 19 (b) shows the data input in chronological order, with one frame arranged on one line.
  • the data for one symbol is indicated by (s, f, b), where s is the section number, f is the frame number, and b is the byte number.
  • FIG. 20 is a format diagram of an error correction code of CD, CD-ROM specified by the standard.
  • C 1 and C 2 are correction units for double protection, and are both read-solomon error correction codes with one byte as one symbol.
  • Figure 20 shows the delay relationship between the data supplied assuming the time required for correction to be zero, the data input to C1 and C2 error correction, and the data output after correction.
  • the rectangle with the number is a delay circuit that applies the frame delay of that number. Inverter indicates all bit inversion.
  • FIG. 21 (a) is a diagram showing time-series data after demodulation of the DVD code
  • FIG. 21 (b) is a format diagram of the error correction code of the DVD data.
  • the signal read from the disk goes through a demodulation circuit to become an 8-bit (1 it) time-series signal as shown in Fig. 21 (a).
  • the unit of correction is a matrix of 18 2 columns and 208 rows, which is called an ECC (Error Correction Code) block.
  • the ECC block is a lead-solomon error correction code that uses 8 bits (1 byte) as one symbol, and has a row direction (inner code parity) and a column direction (outer code parity). This is a product code in which parity is independently added to.
  • the data of one symbol is indicated by (brc).
  • b is the block number
  • r is the row number
  • c is the column number.
  • (b, r, 2) ⁇ ⁇ ⁇ (b, r, 18 1) is defined as one line, and each line is composed of the main data of 17 2 symbol and the inner code parity of 10 symbols. ing.
  • the 208 symbols (b, 0, c), (b, 1, c), (b, 2, c), ... (b, 200, c) are 1 It consists of 92 symbol body data and 16 symbol outer code parity. However, one row of outer code parity is inserted in time series with respect to 12 rows of main data. Error correction is completed by executing inner code correction in 208 rows in row units and outer code correction in 1832 columns in column units, and performing erasure correction as necessary.
  • the error correction processing for CD_ROM and DVD is the first error correction processing that can execute data input in chronological order without greatly changing the order. It can be said that this is a combination of the second correction processing that can be executed first after accumulating data for a period of time.
  • the first correction process is the C1 correction process for CD-ROM, the inner code correction process for DVD.
  • the second correction process is the C2 correction process for CD-ROM, and the outer code correction for DVD. Processing.
  • Such an error correction format is widely applied not only to other recording media but also to broadcasting media such as digital television receivers.
  • CD-ROMs have 2 kBytes to 4 kBytes of SRAM
  • DVDs have 256 kBytes of RAM.
  • a 2 kByte DRAM has been used.
  • DRAM instead of SRAM is used for the DVD playback device because of the economical reason of reducing costs.
  • the nofee memory be composed of DRAM. Also, we want to share the DVD memory with the DVD-ROM and the CD-ROM so that the DVD-ROM drive can read the CD-ROM as well. In addition, the DRAM has a high speed access within the same row address, but a random access across different row addresses is extremely slow.
  • an object of the present invention is to solve these conventional problems, to use high-speed access in the same row address of DRAM, and without using particularly high-speed and expensive memory.
  • Inexpensive configuration writing data read from media to non-volatile memory, reading for DVD, CD-ROM first and second correction processing And to provide a data processing device and a processing method suitable for writing. Disclosure of the invention
  • the data accessed by the writing from the input circuit to the DRAM and the reading from the DRAM for the second correction processing have an appropriate number of bits.
  • Each unit is allocated in the same ROW address on the DRAM, and in each access, the ROW address and the column address of the ROW are continuously issued for the number of addresses. It is characterized by performing DRAM access control.
  • FIG. 1 is a block diagram of a data processing device according to a first embodiment of the present invention.
  • FIG. 2 is a detailed block diagram of the input circuit in FIG.
  • FIG. 3 is a detailed block diagram of the first data rearrangement circuit and counter in FIG.
  • FIG. 4 is a timing chart illustrating the operation of the input circuit for the CD-ROM signal.
  • FIG. 5 is a diagram showing an example of data allocation on an 8-bit word DRAM of CD-ROM data.
  • FIG. 6 is a diagram showing an example of data allocation on an 8-bit word DRAM of DVD data.
  • FIG. 7 is a configuration diagram showing one embodiment of the second data rearranging circuit of the present invention.
  • FIG. 8 is a diagram showing an example of data allocation on 16-bit / lead DRAM of CD-ROM data.
  • FIG. 9 is a diagram showing an example of data allocation on 16 bits / code DRAM of DVD data.
  • FIG. 10 is a configuration diagram showing another embodiment of the second data rearranging circuit of the present invention.
  • FIG. 11 is a diagram showing an example of data allocation on CD-ROM data on a 32-bit Z word DRAM.
  • FIG. 12 is a diagram showing an example of data allocation on a 32-bit word DRAM of DVD data.
  • FIG. 13 is a configuration diagram showing a first embodiment (for 8 bits / word DRAM) of the output circuit in FIG.
  • FIG. 14 is a configuration diagram showing a second embodiment (for 16 bits / mode DRAM) of the output circuit in FIG.
  • FIG. 15 is a configuration diagram showing a third embodiment (for a 32-bit Z-mode DRAM) of the output circuit in FIG.
  • FIG. 16 is a configuration diagram showing an embodiment of the address generation circuit in FIG.
  • FIG. 17 is a block diagram of an embodiment of a CD-R OMZD VD reproducing apparatus to which the present invention is applied.
  • FIG. 18 is a configuration diagram showing an embodiment of the data processing circuit of the present invention.
  • FIG. 19 is a format diagram of time-series data after CD-ROM demodulation and error correction codes of CD-ROM data.
  • FIG. 20 is a diagram showing the standard of error correction and deinterleaving of CD-ROM.
  • FIG. 21 is a format diagram of the time-series data after the CD-ROM demodulation and the error correction code of the CD-ROM data.
  • FIG. 22 is a block diagram of a data processing device S showing a second embodiment of the present invention.
  • FIG. 23 is a flowchart of the priority determination routine of the microprocessor in FIG.
  • FIG. 24 is a flowchart of a writeaccess processing routine from the demodulation circuit in FIG.
  • FIG. 1 is a block diagram of a data processing device according to a first embodiment of the present invention.
  • DRAM 18 used for buffering data, input circuit 11 and output circuit Route 12, buffer registers 14 for data processing are interconnected via an internal bus 13.
  • the data transfer request signal from each is input to the priority determination circuit 16, the data according to the determination result is output to the internal path 13, and the address generation access control circuit 17 An address is generated in accordance with the result of the priority determination, and the access control of the DRAM 18 is performed.
  • the input circuit 11 performs a pre-processing suitable for the medium on the signal input from the medium, and accumulates the signal until the number of words to be written into the DRAM 18 is reduced.
  • the term “collective word count” refers to the number of data words written continuously in the same row address by synchronous DRAM or normal DRAM page mode access. Point.
  • the location and value of the found error are corrected by accessing DRAM 18 in symbol units.
  • the corrected data is determined through the output circuit 12 It is sent to the subsequent stage using the specified protocol.
  • the output circuit 12 also sends a data request signal to the priority determination circuit 16 as necessary.
  • the priority determination circuit 16 determines the priority of the above-mentioned memory access request, and permits access in descending order of priority, thereby improving efficiency and restricting real-time processing. Operate the system while observing the conditions. For example, requests from the input circuit 11 are usually processed with the highest priority. This is because the data entered must not be lost before it is processed. In addition to the illustration, refresh of DRAM 18 is also a high priority request.
  • FIG. 2 is a detailed block diagram of the input circuit in FIG.
  • a preferred embodiment of the input circuit 11 is configured as shown in FIG.
  • the data input from the CD-ROM through the demodulation circuit is in 1 symbol (8 bit) units, and a clock synchronized with that and a signal indicating the beginning of the frame are input.
  • the demodulated data passes through the first data rearrangement circuit 111, is rearranged in an order suitable for C1 correction, and is sent to the C1 correction circuit 114 and the second data rearrangement circuit 112. .
  • the C 1 correction circuit 1 14 may perform all the correction processing, but may perform at least the syndrome generation and transfer the syndrome to a correction operation circuit (not shown).
  • the frequency of errors in a normal CD-ROM disc is not as high as about 1 symbol out of 1,000 symbols. Since the syndrome of an error-free data string becomes zero, if only the erroneous syndrome is transferred to the correction processing circuit, the correction processing circuit is used more efficiently. This is what happens.
  • demodulated data demodulated data, a demodulation clock synchronized with the demodulated data, and a signal representing the beginning of an ECC block are input.
  • the row address signal is input, it can be used for rescue if the row address becomes irregular in the ECC block for any reason.
  • the error correction of the DVD can be executed by inputting the signals to the inner code correction circuit 115 in the order of the signals input in time series from the demodulation circuit. Therefore, unlike the case of the CD-ROM, there is no need for the first data sorting circuit 111. By devising the addressing of the DRAM, the second data rearrangement circuit 112 may not be necessary.
  • FIG. 3 is a diagram showing a configuration example of a first data rearrangement circuit and a counter of the CD-ROM demodulated signal in FIG. 2, and FIG. 4 is a timing chart thereof.
  • the demodulated data is input in synchronization with the demodulation clock.
  • the ternary counter 1 19 counts the demodulation clock of the CD-ROM and outputs the count value i.
  • the count value i is reset each time the frame head signal is input, and outputs a value from 0 to 32.
  • i 0
  • CD-ROM demodulated data is output as it is because it is a subcode.
  • i l, 3, 5, ⁇ ⁇ ⁇ 11, 17, 19, ⁇ ' ⁇ 27, the data does not require one frame delay as shown in Fig. 20. Therefore, the terminal a is selected by the selection circuit 122 and output.
  • i 13, 15, 29, 31 the terminal b is selected by the selection circuit 122 and inverted data is output.
  • the signals output to terminals a, b, c, and d in Fig. 3 are shown by terminals a, b, c, and d in Fig. 4.
  • the output of the selection circuit 122 is shown as C I data to be corrected, and is data in an order suitable for C 1 correction.
  • the second data rearrangement circuit 112 needs to be devised so as to be adaptable to the configuration of the DRAM used as a knocker.
  • DRAMs are available in 8-bit / 1-word, 16-bit / 1-word, and 32-bit / 1-word configurations. Since the unit of correction is 1 symbol, that is, 8 bits, in both CD—ROM and DVD, access is made to 1, 2, and 4 symbols according to the word length of the DRAM.
  • the second data rearranging circuit 1 12 is not necessary, and the C 1 corrected data is left unaltered in the DRAM addressing. Just write.
  • FIG. 5 is a diagram showing a method for allocating data on an 8-bit / word DRAM of CD-ROM data. (0, 0, 0), (—1, 97, 1), (0, 0, 2),..., (1-1, 97, 31) output as CI corrected data Are written to the addresses H'00, H'021, H'042, ..., H'3FF in the first ROW of the DRAM.
  • the data (s, f, b) is the byte number of (s: section number, f: frame number, b: byte number)-12, 13, 14,
  • the data of 15, 28, 29, 30, and 31 are all bits inverted, but it is not important that the data is inverted data in particular.
  • H'X used in address notation indicates that X is represented in hexadecimal.
  • the C 1 corrected data (0, 1, 0), (0, 0, 1), (0, 1, 2),..., (0, 0, 31) of the next frame is the DRAM Are written to the addresses H'400, H'412, H'424, ..., H'7FF of the second row.
  • the next is the first ROW
  • a series of data required for C2 correction is arranged in 1F.
  • a series of data for C2 correction is written in FF. Since the address is continuous, the configuration of the address generation circuit is easy. In this embodiment, it is described that byte numbers 28, 29, 30 and 31 are also written in the DRAM. However, since these are parity for C1 correction, C2 correction is performed. There is no need to write unless there is a reason such as performing C1 correction again after the '.
  • the deinterleaving can be realized by the addressing of the DRAM reading.
  • the interleave in FIG. 20 includes a 2-byte delay everywhere.
  • the above access is not necessarily efficient because the first row and the third row are alternately accessed, but the processing of the day interleave required for output (see Fig. 20) is performed. It has no special hardware and is realized only by DRAM addressing, which is effective for simplified configuration and cost reduction.
  • FIG. 13 is a configuration diagram showing a first embodiment (for 8-bit / word DRAM) of the output circuit in FIG.
  • the first ROW and the third ROW shown in Fig. 5 And read them one by one at a time.
  • the read data is transferred to the output circuit shown in Fig. 13 via the internal bus. Data transfer is performed in synchronization with the read clock, and the address of the register to be written is specified by the input binary quaternion counter 131 in the output circuit.
  • the binary quaternary counter 13 1 is 0, and is incremented by 1 each time a read clock is input.
  • FIG. 6 is a diagram showing an example of data allocation on DVD data bit / word DRAMs according to the present invention.
  • FIG. 6 shows a data allocation method when the same DRAM is used for error correction of a signal read from DVD.
  • the data (0, 0, 0), (0, 0, 1),... (0, 0, 181) of the first row of the ECC block input in chronological order from the demodulation circuit are added to the DRAM. From the first row to the sixth row.
  • the first row stores the data (0, 0, 0) and the data (0, 0, 31) before the address H'00001F and H'001F.
  • the next data (0, 0, 32) to (0, 0, 63) are stored from the address H'0400 to H, 04IF of the second ROW.
  • the addresses of the 6th ROW, H'1 4 16 It is used area.
  • the data (0, 1, 0), (0, 1, 1), (0, 1, 181) of the second row of the ECC block, which is input in time series from the demodulation circuit, are Returning to the first row of the DRAM, data is written from the address H'0202 to H'003F of the continuation of the data in the first row. Similarly, the data in the third to third rows of the ECC block are sequentially written to the first to sixth rows of the DRAM.
  • lines 3 to 64 are the data from the 7th row of DRAM to the 12th row
  • the data in lines 65 to 96 are data in the DRAM.
  • the data in the 16th row from the first row to the 26th row in the DRAM are changed from the 25th row to the 30th row in the DRAM.
  • the data from the 31st row to the 36th row of AM and the remaining data from the 19th row to the 208th row are the 3rd row power of the DRAM.
  • the data of the first and second lines of the ECC block are sequentially written to the 42nd ROW in the same manner as the data written in the 1st ROW to the 6th ROW of the DRAM, respectively.
  • the last 37th ROW to the 42nd ROW are virtual areas of the ECC block 209 to 228 which are not originally present in order to maintain the regularity of the address. Are assigned. In practice, no such data is entered, so this area is also unused.
  • a series of data necessary for outer code correction is (b, 0, c), (b, 1, c),... (B, 207, c).
  • (0, 0, 0), (0, 1, 0),... (0, 31, 0) are stored in the first row of the DRAM. Up to 32 symbols can be read continuously without reissuing the OW address. Therefore, to read a series of data (0, 0, 0), (0, 1, 0),... (0, 207, 0) necessary for outer code correction, the following steps must be taken. Just do it.
  • Steps 1 through 6 issue a ROW address and can continue for 32 bytes, but the last seventh step issues an ROW address and issues a 16 Reading over bytes is not desirable because it accesses unused area.
  • Reading of the second and subsequent columns of the ECC block can be performed in the same manner.
  • the read of the corrected data may be performed in exactly the same order as the first write.
  • FIG. 6 shows the data allocation for only one ECC block.However, with a normal device, data of at least 3 ECC blocks is usually stored in DRAM and processed. It is a target. That is, the first ECC block is for writing data, the second ECC block is for access for correction, The third ECC block is divided into readouts for output, and the first, second, and third ECC blocks are used in a pipeline manner each time processing is completed. Things. It is not uncommon to accumulate more than 4 ECC blocks of data and process them sequentially in order to allow time for error correction.
  • FIG. 7 is a diagram showing an embodiment of the second data rearranging circuit when a 16-bit / 1-word DRAM is used.
  • the data of 6, •. 32) is output to the lower byte without delay.
  • data (0, 0, 0) is output in combination with data (0, 3, 1).
  • the two bytes (16 bits) output in combination after receiving the delay in the second data rearrangement circuit are written to the first DRAM.
  • FIG. 8 is a diagram showing a method of allocating data on 16-bit lead DRAM of CD-ROM data.
  • the day interleaving can be realized by the DRAM addressing of the DRAM reading.
  • the deinterleave in FIG. 20 includes a 2-knot delay everywhere.
  • this is the first and third, the second and fourth, the third and fifth, the fourth and sixth, the fifth and seventh, the sixth and eighth, the seventh and first, Or it is equivalent to the difference between the 8th and 2nd ROW. Therefore, in FIG. 20, (0, 0, 0), (0,
  • Output is achieved by repeating the ROW address update and reading in the 4-byte ROW address six times as follows.
  • the addressing can be divided into two sets, the first row and the third row, and an output circuit as shown in Fig. 14 can be added to realize interleaving. .
  • the first row and the third row are read out in six words each.
  • the read data is transferred to the output circuit shown in Fig. 14 via the internal bus. Data transfer is performed in synchronization with the read clock, and the register register to be written by the binary counter 14 1 on the input side in the output circuit Specify the address.
  • the binary counter 11 is 0, and is incremented by 1 each time a read clock is input.
  • connection destination of the output of the decoder 146 on the output side is not specified. It is designed to be In the present embodiment, the input side is devised so that data is stored in the latch circuit 144 in the order of output. Therefore, since the output is a sequential access, a shift register format may be used. It is also possible to design such that the input side is stored in the order read from the DRAM and the output is output in an appropriate order.
  • FIG. 9 is a diagram showing a data allocation method when the same 16-bit word DRAM is used for error correction of a signal read from a DVD.
  • the data (0, 0, 0), (0, 0, 1),... (0, 0, 181) of the first row of the ECC block input in time series from the demodulation circuit are converted to the DR.
  • two consecutive symbols are combined into 16-bit data. 1st R OW
  • the data H (0,0,0), data ((0,0,0), (0,0,1)) and ((0,0,3) 0), (0, 0, 31) ⁇ are stored.
  • the data in the ECC block 17th line to 32nd line are changed from the 7th ROW to the 12th ROW of the DRAM, and the data in the 33rd line; From the 1st 3rd row of the AM to the 1st row, the last 19th row!
  • the data on line 208 of the ECC block is changed from the 73rd row of the DRAM to the 78th row of the DRAM, and the data on the 32nd line of the ECC block is transferred from the first row of the DRAM to the first row of the DRAM.
  • a series of data necessary for outer code correction is (b, 0, c), (b, 1, c),... (B, 207, c).
  • (0, 0, 0), (0, 1, 0), ... (0, 15, 0) are stored in the first row of the DRAM. Up to 16 symbols can be read continuously without re-issuing the ROW address.
  • a force that is a two-byte Z-word can simultaneously read (0, 0, 1), (0, 1, 1), ... (0, 15, 1) at this time. Therefore, it is efficient to process the outer code correction of the 0th column and the 1st column in parallel.
  • the method of generating the DRAM address can be easily configured as in the case of the 8-bit DRAM.
  • the read of the corrected data may be performed in exactly the same order as the first write.
  • Fig. 9 shows the data allocation for only one ECC block, as in Fig. 6, but with a normal device, data of a minimum of 3 ECC blocks is stored on the DRAM as described above. Generally, it is processed.
  • FIG. 10 is a configuration diagram of a second data rearranging circuit according to the second embodiment of the present invention, showing a case where a 32-bit / 1-bit DRAM is used.
  • the data of 3) is output to the least significant byte without delay, for a total of 4 bytes.
  • data (0, 0, 0) (0, 3, 1) (0, 8, 2) (0, 11, 1, 3) are combined and output.
  • the second data rearrangement circuit receives the delay and combines and outputs 4 bytes (32 bits) to one word of DRAM.
  • FIG. 11 is a diagram showing a method of allocating data on 32 bits / word DRAM of CD-ROM data.
  • the data of (0,0,0), (0,3,1), (0,8,2), (0,11,3), which is a combination of (0,0,0,0), is converted to ⁇ (0,0,0,0) 0), (0,3,1), (0,8,2), (0,11,3) ⁇ , the 16 words ⁇ (0,0,0) output in time series ), (0,3,1), (0,8,2), (0,11,3) ⁇ , ⁇ (0,0,4), (0,3,5), (0,8, 6), (0,11,7) ⁇ , ..., ⁇ (0,0,28), (0,3,29), (0,8,30), (0,11) , 3 1) ⁇ is written to the addresses H ′ 0 0 0, H ′ 0 09, H ′ 0 1 2, ⁇ ′ ⁇ H ′ 0 3 F in the first ROW of the DRAM.
  • the deinterleaving can be realized by the DRAM read addressing.
  • the interleave of FIG. 20 includes a 2-byte delay everywhere. This means that on the DRAM, the first and third, the second and fourth, the third and fifth, the fourth and sixth, the fifth and seventh, the sixth and eighth,. And the first, or the difference between the 16 and the 2 ROW. Therefore, (0, 0, 0), (0, 3, 1), (0, 24, 6), (0, 27, 7), (0, 62, 1) in FIG.
  • Output of (1, 7, 27) is achieved by repeating the update of the row address and reading in the 3-word row address twice as follows.
  • FIG. 15 is a configuration diagram (for 32 bits / word DRAM) of an output circuit showing a third embodiment of the present invention.
  • a day interleave circuit as shown in Fig. 15 is required.
  • the read data is transferred to the output circuit shown in Fig. 15 via the internal bus.
  • Data transfer is performed in synchronization with the read clock, and the hexadecimal counter 152 on the input side in the output circuit specifies the address of the register to be written. Since there are four symbols per word, four latches to be written are specified at the same time.
  • the hexadecimal counter 152 is 0 when the first data is input, and is incremented by 1 each time a read clock is input.
  • the output of the decoder 15 1 has six lines from 0 to 5 corresponding to the value of the counter 15 2 so that the data is stored in the 24 output latches 15 3 in the order of output. Issues a write enable. After all data has been stored in latch 15 Each time a tick is input, one symbol of data is output.
  • connection destination of the output of the decoder 155 on the output side is not explicitly shown in FIG. 15, it is output in order from the top corresponding to the count value of the binary counter 156 on the output side. It is designed to:
  • the input side is devised so that data is stored in the latch circuit in the order of output. Therefore, since the output is sequential access, a shift register format may be used.
  • FIG. 12 is a diagram showing a data allocation method when the same 32-bit word DRAM is used for error correction of a signal read from DVD.
  • the data (0, 0, 0), (0, 0, 1), (0, 0, 181) of the first row of the ECC block input in time series from the demodulation circuit are converted to DR Write sequentially to the first to sixth rows of AM.
  • 32 consecutive bits 1 mode data is obtained by combining four consecutive symbols.
  • the first ROW contains data ⁇ (0,0,0), (0,0,1), (0,0,2) from address H'00.00 to H'00.07. ), (0, 0, 3) ⁇ force> ((0, 0, 28), (0, 0, 29), (0, 0, 30), (0, 0, 31)) ⁇ Is stored.
  • the following data ⁇ (0,0,32), (0,0,33), (0,0,34), (0,0,35) ⁇ force> ( ⁇ 0,0,6) 0), (0, 0, 6 1), (0, 0, 6 2), (0, 0, 6 3) ⁇ are the addresses of the second row H '0 0 4 0 Stored by 0 4 7 Write data sequentially from the top of the third, fourth, fifth, and sixth ROWs.
  • the address H'0 of the sixth ROW H'0 14 F is an unused area.
  • the data of the second row of the ECC block, which is successively input from the demodulation circuit, is ⁇ (0,1,0), (0,1,1), (0,1,2), (0,1) , 3) ⁇ ,... ⁇ (0, 1, 178), (0, 1, 179), (0, 1, 18 0), (0, 1, 18 1) ⁇
  • the address of the continuation of the data in the first row is H'0 0 8 to H '0 0 0 F.
  • the second row address H' 0 0 4 8 The data is sequentially written to the sixth ROW address H'004F.
  • the data in the third to sixteenth lines of the ECC block are sequentially written to the first to sixth rows of the DRAM.
  • the data in the ECC block 17th line to 32nd line is the data from the 7th ROW to the 12th ROW of the DRAM, and the data in the 33rd line to the 48th line is the data in the DRAM.
  • the data from the 13th ROW to the 18th ROW, and the last data from the 19th row to the 28th row are ECC from the 15th ROW to the 15th ROW of the DRAM
  • the data in the first and second blocks of the block are written sequentially in the same way as the data in the first to sixth rows of the DRAM are written to the second and third rows.
  • FIG. 2 an example is shown in which all or part of the inner code correction is executed before storing the data in the DRAM.However, the data allocation shown in FIG. According to this, a series of 18 2 symbols required for inner code correction are stored in the same ROW address of the DRAM in units of 32 symbols, and up to 32 symbols without re-issuing the ROW address. Data can be read continuously, so even if the inner code is corrected after storing the data in DRAM, Good.
  • a series of data necessary for the outer code correction is (b, 0, c), (b, 1, c),... (B, 207, c).
  • (0, 0, 0), (0, 1, 0), ⁇ '' (0, 7, 0) are stored in the first row of the DRAM, and R Up to 8 symbols can be read continuously without re-issuing the OW address.
  • the DRAM is a 4-byte word.
  • the first row (0, 0, 1), (0, 1, 1), ... (0, 7, 1), the second row U (0, 0, 2), (0, 1, 2), ... (0, 7, 2), 3rd system 1 "(0, 0, 3), (0, 1, 3), ⁇ ⁇ Since (0, 7, 3) can also be read out at the same time, it is efficient to process the outer code correction in the 0th to 3rd columns in parallel.
  • the method of generating the address of the DRAM can be configured easily as in the case of the 8-bit word DRAM.
  • the read of the corrected data may be performed in exactly the same order as the first write.
  • Fig. 12 shows the data allocation for only one ECC block, as in Fig. 6, but with the usual equipment, at least 3 ECC blocks of data are stored on the DRAM as described above. Generally, the data is accumulated and processed.
  • FIG. 16 is a configuration diagram of an address generation circuit applied to each embodiment of the present invention.
  • the ROW address register 163, the COLT dress register It is composed of 163a, register 0 and register n (164).
  • the values of the ROW address register 163 and the COL address register 1663a are respectively passed through the mask / offset circuit 1667. Selected by the multiplexer 1668 and input to the DRAM address terminal.
  • the mask / offset circuit 1666 is configured using a general-purpose ALU (Arithmetic Logic Unit) and a register.
  • ALU performs bitwise logical operations (logical addition, logical AND, exclusive OR, etc.) and numerical addition / subtraction, so masks that fix a part of the address value to 0 or 1 and constant values
  • the offset for adding the sum can be easily realized.
  • the first input of the adder circuit 16 5 is the row address register 16 3, the address register register 16 3 a, the register 0 to the register n (16 4 ) And input it to one of the adders 1 65.
  • the second input path selects one of the registers n (1 64) from register 0. And input it to the other of the adders 1 65.
  • the result of the addition is written to one of the registers 164 and 163 via the output bus. Also, the values can be directly stored in registers 1664 and 1663 through the output bus.
  • the address generation circuit is given an operation procedure by a sequence control circuit that receives the result of the priority determination circuit.
  • an appropriate input circuit according to the number of bits of the DRAM word, particularly the second data rearrangement circuit in the CD-ROM, and an appropriate output circuit, particularly the CD-ROM By providing a deinterleave circuit, the access to the DRAM can be integrated into a continuous read access to the same row address. As a result, a high transfer rate using page mode access can be obtained, and a low-speed DRAM, that is, a low-cost DRAM, can be used effectively.
  • the larger the number of bits per word of DRAM the more the number of access cycles can be reduced.
  • there are disadvantages such as an increase in the number of pins and an increase in the scale of the input / output circuit. This point is traded off.
  • the configuration of the DRAM on the same LSI is almost the same as that of the external DRAM described above, but it is most preferable that the bit is 8 bits per mode.
  • there is no need for address multiplexing that is, a load address and a column address can be issued simultaneously.
  • the speed of reading the data in the same address while changing the column address is sufficiently fast.
  • a second data rearrangement circuit that collects the symbols of the symbols is unnecessary.
  • FIG. 17 is a diagram showing an example of an optical disc reproducing apparatus capable of reproducing CD-ROMs and DVDs embodying the present invention.
  • the entire electrical system is controlled by the microcontroller 174.
  • the laser control circuit 1778 operates to control the output of the laser diode 1772 through the laser
  • the signal processing circuit 1 7 9 is an actuator Controls mechanical systems through motor dryno 180.
  • the signal detected by the photodetector 173 is input to the servo processing circuit 179 and the sampling / binarization circuit 182 through the analog signal processing circuit 177.
  • the signal input to the servo signal processing circuit 179 is tracking and focus error information, and the source signal for fine adjustment of the stage position and lens, and adjustment of the spindle motor speed. Used as Sampling
  • the binarized information is the disk information to be reproduced.
  • a clock synchronized with the data is reproduced from the signal of the photodetector 173, and the clock is used to perform sampling and binarization to obtain a digital signal.
  • the synchronization pattern specified in the standard is detected from the obtained digital signal, and the start timing of the CD-ROM or DVD frame is identified.
  • the microcontroller 184 monitors the synchronization status of the playback clock, the synchronization pattern detection status and the synchronization status, and controls the actuator 171, servo, laser, and CD-R. ⁇ Used for OM / DVD mode setting.
  • the binarized serial digital signal is converted to a 17-bit or 16-bit parallel signal depending on the CD-ROM / DVD mode setting.
  • the signal is demodulated and 168 demodulated and input to the input circuit shown in the above-described embodiment.
  • three bits are added for connection to 14 bits of Eight-to-Fourteen Modulation (EFM) modulation, so the outputs of the SZP conversion circuits 18 5 and 18 6 It is 17 bits.
  • EFM Eight-to-Fourteen Modulation
  • the operations of the input circuit, the output circuit, the address generation circuit, the priority determination circuit, the error correction processing circuit, the DRAM, and the like are the same as those of the embodiment described above.
  • the corrected data sent through the output circuit is sent to the protocol control circuit 1 According to 87, it is transferred to 188, such as a personal computer, video / audio playback device, etc., using the specified protocol.
  • the microcontroller 184 selects the laser diode 172 assuming that a CD-ROM or DVD is loaded when the disc is loaded, and performs servo processing and error correction processing. Operate 1 9 2 etc. If the assumption is different from the loaded disc, the information monitored by the microcontroller 184, such as no clock playback, no sync pattern detection, and no error correction, And switch to playback mode of the other disk. In this way, the medium is automatically determined.
  • the data processing circuit 15 shown in FIG. 1 may be constituted by a parallel processor. Assuming that the number of processor elements constituting the parallel processor is n, n sets of CDs—the C1 code and C2 code of ROM, the inner code of DVD, and the received code of outer code are input in parallel. It is efficient. That is, data of n rows in the case of the inner code of a DVD and n columns in the case of the outer code are input to n processor elements, respectively, to perform parallel processing.
  • 1 is a configuration diagram of a data processing circuit according to an embodiment, showing the configuration of a buffer register and a data processing circuit when the number of processor elements PE is eight.
  • DRAM is 16-bit words, so the internal bus is also assumed to be 16-bit wide. Also, the data allocation on the DRAM is as shown in FIG. 8 in the case of CD-ROM playback, and as shown in FIG. 9 in the case of DVD playback.
  • the register is a 1-byte register having 8 rows and 8 columns and 1 input and 2 outputs.
  • the data input terminal DB [15: 0] is before Is connected to the internal bus described above, and the row write enable signal WAR0 to WAR7 is selected by the row, the column write enable signal WACO is set by the WAC3 to the column selected by WAC3.
  • Data is stored in two byte registers.
  • reading is output in parallel from eight registers arranged in the row or column direction.
  • the control terminal RZC specifies the row or column direction, and in the case of the row direction, the data processing circuit reads one byte and eight bytes of data selected from RR7 from RR7 and reads one byte at a time. Is supplied to PE7 from the processor element PE0. In the column direction, data of 8 bytes is read from one row selected from RC0 to RC7, and the data is processed one byte at a time. 0 power is supplied to PE 7.
  • the 182 bytes required for the inner code correction are from the lower address H'0 to H'F of the first ROW to the sixth ROW of the DRAM every 32 bytes. Are stored at consecutive addresses.
  • the address H '0 0 0 0 is set to the address H' 0 0 3 in the first row of the knock-off register. Repeat this with 8 bytes of data of 11'0 013 on the second line of the buffer register, and address H'0 0 70 0 to H'0 0 73 Transfers 8 bytes of data to the 8th line of the buffer register.
  • the first 8 bytes of the ECC block from line 1 to line 8, were transferred from line 1 to line 8 of the knock-off register.
  • Select the C side that is, the column side, with the R / C pin, and sequentially transfer data of 8 bytes each from RC0 to RC7 to PE7 from processor element PE7.
  • the power of the first line of the buffer register >
  • the data from the first row to the eighth row are sequentially transferred to the processor elements PE0 to PE7, respectively.
  • the buffer register is now empty, so the next address of the first row of the DRAM is again H'0 0 0 4 and H '0 0 7 and H' 0 0 1 4 H'017, ...
  • H'0074 A total of 64 bytes from the input to the processor, H'0777, are passed through the knock-off register to the processor element. Transfer from PE 0 to PE 7. By repeating this, all necessary data is transferred from the processor element PE0 to PE7. In the data processing circuit, the inner code correction can be executed in parallel by eight processor elements PE0 to PE7.
  • the 208 bytes required for outer code correction are the same lower order of 61 60 ⁇ from the first ROW of the DRAM to the 7810th ⁇ of the DRAM every 16 bytes. It is stored at the address.
  • the address H'0 0 0 0, the data 8 of H '0 0 3 is placed in the first line of the register, and the address H' 0 0 1 0
  • This is repeated for the second row of the buffer register with 8 data of the data of H '013 and the data of H' 0 0 7 3 Transfers 8 bytes of data to the 8th line of the knocker register.
  • the first eight bytes from the first line to the eighth line of the ECC block were transferred to the first to eighth lines of the buffer register. This is also equivalent to the first eight bytes of the ECC block from the first row to the eighth row.
  • the C side that is, the column side
  • the R side that is, the row side
  • RR 0 to RR 7 were sequentially selected.
  • the data in the first to eighth columns of the register are sequentially transferred to the processor elements PE0 to PE7, respectively.
  • the buffer register is empty, the next address in the 7th ROW of the DRAM will be H'0600, H'0600, H'0700, and so on.
  • the outer code correction can be executed in parallel by the eight processor elements PE0 to PE7.
  • Fig. 18 describes the parallel processing of CD-ROM and DVD error correction, but the operation for DVD in particular is used to correct the error in the general product code of a lead solomon. Can be widely applied.
  • the present invention can easily cope with other media.
  • the data format of the error correction is the same as the data format of the CD-ROM or DVD described in the above embodiment, regardless of whether it is storage media or broadcast media. Therefore, the address generation circuit, priority determination circuit, etc. can be easily applied to different formats by only slightly changing the sequence control.
  • FIG. 22 is a configuration diagram of a data processing apparatus showing another embodiment of the present invention, in which the processing method of the present invention is realized by software.
  • the data processing apparatus of the present invention is configured by hardware.
  • the buffer register 14 can also be realized by software for a processor such as a microcontroller.
  • FIG. 22 shows a hardware configuration that is assumed to be realized by software on the microcontroller 22.
  • the main memory 222 and the DRAM interface circuit 222 are connected via a common bus, and the input circuit 211 and the output circuit 222 are connected via a peripheral path.
  • controller 2 23 Connected to controller 2 23.
  • the microcontroller 223 monitors a register (DRAM access request status register Regst) for requesting access to the DRAM 226 for each access factor. Perform appropriate processing according to the priority of the request.
  • the DRAM access request status register is a register that indicates the presence or absence of a request as an access factor, and can be realized by hardware or virtually by software. Good.
  • the input circuit 222 has a register of one symbol or more.
  • FIG. 23 is a flowchart of the priority determination routine of the microprocessor, which monitors the DRAM access request status and starts the necessary processing subroutine as needed. Is shown.
  • Steps 230 and 231 read the contents of the DRAM access request status register. (Steps 230 and 231), check the presence or absence of an access request according to the priority, and if there is a request, start a subroutine corresponding to the request, reset the request, and reset the request. Return to reading the data register.
  • the priority shown here is only an example, and it is fully conceivable that the priority may be changed in configuring the system. It may also be changed during the operation of the program.
  • the refresh processing subroutines 23, 2, 24, and 248 manage time using timers, which are peripheral functions of the microcontroller 23, and refresh the DRAM at regular intervals.
  • This is a subroutine that performs
  • the configuration of the subroutines 23, 33, 241, and 249 for performing w r i t e a c c e s s from the demodulation circuits differs depending on the type of medium, the position and method of data on DRAM.
  • Read access processing subroutine for C1 correction (steps 234, 242, 250), read access processing routine for C2 correction (steps 235, 2) 43, 25 1), read processing subroutine for output (steps 23 36, 24 44, 25 2), read and write processing subroutine for correction (step 237, 245, 253) and other read and write processing subroutines (steps 238, 239, 246, 27, 254, 255) Are invoked according to priority.
  • FIG. 24 is a flowchart showing an example of a processing routine of writheaccesss from the demodulation circuit.
  • the data arrangement shown in Fig. 5 will be implemented using a DRAM with an 8-bit data width. Shows a subroutine for writing data into the subroutine.
  • the input data from the demodulation circuit is assumed to be "DATA”, and the position of the data at this time is assumed to be the output "i" of the ternary counter 119 shown in FIG. Data is given.
  • this ternary counter 1 19 can be easily realized by hardware or software.
  • Steps 2 6 7 Since the sub-code processing body is not essentially related to the present invention, the description is omitted. If i is an even number, one frame delay is given (steps 26 2 and 26 3), and if odd, it damages the DRAM without delay (steps 26 2 and 26 8). ). Ooutbuuf in the flow is an array variable that stores 32 bytes of data that will be written to DRAM next. d1ybuuf is an array variable for one-frame delay, and holds the data before one frame (step 2665).
  • step 2622 If the data is an odd number (step 2622), d1ybut [i] one frame before is stored in ooutbuf [i] to be output next (step 270).
  • the data of i 13, 14, 15, 15, 16, 29, 30, 30, 31, 32 is the norm, and as shown in the CD standard of FIG. The parity is inverted for all bits and used for the subsequent processing (steps 264 and 269)
  • the variables row, co 10 and co 1 are variables for DRAM row, initial column, and column address calculation, respectively, and the variables DR AM R OW, DRAM COL, and DRAM DATA are actually DR Row, column address and data issued to AM.
  • the load address of the DRAM increases by one for each frame of the CD, and returns to 0 at an appropriate value (see 271).
  • the initial column address co 10 increases by 32 (H'20 in quaternary notation) for each frame, and returns to 0 when it reaches the maximum value in the same row. (See 272).
  • the column address is actually issued to the DRAM, and the data is simultaneously output to the DRAM to perform writing (steps 271, 272). ). Thereafter, the column address is increased by 33 (H'21) in the same low address, and the remaining 31 bytes are sequentially written (step 274).
  • the data rearrangement circuit realized by the hardware shown in FIG. 3 can be realized by the software. You.
  • the data processing device of the present invention can utilize high-speed access within the same ROW address of DRAM, and is commonly used for error correction of signals from different media. Therefore, it is not necessary to use particularly high-speed and expensive memory, and an inexpensive data processing device can be realized. Furthermore, if the input circuit and output circuit connected to the internal bus are designed to be adapted to the system, the correction processing circuit including DRAM access can be diverted to a different system with only minor changes. This also has the effect of reducing development costs.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Error Detection And Correction (AREA)
  • Optical Recording Or Reproduction (AREA)

Abstract

A data processor provided with an input circuit means (11) for pre-processing signals read out from a medium, a first DRAM access priority discriminating means (16) for writing pre-processed results in a DRAM, a second DRAM access means (15) for reading out data for second correction from the above-mentioned DRAM, a third DRAM access output circuit means (12) for reading out data for outputting corrected data to a succeeding stage, and an access control circuit (17) constituted so that the first, the second, and the third DRAM accesses may be stored in the same row address over several words. Thus, the data processor does not require any expensive high-speed memory, because the processor can utilize high-speed access in the same row address of the DRAM and can commonly cope with error correction on signals from different media.

Description

明 細 書 データ処理装置および処理方法 技術分野  Description Data processing device and processing method
本発明は、 ダイ ナミ ッ ク · ラ ンダム , アクセス · メモ リ (以下 D R A Mと称す) をデ一タノくッ ファ に用いた D V D ( D i g i t a 1 V e r s a t i l e D i s k ) および C D— R OM (C o m p a c t D i s k R e a d O n l y M e m o r y ) に、 も しく は両者に対応で きる誤り訂正のための読み出 し装置を含むデータ処理装置および処理方 法に関する。 背景技術  The present invention relates to a DVD (Digita 1 Versatile Disk) and a CD-ROM (Compact) using a dynamic random access memory (hereinafter referred to as DRAM) as a data buffer. Disk read only memory) or a data processing device including a reading device for error correction which can cope with both, and a processing method. Background art
次世代のパー ソナル · コ ン ピュータ周辺装置と して、 D V D ドライブ 装置が注目 されてきている。 現在搭載されている C D— R OMを置き換 える形の D V D ドライブ装置は、 従来から多用 されてきている C D— R OMディ ス ク に対応でき る こ と が、 事実上の必須要件と なっている。 C D— R OMと D V D ドライ ブ装置それぞれのディ ス ク から読み出 された 信号を再生する装置を構成する場合に、 両者に対応でき る構成手段を開 発する こ と は重要な課題である。 この と き、 D V D と C D— R OMの記 録フ ォーマ ツ トが著しく 異なる こ と が、 両者に対応でき る構成手段を開 発する場合の S路となっている。  As a next-generation personal computer peripheral device, a DVD drive device is attracting attention. The DVD drive that replaces the currently installed CD-ROM is a practically essential requirement to be able to support the CD-ROM that has been widely used. I have. When configuring devices that reproduce signals read from the disks of the CD-ROM and DVD drive devices, it is an important issue to develop components that can handle both of them. At this time, the remarkable difference between the recording format of DVD and that of CD-ROM is the S road when developing the configuration means that can cope with both.
先ず、 C D— R OMのデータ フォーマッ ト の規格を、 図 1 9 を用いて 簡単に説明する。 図 1 9 ( a ) は、 C D— R O M復調後の時系列データ の配列図であ り 、 図 1 9 ( b ) は、 C D— R O Mデータの誤り訂正符号 のフォーマ ッ ト図である。 ディ ス ク から読み出された信号は、 復調回 路を経て、 図 1 9 ( a ) に示すよ う な 8 ビッ ト ( 1 バイ ト) の時系列信 号になる。 サブコー ド 1 バイ ト とそれに続く 3 2バイ トのデータ列をフ レーム と 呼び、 9 8 フ レームで 1 セク ショ ンと なる。 1 セク ショ ンはそ の開始を示す特殊なサブコー ド S O , S 1 から始ま る 9 8 フ レームで構 成され、 サブコ一 ドは 1 セク シ ョ ン単位に意味のあるデータ群が書き込 まれている。 時系列で入力 されたデータ を、 1 フ レームを 1 行に して並 ベ直 したものが図 1 9 ( b ) である。 図中、 1 シンポルのデータ は ( s, f , b ) で示されてお り 、 このと き s はセク シ ョ ン番号、 f はフ レーム 番号、 b はバイ ト番号である。 First, the data format standard of CD-ROM is shown in Fig.19. A brief description will be given. FIG. 19 (a) is an arrangement diagram of time-series data after CD-ROM demodulation, and FIG. 19 (b) is a format diagram of an error correction code of CD-ROM data. The signal read from the disc passes through a demodulation circuit and becomes an 8-bit (1 byte) time-series signal as shown in Fig. 19 (a). One byte of subcode followed by 32 bytes of data is called a frame. One section consists of 98 frames. One section consists of 98 subframes starting with special subcodes SO and S1 that indicate the start of the section, and a subcode is a group of meaningful data written in one section. ing. Figure 19 (b) shows the data input in chronological order, with one frame arranged on one line. In the figure, the data for one symbol is indicated by (s, f, b), where s is the section number, f is the frame number, and b is the byte number.
図 2 0 は、 規格で定め られた C D , C D— R OMの誤り 訂正符号のフ ォ一マ ツ ト 図である。  FIG. 20 is a format diagram of an error correction code of CD, CD-ROM specified by the standard.
C 1 , C 2 は、 2重に保護するための訂正部であって、 と もに 1 バイ トを 1 シンボルとする リ 一 ドソ ロモンの誤り 訂正符号である。 C 1 は、 符号長 3 2 シンボル =データ 2 8 シ ボル +パ リ ティ 4 シンボルで構成 されている。 また、 C 2 は、 符号長 2 8 シンボル =データ 2 4 シンボル +パ リ ティ 4 シンボルで構成されている。 図 2 0 では訂正に掛かる時間 を仮にゼロ と して供給されるデータ と C 1, C 2 の誤り 訂正に入力され るデータ、 訂正されて出力 されるデータの遅延関係を示 している。 数字 の記入された長方形はその数値のフ レーム遅延を施す遅延回路である。 イ ンバータ は全ビッ ト反転を表す。  C 1 and C 2 are correction units for double protection, and are both read-solomon error correction codes with one byte as one symbol. C1 is composed of a code length of 32 symbols = data of 28 symbols + parity of 4 symbols. C 2 is composed of code length 28 symbols = data 24 symbols + parity 4 symbols. Figure 20 shows the delay relationship between the data supplied assuming the time required for correction to be zero, the data input to C1 and C2 error correction, and the data output after correction. The rectangle with the number is a delay circuit that applies the frame delay of that number. Inverter indicates all bit inversion.
図 2 0 に示されている よ う に、 仮に訂正に掛かる時間を無視したと し ても、 最初のデータ ( 1 1 0 、 0 ) が入力 された と き、 はじめてデ一 タ ( 0 0 0 ) が C 2 訂正ブロ ッ ク に入力 される。 すなわち、 図 1 9As shown in Fig. 20, suppose that the time required for correction is ignored. However, when the first data (110, 0) is input, the data (0000) is input to the C2 correction block for the first time. That is, Fig. 19
( b ) の フ レーム列 ( 0 , 1 0 , 0 ) の位置から明 らかなよ う に、 最低 1 0 8 フ レーム分のデータが貯まった後でなければ、 C 2 訂正を開始す る こ と はできない。 As can be seen from the position of the frame sequence (0,10,0) in (b), it is necessary to start C2 correction unless data of at least 108 frames has been accumulated. I can not do such a thing.
C D— R OMの規格に従って誤り 訂正を行 う場合、 図 1 9 ( b ) に薄 線枠付きで示した ( 0, 1 , 0 ) , ( 0 , 0 , 1 ) , ( 0 , 1 , 2 ) · . · ( 0 , 1 , 3 0 ) , ( 0 , 0, 3 1 ) が、 符号長 3 2 シンボルの C 1 符号であ り 、 太線枠付きで示 した ( 0 , 0 , 0 ) , ( 0 , 3 , 1 ) , When error correction is performed in accordance with the CD-ROM standard, (0, 1, 0), (0, 0, 1), (0, 0, 1), (0, 1, 2) are shown with thin frames in Fig. 19 (b). · (0, 1, 30), (0, 0, 31) are C1 codes with a code length of 32 symbols, and are shown with a bold frame (0, 0, 0), (0, 3, 1),
( 0 , 8 , 2 ) , · · · ■ ( 1 , 9 , 2 7 ) が符号長 2 8 シンボルの C 2符号である。 (0, 8, 2),... (1, 9, 27) are C2 codes having a code length of 28 symbols.
次に、 規格で定められた D V Dの誤り訂正符号のフ ォーマツ ト を、 図 2 1 を用いて簡単に説明する。 図 2 1 ( a ) は D V D符号の復調後の時 系列データ を示す図であ り 、 図 2 1 ( b ) は D V Dデータの誤り 訂正符 号のフ ォ一マ ツ ト図である。  Next, the format of the DVD error correction code defined by the standard will be briefly described with reference to FIG. FIG. 21 (a) is a diagram showing time-series data after demodulation of the DVD code, and FIG. 21 (b) is a format diagram of the error correction code of the DVD data.
ディ ス ク から読み出された信号は、 復調回路を経て、 図 2 1 ( a ) に 示すよ う な 8 ビ ッ ト ( 1 イ ト ) の時系列信号になる。 C D— R O Mの サブコ 一 ドに相当するデータは存在せず、 訂正に必要なデータの区切 り を表す信号は復調回路で除去される。 訂正の単位は 1 8 2 列 2 0 8行の マ ト リ ク ス で、 こ れを E C C ( E r r o r C o r r e c t i o n C o d e ) ブロ ッ ク と呼ぶ。 E C Cブロ ッ ク は 8 ビッ ト ( 1 イ ト) を 1 シンボルとする リ ー ドソ ロ モ ンの誤 り 訂正符号で、 行方向 (内符号パリ ティ) と列方向 (外符号パ リ ティ) に独立にパ リ ティ を付加 した積符号 である。 図中、 1 シンボルのデータ は ( b r c ) で示されてお り 、 この と き b はブロ ック番号、 r は行番号、 c は列番号である。 時系列出 入力 される 1 8 2 シンボルのデータ ( b, r, 0 ) , ( b , r , 1 ) ,The signal read from the disk goes through a demodulation circuit to become an 8-bit (1 it) time-series signal as shown in Fig. 21 (a). There is no data corresponding to the subcode of the CD-ROM, and the signal indicating the division of data required for correction is removed by the demodulation circuit. The unit of correction is a matrix of 18 2 columns and 208 rows, which is called an ECC (Error Correction Code) block. The ECC block is a lead-solomon error correction code that uses 8 bits (1 byte) as one symbol, and has a row direction (inner code parity) and a column direction (outer code parity). This is a product code in which parity is independently added to. In the figure, the data of one symbol is indicated by (brc). Here, b is the block number, r is the row number, and c is the column number. 18 2 symbol data (b, r, 0), (b, r, 1),
( b , r, 2 ) · · . . ( b , r, 1 8 1 ) を 1 行と し、 それぞれの行 は 1 7 2 シンポルの本体データ と 1 0 シンボルの内符号パ リ ティ で構成 されている。 また、 列方向の 2 0 8 シ ンボル ( b, 0 , c ) , ( b, 1, ■ c ) , ( b , 2 , c ) , · · · · ( b , 2 0 7, c ) は 1 9 2 シンボル の本体デー タ と 1 6 シンポルの外符号パ リ ティ で構成されている。 ただ し、 外符号パ リ テ ィ の行は、 時系列的には 1 2行の本体データに対 して 1 行挿入されている。 誤り 訂正は、 内符号訂正を行単位で 2 0 8 行、 外 符号訂正を列単位で 1 8 2 列実行し、 必要に応じて消失訂正などを実行 して完了する。 (b, r, 2) · · · (b, r, 18 1) is defined as one line, and each line is composed of the main data of 17 2 symbol and the inner code parity of 10 symbols. ing. In the column direction, the 208 symbols (b, 0, c), (b, 1, c), (b, 2, c), ... (b, 200, c) are 1 It consists of 92 symbol body data and 16 symbol outer code parity. However, one row of outer code parity is inserted in time series with respect to 12 rows of main data. Error correction is completed by executing inner code correction in 208 rows in row units and outer code correction in 1832 columns in column units, and performing erasure correction as necessary.
以上述べてきたよ う に、 C D _ R O M, D V Dの誤り 訂正処理は、 時 系列で入力 されたデータ をその順序を大き く 変吏する こ と なく 実行でき る第 1 の誤 り訂正処理と 、 ある程度の期間データを蓄積してからは じめ て実行でき る第 2 の訂正処理の組合せである と言う こ と ができ る 。 第 1 の訂正処理は、 C D— R O Mでは C 1 訂正処理を、 D V Dでは内符号訂 正処理を差 し、 第 2 の訂正処理は、 C D— R O Mでは C 2 訂正処理を、 D V Dでは外符号訂正処理を差す。 こ のよ う な誤り 訂正フォーマ ツ トは その他の記録系媒体に留ま らず、 ディ ジタ ル · テ レ ビ受像機などの放送 系媒体にも広く 適用 されている ものである。  As described above, the error correction processing for CD_ROM and DVD is the first error correction processing that can execute data input in chronological order without greatly changing the order. It can be said that this is a combination of the second correction processing that can be executed first after accumulating data for a period of time. The first correction process is the C1 correction process for CD-ROM, the inner code correction process for DVD. The second correction process is the C2 correction process for CD-ROM, and the outer code correction for DVD. Processing. Such an error correction format is widely applied not only to other recording media but also to broadcasting media such as digital television receivers.
上記の誤 り 訂正符号の規格から明 らかなよ う に、 C D— R O Mも D V D もある程度の量のデータが蓄積されない と誤り 訂正を実行でき ない。 すなわち、 C D— R O Mにおいては、 ( 0, 0, 0 ) , ( 0 , 3 , 1 ) , ( 0 , 8, 2 ) , · . · · ( 1 , 9, 2 7 ) の符号長 2 8 シンボルの C 2符号を訂正しょ う とすれば、 ( 0, 0, 0 ) から ( 1, 9, 2 7 ) ま での 1 0 8 フ レー ム分のデータ を保持 してお く 必要がある。 D V Dにお いて も、 外符号の訂正を行 う ためには、 列方向の 2 0 8 シ ンボル ( b, 0, c ) , ( b , 1, c ) , ( b, 2, c ) , · · · · ( b, 2 0 7 , c ) のデータが必要と なるから、 最低限 1 E C Cブロ ッ ク分のデータは 保持 してお く 必要がある。 As is clear from the error correction code standard, error correction cannot be performed on CD-ROMs or DVDs unless a certain amount of data is accumulated. That is, in the CD-ROM, a code length of 28 symbols of (0, 0, 0), (0, 3, 1), (0, 8, 2),... (1, 9, 27) The C To correct two codes, it is necessary to hold 108 frames of data from (0, 0, 0) to (1, 9, 27). Even for DVDs, to correct the outer code, the 208 symbols (b, 0, c), (b, 1, c), (b, 2, c),. · · · Since (b, 207, c) data is required, it is necessary to retain at least one ECC block of data.
従来、 データを保持する手段 (データバ ッ フ ァ ) と して、 C D — R O Mには 2 k B y t e 力 ら 4 k B y t e の S R AMが、 D V Dには 2 5 6 k B y t e 力 ら 5 1 2 k B y t e の D R AMが用い られてきた。 C D— R O M, D V Dの どち ら も再生でき る装置を開発しょ う とする場合、 D V Dの誤り 訂正のために必要な 2 5 6 k B y t e ;^ら 5 1 2 k B y t e もの D R A Mを備えなが ら、 さ らに C D— R O Mの誤り 訂正のために 2 k B y t e の S R AMを備える こ と は、 同時に両方の媒体の再生をする こ と はないのであるから無駄であって、 コ ス ト上昇を招 く と い う 課題が ある。 また、 D V D再生装置に S R AMではなく D R A Mが用い られて いるのも 、 コ ス ト を抑える と い う経済的な理由からである。  Conventionally, as a means (data buffer) for retaining data, CD-ROMs have 2 kBytes to 4 kBytes of SRAM, and DVDs have 256 kBytes of RAM. A 2 kByte DRAM has been used. When developing a device that can play both CD-ROM and DVD, it is necessary to equip the DRAM with as much as 256 kBytes, which is necessary for error correction of DVDs. Providing a 2 kByte SRAM for error correction of a CD-ROM is wasteful because both media are not played simultaneously. There is an issue of raising costs. In addition, DRAM instead of SRAM is used for the DVD playback device because of the economical reason of reducing costs.
C D— R OMと D V Dの両方に対応する再生装置を開発する場合、 D V Dの誤 り訂正のために必要な 2 5 6 k B y t e 力 ら 5 1 2 k B y t e の D R A Mを、 C D— R O Mのデータノ ッ フ ァ と しても動作でき る よ う にする こ とが可能であれば、 コ ス ト の上昇を抑える こ と ができ る。 と ころが、 D R AMは、 一旦 R O Wア ド レ スを発行した後の同一 R O Wァ ドレス内のデータ アクセスは高速であるが、 異なる R O Wをアク セスに は別の R O Wァ ド レス発行な どのア ク セスサイ ク ルが余分に必要と なつ て、 アクセスが遅 く なる。 特に C D — R O Mの C 2 訂正および出力のた めの読み出 しは、 ァ ドレスが不規則と なって異なる R OWァ ドレスにま たがるアク セスが多く な り 、 ア ク セス に時間が掛かり過ぎて実時間処理 に間に合わないと い う 問題がある。 When developing a playback device that supports both CD-ROMs and DVDs, 512 kBytes of DRAM required for error correction of DVDs is replaced with 512 kBytes of DRAM. If it is possible to operate even as a data knocker, the rise in cost can be suppressed. In the DRAM, however, data access within the same ROW address after issuing a ROW address once is fast, but access to different ROWs requires a different ROW address. Access is slowed by requiring extra access cycles. Especially for CD-ROM C 2 correction and output In the read operation, the address becomes irregular and the number of accesses over different row addresses increases, and the access takes too much time and cannot be performed in time for real-time processing. There's a problem.
こ のよ う に、 C D— R OM、 D V Dの誤り 訂正の規格に準拠するため には、 ある程度のデータ量が入力されないと誤り 訂正処理が開始できな いため、 ノ ッフ ァ メモ リ が必要であ り 、 また価格の制約上、 ノ ッファメ モ リ は D R AMで構成する こ とが望ま しい。 そ して、 ノ ッ ファ メモ リ は D V Dと C D— R OMの共用と して、 D VD ドライ ブ装置で C D— R O Mも読み出すこ と ができ る よ う にしたい。 さ らに、 D R AMは同一 R OWア ド レ ス内のアクセスは高速であるが、 異なる R OWァ ド レス にま たがるラ ンダムアクセスは極端に低速と なる。  In order to comply with the CD-ROM and DVD error correction standards, error correction processing cannot be started unless a certain amount of data is input. In addition, due to price constraints, it is desirable that the nofee memory be composed of DRAM. Also, we want to share the DVD memory with the DVD-ROM and the CD-ROM so that the DVD-ROM drive can read the CD-ROM as well. In addition, the DRAM has a high speed access within the same row address, but a random access across different row addresses is extremely slow.
そこで、 本発明の 目 的は、 これら従来の課題を解決し、 D R AMの同 一 R OWァ ド レス内の高速ア ク セスを利用でき 、 また特に高速で高価な メモ リ を用いる こ と なく 、 安価な構成で、 媒体から読み出 されたデータ の ノ ッフ ァ メ モ リ への書き込み、 D V D、 C D— R OMの第 1 の訂正処 理と第 2の訂正処理のための読み出 し と書き込みに好適なデータ処理装 置および処理方法を提供する こ と にある。 発明の開示  Therefore, an object of the present invention is to solve these conventional problems, to use high-speed access in the same row address of DRAM, and without using particularly high-speed and expensive memory. Inexpensive configuration, writing data read from media to non-volatile memory, reading for DVD, CD-ROM first and second correction processing And to provide a data processing device and a processing method suitable for writing. Disclosure of the invention
本発明のデータ処理装置では、 媒体から読み出 した信号の前処理を行 う手段と、 前処理した結果を D R AMに書き込む (第 1 の D R AMァク セス) 手段と 、 前記 D R AMから第 2 の訂正のためのデータを読み出す (第 2の D R AMア ク セ ス) 手段と 、 訂正したデータを後段に出力する ためのデータ を読み出す (第 3の D R AMア クセス) 手段と、 前記第 1 第 2及び第 3の D R AMアクセスが数ワー ドに渡ってそれぞれ同一 R O Wァ ド レス 内に収納される よ う に構成されたア ク セ ス制御回路を備える こ と を特徴と している。 In the data processing device of the present invention, a means for preprocessing a signal read from a medium, a result of the preprocessing is written in a DRAM (first DRAM access) means, Means for reading out data for second correction (second DRAM access); means for reading out data for outputting corrected data to a subsequent stage (third DRAM access); 1 It is characterized by having an access control circuit configured so that the second and third DRAM accesses are stored in the same ROW address over several words, respectively.
また、 本発明のデータ処理方法では、 入力回路から D R AMへの書き 込みと、 第 2の訂正処理のための D R AMからの読み出 しで、 アクセス されるデータが適当なヮ一 ド数の単位で D R AM上のそれぞれ同一 R O Wァ ド レス内に割 り 付け られており 、 それぞれのア ク セスにおいて R O Wァ ドレス と該 R OW內のカラムァ ド レスを該ヮ一 ド数分連続して発行 する D R AMア ク セス制御を行 う こ と を特徴と している。  Further, in the data processing method of the present invention, the data accessed by the writing from the input circuit to the DRAM and the reading from the DRAM for the second correction processing have an appropriate number of bits. Each unit is allocated in the same ROW address on the DRAM, and in each access, the ROW address and the column address of the ROW are continuously issued for the number of addresses. It is characterized by performing DRAM access control.
これによ り 、 D R AMの同一 R OWァ ド レ ス内の高速なアクセスを利 用する こ と ができ、 異なる媒体からの信号の誤 り訂正に共通に対応する こ とができ るので、 高速で高価なメ モ リ を用いる必要がな く 、 C D— R OMと D V Dの誤 り訂正を並列処理する こ と ができ る。 また、 内部バス に接続する入力回路、 出力回路をシステムに適応する よ う に設計するこ と によ り 、 D R AMア ク セ スを含めて訂正処理の回路を若干の変更によ り 異なるシステ ム に転用でき るので、 開発コ ス ト も削減する こ と ができ る。 図面の簡単な説明  As a result, high-speed access within the same ROW address of the DRAM can be used, and it is possible to commonly cope with error correction of signals from different media. This eliminates the need to use high-speed and expensive memory, and enables parallel processing of CD-ROM and DVD error correction. In addition, by designing the input and output circuits connected to the internal bus to adapt to the system, the correction processing circuit, including the DRAM access, may be changed slightly depending on the system. Since it can be converted to a system, development costs can also be reduced. BRIEF DESCRIPTION OF THE FIGURES
図 1 は、 本発明の第 1 の実施例を示すデータ処理装置のプロ ッ ク 図で ある。  FIG. 1 is a block diagram of a data processing device according to a first embodiment of the present invention.
図 2は、 図 1 における入力回路の詳細なプロ ッ ク 図である。  FIG. 2 is a detailed block diagram of the input circuit in FIG.
図 3は、 図 1 における第 1 のデータ並べ替え回路及びカ ウンタの詳細 なブロ ック 図である。 図 4 は、 C D— R OM信号の入力回路の動作を説明する タイ ミ ングチ ャ一 トである。 FIG. 3 is a detailed block diagram of the first data rearrangement circuit and counter in FIG. FIG. 4 is a timing chart illustrating the operation of the input circuit for the CD-ROM signal.
図 5は、 C D— R OMデータの 8 ビッ ト ワー ド D R AM上のデータ 割 り 付け例を示す図である。  FIG. 5 is a diagram showing an example of data allocation on an 8-bit word DRAM of CD-ROM data.
図 6は、 D V Dデータの 8 ビッ ト ワー ド D R AM上のデータ割 り 付 け例を示す図である。  FIG. 6 is a diagram showing an example of data allocation on an 8-bit word DRAM of DVD data.
図 7は、 本発明の第 2のデータ並べ替え回路の一実施例を示す構成図 である。  FIG. 7 is a configuration diagram showing one embodiment of the second data rearranging circuit of the present invention.
図 8は、 C D— R OMデータ の 1 6 ビッ ト /ヮ一 ド D R AM上のデー タ割 り 付け例を示す図である。  FIG. 8 is a diagram showing an example of data allocation on 16-bit / lead DRAM of CD-ROM data.
図 9は、 D V Dデータの 1 6 ビッ ト /ヮー ド D R AM上のデータ割 り 付け例を示す図である。  FIG. 9 is a diagram showing an example of data allocation on 16 bits / code DRAM of DVD data.
図 1 0は、 本発明の第 2 のデータ並べ替え回路の他の実施例を示す構 成図である。  FIG. 10 is a configuration diagram showing another embodiment of the second data rearranging circuit of the present invention.
図 1 1 は、 C D— R OMデータの 3 2 ビッ ト Zワー ド D R AM上のデ ータ割り 付け例を示す図である。  FIG. 11 is a diagram showing an example of data allocation on CD-ROM data on a 32-bit Z word DRAM.
図 1 2は、 D V Dデ一タの 3 2 ビッ ト ワー ド D R AM上のデータ割 り 付け例を示す図である。  FIG. 12 is a diagram showing an example of data allocation on a 32-bit word DRAM of DVD data.
図 1 3は、 図 1 における出力回路の第 1 の実施例 ( 8 ビッ ト //ワー ド D R AM用) を示す構成図である。  FIG. 13 is a configuration diagram showing a first embodiment (for 8 bits / word DRAM) of the output circuit in FIG.
図 1 4は、 図 1 における出力回路の第 2の実施例 ( 1 6 ビッ ト /ヮー ド D R AM用) を示す構成図である。  FIG. 14 is a configuration diagram showing a second embodiment (for 16 bits / mode DRAM) of the output circuit in FIG.
図 1 5は、 図 1 における出力回路の第 3の実施例 ( 3 2 ビッ ト Zヮー ド D R AM用) を示す構成図である。 図 1 6は、 図 1 におけるア ド レス生成回路の実施例を示す構成図であ る。 FIG. 15 is a configuration diagram showing a third embodiment (for a 32-bit Z-mode DRAM) of the output circuit in FIG. FIG. 16 is a configuration diagram showing an embodiment of the address generation circuit in FIG.
図 1 7は、 本発明を適用 した C D— R OMZD V D再生装置の実施例 のブロ ッ ク 図である。  FIG. 17 is a block diagram of an embodiment of a CD-R OMZD VD reproducing apparatus to which the present invention is applied.
図 1 8は、 本発明のデータ処理回路の実施例を示す構成図である。 図 1 9は、 C D— R OM復調後の時系列データおよび C D— R OMデ —タの誤り 訂正符号のフォーマ ツ ト図である。  FIG. 18 is a configuration diagram showing an embodiment of the data processing circuit of the present invention. FIG. 19 is a format diagram of time-series data after CD-ROM demodulation and error correction codes of CD-ROM data.
図 2 0は、 C D— R OMの誤り訂正、 ディ イ ンタ ー リ ーブの規格を示 す図である。  FIG. 20 is a diagram showing the standard of error correction and deinterleaving of CD-ROM.
図 2 1 は、 C D— R OM復調後の時系列データおよび C D— R OMデ ータの誤り 訂正符号のフ ォ一マ ツ ト図である。  FIG. 21 is a format diagram of the time-series data after the CD-ROM demodulation and the error correction code of the CD-ROM data.
図 2 2は、 本発明の第 2の実施例を示すデータ処理装 Sのブロ ック図 である。  FIG. 22 is a block diagram of a data processing device S showing a second embodiment of the present invention.
図 2 3は、 図 2 2 におけるマイ ク ロ プロセ ッ サの優先判定ルーチンの フ ロ ーチヤ一 トである。  FIG. 23 is a flowchart of the priority determination routine of the microprocessor in FIG.
図 2 4は、 図 2 2における復調回路からの w r i t e a c c e s s 処理ルーチ ンのフ ロ ーチヤ一ト である。  FIG. 24 is a flowchart of a writeaccess processing routine from the demodulation circuit in FIG.
発明を実施するための最良の形態 BEST MODE FOR CARRYING OUT THE INVENTION
本発明を よ り詳細に説明するために、 添付の図面に従ってこれを説明 する。  The present invention will be described in more detail with reference to the accompanying drawings.
図 1 は、 本発明の第 1 の実施例を示すデータ処理装置のブロ ック 図であ る。 FIG. 1 is a block diagram of a data processing device according to a first embodiment of the present invention.
データのバ ッ フ ァ に用いられる D R AM 1 8 と 入力回路 1 1 、 出力回 路 1 2、 データ処理のためのバッフ ァ レジス タ 1 4 が内部バス 1 3 を介 して相互に接続されている。 それぞれからのデータ転送要求信号が優先 順位判定回路 1 6 に入力されており 、 その判定結果にしたがったデータ が内部パス 1 3 に出力され、 また、 ア ド レス発生ア ク セス制御回路 1 7 では優先順位の判定結果に したがったァ ド レス発生を行なって、 D R A M l 8のアクセス制御を行なう。 DRAM 18 used for buffering data, input circuit 11 and output circuit Route 12, buffer registers 14 for data processing are interconnected via an internal bus 13. The data transfer request signal from each is input to the priority determination circuit 16, the data according to the determination result is output to the internal path 13, and the address generation access control circuit 17 An address is generated in accordance with the result of the priority determination, and the access control of the DRAM 18 is performed.
媒体から入力された信号に対して、 入力回路 1 1 では媒体に適 した前 処理を施し、 D R AM 1 8に書き込むま と まったワー ド数になる まで蓄 積する。 こ こで 「ま と まったワー ド数」 とは、 シンク ロナス D R AMや 通常の D R AMのページモ一 ドアクセスで同一の R OWァ ドレス内に連 続して書き込まれるデータのワー ド数を指す。 入力回路 1 1 に必要なヮ ー ド数のデータが蓄えられたと きに、 優先判定回路 1 6 に書き込み要求 信号を送る。 要求が受け付けられたと き、 ア ド レス発生ア ク セス制御回 路 1 7では入力データ書き込みのためのア ド レス生成を行ない、 入力回 路 1 1 から内部バス 1 3 に出力 されたデ一タ を D R AMに書き込む。 訂正に必要な量のデータが D R AM 1 8 に格納されたと き、 データ処 理回路 1 5からデータ要求信号を制御回路 1 7 に出力する。 制御回路 1 7によ り 訂正のためのデータ要求信号が受け付け られる と 、 訂正のため の読み出 しのァ ド レス生成が行なわれ、 必要なデータが内部バス 1 3を 介してバ ッ フ ァ レジスタ 1 4 に蓄えられる。 データ処理回路 1 5 は必要 なデータをバッ ファ レジス タ 1 4から逐次読み出 して誤り 訂正な どの必 要な処理を行な う。  The input circuit 11 performs a pre-processing suitable for the medium on the signal input from the medium, and accumulates the signal until the number of words to be written into the DRAM 18 is reduced. Here, the term “collective word count” refers to the number of data words written continuously in the same row address by synchronous DRAM or normal DRAM page mode access. Point. When the required number of data is stored in the input circuit 11, a write request signal is sent to the priority determination circuit 16. When the request is accepted, the address generation access control circuit 17 generates an address for writing input data, and the data output from the input circuit 11 to the internal bus 13 is output. Is written to DRAM. When the amount of data necessary for correction is stored in DRAM 18, a data request signal is output from data processing circuit 15 to control circuit 17. When a data request signal for correction is received by the control circuit 17, an address for read for correction is generated, and necessary data is buffered via the internal bus 13. Stored in register 14. The data processing circuit 15 sequentially reads necessary data from the buffer register 14 and performs necessary processing such as error correction.
発見された誤り の位置と値はシンボル単位で D R AM 1 8 をア ク セス して訂正される。 訂正されたデータは、 出力回路 1 2 を と おして定めら れたプロ ト コ ルで後段に送出される。 出力回路 1 2 も、 必要に応 じてデ —タ要求信号を優先判定回路 1 6 に送る。 The location and value of the found error are corrected by accessing DRAM 18 in symbol units. The corrected data is determined through the output circuit 12 It is sent to the subsequent stage using the specified protocol. The output circuit 12 also sends a data request signal to the priority determination circuit 16 as necessary.
優先判定回路 1 6は、 上記のメ モ リ ア ク セ ス要求の優先順位を判定し て、 優先度の高いものから順にアクセスを許可する こ と によって、 効率 良く 、 また リ アルタイム処理の制約を守 り ながら、 システムを動作させ る。 たと えば、 入力回路 1 1 からの要求は通常最優先に処理される。 入 力 されたデータが処理される前に失われる こ とがあってはならないため である。 図示した以外に、 D R AM 1 8の リ フ レ ッ シュ も優先度の高い 要求である。  The priority determination circuit 16 determines the priority of the above-mentioned memory access request, and permits access in descending order of priority, thereby improving efficiency and restricting real-time processing. Operate the system while observing the conditions. For example, requests from the input circuit 11 are usually processed with the highest priority. This is because the data entered must not be lost before it is processed. In addition to the illustration, refresh of DRAM 18 is also a high priority request.
図 2は、 図 1 における入力回路の詳細プロ ック図である。  FIG. 2 is a detailed block diagram of the input circuit in FIG.
C D— R OMと D VDの信号の誤り 訂正をする装置を構成する場合、 入力回路 1 1 の好適な実施例と しては、 図 2 に示すよ う に構成される。 C D— R O Mから復調回路を経て入力 されるデータ は 1 シンボル ( 8 ビ ッ ト) 刻みで、 それに同期 したク ロ ッ ク と フ レーム の先頭を示す信号と が入力 されている。 復調データ は第 1 のデータ並べ替え回路 1 1 1 を経 て、 C 1訂正に適 した順序に並べ替え られ、 C 1訂正回路 1 1 4 と第 2 のデータ並べ替え回路 1 1 2 に送られる。 C 1 訂正回路 1 1 4では訂正 処理全てを行なってもよいが、 最低限シン ドローム生成だけ行なって、 そのシン ド ロ ームを訂正演算回路 (図示省略) に転送してもよい。 こ の と き、 通常の C D— R OMディ スク では、 誤 り 発生頻度は 1 , 0 0 0 シ ンボル中 1 シンボル程度と 高く ない。 誤り のないデータ列のシン ドロ一 ムはゼロ になるので、 誤り があったシ ン ドロ ームのみを訂正処理回路に 転送する こ と にすれば、 訂正処理回路をよ り 効率よ く 使用する こ とがで さ る。 —方、 D V Dの誤り訂正のためには、 復調されたデータ とそれに同期 した復調ク ロ ック 、 E C Cプロ ッ ク の先頭を表す信号が入力されている。 さ ら に、 行ア ド レス信号が入力 されていれば、 何らかの原因で行ァ ド レ スが E C Cブロ ック内で不規則になった場合の救済措置に利用する こ と ができ る。 D V Dの誤り 訂正は、 復調回路から時系列に入力された信号 の順序のまま、 内符号訂正回路 1 1 5 に入力する こ と によ り 、 訂正処理 を実行でき る。 従って、 C D— R OMの場合と は異な り 、 第 1 のデータ 並べ替え回路 1 1 1 の必要はない。 また、 D R AMのア ド レッシングを 工夫する こ とによって、 第 2のデータ並べ替え回路 1 1 2 も不要になる 場合がある。 When a device for correcting errors of CD-ROM and DVD signals is configured, a preferred embodiment of the input circuit 11 is configured as shown in FIG. The data input from the CD-ROM through the demodulation circuit is in 1 symbol (8 bit) units, and a clock synchronized with that and a signal indicating the beginning of the frame are input. The demodulated data passes through the first data rearrangement circuit 111, is rearranged in an order suitable for C1 correction, and is sent to the C1 correction circuit 114 and the second data rearrangement circuit 112. . The C 1 correction circuit 1 14 may perform all the correction processing, but may perform at least the syndrome generation and transfer the syndrome to a correction operation circuit (not shown). At this time, the frequency of errors in a normal CD-ROM disc is not as high as about 1 symbol out of 1,000 symbols. Since the syndrome of an error-free data string becomes zero, if only the erroneous syndrome is transferred to the correction processing circuit, the correction processing circuit is used more efficiently. This is what happens. On the other hand, for error correction of DVD, demodulated data, a demodulation clock synchronized with the demodulated data, and a signal representing the beginning of an ECC block are input. In addition, if the row address signal is input, it can be used for rescue if the row address becomes irregular in the ECC block for any reason. The error correction of the DVD can be executed by inputting the signals to the inner code correction circuit 115 in the order of the signals input in time series from the demodulation circuit. Therefore, unlike the case of the CD-ROM, there is no need for the first data sorting circuit 111. By devising the addressing of the DRAM, the second data rearrangement circuit 112 may not be necessary.
図 3は、 図 2 における C D— R OM復調信号の第 1 のデータ並べ替え 回路とカ ウ ンタの構成例を示す図であ り 、 図 4は、 そのタイ ミ ングチヤ ― トである。  FIG. 3 is a diagram showing a configuration example of a first data rearrangement circuit and a counter of the CD-ROM demodulated signal in FIG. 2, and FIG. 4 is a timing chart thereof.
復調されたデータは、 復調ク ロ ッ ク に同期 して入力されている。 3 3 進カ ウンタ 1 1 9が C D— R O Mの復調ク ロ ッ ク を計数して計数値 i を 出力する。 計数値 i はフ レーム先頭信号が入力 される度に リ セ ッ ト され て、 0から 3 2の値を出力する。 i = 0の と き C D— R OMの復調デー タはサブコー ドであるのでそのまま出力する。 i = l, 3 , 5, · · · 1 1 , 1 7 , 1 9, · ' · 2 7 のと き は、 図 2 0に示したよ う に 1 フ レ —ム遅延の必要ないデータであるので、 選択回路 1 2 2 によって端子 a が選ばれて出力 される。 i = 1 3 , 1 5, 2 9, 3 1 の と きは、 選択回 路 1 2 2によって端子 b が選ばれ反転されたデータが出力 される。 i = 2, 4 , 6, ' · · 3 2の と き 、 1 フ レーム遅延回路 1 2 1 を経由 して 出力する。 i = 2 , 4, · · · 1 2 , 1 8, 2 0, · ' · 2 8の と きは、 図 2 0に示 したよ う に 1 フ レーム遅延の必要なデータであるので、 選択 回路 1 2 2 によって端子 c が選ばれて出力される。 i = 1 4, 1 6, 3 0, 3 2は、 選択回路 1 2 2 によって端子 dが選ばれ反転されたデータ が出力される。 1 フ レーム遅延回路 1 2 1 は i = 2, 4, 6 , · · - 3 2の と きのみク ロ ック を入力 される 1 6段のシフ ト レジス タで構成され ている。 図 3に示 した回路を通過させる こ と によって、 C 1訂正に必要 なデータが適切な順序で供給される。 The demodulated data is input in synchronization with the demodulation clock. 3 The ternary counter 1 19 counts the demodulation clock of the CD-ROM and outputs the count value i. The count value i is reset each time the frame head signal is input, and outputs a value from 0 to 32. When i = 0, CD-ROM demodulated data is output as it is because it is a subcode. When i = l, 3, 5, · · · 11, 17, 19, · '· 27, the data does not require one frame delay as shown in Fig. 20. Therefore, the terminal a is selected by the selection circuit 122 and output. When i = 13, 15, 29, 31 the terminal b is selected by the selection circuit 122 and inverted data is output. When i = 2, 4, 6, '· · 32, output via 1-frame delay circuit 1 2 1. When i = 2, 4, · · · · 12, 18, 20, · '· 28, As shown in FIG. 20, since the data requires one frame delay, the terminal c is selected and output by the selection circuit 122. For i = 1, 4, 16, 30, and 32, the terminal d is selected by the selection circuit 122 and inverted data is output. The 1-frame delay circuit 1 21 is composed of 16-stage shift registers to which a clock is input only when i = 2, 4, 6, ...-32. By passing through the circuit shown in FIG. 3, the data necessary for C1 correction is supplied in an appropriate order.
図 3における端子 a, b , c , d に出力されている信号を、 図 4 の端 子 a , b, c , d に示してある。 選択回路 1 2 2の出力は、 C I 被訂正 データ と して示してあり 、 C 1訂正に適 した順序のデータ となっている。  The signals output to terminals a, b, c, and d in Fig. 3 are shown by terminals a, b, c, and d in Fig. 4. The output of the selection circuit 122 is shown as C I data to be corrected, and is data in an order suitable for C 1 correction.
C 1 被訂正データに同期 したク ロ ッ ク も出力 される。 また、 サブコー ド は通常の誤 り訂正の処理と は別系統で用いられるため、 別の端子から出 力される。 C 1 A clock synchronized with the data to be corrected is also output. Also, since the subcode is used in a different system from the normal error correction processing, it is output from another terminal.
第 2のデータ並べ替え回路 1 1 2 は、 ノ ッ フ ァ と して用いる D R AM の構成に適応でき るよ う に工夫して構成する必要がある。 D R AMには、 8 ビ ッ ト / 1 ワー ド、 1 6 ビ ッ トノ 1 ワー ド、 3 2 ビ ッ ト / 1 ワー ドな どの構成がある。 C D— R OMも D V Dも訂正単位は 1 シンボルすなわ ち 8 ビッ ト であるので、 D R AMのワー ド長に合わせて 1 、 2、 4 シン ボルのアクセスになる。  The second data rearrangement circuit 112 needs to be devised so as to be adaptable to the configuration of the DRAM used as a knocker. DRAMs are available in 8-bit / 1-word, 16-bit / 1-word, and 32-bit / 1-word configurations. Since the unit of correction is 1 symbol, that is, 8 bits, in both CD—ROM and DVD, access is made to 1, 2, and 4 symbols according to the word length of the DRAM.
8 ビ ッ ト / 1 ワ ー ドの D R AMを用いる場合は、 第 2 のデータ並べ替 え回路 1 1 2は不要で、 C 1被訂正データ をそのま ま D R AMのァ ドレ シングを工夫して書き込むだけでよい。  When an 8-bit / 1-word DRAM is used, the second data rearranging circuit 1 12 is not necessary, and the C 1 corrected data is left unaltered in the DRAM addressing. Just write.
図 5は、 C D— R OMデータの 8 ビッ ト /ワー ド D R AM上のデータ 割り 付け方法を示す図である。 C I被訂正データ と して出力 された ( 0, 0, 0 ) , (— 1 , 9 7, 1 ) , ( 0, 0, 2 ) , · · · , (一 1, 9 7, 3 1 ) は、 D R AMの 第 1 R OW内のア ド レス H ' 0 0 0, H ' 0 2 1 , H ' 0 4 2 , · · · , H ' 3 F Fに書き込まれる。 こ こで、 データ ( s , f , b ) は、 ( s : セ ク シ ョ ン番号、 f : フ レーム番号、 b : バイ ト番号) のバイ ト番号- 1 2, 1 3, 1 4 , 1 5 , 2 8 , 2 9, 3 0 , 3 1 のデータは全ビッ ト 反転されているが、 特に反転データである こ と が重要ではないので、 表 記上これを区別しない。 また、 ア ド レスの表記で用いた H ' Xは Xが 1 6進表示ある こ と を表す。 次のフ レームの C 1被訂正データ ( 0, 1, 0 ) , ( 0 , 0, 1 ) , ( 0, 1 , 2 ) , · · · , ( 0 , 0, 3 1 ) は、 D R AMの第 2 R OW內のア ド レス H ' 4 0 0 , H ' 4 2 1 , H ' 4 4 2, · · · , H ' 7 F Fに書き込まれる。 同様に第 3、 第 4 R OWに害 き込むと、 次は第 1 R OWに戾 り 、 C 1被訂正データ ( 0 , 4, 0 ) ,FIG. 5 is a diagram showing a method for allocating data on an 8-bit / word DRAM of CD-ROM data. (0, 0, 0), (—1, 97, 1), (0, 0, 2),..., (1-1, 97, 31) output as CI corrected data Are written to the addresses H'00, H'021, H'042, ..., H'3FF in the first ROW of the DRAM. Here, the data (s, f, b) is the byte number of (s: section number, f: frame number, b: byte number)-12, 13, 14, The data of 15, 28, 29, 30, and 31 are all bits inverted, but it is not important that the data is inverted data in particular. H'X used in address notation indicates that X is represented in hexadecimal. The C 1 corrected data (0, 1, 0), (0, 0, 1), (0, 1, 2),..., (0, 0, 31) of the next frame is the DRAM Are written to the addresses H'400, H'412, H'424, ..., H'7FF of the second row. Similarly, when the third and fourth ROWs are damaged, the next is the first ROW, and C1 corrected data (0, 4, 0),
( 0, 3 , 1 ) , ( 0, 4, 2 ) , · · · , ( 0 , 3, 3 1 ) を、 D R AMの第 1 R OW内のア ド レス H ' 3 E 0 , H ' 0 0 1 , H ' 0 2 2, · - · , H ' 3 D F に書き込む。 一見、 ア ド レス が不連続になってァ ド レ ス発生回路が複雑になる よ う に思われるが、 D R AMのカ ラムァ ド レス はオーバーフ ロ ーを無視した 1 0 ビッ ト加算器を用いて H ' 0 2 1 ( 1 0進で 3 3 ) を順次前の値に加え合わせてい く こ と で容易に実現でき る。 以上説明 してきた方法によ り データ を書き込むと 、 図 5 に示すよ う に 連続するア ド レス H ' 0 0 0 , H * 0 0 1 , H ' 0 0 2 , · · · , H ' 0 1 Fに C 2訂正に必要な一連のデータが配列される。 以下順次、 ア ド レス H ' 4 0 0 , H ' 4 0 1 , H ' 4 0 2, · · · , H ' 4 1 F , ア ド レス H ' 8 0 0, H ' 8 0 1 , H ' 8 0 2 , · · · , H ' 8 1 F , ア ド レス H ' C O O , H ' C 0 1 , H ' C 0 2 , , H ' C 1 Fにつづ いて、 ア ド レス H ' 3 E 0 , H ' 3 E 1 , H ' 3 E 2 , · · · , H ' 3(0, 3, 1), (0, 4, 2),..., (0, 3, 31) are converted to the address H'3E0, H 'in the first row of the DRAM. 0 0 1, H '0 2 2, ·-·, H' 3 Write to DF. At first glance, it seems that the address becomes discontinuous and the address generation circuit becomes complicated, but the DRAM address of the DRAM uses a 10-bit adder ignoring overflow. By adding H '0 2 1 (33 in 10 base) to the previous value sequentially, this can be easily realized. When data is written by the method described above, the continuous addresses H ′ 0 0 0, H * 0 0 1, H ′ 0 0 2,..., H ′ 0, as shown in FIG. A series of data required for C2 correction is arranged in 1F. Address H'400, H'401, H'402, H'41F, address H'800, H'801, H '8 0 2, · · ·, H' 8 1 F, add Following the address H'COO, H'C01, H'C02, H'C1F, the address H'3E0, H'3E1, H'3E2, ... ·, H '3
F Fに、 C 2訂正用の一連のデータが書き込まれている。 連続ア ド レス であるため、 ア ド レス生成回路の構成は容易である。 こ の実施例では、 バイ ト番号 2 8, 2 9, 3 0 , 3 1 も D R AMに書き込むと して説明 し ているが、 これらは C 1訂正用のパリ ティ であるので、 C 2訂正の後に 再度 C 1訂正を行なう などの理由がないかぎ り 、 特に書込みの必要はな い'。 A series of data for C2 correction is written in FF. Since the address is continuous, the configuration of the address generation circuit is easy. In this embodiment, it is described that byte numbers 28, 29, 30 and 31 are also written in the DRAM. However, since these are parity for C1 correction, C2 correction is performed. There is no need to write unless there is a reason such as performing C1 correction again after the '.
訂正の終了したデータの読み出しは、 図 2 0 に示したよ う に規格で定 められたディイ ンターリ ーブを施す必要がある。  When reading the corrected data, a deinterleave specified by the standard must be applied as shown in Fig. 20.
本実施例の D R AM上のデータ割付では、 ディイ ンター リ ーブを D R AM読み出 しのァ ドレッシングで実現する こ と ができ る。  In the data allocation on the DRAM in the present embodiment, the deinterleaving can be realized by the addressing of the DRAM reading.
図 2 0のディイ ンタ一 リ ーブには、 2バイ ト遅延が随所に含まれてい る。  The interleave in FIG. 20 includes a 2-byte delay everywhere.
これは、 D R AM上では第 1 と第 3 R OWあるいは第 2 と第 4 R OW の差に相当する。 したがって、 図 2 0 における ( 0, 0 , 0 ) , ( 0 , 3 , 1 ) , ( 0 , 2 4 , 6 ) , ( 0 , 2 7 , 7 ) , ( 0 6 2, 1 6 ) This is equivalent to the difference between the first and third rows or the second and fourth rows on the DRAM. Therefore, (0, 0, 0), (0, 3, 1), (0, 24, 6), (0, 27, 7), (062, 16) in FIG.
( 0 , 6 5 , 1 7 ) , ( 0 , 8 6 , 2 2 ) , ( 0 , 8 9 2 3 ) , ( 0 8, 2 ) , ( 0 , 1 1 , 3 ) , ( 0 , 3 2, 8 ) , ( 0 3 5 , 9 ) ,(0,65,17), (0,86,22), (0,8923), (08,2), (0,11,3), (0,32) , 8), (0 35, 9),
( 0, 7 0, 1 8 ) , ( 0, 7 3, 1 9 ) , ( 0, 9 4 2 4 ) , ( 0 9 7 , 2 5 ) , ( 0 , 1 6 , 4 ) , ( 0 , 1 9 , 5 ) , ( 0 , 4 0 , 1 0 ) , ( 0 , 4 3 , 1 1 ) , ( 0 , 7 8 , 2 0 ) , ( 0 , 8 1 , 2 1 )(0, 70, 18), (0, 73, 19), (0, 924), (097, 25), (0, 16, 4), (0, 1 9, 5), (0, 40, 10), (0, 43, 11), (0, 78, 20), (0, 81, 21)
( 1, 4 , 2 6 ) , ( 1, 7, 2 7 ) を出力する場合、 R OWア ド レス 更新と 4バイ トの R OWァ ド レス内読み出 しを以下のよ う に 6回繰 り返 すこ と によって達成される。 When (1, 4, 26) and (1, 7, 27) are output, the update of the row address and the reading in the 4-byte row address are performed six times as follows. repeat This is achieved by:
1 : 第 1 R OW ア ド レ ス H ' 0 0 0 , H ' 0 0 1, H ' 0 0 6, H ' 0 0 7  1: 1st ROW address H '0 0 0, H' 0 0 1, H '0 06, H' 0 0 7
2 : 第 3 R OW ア ド レ ス H ' 8 1 0 , H ' 8 1 1, H ' 8 1 6 , H ' 8 1 7  2: 3rd ROW address H'810, H'811, H'816, H'817
3 : 第 1 R OW ア ド レ ス H ' 0 0 2 , H ' 0 0 3 , H ' 0 0 8, H ' 0 0 9  3: 1st ROW address H '0 02, H' 0 0 3, H '0 08, H' 0 0 9
4 : 第 3 R OW ア ド レ ス H ' 8 1 2 , H ' 8 1 3 , H ' 8 1 8 , H ' 8 1 9  4: 3rd ROW address H '8 1 2, H' 8 13, H '8 18, H' 8 1 9
5 : 第 1 R OW ア ド レ ス H ' 0 0 4, H ' 0 0 5 , H ' 0 0 A , H ' 0 0 B  5: 1st ROW address H'04, H'05, H'00A, H'00B
6 : 第 3 R OW ア ド レ ス H ' 8 1 4, H ' 8 1 5, H ' 8 1 A , H ' 8 1 B  6: 3rd ROW address H'814, H'815, H'81A, H'81B
上記のアクセスは第 1 R OWと第 3 R OWを交互にアクセスするので 必ず しも効率が良いと は言い難いが、 出力に必要なデイ イ ンンター リ ー ブの処理 (図 2 0参照) を特別なハー ドウェアをもたず、 D R AMのァ ドレッシングだけで実現している点で、 簡略構成およびコ ス ト削減に効 果がある。  The above access is not necessarily efficient because the first row and the third row are alternately accessed, but the processing of the day interleave required for output (see Fig. 20) is performed. It has no special hardware and is realized only by DRAM addressing, which is effective for simplified configuration and cost reduction.
図 1 3は、 図 1 における出力回路の第 1 の実施例 ( 8 ビッ ト /ワー ド D R AM用) を示す構成図である。  FIG. 13 is a configuration diagram showing a first embodiment (for 8-bit / word DRAM) of the output circuit in FIG.
ア ド レ ッ シングを、 第 1 R OWと第 3 R OWの 2組に分けて、 図 1 3 に示すよ う な出力回路を付加 して、 ディ イ ンタ一 リ ーブを実現する こ と もでき る。  Addressing is divided into two sets, a first row and a third row, and an output circuit as shown in Fig. 13 is added to realize a deinterleaving. You can do it.
すなわち、 以下に示すよ う に、 図 5 に示す第 1 R OWと 第 3 R OWか らそれぞれ 1 2 ヮ一 ドずつ読み出す。 That is, as shown below, the first ROW and the third ROW shown in Fig. 5 And read them one by one at a time.
1 : 第 1 R OW ア ド レ ス H ' 0 0 0力 >ら H ' 0 0 B  1: First row address H'0 0 0 force H'0 0 B
2 : 第 3 R OW ア ド レ ス H ' 8 1 0 力 ら H ' 8 1 B  2: 3rd ROW address H '8 1 0 force H' 8 1 B
読み出されたデータは、 内部バスを通して図 1 3 に示した出力回路に 転送される。 データの転送は読み出 しク ロ ッ ク に同期して行なわれ、 出 力回路内の入力側の 2 4進カ ウ ンタ 1 3 1 で書き込むべき レジス タのァ ド レ スを指定する。 最初のデータが入力されたと き に、 2 4進カ ウンタ 1 3 1 は 0で、 読み出しク ロ ッ クが入力される毎に 1ずつ加算される。 デコーダ 1 3 2の出力はカ ウンタ値に対応して 0から 2 3 までの 2 4本 あ り 、 2 4個の出力ラ ッチ 1 3 4にデータが出力順に格納される よ う に ライ トイネーブルを発行する。 出力ラ ッチ 1 3 4 にデータがすべて格納 された後、 出力要求ク 口 ッ クが入力 される毎に 1 シ ンボルのデータが出 力される。  The read data is transferred to the output circuit shown in Fig. 13 via the internal bus. Data transfer is performed in synchronization with the read clock, and the address of the register to be written is specified by the input binary quaternion counter 131 in the output circuit. When the first data is input, the binary quaternary counter 13 1 is 0, and is incremented by 1 each time a read clock is input. There are 24 outputs from decoders 13 to 2 corresponding to the counter value, from 0 to 23, and data is stored in 24 output latches 13 4 so that data is stored in the output order. Issue enable. After all the data is stored in the output latches 13 and 14, one symbol of data is output each time the output request clock is input.
図 1 3では、 出力側のデコーダ 1 3 6 の出力の接続先を明示していな いが、 出力側の 2 4進カ ウンタ 1 3 7 のカ ウン ト値に対応 して上から順 に出力 される よ う に設計されている。 本実施例では、 入力側を工夫して、 データがラ ッチ回路 1 3 4 に出力順に格納される よ う に設計 してある。 そのため、 出力はシーケ ンシャ ルア ク セス であるから、 シフ ト レジス タ の形式を採用 してもよい。 また、 入力側を D R AMから読み出された順 に格納しておいて、 適切な順序で出力する設計にする こ と も可能である。 以上述べてきた C D— R OMの入力データ書き込み、 C 2訂正のため の読み出 し、 訂正済みデータの出力の、 3種の D R AMアクセスのア ド レ ッ シングは比較的規則性を見い出 しやすいので、 簡単な レジス タ と加 算器で構成する こ とができ る。 図 6 は、 本発明における D V Dデータのビ ッ ト /ワー ド D R AM上の データ割 り 付けの例を示す図である。 Although the connection destination of the output of the decoder 1336 on the output side is not explicitly shown in Fig. 13, the output is performed in order from the top corresponding to the count value of the binary quaternary counter 1337 on the output side. It is designed to be In the present embodiment, the input side is devised so that the data is stored in the latch circuit 134 in the order of output. Therefore, since the output is a sequential access, a shift register format may be used. It is also possible to store the input side in the order read from the DRAM, and to design the output in an appropriate order. The above-mentioned three types of DRAM access addressing of CD-ROM input data writing, reading for C2 correction, and output of corrected data have relatively regularity. Since it is easy to output, it can be composed of simple registers and adders. FIG. 6 is a diagram showing an example of data allocation on DVD data bit / word DRAMs according to the present invention.
図 6 では、 同 じ D R AMを D VDから読み出 された信号の誤り 訂正に 使う 場合のデータの割付け方法が示されている。 復調回路から時系列的 に入力 される E C Cブロ ック 1行目 のデータ ( 0 , 0 , 0 ) , ( 0, 0, 1 ) , · · · ( 0, 0, 1 8 1 ) を D R AMの第 1 R OWから第 6 R O Wに順次書き込む。 第 1 R OWにはア ド レス H ' 0 0 0 0力 >ら H ' 0 0 1 Fまでにデータ ( 0, 0, 0 ) 力 >ら ( 0, 0 , 3 1 ) が格納される。 次のデータ ( 0 , 0, 3 2 ) か ら ( 0, 0, 6 3 ) は第 2 R OWのア ド レス H ' 0 4 0 0 から H, 0 4 I Fまでに格納され、 同様に第 3 、 第 4、 第 5、 第 6 R OWの先頭から順次データを書き込む。  FIG. 6 shows a data allocation method when the same DRAM is used for error correction of a signal read from DVD. The data (0, 0, 0), (0, 0, 1),... (0, 0, 181) of the first row of the ECC block input in chronological order from the demodulation circuit are added to the DRAM. From the first row to the sixth row. The first row stores the data (0, 0, 0) and the data (0, 0, 31) before the address H'00001F and H'001F. The next data (0, 0, 32) to (0, 0, 63) are stored from the address H'0400 to H, 04IF of the second ROW. Write data sequentially from the top of the third, fourth, fifth, and sixth ROWs.
E C Cブロ ッ ク 1行分のデータは 1 8 2ノ ィ トで 3 2 では割り 切れな いので、 第 6 R OWのア ド レス H ' 1 4 1 6 力 ら H ' 1 4 1 Fは未使用 領域と なる。 復調回路から続いて時系列的に入力 される E C Cプロ ック 2行目 のデータ ( 0, 1, 0 ) , ( 0, 1, 1 ) , · · · ( 0, 1, 1 8 1 ) は、 D R AMの第 1 R OWに戻って、 1行目 のデータの続きのァ ド レス H ' 0 0 2 0から H ' 0 0 3 Fまでに書き込まれる。 同様に E C Cブロ ック 3行目 力 ら 3 2行目 のデータは、 D R AMの第 1 R OW力 ら第 6 R OWに順次書き込まれる。 さ らに、 E C Cブロ ッ ク 3 3行目力 ら 6 4行目 のデ一タは D R AMの第 7 R OWから第 1 2 R OWに、 6 5 行目 力 ら 9 6行目 のデータは D R AMの第 1 3 R OW力、ら第 1 8 R OW に、 9 7行目から 1 2 8行目 のデータは D R AMの第 1 9 R OWから第 2 4 R OWに、 1 2 9行目 力 ら 1 6 0行目 のデータ は D R AMの第 2 5 R OWから第 3 0 R OWに、 1 6 1 行 目 力 ら 1 9 2行目 のデータ は D R AMの第 3 1 R OWから第 3 6 R OWに、 残 り の 1 9 3行目から 2 0 8 行目 のデータは D R AMの第 3 7 R O W力 Since the data for one row of the ECC block is 182 knots and cannot be divided by 32, the addresses of the 6th ROW, H'1 4 16 It is used area. The data (0, 1, 0), (0, 1, 1), (0, 1, 181) of the second row of the ECC block, which is input in time series from the demodulation circuit, are Returning to the first row of the DRAM, data is written from the address H'0202 to H'003F of the continuation of the data in the first row. Similarly, the data in the third to third rows of the ECC block are sequentially written to the first to sixth rows of the DRAM. In addition, the data in the ECC block 33, lines 3 to 64 are the data from the 7th row of DRAM to the 12th row, and the data in lines 65 to 96 are data in the DRAM. The 1st to 3rd row of the DRAM, the 1st to 18th row, the data from the 97th row to the 28th row, the data from the 19th row to the 24th row of the DRAM, 1 2 9 The data in the 16th row from the first row to the 26th row in the DRAM are changed from the 25th row to the 30th row in the DRAM. The data from the 31st row to the 36th row of AM and the remaining data from the 19th row to the 208th row are the 3rd row power of the DRAM.
ら第 4 2 R OWに、 それぞれ、 E C Cブロ ッ ク 1行 目力 ら 3 2行目 のデ ータ を D R AMの第 1 R OWから第 6 R OWに書き込んだのと 同様に、 順次書き込む。 The data of the first and second lines of the ECC block are sequentially written to the 42nd ROW in the same manner as the data written in the 1st ROW to the 6th ROW of the DRAM, respectively.
ただし、 最後の第 3 7 R O Wから第 4 2 R O Wには、 ア ド レス の規則 性を保つ意味から本来存在しない E C Cプロ ッ ク 2 0 9行目から 2 2 8 行目 のデータの領域を仮想的に割 り 付けてある。 実際には、 そのよ う な データは入力されないので、 こ の領域も未使用 となる。  However, the last 37th ROW to the 42nd ROW are virtual areas of the ECC block 209 to 228 which are not originally present in order to maintain the regularity of the address. Are assigned. In practice, no such data is entered, so this area is also unused.
図 2 に示 した実施例では、 内符号訂正の全部も し く は一部の実行を、 D R AMにデータ を格納する前に行な う 例を示 したが、 図 6 に示 したデ —タの割り 付けによれば、 內符号訂正に必要な一連の 1 8 2 シンボルが 3 2 シンボルずつ D R AMの同一 R O Wァ ド レスに格納されていて、 R OWァ ド レスの再発行な しに最大 3 2 シンボルまで連続して読み出すこ とができ るので、 データ を D R AMに格納した後に內符号訂正を行なつ ても よい。  In the embodiment shown in FIG. 2, all or a part of the inner code correction is executed before storing the data in the DRAM, but the data shown in FIG. 6 is used. According to the assignment of, a series of 18 2 symbols required for code correction are stored in the same ROW address of the DRAM by 32 symbols at a time, and a maximum without re-issuing the ROW address. Since up to 32 symbols can be read out consecutively, Δ code correction may be performed after storing the data in DRAM.
外符号訂正に必要な一連のデータは ( b , 0 , c ) , ( b , 1, c ) , · · · ( b, 2 0 7 , c ) である。 図 6 に示 したよ う に ( 0 , 0, 0 ) , ( 0, 1, 0 ) , · · · ( 0 , 3 1, 0 ) は D R A Mの第 1 R OWに格 納されていて、 R OWア ド レス の再発行な しに、 最大 3 2 シンボルまで 連続 して読み出すこ とができ る。 したがって、 外符号訂正に必要な一連 のデータ ( 0 , 0 , 0 ) , ( 0 , 1 , 0 ) , · · · ( 0, 2 0 7 , 0 ) を読み出すには、 以下のステ ップを行なえばよい。  A series of data necessary for outer code correction is (b, 0, c), (b, 1, c),... (B, 207, c). As shown in FIG. 6, (0, 0, 0), (0, 1, 0),... (0, 31, 0) are stored in the first row of the DRAM. Up to 32 symbols can be read continuously without reissuing the OW address. Therefore, to read a series of data (0, 0, 0), (0, 1, 0),... (0, 207, 0) necessary for outer code correction, the following steps must be taken. Just do it.
1 : 第 1 R OW H ' 0 0 0 0, 0 0 2 0 , 0 0 4 0, · · · , 0 3 E 0 1: 1st ROW H '0 0 0 0, 0 0 2 0, 0 0 4 0, · · ·, 0 3 E 0
2 : 第 7 R OW H ' 1 8 0 0 1 8 2 0, 8 4 0 , 1 B E 0  2: 7th ROW H '1 800 0 1 8 2 0, 84 0, 1 BE 0
3 : 第 1 3 R OW H ' 2 0 0 0 2 0 2 0 , 2 0 4 0 , 2 3 E 0  3: 1st 3 ROW H '2 0 0 0 2 0 2 0, 2 0 4 0, 2 3 E 0
4 : 第 1 9 R OW H ' 2 8 0 0 2 8 2 0 , 2 8 4 0 , · · · , 2 B E 0  4: 1st 9 ROW H '28 00 0 2 8 2 0, 2 8 4 0, · · ·, 2 BE 0
5 : 第 2 5 R OW H ' 3 0 0 0 3 0 2 0 , 3 0 4 0 , · · , , 3 3 E 0  5: 2nd 5 ROW H '3 0 0 0 3 0 2 0, 3 0 4 0, · ·,, 3 3 E 0
6 : 第 3 1 R OW H ' 3 8 0 0 3 8 2 0 , 3 8 4 0 , · · · , 3 B 6: 3rd ROW H '380 0 3 8 2 0, 3 84 0, · · ·, 3 B
E 0 E 0
7 : 第 3 7 R OW H ' 4 0 0 0, 4 0 2 0 , 4 0 4 0 , · ·. · , 4 1 E 0  7: 3rd 7 ROW H '400 0, 4 0 0, 4 0 4 0, · · · ·, 4 1 E 0
1 から 6 のステ ップは、 R OWア ド レスを発行した後、 3 2バイ ト連 続が可能であるが、 最後の第 7 ステ ップは R OWァ ド レス を発行 した後 1 6バイ ト以上の読み出 しは未使用領域のア ク セスになって好ま しく な い  Steps 1 through 6 issue a ROW address and can continue for 32 bytes, but the last seventh step issues an ROW address and issues a 16 Reading over bytes is not desirable because it accesses unused area.
E C Cブロ ック の 2列 目以降の読み出 しも同様の手順で行な う こ とが でき る。 訂正後のデータの読み出 しは、 最初の書込みと全く 同 じ順序 で行なえばよい。  Reading of the second and subsequent columns of the ECC block can be performed in the same manner. The read of the corrected data may be performed in exactly the same order as the first write.
図 6 には、 1 E C Cブロ ック分のみのデータ割 り 付けを示したが、 通 常の装置では、 最低限 3 E C Cプロ ッ ク のデータ を D R AM上に蓄積し て処理するのが一般的である。 すなわち、 第 1 の E C Cブロ ッ ク はデ一 タの書き込みに、 第 2の E C Cブロ ッ ク は訂正のためのアクセスに、 第 3の E C Cブロ ッ クは出力のための読み出 しに、 それぞれ区分し、 第 1、 第 2、 第 3 の E C Cブロ ック を処理が完了する毎にパイプライ ン的に使 い回 しをする ものである。 誤り 訂正時間の余裕を取るために、 4 E C C ブロ ッ ク以上のデータを蓄積して順次処理する場合もまれではない。 図 7は、 1 6 ビッ ト / 1 ワー ドの D R AMを用いる場合の、 第 2のデ ータ並べ替え回路の一実施例を示す図である。 Fig. 6 shows the data allocation for only one ECC block.However, with a normal device, data of at least 3 ECC blocks is usually stored in DRAM and processed. It is a target. That is, the first ECC block is for writing data, the second ECC block is for access for correction, The third ECC block is divided into readouts for output, and the first, second, and third ECC blocks are used in a pipeline manner each time processing is completed. Things. It is not uncommon to accumulate more than 4 ECC blocks of data and process them sequentially in order to allow time for error correction. FIG. 7 is a diagram showing an embodiment of the second data rearranging circuit when a 16-bit / 1-word DRAM is used.
バイ ト番号が偶数 ( i = l, 3, 5 , · . - 3 1 ) のデータは 4 フ レ ーム遅延を与えて上位バイ ト側へ、 バイ ト番号が奇数 ( i = 2, 4, 6, • . . 3 2 ) のデータは遅延な しで下位バイ ト側へ出力する。 図 4 のタ イ ミ ングチャー ト に示したよ う に、 データ ( 0 , 0 , 0 ) はデータ ( 0 , 3, 1 ) と組み合わされて出力 される。 第 2のデータ並べ替え回路で遅 延を受け、 組合せて出力 された 2バイ ト ( 1 6 ビ ッ ト ) は、 D R AMの 1 ヮ一 ドに書き込まれる。  Data with an even byte number (i = l, 3, 5,... 31) gives a 4-frame delay to the upper byte side, and odd byte numbers (i = 2, 4,. The data of 6, •. 32) is output to the lower byte without delay. As shown in the timing chart of FIG. 4, data (0, 0, 0) is output in combination with data (0, 3, 1). The two bytes (16 bits) output in combination after receiving the delay in the second data rearrangement circuit are written to the first DRAM.
図 8は、 C D— R OMデータの 1 6 ビッ ト ヮ一 ド D R AM上のデ一 タ の割 り 付け方法を示す図である。  FIG. 8 is a diagram showing a method of allocating data on 16-bit lead DRAM of CD-ROM data.
データ ( 0, 0, 0 ) と ( 0, 3, 1 ) の組合せででき る 2バイ トの データを { ( 0, 0, 0 ) , ( 0, 3, 1 ) } と表記する と 、 時系列で 出力 される 1 6 ワー ド { ( 0, 0 , 0 ) , ( 0 , 3 , 1 ) } , { ( 0, 0, 2 ) , ( 0, 3, 3 ) } , { ( 0 , 0, 4 ) , ( 0, 3, 5 ) } , · · · , { ( 0 , 0 , 3 0 ) , ( 0, 3, 3 1 ) } を 01 八^1の第 1 1 0 W内のア ド レス H ' 0 0 0, H ' O i l , H ' 0 2 2 , · · · H ' O F Fに書き込む。 その後、 データ { ( 0, 1 , 0 ) , ( 0, 4 , 1 ) } , ( ( 0 , 1 , 2 ) , ( 0 , 4 , 3 ) } , ( ( 0, 1 , 4 ) , ( 0 , 4 , 5 ) } , · · · , { ( 0, 1, 3 0 ) , ( 0, 4, 3 1 ) } を D R AM の第 2 R OW内のア ド レス H ' 1 0 0, H ' 1 1 1 , H ' 1 2 2, · · · H ' I F F に書き込む。 これを順次 D R AMの第 8 R OWまで書き込ん だ後、 データ { ( 0 , 8 , 0 ) , ( 0, 1 1 , 1 ) } , { ( 0, 8 , 2 ) , ( 0 , 1 1 , 3 ) } , { ( 0 , 8 , 4 ) , ( 0, 1 1 , 5 ) } , · · · , { ( 0, 8, 3 0 ) , ( 0 , 1 1 , 3 1 ) } を再び D R AMの第 1 R OW内のア ド レス H ' 0 F 0 , H ' 0 0 1 , H ' 0 1 2, · · - H ' 1 E Fに書き 込む。 R OWァ ド レ スは第 1 から第 8までを繰り返せばよ く 、 C O L UM Nァ ド レスは R OWァ ド レ ス が変わる度に適当な初期値を与 え、 その後、 オーバ—フ ローを無視して H ' 1 1 ( 1 0進で 1 7 ) づっ 加算 していけばよい。 この結果、 図 8 から も明らかなよ う に、 ア ド レス の下位 4 ビ ッ ト H ' 0から連続する 1 6 ヮ一 ドは C 2訂正に必要な一連 の 3 2 シンポルになっている。 If two bytes of data formed by a combination of data (0, 0, 0) and (0, 3, 1) are expressed as {(0, 0, 0), (0, 3, 1)}, 16 words {(0,0,0), (0,3,1)}, {(0,0,2), (0,3,3)}, {(0,0) , 4), (0, 3, 5)},..., {(0, 0, 30), (0, 3, 31)} are converted to the values in the first 110 W of 01 8 ^ 1. Write to the address H'0 0 0, H'Oil, H'022, H'OFF. After that, the data {(0,1,0), (0,4,1)}, ((0,1,2), (0,4,3)}, ((0,1,4), (0 , 4, 5)},..., {(0, 1, 3 0), (0, 4, 3 1)} Write to the addresses H'100, H'111, H'122, ... H'IFF in the second ROW of. After this is sequentially written to the 8th ROW of the DRAM, the data {(0, 8, 0), (0, 111, 1)}, {(0, 8, 2), (0, 11,, 3)}, {(0, 8, 4), (0, 11, 5)}, ..., {(0, 8, 30), (0, 11, 3 1)} Write to addresses H'0F0, H'0101, H'0112, ... -H'1EF in the first ROW of AM. The ROW address only needs to be repeated from the first to the eighth. The COLUMN address gives an appropriate initial value every time the ROW address changes, and then overflows. Is ignored and H '1 1 (10 in base 10) should be added. As a result, as is evident from FIG. 8, the successive 16 bits from the lower 4 bits H'0 of the address are a series of 32 symbols necessary for C2 correction.
訂正の終了 したデータの読み出 しは、 図 2 0 に示 したよ う に規格で定 められたディ イ ンターリ ーブを施す必要がある。 本実施例の D R AM上 のデータ割付ではデイイ ンター リ ーブを D R AM読み出 しのァ ド レッシ ングで実現する こ とができ る。 図 2 0 のディ イ ンターリ ーブには、 2ノ ィ ト遅延が随所に含まれている。  When reading out data after correction, it is necessary to apply the deinterleaving specified by the standard as shown in Fig. 20. In the data allocation on the DRAM in the present embodiment, the day interleaving can be realized by the DRAM addressing of the DRAM reading. The deinterleave in FIG. 20 includes a 2-knot delay everywhere.
これは、 D R AM上では、 第 1 と第 3 、 第 2 と第 4 、 第 3 と第 5、 第 4 と第 6、 第 5 と第 7、 第 6 と第 8、 第 7 と第 1 、 あるいは第 8 と第 2 R OWの差に相当する。 したがって、 図 2 0 にある ( 0, 0, 0 ) , ( 0,On the DRAM, this is the first and third, the second and fourth, the third and fifth, the fourth and sixth, the fifth and seventh, the sixth and eighth, the seventh and first, Or it is equivalent to the difference between the 8th and 2nd ROW. Therefore, in FIG. 20, (0, 0, 0), (0,
3. 1 ) , ( 0 , 2 4 , 6 ) , ( 0 , 2 7 , 7 ) , ( 0 , 6 2 , 1 6 ) , ( 0, 6 5 , 1 7 ) , ( 0, 8 6, 2 2 ) , ( 0, 8 9 , 2 3 ) , ( 0,3.1), (0, 24, 6), (0, 27, 7), (0, 62, 16), (0, 65, 17), (0, 86, 2) 2), (0, 89, 23), (0,
8. 2 ) , ( 0 , 1 1 , 3 ) , ( 0 , 3 2 , 8 ) , ( 0 , 3 5 , 9 ) , ( 0, 7 0 , 1 8 ) , ( 0, 7 3, 1 9 ) , ( 0, 9 4, 2 4 ) , ( 0, 9 7 , 2 5 ) , ( 0 , 1 6 , 4 ) , ( 0 , 1 9 , 5 ) , ( 0 , 4 0 , 18.2), (0,11,3), (0,32,8), (0,35,9), (0,70,18), (0,73,19) ), (0, 94, 24), (0, 9 7, 25), (0, 16, 4), (0, 19, 5), (0, 40, 1
0 ) , ( 0 , 4 3 , 1 1 ) , ( 0 , 7 8 , 2 0 ) , ( 0 , 8 1 , 2 1 ) ( 1, 4 , 2 6 ) , ( 1, 7 , 2 7 ) を出力する場合、 R OWア ド レス 更新と 4バイ トの R OWア ド レ ス内読み出 しを、 以下のよ う に 6 回繰り 返すこ と によって達成される。 0), (0, 43, 11), (0, 78, 20), (0, 81, 21), (1, 4, 26), (1, 7, 27) Output is achieved by repeating the ROW address update and reading in the 4-byte ROW address six times as follows.
1 : 第 1 R OW ア ド レ ス H 0 0 0 , H ' 0 0 3  1: 1st ROW address H 0 0 0, H '0 0 3
2 第 3 R OW ア ド レ ス H 1 0 8 , H ' 1 ひ B  2 3rd ROW address H1 08, H'1 Hi B
3 第 1 R OW ア ド レス H 0 0 1 , H ' 0 0 4 3 1st ROW address H 0 0 1, H '0 0 4
4 第 3 R OW ア ド レ ス H 1 0 9, H ' 1 0 C 4 Third row address H109, H'10C
5 第 1 R OW ア ドレス H 0 0 2, H ' 0 0 5 5 1st ROW address H 0 0 2, H '0 0 5
6 第 3 R OW ア ド レス H 1 0 A , H ' 1 0 D 6 3rd ROW address H10A, H'10D
上記のアクセスは、 第 1 R OWと第 3 R OWを交互にアクセスするの で、 必ずしも効率が良いとは言い難いが、 出力に必要なディイ ン ンター リ ーブの処理 (図 2 0参照〉 を特別なハー ド ウェアをもたず、 D R AM のア ド レ ッ シ ン グだけで実現している点が有効である。  The above access is not necessarily efficient because the first row and the third row are alternately accessed, but the deinterleave processing required for output (see Fig. 20) It is effective to realize this only with DRAM addressing without special hardware.
—方、 ア ドレッシングを、 第 1 R OWと第 3 R OW の 2組に分けて、 図 1 4 に示すよ う な出力回路を付加 してディ イ ンターリ ーブを実現する こ と もでき る。 以下に示すよ う に、 第 1 R OWと第 3 R OWそれぞれ 6 ワー ドずつ読み出す。  On the other hand, the addressing can be divided into two sets, the first row and the third row, and an output circuit as shown in Fig. 14 can be added to realize interleaving. . As shown below, the first row and the third row are read out in six words each.
1 : 第 1 R OW ア ド レ ス H ' 0 0 0 力 ら H ' 0 0 5  1: 1st row address H '0 0 0
2 : 第 3 R OW ア ド レ ス H ' 1 0 8 力 ら H ' 1 0 D 2: 3rd OW address H'10 08 Force H'10D
読み出されたデータは、 内部バス を通して図 1 4 に示した出力回路に 転送される。 データの転送は読み出 しク ロ ッ ク に同期 して行なわれ、 出 力回路内の入力側の 1 2進カ ウ ンタ 1 4 1 で書き込むべき レジス タのァ ド レスを指定する。 最初のデータが入力 されたと き に 1 2進カ ウ ンタ 1 1 は 0で、 読み出 しク ロ ック が入力 される毎に 1 ずつ加算される。 デ コーダ 1 4 2の出力は、 カ ウンタ 1 4 1 の値に対応 して 0カ>ら 1 1 まで の 1 2本あ り 、 2 4個の出力ラ ッチ 1 4 4にデータが出力順に格納され る よ う にライ トイネーブルを発行する。 ラ ッチ 1 4 4にデータがすべて 格納された後、 出力要求ク ロ ッ クが入力される毎に、 1 シンボルのデ一 タが出力 される。 図 1 4 では、 出力側のデコーダ 1 4 6 の出力の接続先 を明示していないが、 出力側の 2 4進カ ウンタ 1 4 7のカ ウン ト値に対 応して上から順に出力される よ う に設計されている。 本実施例では、 入 力側を工夫 して、 データがラ ッチ回路 1 4 4 に出力順に格納される よ う に設計してある。 そのため、 出力はシーケンシャルアク セ ス であるから、 シフ ト レジスタの形式を採用 してもよい。 また、 入力側を D R AMから 読み出された順に格納しておいて、 適切な順序で出力する設計も可能で ある。 The read data is transferred to the output circuit shown in Fig. 14 via the internal bus. Data transfer is performed in synchronization with the read clock, and the register register to be written by the binary counter 14 1 on the input side in the output circuit Specify the address. When the first data is input, the binary counter 11 is 0, and is incremented by 1 each time a read clock is input. There are 12 outputs from 0 to 11 corresponding to the value of the counter 14 1, and the output of the decoder 14 2 is output to 24 output latches 14 4 in the order of output. Issue a write enable to be stored. After all data has been stored in the latch 144, every time an output request clock is input, one symbol of data is output. In FIG. 14, the connection destination of the output of the decoder 146 on the output side is not specified. It is designed to be In the present embodiment, the input side is devised so that data is stored in the latch circuit 144 in the order of output. Therefore, since the output is a sequential access, a shift register format may be used. It is also possible to design such that the input side is stored in the order read from the DRAM and the output is output in an appropriate order.
以上述べてきた C D— R OMの入力データ書き込み、 C 2訂正のため の読み出 し、 訂正済みデータの出力の、 3種の D R AMア ク セス のア ド レ ッ シングは比較的規則性を見い出 しやすいので、 簡単な レジス タ と加 算器で構成でき る。  The above-mentioned three types of DRAM addressing of CD-ROM input data writing, reading for C2 correction, and output of corrected data are relatively regular. Because it is easy to find, it can be composed of simple registers and adders.
図 9は、 同 じ 1 6 ビッ ト ワー ドの D R AMを D V Dから読み出され た信号の誤 り訂正に使う 場合のデータの割付け方法を示す図である。 復調回路から時系列的に入力 される E C Cプロ ッ ク 1行目 のデータ ( 0, 0, 0 ) , ( 0, 0 , 1 ) , · · · ( 0 , 0, 1 8 1 ) を、 D R AMの第 1 R OWから第 6 R OWに順次書き込む。 ただし、 連続する 2 シンボルをま と めて 1 6 ビッ ト ニ 1 ヮー ドのデータ にする。 第 1 R OW にはア ド レス H ' 0 0 0 0力 >ら H ' 0 0 0 F までにデータ { ( 0 , 0, 0 ) , ( 0 , 0, 1 ) } カ>ら { ( 0 , 0, 3 0 ) , ( 0 , 0 , 3 1 ) } が格納される。 次のデータ { ( 0, 0 , 3 2 ) , ( 0, 0, 3 3 ) } か ら { ( 0, 0 , 6 2 ) , ( 0 , 0 , 6 3 ) } は、 第 2 R OWのア ド レス H ' 0 1 0 0から H' 0 1 O Fまでに格納され、 同様に第 3、 第 4、 第 5、 第 6 R OWの先頭から順次データ を書き込む。 FIG. 9 is a diagram showing a data allocation method when the same 16-bit word DRAM is used for error correction of a signal read from a DVD. The data (0, 0, 0), (0, 0, 1),... (0, 0, 181) of the first row of the ECC block input in time series from the demodulation circuit are converted to the DR. Write sequentially to the first to sixth rows of AM. However, two consecutive symbols are combined into 16-bit data. 1st R OW The data H (0,0,0), data ((0,0,0), (0,0,1)) and ((0,0,3) 0), (0, 0, 31)} are stored. From the next data {(0,0,32), (0,0,33)}, {(0,0,62), (0,0,63)} is the second row The address is stored from H'0100 to H'01OF, and data is similarly written sequentially from the top of the third, fourth, fifth, and sixth ROWs.
E C Cブロ ック 1行分のデータは、 1 8 2バイ ト を 3 2 では割 り 切れ ないので第 6 R OWのア ド レス H ' 0 5 0 8カ ら 11 ' 0 5 O Fは未使用 領域と なる。 復調回路から続いて時系列的に入力 される E C Cプロ ック 2行目 のデータ { ( 0 , 1, 0 ) , ( 0, 1, 1 ) } , · · · { ( 0 , 1, 1 8 0 ) , ( 0 , 1 , 1 8 1 ) } は、 D R AMの第 1 R OWに戻つ て 1行目 のデータの続きのア ド レス H ' 0 0 1 0力 ら H ' 0 0 1 Fまで 第 2 R OWア ド レス H ' 0 1 1 0カ ら順次第 6 1¾ 0 ^ァ ド レス 1^ ' 0 5 1 Aに書き込まれる。 同様に、 E C Cブロ ッ ク 3行目から 1 6行目 のデ —タは、 D R AMの第 1 R OWから第 6 R OWに順次書き込まれる。 さ らに、 E C Cブロ ック 1 7行目 から 3 2行目 のデータは D R AMの第 7 R OWから第 1 2 R OWに、 3 3行目 ;^ら 4 8行目 のデータは D R AM の第 1 3 R OWから第 1 8 R OWに、 最後の 1 9 3行目 !^ら 2 0 8行目 のデータは D R AMの第 7 3 R OWから第 7 8 R OWに、 それぞれ、 E C Cブロ ッ ク 1行目力 ら 3 2行 目 のデータ を D R AMの第 1 R OWから 第 6 R OWに書き込んだのと同様に、 順次書き込む。 図 2 に示 した実施例では、 内符号訂正の全部も し く は一部を D R AM にデータを格納する前に実行する例を示したが、 図 9に示 したデータの 割り 付けによれば、 内符号訂正に必要な一連の 1 8 2 シンボルが 3 2シ ンボルずつ D R AMの同一 R OWァ ドレスに格納されていて、 R OWァ ド レスの再発行な しに最大 3 2 シンポルまで連続して読み出すこ とがで きるので、 データ を D R AMに格納した後に内符号訂正を行なってもよ い Since the data for one row of the ECC block is not divisible by 18 into 18 bytes, addresses in the sixth row H'0508 to 11'05 OF are unused areas. And The data of the second row of the ECC block input in time series following the demodulation circuit {(0,1,0), (0,1,1)},... {(0,1,18) 0), (0, 1, 18 1)} returns to the first row of the DRAM, and the address H '0 0 1 0 Up to F, the second ROW address H '0 11 0 is written sequentially to the 6 1¾0 ^ address 1 ^' 0 51 A. Similarly, the data of the ECC block lines 3 to 16 are sequentially written to the first to sixth rows of the DRAM. In addition, the data in the ECC block 17th line to 32nd line are changed from the 7th ROW to the 12th ROW of the DRAM, and the data in the 33rd line; From the 1st 3rd row of the AM to the 1st row, the last 19th row! The data on line 208 of the ECC block is changed from the 73rd row of the DRAM to the 78th row of the DRAM, and the data on the 32nd line of the ECC block is transferred from the first row of the DRAM to the first row of the DRAM. Write sequentially in the same way as writing to the 6th ROW from. In the embodiment shown in FIG. 2, all or part of the inner code correction is executed before storing the data in the DRAM, but according to the data allocation shown in FIG. A series of 18 2 symbols required for inner code correction are stored in the same R OW address of the DRAM in units of 32 symbols, and can be continuously up to 32 symbols without re-issuing the R OW address. It is possible to perform internal code correction after storing data in DRAM.
外符号訂正に必要な一連のデータは ( b , 0, c ) , ( b , 1 , c ) , · · . ( b , 2 0 7, c ) である。 図 9 に示 したよ う に ( 0, 0, 0 ) , ( 0 , 1 , 0 ) , · · · ( 0, 1 5, 0 ) は D R AMの第 1 R OWに格 納されていて、 R OWァ ド レス の再発行な しに最大 1 6 シンボルまで 連続して読み出すこ とができ る。 D R AMは 2バイ ト Zヮ一 ドである力 ら、 このと き ( 0 , 0, 1 ) , ( 0 , 1 , 1 ) , · · · ( 0 , 1 5 , 1 ) も同時に読み出すこ とができ るので、 第 0列 と第 1 列の外符号訂正を並 列に処理する と効率的である。 D R AMのア ド レス の発生方法は、 8 ビ ッ ト ヮ一 ドの D R AMの場合と 同様に容易に構成でき る。  A series of data necessary for outer code correction is (b, 0, c), (b, 1, c),... (B, 207, c). As shown in Fig. 9, (0, 0, 0), (0, 1, 0), ... (0, 15, 0) are stored in the first row of the DRAM. Up to 16 symbols can be read continuously without re-issuing the ROW address. In the case of DRAM, a force that is a two-byte Z-word can simultaneously read (0, 0, 1), (0, 1, 1), ... (0, 15, 1) at this time. Therefore, it is efficient to process the outer code correction of the 0th column and the 1st column in parallel. The method of generating the DRAM address can be easily configured as in the case of the 8-bit DRAM.
訂正後のデータの読み出 しは、 最初の書込 と全く 同 じ順序で行なえば よい。  The read of the corrected data may be performed in exactly the same order as the first write.
図 9にも、 図 6 と 同様 1 E C Cブロ ッ ク分のみのデータ割り 付けを示 したが、 通常の装置では、 前述のとお り 最低限 3 E C Cブロ ック のデー タを D R AM上に蓄積して処理するのが一般的である。  Fig. 9 shows the data allocation for only one ECC block, as in Fig. 6, but with a normal device, data of a minimum of 3 ECC blocks is stored on the DRAM as described above. Generally, it is processed.
図 1 0は、 本発明の第 2の実施例を示す第 2のデータ並べ替え回路の 構成図であって、 3 2 ビッ ト / 1 ヮ一 ドの D R AMを用いる場合を示す。 バイ ト番号が 4 の倍数 ( i = l , 5 , 9, · · - 2 9 ) のデータは 1 2 フ レーム遅延を与えて最上位バイ ト側、 バイ ト番号が 4 で割って 1 余 る数 ( i = 2, 6, 1 0, · ' · 3 0 ) のデータは 1 2 フ レーム遅延を 与えて第 2 上位バイ トへ、 バイ ト番号が 4 で割って 2余る数 ( i = 3 , 7, 1 1, · ' · 3 1 ) のデータは 8 フ レーム遅延を与えて第 3 上位バ イ トへ、 バイ ト番号が 4 で割って 3余る数 ( i = 4, 8, 1 2 , · · . 3 2 ) のデータは遅延な しで最下位バイ トへ、 合計 4バイ トに して出力 する。 図 4 のタイ ミ ングチャー トに示 したよ う に、 データ ( 0, 0 , 0 ) ( 0, 3, 1 ) ( 0, 8, 2 ) ( 0, 1 1, 3 ) が組み合わされて出力 される。 第 2 のデータ並べ替え回路で遅延を受け組合せて出力され 4パ イ ト ( 3 2 ビッ ト) を D R AMの 1 ワー ドに書き込む。 FIG. 10 is a configuration diagram of a second data rearranging circuit according to the second embodiment of the present invention, showing a case where a 32-bit / 1-bit DRAM is used. Data with a byte number that is a multiple of 4 (i = l, 5, 9, ... -29) gives a 12-frame delay and leaves the most significant byte side, byte number divided by 4 and one remainder The data of the number (i = 2, 6, 10, 0, · '· 30) is given a 12-frame delay to the second upper byte, and the byte number is divided by 4 to give the remainder (i = 3 , 7, 11, 1 · · · · 3 1) are delayed by 8 frames and sent to the third upper byte. The byte number is divided by 4 and the remainder is 3 (i = 4, 8, 1 2). The data of 3) is output to the least significant byte without delay, for a total of 4 bytes. As shown in the timing chart of FIG. 4, data (0, 0, 0) (0, 3, 1) (0, 8, 2) (0, 11, 1, 3) are combined and output. You. The second data rearrangement circuit receives the delay and combines and outputs 4 bytes (32 bits) to one word of DRAM.
図 1 1 は、 C D— R O Mデータの 3 2 ビッ ト /ワー ド D R AM上のデ —タの割り 付け方法を示す図である。  FIG. 11 is a diagram showing a method of allocating data on 32 bits / word DRAM of CD-ROM data.
データ ( 0, 0 , 0 ) 、 ( 0, 3, 1 ) 、 ( 0, 8, 2 ) 、 ( 0, 1 1 , 3 ) の組合せででき る 4バイ トのデータ を { ( 0, 0, 0 ) , ( 0 , 3, 1 ) , ( 0 , 8, 2 ) , ( 0, 1 1 , 3 ) } と表記する と、 時系列 で出力 される 1 6 ワー ド { ( 0 , 0 , 0 ) , ( 0, 3, 1 ) , ( 0 , 8, 2 ) , ( 0 , 1 1 , 3 ) } , { ( 0 , 0, 4 ) , ( 0, 3 , 5 ) , ( 0, 8 , 6 ) , ( 0, 1 1, 7 ) } , · · · , { ( 0, 0, 2 8 ) , ( 0, 3, 2 9 ) , ( 0 , 8 , 3 0 ) , ( 0 , 1 1 , 3 1 ) } を D R AMの第 1 R OW内のア ド レス H ' 0 0 0 , H ' 0 0 9, H ' 0 1 2 , · ' - H ' 0 3 F に書き込む。 その後、 データ { ( 0 , 1 , 0 ) , ( 0, 4 , 1 ) , ( 0 , 9 , 2 ) , ( 0 , 1 2 , 3 ) } , { ( 0 , 1 , 4 ) , ( 0 , 4 , 5 ) } , ( 0 , 9 , 6 ) , ( 0 , 1 2 , 7 ) } , · · · , { ( 0 , 1 , 2 8 ) , ( 0, 4 , 2 9 ) , ( 0 , 9 , 3 0 ) , ( 0, 1 2, 3 1 ) } を D R AMの第 2 R OW内のア ド レ ス H ' 0 4 0 , H ' 0 4 9 , · · · H ' 0 7 F に書き込む。 これを順次 D R AMの第 1 6 R OWまで書き込 んだ後、 データ { ( 0 , 1 6 , 0 ) , ( 0 , 1 9 , 1 ) , ( 0 , 2 4 , 2 ) , ( 0 , 2 7 , 3 ) } , · · · , { ( 0 , 1 6 , 2 8 ) , ( 0 , 1 9 , 2 9 ) , ( 0 , 2 4 , 3 0 ) , ( 0 , 2 7, 3 1 ) } を再び D R A Mの第 1 R OW内のア ド レ ス H ' 0 3 8 , H ' 0 0 1 , H ' 0 1 2 , · · - H ' 0 3 6 に書き込む。 R OWア ド レスは第 1 から第 1 6 までを繰り 返せばよ く 、 C O L UMNァ ド レスは R OWァ ド レ ス が変わる度に適当 な初期値を与え、 その後、 ォ一バーフ ロ ーを無視して H ' 1 1 ( 1 0進 で 1 7 ) づっ加算 していけばよい。 この結果、 図 1 1 から も明 らかなよ う に、 ア ド レス の下位 3 ビッ ト H ' 0から連続する 4 ワー ドは C 2訂正 に必要な一連の 3 2シンボルになっている。 The data of (0,0,0), (0,3,1), (0,8,2), (0,11,3), which is a combination of (0,0,0,0), is converted to {(0,0,0,0) 0), (0,3,1), (0,8,2), (0,11,3)}, the 16 words {(0,0,0) output in time series ), (0,3,1), (0,8,2), (0,11,3)}, {(0,0,4), (0,3,5), (0,8, 6), (0,11,7)}, ..., {(0,0,28), (0,3,29), (0,8,30), (0,11) , 3 1)} is written to the addresses H ′ 0 0 0, H ′ 0 09, H ′ 0 1 2, · ′ −H ′ 0 3 F in the first ROW of the DRAM. Then, the data {(0,1,0), (0,4,1), (0,9,2), (0,12,3)}, {(0,1,4), (0, 4, 5)}, (0, 9, 6), (0, 12, 7)}, ..., {(0, 1, 2 8), (0, 4, 29), (0, 9, 30), (0, 12, 31)} are replaced by the address H′04 in the second ROW of the DRAM. 0, H'049, ... Write to H'07F. After sequentially writing the data up to the 16th ROW of the DRAM, the data {(0, 16, 0), (0, 19, 1), (0, 24, 2), (0, 2 7, 3)},..., {(0, 16, 28), (0, 19, 29), (0, 24, 30), (0, 27, 31) )} Is written again to the addresses H'038, H'0101, H'012,... -H'036 in the first row of the DRAM. The ROW address only needs to be repeated from the first to the 16th, and the COL UMN address gives an appropriate initial value every time the ROW address changes, and then the overflow is performed. Is ignored and H '1 1 (10 in base 17) should be added. As a result, as is evident from Fig. 11, four consecutive words from the lower three bits H'0 of the address are a series of 32 symbols required for C2 correction.
訂正の終了 したデータの読み出しは、 図 2 0 に示したよ う に規格で定 められたディイ ンターリ 一ブを施す必要がある。 本実施例の D R AM上 のデータ割付けでは、 ディ イ ンター リ ーブを D R AM読み出しのァ ドレ ッシ ングで実現する こ と ができ る。 図 2 0のディイ ンター リ ーブには、 2バイ ト遅延が随所に含まれている。 これは、 D R AM上では、 第 1 と 第 3、 第 2 と第 4 、 第 3 と第 5 、 第 4 と第 6 、 第 5 と第 7 、 第 6 と第 8、 . · ' 第 1 5 と第 1 、 あるいは第 1 6 と第 2 R OWの差に相当する。 し たがって、 図 2 0 にある ( 0 , 0, 0 ) , ( 0, 3 , 1 ) , ( 0, 2 4 , 6 ) , ( 0 , 2 7 , 7 ) , ( 0 , 6 2 , 1 6 ) , ( 0 , 6 5 , 1 7 ) , ( 0 , 8 6 , 2 2 ) , ( 0 , 8 9 , 2 3 ) , ( 0 , 8 , 2 ) , ( 0 , 1 1 , 3 ) , ( 0 , 3 2 , 8 ) , ( 0 , 3 5 , 9 ) , ( 0 , 7 0 , 1 8 ) , ( 0, 7 3 , 1 9 ) , ( 0 , 9 4 , 2 4 ) , ( 0, 9 7 , 2 5 ) , ( 0 , 1 6 , 4 ) , ( 0 , 1 9, 5 ) , ( 0 , 4 0 , 1 0 ) , ( 0 , 4 3 , 1 1 ) , ( 0 , 7 8 , 2 0 ) , ( 0 , 8 1 , 2 1 ) , ( 1 , 4, 2 6 ) ,To read the data after correction, it is necessary to apply the deinterleaving specified by the standard as shown in Fig. 20. In the data allocation on the DRAM of the present embodiment, the deinterleaving can be realized by the DRAM read addressing. The interleave of FIG. 20 includes a 2-byte delay everywhere. This means that on the DRAM, the first and third, the second and fourth, the third and fifth, the fourth and sixth, the fifth and seventh, the sixth and eighth,. And the first, or the difference between the 16 and the 2 ROW. Therefore, (0, 0, 0), (0, 3, 1), (0, 24, 6), (0, 27, 7), (0, 62, 1) in FIG. 6), (0, 65, 17), (0, 86, 22), (0, 89, 23), (0, 8, 2), (0, 11, 1, 3), (0, 32, 8), (0, 35, 9), (0, 70, 18), (0, 73, 19), (0, 94, 24), (0, 97, 25), (0, 16, 4), (0, 19, 5), (0 , 40, 10), (0, 43, 11), (0, 78, 20), (0, 81, 21), (1, 4, 26),
( 1 , 7 , 2 7 ) を出力する場合、 R OWア ド レス更新と 3 ワー ドの R OWァ ド レス内読み出 しを以下のよ う に 2回繰り返すこ と によって達成 される。 Output of (1, 7, 27) is achieved by repeating the update of the row address and reading in the 3-word row address twice as follows.
1 : 第 1 R OW ア ド レス H ' 0 0 0, H ' ひ 0 1 , H ' 0 0 2  1: 1st ROW address H '0 0 0, H' 1 0, H '0 0 2
2 : 第 3 R OW ア ド レス H ' 0 8 4 , H ' 0 8 5 , H ' 0 8 6 2: 3rd ROW address H'0884, H'0885, H'0886
3 2 ビッ ト /ワー ドであるのでアク セス回数は少なく てすむ反面、 パ イ ト単位のデータ (シンボル) の入れ替えまではア ド レ ッ シングだけで はできない。  Since it is 32 bits / word, the number of accesses can be reduced, but it is not possible to exchange data (symbols) in byte units only by addressing.
図 1 5は、 本発明の第 3の実施例を示す出力回路の構成図 ( 3 2 ビッ ト /ワー ド D R AM用) である。  FIG. 15 is a configuration diagram (for 32 bits / word DRAM) of an output circuit showing a third embodiment of the present invention.
規格どお り の出力順序を実現するには、 図 1 5に示したよ う なデイイ ンター リ ーブ回路が必要と なる。 読み出されたデータは、 内部バスを通 して図 1 5 に示した出力回路に転送される。 データ の転送は読み出 しク ロ ック に同期して行なわれ、 出力回路内の入力側の 6進カ ウンタ 1 5 2 で書き込むべき レジス タ のア ド レスを指定する。 1 ワー ドあた り 4 シン ポルであるので、 書き込まれる ラ ッチ 1 5 3 は 4個同時に指定される.。 最初のデータが入力されたと きに 6進カ ウンタ 1 5 2は 0で、 読み出 し ク ロ ックが入力される毎に 1ずつ加算 される。 デコーダ 1 5 1 の出力は カ ウンタ 1 5 2の値に対応 して 0から 5 までの 6本あ り 、 2 4個の出力 ラ ッチ 1 5 3にデータが出力順に格納される よ う にライ トイネーブルを 発行する。 ラ ッチ 1 5 3 にデータがすべて格納された後、 出力要求ク ロ ッ ク が入力 される毎に、 1 シンボルのデータ が出力 される。 To realize the output order according to the standard, a day interleave circuit as shown in Fig. 15 is required. The read data is transferred to the output circuit shown in Fig. 15 via the internal bus. Data transfer is performed in synchronization with the read clock, and the hexadecimal counter 152 on the input side in the output circuit specifies the address of the register to be written. Since there are four symbols per word, four latches to be written are specified at the same time. The hexadecimal counter 152 is 0 when the first data is input, and is incremented by 1 each time a read clock is input. The output of the decoder 15 1 has six lines from 0 to 5 corresponding to the value of the counter 15 2 so that the data is stored in the 24 output latches 15 3 in the order of output. Issues a write enable. After all data has been stored in latch 15 Each time a tick is input, one symbol of data is output.
図 1 5では出力側のデコーダ 1 5 5 の出力の接続先を明示していない が、 出力側の 2 4進カ ウンタ 1 5 6 のカ ウン ト値に対応して上から順に 出力 される よ う に設計されている。 本実施例では入力側を工夫して、 デ —タがラ ッチ回路に出力順に格納されるよ う に設計 してある。 そのため 出力はシーケンシャルア ク セスであるから、 シフ ト レジス タ の形式を採 用 してもよい。  Although the connection destination of the output of the decoder 155 on the output side is not explicitly shown in FIG. 15, it is output in order from the top corresponding to the count value of the binary counter 156 on the output side. It is designed to: In the present embodiment, the input side is devised so that data is stored in the latch circuit in the order of output. Therefore, since the output is sequential access, a shift register format may be used.
以上述べてきた C D— R OMの入力データ書き込み、 C 2訂正のため の読み出 し、 訂正済みデータの出力の、 3種の D R AMアクセスのア ド レ ッ シングは比較的規則性を見い出 しやすいので、 簡単な レジス タ と加 算器で構成できる。  The above-mentioned three types of DRAM access addressing of CD-ROM input data writing, reading for C2 correction, and output of corrected data have relatively regularity. Since it is easy to output, it can be composed of simple registers and adders.
図 1 2 は、 同 じ 3 2 ビッ ト ワー ドの D R AMを D V Dから読み出さ れた信号の誤り 訂正に使う場合のデータの割付け方法を示す図である。 復調回路から時系列的に入力 される E C Cブロ ッ ク 1行目のデータ ( 0, 0, 0 ) , ( 0, 0, 1 ) , · · · ( 0 , 0, 1 8 1 ) を、 D R AMの第 1 R OWから第 6 R OWに順次書き込む。 ただし、 連続する 4 シンボルをま と めて 3 2 ビッ ト = 1 ヮー ドのデータ にする。  FIG. 12 is a diagram showing a data allocation method when the same 32-bit word DRAM is used for error correction of a signal read from DVD. The data (0, 0, 0), (0, 0, 1), (0, 0, 181) of the first row of the ECC block input in time series from the demodulation circuit are converted to DR Write sequentially to the first to sixth rows of AM. However, 32 consecutive bits = 1 mode data is obtained by combining four consecutive symbols.
第 1 R OWにはア ド レ ス H ' 0 0 0 0力 ら H ' 0 0 0 7 までにデータ { ( 0 , 0 , 0 ) , ( 0 , 0 , 1 ) , ( 0, 0 , 2 ) , ( 0 , 0 , 3 ) } 力 >ら { ( 0 , 0, 2 8 ) , ( 0 , 0 , 2 9 ) , ( 0 , 0 , 3 0 ) , ( 0 , 0, 3 1 ) } が格納される。 次のデータ { ( 0, 0 , 3 2 ) , ( 0, 0 , 3 3 ) , ( 0 , 0 , 3 4 ) , ( 0, 0 , 3 5 ) } 力 >ら { ( 0 , 0 , 6 0 ) , ( 0 , 0, 6 1 ) , ( 0 , 0 , 6 2 ) , ( 0 , 0 , 6 3 ) } は第 2 R OWのア ド レス H ' 0 0 4 0力 ら H ' 0 0 4 7 までに格納され、 同様に 第 3 、 第 4 、 第 5、 第 6 R OWの先頭から順次データを書き込む。 The first ROW contains data {(0,0,0), (0,0,1), (0,0,2) from address H'00.00 to H'00.07. ), (0, 0, 3)} force> ((0, 0, 28), (0, 0, 29), (0, 0, 30), (0, 0, 31))} Is stored. The following data {(0,0,32), (0,0,33), (0,0,34), (0,0,35)} force> ({0,0,6) 0), (0, 0, 6 1), (0, 0, 6 2), (0, 0, 6 3)} are the addresses of the second row H '0 0 4 0 Stored by 0 4 7 Write data sequentially from the top of the third, fourth, fifth, and sixth ROWs.
E C Cブロ ック 1行分のデータは、 1 8 2ノ ィ ト を 3 2 では割 り 切れ ないので、 第 6 R OWのア ド レス H ' 0 1 4 5の下位 2バイ トから H ' 0 1 4 Fは未使用領域と なる。 復調回路から続いて時系列的に入力 され る E C Cブロ ック 2行目 のデータ { ( 0, 1 , 0 ) , ( 0, 1 , 1 ) , ( 0, 1, 2 ) , ( 0, 1, 3 ) } , · · · { ( 0 , 1, 1 7 8 ) , ( 0 , 1 , 1 7 9 ) , ( 0 , 1 , 1 8 0 ) , ( 0 , 1 , 1 8 1 ) } は、 D R AMの第 1 R OWに戻って 1行目 のデータの続きのァ ド レス H ' 0 0 0 8力 ら H ' 0 0 0 F まで第 2 R OWア ド レス H ' 0 0 4 8力 ら順次 第 6 R OWア ド レス H' 0 0 4 Fに書き込まれる。 同様に E C Cブロ ッ ク 3行目から 1 6行目 のデータは、 D R AMの第 1 R OWから第 6 R OWに順次書き込まれる。 さ らに、 E C Cブロ ック 1 7行 目から 3 2行 目 のデータは D R AMの第 7 R OWから第 1 2 R OWに、 3 3行目から 4 8行目 のデータは D R AMの第 1 3 R OWから第 1 8 R OWに、 最後 の 1 9 3行目から 2 0 8行目 のデータ は D R AMの第 1 5 1 R OWから 第 1 5 6 R OWに、 それぞれ、 E C Cブロ ッ ク 1行目力 ら 3 2行目 のデ ータ を D R AMの第 1 R OWから第 6 R OWに書き込んだのと 同様に、 順次書き込む。  Since the data for one line of the ECC block cannot be divided by 32 2 into 18 2 knots, the address H'0 of the sixth ROW H'0 14 F is an unused area. The data of the second row of the ECC block, which is successively input from the demodulation circuit, is {(0,1,0), (0,1,1), (0,1,2), (0,1) , 3)},... {(0, 1, 178), (0, 1, 179), (0, 1, 18 0), (0, 1, 18 1)} Returning to the first row of the DRAM, the address of the continuation of the data in the first row is H'0 0 8 to H '0 0 0 F. The second row address H' 0 0 4 8 The data is sequentially written to the sixth ROW address H'004F. Similarly, the data in the third to sixteenth lines of the ECC block are sequentially written to the first to sixth rows of the DRAM. In addition, the data in the ECC block 17th line to 32nd line is the data from the 7th ROW to the 12th ROW of the DRAM, and the data in the 33rd line to the 48th line is the data in the DRAM. The data from the 13th ROW to the 18th ROW, and the last data from the 19th row to the 28th row are ECC from the 15th ROW to the 15th ROW of the DRAM The data in the first and second blocks of the block are written sequentially in the same way as the data in the first to sixth rows of the DRAM are written to the second and third rows.
図 2 に示 した実施例では、 内符号訂正の全部も し く は一部を D R AM にデータを格納する前に実行する例を示したが、 図 1 2 に示したデータ の割 り 付けによれば、 内符号訂正に必要な一連の 1 8 2 シンポルが 3 2 シンボルずつ D R AMの 同一 R OWァ ド レス に格納されていて、 R OW ァ ド レスの再発行な しに最大 3 2 シンボルまで連続して読み出すこ とが でき るので、 データを D R AMに格納 した後に内符号訂正を行なっても よい。 In the embodiment shown in FIG. 2, an example is shown in which all or part of the inner code correction is executed before storing the data in the DRAM.However, the data allocation shown in FIG. According to this, a series of 18 2 symbols required for inner code correction are stored in the same ROW address of the DRAM in units of 32 symbols, and up to 32 symbols without re-issuing the ROW address. Data can be read continuously, so even if the inner code is corrected after storing the data in DRAM, Good.
外符号訂正に必要な一連のデータは ( b, 0, c ) , ( b , 1 , c ) , • · · ( b , 2 0 7, c ) である。 図 1 2 に示したよ う に ( 0 , 0, 0 ) , ( 0, 1 , 0 ) , · ' ' ( 0 , 7, 0 ) は D R AMの第 1 R OWに格 納されていて、 R OWァ ド レス の再発行な しに最大 8シンボルま で連続 して読み出すこ と ができ る。  A series of data necessary for the outer code correction is (b, 0, c), (b, 1, c),... (B, 207, c). As shown in Fig. 12, (0, 0, 0), (0, 1, 0), · '' (0, 7, 0) are stored in the first row of the DRAM, and R Up to 8 symbols can be read continuously without re-issuing the OW address.
D R AMは 4バイ ト ワー ドである力 ら 、 このと き、 第 1 列 ( 0, 0, 1 ) , ( 0, 1 , 1 ) , · · · ( 0 , 7 , 1 ) 、 第 2歹 U ( 0 , 0 , 2 ) , ( 0, 1 , 2 ) , · · · ( 0 , 7, 2 ) 、 第 3歹1』 ( 0, 0, 3 ) , ( 0, 1, 3 ) , · · · ( 0, 7, 3 ) も同時に読み出すこ とができるので、 第 0列から第 3列の外符号訂正を並列に処理する と効率的である。 D R AMのア ド レスの発生方法は、 8 ビッ トノワー ドの D R AMの場合と 同 様に容易に構成できる。 訂正後のデータの読み出しは、 最初の書込と全 く 同 じ順序で行なえばよい。  The DRAM is a 4-byte word. At this time, the first row (0, 0, 1), (0, 1, 1), ... (0, 7, 1), the second row U (0, 0, 2), (0, 1, 2), ... (0, 7, 2), 3rd system 1 "(0, 0, 3), (0, 1, 3), · · Since (0, 7, 3) can also be read out at the same time, it is efficient to process the outer code correction in the 0th to 3rd columns in parallel. The method of generating the address of the DRAM can be configured easily as in the case of the 8-bit word DRAM. The read of the corrected data may be performed in exactly the same order as the first write.
図 1 2 にも、 図 6 と同様に 1 E C Cブロ ッ ク分のみのデータ割 り 付け を示したが、 通常の装置では、 前述の とお り 最低限 3 E C Cブロ ックの データ を D R AM上に蓄積して処理するのが一般的である。  Fig. 12 shows the data allocation for only one ECC block, as in Fig. 6, but with the usual equipment, at least 3 ECC blocks of data are stored on the DRAM as described above. Generally, the data is accumulated and processed.
図 1 6は、 本発明の各実施例に適用するァ ド レス発生回路の構成図で ある。  FIG. 16 is a configuration diagram of an address generation circuit applied to each embodiment of the present invention.
加算回路 1 6 5 と加算回路 1 6 5の第 1及び第 2 の入力バス 、 出カバ ス、 複数の レジス タ と して、 R OWア ド レ ス レジス タ 1 6 3、 C O L T ド レス レジス タ 1 6 3 a 、 レジス タ 0 力 ら レ ジス タ n ( 1 6 4 ) で構成 されている。 R OWア ド レ ス レジスタ 1 6 3 と C O Lァ ド レス レジスタ 1 6 3 a の値は、 それぞれマ ス ク /オフセ ッ ト回路 1 6 7 をとお して、 マルチプ レ ク サ 1 6 8で選択されて D R AMのア ド レス端子に入力され ている。 マス ク /オフセ ッ ト回路 1 6 6は、 汎用の A L U ( A r i t h m e t i c L o g i c U n i t ) と レジス タを用いて構成する。 A L Uはビッ ト毎の論理演算 (論理和、 論理積、 排他的論理和など) と数 値加減算を行な う ので、 ァ ド レス値の一部を 0または 1 に固定するマス ク、 定数値を加算するオフセ ッ トを容易に実現でき る。 加算回路 1 6 5 の第 1 の入カノくス は、 R OWア ド.レス レジス タ 1 6 3、 C O.Lア ド レス レジス タ 1 6 3 a 、 レジス タ 0 から レジス タ n ( 1 6 4 ) の う ちの 1個 を選択して、 加算回路 1 6 5の一方に入力 し、 第 2 の入力パスは、 レジ ス タ 0力 ら レジス タ n ( 1 6 4 ) の う ちの 1 個を選択して加算回路 1 6 5の他方に入力する。 As the first and second input buses, output buses, and multiple registers of the adder circuit 165 and the adder circuit 165, the ROW address register 163, the COLT dress register It is composed of 163a, register 0 and register n (164). The values of the ROW address register 163 and the COL address register 1663a are respectively passed through the mask / offset circuit 1667. Selected by the multiplexer 1668 and input to the DRAM address terminal. The mask / offset circuit 1666 is configured using a general-purpose ALU (Arithmetic Logic Unit) and a register. ALU performs bitwise logical operations (logical addition, logical AND, exclusive OR, etc.) and numerical addition / subtraction, so masks that fix a part of the address value to 0 or 1 and constant values The offset for adding the sum can be easily realized. The first input of the adder circuit 16 5 is the row address register 16 3, the address register register 16 3 a, the register 0 to the register n (16 4 ) And input it to one of the adders 1 65.The second input path selects one of the registers n (1 64) from register 0. And input it to the other of the adders 1 65.
加算結果は、 出力バスを通して複数のレジスタ 1 6 4 , 1 6 3の う ち の 1個に書き込まれる。 また、 出力バスを通して直接値を レジス タ 1 6 4 , 1 6 3 に格納する こ と もできる。 図には示されていないが、 ァ ド レ ス生成回路は、 優先判定回路の結果を受けたシーケ ンス制御回路によつ て、 演算手順を与えられる。  The result of the addition is written to one of the registers 164 and 163 via the output bus. Also, the values can be directly stored in registers 1664 and 1663 through the output bus. Although not shown in the figure, the address generation circuit is given an operation procedure by a sequence control circuit that receives the result of the priority determination circuit.
以上述べてきたよ う に、 D R AMのワー ドのビッ ト数に応じて適当な 入力回路、 特に C D— R OMにおける第 2のデータ並べ替え回路、 と適 当な出力回路、 特に C D— R O Mにおけるディ イ ンター リ ーブ回路を備 える こ'と によって、 D R AMへのアクセスが同一 R OWァ ド レスへの連 続したヮ一 ドアクセスにま と める こ と ができ る。 こ のためページモー ド ア ク セスを利用 した高い転送レ一 トを得る こ とができて、 動作速度の低 い、 すなわち低価格の D R AMも有効に用いる こ と ができ る。 D R AM の 1 ワー ド当 り の ビッ ト数は多い程アクセスサイ ク ル数を減らすこ とが でき る反面、 ピン数が増える、 入力出力回路の規模が大き く なるなどの 欠点が発生 してく る。 こ の点が ト レー ドオフになる。 As described above, an appropriate input circuit according to the number of bits of the DRAM word, particularly the second data rearrangement circuit in the CD-ROM, and an appropriate output circuit, particularly the CD-ROM By providing a deinterleave circuit, the access to the DRAM can be integrated into a continuous read access to the same row address. As a result, a high transfer rate using page mode access can be obtained, and a low-speed DRAM, that is, a low-cost DRAM, can be used effectively. The larger the number of bits per word of DRAM, the more the number of access cycles can be reduced. On the other hand, there are disadvantages such as an increase in the number of pins and an increase in the scale of the input / output circuit. This point is traded off.
同一 L S I 上に D R AMを構成する場合にも、 以上述べてきた D R A M外付けの場合と ほぼ同様であるが、 1 ヮー ド当 り 8 ビッ ト とするのが 最も好適である。 オンチップ D R AMの場合、 ア ド レスマルチプレツ タ ス の必要がない、 すなわちロ ーァ ド レス と カ ラムア ド レスを同時に発 行でき る。 また、 同一口一ア ド レス のデータは一且一括して読み出され るので、 カ ラムァ ド レスを変化 しなが ら同一口 一ァ ド レス内のデータを 読み出す速度は十分早いので、 複数のシンボルをま と める第 2のデータ 並べ替え回路は必要ない場合が多い。  The configuration of the DRAM on the same LSI is almost the same as that of the external DRAM described above, but it is most preferable that the bit is 8 bits per mode. In the case of on-chip DRAM, there is no need for address multiplexing, that is, a load address and a column address can be issued simultaneously. In addition, since the data of the same address is read at once and collectively, the speed of reading the data in the same address while changing the column address is sufficiently fast. In many cases, a second data rearrangement circuit that collects the symbols of the symbols is unnecessary.
図 1 7は、 本発明を実施した C D— R OM, D V Dを再生する こ との でき る光ディ スク再生装置の一例を示す図である。  FIG. 17 is a diagram showing an example of an optical disc reproducing apparatus capable of reproducing CD-ROMs and DVDs embodying the present invention.
ディ スク を回転させるス ピン ドルモータ 1 7 4、 ディ ス クに光を照射 する レーザダイオー ド 1 7 2、 反射 した光を検出するフォ トディ テク タ Spindle motor 174 to rotate the disk, Laser diode 172 to irradiate the disk, Photodetector to detect the reflected light
1 7 3、 2個のレ一ザダイオー ド 1 7 2 を切 り 替えるァクチユエ一タ 1 7 1 、 レーザ一ダイオー ド 1 7 2、 フ ォ トディ テク タ 1 7 3の設置され たス テージを移動させるァクチユエ一タ 1 7 1 などの、 光学系機械系の 装置と 、 電気系の装置を組合せて構成されている。 C D— R OMと D V Dでは、 波長の異なる別のレーザダイ オー ド 1 7 2 をそれぞれ備えるこ とになる。 1 7 3 Switch the two laser diodes 17 2 Actuator 17 1, laser diode 17 2, move the stage where the photo detector 17 3 is installed It consists of a combination of optical and mechanical devices, such as actuators, and electrical devices. CD-ROM and DVD will have separate laser diodes 172 with different wavelengths.
電気系は、 マイ ク ロ コ ン ト ローラ 1 7 4が全体を制御 している。 マイ ク ロ コ ン ト ローラ 1 7 4 の指示によって、 レ一ザ制御回路 1 7 8が動作 して レーザー ドラ 1 7 6を通 して レーザダイオー ド 1 7 2の出力を 制御 し、 サ一ボ信号処理回路 1 7 9がァクチユエータ ドラ 1 7 5、 モータ ドライノ 1 8 0を通 して機械系の制御を行な う。 フォ トディ テク タ 1 7 3で検出された信号はアナロ グ信号処理回路 1 7 7 を通してサ一 ボ処理回路 1 7 9 と標本化 2値化回路 1 8 2 に入力 される。 サ一ボ信号 処理回路 1 7 9 に入力されている信号は、 ト ラ ッキングやフ ォーカ スの エラー情報で、 ステージの位置やレンズの微調整、 ス ピン ドルモータ の 回転数の調整の源信号と して用いられる。 標本化 2値化された情報は、 再生したいディ ス ク情報である。 The entire electrical system is controlled by the microcontroller 174. In accordance with the instruction from the microcontroller 1774, the laser control circuit 1778 operates to control the output of the laser diode 1772 through the laser The signal processing circuit 1 7 9 is an actuator Controls mechanical systems through motor dryno 180. The signal detected by the photodetector 173 is input to the servo processing circuit 179 and the sampling / binarization circuit 182 through the analog signal processing circuit 177. The signal input to the servo signal processing circuit 179 is tracking and focus error information, and the source signal for fine adjustment of the stage position and lens, and adjustment of the spindle motor speed. Used as Sampling The binarized information is the disk information to be reproduced.
フ ォ トディテク タ 1 7 3 の信号からデータに同期 したク ロ ック を再生 し、 そのク ロ ッ ク を使って標本化 2値化を行ない、 ディ ジタル信号を得 る。 得られたディ ジタ ル信号から規格に定め られた同期パターンを検出 して、 C D— R OMや D V Dのフ レームの開始タイ ミ ングを同定する。 再生ク ロ ッ クの同期状態、 同期パター ン検出の状態及び同期状態をマイ ク ロ コン ト ローラ 1 8 4 が監視して、 ァクチユエ一タ 1 7 1 、 サーボ、 レーザの制御、 および C D— R OM / D V Dのモー ド設定に ·用いる。  A clock synchronized with the data is reproduced from the signal of the photodetector 173, and the clock is used to perform sampling and binarization to obtain a digital signal. The synchronization pattern specified in the standard is detected from the obtained digital signal, and the start timing of the CD-ROM or DVD frame is identified. The microcontroller 184 monitors the synchronization status of the playback clock, the synchronization pattern detection status and the synchronization status, and controls the actuator 171, servo, laser, and CD-R. · Used for OM / DVD mode setting.
2値化されたシ リ アルのディ ジタル信号は、 C D— R OM /D V Dの モー ド設定に応じてそれぞれ 1 7 ビッ トまたは 1 6 ビ ッ ト のパラ レル信 号に変換され、 1 4 8復調、 1 6 8復調されて、 前述の実施例で示 した入力回路に入力される。 C D— R OMの場合は、 E F M ( E i g h t t o F o u r t e e n M o d u l a t i o n ) 変調の 1 4 ビッ トに接続のため 3 ビッ ト が追加されているので、 S Z P変換回路 1 8 5, 1 8 6の出力は 1 7 ビッ ト である。 The binarized serial digital signal is converted to a 17-bit or 16-bit parallel signal depending on the CD-ROM / DVD mode setting. The signal is demodulated and 168 demodulated and input to the input circuit shown in the above-described embodiment. In the case of CD-ROM, three bits are added for connection to 14 bits of Eight-to-Fourteen Modulation (EFM) modulation, so the outputs of the SZP conversion circuits 18 5 and 18 6 It is 17 bits.
入力回路、 出力回路、 ア ド レス生成回路、 優先判定回路、 誤り 訂正処 理回路、 D R AMなどの動作は、 既に示した実施例のとお り である。 出 力回路を通 して送出される訂正済みのデータ は、 プロ ト コル制御回路 1 8 7 によ っ て、 定められたプロ ト コ ルでパー ソナルコ ン ピュータ 、 映像 /音声再生機器など 1 8 8 に転送される。 The operations of the input circuit, the output circuit, the address generation circuit, the priority determination circuit, the error correction processing circuit, the DRAM, and the like are the same as those of the embodiment described above. The corrected data sent through the output circuit is sent to the protocol control circuit 1 According to 87, it is transferred to 188, such as a personal computer, video / audio playback device, etc., using the specified protocol.
マイ ク ロ コ ン ト ローラ 1 8 4は、 ディ スク が装填される と C D— R O Mも しく は D V D と仮定して、 レーザダイオー ド 1 7 2 を選択し、 サー ボ処理、 誤 り 訂正処理回路 1 9 2などを動作させる。 仮定が装填された ディ スク と は異なる場合は、 ク ロ ック が再生されない、 同期パターンが 検出できない、 誤り が訂正できないな ど、 マイ ク ロ コ ン ト ローラ 1 8 4 が監視している情報から判定して、 他方のディ ス ク の再生モー ドに切 り 替える。 こ のよ う にして、 媒体は自動判別される。  The microcontroller 184 selects the laser diode 172 assuming that a CD-ROM or DVD is loaded when the disc is loaded, and performs servo processing and error correction processing. Operate 1 9 2 etc. If the assumption is different from the loaded disc, the information monitored by the microcontroller 184, such as no clock playback, no sync pattern detection, and no error correction, And switch to playback mode of the other disk. In this way, the medium is automatically determined.
訂正処理能力を向上するために、 図 1 に示 したデータ処理回路 1 5を 並列プロセ ッサで構成する場合がある。 並列プロセ ッサを構成するプロ セ ッサエ レメ ン トを n個とする と、 n組の C D— R OMの C 1符号、 C 2符号、 D V Dの内符号、 外符号の受信符号を並列に入力する と効率が 良い。 すなわち、 D V Dの内符号の場合 n行、 外符号の場合 n列のデ一 タを n個のプロセ ッサエ レメ ン ト にそれぞれ入力 して並列処理を行な う, 図 1 8は、 本発明の一実施例を示すデータ処理回路の構成図であって . プロセ ッサエレメ ン ト P Eの数が 8個の場合の ッ ファ レジス タ とデー タ処理回路の構成を示す。  In order to improve the correction processing capability, the data processing circuit 15 shown in FIG. 1 may be constituted by a parallel processor. Assuming that the number of processor elements constituting the parallel processor is n, n sets of CDs—the C1 code and C2 code of ROM, the inner code of DVD, and the received code of outer code are input in parallel. It is efficient. That is, data of n rows in the case of the inner code of a DVD and n columns in the case of the outer code are input to n processor elements, respectively, to perform parallel processing. 1 is a configuration diagram of a data processing circuit according to an embodiment, showing the configuration of a buffer register and a data processing circuit when the number of processor elements PE is eight.
D R A Mは 1 6 ビッ ト ワー ド、 したがって内部バス も 1 6 ビッ ト幅 を想定している。 また、 D R AM上のデータ割 り 付けは、 C D— R OM の再生の場合、 図 8に示したとお り であ り 、 D V Dの再生の場合、 図 9 に示したとお り である。  DRAM is 16-bit words, so the internal bus is also assumed to be 16-bit wide. Also, the data allocation on the DRAM is as shown in FIG. 8 in the case of CD-ROM playback, and as shown in FIG. 9 in the case of DVD playback.
図 1 8 において、 フ ァ レジス タ は 8行 8列の 1 入力 2出力の 1バ イ ト レジス タ で構成されている。 データ入力端子 D B [ 1 5 : 0 ] は前 述の内部バスに接続されてお り 、 行のライ トイネーブル信号 WA R 0か ら WA R 7 で選択される行、 列のライ トイネ一ブル信号 WA C Oから W A C 3で選択される列の 1 バイ ト レジス タ 2個にデータ を格納する。 一 方、 読み出 しは、 行方向も しく は列方向に並んだ 8個の レジス タ か ら並 列に出力 される。 制御端子 R Z Cで行または列の方向を指定し、 行方向 の場合は R R O力》ら R R 7の う ち選択された 1行、 8バイ トのデータが 読みだされて 1バイ トづっデータ処理回路のプロセ ッサエ レメ ン ト P E 0力 ら P E 7に供給される。 列方向の場合は、 R C 0力 ら R C 7の う ち 選択された 1列、 8バイ トのデータが読みだされて、 1 バイ トづっデ一 タ処理回.路のプロセッサエ レメ ン ト P E 0力 ら P E 7 に供給される。 In FIG. 18, the register is a 1-byte register having 8 rows and 8 columns and 1 input and 2 outputs. The data input terminal DB [15: 0] is before Is connected to the internal bus described above, and the row write enable signal WAR0 to WAR7 is selected by the row, the column write enable signal WACO is set by the WAC3 to the column selected by WAC3. Data is stored in two byte registers. On the other hand, reading is output in parallel from eight registers arranged in the row or column direction. The control terminal RZC specifies the row or column direction, and in the case of the row direction, the data processing circuit reads one byte and eight bytes of data selected from RR7 from RR7 and reads one byte at a time. Is supplied to PE7 from the processor element PE0. In the column direction, data of 8 bytes is read from one row selected from RC0 to RC7, and the data is processed one byte at a time. 0 power is supplied to PE 7.
C D— R OMの C 2訂正を、 図 1 8 の並列プロセ ッサ P E O ~ P E 7 で行な う場合のデータの転送手順を説明する。 前述のとお り 、 図 8 にお いて C 2訂正に必要な 2 8バイ トは、 下位ア ド レス H ' 0から H ' Dま での連続する ァ ド レスに格納されてい る。 D R AMの第 1 R OWのァ ド レス H ' 0 0 0力 > ら H' 0 0 3 のデータ 8 イ ト を フ ァ レジス タ の 1行目 に転送する。 続けて第 2 R OWのア ド レ ス H ' 1 0 0から H ' 1 0 3 のデータ 8バイ トをバッファ レジスタの 2行目 に、 と繰り返し、 第 8 R OWのア ド レ ス H ' 7 0 0力 ら H ' 7 0 3のデータ 8バイ ト をバッ ファ レジス タの 8行目 に転送する。 これでバッファ レジス タが満杯の状 態になる。  A description will now be given of the data transfer procedure in the case where the C2 correction of the CD—ROM is performed by the parallel processors PEO to PE7 in FIG. As described above, the 28 bytes required for the C2 correction in FIG. 8 are stored in consecutive addresses from the lower address H′0 to H′D. The first 8 rows of data of H'003 from the address of the first row of the DRAM are transferred to the first line of the register. Subsequently, 8 bytes of data from the second row address H'100 to H'103 are repeated in the second row of the buffer register, and the 8th row address H ' Transfer 8 bytes of H'703 data from the 700th byte to the 8th line of the buffer register. The buffer register is now full.
R Z C端子で C側、 すなわち列側を選択して R C 0から順次 R C 7 ま で 8バイ トずつのデータ をプロセ ッサエ レメ ン ト P E 0力 ら P E 7 に転 送する。 この操作によ り 、 プア レジス タ の 1行 力 ら 8行目データ がそれぞれプロセ ッサエ レメ ン ト P E 0 力 ら P E 7 に順次転送される。 これでバ ッ フ ァ レジス タ が空になるので、 再度 D R AMの第 1 R OWか ら第 8 R OWの次の ·4 ワー ド、 計 6 4バイ ト をバッ ファ レジスタ を通し てプロセ ッサエ レメ ン ト Ρ Ε 0から Ρ Ε 7 に転送する。 これを繰 り 返す こ と によって、 必要なデータがすべてプロセ ッサエ レメ ン ト P E 0から Ρ Ε 7 に転送される。 データ処理回路では、 C 2訂正を 8個のプロセッ サエ レメ ン トで並列の訂正処理を実行する こ とができる。 C 2訂正に必 要なデータ は 2 8バイ トで、 転送単位は 8バイ トである力 ら、 4 回目の 転送では最後の 4バイ トが不要のデータ となる。 この 4パイ トは C 1パ リ ティ であるから、 C 2 の訂正には必要がない。 そこで、 この 4バイ ト を利用 して、 C 1 訂正の状態フ ラ グと して利用する こ と もできる。 Select the C side, that is, the column side, with the RZC pin, and sequentially transfer data of 8 bytes each from RC0 to RC7 to PE7 from the processor element PE0. By this operation, the data in the first to eighth rows of the poor register are sequentially transferred to the processor elements PE0 to PE7, respectively. The buffer register is now emptied, so a total of 64 bytes, from the first row of the DRAM to the next four words after the eighth row, are transferred through the buffer register to the processor register. Transfer from レ Ε 0 to Ε Ε 7. By repeating this, all necessary data is transferred from processor element PE 0 to Ρ Ε 7. In the data processing circuit, C2 correction can be executed in parallel by eight processor elements. Since the data required for C2 correction is 28 bytes and the transfer unit is 8 bytes, the last 4 bytes are unnecessary data in the fourth transfer. Because these four bytes are C 1 parity, they are not required for C 2 correction. Therefore, these four bytes can be used as a C1 correction status flag.
次に、 D VDの内符号訂正を、 図 1 8の並列プロセッサ Ρ Ε 0 ~ Ρ Ε 7で行なう 場合のデータの転送手順を説明する。  Next, a description will be given of a data transfer procedure when the DVB inner code is corrected by the parallel processors 並列 0 to Ρ 7 in FIG.
前述のとおり 、 図 9 において内符号訂正に必要な 1 8 2バイ トは 3 2 バイ ト ごと に D R AMの第 1 R OWから第 6 R OWの下位ァ ド レス H ' 0から H ' Fまでの連続するア ドレスに格納されている。 D R AMの第 1 R OWの、 ア ドレス H ' 0 0 0 0力 >ら H ' 0 0 0 3のデータ 8ノ イ ト をノ ッ フ ァ レジス タの 1行目 に、 ア ドレス H ' 0 0 1 0カ>ら 11 ' 0 0 1 3のデータ 8バイ トをバッ フ ァ レジス タの 2行目 に、 これを繰り 返して、 ア ド レス H ' 0 0 7 0力 ら H ' 0 0 7 3のデータ 8バイ ト をバ ッ フ ァ レ ジス タの 8行目 に転送する。 これによ り 、 E C Cブロ ック の 1行 目 から 8行目 までの最初の 8バイ ト が ノ ッ フ ァ レジス タの 1行目 から 8行目 ま でに転送された。 R/C端子で C側、 すなわち列側を選択 して R C 0か ら順次 R C 7まで 8バイ トずつのデータをプロセ ッサエ レメ ン ト P E 0 から P E 7 に転送する。 こ の操作によ り 、 バ ッ フ ァ レジス タ の 1 行目力 > ら 8行目 までのデータがそれぞれプロセ ッサエ レメ ン ト P E 0から P E 7 に順次転送される。 これでバ ッ フ ァ レジス タ が空になるので、 再度 D R AMの第 1 R OWの次のア ド レス H ' 0 0 0 4力 ら H ' 0 0 0 7、 H ' 0 0 1 4力 ら H ' 0 0 1 7、 · · · H ' 0 0 7 4 力 ら H ' 0 0 7 7、 の計 6 4バイ ト をノ ッ フ ァ レジス タ を通 してプロ セ ッ サエ レメ ン ト P E 0から P E 7 に転送する。 これを繰り返すこ と によって、 必要なデ —タがすべてプロセッサエ レメ ン ト P E 0力 ら P E 7 に転送される。 デ —タ処理回路では、 内符号訂正を 8個のプロセ ッサエ レメ ン ト P E 0〜 P E 7で並列に訂正処理を実行する こ とができ る。 As described above, in FIG. 9, the 182 bytes required for the inner code correction are from the lower address H'0 to H'F of the first ROW to the sixth ROW of the DRAM every 32 bytes. Are stored at consecutive addresses. In the first row of the DRAM, the address H '0 0 0 0 is set to the address H' 0 0 3 in the first row of the knock-off register. Repeat this with 8 bytes of data of 11'0 013 on the second line of the buffer register, and address H'0 0 70 0 to H'0 0 73 Transfers 8 bytes of data to the 8th line of the buffer register. As a result, the first 8 bytes of the ECC block, from line 1 to line 8, were transferred from line 1 to line 8 of the knock-off register. Select the C side, that is, the column side, with the R / C pin, and sequentially transfer data of 8 bytes each from RC0 to RC7 to PE7 from processor element PE7. By this operation, the power of the first line of the buffer register> The data from the first row to the eighth row are sequentially transferred to the processor elements PE0 to PE7, respectively. The buffer register is now empty, so the next address of the first row of the DRAM is again H'0 0 0 4 and H '0 0 7 and H' 0 0 1 4 H'017, ... H'0074 A total of 64 bytes from the input to the processor, H'0777, are passed through the knock-off register to the processor element. Transfer from PE 0 to PE 7. By repeating this, all necessary data is transferred from the processor element PE0 to PE7. In the data processing circuit, the inner code correction can be executed in parallel by eight processor elements PE0 to PE7.
次に、 D V Dの外符号訂正を、 図 1 8の並列プロセ ッサ P E 0 ~ P E 7で行な う 場合のデータの転送手順を説明する。  Next, a description will be given of a data transfer procedure when the outer code correction of DVD is performed by the parallel processors PE0 to PE7 in FIG.
前述のとお り 、 図 9において外符号訂正に必要な 2 0 8バイ ト は 1 6 パイ ト ごと に D R AMの第 1 R OWから第 7 8 1 0\ まで 6 1¾ 0\ ぉき の同一下位ア ド レス に格納されてい る。 D R A [の第 1 R OWの、 ア ド レス H ' 0 0 0 0力、ら H ' 0 0 0 3のデータ 8 を フ ァ レジス タの 1行目 に、 ア ド レス H ' 0 0 1 0 力 ら H ' 0 0 1 3のデータ 8ノ ィ トをバッフ ァ レジス タ の 2行目 に、 これを繰 り 返して、 ア ド レス H ' 0 0 7 0力 ら H ' 0 0 7 3 のデータ 8ノ ィ ト をノ ッ フ ァ レジス タ の 8行 目 に転送する。 これによ り 、 E C Cブロ ックの 1行目 力 ら 8行目 までの最 初の 8パイ トがバッファ レジスタの 1 行目 カゝら 8行 目 までに転送された。 これは、 E C Cブロ ック の 1列目 力 ら 8列目 まで'の最初の 8バイ トにも 相当する。  As described above, in FIG. 9, the 208 bytes required for outer code correction are the same lower order of 61 60 \ from the first ROW of the DRAM to the 7810th \ of the DRAM every 16 bytes. It is stored at the address. In the first row of DRA, the address H'0 0 0 0, the data 8 of H '0 0 3 is placed in the first line of the register, and the address H' 0 0 1 0 This is repeated for the second row of the buffer register with 8 data of the data of H '013 and the data of H' 0 0 7 3 Transfers 8 bytes of data to the 8th line of the knocker register. As a result, the first eight bytes from the first line to the eighth line of the ECC block were transferred to the first to eighth lines of the buffer register. This is also equivalent to the first eight bytes of the ECC block from the first row to the eighth row.
内符号訂正では、 RZ C端子で C側、 すなわち列側を選択したが、 外 符号訂正では、 R側すなわち行側を選択 して R R 0 から順次 R R 7 まで 8 トずつのデータをプロセ ッサエ レメ ン ト P E 0力 ら P E 7 に転送 する。 こ の操作によ り 、 フ ァ レジス タ の 1列目 から 8列目 までのデ —タがそれぞれプロセッサェレメ ン ト P E 0 か ら P E 7 に順次転送され る。 これでバッフ ァ レジス タが空になるので、 次は D R AMの第 7 R O Wの次のア ド レス H ' 0 6 0 0カ>ら H ' 0 6 0 3、 H ' 0 7 0 0力 ら H, 0 7 0 3、 · · - H ' 0 B F 0力 >ら H ' 0 B F 3、 の計 6 4バイ トをバ ッファ レジス タを通 してプロセ ッサエ レメ ン ト P E 0力 ら P E 7 に転送 する。 これを繰り 返すこ と によって、 必要なデータがすべてプロセ ッサ エレメ ン ト P E 0力 ら P E 7に転送される。 For the inner code correction, the C side, that is, the column side, was selected at the RZ C terminal, but for the outer code correction, the R side, that is, the row side, was selected, and RR 0 to RR 7 were sequentially selected. Transfer data of 8 bytes each from processor element PE0 to PE7. By this operation, the data in the first to eighth columns of the register are sequentially transferred to the processor elements PE0 to PE7, respectively. Now that the buffer register is empty, the next address in the 7th ROW of the DRAM will be H'0600, H'0600, H'0700, and so on. H, 0703, ...-H'0BF0 force>H'0BF3, a total of 64 bytes through the buffer register, the processor element PE0 force PE7 Transfer to. By repeating this, all necessary data is transferred from the processor element PE0 to PE7.
データ処理回路では、 外符号訂正を 8個のプロセ ッサエ レメ ン ト P E 0〜P E 7 で並列に訂正処理を実行する こ と ができ る。  In the data processing circuit, the outer code correction can be executed in parallel by the eight processor elements PE0 to PE7.
図 1 8では、 C D— R OMと D V Dの誤り 訂正を並列処理する こ と に ついて説明 したが、 特に D V Dのための動作は一般の リ一ドソ ロ モ ンの 積符号の誤 り訂正に広く 応用できる。  Fig. 18 describes the parallel processing of CD-ROM and DVD error correction, but the operation for DVD in particular is used to correct the error in the general product code of a lead solomon. Can be widely applied.
入力回路までの信号処理を入力媒体に応じて変更 し、 出力回路以降を 出力先に応 じて変更すれば、 本発明はその他の媒体にも容易に対応でき る。 蓄積系メディ アであっても、 放送系メディ アであって も、 誤り 訂正 のデータフォーマ ツ トは、 上記実施例で説明 した C D— R OMも しく は D V Dのデータ フォーマ ツ ト と類似しているため、 ア ド レ ス生成回路、 優先判定回路などはシーケ ンス制御を多少変更するだけで、 容易に異な るフォーマ ツ トへの適用が可能になっている。  If the signal processing up to the input circuit is changed according to the input medium and the output circuit and the subsequent circuits are changed according to the output destination, the present invention can easily cope with other media. The data format of the error correction is the same as the data format of the CD-ROM or DVD described in the above embodiment, regardless of whether it is storage media or broadcast media. Therefore, the address generation circuit, priority determination circuit, etc. can be easily applied to different formats by only slightly changing the sequence control.
このため、 設計データ の有効活用 と い う 点で極めて有利である。  This is extremely advantageous in terms of effective use of design data.
図 2 2 は、 本発明の他の実施例を示すデータ処理装置の構成図であつ て、 本発明の処理方法を ソフ ト ウェアで実現する場合である。 図 1 に示 した実施例は本発明のデータ処理装置をハー ドウエアで構成 したものであるが、 図 1 におけるア ド レス発生、 アクセス制御回路 1 7、 優先判定回路 1 6、 データ処理回路 1 5、 ノく ッファ レジス タ 1 4 は、 マ イ ク 口 コ ン ト ローラなどのプロセッサのソフ ト ウェアで実現する こ と も でき る。 FIG. 22 is a configuration diagram of a data processing apparatus showing another embodiment of the present invention, in which the processing method of the present invention is realized by software. In the embodiment shown in FIG. 1, the data processing apparatus of the present invention is configured by hardware. However, the address generation, access control circuit 17, priority determination circuit 16, data processing circuit 15 shown in FIG. The buffer register 14 can also be realized by software for a processor such as a microcontroller.
図 2 2では、 マイ ク ロ コ ン ト ローラ 2 2 3上のソフ ト ウエアで実現す る場合を前提とするハー ドウェア構成を示している。 メ イ ンメ モ リ 2 2 4 と D R AMイ ンターフェース回路 2 2 5が共通バスを介して、 また入 力回路 2 2 1 と 出力回路 2 2 2が周辺パスを介して、 それぞれマイ ク ロ コン ト ローラ 2 2 3に接続されている。 マイ ク ロ コ ン ト ローラ 2 2 3は、 D R A M 2 2 6 に対するア クセ ス要因別にア ク セスを要求するレジス タ (D R AMアクセ ス要求ステータ ス レジス タ R e g s t ) を監視して お り 、 要求の優先度に応じて適切な処理を行な う。 D R AMアクセス要 求ステ一タ ス レジス タは、 ア ク セス要因に要求の有無を示すレジス タで あって、 ハー ドウェアで実現しても、 またソ フ ト ウェアで仮想的に実現 しても よい。 入力回路 2 2 1 には、 1 シンボル以上のレジスタがあって、 データが準備される と D R AMア ク セ ス要求ステータ ス レジス タ に要求 を出する。 マイ ク ロ コ ン ト ローラ 2 2 3では、 誤り 訂正ルーチン、 出力 処理ルーチン、 D R A Mリ フ レ ッ シュ制御ルーチンが動作してお り 、 必 要に応じて D R AMア ク セ ス要求ステータ ス レジス タ に要求を出す。 図 2 3は、 マイ ク ロプロセ ッサの優先判定ルーチンのフ ローチャー ト であって、 D R AMア ク セス要求ステータ ス を監視 して、 適宜必要な処 理サブルーチンを起動する ソフ ト ウエアのフ ロ ーを示している。  FIG. 22 shows a hardware configuration that is assumed to be realized by software on the microcontroller 22. The main memory 222 and the DRAM interface circuit 222 are connected via a common bus, and the input circuit 211 and the output circuit 222 are connected via a peripheral path. Connected to controller 2 23. The microcontroller 223 monitors a register (DRAM access request status register Regst) for requesting access to the DRAM 226 for each access factor. Perform appropriate processing according to the priority of the request. The DRAM access request status register is a register that indicates the presence or absence of a request as an access factor, and can be realized by hardware or virtually by software. Good. The input circuit 222 has a register of one symbol or more. When data is prepared, a request is issued to the DRAM access request status register. In the microcontroller 223, an error correction routine, an output processing routine, and a DRAM refresh control routine are operating. Make a request to Figure 23 is a flowchart of the priority determination routine of the microprocessor, which monitors the DRAM access request status and starts the necessary processing subroutine as needed. Is shown.
先ず最初に D R AMア ク セス要求ス テー タ ス レジス タ の内容を読み込 み (ステップ 2 3 0, 2 3 1 ) 、 優先順位に従ってア ク セ ス要求の有無 を調べて、 要求があればその要求に応 じるサブルーチンを起動 し、 要求 を リ セ ッ ト してス テータ ス レジス タ の読み込みに戻る。 こ こで示 した優 先順位はあく までも一例であって、 順位はシステムを構成する上で変更 される こ と も十分に考え られる。 また、 プロ グラ ムの動作中にも変更さ れる場合がある。 First, read the contents of the DRAM access request status register. (Steps 230 and 231), check the presence or absence of an access request according to the priority, and if there is a request, start a subroutine corresponding to the request, reset the request, and reset the request. Return to reading the data register. The priority shown here is only an example, and it is fully conceivable that the priority may be changed in configuring the system. It may also be changed during the operation of the program.
r e f r e s h処理サブルーチン 2 3 2, 2 4 0, 2 4 8 は、 マイ ク 口 コ ン ト ローラ 2 2 3の周辺機能であるタイ マで時間管理を行ない、 一 定周期で D R AMの リ フ レ ッ シュを行な うサブルーチンである。 復調回 路カ らの w r i t e a c c e s s を行な う サブル一チン 2· 3 3, 2 4 1, 2 4 9 は、 媒体の種類や D R AM上のデータの位置や方法によ り構 成が異なる。  The refresh processing subroutines 23, 2, 24, and 248 manage time using timers, which are peripheral functions of the microcontroller 23, and refresh the DRAM at regular intervals. This is a subroutine that performs The configuration of the subroutines 23, 33, 241, and 249 for performing w r i t e a c c e s s from the demodulation circuits differs depending on the type of medium, the position and method of data on DRAM.
C 1 訂正のための読み出 しアクセス処理サブルーチン (ステップ 2 3 4, 2 4 2, 2 5 0 ) 、 C 2訂正のための読み出 しア ク セ ス処理ルーチ ン (ステップ 2 3 5, 2 4 3 , 2 5 1 ) 、 出力のための読み出 し処理サ ブル一チン (ステ ップ 2 3 6, 2 4 4 , 2 5 2 ) 、 訂正のための読み出 しと書き込み処理サブルーチン (ステ ップ 2 3 7, 2 4 5 , 2 5 3 ) 、 およびその他の読み出しおよび書き込み処理サブルーチン (ステ ップ 2 3 8 , 2 3 9 , 2 4 6 , 2 7 , 2 5 4, 2 5 5 ) が優先順位に従って 起動される。  Read access processing subroutine for C1 correction (steps 234, 242, 250), read access processing routine for C2 correction (steps 235, 2) 43, 25 1), read processing subroutine for output (steps 23 36, 24 44, 25 2), read and write processing subroutine for correction (step 237, 245, 253) and other read and write processing subroutines (steps 238, 239, 246, 27, 254, 255) Are invoked according to priority.
図 2 4 は、 復調回路からの w r i t e a c c e s s 処理ルーチンの —例を示すフロ—チヤ一 ト である。  FIG. 24 is a flowchart showing an example of a processing routine of writheaccesss from the demodulation circuit.
こ こでは、 C D— R O Mの復調を行 'な う システムにおいて、 8 ビッ ト のデータ幅の D R AMを用いて、 図 5 に示したデータの配置になる よ う にデータを書き込むサブルーチンを示す。 復調回路からの入力データを "D AT A" と し、 この と きのデータの位置を図 3 に示 した 3 3進カ ウ ンタ 1 1 9の出力 " i " と して、 こ の 2個のデータが与え られる ものと する。 ただし、 この 3 3進カ ウンタ 1 1 9はハ一 ドウエアでも ソ フ ト ゥ エアでも容易に実現でき る。 i = 0の と き (ステップ 2 6 1 ) 、 D AT Aはサブコ一 ドであるので、 サブコ一 ド処理サブル一チンを起動するHere, in a system that demodulates CD-ROMs, the data arrangement shown in Fig. 5 will be implemented using a DRAM with an 8-bit data width. Shows a subroutine for writing data into the subroutine. The input data from the demodulation circuit is assumed to be "DATA", and the position of the data at this time is assumed to be the output "i" of the ternary counter 119 shown in FIG. Data is given. However, this ternary counter 1 19 can be easily realized by hardware or software. When i = 0 (step 261), since the DATA is a subcode, the subcode processing subroutine is started.
(ステップ 2 6 7 ) 。 サブコー ド処理き体は、 本発明と は本質的に関係 がないので説明を省略する。 i が偶数の場合には 1 フ レーム遅延を与え (ステップ 2 6 2 , 2 6 3 ) 、 奇数の場合には遅延な しで D R AMに害 き込む (ステ ップ 2 6 2 , 2 6 8 ) 。 フ ロー中の o u t b u f は配列 変数で、 次に D R AMに書き込まれる 3 2バイ ト のデータ を格納する。 d 1 y b u f は 1 フ レーム遅延のための配列変数で、 1 フ レーム前の データを保持している (ステップ 2 6 5 ) 。 (Steps 2 6 7). Since the sub-code processing body is not essentially related to the present invention, the description is omitted. If i is an even number, one frame delay is given (steps 26 2 and 26 3), and if odd, it damages the DRAM without delay (steps 26 2 and 26 8). ). Ooutbuuf in the flow is an array variable that stores 32 bytes of data that will be written to DRAM next. d1ybuuf is an array variable for one-frame delay, and holds the data before one frame (step 2665).
データが奇数の場合 (ステップ 2 6 2 ) 、 1 フ レーム前の d 1 y b u t 〔 i 〕 を次に出力する o u t b u f 〔 i 〕 に格納しておく (ステ ップ 2 7 0 ) 。 また、 i = 1 3, 1 4 , 1 5, 1 6 , 2 9, 3 0, 3 1 , 3 2の D A T Aはノ リ ティ で図 2 0の C Dの規格に示されている よ う に、 パリ ティ は全ビッ ト反転 して以降の処理に用いられる (ステップ 2 6 4 , 2 6 9 )  If the data is an odd number (step 2622), d1ybut [i] one frame before is stored in ooutbuf [i] to be output next (step 270). The data of i = 13, 14, 15, 15, 16, 29, 30, 30, 31, 32 is the norm, and as shown in the CD standard of FIG. The parity is inverted for all bits and used for the subsequent processing (steps 264 and 269)
3 2バイ ト連続して書き込むので、 i = 3 2すなわちフ レームの最後 尾になるまでは D R AMにア ク セスせずに次の入力を待つ。 i = 3 2に なる と (ステ ップ 2 6 6 ) 、 o u t b u f には、 D R AMに書き込む べき 3 2バイ ト のデータ が格納された状態になるので、 実際に D R AM にア ドレスを発行 して書き込み動作を行な う 。 フ ロ ー中、 変数 r o w , c o 1 0, c o 1 はそれぞれ D R AMのロ ウ、 初期カラム、 カラムア ド レス計算のための変数であ り 、 変数 D R AM R OW, D R AM C O L, D R AM D AT Aは、 それぞれ実際に D R AMに発行される ロ ウ、 カラムァ ド レス とデータである。 Since 32 bytes are written continuously, the next input is waited without accessing the DRAM until i = 32, that is, until the end of the frame. When i = 32 (step 2666), 32 bytes of data to be written to the DRAM are stored in the outbuf, so the address is actually issued to the DRAM. Write operation. During the flow, the variables row, co 10 and co 1 are variables for DRAM row, initial column, and column address calculation, respectively, and the variables DR AM R OW, DRAM COL, and DRAM DATA are actually DR Row, column address and data issued to AM.
D R AMのロ ウァ ド レスは C Dの 1 フ レーム毎に 1ずつ増加して、 適 当な値で 0 に戻る ( 2 7 1参照) 。 また、 初期カラムア ド レス c o 1 0 は 1 フ レーム毎に 3 2ずつ ( 2 4進表示で H ' 2 0ずつ) 增加して、 同 —ロ ウ内の最大値まで進むと次に 0 に戻る ( 2 7 2参照) 。 初期カ ラム ア ド レスが求められた時点で、 実際にカラムァ ド レスを D R AMに発行 し、 同時にデータ を D R AMに出力 して書き込みを行な う (ステ ップ 2 7 1, 2 7 2 ) 。 その後、 同一ロ ウア ド レス 内でカラムア ド レスを 3 3 (H ' 2 1 ) ずつ増加して、 順次残 り 3 1バイ ト の書き込みを行な う (ステ ップ 2 7 4 ) 。  The load address of the DRAM increases by one for each frame of the CD, and returns to 0 at an appropriate value (see 271). In addition, the initial column address co 10 increases by 32 (H'20 in quaternary notation) for each frame, and returns to 0 when it reaches the maximum value in the same row. (See 272). When the initial column address is obtained, the column address is actually issued to the DRAM, and the data is simultaneously output to the DRAM to perform writing (steps 271, 272). ). Thereafter, the column address is increased by 33 (H'21) in the same low address, and the remaining 31 bytes are sequentially written (step 274).
カ ラムア ドレスが最大値 H ' 4 0 0 を超えよ う と した場合、 H ' 4 0 0を差し引いて同一ロ ウァ ドレス内の若いカ ラ ムァ ドレスに折り 返すこ とによ り 、 ロ ウァ ド レス の再発行によ る書き込みサイ ク ルの増加を防い でいる ( 2 7 4参照) 。  If the column address tries to exceed the maximum value H'400, the H'400 will be subtracted and the result will be folded back to the younger one in the same row address. This prevents an increase in the number of write cycles due to the reissuance of the address (see 274).
以上説明 した図 2 4のフ ローチヤ一 ト を実現する ソフ ト ウエアによ り 、 図 3 に示したハ一 ドウエアで実現していたデータの並べ替え回路はソフ ト ウエアで実現する こ と ができ る。  According to the software for realizing the flow chart of FIG. 24 described above, the data rearrangement circuit realized by the hardware shown in FIG. 3 can be realized by the software. You.
以下、 C I , C 2訂正のためのデータの読み出し、 出力のためのデー タの読み出 し、 訂正のためのデータ の読み出 し訂正書き込み、 な どのサ プル一チンが必要であるが、 これらは既に適切に並べ替え られたデータ に対するア ク セス であっ て、 容易に実現でき るので説明は省略する。 D R AMの制御をソフ ト ウエアで実現した場合、 D R A Mの余分な空 間を別の 目 的のデータのワークエ リ ア と して使用するこ と ができ る とい う効果もある。 産業上の利用可能性 In the following, it is necessary to have a sample routine such as reading data for CI and C2 correction, reading data for output, reading and writing data for correction, and so on. Is an access to data that has already been properly rearranged, and can be easily realized. If the DRAM control is realized by software, there is also an effect that the extra space of the DRAM can be used as a work area for data for another purpose. Industrial applicability
以上に述べたよ う に、 本発明のデータ処理装置は、 D R AMの同一 R OWァ ド レス内の高速なア ク セスを利用する こ どができ、 異なる媒体か らの信号の誤り訂正に共通に対応する こ とができ るので、 特に高速で高 価なメ モ リ を用いる必要がなく な り 、 廉価なデータ処理装置を実現でき る。 さ らに、 内部バス に接続する入力回路、 出力回路をシステム に適応 する よ う に設計すれば、 D R AMア ク セスを含めて訂正処理回路を若干 の変更だけで、 異なるシステムに転用できるので、 開発コ ス トを削減で きる と い う効果も ある。  As described above, the data processing device of the present invention can utilize high-speed access within the same ROW address of DRAM, and is commonly used for error correction of signals from different media. Therefore, it is not necessary to use particularly high-speed and expensive memory, and an inexpensive data processing device can be realized. Furthermore, if the input circuit and output circuit connected to the internal bus are designed to be adapted to the system, the correction processing circuit including DRAM access can be diverted to a different system with only minor changes. This also has the effect of reducing development costs.

Claims

請 求 の 範 囲 The scope of the claims
1 . 媒体から時系列で入力 されるデータ列を少ないデータ量だけ蓄積し た時点で訂正処理を開始でき る第 1 の誤り 訂正符号と、 上記データ量よ り も多いデータ量を蓄積した時点で訂正処理を開始でき る第 2の誤り訂 正符号とで構成された信号を再生するデータ処理装置において、 上記媒体から時系列で入力 されるデータ列に前処理を施す入力回路と 前処理が終了 したデータ列を記憶する D R AMと 、 1. The first error correction code that can start correction processing when a small amount of data is input from the medium in a time-series data sequence, and when a larger amount of data than the above data is accumulated In a data processing device for reproducing a signal composed of a second error correction code capable of starting correction processing, an input circuit for performing preprocessing on a data sequence input in time series from the medium and the preprocessing are completed DRAM that stores the data sequence
該 D R AMに記憶されたデータに対 して誤り 訂正を行な うデータ処理 回路と、 処理の完了したデータを出力する 出力回路と、  A data processing circuit for performing error correction on the data stored in the DRAM, an output circuit for outputting processed data,
該入力回路から該 D R AMへの書き込みと 、 第 2 の訂正処理のための 該 D R AMからの読み出 しと、 該出力回路へデータ を出力するための該 D R AMからの読み出しとで、 それぞれア ク セ ス されるデータが、 予め 定め られたヮ一 ド数の単位で該 D R AM上のそれぞれ同一 R OWァ ドレ ス内に割り 付け られ、 上記の各ア ク セ ス で該 R OWァ ド レス と該 R OW 内のカ ラ ムァ ド レスを該ヮー ド数分連続して発行する D R AMのァ クセ ス制御回路と  Writing from the input circuit to the DRAM, reading from the DRAM for a second correction process, and reading from the DRAM to output data to the output circuit, respectively. The data to be accessed is allocated in the same row address on the DRAM in units of a predetermined number of bits, and the row address is assigned in each access described above. A DRAM access control circuit for continuously issuing the dress and the color dress in the row for the number of modes; and
を具備したこ と を特徴とするデータ処理装置。 A data processing device comprising:
2. 前記 D R AMにデータを書き込むこ と な く 、 第 1 の訂正処理の一部 を実行するデータ処理回路を備えたこ と を特徴とする請求の範囲第 1項 記載のデータ処理装置。  2. The data processing device according to claim 1, further comprising a data processing circuit that executes a part of the first correction processing without writing data to the DRAM.
3. 前記媒体が C D— R OMであって、 前記第 1 の誤り 訂正符 号を C 1訂正符号、 前記第 2の誤り 訂正符号を C 2訂正符号と し、 該 D 3. The medium is a CD-ROM, wherein the first error correction code is a C1 correction code, and the second error correction code is a C2 correction code.
R AMへのア ク セ ス のヮー ド数を、 該入力回路から該 D R AMへの書き 込みのと き 3 2バイ ト分、 C 2訂正処理のための該 D R AMからの読み 出 しのと き 2 8バイ ト乃至 3 2バイ ト分、 該出力回路へデータを出力す るための該 D R AMからの読み出 しの と き 1 2バイ ト乃至 1 6ノくィ ト分 を、 それぞれ同一の R OWア ド レス に割 り 付け、 それぞれのアクセスに おいて該 R OWァ ド レス と該 R OW内のカラムァ ド レスを該ワー ド数分 連続して発行する D R AMのア クセ ス制御回路を備える こ と を特徴とす' る請求の範囲第 1 項記載のデータ処理装置。 The number of modes of access to the RAM is written from the input circuit to the DRAM. 32 bytes for writing, and 28 bytes to 32 bytes for reading data from the DRAM for C2 correction processing, for outputting data to the output circuit. When reading from the DRAM, 12 bytes to 16 bytes are allocated to the same row address, and the row address is assigned for each access. 2. A data processing apparatus according to claim 1, further comprising a DRAM access control circuit for continuously issuing column addresses in said row for the number of words.
4. 前記媒体から時系列で入力 されるデータ列を C 1訂正に適する順序 に並べ替える回路と、 該回路で並べ替えられたデータから C 1訂正のシ ン ドローム演算を行な う 回路と を備えたこ と を特徴とする請求の範囲第 4. A circuit for rearranging a data sequence input in time series from the medium in an order suitable for C1 correction, and a circuit for performing a C1 correction syndrome operation from the data rearranged by the circuit. Claims characterized by having
3項記載のデータ処理装置。 Item 3. The data processing device according to item 3.
5. 前記 D R AMのア ク セス制御回路は、 C D— R OMと D V Dの.双方 の媒体を再生するためのァ ド レスを発行する も のであっ て、  5. The DRAM access control circuit issues an address for reproducing both the CD-ROM and the DVD media.
D V Dの再生時には、 前記第 1 の誤り訂正符号を内符号、 前記第 2の 誤り 訂正符号を外符号と し、 該 D R AMへのア ク セ ス の ヮ 一 ド数を、 該 入力回路から該 D R AMへの書き込みのと き 3 2バイ ト分、 外符号訂正 処理のための該 D R AMからの読み出 しのと き 3 2バイ ト分、 該出力回 路へデータ を出力するための該 D R AMからの読み出 しの と き 3 2バイ ト分を、 それぞれ同一の R OWア ド レス に割 り 付け、 それぞれのァクセ スにおいて該 R OWァ ド レス と該 R OW内のカ ラムァ ド レスを該ヮー ド 数分連続して発行する こ と を特徴とする請求の範囲第 3項記載のデータ 処理装置。  At the time of DVD playback, the first error correction code is an inner code, the second error correction code is an outer code, and the number of access to the DRAM is obtained from the input circuit. 32 bytes for writing to DRAM and 32 bytes for reading from DRAM for outer code correction processing for outputting data to the output circuit. When reading from the DRAM, 32 bytes are allocated to the same ROW address, and in each access, the ROW address and the column address in the ROW are assigned. 4. The data processing apparatus according to claim 3, wherein the address is issued continuously for the number of codes.
6. 前記媒体から時系列で入力 されるデータ列を入力 して内符号訂正の シン ドローム演算を行な う 回路を備えたこ と を特徴とする請求の範囲第 5項記載のデータ処理装置。 6. A circuit for inputting a data sequence input in time series from the medium and performing a syndrome operation for inner code correction is provided. Item 5. The data processing device according to item 5.
7 . 前記誤り 訂正を行な う データ処理回路は、 n個のプロセッサエ レメ ン ト からなる並列プロセ ッサで構成され、 n 行 n列の レジス タ で構成す るノく ッファ レジス タを介 して nバイ トのデータ を並列に n個のプロセ ッ サエ レメ ン ト に転送でき る機構を備えたこ と を特徴とする請求の範囲第 1 項乃至第 6項の う ちのいずれかに記載のデータ処理装置。  7. The data processing circuit for performing the error correction is composed of a parallel processor composed of n processor elements, and is passed through a buffer register composed of n rows and n columns of registers. 7. A system according to claim 1, further comprising a mechanism capable of transferring n-byte data to n processor elements in parallel. Data processing device.
8 . 前記 n行 n列の レジス タ で構成するバッ ファ レジス タ は、 行方向の n バイ ト と列方向の n バイ ト のいずれでも選択的にア ク セ ス可能である こ と を特徴とする請求の範囲第 7項記載のデータ処理装置。  8. The buffer register composed of the n-row and n-column register is capable of selectively accessing any of n bytes in the row direction and n bytes in the column direction. 8. The data processing device according to claim 7, wherein
9 . 媒体から時系列で入力 されるデータ列に前処理を施す前記入力回路 と、 前記 D R A Mと、 誤り 訂正を行な う前記データ処理回路と、 処理の 完了 したデータを出力する前記出力回路とが共通のデータバスを介して 相互接続されてお り 、 前記それぞれの回路からの要求信号を元に優先判 定を して、 判定結果を D R A Mア ク セ スのス ケジュ一リ ングに反映する 手段を備える こ と を特徴とする請求の範囲第 1 項乃至第 8 項の う ちのい ずれかに記載のデータ処理装置。  9. The input circuit for performing pre-processing on a data sequence input in time series from a medium, the DRAM, the data processing circuit for performing error correction, and the output circuit for outputting processed data. Are interconnected via a common data bus, make a priority judgment based on the request signal from each of the circuits, and reflect the judgment result to the DRAM access scheduling. The data processing device according to any one of claims 1 to 8, characterized by comprising means.
1 0 . ディ スク を回転させるス ピン ドルモータ と、 該ディ スク に光を照 射して反射光を検出する光学系機構と 、 該光学系機構を移動させる機械 系機構と、 該ス ピ ン ドルモータ と該光学系機構と該機械系機構と を駆動 する電気回路素子と該光学系機構から得られる反射光の情報を電気信号 に変換してアナロ グ信号処理を行な う機構と 、 全体を制御するマイ ク ロ コ ン ト ロ一ラ と を備え、 該マイ ク ロ コ ン ト ロ ーラのプロ グラムに媒体の 種類を判別するプロ グラムが搭載されている こ と を特徴とする請求の範 囲第 1 項乃至第 9 項の う ちのいずれかに記載のデータ処理装置。 10. Spindle motor for rotating disk, optical system mechanism for irradiating the disk with light and detecting reflected light, mechanical system mechanism for moving the optical system mechanism, and spindle motor And an electric circuit element that drives the optical system mechanism and the mechanical system mechanism, and a mechanism that converts information of reflected light obtained from the optical system mechanism into an electric signal and performs analog signal processing, and controls the whole. A microcontroller for performing the determination, and a program for determining the type of the medium is installed in the program of the microcontroller. Item 10. The data processing device according to any one of items 1 to 9.
1 1 . 媒体から時系列で入力されるデータ列を少ないデータ量だけ蓄積 した時点で訂正処理を開始でき る第 1 の誤り 訂正符号と 、 上記データ列 よ り も多いデータ量を蓄積した時点で訂正処理を開始でき る第 2 の誤り 訂正符号と で構成された信号を再生するデータ処理方法において、 媒体から時系列で入力 されるデータ列に前処理を施すステップと、 D R AMに対するア ク セス要因別にア クセ ス を要求する レジス タを監 視し、 要求の優先度に応じて処理を行 う マイ ク ロ コ ン ト ローラの処理ス テツプと、 1 1. The first error correction code that can start the correction process when a small amount of data sequence is input from the medium in time series, and when a larger amount of data than the above data sequence is accumulated. In a data processing method for reproducing a signal composed of a second error correction code capable of starting correction processing, a step of performing preprocessing on a data sequence input in time series from a medium, and an access to DRAM. A microcontroller processing step that monitors registers that request access by cause and performs processing according to the priority of the request;
ア ク セス されるデータが予め定めたヮ一 ド数の単位で該 D R AM上の それぞれ同一 R OWァ ド レス内に割 り 付けられてお り 、 それぞれのァク セスにおいて該 R OWァ ドレス と該 R OW内のカラムァ ド レスを該ヮー ド数分連続して発行する こ とによ り 、 D R AMへの書き込みと、 第 2の 訂正処理のための該 D R AMからの読み出し と 、 外部へデータを出力す るための該 D R AMからの読み出 しを行う各ステップと  The data to be accessed is allocated in the same row address on the DRAM in units of a predetermined number of bits, and the row address is assigned to each access. And the column addresses in the row are continuously issued for the number of codes, whereby writing to the DRAM, reading from the DRAM for the second correction processing, and external Each step of reading from the DRAM to output data to
を有する こ と を特徴とするデータ処理方法。 A data processing method characterized by having:
1 2. 前記マイ ク ロ コン ト ローラは、 要求の優先度に応 じて、 リ フ レツ シュ処理、 復調回路からの D R AMへの書き込み処理、 C 1訂正のため の該 D R AMからの読み出 し処理、 C 2訂正のための該 D R AMからの 読み出 し処理、 外部への出力のための該 D R AMからの読み出 し処理、 訂正のための該 D R AMからの読み出 しおよび書き込み処理を実行する こ と を特徴とする請求の範囲第 1 1 項に記載のデータ処理方法。  1 2. According to the priority of the request, the microcontroller performs a refresh process, a write process to the DRAM from the demodulation circuit, and a read from the DRAM for C1 correction. Read processing, read processing from the DRAM for C2 correction, read processing from the DRAM for external output, read from the DRAM for correction, and 12. The data processing method according to claim 11, wherein a writing process is performed.
1 3 . 前記マイ ク ロ コ ン ト ローラは、 D VDまたは C D— R OMの復調 データの書き込み処理において、 回路力 ゥンタ の出力が偶数の場合には 1 フ レーム遅延を与え、 奇数の場合には遅延な しでそれぞれ D R AMに 書き込むためのデータを保持しておき、 該カ ゥンタの値が特定値の と き のデータを全ビッ ト反転し、 該カ ウンタの値が最終値になるまで該 D R AMにア ク セスするこ と な く 次の入力を待ち、 最終値になった時点で保 持されているデ一タを該 D R AMに書き込むためにア ド レスを発行して 書き込み動作を行な う こ と を特徴とする請求の範囲第 1 1項に記載のデ —タ処理方法。 1 3. The microcontroller provides a one-frame delay when the output of the circuit counter is an even number and an odd number when the output of the circuit counter is in the process of writing the demodulated data of the DVD or CD-ROM. To the DRAM without delay Hold the data to be written, invert all bits of the data when the value of the counter is a specific value, and access the DRAM until the value of the counter reaches the final value. It waits for the next input, issues an address to write the retained data to the DRAM when the final value is reached, and performs the write operation. 13. The data processing method according to claim 11, wherein
PCT/JP1998/002476 1998-06-04 1998-06-04 Data processor and data processing method WO1999063540A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
AU75501/98A AU7550198A (en) 1998-06-04 1998-06-04 Data processor and data processing method
JP2000552676A JP3904138B2 (en) 1998-06-04 1998-06-04 Data processing apparatus and processing method
PCT/JP1998/002476 WO1999063540A1 (en) 1998-06-04 1998-06-04 Data processor and data processing method
TW088105230A TW436724B (en) 1998-06-04 1999-04-01 Data process device and process method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP1998/002476 WO1999063540A1 (en) 1998-06-04 1998-06-04 Data processor and data processing method

Publications (1)

Publication Number Publication Date
WO1999063540A1 true WO1999063540A1 (en) 1999-12-09

Family

ID=14208340

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP1998/002476 WO1999063540A1 (en) 1998-06-04 1998-06-04 Data processor and data processing method

Country Status (4)

Country Link
JP (1) JP3904138B2 (en)
AU (1) AU7550198A (en)
TW (1) TW436724B (en)
WO (1) WO1999063540A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7024616B2 (en) 2000-06-09 2006-04-04 Hitachi, Ltd. Method for encoding/decoding error correcting code, transmitting apparatus and network
CN109872745A (en) * 2017-12-05 2019-06-11 南亚科技股份有限公司 Dynamic random access memory and its operating method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6226930A (en) * 1985-07-26 1987-02-04 Nec Corp Error correction decoder
JPH097365A (en) * 1995-06-23 1997-01-10 Nec Corp Dram-address forming circuit for cd-rom
JPH09115244A (en) * 1995-10-20 1997-05-02 Hitachi Ltd Recording/reproducing device and its integrated circuit
JPH09259261A (en) * 1996-03-22 1997-10-03 Toshiba Corp Device and method for generating memory address

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6226930A (en) * 1985-07-26 1987-02-04 Nec Corp Error correction decoder
JPH097365A (en) * 1995-06-23 1997-01-10 Nec Corp Dram-address forming circuit for cd-rom
JPH09115244A (en) * 1995-10-20 1997-05-02 Hitachi Ltd Recording/reproducing device and its integrated circuit
JPH09259261A (en) * 1996-03-22 1997-10-03 Toshiba Corp Device and method for generating memory address

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7024616B2 (en) 2000-06-09 2006-04-04 Hitachi, Ltd. Method for encoding/decoding error correcting code, transmitting apparatus and network
US7512867B2 (en) 2000-06-09 2009-03-31 Hitachi, Ltd Method for encoding/decoding error correcting code, transmitting apparatus and network
CN109872745A (en) * 2017-12-05 2019-06-11 南亚科技股份有限公司 Dynamic random access memory and its operating method
CN109872745B (en) * 2017-12-05 2021-05-04 南亚科技股份有限公司 Dynamic random access memory and operation method thereof

Also Published As

Publication number Publication date
AU7550198A (en) 1999-12-20
JP3904138B2 (en) 2007-04-11
TW436724B (en) 2001-05-28

Similar Documents

Publication Publication Date Title
US6363511B1 (en) Device and method for decoding data streams from storage media
US6907559B2 (en) Method and apparatus for data reproduction
US20070266187A1 (en) Data Interleaving Apparatus
US6877126B2 (en) Method and apparatus for data reproduction
JP2009054278A (en) Circuit and device for reproducing data
US6119260A (en) Decoder for executing error correction and error detection in parallel
US6185640B1 (en) Minimal frame buffer manager allowing simultaneous read/write access by alternately filling and emptying a first and second buffer one packet at a time
US6216201B1 (en) Data processing apparatus using paged buffer memory for efficiently processing data of a compact digital disk
JPH1198462A (en) Data reproduction device
US6651208B1 (en) Method and system for multiple column syndrome generation
WO1999063540A1 (en) Data processor and data processing method
US6505319B1 (en) Signal processing circuit and information recording apparatus
KR100373467B1 (en) Address generation circuit
JP3777246B2 (en) System and error control chip for correcting errors in a disk storage device, and encoding and decoding methods
JP2952198B2 (en) Memory control circuit and method for CD-ROM drive system
US6697921B1 (en) Signal processor providing an increased memory access rate
US20020144206A1 (en) Error correction apparatus for performing consecutive reading of multiple code words
KR100339452B1 (en) Error correction system, error correction method, and data memory with error correction function
US6499082B1 (en) Method of transferring data from large capacity data storage device
JP3542943B2 (en) Data transfer device and data transfer method
US6704900B1 (en) Method and apparatus for performing efficient reseeks in an optical storage device
JP3300376B2 (en) Optical disk signal processing method
JP4234563B2 (en) Error correction method and circuit, error correction encoding method and circuit, data reproduction apparatus, and data recording / reproduction apparatus
WO1998041987A1 (en) Device and method for reproducing digital signal using variable bus-width memory and device and method for recording digital signal
JPH08194661A (en) Data transfer device

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GE GH GM GW HU ID IL IS JP KE KG KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT UA UG US UZ VN YU ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW SD SZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN ML MR NE SN TD TG

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: CA