US20210083655A1 - Semiconductor integrated circuit, transmission device, and memory device - Google Patents
Semiconductor integrated circuit, transmission device, and memory device Download PDFInfo
- Publication number
- US20210083655A1 US20210083655A1 US16/795,677 US202016795677A US2021083655A1 US 20210083655 A1 US20210083655 A1 US 20210083655A1 US 202016795677 A US202016795677 A US 202016795677A US 2021083655 A1 US2021083655 A1 US 2021083655A1
- Authority
- US
- United States
- Prior art keywords
- clock
- circuit
- output
- signal
- sampling
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1689—Synchronisation and timing concerns
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/32—Timing circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1051—Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/22—Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/22—Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management
- G11C7/222—Clock generating, synchronizing or distributing circuits within memory device
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1078—Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
- G11C7/1093—Input synchronization
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K3/00—Circuits for generating electric pulses; Monostable, bistable or multistable circuits
- H03K3/01—Details
- H03K3/017—Adjustment of width or dutycycle of pulses
Definitions
- Embodiments described herein relate generally to a semiconductor integrated circuit, a transmission device, and a memory device.
- a semiconductor integrated circuit capable of adjusting a duty ratio of a signal to be transmitted is known. Incidentally, improvement in quality including the duty ratio of signals transmitted by semiconductor integrated circuits is expected.
- FIG. 1 is a block diagram showing a configuration of a memory device in a first embodiment.
- FIG. 2 is a block diagram showing configurations of a NAND Phy and a NAND device in the first embodiment.
- FIG. 3 is a block diagram showing an example of an internal configuration of a DCA circuit in the first embodiment.
- FIG. 4 is a timing chart showing signals at points of the DCA circuit in the first embodiment.
- FIG. 5 is a block diagram showing an example of an internal configuration of a first DDR flip-flop circuit in the first embodiment.
- FIG. 6 is a timing chart illustrating a first correction process in the first embodiment.
- FIG. 7 is a timing chart illustrating a second correction process in the first embodiment.
- FIG. 8 is a timing chart illustrating a third correction process in the first embodiment.
- FIG. 9 is a flowchart showing a part of a flow of the third correction process in the first embodiment.
- FIG. 10 is a flowchart showing another part of the flow of the third correction process in the first embodiment.
- FIG. 11 is a timing chart illustrating examples of advantages of the third correction process in the first embodiment.
- FIG. 12 is a timing chart illustrating a third correction process in a second embodiment.
- a semiconductor integrated circuit includes a clock supply circuit, a first output circuit and a second output circuit.
- the clock supply circuit outputs a first clock and a second clock, the first clock having a first period, the second clock having a second period that is 1/m times the first period.
- the m is a natural number of 2 or more.
- the first output circuit outputs a first signal indicating content of data to an outside when a first operation is performed and outputs a second signal having a toggle pattern based on the first clock to the outside when a second operation is performed.
- the second output circuit outputs an operation clock based on the first clock to the outside when the first operation is performed and outputs a sampling clock based on the second clock to the outside when the second operation is performed.
- based on XX means “based on at least XX” and includes being based on another element in addition to XX. “Based on XX” is not limited to the case where XX is directly used and also includes being based on a result of an operation or processing performed on XX. “XX” is a certain element (for example, certain information).
- connection is not limited to mechanical connection and also includes electrical connection.
- the memory device includes a NAND device and a memory controller that controls the NAND device.
- a NAND Phy included in the memory controller is configured to be able to correct a duty and a phase of a signal transmitted from the memory controller to the NAND device.
- the “phase” corresponds to a timing of rising (or falling) of an edge of a pulse-like signal.
- the signal transmitted from the memory controller to the NAND device may deteriorate in a transmission line between the memory controller and the NAND device, a signal wiring in the NAND device, a receiver circuit in the NAND device, or the like. In this case, even if the memory controller corrects the duty and phase of signals, the NAND device may not be able to process signals with high accuracy.
- a duty and/or phase of a signal transmitted from a memory controller to a NAND device is corrected based on a result of determining the duty and/or phase of the signal in the NAND device. This can improve a quality of the signal in the NAND device.
- a present invention is not limited to the embodiments described below.
- FIG. 1 is a block diagram showing a configuration of a memory device 1 in a first embodiment.
- the memory device 1 is, for example, a storage device and is connected to a host device 2 .
- the memory device 1 functions as an external memory device for the host device 2 .
- the host device 2 is, for example, a server device, a personal computer, or a mobile information processing device.
- the host device 2 can issue access requests (for example, a read request and a write request) to the memory device 1 .
- the memory device 1 includes, for example, a memory controller 10 and a plurality of NAND devices 20 .
- the memory controller 10 is an example of a “controller.”
- Each NAND device 20 is an example of a “semiconductor memory device.”
- the memory controller 10 includes, for example, a host interface (also referred to as I/F) controller 11 , a random access memory (also referred to as RAM) 12 , a read only memory (also referred to as ROM) 13 , a central processing unit (also referred to as CPU) 14 , an error correcting code (also referred to as ECC) circuit 15 , and a NAND controller 16 . These components are connected to each other by a bus 17 .
- a host interface also referred to as I/F
- RAM random access memory
- ROM read only memory
- CPU central processing unit
- ECC error correcting code
- the memory controller 10 is constituted by a system on a chip (also referred to as SoC) in which such components are combined into one chip.
- SoC system on a chip
- some of the host I/F controller 11 , the RAM 12 , the ROM 13 , the CPU 14 , the ECC circuit 15 , and the NAND controller 16 may be provided outside the memory controller 10 .
- One or more of the RANI 12 , the ROM 13 , the CPU 14 , and the ECC circuit 15 may also be provided inside the NAND controller 16 .
- the host I/F controller 11 performs control of a communication interface between the host device 2 and the memory device 1 and control of data transfer between the host device 2 and the RAM 12 under the control of the CPU 14 .
- the RAM 12 is, for example, but not limited to, a synchronous dynamic random access memory (also referred to as SDRAM) or a static random access memory (also referred to as SRAM).
- SDRAM synchronous dynamic random access memory
- SRAM static random access memory
- the RANI 12 functions as a buffer for data transfer between the host device 2 and the NAND device 20 .
- the RAM 12 provides a work area to the CPU 14 .
- Firmware also referred to as a program stored in the ROM 13 is loaded into the RAM 12 when the memory device 1 operates.
- the CPU 14 is an example of a hardware processor.
- the CPU 14 controls operations of the memory controller 10 by executing, for example, the firmware loaded into the RAM 12 .
- the CPU 14 controls operations relating to data writing, reading, and erasing to and from the NAND device 20 .
- the CPU 14 realizes a command sender CS by executing the firmware.
- the command sender CS is a functional unit that transmits commands (for example, a read command and a write command) to the NAND device 20 . All or a part of the command sender CS may be realized by a circuit provided in the NAND controller 16 .
- the ECC circuit 15 performs encoding for error correction on data for writing into the NAND device 20 .
- the ECC circuit 15 performs error correction on the read data based on an error correction code assigned when the write operation is performed.
- the NAND controller 16 performs control of data transfer between the RAM 22 and the NAND device 20 under the control of the CPU 14 .
- the NAND controller 16 has a plurality of channels ch.
- FIG. 1 shows an example in which two channels ch (that is, ch. 0 and ch. 1) are provided, the memory controller 10 may have one or more than three channels ch.
- the NAND controller 16 includes a plurality of NAND Phys 30 corresponding to, for example, the number of channels ch.
- Each NAND Phy 30 is a physical layer that is a part of a transmission/reception circuit of the NAND controller 16 .
- the NAND Phy 30 converts a digital signal that is to be transmitted from the memory controller 10 to a NAND device 20 into an electrical signal.
- the NAND Phy 30 transmits the converted electrical signal to the NAND device 20 through a transmission line L.
- the NAND Phy 30 also receives an electrical signal transmitted from the NAND device 20 through the transmission line L.
- the NAND Phy 30 converts the received electrical signal into a digital signal.
- the NAND Phy 30 is an example of a “transmission device.” The NAND Phy 30 will be described in detail later.
- the NAND device 20 is a memory chip as a nonvolatile semiconductor memory and is, for example, a NAND flash memory.
- a plurality of NAND devices 20 are connected to each channel ch (ch. 0 and ch. 1).
- the number of NAND devices 20 connected to each channel ch may be one or more than three.
- One NAND device 20 A connected to, for example, the channel ch. 0 is an example of a “first semiconductor memory device.”
- Another NAND device 20 B connected to, for example, the channel ch. 0 is an example of a “second semiconductor memory device.”
- the plurality of NAND Phys 30 have the same or similar configurations and the plurality of NAND devices 20 have the same or similar configurations. Therefore, hereinafter, one NAND Phy 30 and one NAND device 20 will be described.
- FIG. 2 is a block diagram showing configurations of the NAND Phy 30 and the NAND device 20 .
- FIG. 2 shows an extracted part of a circuit relating to signal transmission in the NAND Phy 30 .
- the NAND Phy 30 includes, for example, first to third connection terminals 41 , 42 , and 43 , a phase locked loop (also referred to as PLL) circuit 50 , first to third clock trees 51 to 53 , a multiplexer 54 , first to fourth duty adjustment circuits 61 , 65 , 71 , and 74 , a data processing circuit 62 , first to third double data rate (DDR) flip-flop circuits 63 , 72 , and 81 , first to third delay circuits 64 , 73 , and 82 , first and second input/output circuits 66 and 75 , first and second detection circuits 83 and 84 , and a control circuit 90 .
- DDR double data rate
- the first connection terminal 41 is an input terminal of the NAND Phy 30 and is connected to another component in the NAND controller 16 .
- the second connection terminal 42 is connected to the NAND device 20 through one of the channels ch described above.
- the second connection terminal 42 functions as an output terminal for a data signal (DQ).
- the “data signal” is a signal indicating a content of data.
- the third connection terminal 43 is connected to the NAND device 20 through the same channel ch as that of the second connection terminal 42 . That is, the second connection terminal 42 and the third connection terminal 43 are connected to one or a plurality of identical NAND devices 20 .
- the third connection terminal 43 functions as an output terminal for an operation clock (also referred to as DQS).
- the “operation clock” is a signal used to adjust the timing of data writing to the NAND device 20 or the like.
- the second connection terminal 42 is an example of a “first terminal.”
- the third connection terminal 43 is an example of a “second terminal.”
- the PLL (also referred to as phase locked loop) circuit 50 is a phase synchronization circuit and includes a clock oscillator.
- the PLL circuit 50 can output a plurality of types of clocks whose phases are synchronized, for example, by changing the frequency division ratio through frequency multiplication.
- the PLL circuit 50 can output a first clock having a first period (also referred to as a first frequency) and a second clock having a second period which is 1/m times the first period, that is, having a second period (also referred to as a second frequency) which is m times the first frequency (where m is a natural number of 2 or more).
- the PLL circuit 50 is an example of a “clock supply circuit.”
- a flow of the first clock is indicated by a thin line and a flow of the second clock is indicated by a thick line.
- the following description will be given with reference to an example in which the second clock is twice as fast as the first clock (i.e., has half the period of the first clock or twice the frequency of the first clock).
- the first clock tree 51 is a circuit that distributes the first clock generated by the PLL circuit 50 .
- the first clock tree 51 is supplied with the first clock from the PLL circuit 50 and outputs the supplied first clock to the first duty adjustment circuit 61 .
- the second clock tree 52 is a circuit that distributes the first clock or the second clock generated by the PLL circuit 50 .
- An input terminal of the second clock tree 52 is connected to the PLL circuit 50 via the multiplexer 54 .
- the multiplexer 54 When the multiplexer 54 is in a first state, the second clock tree 52 is supplied with the first clock from the PLL circuit 50 and outputs the supplied first clock to the third duty adjustment circuit 71 .
- the multiplexer 54 is in a second state, the second clock tree 52 is supplied with the second clock from the PLL circuit 50 and outputs the supplied second clock to the third duty adjustment circuit 71 .
- the multiplexer 54 is controlled by a correction sequencer 91 that will be described later and is switched between the first state and the second state.
- the multiplexer 54 is switched to the first state.
- a third correction process that will be described later is performed, the multiplexer 54 is switched to the second state.
- the third clock tree 53 is a circuit that distributes the second clock generated by the PLL circuit 50 .
- the third clock tree 53 is supplied with the second clock from the PLL circuit 50 and outputs the supplied second clock to the third DDR flip-flop circuit 81 .
- the first duty adjustment circuit 61 (also referred to as a duty cycle adjuster (i.e. DCA) which will be hereinafter referred to as a “first DCA circuit 61 ”) is a circuit that adjusts (or corrects) the duty of the first clock on the upstream side of the first DDR flip-flop circuit 63 .
- the first DCA circuit 61 adjusts the duty of the first clock supplied from the first clock tree 51 and outputs the first clock with the adjusted duty to the first DDR flip-flop circuit 63 .
- FIG. 3 is a block diagram showing an example of an internal configuration of the first DCA circuit 61 .
- the first DCA circuit 61 includes, for example, a delay circuit 101 , an AND element 102 , an OR element 103 , and a multiplexer 104 .
- the delay circuit 101 delays the signal (also referred to as first clock) input to the first DCA circuit 61 .
- the delay circuit 101 includes a plurality of delay elements connected in series and can change the number of delay elements based on a signal from the outside (for example, a signal from the correction sequencer 91 ).
- the delay circuit 101 can adjust the amount of delay of the input signal by changing the number of delay elements.
- the signal delayed by the delay circuit 101 is supplied to a first input terminal of the AND element 102 .
- the signal input to the first DCA circuit 61 is directly supplied to a second input terminal of the AND element 102 .
- the signal delayed by the delay circuit 101 is supplied to a first input terminal of the OR element 103 .
- the signal input to the first DCA circuit 61 is directly supplied to a second input terminal of the OR element 103 .
- a first input terminal of the multiplexer 104 is connected to an output terminal of the AND element 102 .
- a second input terminal of the multiplexer 104 is connected to an output terminal of the OR element 103 .
- the output terminal of the multiplexer 104 is an output terminal of the first DCA circuit 61 .
- the multiplexer 104 can be switched between a first state in which it connects the output terminal of the AND element 102 to the output terminal of the multiplexer 104 and a second state in which it connects the output terminal of the OR element 103 to the output terminal of the multiplexer 104 based on a signal from the outside (for example, a signal from the correction sequencer 91 ).
- FIG. 4 is a timing chart showing signals at points in the first DCA circuit 61 .
- Part (A) of FIG. 4 shows a waveform of the signal (also referred to as the first clock) (that is, the signal at point A in FIG. 3 ) input to the first DCA circuit 61 .
- Part (B) of FIG. 4 shows a waveform of the signal delayed by the delay circuit 101 (that is, the signal at point B in FIG. 3 ).
- Part (C) of FIG. 4 shows a waveform of the signal input to the first input terminal of the multiplexer 104 (that is, the signal at point C in FIG. 3 ).
- Part (D) of FIG. 4 shows a waveform of the signal input to the second input terminal of the multiplexer 104 (that is, the signal at point D in FIG. 3 ).
- the correction sequencer 91 can change the duty of the signal passing through the first DCA circuit 61 based on the amount of delay of the signal due to the delay circuit 101 and the state of the multiplexer 104 .
- the correction sequencer 91 makes the duty of the signal smaller than that of the original signal (i.e. decreases the duty ratio of the signal) by setting the multiplexer 104 to the first state.
- the correction sequencer 91 makes the duty of the signal larger than that of the original signal (i.e. increases the duty ratio of the signal) by setting the multiplexer 104 to the second state.
- the configurations of the second to fourth duty adjustment circuits 65 , 71 , and 74 are similar to, for example, that of the first DCA circuit 61 described above.
- the “first clock” may be replaced with a “data signal” or a “toggle signal” and the “second clock” may be replaced with an “operation clock” or a “sampling clock” in the above description.
- the configurations of the first to fourth duty adjustment circuits 61 , 65 , 71 , and 74 are not limited to the above example.
- the data processing circuit 62 is connected to another circuit in the NAND controller 16 through the first connection terminal 41 of the NAND Phy 30 .
- data for writing that is to be transmitted to the NAND device 20 is input to the data processing circuit 62 .
- the data processing circuit 62 outputs the input data for writing to the first DDR flip-flop circuit 63 .
- the data processing circuit 62 also acquires data indicating an operation clock pattern that is to be transmitted to the NAND device 20 from a storage (not shown).
- the data processing circuit 62 outputs the data indicating the operation clock pattern to the second DDR flip-flop circuit 72 .
- the data processing circuit 62 acquires data indicating a toggle pattern (i.e. a pattern in which a high level and a low level are alternately repeated with a certain period) that is to be output to the first detection circuit 83 from the storage (not shown).
- the data processing circuit 62 outputs the data indicating the toggle pattern to the first DDR flip-flop circuit 63 .
- the data processing circuit 62 also acquires data indicating a sampling clock pattern that is to be output to the first detection circuit 83 from the storage (not shown).
- the data processing circuit 62 outputs the data indicating the sampling clock pattern to the third DDR flip-flop circuit 81 .
- the “first DDR flip-flop circuit 63 ” may be replaced with the “second DDR flip-flop circuit 72 ” in the above description.
- the data processing circuit 62 when a third correction process is performed, acquires data indicating a toggle pattern that is to be transmitted to the NAND device 20 from the storage (not shown). The data processing circuit 62 outputs the data indicating the toggle pattern to the first DDR flip-flop circuit 63 .
- the data processing circuit 62 also acquires data indicating a special sampling clock pattern that is to be transmitted to the NAND device 20 from the storage (not shown). The data processing circuit 62 outputs the data indicating the special sampling clock pattern to the second DDR flip-flop circuit 72 .
- a signal input terminal of the first DDR (i.e. Double Data Rate) flip-flop circuit 63 (hereinafter referred to as a “first DDR_FF circuit 63 ”) is connected to an output terminal of the data processing circuit 62 .
- a clock input terminal of the first DDR_FF circuit 63 is connected to the output terminal of the first DCA circuit 61 .
- the first DDR_FF circuit 63 When a data write operation is performed, the first DDR_FF circuit 63 generates a data signal having a predetermined transfer rate (i.e. a signal indicating the content of the data for writing) using the data supplied from the data processing circuit 62 and the first clock supplied from the first DCA circuit 61 .
- the data write operation is an example of a “first operation.”
- the data signal is an example of a “first signal.”
- the first DDR_FF circuit 63 When the third correction process is performed, the first DDR_FF circuit 63 generates a signal having a toggle pattern based on the first clock (hereinafter referred to as a “toggle signal”). For example, when the third correction process is performed, the first DDR_FF circuit 63 generates a toggle signal using the data indicating the toggle pattern supplied from the data processing circuit 62 and the first clock supplied from the first DCA circuit 61 . This will be described in detail later.
- the third correction process is an example of a “second operation.”
- the toggle signal is an example of a “second signal.”
- FIG. 5 is a block diagram showing an example of an internal configuration of the first DDR_FF circuit 63 .
- the first DDR_FF circuit 63 includes, for example, a first flip-flop circuit 111 (hereinafter referred to as a “first FF circuit 111 ”), a second flip-flop circuit 112 (hereinafter referred to as a “second FF circuit 112 ”), and a multiplexer 113 .
- a signal input terminal of the first FF circuit 111 is connected to the output terminal of the data processing circuit 62 .
- a clock input terminal of the first FF circuit 111 is connected to the output terminal of the first DCA circuit 61 .
- a signal input terminal of the second FF circuit 112 is connected to the output terminal of the data processing circuit 62 .
- a clock input terminal of the second FF circuit 112 is connected to the output terminal of the first DCA circuit 61 , for example, through a logic inversion circuit.
- a first input terminal of the multiplexer 113 is connected to an output terminal of the first FF circuit 111 .
- a second input terminal of the multiplexer 113 is connected to an output terminal of the second FF circuit 112 .
- a control terminal of the multiplexer 113 is connected to the output terminal of the first DCA circuit 61 .
- An output terminal of the multiplexer 113 is an output terminal of the first DDR_FF circuit 63 .
- the multiplexer 113 can be switched between a first state in which it connects the output terminal of the first FF circuit 111 to the output terminal of the multiplexer 113 and a second state in which it connects the output terminal of the second FF circuit 112 to the output terminal of the multiplexer 113 based on the first clock from the first DCA circuit 61 that has been input to the control terminal.
- the first DDR_FF circuit 63 updates a value output from the output terminal of the data processing circuit 62 at each rising and falling edge of each cycle of the first clock. As a result, the first DDR_FF circuit 63 generates a data signal at a timing with a frequency that is twice that of the first clock and outputs the generated data signal to the first delay circuit 64 .
- the configurations of the second and third DDR flip-flop circuits 72 and 81 are similar to, for example, that of the first DDR_FF circuit 63 described above. The operations of the second and third DDR flip-flop circuits 72 and 81 will be described later.
- the configurations of the first to third DDR flip-flop circuits 63 , 72 , and 81 are not limited to the above example.
- the first delay circuit 64 is supplied with a data signal from the first DDR_FF circuit 63 .
- the first delay circuit 64 delays the data signal passing through the first delay circuit 64 .
- the first delay circuit 64 includes a plurality of delay elements connected in series and can change the number of delay elements based on a signal from the outside (for example, a signal from the correction sequencer 91 ).
- the first delay circuit 64 adjusts the amount of delay (or phase) of the data signal by changing the number of delay elements.
- the “phase” corresponds to the timing of rising (or falling) of an edge of a pulse-like signal. For this reason, “phase” may be replaced with “timing” in the present embodiment.
- the first delay circuit 64 outputs the data signal with the adjusted amount of delay.
- the data signal with the adjusted amount of delay is supplied from the first delay circuit 64 to the second duty adjustment circuit 65 (hereinafter referred to as a “second DCA circuit 65 ”).
- the second DCA circuit 65 is a circuit that adjusts (or corrects) the duty of the data signal on the downstream side of the first DDR_FF circuit 63 .
- the second DCA circuit 65 outputs the data signal with the adjusted duty to the first input/output circuit 66 .
- the second DCA circuit 65 has a configuration similar to that of the first DCA circuit 61 .
- a first terminal of the first input/output circuit 66 is connected to an output terminal of the second DCA circuit 65 .
- a second terminal of the first input/output circuit 66 is connected to the NAND device 20 via the second connection terminal 42 that is an external connection terminal of the NAND Phy 30 .
- a third terminal of the first input/output circuit 66 is connected to the first detection circuit 83 .
- the first input/output circuit 66 outputs the data signal supplied from the second DCA circuit 65 to the NAND device 20 via the second connection terminal 42 and also outputs it to the first detection circuit 83 .
- the first DCA circuit 61 , the first DDR_FF circuit 63 , the first delay circuit 64 , the second DCA circuit 65 , and the first input/output circuit 66 cooperate to constitute an example of the “first output circuit A 1 .”
- the first output circuit A 1 one of the first DCA circuit 61 and the second DCA circuit 65 may be omitted.
- the third duty adjustment circuit 71 (hereinafter referred to as a “third DCA circuit 71 ”) is a circuit that adjusts (or corrects) the duty of the clock on the upstream side of the second DDR flip-flop circuit 72 .
- the third DCA circuit 71 adjusts the duty of the first clock or the second clock supplied from the second clock tree 52 and outputs the first clock or the second clock with the adjusted duty to the second DDR flip-flop circuit 72 .
- the third DCA circuit 71 is an example of a “second adjustment circuit” that can adjust the duty of a special sampling clock that will be described later.
- the third DCA circuit 71 has a configuration similar to that of the first DCA circuit 61 .
- a signal input terminal of the second DDR flip-flop circuit 72 (hereinafter referred to as a “second DDR_FF circuit 72 ”) is connected to the output terminal of the data processing circuit 62 .
- a clock input terminal of the second DDR_FF circuit 72 is connected to the output terminal of the third DCA circuit 71 .
- the second DDR_FF circuit 72 When a data write operation is performed, the second DDR_FF circuit 72 generates an operation clock based on the first clock. For example, when a data write operation is performed, the second DDR_FF circuit 72 generates an operation clock synchronized with the first clock using data indicating the operation clock supplied from the data processing circuit 62 and the first clock supplied from the third DCA circuit 71 .
- the second DDR_FF circuit 72 When the third correction process is performed, the second DDR_FF circuit 72 generates a special sampling clock based on the second clock. For example, when the third correction process is performed, the second DDR_FF circuit 72 generates a special sampling clock synchronized with the second clock using data indicating the pattern of the special sampling clock supplied from the data processing circuit 62 and the second clock supplied from the third DCA circuit 71 . This will be described in detail later.
- the “operation clock” and the “sampling clock” may be collectively referred to as a “clock.”
- the configuration of the second DDR_FF circuit 72 is similar to, for example, that of the first DDR_FF circuit 63 .
- the “first DCA circuit 61 ” may be replaced with the “third DCA circuit 71 ” and the “first clock input to the control terminal” may be replaced with the “second clock input to the control terminal” in the above description of the first DDR_FF circuit 63 .
- the clock is input from the second DDR_FF circuit 72 to the second delay circuit 73 .
- the second delay circuit 73 delays the clock passing through the second delay circuit 73 .
- the second delay circuit 73 includes a plurality of delay elements connected in series and can change the number of delay elements based on a signal from the outside (for example, a signal from the correction sequencer 91 ).
- the second delay circuit 73 adjusts the amount of delay (or phase) of the clock by changing the number of delay elements.
- the second delay circuit 73 outputs the clock with the adjusted amount of delay.
- the second delay circuit 73 is an example of a “first adjustment circuit” that can adjust the phase of the special sampling clock that will be described later.
- the clock with the adjusted amount of delay is supplied from the second delay circuit 73 to the fourth duty adjustment circuit 74 (hereinafter referred to as a “fourth DCA circuit 74 ”).
- the fourth DCA circuit 74 is a circuit that adjusts (or corrects) the duty of the clock on the downstream side of the second DDR_FF circuit 72 .
- the fourth DCA circuit 74 outputs the clock with the adjusted duty to the second input/output circuit 75 .
- the fourth DCA circuit 74 is another example of the “second adjustment circuit” that can adjust the duty of the special sampling clock that will be described later.
- the fourth DCA circuit 74 has a configuration similar to that of the first DCA circuit 61 .
- a first terminal of the second input/output circuit 75 is connected to an output terminal of the fourth DCA circuit 74 .
- a second terminal of the second input/output circuit 75 is connected to the NAND device 20 via the third connection terminal 43 that is an external connection terminal of the NAND Phy 30 .
- a third terminal of the second input/output circuit 75 is connected to the second detection circuit 84 .
- the second input/output circuit 75 outputs the clock supplied from the fourth DCA circuit 74 to the NAND device 20 via the third connection terminal 43 and also outputs it to the second detection circuit 84 .
- the third DCA circuit 71 , the second DDR_FF circuit 72 , the second delay circuit 73 , the fourth DCA circuit 74 , and the second input/output circuit 75 described above cooperate to constitute an example of the “second output circuit A 2 .”
- the second output circuit A 2 one of the third DCA circuit 71 and the fourth DCA circuit 74 may be omitted.
- the PLL circuit 50 , the first output circuit A 1 , and the second output circuit A 2 constitute an example of the “semiconductor integrated circuit.”
- a signal input terminal of the third DDR flip-flop circuit 81 (hereinafter referred to as a “third DDR_FF circuit 81 ”) is connected to the output terminal of the data processing circuit 62 .
- a clock input terminal of the third DDR_FF circuit 81 is connected to the output terminal of the clock tree 53 .
- the third DDR_FF circuit 81 generates a sampling clock.
- the third DDR_FF circuit 81 generates a sampling clock synchronized with the second clock using data indicating the sampling clock supplied from the data processing circuit 62 and the second clock supplied from the clock tree 53 .
- the third DDR_FF circuit 81 outputs the generated sampling clock to the third delay circuit 82 .
- the configuration of the third DDR_FF circuit 81 is similar to, for example, that of the first DDR_FF circuit 63 .
- the “first DCA circuit 61 ” is replaced with the “clock tree 53 ” and the “first clock input to the control terminal” is replaced with the “second clock input to the control terminal” in the above description of the first DDR_FF circuit 63 .
- the sampling clock is input from the third DDR_FF circuit 81 to the third delay circuit 82 .
- the third delay circuit 82 delays the input sampling clock.
- the third delay circuit 82 includes a plurality of delay elements connected in series and can change the number of delay elements based on a signal from the outside (for example, a signal from the correction sequencer 91 ).
- the third delay circuit 82 adjusts the amount of delay (or phase) of the sampling clock by changing the number of delay elements.
- the third delay circuit 82 outputs the sampling clock with the adjusted amount of delay to the first detection circuit 83 and the second detection circuit 84 .
- the first detection circuit 83 (also referred to as duty cycle detector (i.e. DCD)) detects the suitability of the duty and phase of the data signal transmitted to the NAND device 20 based on the signal supplied from the first input/output circuit 66 and the sampling clock supplied from the third delay circuit 82 .
- the detection result (i.e. sampling result) of the first detection circuit 83 is output to the correction sequencer 91 .
- the detection operation of the first detection circuit 83 will be described in detail later.
- the second detection circuit 84 detects the suitability of the duty and phase of the operation clock transmitted to the NAND device 20 based on the operation clock supplied from the second input/output circuit 75 and the sampling clock supplied from the third delay circuit 82 .
- the detection result (i.e. sampling result) of the second detection circuit 84 is output to the correction sequencer 91 .
- the detection operation of the second detection circuit 84 will be described in detail later.
- the control circuit 90 performs overall control of the operation of the NAND Phy 30 .
- the control circuit 90 includes the correction sequencer 91 that performs the first to third correction processes that will be described later.
- the correction sequencer 91 is a circuit provided in the NAND Phy 30 .
- the correction sequencer 91 performs the first to third correction processes by controlling the components of the NAND Phy 30 (for example, the multiplexer 54 , the first to fourth duty adjustment circuits 61 , 65 , 71 , and 74 , the data processing circuit 62 , and the first to third delay circuits 64 , 73 , and 82 ).
- “correction” means to derive a correction value for preliminarily adjusting the duty and/or phase of the data signal in the NAND Phy 30 (for example, a correction value relating to the data signal in the first output circuit A 1 or a correction value relating to the operation clock in the second output circuit A 2 ) and to reflect the correction value in the duty adjustment circuits 61 , 65 , 71 , and 74 and/or the delay circuits 64 , 73 , and 82 such that the data signal that has reached the inside of the NAND device 20 becomes a data signal suitable for processing.
- This correction process will be described in detail later.
- the NAND device 20 includes, for example, a memory cell array 121 , a data register 122 , and a third detection circuit 123 .
- the memory cell array 121 includes a plurality of memory cell transistors and stores data in a nonvolatile manner.
- a peripheral circuit (not shown) is connected to the memory cell array 121 . When a data write operation and a data read operation are performed on the memory cell array 121 , the peripheral circuit applies a predetermined voltage to various wirings of the memory cell array.
- the data register 122 is a data buffer that temporarily stores data when a data write or read operation is performed on the memory cell array 121 . For example, when data of a predetermined unit (for example, one page) is written into the memory cell array 121 , the data register 122 collects data sequentially transmitted from the memory controller 10 until the data sequentially transmitted from the memory controller 10 is accumulated up to the predetermined unit and collectively written into the memory cell array 121 .
- a predetermined unit for example, one page
- the third detection circuit 123 detects the suitability of the duty and phase of the toggle signal in the NAND device 20 based on the toggle signal transmitted from the NAND Phy 30 and the sampling clock transmitted from the NAND Phy 30 .
- the detection result (i.e. sampling result) of the third detection circuit 123 is stored in the data register 122 .
- the detection operation of the third detection circuit 123 will be described in detail later.
- correction processes performed by the NAND Phy 30 will be described.
- the correction processes described below are performed under the control of the correction sequencer 91 unless otherwise described.
- the correction processes performed in the present embodiment include the first and second correction processes based on results of detection in the NAND Phy 30 (i.e. the detection results of the first and second detection circuits 83 and 84 ) and the third correction process based on a result of detection in the NAND device 20 (the detection result of the third detection circuit 123 ). These correction processes are performed when a predetermined condition is satisfied (for example, when power is initially supplied to the memory device 1 ). Note that the first and second correction processes are not essential and may be omitted.
- the correction sequencer 91 performs a first correction process for correcting the duty and phase of the data signal based on the detection result of the first detection circuit 83 when a predetermined condition for performing the correction process is satisfied.
- FIG. 6 is a timing chart illustrating the first correction process.
- S 1 , S 2 , and S 5 in FIG. 6 indicate signals at points S 1 , S 2 , and S 5 in FIG. 2 , respectively.
- a first clock is output from the first clock tree 51
- data indicating a toggle pattern is output from the data processing circuit 62
- the first DDR_FF circuit 63 generates a toggle signal using the first clock.
- the toggle signal generated by the first DDR_FF circuit 63 passes through the first delay circuit 64 and the second DCA circuit 65 and is input from the first input/output circuit 66 to the first detection circuit 83 .
- a second clock output from the third clock tree 53 passes through the third DDR_FF circuit 81 and the third delay circuit 82 and is input to the first detection circuit 83 as a sampling clock that is twice as fast as the toggle signal.
- the first detection circuit 83 detects (or samples), for example, the presence or absence of a rising edge and a falling edge of the toggle signal at the timings of rising edges of the sampling clock.
- the first detection circuit 83 includes a comparator that compares the output (or level) of the sampling clock with the output (or level) of the toggle signal.
- the first detection circuit 83 detects the presence or absence of a rising edge and a falling edge of the toggle signal at the timings of rising edges of the sampling clock based on the output result of the comparator.
- the first detection circuit 83 determines that rising edges (or falling edges) of the toggle signal have shifted (or deviated) from rising edges of the sampling clock when a high level (or low level) of the toggle signal has been stably detected at the timings of rising edges in a plurality of cycles of the sampling clock.
- the first detection circuit 83 determines that rising edges of the sampling clock match rising edges (or falling edges) of the toggle signal when a high level (or low level) of the toggle signal has not been stably detected at the timings of rising edges in a plurality of cycles of the sampling clock.
- the data signal transmitted to the NAND device 20 has deteriorated with a reduced duty, compared to the data signal immediately after it is output from the first DDR_FF circuit 63 (see S 1 in FIG. 6 ). For this reason, the rising edges of the sampling clock do not match the falling edges of the data signal in the first detection circuit 83 . In this case, by performing detection through the first detection circuit 83 , it is possible to detect that falling edges of the toggle signal have deviated from rising edges of the sampling clock.
- the correction sequencer 91 corrects the phase of the toggle signal by changing the set value of the amount of delay of the first delay circuit 64 .
- the correction sequencer 91 corrects the duty of the toggle signal by changing the amount of duty adjustment of at least one of the first DCA circuit 61 and the second DCA circuit 65 . Thereby, the correction process relating to the data signal is performed.
- the correction sequencer 91 performs a second correction process for correcting the duty and phase of the operation clock based on the detection result of the second detection circuit 84 when a predetermined condition for performing the correction process is satisfied.
- FIG. 7 is a timing chart illustrating the second correction process.
- S 3 , S 4 , and S 5 in FIG. 7 indicate signals at points S 3 , S 4 , and S 5 in FIG. 2 , respectively.
- the multiplexer 54 is controlled to the first state, a first clock is output from the second clock tree 52 , data indicating a toggle pattern is output from the data processing circuit 62 , and the second DDR_FF circuit 72 generates an operation clock having the same period as the first clock and synchronized with the toggle pattern.
- the operation clock generated by the second DDR_FF circuit 72 passes through the second delay circuit 73 and the fourth DCA circuit 74 and is input from the second input/output circuit 75 to the second detection circuit 84 .
- the second clock output from the third clock tree 53 passes through the third DDR_FF circuit 81 and the third delay circuit 82 and is input to the second detection circuit 84 as a sampling clock that is twice as fast as the operation clock. Then, the second detection circuit 84 detects (or samples), for example, the presence or absence of a rising edge and a falling edge of the operation clock at the timings of rising edges of the sampling clock.
- the “data signal” may be replaced with the “operation clock”
- the “first detection circuit 83 ” may be replaced with the “second detection circuit 84 ”
- the “first DDR_FF circuit 63 ” may be replaced with the “second DDR_FF circuit 72 ”
- the “first delay circuit 64 ” may be replaced with the “second delay circuit 73 ”
- the “first DCA circuit 61 ” may be replaced with the “third DCA circuit 71 ”
- the “second DCA circuit 65 ” may be replaced with the “fourth DCA circuit 74 ” in the above description of the first correction process.
- the correction sequencer 91 performs a third correction process for correcting the duty and phase of the data signal based on the detection result of the third detection circuit 123 when a predetermined condition for performing the third correction process is satisfied.
- FIG. 8 is a timing chart illustrating the third correction process.
- S 1 , S 7 , S 6 , S 3 , and S 8 in FIG. 8 indicate signals at points S 1 , S 7 , S 6 , S 3 , and S 8 in FIG. 2 , respectively.
- a first clock is output from the first clock tree 51
- data indicating a toggle pattern is output from the data processing circuit 62
- the first DDR_FF circuit 63 generates a toggle signal using the first clock.
- the toggle signal generated by the first DDR_FF circuit 63 passes through the first delay circuit 64 and the second DCA circuit 65 and is input from the first input/output circuit 66 to the third detection circuit 123 of the NAND device 20 .
- the multiplexer 54 is controlled to the second state and a second clock is supplied from the second clock tree 52 to the second DDR_FF circuit 72 .
- the second DDR_FF circuit 72 generates a special sampling clock (i.e. a sampling clock having a special pattern) using the second clock based on data indicating the pattern of the special sampling clock supplied from the data processing circuit 62 .
- a special sampling clock i.e. a sampling clock having a special pattern
- the special sampling clock generated by the second DDR_FF circuit 72 passes through the second delay circuit 73 and the fourth DCA circuit 74 and is input from the second input/output circuit 75 to the third detection circuit 123 of the NAND device 20 .
- the correction sequencer 91 issues a command instructing that the detection result of the third detection circuit 123 be written into the data register 122 in the NAND device 20 .
- the correction sequencer 91 outputs a predetermined control command to the command sender CS (see FIG. 1 ) to cause the command sender CS to transmit a write command, which is to write the detection result of the third detection circuit 123 to the data register 122 and designates an address in the data register 122 in the NAND device 20 as a write destination address, to the NAND device 20 .
- the NAND device 20 may be preset such that the detection result of the third detection circuit 123 is automatically written to a specific address of the data register 122 when the third correction process is performed.
- the special sampling clock includes a first edge E 1 for sampling one rising edge RE included in the toggle signal and a second edge E 2 for sampling one falling edge DE included in the toggle signal.
- the second DDR_FF circuit 72 generates the first edge E 1 and the second edge E 2 using rising edges (for example, rising edges C 1 and C 2 ) of the second clock.
- the rising edge RE is a rising edge of a first pulse P 1 included in the toggle signal.
- the falling edge DE is a falling edge of a second pulse P 2 different from the first pulse P 1 (for example, a pulse immediately subsequent to the first pulse P 1 ) included in the toggle signal.
- the second DDR_FF circuit 72 generates the first edge E 1 and the second edge E 2 for sampling the rising edge RE and the falling edge DE using rising edges of the second clock.
- the special sampling clock includes a plurality of pulses generated by (n+0.5) frequency division of the first period described above (where n is a natural number of 1 or more).
- the second DDR_FF circuit 72 includes generates one pulse D 1 of the special sampling clock based on a rising edge C 1 of a first pulse B 1 included in the second clock and a falling edge C 3 of a second pulse B 2 different from the first pulse B 1 (for example, a pulse immediately subsequent to the first pulse B 1 ) included in the second clock.
- the second DDR_FF circuit 72 generates a rising edge E 1 of the pulse D 1 of the special sampling clock based on the rising edge C 1 of the first pulse B 1 and generates a falling edge E 3 of the pulse D 1 of the special sampling clock based on the falling edge C 3 of the second pulse B 2 .
- the correction sequencer 91 also controls the second delay circuit 73 to generate a special sampling clock whose phase gradually deviates.
- the special sampling clock whose phase gradually deviates is, for example, a sampling clock whose timing of the rising edge is gradually delayed (i.e. the rising edge interval gradually increases).
- the second input/output circuit 75 outputs the special sampling clock whose phase gradually deviates to the third detection circuit 123 of the NAND device 20 .
- a special sampling clock whose phase gradually deviates in a plurality of cycles is continuously output in accordance with one write command to store the detection result of the third detection circuit 123 in the data register 122 . That is, based on one write command, detection of the third detection circuit 123 is continuously performed using a special sampling clock whose phase gradually deviates in a plurality of cycles. Thereby, the amount of phase deviation of the toggle signal can be obtained.
- the correction sequencer 91 also generates a special sampling clock whose duty gradually changes by controlling at least one of the third DCA circuit 71 and the fourth DCA circuit 74 .
- the special sampling clock whose duty gradually changes is, for example, a special sampling clock whose duty ratio gradually increases (or gradually decreases).
- the second input/output circuit 75 outputs the special sampling clock whose duty gradually changes to the third detection circuit 123 of the NAND device 20 .
- a special sampling clock whose duty gradually changes in a plurality of cycles is continuously output in accordance with one write command to store the detection result of the third detection circuit 123 in the data register 122 . That is, based on one write command, detection of the third detection circuit 123 is continuously performed using a special sampling clock whose duty gradually changes in a plurality of cycles. Thereby, the amount of duty deviation of the toggle signal can be obtained.
- the third detection circuit 123 detects (or samples), for example, the presence or absence of a rising edge and a falling edge of the toggle signal at the timing of rising edges of the special sampling clock. For example, the third detection circuit 123 detects the presence or absence of a rising edge RE and a falling edge DE of the toggle signal at the timing of rising edges E 1 and E 2 of the special sampling clock.
- the third detection circuit 123 includes a comparator that compares the output (or level) of the special sampling clock with the output (or level) of the toggle signal.
- the third detection circuit 123 detects the presence or absence of a rising edge and a falling edge of the toggle signal at the timing of rising edges of the special sampling clock based on the output result of the comparator. Details of this detection method are similar to those of the detection method of the first detection circuit 83 .
- the toggle signal input to the inside of the NAND device 20 has deteriorated with a reduced duty, compared to the data signal immediately after it is output from the first DDR_FF circuit 63 (see S 1 in FIG. 8 ). For this reason, a falling edge DE′ of the toggle signal does not match a rising edge E 2 of the special sampling clock in the third detection circuit 123 . In this case, by performing detection through the third detection circuit 123 , it is possible to detect that falling edges of the toggle signal have shifted from rising edges of the sampling clock.
- the third detection circuit 123 continues the detection operation while the special sampling clock whose phase gradually deviates is continuously transmitted from the NAND Phy 30 to the NAND device 20 .
- the third detection circuit 123 also continues the detection operation while the special sampling clock whose duty gradually changes is continuously transmitted from the NAND Phy 30 to the NAND device 20 .
- the third detection circuit 123 detects the presence or absence of a rising edge and a falling edge of the toggle signal at each rising edge of the special sampling clock.
- the correction sequencer 91 issues a read command to read the detection result of the third detection circuit 123 stored in the data register 122 from the NAND device 20 , for example, when the transmission of the special sampling clock whose phase gradually deviates is completed.
- the correction sequencer 91 issues a read command to read the detection result of the third detection circuit 123 stored in the data register 122 from the NAND device 20 , for example, when the transmission of the special sampling clock whose duty gradually changes is completed.
- the correction sequencer 91 corrects the phase of the toggle signal by changing the set value of the amount of delay of the first delay circuit 64 .
- the correction sequencer 91 corrects the duty of the toggle signal by changing the amount of duty adjustment of at least one of the first DCA circuit 61 and the second DCA circuit 65 . Thereby, the correction process relating to the data signal is performed.
- FIGS. 9 and 10 are flowcharts showing the flow of the third correction process.
- the correction sequencer 91 may perform the first correction process and the second correction process before the third correction process.
- the correction sequencer 91 outputs a first control command to the command sender CS to cause the command sender CS to transmit a write command to store the detection result of the third detection circuit 123 in the data register 122 of the NAND device 20 to the NAND device 20 (see, S 101 ).
- This write command is a write command that designates an address included in the data register 122 as a write destination address and designates the detection result of the third detection circuit 123 as write target data.
- the correction sequencer 91 outputs a control signal to the multiplexer 54 to switch the multiplexer 54 to the second state.
- the second clock is supplied to the second DDR_FF circuit 72 (see, S 102 ).
- the correction sequencer 91 controls the data processing circuit 62 to cause the first DDR_FF circuit 63 to output data indicating a toggle pattern.
- the first DDR_FF circuit 63 generates and outputs a toggle signal having the first period using the first clock based on the data indicating the toggle pattern (see, S 103 ).
- the correction sequencer 91 controls the data processing circuit 62 to cause the second DDR_FF circuit 72 to output data indicating a sampling clock pattern.
- the second DDR_FF circuit 72 generates and outputs a special sampling clock using the second clock based on the data indicating the sampling clock pattern (see, S 104 ).
- the correction sequencer 91 changes the set value of the first delay circuit 64 . Accordingly, a special sampling clock whose phase has deviated is supplied to the third detection circuit 123 of the NAND device 20 (see, S 105 ).
- the correction sequencer 91 determines whether or not the phase has deviated by one period (see, S 106 ). When the phase has not deviated by one period (see, S 106 : NO), the correction sequencer 91 returns to S 103 and repeats the process. Thus, the set value of the first delay circuit 64 gradually changes and a special sampling clock whose phase gradually deviates is supplied to the third detection circuit 123 . On the other hand, when the phase has deviated by one period (see, S 106 : YES), the correction sequencer 91 stops the output of the toggle signal and the special sampling clock by controlling the first and second DDR_FF circuits 63 and 72 (see, S 107 ).
- the correction sequencer 91 outputs a second control command to the command sender CS to cause the command sender CS to transmit a read command to read the detection result of the third detection circuit 123 stored in the data register 122 to the NAND device 20 (see, S 108 ).
- This read command is a read command in which an address in the data register 122 where the detection result of the third detection circuit 123 is stored is designated as a read destination address.
- the correction sequencer 91 verifies the detection result of the third detection circuit 123 read from the NAND device 20 (see, S 109 ). That is, the correction sequencer 91 determines whether or not a rising edge or a falling edge of the toggle signal is present at the timing of each rising edge of a plurality of phases of the special sampling clock.
- the correction sequencer 91 identifies a phase of the toggle signal where the rising edges of the special sampling clock match the rising edges of the toggle signal based on the verified detection result. Then, the correction sequencer 91 changes the setting of the amount of delay of the first delay circuit 64 such that the rising edges of the special sampling clock match the rising edges of the toggle signal in the NAND device 20 (see, S 110 ). In other words, the correction sequencer 91 derives and reflects a correction value relating to the amount of delay of the data signal in the first output circuit A 1 .
- the correction sequencer 91 performs the same processes as those of S 101 to S 104 described above as processes of S 201 to S 204 .
- the correction sequencer 91 changes the set value of at least one of the first DCA circuit 61 and the second DCA circuit 65 . Accordingly, a special sampling clock whose duty has changed is supplied to the third detection circuit 123 of the NAND device 20 (see, S 205 ).
- the correction sequencer 91 determines whether or not the duty has changed over a predetermined range (see, S 206 ). When the duty has not changed over the predetermined range (see, S 206 : NO), the correction sequencer 91 returns to S 203 and repeats the process. Thus, the set value of the first DCA circuit 61 or the second DCA circuit 65 gradually changes and a special sampling clock whose duty gradually deviates is supplied to the third detection circuit 123 . On the other hand, when the duty has changed over the predetermined range (see, S 206 : YES), the correction sequencer 91 stops the output of the toggle signal and the special sampling clock by controlling the first and second DDR_FF circuits 63 and 72 (see, S 207 ).
- the correction sequencer 91 performs the same processes as those of S 108 and S 109 as processes of S 208 and S 209 . Then, the correction sequencer 91 identifies a duty of the toggle signal where the rising edges of the special sampling clock match the rising edges and falling edges of the toggle signal based on the verified detection result. Then, the correction sequencer 91 changes the setting of the duty of at least one of the first DCA circuit 61 and the second DCA circuit 65 such that the rising edges of the special sampling clock match the rising edges and falling edges of the toggle signal in the NAND device 20 (see, S 210 ). In other words, the correction sequencer 91 derives and reflects a correction value relating to the duty of the data signal in the first output circuit A 1 .
- the correction sequencer 91 performs the third correction process described above sequentially on the plurality of NAND devices 20 (for example, the NAND devices 20 A and 20 B) connected to the NAND Phy 30 . Then, the correction sequencer 91 calculates a skew relating to the delay of the data signal with each of the plurality of NAND devices 20 based on the detection result of the third detection circuit 123 read from the plurality of NAND devices 20 . Then, the correction sequencer 91 changes the settings of the first delay circuit 64 and the first DCA circuit 61 or the second DCA circuit 65 for each NAND device 20 such that the skew with each of the plurality of NAND devices 20 decreases.
- a command that the control circuit 90 issues to read the sampling result from the NAND device 20 A is an example of a “first command.”
- a command that the control circuit 90 issues to read the sampling result from the NAND device 20 B is an example of a “second command.”
- the first command and the second command may be the same or different.
- the memory controller 10 individually performs correction processes, (which are, for example, the first to third correction processes or may be only the third correction process) relating to a plurality of NAND devices 20 connected to the same channel ch, sequentially on the plurality of NAND devices 20 .
- correction processes which are, for example, the first to third correction processes or may be only the third correction process
- the NAND Phy 30 first performs correction processes on the NAND device 20 A and derives a first correction value of a first output circuit A 1 suitable for the NAND device 20 A (for example, a set of first correction values relating to duty adjustment circuits 61 and 65 and a delay circuit 64 ).
- the NAND Phy 30 performs correction processes on the NAND device 20 B and derives a second correction value of the first output circuit A 1 suitable for the NAND device 20 B (for example, a set of second correction values relating to the duty adjustment circuits 61 and 65 and the delay circuit 64 ). Then, when performing an operation of writing data into the NAND device 20 A as a normal operation, the NAND Phy 30 outputs a data signal through the first output circuit A 1 adjusted by the first correction value. On the other hand, when performing an operation of writing data to the NAND device 20 B as a normal operation, the NAND Phy 30 outputs a data signal through the first output circuit A 1 adjusted by the second correction value. The same is true when three or more NAND devices 20 are connected to one channel ch.
- a second correction value of the first output circuit A 1 suitable for the NAND device 20 B for example, a set of second correction values relating to the duty adjustment circuits 61 and 65 and the delay circuit 64 .
- a correction value for adjusting a data signal in the NAND Phy 30 can be derived with high accuracy based on a result of detection in the NAND device 20 .
- the accuracy of the signal in the NAND device 20 can be improved.
- a timing window (a so-called eye pattern) that is a timing margin of the operation clock with respect to the data signal can be widened.
- FIG. 11 is a timing chart showing examples of advantages of the third correction process of the present embodiment.
- the second DDR_FF circuit 72 generates a first edge E 1 for sampling one rising edge RE included in a toggle signal and a second edge E 2 for sampling one falling edge DE included in the toggle signal using rising edges (for example, rising edges C 1 and C 2 ) of the second clock in the third correction process.
- the first edge E 1 and the second edge E 2 are not easily out of phase even when the duty of the sampling clock has deteriorated before reaching the NAND device 20 (i.e. when falling edges of the sampling clock have deviated to the leading side as shown in S 8 of FIG. 11 ). Therefore, even when the duty of the sampling clock has deteriorated, the rising edge RE and the falling edge DE of the toggle signal can be accurately sampled using the first edge E 1 and the second edge E 2 .
- the correction sequencer 91 outputs a sampling clock whose phase gradually deviates or a sampling clock whose duty gradually deviates. According to such a sampling clock, the process of detecting the phase or duty of the toggle signal can be realized by one write operation. Thereby, the time required for the correction processes can be shortened.
- the memory controller 10 may also include the first and second output circuits A 1 and A 2 described above provided for each channel ch such that they can simultaneously transmit signals to a plurality of NAND devices 20 connected to different channels ch. In this case, if the phase and duty of a data signal can be adjusted such that the skew with each of the plurality of NAND devices 20 decreases, the reliability of parallel processing on the plurality of NAND devices 20 can be further improved.
- the memory controller 10 may use the same sampling clock as the special sampling clock of the third correction process as a sampling clock used for the first and second correction processes. If the sampling clock used for the first and second correction processes is generated by the third DDR_FF circuit 81 , such a special sampling clock can be generated.
- the second embodiment differs from the first embodiment in the pulse shape of the special sampling clock. Rest of structures other than structures described below are similar to those in the first embodiment.
- a normal flip-flop circuit i.e. a non-DDR flip-flop circuit
- the third DDR_FF circuit 81 may be provided instead of the third DDR_FF circuit 81 .
- FIG. 12 is a timing chart illustrating a third correction process in the second embodiment.
- S 3 and S 8 in FIG. 12 show an example of a special sampling clock in the second embodiment.
- the special sampling clock includes a first edge E 1 for sampling one rising edge RE included in a toggle signal and a second edge E 2 for sampling one falling edge DE included in the toggle signal.
- the second DDR_FF circuit 72 generates the first edge E 1 and the second edge E 2 using rising edges (for example, rising edges C 1 and C 2 ) of the second clock.
- the rising edge RE is a rising edge of a first pulse P 1 included in the toggle signal.
- the falling edge DE is a falling edge of a second pulse P 2 different from the first pulse P 1 (for example, a pulse immediately subsequent to the first pulse P 1 ) included in the toggle signal.
- the second DDR_FF circuit 72 generates the first edge E 1 and the second edge E 2 for sampling the rising edge RE and the falling edge DE using rising edges of the second clock.
- the special sampling clock includes a plurality of pulses generated by (n+0.5) frequency division (where n is a natural number of 1 or more) of the first period.
- the second DDR_FF circuit 72 generates the rising and falling edges of all pulses of the sampling clock using rising edges of the second clock.
- the second DDR_FF circuit 72 generates one pulse D 1 of the special sampling clock based on a rising edge C 1 of a first pulse B 1 included in the second clock and a rising edge C 4 of a second pulse B 2 different from the first pulse B 1 (for example, a pulse immediately subsequent to the first pulse B 1 ).
- the second DDR_FF circuit 72 generates the rising edges E 1 and E 2 of the pulse D 1 of the special sampling clock based on the rising edge C 1 of the first pulse B 1 and generates a falling edge E 3 of the pulse D 1 of the special sampling clock based on the rising edge C 4 of the second pulse B 2 .
- the second clock may always be supplied to the second output circuit A 2 . That is, the multiplexer 54 may not be provided.
- the NAND Phy 30 may detect a rising edge and a falling edge of the toggle signal based on the falling edges of the sampling clock. This can be considered, for example, when an inverting circuit for inverting high/low of the sampling clock is provided.
- the semiconductor integrated circuit includes a first output circuit and a second output circuit.
- the first output circuit generates a signal having a toggle pattern using a clock having a first period and outputs the generated signal having the toggle pattern to the outside.
- the second output circuit generates a sampling clock using a clock having a second period which is 1/m times the first period, that is, having a frequency which is m times (where m is a natural number of 2 or more), and outputs the generated sampling clock to the outside. According to this configuration, the accuracy of the signal can be improved.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Pulse Circuits (AREA)
- Dram (AREA)
- Memory System (AREA)
Abstract
According to one embodiment, a semiconductor integrated circuit includes a clock supply circuit, a first output circuit, and a second output circuit. The clock supply circuit outputs a first clock and a second clock, the first clock having a first period, the second clock having a second period that is 1/m times the first period. The m is a natural number of 2 or more. The first output circuit outputs a first signal indicating content of data to an outside when a first operation is performed and outputs a second signal having a toggle pattern based on the first clock to the outside when a second operation is performed. The second output circuit outputs an operation clock based on the first clock to the outside when the first operation is performed and outputs a sampling clock based on the second clock to the outside when the second operation is performed.
Description
- This application is based upon and claims the benefit of priority from Japanese Patent Application No. 2019-169018, filed Sep. 18, 2019; the entire contents of which are incorporated herein by reference.
- Embodiments described herein relate generally to a semiconductor integrated circuit, a transmission device, and a memory device.
- A semiconductor integrated circuit capable of adjusting a duty ratio of a signal to be transmitted is known. Incidentally, improvement in quality including the duty ratio of signals transmitted by semiconductor integrated circuits is expected.
-
FIG. 1 is a block diagram showing a configuration of a memory device in a first embodiment. -
FIG. 2 is a block diagram showing configurations of a NAND Phy and a NAND device in the first embodiment. -
FIG. 3 is a block diagram showing an example of an internal configuration of a DCA circuit in the first embodiment. -
FIG. 4 is a timing chart showing signals at points of the DCA circuit in the first embodiment. -
FIG. 5 is a block diagram showing an example of an internal configuration of a first DDR flip-flop circuit in the first embodiment. -
FIG. 6 is a timing chart illustrating a first correction process in the first embodiment. -
FIG. 7 is a timing chart illustrating a second correction process in the first embodiment. -
FIG. 8 is a timing chart illustrating a third correction process in the first embodiment. -
FIG. 9 is a flowchart showing a part of a flow of the third correction process in the first embodiment. -
FIG. 10 is a flowchart showing another part of the flow of the third correction process in the first embodiment. -
FIG. 11 is a timing chart illustrating examples of advantages of the third correction process in the first embodiment. -
FIG. 12 is a timing chart illustrating a third correction process in a second embodiment. - According to one embodiment, a semiconductor integrated circuit includes a clock supply circuit, a first output circuit and a second output circuit. The clock supply circuit outputs a first clock and a second clock, the first clock having a first period, the second clock having a second period that is 1/m times the first period. The m is a natural number of 2 or more. The first output circuit outputs a first signal indicating content of data to an outside when a first operation is performed and outputs a second signal having a toggle pattern based on the first clock to the outside when a second operation is performed. The second output circuit outputs an operation clock based on the first clock to the outside when the first operation is performed and outputs a sampling clock based on the second clock to the outside when the second operation is performed.
- Hereinafter, a semiconductor integrated circuit, a transmission device, and a memory device according to embodiments will be described with reference to the drawings. In the following description, the same reference signs are given to components having the same or similar functions.
- Redundant description of such components may be omitted. In the present embodiments, “based on XX” means “based on at least XX” and includes being based on another element in addition to XX. “Based on XX” is not limited to the case where XX is directly used and also includes being based on a result of an operation or processing performed on XX. “XX” is a certain element (for example, certain information). In the present embodiments, “connection” is not limited to mechanical connection and also includes electrical connection.
- The memory device includes a NAND device and a memory controller that controls the NAND device. A NAND Phy included in the memory controller is configured to be able to correct a duty and a phase of a signal transmitted from the memory controller to the NAND device. The “phase” corresponds to a timing of rising (or falling) of an edge of a pulse-like signal. Here, the signal transmitted from the memory controller to the NAND device may deteriorate in a transmission line between the memory controller and the NAND device, a signal wiring in the NAND device, a receiver circuit in the NAND device, or the like. In this case, even if the memory controller corrects the duty and phase of signals, the NAND device may not be able to process signals with high accuracy.
- Therefore, in a memory device according to an embodiment, a duty and/or phase of a signal transmitted from a memory controller to a NAND device is corrected based on a result of determining the duty and/or phase of the signal in the NAND device. This can improve a quality of the signal in the NAND device. Hereinafter, such a memory device will be described. However, a present invention is not limited to the embodiments described below.
-
FIG. 1 is a block diagram showing a configuration of amemory device 1 in a first embodiment. Thememory device 1 is, for example, a storage device and is connected to ahost device 2. Thememory device 1 functions as an external memory device for thehost device 2. Thehost device 2 is, for example, a server device, a personal computer, or a mobile information processing device. - The
host device 2 can issue access requests (for example, a read request and a write request) to thememory device 1. - The
memory device 1 includes, for example, amemory controller 10 and a plurality ofNAND devices 20. Thememory controller 10 is an example of a “controller.” EachNAND device 20 is an example of a “semiconductor memory device.” - The
memory controller 10 includes, for example, a host interface (also referred to as I/F)controller 11, a random access memory (also referred to as RAM) 12, a read only memory (also referred to as ROM) 13, a central processing unit (also referred to as CPU) 14, an error correcting code (also referred to as ECC)circuit 15, and aNAND controller 16. These components are connected to each other by abus 17. - For example, the
memory controller 10 is constituted by a system on a chip (also referred to as SoC) in which such components are combined into one chip. However, some of the host I/F controller 11, theRAM 12, theROM 13, theCPU 14, theECC circuit 15, and theNAND controller 16 may be provided outside thememory controller 10. One or more of theRANI 12, theROM 13, theCPU 14, and theECC circuit 15 may also be provided inside theNAND controller 16. - The host I/
F controller 11 performs control of a communication interface between thehost device 2 and thememory device 1 and control of data transfer between thehost device 2 and theRAM 12 under the control of theCPU 14. - The
RAM 12 is, for example, but not limited to, a synchronous dynamic random access memory (also referred to as SDRAM) or a static random access memory (also referred to as SRAM). - The RANI 12 functions as a buffer for data transfer between the
host device 2 and theNAND device 20. TheRAM 12 provides a work area to theCPU 14. Firmware (also referred to as a program) stored in theROM 13 is loaded into theRAM 12 when thememory device 1 operates. - The
CPU 14 is an example of a hardware processor. TheCPU 14 controls operations of thememory controller 10 by executing, for example, the firmware loaded into theRAM 12. For example, theCPU 14 controls operations relating to data writing, reading, and erasing to and from theNAND device 20. - The
CPU 14 realizes a command sender CS by executing the firmware. The command sender CS is a functional unit that transmits commands (for example, a read command and a write command) to theNAND device 20. All or a part of the command sender CS may be realized by a circuit provided in theNAND controller 16. - The
ECC circuit 15 performs encoding for error correction on data for writing into theNAND device 20. When an error is included in data read from theNAND device 20, theECC circuit 15 performs error correction on the read data based on an error correction code assigned when the write operation is performed. - The
NAND controller 16 performs control of data transfer between the RAM 22 and theNAND device 20 under the control of theCPU 14. In the present embodiment, theNAND controller 16 has a plurality of channels ch. AlthoughFIG. 1 shows an example in which two channels ch (that is, ch. 0 and ch. 1) are provided, thememory controller 10 may have one or more than three channels ch. TheNAND controller 16 includes a plurality ofNAND Phys 30 corresponding to, for example, the number of channels ch. - Each
NAND Phy 30 is a physical layer that is a part of a transmission/reception circuit of theNAND controller 16. TheNAND Phy 30 converts a digital signal that is to be transmitted from thememory controller 10 to aNAND device 20 into an electrical signal. TheNAND Phy 30 transmits the converted electrical signal to theNAND device 20 through a transmission line L.The NAND Phy 30 also receives an electrical signal transmitted from theNAND device 20 through the transmission line L.The NAND Phy 30 converts the received electrical signal into a digital signal. TheNAND Phy 30 is an example of a “transmission device.” TheNAND Phy 30 will be described in detail later. - The
NAND device 20 is a memory chip as a nonvolatile semiconductor memory and is, for example, a NAND flash memory. In the present embodiment, a plurality of NAND devices 20 (only two shown inFIG. 1 ) are connected to each channel ch (ch. 0 and ch. 1). The number ofNAND devices 20 connected to each channel ch may be one or more than three. OneNAND device 20A connected to, for example, the channel ch. 0 is an example of a “first semiconductor memory device.” AnotherNAND device 20B connected to, for example, the channel ch. 0 is an example of a “second semiconductor memory device.” - Here, the plurality of
NAND Phys 30 have the same or similar configurations and the plurality ofNAND devices 20 have the same or similar configurations. Therefore, hereinafter, oneNAND Phy 30 and oneNAND device 20 will be described. -
FIG. 2 is a block diagram showing configurations of theNAND Phy 30 and theNAND device 20. -
FIG. 2 shows an extracted part of a circuit relating to signal transmission in theNAND Phy 30. TheNAND Phy 30 includes, for example, first tothird connection terminals circuit 50, first tothird clock trees 51 to 53, amultiplexer 54, first to fourthduty adjustment circuits data processing circuit 62, first to third double data rate (DDR) flip-flop circuits third delay circuits output circuits second detection circuits control circuit 90. - The
first connection terminal 41 is an input terminal of theNAND Phy 30 and is connected to another component in theNAND controller 16. Thesecond connection terminal 42 is connected to theNAND device 20 through one of the channels ch described above. Thesecond connection terminal 42 functions as an output terminal for a data signal (DQ). The “data signal” is a signal indicating a content of data. Thethird connection terminal 43 is connected to theNAND device 20 through the same channel ch as that of thesecond connection terminal 42. That is, thesecond connection terminal 42 and thethird connection terminal 43 are connected to one or a plurality ofidentical NAND devices 20. Thethird connection terminal 43 functions as an output terminal for an operation clock (also referred to as DQS). The “operation clock” is a signal used to adjust the timing of data writing to theNAND device 20 or the like. In the present embodiment, thesecond connection terminal 42 is an example of a “first terminal.” Thethird connection terminal 43 is an example of a “second terminal.” - The PLL (also referred to as phase locked loop)
circuit 50 is a phase synchronization circuit and includes a clock oscillator. ThePLL circuit 50 can output a plurality of types of clocks whose phases are synchronized, for example, by changing the frequency division ratio through frequency multiplication. In the present embodiment, thePLL circuit 50 can output a first clock having a first period (also referred to as a first frequency) and a second clock having a second period which is 1/m times the first period, that is, having a second period (also referred to as a second frequency) which is m times the first frequency (where m is a natural number of 2 or more). - The
PLL circuit 50 is an example of a “clock supply circuit.” InFIG. 2 , a flow of the first clock is indicated by a thin line and a flow of the second clock is indicated by a thick line. The following description will be given with reference to an example in which the second clock is twice as fast as the first clock (i.e., has half the period of the first clock or twice the frequency of the first clock). - The
first clock tree 51 is a circuit that distributes the first clock generated by thePLL circuit 50. Thefirst clock tree 51 is supplied with the first clock from thePLL circuit 50 and outputs the supplied first clock to the firstduty adjustment circuit 61. - The
second clock tree 52 is a circuit that distributes the first clock or the second clock generated by thePLL circuit 50. An input terminal of thesecond clock tree 52 is connected to thePLL circuit 50 via themultiplexer 54. When themultiplexer 54 is in a first state, thesecond clock tree 52 is supplied with the first clock from thePLL circuit 50 and outputs the supplied first clock to the thirdduty adjustment circuit 71. On the other hand, when themultiplexer 54 is in a second state, thesecond clock tree 52 is supplied with the second clock from thePLL circuit 50 and outputs the supplied second clock to the thirdduty adjustment circuit 71. Themultiplexer 54 is controlled by acorrection sequencer 91 that will be described later and is switched between the first state and the second state. For example, when an operation of writing data into the NAND device 20 (hereinafter simply referred to as a “data write operation”) or the like is performed, themultiplexer 54 is switched to the first state. On the other hand, when a third correction process that will be described later is performed, themultiplexer 54 is switched to the second state. - The
third clock tree 53 is a circuit that distributes the second clock generated by thePLL circuit 50. Thethird clock tree 53 is supplied with the second clock from thePLL circuit 50 and outputs the supplied second clock to the third DDR flip-flop circuit 81. - The first duty adjustment circuit 61 (also referred to as a duty cycle adjuster (i.e. DCA) which will be hereinafter referred to as a “
first DCA circuit 61”) is a circuit that adjusts (or corrects) the duty of the first clock on the upstream side of the first DDR flip-flop circuit 63. Thefirst DCA circuit 61 adjusts the duty of the first clock supplied from thefirst clock tree 51 and outputs the first clock with the adjusted duty to the first DDR flip-flop circuit 63. -
FIG. 3 is a block diagram showing an example of an internal configuration of thefirst DCA circuit 61. Thefirst DCA circuit 61 includes, for example, adelay circuit 101, an ANDelement 102, an ORelement 103, and amultiplexer 104. - The
delay circuit 101 delays the signal (also referred to as first clock) input to thefirst DCA circuit 61. For example, thedelay circuit 101 includes a plurality of delay elements connected in series and can change the number of delay elements based on a signal from the outside (for example, a signal from the correction sequencer 91). Thedelay circuit 101 can adjust the amount of delay of the input signal by changing the number of delay elements. - The signal delayed by the
delay circuit 101 is supplied to a first input terminal of the ANDelement 102. The signal input to thefirst DCA circuit 61 is directly supplied to a second input terminal of the ANDelement 102. Similarly, the signal delayed by thedelay circuit 101 is supplied to a first input terminal of theOR element 103. The signal input to thefirst DCA circuit 61 is directly supplied to a second input terminal of theOR element 103. - A first input terminal of the
multiplexer 104 is connected to an output terminal of the ANDelement 102. A second input terminal of themultiplexer 104 is connected to an output terminal of theOR element 103. The output terminal of themultiplexer 104 is an output terminal of thefirst DCA circuit 61. Themultiplexer 104 can be switched between a first state in which it connects the output terminal of the ANDelement 102 to the output terminal of themultiplexer 104 and a second state in which it connects the output terminal of theOR element 103 to the output terminal of themultiplexer 104 based on a signal from the outside (for example, a signal from the correction sequencer 91). -
FIG. 4 is a timing chart showing signals at points in thefirst DCA circuit 61. - Part (A) of
FIG. 4 shows a waveform of the signal (also referred to as the first clock) (that is, the signal at point A inFIG. 3 ) input to thefirst DCA circuit 61. Part (B) ofFIG. 4 shows a waveform of the signal delayed by the delay circuit 101 (that is, the signal at point B inFIG. 3 ). Part (C) ofFIG. 4 shows a waveform of the signal input to the first input terminal of the multiplexer 104 (that is, the signal at point C inFIG. 3 ). Part (D) ofFIG. 4 shows a waveform of the signal input to the second input terminal of the multiplexer 104 (that is, the signal at point D inFIG. 3 ). - As shown in
FIG. 4 , thecorrection sequencer 91 can change the duty of the signal passing through thefirst DCA circuit 61 based on the amount of delay of the signal due to thedelay circuit 101 and the state of themultiplexer 104. For example, thecorrection sequencer 91 makes the duty of the signal smaller than that of the original signal (i.e. decreases the duty ratio of the signal) by setting themultiplexer 104 to the first state. Thecorrection sequencer 91 makes the duty of the signal larger than that of the original signal (i.e. increases the duty ratio of the signal) by setting themultiplexer 104 to the second state. - The configurations of the second to fourth
duty adjustment circuits first DCA circuit 61 described above. For description of the second to fourthduty adjustment circuits duty adjustment circuits - As shown in
FIG. 2 , thedata processing circuit 62 is connected to another circuit in theNAND controller 16 through thefirst connection terminal 41 of theNAND Phy 30. When a data write operation is performed, data for writing that is to be transmitted to theNAND device 20 is input to thedata processing circuit 62. Thedata processing circuit 62 outputs the input data for writing to the first DDR flip-flop circuit 63. When the data write operation is performed, thedata processing circuit 62 also acquires data indicating an operation clock pattern that is to be transmitted to theNAND device 20 from a storage (not shown). Thedata processing circuit 62 outputs the data indicating the operation clock pattern to the second DDR flip-flop circuit 72. - When a first correction process is performed, the
data processing circuit 62 acquires data indicating a toggle pattern (i.e. a pattern in which a high level and a low level are alternately repeated with a certain period) that is to be output to thefirst detection circuit 83 from the storage (not shown). Thedata processing circuit 62 outputs the data indicating the toggle pattern to the first DDR flip-flop circuit 63. When the first correction process is performed, thedata processing circuit 62 also acquires data indicating a sampling clock pattern that is to be output to thefirst detection circuit 83 from the storage (not shown). Thedata processing circuit 62 outputs the data indicating the sampling clock pattern to the third DDR flip-flop circuit 81. When a second correction process is performed, the “first DDR flip-flop circuit 63” may be replaced with the “second DDR flip-flop circuit 72” in the above description. - In the present embodiment, when a third correction process is performed, the
data processing circuit 62 acquires data indicating a toggle pattern that is to be transmitted to theNAND device 20 from the storage (not shown). Thedata processing circuit 62 outputs the data indicating the toggle pattern to the first DDR flip-flop circuit 63. When the third correction process is performed, thedata processing circuit 62 also acquires data indicating a special sampling clock pattern that is to be transmitted to theNAND device 20 from the storage (not shown). Thedata processing circuit 62 outputs the data indicating the special sampling clock pattern to the second DDR flip-flop circuit 72. These will be described in detail later. - A signal input terminal of the first DDR (i.e. Double Data Rate) flip-flop circuit 63 (hereinafter referred to as a “
first DDR_FF circuit 63”) is connected to an output terminal of thedata processing circuit 62. A clock input terminal of thefirst DDR_FF circuit 63 is connected to the output terminal of thefirst DCA circuit 61. When a data write operation is performed, thefirst DDR_FF circuit 63 generates a data signal having a predetermined transfer rate (i.e. a signal indicating the content of the data for writing) using the data supplied from thedata processing circuit 62 and the first clock supplied from thefirst DCA circuit 61. The data write operation is an example of a “first operation.” The data signal is an example of a “first signal.” - When the third correction process is performed, the
first DDR_FF circuit 63 generates a signal having a toggle pattern based on the first clock (hereinafter referred to as a “toggle signal”). For example, when the third correction process is performed, thefirst DDR_FF circuit 63 generates a toggle signal using the data indicating the toggle pattern supplied from thedata processing circuit 62 and the first clock supplied from thefirst DCA circuit 61. This will be described in detail later. The third correction process is an example of a “second operation.” The toggle signal is an example of a “second signal.” -
FIG. 5 is a block diagram showing an example of an internal configuration of thefirst DDR_FF circuit 63. Thefirst DDR_FF circuit 63 includes, for example, a first flip-flop circuit 111 (hereinafter referred to as a “first FF circuit 111”), a second flip-flop circuit 112 (hereinafter referred to as a “second FF circuit 112”), and amultiplexer 113. - A signal input terminal of the
first FF circuit 111 is connected to the output terminal of thedata processing circuit 62. A clock input terminal of thefirst FF circuit 111 is connected to the output terminal of thefirst DCA circuit 61. A signal input terminal of thesecond FF circuit 112 is connected to the output terminal of thedata processing circuit 62. A clock input terminal of thesecond FF circuit 112 is connected to the output terminal of thefirst DCA circuit 61, for example, through a logic inversion circuit. - A first input terminal of the
multiplexer 113 is connected to an output terminal of thefirst FF circuit 111. A second input terminal of themultiplexer 113 is connected to an output terminal of thesecond FF circuit 112. A control terminal of themultiplexer 113 is connected to the output terminal of thefirst DCA circuit 61. An output terminal of themultiplexer 113 is an output terminal of thefirst DDR_FF circuit 63. Themultiplexer 113 can be switched between a first state in which it connects the output terminal of thefirst FF circuit 111 to the output terminal of themultiplexer 113 and a second state in which it connects the output terminal of thesecond FF circuit 112 to the output terminal of themultiplexer 113 based on the first clock from thefirst DCA circuit 61 that has been input to the control terminal. - That is, the
first DDR_FF circuit 63 updates a value output from the output terminal of thedata processing circuit 62 at each rising and falling edge of each cycle of the first clock. As a result, thefirst DDR_FF circuit 63 generates a data signal at a timing with a frequency that is twice that of the first clock and outputs the generated data signal to thefirst delay circuit 64. - The configurations of the second and third DDR flip-
flop circuits first DDR_FF circuit 63 described above. The operations of the second and third DDR flip-flop circuits flop circuits - As shown in
FIG. 2 , thefirst delay circuit 64 is supplied with a data signal from thefirst DDR_FF circuit 63. Thefirst delay circuit 64 delays the data signal passing through thefirst delay circuit 64. For example, thefirst delay circuit 64 includes a plurality of delay elements connected in series and can change the number of delay elements based on a signal from the outside (for example, a signal from the correction sequencer 91). Thefirst delay circuit 64 adjusts the amount of delay (or phase) of the data signal by changing the number of delay elements. As described above, the “phase” corresponds to the timing of rising (or falling) of an edge of a pulse-like signal. For this reason, “phase” may be replaced with “timing” in the present embodiment. Thefirst delay circuit 64 outputs the data signal with the adjusted amount of delay. - The data signal with the adjusted amount of delay is supplied from the
first delay circuit 64 to the second duty adjustment circuit 65 (hereinafter referred to as a “second DCA circuit 65”). Thesecond DCA circuit 65 is a circuit that adjusts (or corrects) the duty of the data signal on the downstream side of thefirst DDR_FF circuit 63. Thesecond DCA circuit 65 outputs the data signal with the adjusted duty to the first input/output circuit 66. Thesecond DCA circuit 65 has a configuration similar to that of thefirst DCA circuit 61. - A first terminal of the first input/
output circuit 66 is connected to an output terminal of thesecond DCA circuit 65. - A second terminal of the first input/
output circuit 66 is connected to theNAND device 20 via thesecond connection terminal 42 that is an external connection terminal of theNAND Phy 30. A third terminal of the first input/output circuit 66 is connected to thefirst detection circuit 83. The first input/output circuit 66 outputs the data signal supplied from thesecond DCA circuit 65 to theNAND device 20 via thesecond connection terminal 42 and also outputs it to thefirst detection circuit 83. - As described above, the
first DCA circuit 61, thefirst DDR_FF circuit 63, thefirst delay circuit 64, thesecond DCA circuit 65, and the first input/output circuit 66 cooperate to constitute an example of the “first output circuit A1.” In the first output circuit A1, one of thefirst DCA circuit 61 and thesecond DCA circuit 65 may be omitted. - The third duty adjustment circuit 71 (hereinafter referred to as a “
third DCA circuit 71”) is a circuit that adjusts (or corrects) the duty of the clock on the upstream side of the second DDR flip-flop circuit 72. Thethird DCA circuit 71 adjusts the duty of the first clock or the second clock supplied from thesecond clock tree 52 and outputs the first clock or the second clock with the adjusted duty to the second DDR flip-flop circuit 72. Thethird DCA circuit 71 is an example of a “second adjustment circuit” that can adjust the duty of a special sampling clock that will be described later. Thethird DCA circuit 71 has a configuration similar to that of thefirst DCA circuit 61. - A signal input terminal of the second DDR flip-flop circuit 72 (hereinafter referred to as a “
second DDR_FF circuit 72”) is connected to the output terminal of thedata processing circuit 62. A clock input terminal of thesecond DDR_FF circuit 72 is connected to the output terminal of thethird DCA circuit 71. When a data write operation is performed, thesecond DDR_FF circuit 72 generates an operation clock based on the first clock. For example, when a data write operation is performed, thesecond DDR_FF circuit 72 generates an operation clock synchronized with the first clock using data indicating the operation clock supplied from thedata processing circuit 62 and the first clock supplied from thethird DCA circuit 71. - When the third correction process is performed, the
second DDR_FF circuit 72 generates a special sampling clock based on the second clock. For example, when the third correction process is performed, thesecond DDR_FF circuit 72 generates a special sampling clock synchronized with the second clock using data indicating the pattern of the special sampling clock supplied from thedata processing circuit 62 and the second clock supplied from thethird DCA circuit 71. This will be described in detail later. Hereinafter, the “operation clock” and the “sampling clock” may be collectively referred to as a “clock.” - The configuration of the
second DDR_FF circuit 72 is similar to, for example, that of thefirst DDR_FF circuit 63. For description of thesecond DDR_FF circuit 72, the “first DCA circuit 61” may be replaced with the “third DCA circuit 71” and the “first clock input to the control terminal” may be replaced with the “second clock input to the control terminal” in the above description of thefirst DDR_FF circuit 63. - Inputting the second clock to the control terminal allows the
second DDR_FF circuit 72 to output edges at intervals of 0.5 cycle of the first period. - The clock is input from the
second DDR_FF circuit 72 to thesecond delay circuit 73. Thesecond delay circuit 73 delays the clock passing through thesecond delay circuit 73. For example, thesecond delay circuit 73 includes a plurality of delay elements connected in series and can change the number of delay elements based on a signal from the outside (for example, a signal from the correction sequencer 91). Thesecond delay circuit 73 adjusts the amount of delay (or phase) of the clock by changing the number of delay elements. Thesecond delay circuit 73 outputs the clock with the adjusted amount of delay. Thesecond delay circuit 73 is an example of a “first adjustment circuit” that can adjust the phase of the special sampling clock that will be described later. - The clock with the adjusted amount of delay is supplied from the
second delay circuit 73 to the fourth duty adjustment circuit 74 (hereinafter referred to as a “fourth DCA circuit 74”). Thefourth DCA circuit 74 is a circuit that adjusts (or corrects) the duty of the clock on the downstream side of thesecond DDR_FF circuit 72. Thefourth DCA circuit 74 outputs the clock with the adjusted duty to the second input/output circuit 75. Thefourth DCA circuit 74 is another example of the “second adjustment circuit” that can adjust the duty of the special sampling clock that will be described later. Thefourth DCA circuit 74 has a configuration similar to that of thefirst DCA circuit 61. - A first terminal of the second input/
output circuit 75 is connected to an output terminal of thefourth DCA circuit 74. - A second terminal of the second input/
output circuit 75 is connected to theNAND device 20 via thethird connection terminal 43 that is an external connection terminal of theNAND Phy 30. A third terminal of the second input/output circuit 75 is connected to thesecond detection circuit 84. The second input/output circuit 75 outputs the clock supplied from thefourth DCA circuit 74 to theNAND device 20 via thethird connection terminal 43 and also outputs it to thesecond detection circuit 84. - The
third DCA circuit 71, thesecond DDR_FF circuit 72, thesecond delay circuit 73, thefourth DCA circuit 74, and the second input/output circuit 75 described above cooperate to constitute an example of the “second output circuit A2.” In the second output circuit A2, one of thethird DCA circuit 71 and thefourth DCA circuit 74 may be omitted. In the present embodiment, thePLL circuit 50, the first output circuit A1, and the second output circuit A2 constitute an example of the “semiconductor integrated circuit.” - A signal input terminal of the third DDR flip-flop circuit 81 (hereinafter referred to as a “
third DDR_FF circuit 81”) is connected to the output terminal of thedata processing circuit 62. A clock input terminal of thethird DDR_FF circuit 81 is connected to the output terminal of theclock tree 53. When the first and second correction processes are performed, thethird DDR_FF circuit 81 generates a sampling clock. For example, when the first and second correction processes are performed, thethird DDR_FF circuit 81 generates a sampling clock synchronized with the second clock using data indicating the sampling clock supplied from thedata processing circuit 62 and the second clock supplied from theclock tree 53. Thethird DDR_FF circuit 81 outputs the generated sampling clock to thethird delay circuit 82. - The configuration of the
third DDR_FF circuit 81 is similar to, for example, that of thefirst DDR_FF circuit 63. For description of thethird DDR_FF circuit 81, the “first DCA circuit 61” is replaced with the “clock tree 53” and the “first clock input to the control terminal” is replaced with the “second clock input to the control terminal” in the above description of thefirst DDR_FF circuit 63. - Inputting the second clock to the control terminal allows the
third DDR_FF circuit 81 to output edges at intervals of 0.5 cycle of the first period. - The sampling clock is input from the
third DDR_FF circuit 81 to thethird delay circuit 82. Thethird delay circuit 82 delays the input sampling clock. For example, thethird delay circuit 82 includes a plurality of delay elements connected in series and can change the number of delay elements based on a signal from the outside (for example, a signal from the correction sequencer 91). Thethird delay circuit 82 adjusts the amount of delay (or phase) of the sampling clock by changing the number of delay elements. Thethird delay circuit 82 outputs the sampling clock with the adjusted amount of delay to thefirst detection circuit 83 and thesecond detection circuit 84. - The first detection circuit 83 (also referred to as duty cycle detector (i.e. DCD)) detects the suitability of the duty and phase of the data signal transmitted to the
NAND device 20 based on the signal supplied from the first input/output circuit 66 and the sampling clock supplied from thethird delay circuit 82. The detection result (i.e. sampling result) of thefirst detection circuit 83 is output to thecorrection sequencer 91. The detection operation of thefirst detection circuit 83 will be described in detail later. - The
second detection circuit 84 detects the suitability of the duty and phase of the operation clock transmitted to theNAND device 20 based on the operation clock supplied from the second input/output circuit 75 and the sampling clock supplied from thethird delay circuit 82. The detection result (i.e. sampling result) of thesecond detection circuit 84 is output to thecorrection sequencer 91. The detection operation of thesecond detection circuit 84 will be described in detail later. - The
control circuit 90 performs overall control of the operation of theNAND Phy 30. Thecontrol circuit 90 includes thecorrection sequencer 91 that performs the first to third correction processes that will be described later. Thecorrection sequencer 91 is a circuit provided in theNAND Phy 30. Thecorrection sequencer 91 performs the first to third correction processes by controlling the components of the NAND Phy 30 (for example, themultiplexer 54, the first to fourthduty adjustment circuits data processing circuit 62, and the first tothird delay circuits duty adjustment circuits delay circuits NAND device 20 becomes a data signal suitable for processing. This correction process will be described in detail later. - Next, the
NAND device 20 will be described. - As shown in
FIG. 2 , theNAND device 20 includes, for example, amemory cell array 121, adata register 122, and athird detection circuit 123. - The
memory cell array 121 includes a plurality of memory cell transistors and stores data in a nonvolatile manner. A peripheral circuit (not shown) is connected to thememory cell array 121. When a data write operation and a data read operation are performed on thememory cell array 121, the peripheral circuit applies a predetermined voltage to various wirings of the memory cell array. - The data register 122 is a data buffer that temporarily stores data when a data write or read operation is performed on the
memory cell array 121. For example, when data of a predetermined unit (for example, one page) is written into thememory cell array 121, the data register 122 collects data sequentially transmitted from thememory controller 10 until the data sequentially transmitted from thememory controller 10 is accumulated up to the predetermined unit and collectively written into thememory cell array 121. - When the third correction process is performed, the
third detection circuit 123 detects the suitability of the duty and phase of the toggle signal in theNAND device 20 based on the toggle signal transmitted from theNAND Phy 30 and the sampling clock transmitted from theNAND Phy 30. The detection result (i.e. sampling result) of thethird detection circuit 123 is stored in the data register 122. The detection operation of thethird detection circuit 123 will be described in detail later. - Next, correction processes performed by the
NAND Phy 30 will be described. The correction processes described below are performed under the control of thecorrection sequencer 91 unless otherwise described. The correction processes performed in the present embodiment include the first and second correction processes based on results of detection in the NAND Phy 30 (i.e. the detection results of the first andsecond detection circuits 83 and 84) and the third correction process based on a result of detection in the NAND device 20 (the detection result of the third detection circuit 123). These correction processes are performed when a predetermined condition is satisfied (for example, when power is initially supplied to the memory device 1). Note that the first and second correction processes are not essential and may be omitted. - The
correction sequencer 91 performs a first correction process for correcting the duty and phase of the data signal based on the detection result of thefirst detection circuit 83 when a predetermined condition for performing the correction process is satisfied. -
FIG. 6 is a timing chart illustrating the first correction process. S1, S2, and S5 inFIG. 6 indicate signals at points S1, S2, and S5 inFIG. 2 , respectively. In the first correction process, a first clock is output from thefirst clock tree 51, data indicating a toggle pattern is output from thedata processing circuit 62, and thefirst DDR_FF circuit 63 generates a toggle signal using the first clock. The toggle signal generated by thefirst DDR_FF circuit 63 passes through thefirst delay circuit 64 and thesecond DCA circuit 65 and is input from the first input/output circuit 66 to thefirst detection circuit 83. - On the other hand, in the first correction process, a second clock output from the
third clock tree 53 passes through thethird DDR_FF circuit 81 and thethird delay circuit 82 and is input to thefirst detection circuit 83 as a sampling clock that is twice as fast as the toggle signal. - Then, the
first detection circuit 83 detects (or samples), for example, the presence or absence of a rising edge and a falling edge of the toggle signal at the timings of rising edges of the sampling clock. Specifically, thefirst detection circuit 83 includes a comparator that compares the output (or level) of the sampling clock with the output (or level) of the toggle signal. Thefirst detection circuit 83 detects the presence or absence of a rising edge and a falling edge of the toggle signal at the timings of rising edges of the sampling clock based on the output result of the comparator. - More specifically, the
first detection circuit 83 determines that rising edges (or falling edges) of the toggle signal have shifted (or deviated) from rising edges of the sampling clock when a high level (or low level) of the toggle signal has been stably detected at the timings of rising edges in a plurality of cycles of the sampling clock. On the other hand, thefirst detection circuit 83 determines that rising edges of the sampling clock match rising edges (or falling edges) of the toggle signal when a high level (or low level) of the toggle signal has not been stably detected at the timings of rising edges in a plurality of cycles of the sampling clock. - In the example shown in
FIG. 6 , the data signal transmitted to the NAND device 20 (see S2 inFIG. 6 ) has deteriorated with a reduced duty, compared to the data signal immediately after it is output from the first DDR_FF circuit 63 (see S1 inFIG. 6 ). For this reason, the rising edges of the sampling clock do not match the falling edges of the data signal in thefirst detection circuit 83. In this case, by performing detection through thefirst detection circuit 83, it is possible to detect that falling edges of the toggle signal have deviated from rising edges of the sampling clock. - When rising edges of the toggle signal have deviated from rising edges of the sampling clock, the
correction sequencer 91 corrects the phase of the toggle signal by changing the set value of the amount of delay of thefirst delay circuit 64. Similarly, when the rising edges of the toggle signal match the rising edges of the sampling clock but the falling edges of the toggle signal have deviated from the rising edges of the sampling clock, thecorrection sequencer 91 corrects the duty of the toggle signal by changing the amount of duty adjustment of at least one of thefirst DCA circuit 61 and thesecond DCA circuit 65. Thereby, the correction process relating to the data signal is performed. - The
correction sequencer 91 performs a second correction process for correcting the duty and phase of the operation clock based on the detection result of thesecond detection circuit 84 when a predetermined condition for performing the correction process is satisfied. -
FIG. 7 is a timing chart illustrating the second correction process. S3, S4, and S5 inFIG. 7 indicate signals at points S3, S4, and S5 inFIG. 2 , respectively. In the second correction process, themultiplexer 54 is controlled to the first state, a first clock is output from thesecond clock tree 52, data indicating a toggle pattern is output from thedata processing circuit 62, and thesecond DDR_FF circuit 72 generates an operation clock having the same period as the first clock and synchronized with the toggle pattern. The operation clock generated by thesecond DDR_FF circuit 72 passes through thesecond delay circuit 73 and thefourth DCA circuit 74 and is input from the second input/output circuit 75 to thesecond detection circuit 84. - On the other hand, in the second correction process, the second clock output from the
third clock tree 53 passes through thethird DDR_FF circuit 81 and thethird delay circuit 82 and is input to thesecond detection circuit 84 as a sampling clock that is twice as fast as the operation clock. Then, thesecond detection circuit 84 detects (or samples), for example, the presence or absence of a rising edge and a falling edge of the operation clock at the timings of rising edges of the sampling clock. - Details of the second correction process are similar to those of the first correction process described above. For description of the second correction process, the “data signal” may be replaced with the “operation clock,” the “
first detection circuit 83” may be replaced with the “second detection circuit 84,” the “first DDR_FF circuit 63” may be replaced with the “second DDR_FF circuit 72,” the “first delay circuit 64” may be replaced with the “second delay circuit 73,” the “first DCA circuit 61” may be replaced with the “third DCA circuit 71,” and the “second DCA circuit 65” may be replaced with the “fourth DCA circuit 74” in the above description of the first correction process. - Next, the third correction process based on a result of detection in the
NAND device 20 will be described. Thecorrection sequencer 91 performs a third correction process for correcting the duty and phase of the data signal based on the detection result of thethird detection circuit 123 when a predetermined condition for performing the third correction process is satisfied. - First, the overall operation of the third correction process will be described.
-
FIG. 8 is a timing chart illustrating the third correction process. S1, S7, S6, S3, and S8 inFIG. 8 indicate signals at points S1, S7, S6, S3, and S8 inFIG. 2 , respectively. In the third correction process, a first clock is output from thefirst clock tree 51, data indicating a toggle pattern is output from thedata processing circuit 62, and thefirst DDR_FF circuit 63 generates a toggle signal using the first clock. The toggle signal generated by thefirst DDR_FF circuit 63 passes through thefirst delay circuit 64 and thesecond DCA circuit 65 and is input from the first input/output circuit 66 to thethird detection circuit 123 of theNAND device 20. - On the other hand, in the third correction process, the
multiplexer 54 is controlled to the second state and a second clock is supplied from thesecond clock tree 52 to thesecond DDR_FF circuit 72. Thesecond DDR_FF circuit 72 generates a special sampling clock (i.e. a sampling clock having a special pattern) using the second clock based on data indicating the pattern of the special sampling clock supplied from thedata processing circuit 62. Here, without limiting the invention, the term “special” is used for the sake of convenience to distinguish from the sampling clock used in the first and second correction processes described above. The special sampling clock generated by thesecond DDR_FF circuit 72 passes through thesecond delay circuit 73 and thefourth DCA circuit 74 and is input from the second input/output circuit 75 to thethird detection circuit 123 of theNAND device 20. - In the present embodiment, when the third correction process is performed, the
correction sequencer 91 issues a command instructing that the detection result of thethird detection circuit 123 be written into the data register 122 in theNAND device 20. Specifically, thecorrection sequencer 91 outputs a predetermined control command to the command sender CS (seeFIG. 1 ) to cause the command sender CS to transmit a write command, which is to write the detection result of thethird detection circuit 123 to the data register 122 and designates an address in the data register 122 in theNAND device 20 as a write destination address, to theNAND device 20. Alternatively, theNAND device 20 may be preset such that the detection result of thethird detection circuit 123 is automatically written to a specific address of the data register 122 when the third correction process is performed. - Next, the special sampling clock used in the third correction process will be described.
- S3 and S8 in
FIG. 8 show an example of the special sampling clock. The special sampling clock includes a first edge E1 for sampling one rising edge RE included in the toggle signal and a second edge E2 for sampling one falling edge DE included in the toggle signal. Thesecond DDR_FF circuit 72 generates the first edge E1 and the second edge E2 using rising edges (for example, rising edges C1 and C2) of the second clock. - In the present embodiment, the rising edge RE is a rising edge of a first pulse P1 included in the toggle signal. The falling edge DE is a falling edge of a second pulse P2 different from the first pulse P1 (for example, a pulse immediately subsequent to the first pulse P1) included in the toggle signal. Then, the
second DDR_FF circuit 72 generates the first edge E1 and the second edge E2 for sampling the rising edge RE and the falling edge DE using rising edges of the second clock. - For example, the special sampling clock includes a plurality of pulses generated by (n+0.5) frequency division of the first period described above (where n is a natural number of 1 or more). In the present embodiment, the
second DDR_FF circuit 72 includes generates one pulse D1 of the special sampling clock based on a rising edge C1 of a first pulse B1 included in the second clock and a falling edge C3 of a second pulse B2 different from the first pulse B1 (for example, a pulse immediately subsequent to the first pulse B1) included in the second clock. That is, thesecond DDR_FF circuit 72 generates a rising edge E1 of the pulse D1 of the special sampling clock based on the rising edge C1 of the first pulse B1 and generates a falling edge E3 of the pulse D1 of the special sampling clock based on the falling edge C3 of the second pulse B2. - In the present embodiment, the
correction sequencer 91 also controls thesecond delay circuit 73 to generate a special sampling clock whose phase gradually deviates. The special sampling clock whose phase gradually deviates is, for example, a sampling clock whose timing of the rising edge is gradually delayed (i.e. the rising edge interval gradually increases). Then, the second input/output circuit 75 outputs the special sampling clock whose phase gradually deviates to thethird detection circuit 123 of theNAND device 20. - In the present embodiment, a special sampling clock whose phase gradually deviates in a plurality of cycles is continuously output in accordance with one write command to store the detection result of the
third detection circuit 123 in the data register 122. That is, based on one write command, detection of thethird detection circuit 123 is continuously performed using a special sampling clock whose phase gradually deviates in a plurality of cycles. Thereby, the amount of phase deviation of the toggle signal can be obtained. - In the present embodiment, the
correction sequencer 91 also generates a special sampling clock whose duty gradually changes by controlling at least one of thethird DCA circuit 71 and thefourth DCA circuit 74. The special sampling clock whose duty gradually changes is, for example, a special sampling clock whose duty ratio gradually increases (or gradually decreases). Then, the second input/output circuit 75 outputs the special sampling clock whose duty gradually changes to thethird detection circuit 123 of theNAND device 20. - In the present embodiment, a special sampling clock whose duty gradually changes in a plurality of cycles is continuously output in accordance with one write command to store the detection result of the
third detection circuit 123 in the data register 122. That is, based on one write command, detection of thethird detection circuit 123 is continuously performed using a special sampling clock whose duty gradually changes in a plurality of cycles. Thereby, the amount of duty deviation of the toggle signal can be obtained. - Next, the detection operation of the
third detection circuit 123 will be described. - As shown in
FIG. 8 , thethird detection circuit 123 detects (or samples), for example, the presence or absence of a rising edge and a falling edge of the toggle signal at the timing of rising edges of the special sampling clock. For example, thethird detection circuit 123 detects the presence or absence of a rising edge RE and a falling edge DE of the toggle signal at the timing of rising edges E1 and E2 of the special sampling clock. - Specifically, the
third detection circuit 123 includes a comparator that compares the output (or level) of the special sampling clock with the output (or level) of the toggle signal. Thethird detection circuit 123 detects the presence or absence of a rising edge and a falling edge of the toggle signal at the timing of rising edges of the special sampling clock based on the output result of the comparator. Details of this detection method are similar to those of the detection method of thefirst detection circuit 83. - In the example shown in
FIG. 8 , the toggle signal input to the inside of the NAND device 20 (see S7 inFIG. 8 ) has deteriorated with a reduced duty, compared to the data signal immediately after it is output from the first DDR_FF circuit 63 (see S1 inFIG. 8 ). For this reason, a falling edge DE′ of the toggle signal does not match a rising edge E2 of the special sampling clock in thethird detection circuit 123. In this case, by performing detection through thethird detection circuit 123, it is possible to detect that falling edges of the toggle signal have shifted from rising edges of the sampling clock. - In the present embodiment, the
third detection circuit 123 continues the detection operation while the special sampling clock whose phase gradually deviates is continuously transmitted from theNAND Phy 30 to theNAND device 20. Thethird detection circuit 123 also continues the detection operation while the special sampling clock whose duty gradually changes is continuously transmitted from theNAND Phy 30 to theNAND device 20. - For example, the
third detection circuit 123 detects the presence or absence of a rising edge and a falling edge of the toggle signal at each rising edge of the special sampling clock. - In the present embodiment, the
correction sequencer 91 issues a read command to read the detection result of thethird detection circuit 123 stored in the data register 122 from theNAND device 20, for example, when the transmission of the special sampling clock whose phase gradually deviates is completed. In addition, thecorrection sequencer 91 issues a read command to read the detection result of thethird detection circuit 123 stored in the data register 122 from theNAND device 20, for example, when the transmission of the special sampling clock whose duty gradually changes is completed. - Then, when rising edges of the toggle signal have deviated from rising edges of the sampling clock based on the detection result of the
third detection circuit 123 read from theNAND device 20, thecorrection sequencer 91 corrects the phase of the toggle signal by changing the set value of the amount of delay of thefirst delay circuit 64. Similarly, when the rising edges of the toggle signal match the rising edges of the sampling clock but the falling edges of the toggle signal have deviated from the rising edges of the sampling clock, thecorrection sequencer 91 corrects the duty of the toggle signal by changing the amount of duty adjustment of at least one of thefirst DCA circuit 61 and thesecond DCA circuit 65. Thereby, the correction process relating to the data signal is performed. - Next, a flow of the third correction process will be described.
-
FIGS. 9 and 10 are flowcharts showing the flow of the third correction process. Thecorrection sequencer 91 may perform the first correction process and the second correction process before the third correction process. - First, the
correction sequencer 91 outputs a first control command to the command sender CS to cause the command sender CS to transmit a write command to store the detection result of thethird detection circuit 123 in the data register 122 of theNAND device 20 to the NAND device 20 (see, S101). This write command is a write command that designates an address included in the data register 122 as a write destination address and designates the detection result of thethird detection circuit 123 as write target data. - Next, the
correction sequencer 91 outputs a control signal to themultiplexer 54 to switch themultiplexer 54 to the second state. Thereby, the second clock is supplied to the second DDR_FF circuit 72 (see, S102). - Next, the
correction sequencer 91 controls thedata processing circuit 62 to cause thefirst DDR_FF circuit 63 to output data indicating a toggle pattern. Thus, thefirst DDR_FF circuit 63 generates and outputs a toggle signal having the first period using the first clock based on the data indicating the toggle pattern (see, S103). - Next, the
correction sequencer 91 controls thedata processing circuit 62 to cause thesecond DDR_FF circuit 72 to output data indicating a sampling clock pattern. Thus, thesecond DDR_FF circuit 72 generates and outputs a special sampling clock using the second clock based on the data indicating the sampling clock pattern (see, S104). - Next, the
correction sequencer 91 changes the set value of thefirst delay circuit 64. Accordingly, a special sampling clock whose phase has deviated is supplied to thethird detection circuit 123 of the NAND device 20 (see, S105). - Next, the
correction sequencer 91 determines whether or not the phase has deviated by one period (see, S106). When the phase has not deviated by one period (see, S106: NO), thecorrection sequencer 91 returns to S103 and repeats the process. Thus, the set value of thefirst delay circuit 64 gradually changes and a special sampling clock whose phase gradually deviates is supplied to thethird detection circuit 123. On the other hand, when the phase has deviated by one period (see, S106: YES), thecorrection sequencer 91 stops the output of the toggle signal and the special sampling clock by controlling the first andsecond DDR_FF circuits 63 and 72 (see, S107). - Next, the
correction sequencer 91 outputs a second control command to the command sender CS to cause the command sender CS to transmit a read command to read the detection result of thethird detection circuit 123 stored in the data register 122 to the NAND device 20 (see, S108). - This read command is a read command in which an address in the data register 122 where the detection result of the
third detection circuit 123 is stored is designated as a read destination address. - Next, the
correction sequencer 91 verifies the detection result of thethird detection circuit 123 read from the NAND device 20 (see, S109). That is, thecorrection sequencer 91 determines whether or not a rising edge or a falling edge of the toggle signal is present at the timing of each rising edge of a plurality of phases of the special sampling clock. - Then, the
correction sequencer 91 identifies a phase of the toggle signal where the rising edges of the special sampling clock match the rising edges of the toggle signal based on the verified detection result. Then, thecorrection sequencer 91 changes the setting of the amount of delay of thefirst delay circuit 64 such that the rising edges of the special sampling clock match the rising edges of the toggle signal in the NAND device 20 (see, S110). In other words, thecorrection sequencer 91 derives and reflects a correction value relating to the amount of delay of the data signal in the first output circuit A1. - Next, as shown in
FIG. 10 , thecorrection sequencer 91 performs the same processes as those of S101 to S104 described above as processes of S201 to S204. Next, thecorrection sequencer 91 changes the set value of at least one of thefirst DCA circuit 61 and thesecond DCA circuit 65. Accordingly, a special sampling clock whose duty has changed is supplied to thethird detection circuit 123 of the NAND device 20 (see, S205). - Next, the
correction sequencer 91 determines whether or not the duty has changed over a predetermined range (see, S206). When the duty has not changed over the predetermined range (see, S206: NO), thecorrection sequencer 91 returns to S203 and repeats the process. Thus, the set value of thefirst DCA circuit 61 or thesecond DCA circuit 65 gradually changes and a special sampling clock whose duty gradually deviates is supplied to thethird detection circuit 123. On the other hand, when the duty has changed over the predetermined range (see, S206: YES), thecorrection sequencer 91 stops the output of the toggle signal and the special sampling clock by controlling the first andsecond DDR_FF circuits 63 and 72 (see, S207). - Next, the
correction sequencer 91 performs the same processes as those of S108 and S109 as processes of S208 and S209. Then, thecorrection sequencer 91 identifies a duty of the toggle signal where the rising edges of the special sampling clock match the rising edges and falling edges of the toggle signal based on the verified detection result. Then, thecorrection sequencer 91 changes the setting of the duty of at least one of thefirst DCA circuit 61 and thesecond DCA circuit 65 such that the rising edges of the special sampling clock match the rising edges and falling edges of the toggle signal in the NAND device 20 (see, S210). In other words, thecorrection sequencer 91 derives and reflects a correction value relating to the duty of the data signal in the first output circuit A1. - In the present embodiment, the
correction sequencer 91 performs the third correction process described above sequentially on the plurality of NAND devices 20 (for example, theNAND devices NAND Phy 30. Then, thecorrection sequencer 91 calculates a skew relating to the delay of the data signal with each of the plurality ofNAND devices 20 based on the detection result of thethird detection circuit 123 read from the plurality ofNAND devices 20. Then, thecorrection sequencer 91 changes the settings of thefirst delay circuit 64 and thefirst DCA circuit 61 or thesecond DCA circuit 65 for eachNAND device 20 such that the skew with each of the plurality ofNAND devices 20 decreases. A command that thecontrol circuit 90 issues to read the sampling result from theNAND device 20A is an example of a “first command.” A command that thecontrol circuit 90 issues to read the sampling result from theNAND device 20B is an example of a “second command.” The first command and the second command may be the same or different. - That is, the
memory controller 10 individually performs correction processes, (which are, for example, the first to third correction processes or may be only the third correction process) relating to a plurality ofNAND devices 20 connected to the same channel ch, sequentially on the plurality ofNAND devices 20. For example, when aNAND device 20A and aNAND device 20B are connected to aNAND Phy 30, theNAND Phy 30 first performs correction processes on theNAND device 20A and derives a first correction value of a first output circuit A1 suitable for theNAND device 20A (for example, a set of first correction values relating toduty adjustment circuits NAND Phy 30 performs correction processes on theNAND device 20B and derives a second correction value of the first output circuit A1 suitable for theNAND device 20B (for example, a set of second correction values relating to theduty adjustment circuits NAND device 20A as a normal operation, theNAND Phy 30 outputs a data signal through the first output circuit A1 adjusted by the first correction value. On the other hand, when performing an operation of writing data to theNAND device 20B as a normal operation, theNAND Phy 30 outputs a data signal through the first output circuit A1 adjusted by the second correction value. The same is true when three ormore NAND devices 20 are connected to one channel ch. - According to such a configuration, a correction value for adjusting a data signal in the
NAND Phy 30 can be derived with high accuracy based on a result of detection in theNAND device 20. Thereby, the accuracy of the signal in theNAND device 20 can be improved. As a result, a timing window (a so-called eye pattern) that is a timing margin of the operation clock with respect to the data signal can be widened. -
FIG. 11 is a timing chart showing examples of advantages of the third correction process of the present embodiment. - In the present embodiment, the
second DDR_FF circuit 72 generates a first edge E1 for sampling one rising edge RE included in a toggle signal and a second edge E2 for sampling one falling edge DE included in the toggle signal using rising edges (for example, rising edges C1 and C2) of the second clock in the third correction process. - According to such a configuration, the first edge E1 and the second edge E2 are not easily out of phase even when the duty of the sampling clock has deteriorated before reaching the NAND device 20 (i.e. when falling edges of the sampling clock have deviated to the leading side as shown in S8 of
FIG. 11 ). Therefore, even when the duty of the sampling clock has deteriorated, the rising edge RE and the falling edge DE of the toggle signal can be accurately sampled using the first edge E1 and the second edge E2. - In the present embodiment, the
correction sequencer 91 outputs a sampling clock whose phase gradually deviates or a sampling clock whose duty gradually deviates. According to such a sampling clock, the process of detecting the phase or duty of the toggle signal can be realized by one write operation. Thereby, the time required for the correction processes can be shortened. - Here, the
memory controller 10 may also include the first and second output circuits A1 and A2 described above provided for each channel ch such that they can simultaneously transmit signals to a plurality ofNAND devices 20 connected to different channels ch. In this case, if the phase and duty of a data signal can be adjusted such that the skew with each of the plurality ofNAND devices 20 decreases, the reliability of parallel processing on the plurality ofNAND devices 20 can be further improved. - The
memory controller 10 may use the same sampling clock as the special sampling clock of the third correction process as a sampling clock used for the first and second correction processes. If the sampling clock used for the first and second correction processes is generated by thethird DDR_FF circuit 81, such a special sampling clock can be generated. - Next, a second embodiment will be described. The second embodiment differs from the first embodiment in the pulse shape of the special sampling clock. Rest of structures other than structures described below are similar to those in the first embodiment. In the present embodiment, a normal flip-flop circuit (i.e. a non-DDR flip-flop circuit) may be provided instead of the
third DDR_FF circuit 81. -
FIG. 12 is a timing chart illustrating a third correction process in the second embodiment. S3 and S8 inFIG. 12 show an example of a special sampling clock in the second embodiment. The special sampling clock includes a first edge E1 for sampling one rising edge RE included in a toggle signal and a second edge E2 for sampling one falling edge DE included in the toggle signal. Thesecond DDR_FF circuit 72 generates the first edge E1 and the second edge E2 using rising edges (for example, rising edges C1 and C2) of the second clock. - In the present embodiment, the rising edge RE is a rising edge of a first pulse P1 included in the toggle signal. The falling edge DE is a falling edge of a second pulse P2 different from the first pulse P1 (for example, a pulse immediately subsequent to the first pulse P1) included in the toggle signal. The
second DDR_FF circuit 72 generates the first edge E1 and the second edge E2 for sampling the rising edge RE and the falling edge DE using rising edges of the second clock. - For example, the special sampling clock includes a plurality of pulses generated by (n+0.5) frequency division (where n is a natural number of 1 or more) of the first period. In the present embodiment, the
second DDR_FF circuit 72 generates the rising and falling edges of all pulses of the sampling clock using rising edges of the second clock. In the present embodiment, thesecond DDR_FF circuit 72 generates one pulse D1 of the special sampling clock based on a rising edge C1 of a first pulse B1 included in the second clock and a rising edge C4 of a second pulse B2 different from the first pulse B1 (for example, a pulse immediately subsequent to the first pulse B1). That is, thesecond DDR_FF circuit 72 generates the rising edges E1 and E2 of the pulse D1 of the special sampling clock based on the rising edge C1 of the first pulse B1 and generates a falling edge E3 of the pulse D1 of the special sampling clock based on the rising edge C4 of the second pulse B2. - According to such a configuration, falling edges of the sampling clock in addition to rising edges of the sampling clock are generated by rising edges of the second clock. In this case, the duty of the sampling clock is less likely to deteriorate, compared to the first embodiment. Therefore, the detection accuracy of edge positions of the toggle signal in the third correction process may be further improved, compared to the first embodiment.
- Although some embodiments have been described above, the embodiments are not limited to the above examples. For example, the second clock may always be supplied to the second output circuit A2. That is, the
multiplexer 54 may not be provided. - The above embodiments have been described with reference to an example in which a rising edge and a falling edge of the toggle signal are detected based on the rising edges of the sampling clock. Alternatively, the
NAND Phy 30 may detect a rising edge and a falling edge of the toggle signal based on the falling edges of the sampling clock. This can be considered, for example, when an inverting circuit for inverting high/low of the sampling clock is provided. - According to at least one embodiment described above, the semiconductor integrated circuit includes a first output circuit and a second output circuit. The first output circuit generates a signal having a toggle pattern using a clock having a first period and outputs the generated signal having the toggle pattern to the outside. The second output circuit generates a sampling clock using a clock having a second period which is 1/m times the first period, that is, having a frequency which is m times (where m is a natural number of 2 or more), and outputs the generated sampling clock to the outside. According to this configuration, the accuracy of the signal can be improved.
- While certain embodiments have been described, these embodiments have been presented by way of example only, and are not intended to limit the scope of the inventions. Indeed, the novel embodiments described herein may be embodied in a variety of other forms; furthermore, various omissions, substitutions and changes in the form in the embodiments described herein may be made without departing from the spirit of the inventions. The accompanying claims and their equivalents are intended to cover such forms or modifications as would fall within the scope and spirit of the inventions.
Claims (20)
1. A semiconductor integrated circuit comprising:
a clock supply circuit configured to be able to output a first clock and a second clock, the first clock having a first period, the second clock having a second period that is 1/m times the first period, where m is a natural number of 2 or more;
a first output circuit configured to output a first signal indicating content of data to an outside when a first operation is performed and output a second signal having a toggle pattern based on the first clock to the outside when a second operation is performed; and
a second output circuit configured to output an operation clock based on the first clock to the outside when the first operation is performed and output a sampling clock based on the second clock to the outside when the second operation is performed.
2. The semiconductor integrated circuit according to claim 1 , wherein the first operation is an operation of writing the data, and
the second operation is an operation of deriving a correction value of the first signal in the first output circuit.
3. The semiconductor integrated circuit according to claim 1 , wherein the second output circuit is configured to generate the operation clock based on the first clock when the first operation is performed and generate the sampling clock based on the second clock when the second operation is performed.
4. The semiconductor integrated circuit according to claim 1 , wherein the sampling clock includes a first edge and a second edge, the first edge being for sampling one rising edge included in the second signal having the toggle pattern, the second edge being for sampling one falling edge included in the second signal, and
the second output circuit is configured to generate the first edge and the second edge using either rising edges or falling edges of the second clock.
5. The semiconductor integrated circuit according to claim 1 , wherein the sampling clock includes a plurality of pulses generated by n+0.5 frequency division of the first period, where n is a natural number of 1 or more.
6. The semiconductor integrated circuit according to claim 1 , wherein the second output circuit is configured to generate one pulse of the sampling clock using a rising edge and a falling edge, the rising edge being of a first pulse included in the second clock, the falling edge being of a second pulse different from the first pulse included in the second clock.
7. The semiconductor integrated circuit according to claim 1 , wherein the second output circuit is configured to generate rising edges and falling edges of all pulses of the sampling clock using either rising edges or falling edges of the second clock.
8. The semiconductor integrated circuit according to claim 1 , wherein the second output circuit includes a first adjustment circuit configured to be able to adjust a phase of the sampling clock and is configured to output the sampling clock whose phase is made to gradually deviate by the first adjustment circuit to the outside.
9. The semiconductor integrated circuit according to claim 8 , wherein the second output circuit is configured to continuously output the sampling clock whose phase is made to gradually deviate in a plurality of cycles to the outside in accordance with one write command when the second operation is performed.
10. The semiconductor integrated circuit according to claim 1 , wherein the second output circuit includes a second adjustment circuit configured to be able to adjust a duty of the sampling clock and is configured to output the sampling clock whose duty is made to gradually change by the second adjustment circuit to the outside.
11. A transmission device comprising:
a first terminal configured to be electrically connectable to a semiconductor memory device;
a second terminal configured to be electrically connectable to the semiconductor memory device;
a clock supply circuit configured to be able to output a first clock and a second clock, the first clock having a first period, the second clock having a second period that is 1/m times the first period, where m is a natural number of 2 or more;
a first output circuit configured to output a first signal indicating content of data to the first terminal when a first operation is performed and output a second signal having a toggle pattern based on the first clock to the first terminal when a second operation is performed; and
a second output circuit configured to output an operation clock based on the first clock to the second terminal when the first operation is performed and output a sampling clock based on the second clock to the second terminal when the second operation is performed.
12. The transmission device according to claim 11 , wherein the first operation is an operation of writing the data, and
the second operation is an operation of deriving a correction value of the first signal in the first output circuit.
13. The transmission device according to claim 11 , wherein the second output circuit is configured to generate the operation clock based on the first clock when the first operation is performed and generate the sampling clock based on the second clock when the second operation is performed.
14. The transmission device according to claim 11 , wherein the sampling clock includes a first edge and a second edge, the first edge being for sampling one rising edge included in the second signal having the toggle pattern, the second edge being for sampling one falling edge included in the second signal, and
the second output circuit is configured to generate the first edge and the second edge using either rising edges or falling edges of the second clock.
15. The transmission device according to claim 11 , wherein the second output circuit includes a first adjustment circuit configured to be able to adjust a phase of the sampling clock and is configured to output the sampling clock whose phase is made to gradually deviate by the first adjustment circuit to the outside.
16. The transmission device according to claim 11 , wherein the second output circuit includes a second adjustment circuit configured to be able to adjust a duty of the sampling clock and is configured to output the sampling clock whose duty is made to gradually change by the second adjustment circuit to the outside.
17. A memory device comprising:
a first semiconductor memory device;
a first terminal electrically connected to the first semiconductor memory device;
a second terminal electrically connected to the first semiconductor memory device;
a clock supply circuit configured to be able to output a first clock and a second clock, the first clock having a first period, the second clock having a second period that is 1/m times the first period, where m is a natural number of 2 or more;
a first output circuit configured to output a first signal indicating content of data to the first terminal when a first operation is performed and output a second signal having a toggle pattern based on the first clock to the first terminal when a second operation is performed;
a second output circuit configured to output an operation clock based on the first clock to the second terminal when the first operation is performed and output a sampling clock based on the second clock to the second terminal when the second operation is performed; and
a control circuit configured to issue a first command to read a sampling result, which has been obtained by performing detection for the second signal using the sampling clock in the first semiconductor memory device and stored in the first semiconductor memory device, from the first semiconductor memory device.
18. The memory device according to claim 17 , wherein the control circuit is configured to determine a correction value used to adjust a duty of the first signal based on the sampling result read from the first semiconductor memory device.
19. The memory device according to claim 18 , further comprising a second semiconductor memory device,
wherein the first terminal and the second terminal are also electrically connected to the second semiconductor memory device, and
the control circuit is configured to issue a second command to read a sampling result, which has been obtained by performing detection for the second signal using the sampling clock in the second semiconductor memory device and stored in the second semiconductor memory device, from the second semiconductor memory device.
20. The memory device according to claim 17 , wherein the first operation includes an operation of writing the data to the first semiconductor memory device and the second operation includes a predetermined correction operation for the first output circuit.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019169018A JP2021047562A (en) | 2019-09-18 | 2019-09-18 | Semiconductor integrated circuit, transmitter, and memory system |
JPJP2019-169018 | 2019-09-18 | ||
JP2019-169018 | 2019-09-18 |
Publications (2)
Publication Number | Publication Date |
---|---|
US10951198B1 US10951198B1 (en) | 2021-03-16 |
US20210083655A1 true US20210083655A1 (en) | 2021-03-18 |
Family
ID=74869873
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/795,677 Active US10951198B1 (en) | 2019-09-18 | 2020-02-20 | Semiconductor integrated circuit, transmission device, and memory device |
Country Status (2)
Country | Link |
---|---|
US (1) | US10951198B1 (en) |
JP (1) | JP2021047562A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12119082B2 (en) | 2022-06-10 | 2024-10-15 | SK Hynix Inc. | Semiconductor system for performing a duty ratio adjustment operation |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4158564B2 (en) | 2003-03-14 | 2008-10-01 | 富士ゼロックス株式会社 | Synchronous transmission system |
TWI448081B (en) * | 2012-01-20 | 2014-08-01 | Nat Univ Chung Cheng | All-digital clock correction circuit and method thereof |
JP2013200830A (en) | 2012-03-26 | 2013-10-03 | Toshiba Corp | Memory system |
US9444442B2 (en) * | 2013-03-06 | 2016-09-13 | Rambus Inc. | Open-loop correction of duty-cycle error and quadrature phase error |
JP6203631B2 (en) | 2013-12-26 | 2017-09-27 | 株式会社メガチップス | Semiconductor device and method for adjusting cross-point level of differential strobe signal in semiconductor device |
KR102315274B1 (en) | 2017-06-01 | 2021-10-20 | 삼성전자 주식회사 | Nonvolatile memory device including duty correction circuit and Storage device including the nonvolatile memory |
US10482935B2 (en) | 2017-06-01 | 2019-11-19 | Samsung Electronics Co., Ltd. | Nonvolatile memory including duty correction circuit and storage device including the nonvolatile memory |
JP6860454B2 (en) | 2017-09-11 | 2021-04-14 | キオクシア株式会社 | Semiconductor integrated circuits, DLL circuits, and duty adjustment circuits |
JP2019128829A (en) | 2018-01-25 | 2019-08-01 | 東芝メモリ株式会社 | Semiconductor storage and memory system |
-
2019
- 2019-09-18 JP JP2019169018A patent/JP2021047562A/en active Pending
-
2020
- 2020-02-20 US US16/795,677 patent/US10951198B1/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12119082B2 (en) | 2022-06-10 | 2024-10-15 | SK Hynix Inc. | Semiconductor system for performing a duty ratio adjustment operation |
Also Published As
Publication number | Publication date |
---|---|
US10951198B1 (en) | 2021-03-16 |
JP2021047562A (en) | 2021-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8644085B2 (en) | Duty cycle distortion correction | |
US9000817B2 (en) | Apparatuses and methods for altering a forward path delay of a signal path | |
US8824224B2 (en) | Frequency-agile strobe window generation | |
US9514420B2 (en) | Strobe gating adaption and training in a memory controller | |
US9305622B1 (en) | Data strobe to data delay calibration | |
US8593897B2 (en) | Memory controller, semiconductor storage device, and memory system including the memory controller and the semiconductor storage device for outputting temperature value in low power consumption mode | |
US10418125B1 (en) | Write and read common leveling for 4-bit wide DRAMs | |
US9225316B2 (en) | Duty cycle correction circuit and operation method thereof | |
US8976596B1 (en) | Controller | |
US9286961B1 (en) | Memory controller half-clock delay adjustment | |
US10998021B2 (en) | Controller and semiconductor system including a controller | |
US10573360B1 (en) | Method and apparatus for adaptable phase training of high frequency clock signaling for data capture | |
US8049544B2 (en) | Delay locked loop circuit | |
US8471617B2 (en) | Duty cycle correction in a delay-locked loop | |
US10951198B1 (en) | Semiconductor integrated circuit, transmission device, and memory device | |
US8681575B2 (en) | Semiconductor device | |
JP2004185608A (en) | Device for adjusting latch timing of data | |
US20080278246A1 (en) | Memory controller | |
US11489529B2 (en) | Semiconductor apparatus and data processing system including the semiconductor apparatus | |
US9443602B2 (en) | Storage device and data latch timing adjustment method | |
US12040044B2 (en) | Semiconductor device and memory system | |
US20190296887A1 (en) | Semiconductor apparatus for transmitting and receiving a signal in synchronization with a clock signal | |
US8847645B1 (en) | Semiconductor device and semiconductor system including the same | |
CN115114194B (en) | Storage system and delay control method | |
US20240126704A1 (en) | Data input device and processing method for input data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |