The present invention contains subject matter related to Japanese Patent Application JP 2004-081505 filed in the Japanese Patent Office on Mar. 19th, 2004 and Japanese Patent Application JP 2004-173853 filed in the Japanese Patent Office on Jun. 11th, 2004, the entire contents of which being incorporated herein by reference.
1. Field of the Invention
The present invention relates to a semiconductor device embedding a dynamic random access memory (DRAM), in particularly, a system circuit for improving data retaining characteristics of the DRAM.
2. Description of the Related Art
In general, data retaining characteristics of DRAMs has been decided, for example, by the poorest one of memory cells to be mounted.
The characteristics of DRAMs has been decided by a leakage current characteristic caused by a crystal defect in the memory cell and observed as a randomly defect of a single bit at a memory cell matrix.
Moreover a defective cell caused by the factors cannot prevent even if an improvement of producing processing is performed.
Therefore, in the general DRAM, a yield has been secured by replacing a cell having a poor data retaining characteristic with a redundancy cell.
However, the method has to add the redundancy cell in accordance with the number of defect to be secured, the increasing of area due to that becomes disadvantage.
Further, since the number of the redundancy cells to be mountable is restricted, the substantial improvement of a retention cycle is difficult.
Due to this, in recent year, it is restricted to a step that a power consumption of a mobile application use DRAM in a standby mode is decreased by extending a refresh cycle drastically in the standby mode.
In recent year, as a data retention controlling circuit for DRAM, a semiconductor integrated circuit device having an ECC circuit and a refresh period setting circuit had been proposed (refer to for example, Japanese Patent Unexamined Publication (Kokai) No. 2002-56671).
The ECC circuit of the semiconductor integrated circuit device is performed with the following first and second operations; the first operation is that the ECC circuit is started when entering in a data retention mode of the memory circuit, a plurality of data retained in the memory circuit are read, and check bits for an error detecting and correcting are generated and recorded; and a second operation is that the circuit is started when returning from the data retention mode to a normal operation wherein a read or write operation is performed between the other circuits, reading a plurality of data and the check bit retained in the memory circuit is read, an error bit of data is corrected, and writing the data is written into a corresponding memory cell.
The refresh period setting circuit is setting a period used with the check bit in the ECC circuit and extended within the tolerance of an error generation, and made perform refresh operation.
The semiconductor integrated circuit system disclosed in Japanese Patent Unexamined Publication (Kokai) No. 2002â–¡56671 can be improved the data retaining characteristics of DRAM and decreased power consumption, but it must be prepared exclusive pattern generating circuit. When designing a circuit able to generate efficient patterns, the circuit size become large, and when making circuit size in small, a pattern becomes redundancy and an operating time becomes increasing, so that it is caught in a dilemma. Then, in usual, only circuits in minimum necessary are mounted, but the pattern becomes redundancy as mentioned above and the operation time becomes disadvantage.
Due to the above mentioned, the semiconductor integrated circuit system in the above document has disadvantages in following points: (1) to mount the exclusive circuit makes excessive circuits increasing; (2) for restraining the circuit size in small, it makes increase an operating time.
The present invention is to provide a semiconductor device able to improve data retaining characteristics and decrease power consumption, further able to realize more unrestricted system without increasing excessive circuits.
According to a first aspect of the present invention, there is provided a semiconductor device having a memory circuit including a dynamic memory cell and performing refresh operations for retaining data of the memory circuit in a standby mode, wherein it has the following: a system block for outputting a start signal and a mode selection signal indicating a parity generation mode before being in the standby mode, receiving an end signal after the predetermined time to be in the standby mode and perform a refresh operation with respect to the memory circuit, then outputting the start signal and a mode selection signal indicating an error correction mode, and receiving the end signal after the predetermined time to be in a normal mode; a pattern generating circuit for receiving the start signal and the mode selection signal indicating the parity generation mode or the start signal and the mode selection signal indicating the error correction mode to generate commands and addresses with respect to the memory circuit with the predetermined pattern corresponding to a mode, and outputting the end signal when a patter generating operation finishes in the respective modes; an error correcting circuit for receiving the start signal and the mode selection signal indicating the parity generation mode to generate a parity based on data read from the memory circuit, receiving the start signal and the mode selection signal indicating the error correction mode to perform an error correcting operation based on the parity generated with respect to data read from the memory circuit in the parity generation mode, and outputting data after error correcting; and an interface circuit for inputting the start signal and the mode selection signal indicating the parity generation mode or the start signal and the mode selection signal indicating the error correction mode by the system block to the pattern generation circuit and the error correction circuit, supplying commands and addresses by the pattern generating circuit to the memory circuit, inputting data read from the memory circuit to the error correcting circuit, and outputting data after error correction mode processing by the error correction circuit to the memory circuit.
Preferably, the memory circuit, the system block, the pattern generating circuit, the error correcting circuit and the interface circuit are integrated in a single chip.
Preferably, the pattern generating circuit is formed by a BIST (Built In Self Test) circuit.
Preferably, the pattern generating circuit has a program retention memory inside, and receives the start signal to generate a pattern provided according to a program of the program retention memory.
Preferably, the memory circuit allocates a real data area and a parity area to different areas in a recording area.
Preferably, the memory circuit is divided into a plurality of blocks, and the parity data is memorized in a block different from an area where a corresponding real data is recoded.
According to the present invention, for example, first, for performing a parity generation in the parity generation mode, the system block outputs the mode selection signal and the start signal passing though the interface circuit to the pattern generating circuit and the error correcting circuit.
The pattern generating circuit that received the mode selection signal and the start signal, reads data from the memory circuit and inputs the same to the error correcting circuit to generate the parity, generates a read command and address with the predetermined pattern and outputs the same to the interface circuit.
The command and address are supplied selectivity by the interface circuit to the memory circuit.
Due to this, the real data and parity data are read from the memory circuit. The data of the memory circuit is input selectivity by the interface circuit to the error correcting circuit.
The error correcting circuit receives the start signal and the selection signal indicating the parity generation mode via the interface circuit by the system block. In the parity generation mode of the ECC operation mode in standby state, the parity bit is generated based on data which is read from the memory circuit and input passing though the interface circuit. The parity data is stored for using in the error correcting processing in every standby mode of the error correction mode.
Then, when the predetermined time elapses to end the parity generation mode, the pattern generating circuit outputs an end signal via the interface circuit to the system block.
The system block received the end signal is in standby mode that is the state able to retain data for a long time.
The system block performs a standby refresh for data retention with respect to the memory circuit.
Next, in order to perform the error correction in the error correction mode, the system block outputs the mode selection signal and the start signal passing though the interface circuit to the pattern generating circuit and the error correcting circuit.
The pattern generating circuit, in periods introducing to the standby mode and resetting from the standby mode, receives the start signal and the mode selection signal indicating the error correction mode via the interface circuit by the system block. The data read from the memory circuit is made to input to the error correcting circuit and perform the error correction of the defective (error) bit. Then, the real data after correcting or free from correcting and the parity bit data are read from the error correcting circuit, a reading command and address are generated with the predetermined pattern and output to the interface circuit for writing with respect to the memory circuit.
The command and address are supplied selectivity by the interface circuit to the memory circuit.
Due to this, the real data and the parity data are read from the memory circuit. Then, data of the memory circuit is input selectivity by the interface circuit to the error correcting circuit.
The error correcting circuit receives the start signal and the selection signal indicating the error correction mode via the interface circuit by the system block. In the error correction mode of the ECC operation mode in the standby state, the data read from the memory circuit is input passing though the interface circuit, and the error correction is performed with respect to defective data based on the parity generated in the parity generation mode.
The error correcting circuit outputs data after error correcting or unnecessary to error correcting and the parity bit data to the interface circuit. Due to this, the data corrected with error is written back into the memory circuit.
Then, when the predetermined operation finishes and the error correction mode ends, the pattern generating circuit outputs the end signal via the interface circuit to the system block.
The above processing is performed with respect to the entire data.
The system block received the end signal is in a normal mode that is a normal data retention mode.
These and other objects and features of the present invention will be described in more detail with reference to the accompanying drawings, in which:
Next, preferred embodiments of the present invention will be explained with reference to the drawings.
A semiconductor device 10 according to the present embodiment has a DRAM circuit 11, an algorithmic pattern generator (ALPG) 12 as a DRAM pattern generating circuit, an ECC circuit 13 as an error correcting circuit, a test circuit 14 as an interface circuit, and system block 15, and is formed by integrating them on a single chip CP.
The semiconductor device 10 according to the present embodiment connects a memory tester 20 outside of the chip CP to the system block 15 and can perform the predetermined test with respect to the DRAM circuit (eDRAM 0 to 3) 11.
The semiconductor device 10 generates a parity bit when introducing a standby state and corrects DRAM data by the ECC circuit (an ECC decoder) when returning from the standby state, so that it can be improved a data retaining characteristic in the standby state of the DRAM.
The semiconductor device 10 realizes a system wherein the entire system generates only a start signal to be able to finish a series of operations of a generation of the parity data and data correction to control the DRAM pattern generating circuit embedded the system in inside.
By making the pattern generating circuit as a built in self test (BIST) circuit of DRAM (in the present embodiment, the ALPG 12), the excessive circuit mounted in the system can be decreased and the system can be optimized.
By using the BIST circuit, since a restriction with respect to an access to the DRAM is removed, it is possible to transfer data efficiently.
Hereinafter, the respective constructions and functions will be described.
The DRAM circuit 11 has, for example, a capacity of 64 M bit, and is divided into four banks 11-0 to 11-3 (eDRAM 0 to 3) having the capacity of 16 M bit each other.
The DRAM circuit 11 is not built into the refresh period setting circuit in the standby state, so the setting of the refresh period is performed by the system block 15. The DRAM circuit 11 is supplied with a clock by the system block 15. When using the memory tester 20, a clock by the memory tester 20 is supplied passing thought the system block 15.
The DRAM circuit 11 performs a transfer of data (read and write) by 128-bit unit in a single bank (11-0 to 11-3) with the system block 15 via a bus 16.
The DRAM circuit 11 performs a transfer of the data and parity by 8-bit unit in a single bank with the test circuit 14 via a bus 17.
Further, the DRAM circuit 11 performs the transfer of commands by the system block 15 or commands by the ALPG 12 with the test circuit 14 via a bus 18.
The DRAM circuit 11 stores the real data and parity bit data in the respective banks 11-0 to 11-3.
In the present embodiment, a data area and a parity area are arranged in the respective banks 11-0 to 11-3 as shown in
In an example of
In the present embodiment, as shown in
Due to this, the parity bit is retained by using a part of the memory area and secured with the parity area by swapping data when introducing standby state.
Similarity, as shown in
By applying the DRAM circuit 11 having the above configuration, it can be obtained with the following effects.
In the case of DRAM, when reading data, the corresponding data area has to be activated (activate operation).
For this reason, in usual, as shown in
On the other hand, in the DRAM circuit 11 according to the present embodiment, as shown in
The ALPG 12 as the DRAM pattern generating circuit receives a start signal RUN and a selection signal EMS indicating the parity generation mode via the test circuit 14 by the system block 15, and reads out data from each of the banks 11-0 to 11-3 of the DRAM circuit 11 in the parity generation mode of the ECC operation mode in the standby state. Then it generates commands and addresses with the predetermined pattern and outputs the same to the test circuit 14 to make it input to the ECC circuit 13 and generate the parity. Then, when the predetermined time elapses to end the parity generation mode, it outputs the end signal END via the test circuit 14 to the system block 15.
The ALPG 12 receives the start signal RUN and the selection signal EMSEL indicating the error correction mode via the test circuit 14 by the system block 15 after the standby mode and the refresh period elapse, reads out data from each of the banks 11-0 to 11-3 of the DRAM circuit 11 and makes it input and the ECC circuit 13 perform the error correction in the error correction mode of the ECC operation mode in the standby state. Then it generates commands and addresses for writing with respect to each of the banks 11-0 to 11-3 of the DRAM circuit 11 with the real data and the parity data output by the ECC circuit 13 with the predetermined pattern, and outputs the same to the test circuit 14. Then, when the predetermined time elapses to end the error correction mode, it outputs the end signal END via the test circuit 14 to the system block 15.
Due to this, a series of operations in which the parity bit is generated when introducing standby state and the DRAM data is corrected in returning from standby state by the ECC circuit (ECC decoder) 13 is controlled by the ALPG 12 in accordance with the start signal RUN from the system block 15.
The ALPG 12 is a pattern generating circuit for generating the command and data in the BIST system, so it has a permissibility generating a lot of patterns required for testing the DRAM free from restraint.
In particular, in the case of devices having an embedded DRAM or other a lot of bits I/O, a test use bus interconnection able to lead to outside of the chip CP must be limited (in the present embodiment, it is 8-bit).
Consequently, by using the ALPG 12, the efficient command pattern can be generated without staling DRAM (or data bas).
The ALPG 12 shown in
In the ALPG 12, data in the command storing unit 121 built into it is read by the stored command read controlling unit 122, and command patterns and address patterns are generated by the generation pattern operation unit 123 from the read command.
Due to this, by rewriting data of the command storing unit 121, it has also an advantage able to rewrite a command pattern easily.
The ECC circuit 13 receives the start signal RUN and the selection signal EMSEL indicating the parity generation mode via the test circuit 14 by the system block 15, and generates parity bit data of 32-bit based on data read from the each of banks 11-0 to 11-3 of the DRAM circuit 11 and input passing though the test circuit 14 in the parity generation mode of the ECC operation mode in the standby state.
The ECC circuit 13, after the standby mode and the refresh period elapse and before returning to the normal operation, receives the start signal RUN and the selection signal EMSEL indicating the error correction mode via the test circuit 14 by the system block 15, inputs data read from each of the banks 11-0 to 11-3 of the DRAM circuit 11 passing through the test circuit 14 in the error correction mode of the ECC operation mode in the standby mode, performs the error correction with respect to the defective data based on the parity generated in the parity generation mode, and outputs data after error correcting or unnecessary to error correcting and the parity bit data to the test circuit 14.
The ECC circuit 13 transfers an error status data passing though the test circuit 14 to the system block 15.
The test circuit 14 supplies the start signal RUN and the selection signal EMSEL indicating the parity generation mode or the error correction mode by the system block 15 to the ALPG 12 and the ECC circuit 13, and functions as the interface circuit for data transferring based on the command and the address data generated by the ALPG 12 between each of the banks 11-0 to 11-3 of the DRAM circuit 11 and the ECC circuit 13.
The test circuit 14 supplies the error status information of the ECC circuit 13 to the system block 15.
Note that, in the error correction mode, only when there is correcting bits, data of 128-bit is written back to the banks 11-0 to 11-3 of the DRAM circuit 11.
If unnecessary to correct, the write operation to the banks 11-0 to 11-3 is controlled not to perform.
The condition is referred to a signal for the number of corrected bit of the ECC circuit 13, if the number of the corrected bit is not 0, the write-back operation is performed with respect to the banks 11-0 to 11-3.
Even if there are a lot of defects to be impossible to correct or the ECC circuit 13 performs the mistaken correction, referring to only the number of corrected bit, the write operation is performed to the banks 11-0 to 11-3.
Further, the command signal is, as shown in
The signal for the number of corrected bits is discriminated, for example, by the test circuit 14, and the control above mentioned is performed.
The test circuit 14 is, as shown in
The address FIFO 141 receives signals IOR and ES by the ALPG 12, retains the address data by the ALPG 12, and supplies the same to each of the banks 11-0 to 11-3 of the DRAM circuit 11.
The address FIFO 142 receives a signal 0_START by the ALPG 12, retains data by the ECC circuit 13, receives the signal IOR and supplies the retained data to the banks 11-0 and 11-1.
The address FIFO 143 receives the signal 0_START by the ALPG 12, retains data by the ECC circuit 13, receives the signal IOR and supplies the retained data to the banks 11-2 and 11-3.
The error states unit 144 receives error status information by the ECC circuit 13 and outputs the same as a signal ECCSTS to the system block 15.
The selector 145 selectively inputs read data of the bank 11-0 or bank 11-1 to the ECC circuit 13 based on the selection signal by the ALPG 12.
The selector 146 selectively inputs selectively read data of the bank 11-2 or bank 11-3 to the ECC circuit 13 based on the selection signal by the ALPG 12.
The selector 147 selectively supplies selectively the command by the ALPG 12 to the banks 11-0 and 11-1 or the banks 11-2 and 11-3 based on the selection signal by the ALPG 12.
The system block 15 controls the entire system, in the ECC operation mode as shown in
The system block 15, first, outputs the mode selection signal EMSEL and the start signal RUN passing though the test circuit 14 to the ALPG 12 and the ECC circuit 13 in order to perform a parity generation in the parity generation mode.
The system block 15, after ending the parity generation mode, performs a standby refresh for data retention with respect to the DRAM circuit 11 based on the standby signal STBY and standby clock SCLK.
The system block 15, after ending the standby refresh, outputs the mode selection signal EMSEL and the start signal RUN passing though the test circuit 14 to the ALPG 12 and the ECC circuit 13 to make it perform an operation of the error correction mode for correcting defective (error) bits.
The system block 15 becomes the normal mode after ending the error correction mode, for example, and performs normal controls to memory access passing through the bus 16.
Next, an introducing or returning sequence to standby by the above configurations will be described with reference to timing charts of
Introducing to Standby
In order to perform the parity generation in the parity generation mode, the system block 15 outputs the mode selection signal EMSEL and the start signal RUN passing though the test circuit 14 to the ALPG 12 and the ECC circuit 13.
The ALPG 12 that received the mode selection signal EMSEL and the start signal RUN generates a read command RD and addresses AY and TAY as shown in
The read command RD of a data side is a command for reading data of 128-bit, and the data among the banks 11-0 to 11-3, the test circuit 14 and the ECC circuit 13 is transferred by 8-bit, so that the command R is generated for dividing and transferring in 8-bit.
The generated parity bit data of 32-bit is divided into 8-bit similar to at the time of reading and transferred to the bank. The macro is written and divided by using a writing function mask in every 8-bit for four times.
The commands and addressees are selectively supplied by the selector 147 of the test circuit 14 to the banks 11-0 to 11-3 of the DRAM circuit 11.
Due to this, the real data and the parity data are read from the banks 11-0 to 11-3 in 8-bit unit. The data in the banks 11-0 and 11-1 are selectively input by the selector 145 of the test circuit 14 to the ECC circuit 13. Similarly, the data in the banks 11-2 and 11-3 are selectively input by the selector 146 of the test circuit 14 to the ECC circuit 13.
The ECC circuit 13 receives the start signal RUN and the selection signal EMSEL indicating the parity generation mode via the test circuit 14 by the system block 15. In the parity generation mode of the ECC operation mode in the standby state, the parity bit of 32-bit is generated based on data read from each of the banks 11-0 to 11-3 of the DRAM circuit 11 and input passing though the test circuit 14. The parity data is stored for using in the error correcting operation of the error correction mode in every standby mode.
Then, when the predetermined time elapses to end the parity generation mode, the ALPG 12 outputs the end signal END via the test circuit 14 to the system block 15.
The system block 15 received the end signal END enters in the DRAM standby mode that is able to retain data for a long time.
The system block 15 performs the standby refresh with respect to the DRAM circuit 11 for data retention based on the standby signal STBY and the standby clock SCLK.
Returning from Standby
Next, in order to perform the error correction in the error correction mode, the system block 15 outputs the mode selection signal EMSEL and the start signal RUN passing though the test circuit 14 to the ALPG 12 and the ECC circuit 13.
After standby mode and refresh period, the ALPG 12 receives the start signal RUN and the mode selection signal EMSEL indicating the error correction mode via the test circuit 14 by the system block 15, reads data from each of the banks 11-0 to 11-3 of the DRAM circuit 11, and inputs the same to the ECC circuit 13 to make it perform error correction of the defective (error) bit. The real data after correcting or unnecessary to error correction are read from the ECC circuit 13, and the read command RD, a write command W, and the addresses AY and TAY as shown in
The commands and addresses are selectively supplied by the selector 147 of the test circuit 14 to the banks 11-0 to 11-3 of the DRAM circuit 11.
The address of the time of writing operation is supplied passing though the address FIFO 141 of the test circuit 14 to the respective banks 11-0 to 11-3.
Due to this, the real data and the parity data are read from the each of banks 11-0 to 11-3 by 8-bit unit. The data of the banks 11-0 and 11-1 are selectively input by the selector 145 of the test circuit 14 to the ECC circuit 13. Similarly, the data of the banks 11-2 and 11-3 are selectively input by the selector 146 of the test circuit 14 to the ECC circuit 13.
The ECC circuit 13 receives the start signal RUN and the selection signal EMSEL indicating the error correction mode via the test circuit 14 by the system block 15. In the error correction mode of the ECC operation mode in the standby mode, the data read from each of the banks 11-0 to 11-3 of the DRAM circuit 11 is read passing though the test circuit 14 to perform the error correction with respect to the defective data based on the parity generated in the parity generation mode.
Then, the ECC circuit 13 outputs data after correcting or unnecessary to correcting and parity bit data to the test circuit 14. Due to this, data corrected errors are written back to the predetermined banks 11-0 to 11-3.
The ECC circuit 13 transfers an error status passing though the test circuit 14 to the system block 15.
Then, when the predetermined operation is finished to end the error correction mode, the ALPG 12 outputs the end signal END via the test circuit 14 to the system block 15.
The above processing is performed with respect to the entire data.
The system block 15 received the end signal END is in the normal mode that is normal data retention mode.
As mentioned above, according to the present embodiment, the semiconductor device 10 has the following units: the system block 15 for outputting the start signal and the mode selection signal indicating the parity generation mode before entering the standby mode, receiving the end signal after the predetermined time to perform a refresh operation with respect to the DRAM circuit 11 in the standby mode, then outputting the start signal and the mode selection signal indicating the error correction mode, and receiving the end signal after the predetermined time to enter in the normal mode; the ALPG 12 for receiving the start signal and the mode selection signal indicating the parity generation mode and the start signal and the mode selection signal indicating the error correction mode to generate the commands and addresses with respect to the DRAM circuit 11 with the predetermined pattern in accordance with the mode, and outputting the end signal when the patter generating operation is finished in the respective mode; the ECC circuit 13 for receiving the start signal and the mode selection signal indicating the parity generation mode to generate a parity based on data read from the DRAM circuit 11, receiving the start signal and the mode selection signal indicating the error correction mode to perform the error correcting processing with respect to data read from the DRAM circuit 11 based on the parity generated in the parity generation mode, and outputting data after error correcting; and the test circuit 14 for inputting the start signal and the mode selection signal indicating the parity generation mode, and the start signal and the mode selection signal indicating the error correction mode by system block 15 to the ALPG 12 and the ECC circuit 13, supplying the commands and addresses by the ALPG 12 to the DRAM circuit 11, inputting data read from the DRAM circuit 11 to the ECC circuit 13, and outputting data after the error correction mode processing by the ECC circuit 13 to the DRAM circuit 11. As a result, the following effects can be obtained.
It is possible to improve the data retaining characteristics in the standby state of DRAMs.
By controlling a system by the ALPG 12 as a DRAM pattern generating circuit embedded inside, the system block 15 only generates the start signal, it can be realized the system able to complicate a series of operations of the generation of the parity data and the data correction, subsequently, then it can be reduced a load of the system block 15 controlling the entire system.
Besides, since the ALPG 12 of the patter generating circuit is the DRAM BIST (Built In Self Test) circuit, the excessive circuit mounted in system can be reduced and the system can be optimized. By using the BIST circuit, a restriction with respect to accesses to DRAM is removed, it is possible to transfer data efficiency.
Moreover, the ALPG 12 has a program retention use memory with internal, by supplying only the start signal, it is possible to generate the provided patterns (command groups). When changing the provided pattern, it is possible to change easily only changing memory contents.
Further, the refresh period setting circuit in the standby state can perform a refresh operation by the outer memory controller free from built-in eDRAM system. Due to this, the refresh period in the standby state is changeable a setting to the optimized amount considered with surroundings such as chip temperatures.
The parity bit is retained by using a part of the memory area, so that the parity area can be secured by swapping data at the time of standby introduction. And the parity area is retained in the other banks or other blocks, so that efficient data transferring is possible at the time of transferring the real data or parity data.
Due to controlling by using the BIST circuit, by rewriting memory data, it has advantage that the real data area and parity data area can be set free from restrict.
Due to controlling by using the BIST circuit, it is possible to improve a faultless detecting rate of the ECC system at quality test when producing.
As mentioned above, due to using the present invention, a DRAM refresh cycle in the standby state can be extend remarkably, the effect decreasing power consumption due to this can be achieved parallel to the increase of the circuit size making minimum necessary.
It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and alterations may occur depending on design requirements and other factors in so far as they are within scope of the appeared claims or the equivalents thereof.
Number | Date | Country | Kind |
---|---|---|---|
2004-081505 | Mar 2004 | JP | national |