WO2012086017A1 - データ受信回路、情報処理装置、データ受信プログラムおよびデータ受信方法 - Google Patents

データ受信回路、情報処理装置、データ受信プログラムおよびデータ受信方法 Download PDF

Info

Publication number
WO2012086017A1
WO2012086017A1 PCT/JP2010/073046 JP2010073046W WO2012086017A1 WO 2012086017 A1 WO2012086017 A1 WO 2012086017A1 JP 2010073046 W JP2010073046 W JP 2010073046W WO 2012086017 A1 WO2012086017 A1 WO 2012086017A1
Authority
WO
WIPO (PCT)
Prior art keywords
signal
data
phase
clocks
circuit
Prior art date
Application number
PCT/JP2010/073046
Other languages
English (en)
French (fr)
Inventor
浩章 渡邉
秀幸 根木
千佳広 出口
裕 関野
Original Assignee
富士通株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 富士通株式会社 filed Critical 富士通株式会社
Priority to JP2012549516A priority Critical patent/JP5598551B2/ja
Priority to EP10860904.1A priority patent/EP2658162A1/en
Priority to PCT/JP2010/073046 priority patent/WO2012086017A1/ja
Publication of WO2012086017A1 publication Critical patent/WO2012086017A1/ja
Priority to US13/916,089 priority patent/US8855242B2/en

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/1093Input synchronization
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0016Arrangements for synchronising receiver with transmitter correction of synchronization errors
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • G11C7/222Clock generating, synchronizing or distributing circuits within memory device
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/22Control and timing of internal memory operations
    • G11C2207/2254Calibration

Definitions

  • the present invention relates to a data receiving circuit, an information processing apparatus, a data receiving program, and a data receiving method.
  • a technique for receiving a data signal and a clock signal and extracting information from the data signal according to the timing indicated by the received clock signal is known.
  • information is extracted from a data bus signal (hereinafter referred to as a DQ signal) using a rising edge and a falling edge of a data strobe signal (hereinafter referred to as a DQS signal) as a trigger.
  • a DQ signal data bus signal
  • DQS signal data strobe signal
  • Such a high-speed data receiving circuit When such a high-speed data receiving circuit receives a DQS signal, it takes out data within the effective area (readable range) of the DQ signal, so that the phase of the received DQS signal is a predetermined amount more than the phase of the DQ signal. Just delay. Thereafter, the high-speed data receiving circuit takes out information from the DQ signal using the rising edge and falling edge of the DQS signal delayed in phase as a trigger.
  • the high-speed data receiving circuit generates a clock as a reference for the amount of phase fluctuation in order to accurately delay the phase of the received DQS signal with respect to the phase of the DQ signal, and the phase shift between the generated clock and the DQS signal. Is detected. Then, the high-speed data receiving circuit corrects the phase of the DQS signal based on the detected phase shift and acquires information from the DQ signal.
  • the high-speed data receiving circuit receives the DQ signal that is the data signal and the DQS signal that is the clock signal, the difference between the phase of the clock that is the reference for the amount of phase fluctuation and the phase of the received DQS signal. Based on this, the phase of the DQS signal is corrected. For this reason, the high-speed data receiving circuit corrects the phase of the DQS signal erroneously when different variations occur in the phase of the DQ signal and the phase of the DQS signal.
  • the high-speed data receiving circuit may cause data corruption or the like and cannot acquire information appropriately from the DQ signal when there are different fluctuations in the phase of the DQ signal and the phase of the DQS signal. That is, the high-speed data receiving circuit cannot appropriately acquire information from the data signal when different variations occur in the phase of the data signal and the phase of the clock signal.
  • the technology disclosed in the present application appropriately acquires information from a data signal.
  • the data receiving circuit generates a plurality of clocks having different phases.
  • the data receiving circuit acquires a plurality of data from the received data signal using different clocks among the generated clocks.
  • the data receiving circuit determines whether or not each acquired data matches, and if it is determined that there is data that does not match with other data, the data receiving circuit generates a clock that is generated in a direction in which no data mismatch occurs. Correct the phase.
  • the technology disclosed in the present application appropriately acquires information from a data signal.
  • FIG. 1 is a diagram for explaining the I / O device control circuit according to the first embodiment.
  • FIG. 2 is a diagram for explaining an example of the high-speed data receiving circuit according to the first embodiment.
  • FIG. 3 is a diagram for explaining an example of the clock phase adjustment circuit according to the first embodiment.
  • FIG. 4 is a diagram for explaining the initial phase correction processing.
  • FIG. 5 is a diagram for explaining the amount of phase correction in the initial phase correction processing.
  • FIG. 6 is a diagram for explaining the correction process executed in the state 0.
  • FIG. 7 is a diagram for explaining the state 1.
  • FIG. 8 is a diagram for explaining a correction process executed in the case of the state 1.
  • FIG. 9 is a diagram for explaining a correction result by the correction process.
  • FIG. 1 is a diagram for explaining the I / O device control circuit according to the first embodiment.
  • FIG. 2 is a diagram for explaining an example of the high-speed data receiving circuit according to the first embodiment.
  • FIG. 3 is a diagram for explaining
  • FIG. 10 is a diagram for explaining the correction process and the result of the correction process.
  • FIG. 11 is a diagram for explaining the correction process executed in the case of the state 2.
  • FIG. 12 is a diagram for explaining the phase correction amount.
  • FIG. 13 is a flowchart for explaining the processing flow of the high-speed data receiving circuit according to the first embodiment.
  • FIG. 14 is a flowchart for explaining the flow of the phase fluctuation observation process.
  • FIG. 15 is a diagram for explaining another example of the correction process.
  • FIG. 16 is a diagram for explaining an example of the data reception program.
  • Example 1 is a diagram for explaining the I / O device control circuit according to the first embodiment.
  • the I / O device control circuit 1 includes a high-speed data receiving circuit 10 as a part of a memory controller that acquires information stored in the memory 5.
  • the I / O device control circuit 1 is connected to an I / O device 2, an I / O device 3, a CPU (Central Processing Unit) 4, and a memory 5.
  • Such a high-speed data receiving circuit 10 transmits a read command to the memory 5. Then, the memory 5 returns a DQ signal that is a data signal and a DQS signal that is a clock signal to the high-speed data receiving circuit 10. Then, when receiving the DQ signal and the DQS signal, the high-speed data receiving circuit 10 generates a clock based on the received DQS signal, and acquires information from the DQ signal using the generated clock.
  • the high-speed data receiving circuit 10 executes an initial phase correction process for determining the amount by which the phase of the DQS signal is shifted, as in the prior art. Details of the initial phase correction process will be described later.
  • FIG. 2 is a diagram for explaining an example of the high-speed data receiving circuit according to the first embodiment.
  • the high-speed data reception circuit 10 includes a clock phase adjustment circuit 20 and a phase shift detection circuit 30.
  • the phase shift detection circuit 30 includes a plurality of data sampling circuits A31 to G38 and a phase shift determination circuit 40.
  • the clock phase adjustment circuit 20 generates one reference clock and a plurality of clocks whose phases are stepwise different from the reference clock based on the phase of the received DQS signal. Specifically, the clock phase adjustment circuit 20 adjusts the phase of the received DQS signal, and generates DQS_DLL # A to DQS_DLL # G signals that are phase-shifted in stages. Then, the clock phase adjustment circuit 20 transmits the generated DQS_DLL # A signal to DQS_DLL # G signal to the data sampling circuits A31 to G38.
  • FIG. 3 is a diagram for explaining an example of the clock phase adjustment circuit 20 according to the first embodiment.
  • the clock phase adjustment circuit 20 has a DLL (Delay Locked Loop) circuit in which DLY # 1 to # 13, which are a plurality of delay elements that delay the phase of the DQS signal, are connected in series.
  • DLY # 1 to # 13 which are a plurality of delay elements that delay the phase of the DQS signal, are connected in series.
  • DLY # 1 to # 13 are a plurality of delay elements that delay the phase of the DQS signal.
  • the number of DLYs is merely an example, and a DLL circuit in which DLYs having any number and any delay performance are installed can be used.
  • Such a clock phase adjustment circuit 20 When such a clock phase adjustment circuit 20 receives a DQS signal, it transmits the received DQS signal to the DLL circuit. Then, the clock phase adjustment circuit 20 creates a plurality of signals in which the phase of the received DQS signal is delayed in stages by using each DLY in stages.
  • the clock phase adjustment circuit 20 includes a selector 21 that selects and outputs a reference clock and a plurality of clocks from signals output from each DLY in accordance with a phase correction signal received from a phase shift determination circuit 40 described later. . Specifically, the selector 21 acquires a signal output from each DLY, selects one of the acquired signals as a reference clock according to a result of an initial phase correction process described later, and selects the selected signal. To the data sampling circuit D35 as a DQS_DLL # D signal.
  • the selector 21 selects, as a clock, a plurality of signals having a phase advanced from the DQS_DLL # D signal and a plurality of signals having a phase sent from the signal selected as the reference clock, and selects each selected signal. Output.
  • the phase deviation determination circuit 40 described later is used by the data sampling circuit that acquires the data that does not match using the phase of the reference clock as a reference. Determine the phase direction of the clock. Then, the phase shift determination circuit 40 transmits to the clock phase adjustment circuit 20 a phase correction signal indicating the determined phase direction and the number of data that does not match.
  • the selector 21 receives the phase correction signal and uses the signal selected as the reference clock immediately before as a reference, and the number indicated by the phase correction signal in the direction opposite to the direction indicated by the phase correction signal. A signal whose phase is shifted by a distance is selected as a reference clock.
  • the selector 21 selects a signal output from the DLY # 10 as a DQS_DLL # D signal that is a reference clock based on an initial phase correction process described later. Then, the selector 21 transmits the DQS_DLL # D signal to the data sampling circuit D35.
  • the selector 21 selects each signal output from DLY # 4 to # 6 as the DQS_DLL # A to #C signal. Then, the selector 21 transmits the DQS_DLL # A to #C signals to the data sampling circuits A31, B33, and C34, respectively.
  • the selector 21 selects the signals output from DLY # 8 to # 10 as DQS_DLL # E to #G signals. Then, the selector 21 transmits the DQS_DLL # E to #G signals to the data sampling circuits E36 to G38, respectively.
  • the selector 21 receives a phase correction signal from the phase shift determination circuit 40
  • the selector 21 receives a phase correction signal indicating “ ⁇ 2” from a phase shift determination circuit 40 described later.
  • the selector 21 selects, as a new reference clock signal, a signal output by the DLY installed two stages before the DLY that outputs the signal selected immediately before as the reference clock.
  • the selector 21 when the selector 21 receives the phase correction signal indicating “ ⁇ 2” when the signal output from the DLY # 7 is selected as the reference clock signal, the selector 21 receives the DLY # 2 that is two before the DLY # 7. 5 is newly selected as a reference clock signal.
  • the selector 21 when the selector 21 receives the phase correction signal indicating “+2”, the signal output from the DLY that is installed two stages after the DLY that outputs the signal selected as the reference clock immediately before is output. As a new reference clock signal.
  • the selector 21 when the selector 21 receives the phase correction signal indicating “+2” when the signal output from DLY # 7 is selected as the reference clock, the selector 21 outputs the signal output from DLY # 9 as a new reference clock signal. select.
  • the selector 21 generates a reference clock having a new phase from a plurality of signals generated by the DLL circuit based on the DQS signal and a plurality of clocks based on the phase correction signal received from the phase shift determination circuit 40. select. For this reason, when the phase shift between the DQ signal and the DQS signal is detected by the phase shift determination circuit 40 described later, the selector 21 immediately sets the phase of the reference clock signal in the direction opposite to the phase shift. It can be corrected.
  • the data sampling circuits A31 to G38 acquire data from the DQ signal by using different clocks among the reference clock and the plurality of clocks generated by the clock phase adjustment circuit 20.
  • the data sampling circuits A31 to G38 will be described in detail.
  • the high-speed data receiving circuit 10 receives a DQ signal in which DQ # 0 to # 3 signals are multiplexed.
  • the data sampling circuits B33 to G38 are not shown in detail, but the data sampling circuits B33, C34, and E36 to G38 have the same circuits as the data sampling circuit A31. Further, the data sampling circuit D35 does not have a comparator, and has only an FF that acquires information from the DQ signal.
  • the data sampling circuit A31 includes flip-flops (hereinafter simply referred to as FF) # 0 to # 3 and a comparator A32.
  • the FFs # 0 to # 3 receive the DQ # 0 signal to DQ # 3 signal and the DQS_DLL # A signal from the clock phase adjustment circuit 20, respectively.
  • Each of the FFs # 0 to # 3 takes in the voltage value of the DQ # 0 to # 3 signals triggered by the transition of the voltage value of the received DQS_DLL #A signal to a state higher than a predetermined threshold. That is, each of the FFs # 0 to # 3 acquires information from the DQ signal at the timing indicated by the DQS_DLL # A signal generated by the clock phase adjustment circuit 20.
  • the comparator A32 acquires DQ # D0 to D3 together with information acquired by the FFs # 0 to # 3 of the data sampling circuit A31. Then, the comparator A32 determines whether or not the information acquired by each of the FFs # 0 to # 3 of the data sampling circuit A31 matches the information acquired by the data sampling circuit D35, that is, DQ # D0 to D3. .
  • the data sampling circuit D35 acquires information from the DQ signal using the DQS_DLL # D signal selected as the reference clock. For this reason, the comparator A32 is information acquired from the same signal, and is acquired based on the phase of the DQS_DLL # A signal and information acquired based on the phase of the DQS_DLL # D signal that is the reference clock. Whether or not matches. Thereafter, the comparator A32 notifies the phase shift determination circuit 40 of the determination result as to whether or not the information acquired by the data sampling circuit A31 matches DQ # D0 to D3.
  • the data sampling circuit B33, the data sampling circuit C34, and the data sampling circuits E36 to G38 use a comparator included in each circuit to determine whether or not DQ # D0 to D3 matches the information acquired by the own device. . Then, the data sampling circuit B33, the data sampling circuit C34, and the data sampling circuits E36 to G38 notify the phase shift determination circuit 40 of the determination result as to whether or not the DQ # D0 to D3 matches the information acquired by the own device. To do.
  • the data sampling circuit D35 acquires information from the DQ signal using the DQS_DLL # D signal received from the clock phase adjustment circuit 20. Then, the data sampling circuit D35 transmits the acquired information as DQ # D0 to D3 to the comparators of the other data sampling circuits A31, B33, C34, and E36 to G38. Further, the data sampling circuit D35 outputs DQ # D0 to D3 as information received from the memory 5 to other circuits included in the I / O device control circuit 1.
  • each of the data sampling circuits A31 to C34 acquires information from the DQ signal using a clock whose phase is advanced from the reference clock used by the data sampling circuit D35. Then, each of the data sampling circuits A31 to C34 notifies the phase shift determination circuit 40 of the determination result as to whether or not the information acquired by the device itself matches DQ # D0 to D3.
  • each of the data sampling circuits E36 to G38 acquires information from the DQ signal using a clock whose phase is slower than that of the reference clock used by the data sampling circuit D35. Then, each of the data sampling circuits E36 to G38 notifies the phase shift determination circuit 40 of the determination result as to whether or not the information acquired by the own device matches DQ # D0 to D3.
  • the phase shift determination circuit 40 determines whether or not the information acquired by each of the data sampling circuits A31, B33, C34, and E36 to G38 matches DQ # D0 to D3. Then, when information different from DQ # D0 to D3 is acquired, the phase shift determination circuit 40 performs DQS_DLL # in a direction opposite to the phase of the signal used by the data sampling circuit that acquired the mismatched information. The phase of the D signal is corrected. That is, the phase shift determination circuit 40 detects a phase shift between the DQS signal and the DQ signal, and performs correction in consideration of the detected phase shift.
  • the phase shift determination circuit 40 acquires notifications from the comparators included in the data sampling circuits A31 to G38. Then, the phase shift determination circuit 40 determines whether there is a circuit that has acquired information that does not match DQ # D0 to D3 based on the acquired notification. Further, the phase shift determination circuit 40 determines that the phase shift state is “state 0” that does not require correction when all pieces of information acquired by the data sampling circuits A31 to G38 match.
  • the phase shift determination circuit 40 matches the information acquired by the data sampling circuits C34 and E36 with DQ # D0 to D3. It is determined whether or not. Further, when the information acquired by each of the data sampling circuits C34 and E36 matches with DQ # D0 to D3, the phase shift determination circuit 40 and the information acquired by each of the data sampling circuits A31 to C34 and DQ # D0 to D3 Whether or not matches. In addition, the phase shift determination circuit 40 determines whether or not the information acquired by the data sampling circuits E36 to G38 matches the DQ # D0 to D3.
  • the phase shift determination circuit 40 determines that the phase shift state is “state 1”. ". If the phase shift determination circuit 40 determines that the phase shift state is “state 1”, the phase shift determination circuit 40 counts the number of data sampling circuits that have acquired information that does not match DQ # D0 to D3.
  • the phase shift determination circuit 40 determines the phase direction of the clock signal used by the data sampling circuit that acquired information different from DQ # D0 to D3 with reference to the phase of the DQS_DLL # D signal. Then, the phase shift determination circuit 40 generates a phase correction signal indicating the determined phase direction and the number of counted data sampling circuits, and transmits the generated phase correction signal to the clock phase adjustment circuit 20.
  • the phase of the DQ signal when the phase of the DQ signal is shifted earlier than the phase of the DQS signal, the information acquired based on the DQS_DLL # E to #G signals having a phase slower than the DQS_DLL # D signal and the DQS_DLL # D Information acquired based on the signal does not match.
  • the phase of the DQ signal is shifted in a direction slower than the phase of the DQS signal, information acquired based on the DQS_DLL # A to #C signals having a phase earlier than the DQS_DLL # D signal and the DQS_DLL # D Information acquired based on the signal does not match.
  • the phase shift determination circuit 40 detects the magnitude and direction of the phase shift between the DQS signal and the DQ signal based on the notification acquired from the comparators included in the data sampling circuits A31 to G38. Then, the phase shift determination circuit 40 generates a phase correction signal indicating the magnitude and direction of the detected phase shift, and transmits the generated phase correction signal to the clock phase adjustment circuit 20.
  • phase shift determination circuit 40 is in “state 2” where the phase shift state cannot be corrected. Determine. In such a case, the high-speed data receiving circuit 10 temporarily suspends operation and executes the initial phase correction process again.
  • the phase shift determination circuit 40 determines that the state of phase shift is “state 0” that is not corrected. In such a case, the phase shift determination circuit 40 does not generate a phase correction signal, but holds the phase of each DQS_DLL # A to #G signal generated by the clock phase adjustment circuit 20.
  • the phase shift determination circuit 40 obtains notification that information that does not match DQ # D0 to D3 has been obtained from the comparators of the data sampling circuit A31 and the data sampling circuit B33.
  • the phase shift determination circuit 40 acquires notification that information matching DQ # D0 to D3 has been acquired from the comparators of the data sampling circuits C34 and E36 to G38.
  • the phase shift determination circuit 40 determines that the phase shift state is “state 1”. In addition, the phase shift determination circuit 40 determines that the data sampling circuits A31 and B32 using the clock whose phase is advanced from the DQS_DLL # D signal have acquired erroneous information. In such a case, the phase shift determination circuit 40 generates a phase correction signal indicating “+2” in order to delay the phase of the DQS_DLL # D signal by two DLYs of the clock phase adjustment circuit 20, and generates the generated phase correction. The signal is transmitted to the clock phase adjustment circuit 20.
  • the phase shift determination circuit 40 acquires a notification that information that does not match DQ # D0 to D3 has been acquired only from the comparator of the data sampling circuit G38. In such an example, the phase shift determination circuit 40 determines that the phase shift state is “state 1”, and advances the phase of the DQS_DLL # D signal by one DLY. A correction signal is generated, and the generated phase correction signal is transmitted to the clock phase adjustment circuit 20.
  • the phase shift determination circuit 40 acquires a notification that information that does not match DQ # D0 to D3 has been acquired from the comparators of the data sampling circuits A31, B33, and C34. In such an example, the phase shift determination circuit 40 determines that the state of phase shift is “state 2” that cannot be corrected. In such a case, the high-speed data receiving circuit 10 temporarily suspends operation and executes the initial phase correction process again.
  • the phase shift determination circuit 40 notifies the fact that information that does not match at the same time is acquired from any of the comparators of the data sampling circuits A31, B33, and C34 and any of the comparators of the data sampling circuits E36 to G38. get. In such an example, the phase shift determination circuit 40 determines that the phase shift is “state 2” that cannot be repaired. In such a case, the high-speed data receiving circuit 10 temporarily suspends operation and executes the initial phase correction process again.
  • the phase shift determination circuit 40 determines whether or not the information acquired by each of the data sampling circuits A31 to C34 and E36 to G38 matches DQ # D0 to D3. Then, the phase shift determination circuit 40 determines the direction of the phase of the clock used by the data sampling circuit that has acquired non-matching information with reference to the number of data sampling circuits that have acquired non-matching information and the phase of the DQS_DLL # D signal. The phase correction signal shown is generated. Thereafter, the phase shift determination circuit 40 transmits the generated phase correction signal to the clock phase adjustment circuit 20.
  • the phase shift determination circuit 40 uses the phase of the DQS_DLL # D signal as a reference, and the phase of each of the DQS_DLL # A to #G signals is opposite to the phase of the clock used by the data sampling circuit that acquired the mismatched information. Correct. For this reason, the high-speed data receiving circuit 10 can continuously acquire information appropriately from the DQ signal.
  • the phase shift determination circuit 40 detects the phase shift by comparing the information acquired by the data sampling circuits A31 to G38, and determines the phase of the DQS_DLL # A to #G signals according to the detected phase shift. to correct. For this reason, the high-speed data receiving circuit 10 can acquire information appropriately even when the phase of the data signal and the clock signal is shifted.
  • the phase shift determination circuit 40 continuously detects the phase shift between the DQS signal and the DQ signal each time the data sampling circuits A31 to G38 acquire information, and according to the detected phase shift, The phase of each DQS_DLL # A to #G signal is continuously corrected. Therefore, the phase shift determination circuit 40 appropriately corrects the phase of each signal DQS_DLL # A to #G signal while the phase shift is “state 1”, and the phase shift is changed to “state 2”. Can be deterred.
  • the difference between the phase of the DQS signal and the phase of the DQ signal changes only slightly in one reading cycle unit. That is, the phase shift between the DQS signal and the DQ signal transitions from “state 0” to “state 1” and then transitions to “state 2” in the process of continuously receiving the DQ signal from the memory 5. To do. However, since the phase shift determination circuit 40 continues to correct the phase of each DQS_DLL # A to #G signal, the phase shift of each signal DQS_DLL # A to #G signal is appropriately corrected, and the phase shift is “state 2”. Can be prevented.
  • the high-speed data receiving circuit 10 can keep the timing margin between the DQS signal and the DQ signal, eliminate the need for the initial phase correction process again, and avoid the system operation stop leading to performance degradation.
  • FIG. 4 is a diagram for explaining the initial phase correction processing.
  • the high-speed data receiving circuit 10 and the memory 5 store a training pattern that is predetermined information.
  • the high-speed data receiving circuit receives a DQ signal in which the training pattern stored in the memory 5 is stored using an arbitrary data sampling circuit.
  • the high-speed data receiving circuit 10 transmits the DQS signal transmitted from the memory 5 to the clock phase adjusting circuit 20 and delays the phase of the DQS signal. Then, the high-speed data receiving circuit 10 acquires information from the DQ signal using the DQS signal whose phase is shifted. Thereafter, the high-speed data receiving circuit 10 uses the comparator 50 to determine whether or not the training pattern stored in advance matches the acquired information.
  • the high-speed data receiving circuit 10 sequentially changes the amount of delay of the phase of the DQS signal, and acquires information that matches the stored training pattern for all the ranges that the clock phase adjustment circuit 20 can delay. Determine if you can. Thereafter, the high-speed data receiving circuit 10 uses, as an initial phase correction amount, the center of the range in which the information that matches the training pattern can be acquired from all the ranges in which the clock phase adjustment circuit 20 can delay the phase of the DQS signal. adopt.
  • the high-speed data receiving circuit 10 receives a DQ signal and a DQS signal shown as external reception signals in FIG. In such a case, as indicated by phase adjustments # 1 to # 4 in FIG. 5, the high-speed data receiving circuit 10 sequentially changes the amount of delay of the phase of the DQS signal, and the amount of delay is reduced. Training patterns are acquired using different DQS_DLLs # 1 to # 4. In the example shown in FIG. 5, the high-speed data receiving circuit 10 obtains an accurate training pattern when DQS_DLL # 1 to # 3 are used.
  • the high-speed data receiving circuit 10 determines that the center DQS_DLL # 2 is the optimum phase within the range in which the training pattern can be normally acquired. Thereafter, the high-speed data receiving circuit 10 employs the delay amount of DQS_DLL # 2 as the initial predetermined amount with reference to the phase of the DQS signal. That is, the high-speed data receiving circuit 10 selects the signal selected as DQS_DLL # 2 as the DQS_DLL # D signal.
  • FIG. 5 is a diagram for explaining the amount of phase correction in the initial phase correction processing.
  • FIG. 6 is a diagram for explaining the correction process executed in the state 0.
  • the broken line in FIG. 6 indicates the phase timing at which the data sampling circuit D35 acquires information.
  • the x marks in the received data DQ [0] to [3] in FIG. 6 indicate the timing at which the information of the multiplexed DQ # 0 to # 3 signals is switched. That is, the received data DQ [0] to [3] in FIG. 6 describes the data eye of each DQ # 0 to # 3 signal.
  • indicates the phase timing at which the data sampling circuits A31 to G38 acquire information. Further, ⁇ in FIG. 6 indicates information acquired by each of the data sampling circuits A31 to G38.
  • the information acquired by each of the data sampling circuits A31 to G38 matches with “1010”. For this reason, the high-speed data receiving circuit 10 acquires information from the next data eye without performing phase correction of the DQS_DLL # A to #G signals used by the data sampling circuits A31 to G38.
  • FIG. 7 is a diagram for explaining the state 1.
  • FIG. 8 is a diagram for explaining a correction process executed in the case of the state 1.
  • FIG. 9 is a diagram for explaining a correction result by the correction process.
  • the information acquisition timing of each of the data sampling circuits F37 and G38 overlaps with the timing at which the information of the DQ signal is switched, and information “1000” different from the data sampling circuit D35 is acquired. For this reason, the high-speed data receiving circuit 10 determines that the phase shift between the DQ signal and the DQS signal is “state 1”.
  • the high-speed data receiving circuit 10 advances the phase of the DQS_DLL # A to #G signals by two DLYs.
  • the high-speed data receiving circuit 10 can keep the timing at which each of the data sampling circuits A31 to G38 acquires information in the data eye, so that the phase shift is “state 0” as shown in FIG. Can be returned to.
  • FIG. 10 is a diagram for explaining the correction process and the result of the correction process.
  • the information acquisition timing of each of the data sampling circuits A31 and B33 overlaps with the timing at which the information of the DQ signal is switched, and information “1110” that is different from the data sampling circuit D35 is acquired. For this reason, the high-speed data receiving circuit 10 determines that the phase shift between the DQ signal and the DQS signal is “state 1”.
  • the high-speed data receiving circuit 10 delays the phases of the DQS_DLL # A to #G signals by two DLYs. As a result, the high-speed data receiving circuit 10 can keep the timing at which each of the data sampling circuits A31 to G38 acquires information in the data eye, so that the phase shift is “state 0” as shown in FIG. Can be returned to.
  • FIG. 11 is a diagram for explaining a correction process executed in the case of the state 2.
  • the timing at which the data sampling circuit D35 acquires the information reaches the boundary at which the information of the DQ signal is switched. It is off.
  • the high-speed data receiving circuit 10 stops receiving the DQ signal without performing correction, and executes the initial phase correction process again.
  • FIG. 12 is a diagram for explaining the phase correction amount.
  • FIG. 12 shows an example of whether or not the information acquired by the data sampling circuits A31 to C34 and E36 to G38 matches the information acquired by the data sampling circuit D35.
  • the high-speed data receiving circuit 10 does not correct the phases of DQS_DLL # A to #G in the “state 0”.
  • the high-speed data receiving circuit 10 delays the phases of DQS_DLL # A to #G by one DLY.
  • the high-speed data receiving circuit 10 delays the phases of DQS_DLL # A to #G by two DLYs.
  • the high-speed data receiving circuit 10 advances the phase of DQS_DLL # A to #G by one DLY. Further, when the data sampling circuits F37 and G38 acquire information different from the data sampling circuit D35, the high-speed data receiving circuit 10 advances the phases of DQS_DLL # A to #G by two DLYs. Further, in the case of “state 2”, the high-speed data receiving circuit 10 performs the initial correction process without correcting the phase of DQS_DLL # A to #G.
  • FIG. 13 is a flowchart for explaining the processing flow of the high-speed data receiving circuit according to the first embodiment.
  • the high-speed data receiving circuit 10 starts processing with the system being activated as a trigger.
  • the high-speed data receiving circuit 10 executes an initial phase adjustment process (step S101). Next, the high-speed data receiving circuit 10 compares the information acquired by each of the data sampling circuits A31 to G38, and detects a phase variation (step S102). Next, the high-speed data receiving circuit 10 determines whether or not a phase variation is detected (step S103).
  • the high-speed data receiving circuit 10 determines whether or not the phase variation is within a correctable range (Step S104). That is, the high-speed data receiving circuit 10 determines whether the phase shift is “state 1” or “state 2”.
  • step S104 when the high-speed data receiving circuit 10 determines that the phase variation is not within the correctable range (No at Step S104), that is, when it is determined that the phase shift is “state 2”, The initial phase adjustment process is executed again (step S101).
  • step S104 when the high-speed data receiving circuit 10 determines that the phase variation is within the correctable range (Yes in step S104), that is, when it is determined that the phase shift is “state 1”, The phases of DQS_DLL # A to #G are corrected by the phase correction amount (step S105).
  • the high-speed data receiving circuit 10 determines whether or not the process of receiving information has ended (step S106). And when the process which receives information is complete
  • FIG. 14 is a flowchart for explaining the flow of the phase fluctuation observation process.
  • the high-speed data receiving circuit 10 starts the processing with the initial phase adjustment process being performed (step S ⁇ b> 101 in FIG. 13).
  • the high-speed data receiving circuit 10 compares each information acquired by each of the data sampling circuits A31, B33, C34, E36 to G38 with the information acquired by the data sampling circuit D35 (step S201). Next, the high-speed data receiving circuit 10 determines whether or not all the information acquired by each of the data sampling circuits A31, B33, C34, E36 to G38 matches the information acquired by the data sampling circuit D35 ( Step S202). That is, the high-speed data receiving circuit 10 determines whether all pieces of information acquired by the data sampling circuits A31 to G38 match.
  • the high-speed data receiving circuit 10 determines whether the information acquired by the data sampling circuits C34 to E36 matches (step S202). Step S203). That is, the high-speed data receiving circuit 10 determines whether or not DQ # D0 to D3 as the reference plane matches each information acquired by the data sampling circuits C34 and E36.
  • step S204 the high-speed data receiving circuit 10 determines whether or not the information acquired by the data sampling circuits A31 to C34 or the data sampling circuits E36 to G38 matches DQ # D0 to D3.
  • the high-speed data receiving circuit 10 determines that the phase shift is “state 1” when it is determined that the information acquired by the reference plane and the sampling values of either one of the front and rear are identical (Yes in step S204). (Step S205). Further, the high-speed data receiving circuit 10 calculates a phase correction amount (step S206), and thereafter ends the phase fluctuation observation process.
  • the high speed data receiving circuit 10 determines that the phase shift is “state 2” (step S207). In addition, when the high-speed data receiving circuit 10 determines that the information acquired by the reference plane does not match the sampling value of one of the front and rear (No in step S204), the high-speed data receiving circuit 10 determines that the phase shift is “state 2”. (Step S207). Thereafter, the high-speed data receiving circuit 10 ends the phase fluctuation observation process.
  • the high-speed data receiving circuit 10 determines that the phase shift is “state 0” (Step S208). Thereafter, the high-speed data receiving circuit 10 ends the phase fluctuation observation process.
  • the high-speed data receiving circuit 10 As described above, the high-speed data receiving circuit 10 according to the first embodiment generates a plurality of clocks having different phases, and acquires a plurality of data from the received DQ signal by using different clocks. In addition, the high-speed data receiving circuit 10 determines whether or not each acquired data matches, and if it is determined that there is data that does not match other data, the high-speed data receiving circuit 10 generates the data in a direction that does not cause data mismatch. Correct the clock phase.
  • the high-speed data receiving circuit 10 can appropriately acquire information from a data signal such as a DQ signal. That is, the high-speed data receiving circuit 10 acquires information from the received DQ signals using clock signals having different phases, and determines whether or not the acquired information matches, thereby detecting a phase shift. After that, when detecting the phase shift, the high-speed data receiving circuit 10 corrects the phase of the clock signal generated in the direction to cancel the detected phase shift, so that the phase difference between the DQS signal and the DQ signal varies. Information can be appropriately acquired even when the error occurs.
  • the high-speed data receiving circuit 10 generates DQS_DLL # A to #G signals that are clocks whose phases are gradually different based on the DQS signal, and uses the generated DQS_DLL # A to #G signals to generate the DQ signal Get information from. Also, the high-speed data receiving circuit 10 determines whether the information acquired using the reference DQS_DLL # D signal matches the information acquired using other DQS_DLL # A to #C and #E to #G signals. Is determined.
  • the high-speed data receiving circuit 10 uses the phase of the DQS_DLL # D signal as a reference and is opposite to the phase of the clock used when acquiring the mismatched information. In this direction, the phases of DQS_DLL # A to #G are corrected. For this reason, the high-speed data receiving circuit 10 can appropriately acquire information from a data signal such as a DQ signal.
  • the high-speed data receiving circuit 10 acquires information using a plurality of clocks each having a different phase, and determines whether the signal acquired using the DQS_DLL # D signal matches other information. Thus, a phase shift between the DQS signal and the DQ signal is detected. Since the high-speed data receiving circuit 10 corrects the timing for acquiring information according to the detected phase shift, the phase between the DQS signal and the DQ signal due to signal fluctuations due to changes in the operating environment such as temperature and voltage. Information can be appropriately acquired even when different fluctuations occur.
  • the high-speed data receiving circuit 10 can detect the phase fluctuation and correct the phase of each clock before the influence of the phase fluctuation occurs on the information acquired by the data sampling circuit D35 which is the reference plane. . For this reason, the high-speed data receiving circuit 10 can continuously acquire appropriate information. In addition, since the high-speed data receiving circuit 10 can appropriately perform phase correction during operation, it is possible to construct a highly reliable system without interrupting reception processing due to initial phase correction during operation. Is possible.
  • the high-speed data receiving circuit 10 uses a DLL circuit to generate a plurality of signals having different phases from the received DQS signal in a stepwise manner, and based on the magnitude and direction of the phase shift, To select new DQS_DLL # A to #G signals. For this reason, the high-speed data receiving circuit 10 can immediately correct the phase of the DQS_DLL # A to #G signals. As a result, the frequency of the received DQ signal and DQS signal is high and the data eye is narrowed. In addition, it is possible to receive data with high reliability. Further, the high-speed data receiving circuit 10 can eliminate a complicated circuit.
  • the high-speed data receiving circuit 10 selects one signal from among a plurality of signals output from the DLL circuit as a DQS_DLL # D signal that is a reference clock. Then, the high-speed data receiving circuit uses DQS_DLL # A to #C signals as signals having a phase advanced from the DQS_DLL # D signal, and DQS_DLL # E to #G signals as signals having a phase sent from the DQS_DLL # D signal. Choose as.
  • the high-speed data receiving circuit 10 can detect the sign of phase fluctuation regardless of the direction in which the phase of the DQS signal and the phase of the DQ signal are shifted. As a result, the high-speed data receiving circuit 10 corrects the phases of the DQS_DLL # A to #G signals and continuously acquires appropriate information regardless of the direction in which the phase of the DQS signal and the phase of the DQ signal are shifted. Can do.
  • the high-speed data receiving circuit 10 counts the number of data sampling circuits that have acquired information different from the data sampling circuit D35. Further, the high-speed data receiving circuit 10 determines the phase direction of the used signal in the data sampling circuit that has acquired information different from the data sampling circuit D35 with reference to the phase of the DQS_DLL # D signal.
  • the high-speed data receiving circuit 10 newly generates a signal whose phase is shifted by the same number of stages as the counted number in a direction opposite to the determined phase direction with reference to the signal selected as the DQS_DLL # D signal. Selected as DQS_DLL # A to #G signals.
  • the high-speed data receiving circuit 10 can correct the phase appropriately. That is, since the high-speed data receiving circuit 10 corrects the phase of each DQS_DLL # A to #G signal according to the amount of phase shift, the timing at which each of the data sampling circuits A31 to G38 obtains information is determined according to the DQ signal. Can fit within the data eye.
  • the above-described high-speed data receiving circuit 10 detects a phase shift, it corrects the phase of each DQS_DLL # A to #G signal by the same amount as the detected phase shift.
  • the embodiment is not limited to this.
  • a signal having a phase that differs by the half cycle of the DQ signal in a direction opposite to the direction in which the phase has shifted is transferred to the new DQS_DLL # A ⁇ It may be selected as the #G signal.
  • FIG. 15 is a diagram for explaining another example of the correction process.
  • the data sampling circuits F37 and G38 acquire information different from the data sampling circuit D35.
  • the high-speed data reception circuit 10a according to the second embodiment may reselect the phase of each DQS_DLL # A to #G signal so that it is advanced by half the phase of the DQ signal.
  • the high-speed data receiving circuit 10a determines the period of the timing at which the information of the DQ signal is switched in the initial phase adjustment process, and counts the number of DLYs that delay the phase of the signal by a half period of the determined period. To do. In the example shown in FIG. 15, the high-speed data receiving circuit 10a selects, as a new DQS_DLL # D signal, a signal output from the preceding DLY by the counted number based on the signal selected as the DQS_DLL # D signal. fix.
  • the high-speed data receiving circuit 10a uses the signal output from the subsequent DLY as a new DQS_DLL # D signal. Reselect as.
  • any data sampling circuit when information different from the data sampling circuit D35 is acquired, there is a timing at which the information is acquired and a timing at which the information of the DQ signal is switched. It is thought that it has approached. Therefore, as shown in FIG. 15, when the phase shift is detected, the high-speed data receiving circuit 10a sets the phase of each DQS_DLL # A to #G signal in the direction opposite to the detected phase shift. Reselect to advance half the phase of the DQ signal.
  • the high-speed data receiving circuit 10a can reduce the number of times of correcting the phases of the DQS_DLL # A to #G. Further, since the high-speed data receiving circuit 10a can perform appropriate phase correction even if the phase difference between the DQS_DLL # A to #G is reduced, the scale of the DLL circuit can be reduced.
  • the high-speed data receiving circuit 10a can perform appropriate phase correction even if the phase difference between the DQS_DLL # A to #G is reduced, the data eye can be appropriately selected even when the frequency of the DQ signal is large. Information can be acquired within a certain range.
  • the high-speed data receiving circuits 10 and 10a described above receive the DQ signal and the DQS signal, and acquire information from the DQ signal at a timing based on the received DQS signal.
  • the embodiment is not limited to this, and other than the protocol using the DQ signal and the DQS signal, the embodiment is appropriately applied to a protocol using a signal storing data and a signal indicating timing at which the data is stored. You can do it.
  • the clock phase adjustment circuit 20 described above generates clock signals DQS_DLL # A to G having a plurality of different phases based on the received DQS signal.
  • the embodiment is not limited to this.
  • the clock phase adjustment circuit 20 simply outputs a plurality of DQS_DLL # A to G signals having a predetermined frequency and shifted phases, regardless of the phase of the DQS signal.
  • the phase of each signal initially output by the clock phase adjustment circuit 20 is determined by the above-described initial phase correction processing. Thereafter, the clock phase adjustment circuit 20 may correct the phase of each signal to be output based on the phase correction signal notified by the phase shift determination circuit 40.
  • the high-speed data receiving circuits 10 and 10a described above have a plurality of data sampling circuits A31 to G38 for acquiring information from the DQ signal.
  • the embodiment is not limited to this, and the high-speed data receiving circuits 10 and 10a may have any number of data sampling circuits as long as they are a plurality of data sampling circuits.
  • the above-described high-speed data receiving circuits 10 and 10a use the data sampling circuit D35 as a reference plane and determine whether or not DQ # D0 to D3 and information acquired by other circuits match.
  • the embodiment is not limited to this.
  • the high-speed data receiving circuits 10 and 10a may use an arbitrary data sampling circuit as a reference plane.
  • the high-speed data receiving circuits 10 and 10a described above did not have a comparator in the data sampling circuit D35.
  • the embodiment is not limited to this.
  • the same circuit may be applied to all the data sampling circuits, and one selected circuit may be used as the reference plane.
  • DLL circuit The high-speed data receiving circuits 10 and 10a described above use the DLL circuit to generate a plurality of clocks DQS_DLL # A to #G having phases that are stepwise different from the received DQS signal.
  • the embodiment is not limited to this.
  • the high-speed data receiving circuits 10 and 10a use an arbitrary method for generating a plurality of clocks whose phases are different in stages based on the received DQS signal.
  • DQS_DLL # A to #G may be generated.
  • the embodiment is not limited to this, and is realized by executing a program prepared in advance by an information processing apparatus that receives a data signal and a clock signal and an I / O (Input Output) apparatus control circuit. You may do it.
  • an example of a computer that executes a program having the same function as that of the high-speed data receiving circuit shown in the first embodiment will be described with reference to FIG.
  • FIG. 16 is a diagram for explaining an example of the data reception program.
  • a RAM Random Access Memory
  • ROM Read Only Memory
  • CPU Central Processing Unit
  • a generation program 131 In the ROM 130, a generation program 131, an acquisition program 132, a determination program 133, and a correction program 134 are stored in advance.
  • the programs 140 to 134 function as a generation process 141, an acquisition process 142, a determination process 143, and a correction process 144 by the CPU 140 reading out and executing the programs 131 to 134 from the ROM 130.
  • Each process 141 to 144 exhibits the same function as each part 10 to 40 shown in FIG.
  • the data receiving program described in the present embodiment can be realized by executing a program prepared in advance on a computer such as a personal computer or a workstation.
  • This program can be distributed via a network such as the Internet.
  • This program is recorded on a computer-readable recording medium such as a hard disk, flexible disk (FD), CD-ROM (Compact Disc Read Only Memory), MO (Magneto Optical Disc), DVD (Digital Versatile Disc).
  • the program can also be executed by being read from a recording medium by a computer. Further, this program can be executed as microcode executed on one chip such as ASIC, FPGA, SoC (System-on-a-chip).

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

 高速データ受信回路(10)は、互いに位相が異なる複数のクロックを生成するデータ受信回路である。また、高速データ受信回路(10)は、生成した複数のクロックのうち、それぞれ異なるクロックを用いて、受信したデータ信号から複数のデータを取得する。また、高速データ受信回路(10)は、取得した各データがそれぞれ一致するか否かを判定し、他のデータと一致しないデータが存在すると判定した場合には、データの不一致が発生しない方向に生成するクロックの位相を補正する。

Description

データ受信回路、情報処理装置、データ受信プログラムおよびデータ受信方法
 本発明は、データ受信回路、情報処理装置、データ受信プログラムおよびデータ受信方法に関する。
 従来、データ信号とクロック信号とを受信し、受信したクロック信号が示すタイミングに従って、データ信号から情報を取り出す技術が知られている。このような技術の一例として、データストローブ信号(以下、DQS信号と記載する。)の立ち上がりエッジと立下りエッジとをトリガとして、データバス信号(以下、DQ信号と記載する。)から情報を取り出す高速データ受信回路の技術が知られている。
 このような高速データ受信回路は、DQS信号を受信した場合には、DQ信号の有効領域(読み込み可能範囲)内でデータを取り出すため、受信したDQS信号の位相をDQ信号の位相よりも所定量だけ遅延させる。その後、高速データ受信回路は、位相を遅延させたDQS信号の立ち上がりエッジと立下りエッジとをトリガとして、DQ信号から情報を取り出す。
 また、高速データ受信回路は、受信したDQS信号の位相をDQ信号の位相に対して正確に遅延させるため、位相変動量の基準となるクロックを生成し、生成したクロックとDQS信号との位相ズレを検出する。そして、高速データ受信回路は、検出した位相のズレに基づいて、DQS信号の位相を補正し、DQ信号から情報を取得する。
特表2002-531966号公報 再公表2008-068851号公報
 しかし、上述したDQS信号の位相と基準となるクロックの位相とのズレに応じてDQS信号の位相を補正する技術では、DQ信号の位相とDQS信号の位相とにそれぞれ異なる変動が生じた場合には、DQ信号から適切に情報を取得できないという問題があった。
 つまり、高速データ受信回路は、データ信号であるDQ信号とクロック信号であるDQS信号とを受信した場合には、位相変動量の基準となるクロックの位相と受信したDQS信号の位相とのズレに基づいて、DQS信号の位相を補正する。このため、高速データ受信回路は、DQ信号の位相とDQS信号の位相とに異なる変動が生じた場合には、DQS信号の位相に誤った補正を行ってしまう。
 この結果、高速データ受信回路は、DQ信号の位相とDQS信号の位相とに異なる変動が生じた場合には、データ化け等を発生させ、DQ信号から適切に情報を取得することができない。つまり、高速データ受信回路は、データ信号の位相とクロック信号の位相とに異なる変動が生じた場合には、データ信号から適切に情報を取得することができない。
 本願に開示の技術は、一つの側面では、データ信号から情報を適切に取得する。
 一つの側面では、互いに位相が異なる複数のクロックを生成するデータ受信回路である。また、データ受信回路は、生成した複数のクロックのうち、それぞれ異なるクロックを用いて、受信したデータ信号から複数のデータを取得する。また、データ受信回路は、取得した各データがそれぞれ一致するか否かを判定し、他のデータと一致しないデータが存在すると判定した場合には、データの不一致が発生しない方向に生成するクロックの位相を補正する。
 本願に開示の技術は、一つの態様によれば、データ信号から情報を適切に取得する。
図1は、実施例1に係るI/O装置制御回路を説明するための図である。 図2は、実施例1に係る高速データ受信回路の一例を説明するための図である。 図3は、実施例1に係るクロック位相調整回路の一例を説明するための図である。 図4は、初期位相補正処理を説明するための図である。 図5は、初期位相補正処理における位相の補正量を説明するための図である。 図6は、状態0の場合に実行する補正処理を説明するための図である。 図7は、状態1を説明するための図である。 図8は、状態1の場合に実行する補正処理を説明するための図である。 図9は、補正処理による補正結果を説明するための図である。 図10は、補正処理と補正処理による結果を説明するための図である。 図11は、状態2の場合に実行する補正処理を説明するための図である。 図12は、位相補正量を説明するための図である。 図13は、実施例1に係る高速データ受信回路の処理の流れを説明するためのフローチャートである。 図14は、位相変動観測処理の流れを説明するためのフローチャートである。 図15は、補正処理の他の例を説明するための図である。 図16は、データ受信プログラムの一例を説明するための図である。
 以下に添付図面を参照して本願に係るデータ受信回路、情報処理装置、データ受信プログラムおよびデータ受信方法について説明する。
 以下の実施例1では、図1を用いて、高速データ受信回路を有するI/O(Input Output)装置制御回路の一例を説明する。図1は、実施例1に係るI/O装置制御回路を説明するための図である。
 図1に示すように、実施例1に係るI/O装置制御回路1は、メモリ5に記憶された情報を取得するメモリコントローラの一部として高速データ受信回路10を有する。また、I/O装置制御回路1は、I/O装置2、I/O装置3、CPU(Central Processing Unit)4、メモリ5と接続される。
 このような高速データ受信回路10は、メモリ5に対して、読み取りコマンドを送信する。すると、メモリ5は、高速データ受信回路10に対して、データ信号であるDQ信号とクロック信号であるDQS信号とを返信する。そして、高速データ受信回路10は、DQ信号とDQS信号とを受信した場合には、受信したDQS信号に基づくクロックを生成し、生成したクロックを用いて、DQ信号から情報を取得する。
 また、高速データ受信回路10は、メモリ5に記憶された情報の取得に先立って、従来技術と同様に、DQS信号の位相をずらす量を決定する初期位相補正処理を実行する。なお、初期位相補正処理の具体的な処理内容については、後述する。
 次に、図2を用いて、高速データ受信回路10が有する各部について説明する。図2は、実施例1に係る高速データ受信回路の一例を説明するための図である。図2に示す例では、高速データ受信回路10は、クロック位相調整回路20と、位相ズレ検出回路30とを有する。また、位相ズレ検出回路30は、複数のデータサンプリング回路A31~G38、位相ズレ判定回路40を有する。
 クロック位相調整回路20は、受信したDQS信号の位相に基づいて、一つの基準クロック及び基準クロックと段階的に位相が異なる複数のクロックを生成する。具体的には、クロック位相調整回路20は、受信したDQS信号の位相を調節し、それぞれ段階的に位相をずらしたDQS_DLL#A信号~DQS_DLL#G信号を生成する。そして、クロック位相調整回路20は、生成したDQS_DLL#A信号~DQS_DLL#G信号を各データサンプリング回路A31~G38へ送信する。
 以下、図3を用いて、クロック位相調整回路20が実行する処理を具体的に説明する。図3は、実施例1に係るクロック位相調整回路20の一例を説明するための図である。図3に示す例では、クロック位相調整回路20は、DQS信号の位相を遅延させる複数の遅延素子であるDLY#1~#13を直列に接続したDLL(Delay Locked Loop)回路を有する。なお、DLYの数はあくまで一例であり、任意の数および任意の遅延性能を有するDLYを設置するDLL回路を用いることができる。
 このようなクロック位相調整回路20は、DQS信号を受信した場合には、受信したDQS信号をDLL回路に伝達する。そして、クロック位相調整回路20は、各DLYを段階的に用いることによって、受信したDQS信号の位相を段階的に遅延させた複数の信号を作成する。
 また、クロック位相調整回路20は、後述する位相ズレ判定回路40から受信した位相補正信号に応じて、各DLYが出力する信号から基準クロックと複数のクロックとを選択し、出力するセレクタ21を有する。具体的には、セレクタ21は、各DLYが出力した信号を取得し、後述する初期位相補正処理の結果に応じて、取得した信号のうち、一つの信号を基準クロックとして選択し、選択した信号をDQS_DLL#D信号としてデータサンプリング回路D35へ送信する。また、セレクタ21は、DQS_DLL#D信号よりも進んだ位相を有する複数の信号と、基準クロックとして選択した信号よりも送れた位相を有する複数の信号とをクロックとして選択し、選択した各信号を出力する。
 ここで、後述する位相ズレ判定回路40は、基準クロックを用いて取得したデータと一致しないデータが存在する場合は、基準クロックの位相を基準として、一致しないデータを取得したデータサンプリング回路が用いたクロックの位相の向きを判別する。そして、位相ズレ判定回路40は、判別した位相の向きと一致しないデータの数とを示す位相補正信号をクロック位相調整回路20に送信する。
 このような場合には、セレクタ21は、位相補正信号を受信するとともに、直前に基準クロックとして選択した信号を基準とし、位相補正信号が示す向きとは反対の方向に、位相補正信号が示す数だけ位相をずらした信号を基準クロックとして選択する。
 以下、セレクタ21が実行する処理について、具体例を挙げて説明する。例えば、セレクタ21は、後述する初期位相補正処理に基づいて、DLY#10が出力した信号を基準クロックであるDQS_DLL#D信号として選択する。そして、セレクタ21は、DQS_DLL#D信号をデータサンプリング回路D35へ送信する。
 また、セレクタ21は、DLY#7が出力した信号を基準クロックとして選択した場合には、DLY#4~#6が出力した各信号をDQS_DLL#A~#C信号として選択する。そして、セレクタ21は、DQS_DLL#A~#C信号を、それぞれデータサンプリング回路A31、B33、C34へ送信する。
 また、セレクタ21は、DLY#7が出力した信号を基準クロックとして選択した場合には、DLY#8~#10が出力した各信号をDQS_DLL#E~#G信号として選択する。そして、セレクタ21は、DQS_DLL#E~#G信号を、それぞれデータサンプリング回路E36~G38へ送信する。
 次に、セレクタ21が位相ズレ判定回路40から位相補正信号を受信した際の処理について、具体例を挙げて説明する。例えば、セレクタ21は、DLY#7が出力した信号を基準クロックとして選択した際に、後述する位相ズレ判定回路40から「-2」を示す位相補正信号を受信する。このような場合には、セレクタ21は、直前に基準クロックとして選択した信号を出力するDLYよりも2つ分前段に設置されたDLYが出力する信号を新たな基準クロック信号として選択する。
 つまり、セレクタ21は、DLY#7が出力した信号を基準クロック信号として選択した際に、「-2」を示す位相補正信号を受信した場合には、DLY#7よりも2つ前のDLY#5が出力した信号を基準クロック信号として新たに選択する。
 また、例えば、セレクタ21は、「+2」を示す位相補正信号を受信した場合には、直前に基準クロックとして選択した信号を出力するDLYよりも2つ分後段に設置されたDLYが出力する信号を新たな基準クロック信号として選択する。例えば、セレクタ21は、DLY#7が出力した信号を基準クロックとして選択した際に「+2」を示す位相補正信号を受信した場合には、DLY#9が出力した信号を新たな基準クロック信号として選択する。
 このように、セレクタ21は、位相ズレ判定回路40から受信した位相補正信号に基づいて、DLL回路がDQS信号に基づいて生成した複数の信号から新たな位相を有する基準クロックと複数のクロックとを選択する。このため、セレクタ21は、後述する位相ズレ判定回路40によってDQ信号とDQS信号との位相のズレが検出された場合には、位相のズレとは逆の方向に基準クロック信号の位相を即時に補正することができる。
 図2に戻って、データサンプリング回路A31~G38は、クロック位相調整回路20によって生成された基準クロックおよび複数のクロックのうち、それぞれ異なるクロックを用いて、DQ信号からデータを取得する。以下、データサンプリング回路A31~G38について詳しく説明する。
 なお、以下の説明では、高速データ受信回路10は、DQ#0~#3信号が多重化されたDQ信号を受信するものとする。また、図2では、各データサンプリング回路B33~データサンプリング回路G38の詳細な図示を省略したが、各データサンプリング回路B33、C34、E36~G38は、データサンプリング回路A31と同様の回路を有する。また、データサンプリング回路D35は、比較器を有しておらず、DQ信号から情報を取得するFFのみを有する。
 例えば、図2に示す例では、データサンプリング回路A31は、フリップフロップ(以下、単にFFとする。)#0~#3と比較器A32を有する。また、各FF#0~#3は、DQ#0信号~DQ#3信号と、クロック位相調整回路20からDQS_DLL#A信号とを受信する。そして、各FF#0~#3は、受信したDQS_DLL#A信号の電圧値が所定の閾値よりも高い状態に遷移したことをトリガとして、DQ#0~#3信号の電圧値を取り込む。つまり、各FF#0~#3は、クロック位相調整回路20が生成したDQS_DLL#A信号が示すタイミングで、DQ信号から情報を取得する。
 比較器A32は、データサンプリング回路A31の各FF#0~#3が取得した情報とともに、DQ#D0~D3を取得する。そして、比較器A32は、データサンプリング回路A31の各FF#0~#3が取得した情報と、データサンプリング回路D35が取得した情報であるDQ#D0~D3とが一致するか否かを判定する。
 ここで、データサンプリング回路D35は、基準クロックとして選択されたDQS_DLL#D信号を用いて、DQ信号から情報を取得する。このため、比較器A32は、同一の信号から取得した情報であって、DQS_DLL#A信号の位相に基づいて取得した情報と、基準クロックであるDQS_DLL#D信号の位相に基づいて取得された情報とが一致するか否かを判別することとなる。その後、比較器A32は、データサンプリング回路A31が取得した情報と、DQ#D0~D3とが一致するか否かの判定結果を位相ズレ判定回路40に通知する。
 データサンプリング回路B33、データサンプリング回路C34、データサンプリング回路E36~G38は、各回路が有する比較器を用いて、DQ#D0~D3と自装置が取得した情報とが一致するか否かを判別する。そして、データサンプリング回路B33、データサンプリング回路C34、データサンプリング回路E36~G38は、DQ#D0~D3と自装置が取得した情報とが一致するか否かの判定結果を位相ズレ判定回路40に通知する。
 データサンプリング回路D35は、クロック位相調整回路20から受信したDQS_DLL#D信号を用いて、DQ信号から情報を取得する。そして、データサンプリング回路D35は、取得した情報をDQ#D0~D3として、他のデータサンプリング回路A31、B33、C34、E36~G38が有する比較器へ送信する。また、データサンプリング回路D35は、DQ#D0~D3をメモリ5から受信した情報として、I/O装置制御回路1が有する他の回路へ出力する。
 このように、各データサンプリング回路A31~C34は、データサンプリング回路D35が用いる基準クロックよりも位相が進んだクロックを用いて、DQ信号から情報を取得する。そして、各データサンプリング回路A31~C34は、自装置が取得した情報とDQ#D0~D3とが一致するか否かの判定結果を位相ズレ判定回路40に通知する。
 また、各データサンプリング回路E36~G38は、データサンプリング回路D35が用いる基準クロックよりも位相が遅いクロックを用いて、DQ信号から情報を取得する。そして、各データサンプリング回路E36~G38は、自装置が取得した情報とDQ#D0~D3とが一致するか否かの判定結果を位相ズレ判定回路40に通知する。
 図2に戻って、位相ズレ判定回路40は、各データサンプリング回路A31、B33、C34、E36~G38が取得した情報とDQ#D0~D3とがそれぞれ一致するか否かを判別する。そして、位相ズレ判定回路40は、DQ#D0~D3と異なる情報が取得されていた場合には、一致しない情報を取得したデータサンプリング回路が用いた信号の位相とは逆の方向に、DQS_DLL#D信号の位相を補正する。つまり、位相ズレ判定回路40は、DQS信号とDQ信号との位相のズレを検出し、検出した位相のズレを考慮した補正を行う。
 具体的には、位相ズレ判定回路40は、各データサンプリング回路A31~G38が情報を取得する度に、各データサンプリング回路A31~G38が有する各比較器からの通知を取得する。そして、位相ズレ判定回路40は、取得した通知に基づいて、DQ#D0~D3と一致しない情報を取得した回路が存在するか否かを判定する。また、位相ズレ判定回路40は、各データサンプリング回路A31~G38が取得した情報が全て一致する場合には、位相ズレの状態が補正不要な「状態0」であると判別する。
 また、位相ズレ判定回路40は、DQ#D0~D3とは一致しない情報を取得した回路が存在する場合には、データサンプリング回路C34、E36が取得した情報とDQ#D0~D3とが一致するか否かを判別する。また、位相ズレ判定回路40は、各データサンプリング回路C34、E36が取得した情報がDQ#D0~D3と一致する場合には、各データサンプリング回路A31~C34が取得した情報とDQ#D0~D3とが一致するか否かを判別する。あわせて、位相ズレ判定回路40は、各データサンプリング回路E36~G38が取得した情報とDQ#D0~D3とが一致するか否かを判別する。
 そして、位相ズレ判定回路40は、各データサンプリング回路A31~C34又は各データサンプリング回路E36~G38が取得した情報とDQ#D0~D3とが一致する場合には、位相ズレの状態が「状態1」であると判別する。また、位相ズレ判定回路40は、位相ズレの状態が「状態1」であると判別した場合には、DQ#D0~D3とは一致しない情報を取得したデータサンプリング回路の数を計数する。
 また、位相ズレ判定回路40は、DQS_DLL#D信号の位相を基準として、DQ#D0~D3とは異なる情報を取得したデータサンプリング回路が用いたクロック信号の位相の向きを判別する。そして、位相ズレ判定回路40は、判別した位相の向きと計数したデータサンプリング回路の数とを示す位相補正信号を生成し、生成した位相補正信号をクロック位相調整回路20へ送信する。
 つまり、DQ信号の位相がDQS信号の位相に比べて早い方向にずれた場合には、DQS_DLL#D信号よりも遅い位相を有するDQS_DLL#E~#G信号に基づいて取得した情報とDQS_DLL#D信号に基づいて取得した情報とが一致しなくなる。また、DQ信号の位相がDQS信号の位相に比べて遅い方向にずれた場合には、DQS_DLL#D信号よりも早い位相を有するDQS_DLL#A~#C信号に基づいて取得した情報とDQS_DLL#D信号に基づいて取得した情報とが一致しなくなる。
 このため、位相ズレ判定回路40は、各データサンプリング回路A31~G38が有する比較器から取得した通知に基づいて、DQS信号とDQ信号との位相ズレの大きさ及び向きを検出する。そして、位相ズレ判定回路40は、検出した位相ズレの大きさ及び向きを示す位相補正信号を生成し、生成した位相補正信号をクロック位相調整回路20へ送信する。
 ここで、DQS信号とDQ信号との位相差があまりにも大きく、データサンプリング回路C34、E36が取得した情報が、DQ#D0~D3と異なる場合には、DQS_DLL#D信号の位相を正確に補正できるとは言い難い。そこで、位相ズレ判定回路40は、データサンプリング回路C34、E36が取得した情報とDQ#D0~D3とが一致しない場合には、位相のズレの状態が補正可能ではない「状態2」であると判別する。このような場合には、高速データ受信回路10は、稼働を一時中断して、初期位相補正処理を再度実行する。
 また、位相ズレ判定回路40は、全てのデータサンプリング回路A31~G38が取得した情報が一致する場合には、位相のズレの状態を補正しない「状態0」であると判別する。このような場合には、位相ズレ判定回路40は、位相補正信号を生成せず、クロック位相調整回路20が生成する各DQS_DLL#A~#G信号の位相を保持する。
 次に、具体例を用いて、位相ズレ判定回路40が実行する処理の流れを説明する。例えば、位相ズレ判定回路40は、データサンプリング回路A31およびデータサンプリング回路B33の比較器から、DQ#D0~D3と一致しない情報を取得した旨の通知を取得する。また、位相ズレ判定回路40は、データサンプリング回路C34、E36~G38の比較器から、DQ#D0~D3と一致する情報を取得した旨の通知を取得する。
 このような例では、位相ズレ判定回路40は、位相のズレの状態が「状態1」であると判別する。また、位相ズレ判定回路40は、DQS_DLL#D信号よりも位相が進んだクロックを用いるデータサンプリング回路A31、B32が、誤った情報を取得したと判別する。このような場合には、位相ズレ判定回路40は、DQS_DLL#D信号の位相をクロック位相調整回路20のDLY二つ分遅らせるため、「+2」を示す位相補正信号を生成し、生成した位相補正信号をクロック位相調整回路20に送信する。
 また、例えば、位相ズレ判定回路40は、データサンプリング回路G38の比較器のみからDQ#D0~D3と一致しない情報を取得した旨の通知を取得する。このような例では、位相ズレ判定回路40は、位相のズレの状態が「状態1」であると判別し、DQS_DLL#D信号の位相をDLY一つ分早めるため、「-1」を示す位相補正信号を生成し、生成した位相補正信号をクロック位相調整回路20に送信する。
 また、例えば、位相ズレ判定回路40は、データサンプリング回路A31、B33、C34の比較器からDQ#D0~D3と一致しない情報を取得した旨の通知を取得する。このような例では、位相ズレ判定回路40は、位相のズレの状態が補正可能ではない「状態2」であると判別する。このような場合には、高速データ受信回路10は、稼働を一時中断して、初期位相補正処理を再度実行する。
 また、例えば、位相ズレ判定回路40は、データサンプリング回路A31、B33、C34のいずれかの比較器とデータサンプリング回路E36~G38のいずれかの比較器から同時に一致しない情報を取得した旨の通知を取得する。このような例では、位相ズレ判定回路40は、位相のズレが修復可能ではない「状態2」であると判別する。このような場合には、高速データ受信回路10は、稼働を一時中断して、初期位相補正処理を再度実行する。
 このように、位相ズレ判定回路40は、各データサンプリング回路A31~C34、E36~G38が取得した情報がDQ#D0~D3と一致するか否かを判別する。そして、位相ズレ判定回路40は、一致しない情報を取得したデータサンプリング回路の数と、DQS_DLL#D信号の位相を基準として、一致しない情報を取得したデータサンプリング回路が用いたクロックの位相の向きを示す位相補正信号を生成する。その後、位相ズレ判定回路40は、生成した位相補正信号をクロック位相調整回路20へ送信する。
 つまり、位相ズレ判定回路40は、DQS_DLL#D信号の位相を基準として、一致しない情報を取得したデータサンプリング回路が用いたクロックの位相とは逆側に、各DQS_DLL#A~#G信号の位相を補正する。このため、高速データ受信回路10は、継続してDQ信号から情報を適切に取得することができる。
 近年、情報が送受信される速度の高速化に従って、データ信号とクロック信号との周波数が大きくなっており、データ信号の位相とクロック信号の位相とがずれやすくなる結果、信号波形品質(アイパターン)が劣化する傾向にある。つまり、データ信号の位相とクロック信号の位相とが必ずしも同一傾向で変動しない場合が増加している。このため、従来のDQS信号の位相と基準となるクロックの位相とのズレに応じてDQS信号の位相を補正する方法では、位相を調整できる限界に達している。
 一方、位相ズレ判定回路40は、各データサンプリング回路A31~G38が取得した情報を比較することで位相のズレを検出し、検出した位相のズレに応じてDQS_DLL#A~#G信号の位相を補正する。このため、高速データ受信回路10は、データ信号とクロック信号との位相にズレが生じた場合にも、適切に情報を取得することができる。
 また、位相ズレ判定回路40は、各データサンプリング回路A31~G38が情報を取得する度に、継続してDQS信号とDQ信号との位相のズレを検出し、検出した位相のズレに応じて、各DQS_DLL#A~#G信号の位相を補正し続ける。このため、位相ズレ判定回路40は、位相のズレが「状態1」であるうちに、各信号DQS_DLL#A~#G信号の位相を適切に補正し、位相のズレが「状態2」へと至ることを抑止できる。
 つまり、DQS信号の位相とDQ信号の位相とのズレは、一度の読み取りサイクル単位ではごく僅かしか変化しない。つまり、DQS信号とDQ信号との位相のズレは、メモリ5から継続してDQ信号を受信する過程において、「状態0」から「状態1」へと遷移し、その後「状態2」へと遷移する。しかし、位相ズレ判定回路40は、各DQS_DLL#A~#G信号の位相を補正し続けるので、各信号DQS_DLL#A~#G信号の位相を適切に補正し、位相のズレが「状態2」へと至ることを抑止できる。
 結果として、高速データ受信回路10は、DQS信号とDQ信号とのタイミングマージンを保持し続けるとともに、再度の初期位相補正処理を不要とし、性能低下につながるシステム動作停止を回避することができる。
 次に、図4を用いて、初期位相補正処理について説明する。図4は、初期位相補正処理を説明するための図である。図4に示す例では、高速データ受信回路10およびメモリ5は、あらかじめ定められた情報であるトレーニングパターンを記憶する。このような場合に、高速データ受信回路は、任意のデータサンプリング回路を用いて、メモリ5に記憶されたトレーニングパターンが格納されたDQ信号を受信する。
 ここで、高速データ受信回路10は、メモリ5から送信されたDQS信号をクロック位相調整回路20に伝達し、DQS信号の位相を遅延させる。そして、高速データ受信回路10は、位相をずらしたDQS信号を用いて、DQ信号から情報を取得する。その後、高速データ受信回路10は、比較器50を用いて、あらかじめ記憶したトレーニングパターンと取得した情報とが一致するか否かを判別する。
 また、高速データ受信回路10は、DQS信号の位相を遅延させる量を逐次的に変更し、クロック位相調整回路20が遅延させることができる全ての範囲について、記憶したトレーニングパターンと一致する情報を取得できるか否かを判別する。その後、高速データ受信回路10は、クロック位相調整回路20がDQS信号の位相を遅延させることができる全ての範囲のうち、トレーニングパターンと一致する情報を取得可能な範囲の中心を初期位相補正量として採用する。
 例えば、高速データ受信回路10は、図5に外部受信信号として示すDQ信号とDQS信号とを受信する。このような場合には、図5中の位相調整#1~#4に示すように、高速データ受信回路10は、DQS信号の位相を遅延させる量を逐次的に変更し、遅延させた量がそれぞれ異なるDQS_DLL#1~#4を用いて、トレーニングパターンを取得する。図5に示す例では、高速データ受信回路10は、DQS_DLL#1~#3を用いた場合に、正確なトレーニングパターンを取得することとなる。
 このような場合には、高速データ受信回路10は、正常にトレーニングパターンを取得することができる範囲のうち、中心となるDQS_DLL#2が最適な位相であると判断する。その後、高速データ受信回路10は、DQS信号の位相を基準としてDQS_DLL#2の遅延量を初期所定量として採用する。つまり、高速データ受信回路10は、DQS_DLL#2として選択した信号をDQS_DLL#D信号として選択する。図5は、初期位相補正処理における位相の補正量を説明するための図である。
 次に、図6~図11を用いて、高速データ受信回路10が各DQS_DLL#A~#G信号の位相を補正する処理について説明する。まず図6を用いて、DQ信号とDQS信号との位相のズレの状態が「状態0」である場合の処理について説明する。図6は、状態0の場合に実行する補正処理を説明するための図である。
 ここで、図6中の破線は、データサンプリング回路D35が情報を取得する位相のタイミングを示す。また、図6中の受信データDQ[0]~[3]中の×印は、多重化されたDQ#0~#3信号の情報が切り替わるタイミングを示す。つまり、図6中の受信データDQ[0]~[3]には、各DQ#0~#3信号のデータアイが記載されている。また、図6中αは、各データサンプリング回路A31~G38が情報を取得する位相のタイミングを示す。また、図6中のβは、各データサンプリング回路A31~G38が取得した情報を示す。
 図6に示す例では、各データサンプリング回路A31~G38が取得した情報は、「1010」で一致している。このため、高速データ受信回路10は、各データサンプリング回路A31~G38が用いるDQS_DLL#A~#G信号の位相補正を行わず、次のデータアイから情報を取得する。
 次に、図7~図9を用いて、DQS信号の位相がDQ信号の位相よりも遅延した場合の処理について説明する。図7は、状態1を説明するための図である。また、図8は、状態1の場合に実行する補正処理を説明するための図である。また、図9は、補正処理による補正結果を説明するための図である。
 図7に示す例では、各データサンプリング回路F37、G38の情報取得タイミングがDQ信号の情報が切り替わるタイミングと重複し、データサンプリング回路D35とは異なる情報「1000」を取得する。このため、高速データ受信回路10はDQ信号とDQS信号との位相のズレが「状態1」であると判別する。
 このような場合には、図8に示すように、高速データ受信回路10は、DQS_DLL#A~#G信号の位相をDLY2つ分だけ早める。この結果、高速データ受信回路10は、各データサンプリング回路A31~G38が情報を取得するタイミングをデータアイの中に収めることができるので、図9に示すように、位相のズレを「状態0」に戻すことができる。
 次に、図10を用いて、DQS信号の位相がDQ信号の位相よりも進んだ場合の処理について説明する。図10は、補正処理と補正処理による結果を説明するための図である。図10に示す例では、各データサンプリング回路A31、B33の情報取得タイミングがDQ信号の情報が切り替わるタイミングと重複し、データサンプリング回路D35とは異なる情報「1110」を取得する。このため、高速データ受信回路10はDQ信号とDQS信号との位相のズレが「状態1」であると判別する。
 そこで、図10に示すように、高速データ受信回路10は、DQS_DLL#A~#G信号の位相をDLY2つ分だけ遅延させる。この結果、高速データ受信回路10は、各データサンプリング回路A31~G38が情報を取得するタイミングをデータアイの中に収めることができるので、図10に示すように、位相のズレを「状態0」に戻すことができる。
 一方、図11は、状態2の場合に実行する補正処理を説明するための図である。図11に示すように、各データサンプリング回路E36~G38がデータサンプリング回路D35とは異なる情報を取得した場合には、データサンプリング回路D35が情報を取得するタイミングが、DQ信号の情報が切り替わる境界までずれている。このような場合には、高速データ受信回路10は、補正を行わずにDQ信号の受信を中止し、再度、初期位相補正処理を実行する。
 次に、図12を用いて、高速データ受信回路10が各DQS_DLL#A~#Gの位相を補正する量について説明する。図12は、位相補正量を説明するための図である。また、図12には、各データサンプリング回路A31~C34、E36~G38によって取得された情報がデータサンプリング回路D35によって取得された情報と一致するか否かの一例が示されている。
 図12に示す例では、高速データ受信回路10は、「状態0」の場合には、DQS_DLL#A~#Gの位相の補正を行わない。一方、高速データ受信回路10は、データサンプリング回路A31のみがデータサンプリング回路D35と異なる情報を取得した場合には、DQS_DLL#A~#Gの位相をDLY1つ分だけ遅くする。また、高速データ受信回路10は、データサンプリング回路A31とデータサンプリング回路B33がデータサンプリング回路D35と異なる情報を取得した場合には、DQS_DLL#A~#Gの位相をDLY2つ分だけ遅くする。
 また、高速データ受信回路10は、データサンプリング回路G38のみがデータサンプリング回路D35と異なる情報を取得した場合には、DQS_DLL#A~#Gの位相をDLY1つ分だけ早くする。また、高速データ受信回路10は、データサンプリング回路F37、G38がデータサンプリング回路D35と異なる情報を取得した場合には、DQS_DLL#A~#Gの位相をDLY2つ分だけ早くする。また、高速データ受信回路10は、「状態2」の場合には、DQS_DLL#A~#Gの位相の補正を行わず、初期補正処理を実行する。
[高速データ受信回路の処理の流れ]
 次に、図13を用いて、高速データ受信回路10が実行する処理の流れを説明する。図13は、実施例1に係る高速データ受信回路の処理の流れを説明するためのフローチャートである。図13に示す例では、高速データ受信回路10は、システムが起動されたことをトリガとして処理を開始する。
 まず、高速データ受信回路10は、初期位相調整処理を実行する(ステップS101)。次に、高速データ受信回路10は、各データサンプリング回路A31~G38が取得した情報を比較し、位相の変動を検出する(ステップS102)。次に、高速データ受信回路10は、位相の変動が検出されたか否かを判別する(ステップS103)。
 そして、高速データ受信回路10は、位相の変動が検出されていないと判別した場合には(ステップS103否定)、再度、位相の変動を検出する(ステップS102)。一方、高速データ受信回路10は、位相の変動を検出したと判別した場合には(ステップS103肯定)、位相の変動が補正可能な範囲内であるか否かを判別する(ステップS104)。つまり、高速データ受信回路10は、位相のズレが「状態1」であるか「状態2」であるかを判別する。
 次に、高速データ受信回路10は、位相の変動が補正可能な範囲内ではないと判別した場合(ステップS104否定)、つまり、位相のズレが「状態2」であると判別した場合には、再度、初期位相調整処理を実行する(ステップS101)。一方、高速データ受信回路10は、位相の変動が補正可能な範囲であると判別した場合には(ステップS104肯定)、つまり、位相のずれが「状態1」であると判別した場合には、DQS_DLL#A~#Gの位相を位相補正量だけ補正する(ステップS105)。
 その後、高速データ受信回路10は、情報を受信する処理が終了したか否かを判別する(ステップS106)。そして、高速データ受信回路10は、情報を受信する処理が終了した場合には(ステップS106肯定)、受信を終了し(ステップS107)、その後、処理を終了する。一方、高速データ受信回路10は、情報受信する処理が終了していない場合には(ステップS106否定)、再度位相の変動を観測する(ステップS102)。
 次に、図14を用いて、位相変動観測処理(図13中ステップS102)の流れについて詳しく説明する。図14は、位相変動観測処理の流れを説明するためのフローチャートである。図14に示す例では、高速データ受信回路10は、初期位相調整処理を実行したことをトリガとして(図13中ステップS101)、処理を開始する。
 まず、高速データ受信回路10は、各データサンプリング回路A31、B33、C34、E36~G38によって取得された各情報とデータサンプリング回路D35によって取得された情報とを比較する(ステップS201)。次に、高速データ受信回路10は、各データサンプリング回路A31、B33、C34、E36~G38によって取得された全ての情報がデータサンプリング回路D35によって取得された情報と一致するか否かを判別する(ステップS202)。つまり、高速データ受信回路10は、各データサンプリング回路A31~G38によって取得されたすべての情報が一致するか否かを判別する。
 そして、高速データ受信回路10は、取得されたすべての情報が一致しないと判別した場合には(ステップS202否定)、データサンプリング回路C34~E36が取得した情報が一致するか否かを判別する(ステップS203)。つまり、高速データ受信回路10は、基準面であるDQ#D0~D3と、データサンプリング回路C34、E36が取得した各情報が一致するか否かを判別する。
 次に、高速データ受信回路10は、データサンプリング回路C34~E36が取得した情報が一致すると判別した場合は(ステップS203肯定)、基準面が取得した情報と前後どちらか片方のサンプリング値が全部一致するか否か判別する(ステップS204)。つまり、高速データ受信回路10は、各データサンプリング回路A31~C34又は各データサンプリング回路E36~G38が取得した情報とDQ#D0~D3とが一致するか否かを判別する。
 そして、高速データ受信回路10は、基準面が取得した情報と前後どちらか片方のサンプリング値が全部一致すると判別した場合には(ステップS204肯定)、位相ズレが「状態1」であると判断する(ステップS205)。また、高速データ受信回路10は、位相補正量を算出し(ステップS206)、その後、位相変動観測処理を終了する。
 また、高速データ受信回路10は、データサンプリング回路C34~E36が取得した情報が一致しないと判別した場合は(ステップS203否定)、位相ズレが「状態2」であると判断する(ステップS207)。また、高速データ受信回路10は、基準面が取得した情報と前後どちらか片方のサンプリング値が一致しないと判別した場合には(ステップS204否定)、位相ズレが「状態2」であると判断する(ステップS207)。その後、高速データ受信回路10は、位相変動観測処理を終了する。
 また、高速データ受信回路10は、各データサンプリング回路A31~G38によって取得されたすべての情報が一致した場合には(ステップS202肯定)、位相ズレが「状態0」であると判断する(ステップS208)。その後、高速データ受信回路10は、位相変動観測処理を終了する。
[実施例1の効果]
 上述したように、実施例1に係る高速データ受信回路10は、互いに位相が異なる複数のクロックを生成し、それぞれ異なるクロックを用いて、受信したDQ信号から複数のデータを取得する。また、高速データ受信回路10は、取得した各データがそれぞれ一致するか否かを判定し、他のデータと一致しないデータが存在すると判定した場合には、データの不一致が発生しない方向に生成するクロックの位相を補正する。
 このため、高速データ受信回路10は、DQ信号等のデータ信号から情報を適切に取得することができる。つまり、高速データ受信回路10は、受信したDQ信号からそれぞれ異なる位相を有するクロック信号で情報を取得し、取得した情報が一致するか否かを判別することで、位相のズレを検出する。その後、高速データ受信回路10は、位相のズレを検出した場合には、検出した位相のズレを打ち消す方向へ生成するクロック信号の位相を補正するので、DQS信号とDQ信号との位相に異なる変動が生じた場合にも、情報を適切に取得することができる。
 また、高速データ受信回路10は、DQS信号に基づいて、段階的に位相が異なるクロックであるDQS_DLL#A~#G信号を生成し、生成したDQS_DLL#A~#G信号を用いて、DQ信号から情報を取得する。また、高速データ受信回路10は、基準となるDQS_DLL#D信号を用いて取得した情報と他のDQS_DLL#A~#C,#E~#G信号を用いて取得した情報とが一致するか否かを判別する。
 そして、高速データ受信回路10は、基準となる情報と一致しない情報が存在する場合には、DQS_DLL#D信号の位相を基準として、一致しない情報を取得した際に用いたクロックの位相とは逆の方向に、DQS_DLL#A~#Gの位相を補正する。このため、高速データ受信回路10は、DQ信号等のデータ信号から情報を適切に取得することができる。
 つまり、高速データ受信回路10は、それぞれ位相が異なる複数のクロックを用いて情報を取得し、DQS_DLL#D信号を用いて取得した信号と、他の情報とが一致するか否かを判別することで、DQS信号とDQ信号との位相のズレを検出する。そして、高速データ受信回路10は、検出した位相のズレに応じて、情報を取得するタイミングを補正するので、温度や電圧等の動作環境の変化等による信号揺らぎによってDQS信号とDQ信号との位相に異なる変動が生じた場合にも、情報を適切に取得できる。
 また、高速データ受信回路10は、基準面であるデータサンプリング回路D35が取得する情報に位相変動の影響が発生するよりも先に、位相変動を検出し、各クロックの位相を補正することができる。このため、高速データ受信回路10は、適切な情報を継続して取得することができる。また、高速データ受信回路10は、稼働中に位相の補正を適切に行う事ができるので、稼働中に初期位相補正を行うことによる受信処理の中断を発生させず、信頼性の高いシステムの構築を可能とする。
 また、高速データ受信回路10は、DLL回路を用いて、受信したDQS信号から段階的に位相が異なる複数の信号を生成し、位相ズレの大きさと向きとに基づいて、生成された信号の中から新たなDQS_DLL#A~#G信号を選択する。このため、高速データ受信回路10は、DQS_DLL#A~#G信号が有する位相の補正を即時に行う事ができる結果、受信するDQ信号とDQS信号との周波数が高く、データアイが狭くなる場合にも、信頼性の高いデータ受信を行う事ができる。また、高速データ受信回路10は、複雑な回路を不要とすることができる。
 また、高速データ受信回路10は、DLL回路から出力された複数の信号のうち、一つの信号を基準クロックであるDQS_DLL#D信号として選択する。そして、高速データ受信回路は、DQS_DLL#D信号よりも進んだ位相を有する信号をDQS_DLL#A~#C信号とし、DQS_DLL#D信号よりも送れた位相を有する信号をDQS_DLL#E~#G信号として選択する。
 このため、高速データ受信回路10は、DQS信号の位相とDQ信号の位相とがずれる方向に係らず位相変動の兆候を検出することができる。結果として、高速データ受信回路10は、DQS信号の位相とDQ信号の位相とがずれる方向に係らず、DQS_DLL#A~#G信号の位相を補正し、適切な情報を継続して取得することができる。
 また、高速データ受信回路10は、データサンプリング回路D35とは異なる情報を取得したデータサンプリング回路の数を計数する。また、高速データ受信回路10は、DQS_DLL#D信号の位相を基準として、データサンプリング回路D35とは異なる情報を取得したデータサンプリング回路において、用いられた信号の位相の向きを判別する。
 そして、高速データ受信回路10は、DQS_DLL#D信号として選択された信号を基準として、判別された位相の向きとは反対の方向に、計数された数と同じ段数だけ位相がずれた信号を新たなDQS_DLL#A~#G信号として選択する。
 このため、高速データ受信回路10は、適切な位相の補正を行う事ができる。つまり、高速データ受信回路10は、位相ズレの量に応じて、各DQS_DLL#A~#G信号の位相を補正するので、各データサンプリング回路A31~G38が情報を取得するタイミングを、DQ信号のデータアイの範囲内に収めることができる。
 これまで本発明の実施例について説明したが実施例は、上述した実施例以外にも様々な異なる形態にて実施されてよいものである。そこで、以下では実施例2として本発明に含まれる他の実施例を説明する。
(1)補正の方法について
 上述した高速データ受信回路10は、位相ズレを検出した場合には、検出した位相ズレの量と同じ量だけ各DQS_DLL#A~#G信号の位相を補正した。しかし、実施例は、これに限定されるものではない。例えば、高速データ受信回路10は、位相ズレを検出した場合には、位相がズレた方向とは反対の方向に、DQ信号の半周期分だけ異なる位相を有する信号を、新たなDQS_DLL#A~#G信号として選択してもよい。
 例えば、図15は、補正処理の他の例を説明するための図である。図15に示す例では、データサンプリング回路F37、G38がデータサンプリング回路D35とは異なる情報を取得した。このような場合には、実施例2に係る高速データ受信回路10aは、各DQS_DLL#A~#G信号の位相を、DQ信号の位相の半分だけ進めるように選択しなおしてもよい。
 具体的には、高速データ受信回路10aは、初期位相調整処理において、DQ信号の情報が切り替わるタイミングの周期を判別し、判別した周期の半周期分だけ信号の位相を遅延させるDLYの数を計数する。そして、図15に示す例では、高速データ受信回路10aは、DQS_DLL#D信号として選択した信号を基準に、計数した数だけ前段のDLYから出力された信号を新たなDQS_DLL#D信号として選択しなおす。
 また、高速データ受信回路10aは、データサンプリング回路A31、B33がデータサンプリング回路D35とは異なる情報を取得した場合には、計数した数だけ後段のDLYから出力された信号を新たなDQS_DLL#D信号として選択しなおす。
 つまり、図15中γに示すように、いずれかのデータサンプリング回路において、データサンプリング回路D35とは異なる情報が取得された場合には、情報を取得するタイミングとDQ信号の情報が切り替わるタイミングとが近づいてしまっていると考えられる。そこで、高速データ受信回路10aは、図15中に示すように、位相ズレが検出された場合には、各DQS_DLL#A~#G信号の位相を、検出された位相ズレと反対の方向に、DQ信号の位相の半分だけ進めるように選択しなおす。
 このため、高速データ受信回路10aは、各DQS_DLL#A~#Gの位相を補正する回数を少なくすることができる。また、高速データ受信回路10aは、各DQS_DLL#A~#Gの位相差を小さくしても、適切な位相補正を行う事ができるため、DLL回路の規模を小さくすることができる。
 また、高速データ受信回路10aは、各DQS_DLL#A~#Gの位相差を小さくしても、適切な位相補正を行う事ができるため、DQ信号の周波数が大きい場合にも、データアイの適切な範囲内で情報を取得することができる。
(2)受信する信号について
 上述した高速データ受信回路10、10aは、DQ信号とDQS信号とを受信し、受信したDQS信号に基づくタイミングで、DQ信号から情報を取得していた。しかし、実施例はこれに限定されるものではなく、DQ信号とDQS信号とを用いるプロトコル以外にも、データが格納された信号とデータが格納されたタイミングを示す信号とを用いるプロトコルに適宜適用してよい。
(3)クロック位相調整回路について
上述したクロック位相調整回路20は、受信したDQS信号に基づいて、複数の異なる位相を有するクロック信号DQS_DLL#A~Gを生成していた。しかし、実施例は、これに限定されるものではない。
 例えば、クロック位相調整回路20は、DQS信号の位相に係らず、単に、所定の周波数を有しそれぞれ位相をずらした複数のDQS_DLL#A~G信号を出力する。ここで、クロック位相調整回路20が最初に出力する各信号の位相は、上述した初期位相補正処理によって決定される。その後、クロック位相調整回路20は、位相ズレ判定回路40によって通知された位相補正信号に基づいて、出力する各信号の位相を補正することとしてもよい。
(4)データサンプリング回路について
 上述した高速データ受信回路10、10aは、DQ信号から情報を取得する複数のデータサンプリング回路A31~G38を有していた。しかし、実施例はこれに限定されるものではなく、高速データ受信回路10、10aは、複数のデータサンプリング回路であれば、任意の数のデータサンプリング回路を有してもよい。
 また、上述した高速データ受信回路10、10aは、データサンプリング回路D35を基準面とし、DQ#D0~D3と他の回路が取得した情報とが一致するか否かを判別した。しかし、実施例はこれに限定されるものではなく、例えば、高速データ受信回路10、10aは、任意のデータサンプリング回路を基準面としてよい。
 また、上述した高速データ受信回路10、10aは、データサンプリング回路D35に比較器を有していなかった。しかし、実施例はこれに限定されるものではない。例えば、全てのデータサンプリング回路に対して同一の回路を適用し、選択された一つの回路を基準面としてよい。
(5)DLL回路について
 上述した高速データ受信回路10、10aは、DLL回路を用いて、受信したDQS信号から段階的に位相が異なる複数のクロックDQS_DLL#A~#Gを生成した。しかし、実施例はこれに限定されるものではなく、例えば、高速データ受信回路10、10aは、受信したDQS信号に基づいて、段階的に位相が異なる複数のクロックを生成する任意の方法を用いて、DQS_DLL#A~#Gを生成してよい。
(6)プログラム
 ところで、実施例1に係る高速データ受信回路10は、ハードウェアを利用して各種の処理を実現する場合を説明した。しかし、実施例はこれに限定されるものではなく、あらかじめ用意されたプログラムをデータ信号とクロック信号とを受信する情報処理装置やI/O(Input Output)装置制御回路で実行することによって実現するようにしてもよい。そこで、以下では、図16を用いて、実施例1に示した高速データ受信回路と同様の機能を有するプログラムを実行するコンピュータの一例を説明する。図16は、データ受信プログラムの一例を説明するための図である。
 図16に例示されたコンピュータ200は、RAM(Random Access Memory)120、ROM(Read Only Memory)130、CPU(Central Processing Unit)140がバス170で接続される。さらにバス170には、データ信号とクロック信号とを受信するためのI/O150が接続される。
 ROM130には、生成プログラム131、取得プログラム132、判定プログラム133、補正プログラム134があらかじめ保持される。CPU140が各プログラム131~134をROM130から読み出して実行することによって、図16に示す例では、各プログラム131~134は、生成プロセス141、取得プロセス142、判定プロセス143、補正プロセス144として機能する。なお、各プロセス141~144は、図2に示した各部10~40と同様の機能を発揮する。
 なお、本実施例で説明したデータ受信プログラムは、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。このプログラムは、インターネットなどのネットワークを介して配布することができる。また、このプログラムは、ハードディスク、フレキシブルディスク(FD)、CD-ROM(Compact Disc Read Only Memory)、MO(Magneto Optical Disc)、DVD(Digital Versatile Disc)などのコンピュータで読取可能な記録媒体に記録される。また、このプログラムは、コンピュータによって記録媒体から読み出されることによって実行することもできる。また、このプログラムは、ASIC、FPGA、SoC(System-on-a-chip)などのワンチップ上で実行されるマイクロコードとして実行することもできる。
 1 I/O装置制御回路
 10 高速データ受信回路
 20 クロック位相調整回路
 21 セレクタ
 30 位相ズレ検出回路
 31 データサンプリング回路A
 32 比較器A
 33 データサンプリング回路B
 34 データサンプリング回路C
 35 データサンプリング回路D
 36 データサンプリング回路E
 37 データサンプリング回路F
 38 データサンプリング回路G
 40 位相ズレ判定回路
 50 比較器

Claims (9)

  1.  互いに位相が異なる複数のクロックを生成する生成部と、
     前記生成部によって生成された複数のクロックのうち、それぞれ異なるクロックを用いて、受信したデータ信号からデータを取得する複数の取得部と、
     前記複数の取得部によって取得された各データがそれぞれ一致するか否かを判定する判定部と、
     前記判定部によって前記複数の取得部によって取得された各データに他のデータと一致しないデータが存在すると判定された場合に、データの不一致が発生しない方向に前記複数のクロックの位相を補正する補正部と、
     を有することを特徴とするデータ受信回路。
  2.  前記生成部は、前記複数のクロックとして基準クロックおよび当該基準クロックと段階的に位相が異なる複数のクロックを生成し、
     前記取得部は、前記生成部によって生成された基準クロック及び複数のクロックのうち、それぞれ異なるクロックを用いて、受信したデータ信号からデータを取得し、
     前記判定部は、前記複数の取得部によって取得された各データのうち、前記基準クロックを用いて取得したデータと他のデータとがそれぞれ一致するか否かを判定し、
     前記補正部は、前記判定部によって前記基準クロックを用いて取得したデータと一致しないと判定されたデータが存在する場合には、前記基準クロックの位相を基準として、前記一致しないデータを取得した際に用いたクロックの位相とは逆の方向に、前記基準クロックと複数のクロックとの位相を補正する
     ことを特徴とする請求項1に記載のデータ受信回路。
  3.  前記生成部は、
     受信したクロック信号の位相を段階的に変更した複数の信号を出力するDLL回路と、
     前記DLL回路から出力された複数の信号から、前記基準クロックと複数のクロックとを選択し、選択した各信号を出力するセレクタと
     を有し、
     前記補正部は、前記基準クロックを用いて取得したデータと一致しないと判定されたデータが存在する場合には、前記基準クロックの位相を基準として該一致しないデータを取得した際に用いたクロックの位相の向きと、該一致しないデータの数とを示す位相補正信号を前記生成部に送信し、
     前記セレクタは、前記補正部から送信された位相補正信号に応じて、新たな基準クロックと複数のクロックとを選択することを特徴とする請求項1又は2に記載のデータ受信回路。
  4.  前記セレクタは、前記DLL回路から出力された複数の信号から一つの信号を基準クロックとして選択するとともに、当該基準クロックの位相よりも進んだ位相を有する複数の信号と、当該基準クロックの位相よりも遅れた位相を有する複数の信号とをクロックとして選択することを特徴とする請求項3に記載のデータ受信回路。
  5.  前記セレクタは、前記位相補正信号を受信した場合には、直前に基準クロックとして選択した信号の位相を基準として、当該位相補正信号が示す向きとは反対の方向に、当該位相補正信号が示す数と同じ段数だけ位相がずれた信号を新たな基準クロックとして選択することを特徴とする請求項3に記載のデータ受信回路。
  6.  前記セレクタは、前記位相補正信号を受信した場合には、直前に基準クロックとして選択した信号の位相を基準として、当該位相補正信号が示す向きとは反対の方向に、前記データ信号の半周期分だけ位相がずれた信号を、新たな基準クロックとして選択することを特徴とする請求項3に記載のデータ受信回路。
  7.  互いに位相が異なる複数のクロックを生成する生成部と、
     前記生成部によって生成された複数のクロックのうち、それぞれ異なるクロックを用いて、受信したデータ信号からデータを取得する複数の取得部と、
     前記複数の取得部によって取得された各データがそれぞれ一致するか否かを判定する判定部と、
     前記判定部によって前記複数の取得部によって取得された各データに、他のデータと一致しないデータが存在すると判定された場合に、データの不一致が発生しない方向に前記複数のクロックの位相を補正する補正部と、
     を有することを特徴とするデータ受信回路と、
     I/O装置制御回路と、
     I/O装置と
     を備えることを特徴とする情報処理装置。
  8.  データ信号を受信する情報処理装置によって実行されるプログラムであって、
     互いに位相が異なる複数のクロックを生成する生成手順と、
     前記生成手順によって生成された複数のクロックのうち、それぞれ異なるクロックを用いて、前記受信したデータ信号から複数のデータを取得する取得手順と、
     前記取得手順によって取得された各データがそれぞれ一致するか否かを判定する判定手順と、
     前記判定手順によって前記取得手順によって取得された複数のデータに他のデータと一致しないデータが存在すると判定された場合に、データの不一致が発生しない方向に前記複数のクロックの位相を補正する補正手順と、
     を実行させることを特徴とするデータ受信プログラム。
  9.  データ信号を受信する情報処理装置によって実行される方法であって、
     互いに位相が異なる複数のクロックを生成する生成し、
     前記生成した複数のクロックのうち、それぞれ異なるクロックを用いて、前記受信したデータ信号から複数のデータを取得し、
     前記取得した各データがそれぞれ一致するか否かを判定し、
     前記取得した各データに他のデータと一致しないデータが存在すると判定した場合に、データの不一致が発生しない方向に前記生成する複数のクロックの位相を補正することを特徴とするデータ受信方法。
PCT/JP2010/073046 2010-12-21 2010-12-21 データ受信回路、情報処理装置、データ受信プログラムおよびデータ受信方法 WO2012086017A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2012549516A JP5598551B2 (ja) 2010-12-21 2010-12-21 データ受信回路、情報処理装置、データ受信プログラムおよびデータ受信方法
EP10860904.1A EP2658162A1 (en) 2010-12-21 2010-12-21 Data reception circuit, information processing device, data reception program and data reception method
PCT/JP2010/073046 WO2012086017A1 (ja) 2010-12-21 2010-12-21 データ受信回路、情報処理装置、データ受信プログラムおよびデータ受信方法
US13/916,089 US8855242B2 (en) 2010-12-21 2013-06-12 Data receiving circuit, information processing apparatus, a computer readable storage medium, and data receiving method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2010/073046 WO2012086017A1 (ja) 2010-12-21 2010-12-21 データ受信回路、情報処理装置、データ受信プログラムおよびデータ受信方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13/916,089 Continuation US8855242B2 (en) 2010-12-21 2013-06-12 Data receiving circuit, information processing apparatus, a computer readable storage medium, and data receiving method

Publications (1)

Publication Number Publication Date
WO2012086017A1 true WO2012086017A1 (ja) 2012-06-28

Family

ID=46313321

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/073046 WO2012086017A1 (ja) 2010-12-21 2010-12-21 データ受信回路、情報処理装置、データ受信プログラムおよびデータ受信方法

Country Status (4)

Country Link
US (1) US8855242B2 (ja)
EP (1) EP2658162A1 (ja)
JP (1) JP5598551B2 (ja)
WO (1) WO2012086017A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021111886A (ja) * 2020-01-10 2021-08-02 アイホン株式会社 有線通信システム

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150018109A (ko) * 2013-08-09 2015-02-23 에스케이하이닉스 주식회사 반도체 메모리 장치
KR102478044B1 (ko) * 2018-05-18 2022-12-16 에스케이하이닉스 주식회사 반도체 시스템

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001069127A (ja) * 1999-06-24 2001-03-16 Nec Corp 高速データ受信回路
JP2002531966A (ja) 1998-11-30 2002-09-24 マイクロン・テクノロジー・インコーポレーテッド ビット対ビットのタイミング補正を用いる高速データキャプチャ方法および装置ならびにメモリデバイス
JP2008068851A (ja) 2006-09-15 2008-03-27 Katsuyoshi Kishikawa 多機能台車

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3320651B2 (ja) * 1998-05-06 2002-09-03 富士通株式会社 半導体装置
US6194969B1 (en) * 1999-05-19 2001-02-27 Sun Microsystems, Inc. System and method for providing master and slave phase-aligned clocks
US6262611B1 (en) * 1999-06-24 2001-07-17 Nec Corporation High-speed data receiving circuit and method
JP2003050738A (ja) * 2001-08-03 2003-02-21 Elpida Memory Inc キャリブレーション方法及びメモリシステム
US7515656B2 (en) * 2002-04-15 2009-04-07 Fujitsu Limited Clock recovery circuit and data receiving circuit
JP4652729B2 (ja) * 2004-06-28 2011-03-16 富士通セミコンダクター株式会社 半導体装置
US7474716B2 (en) * 2004-07-08 2009-01-06 International Business Machines Corporation Data recovery circuits using oversampling for maverick edge detection/suppression
JP4456432B2 (ja) * 2004-08-02 2010-04-28 富士通株式会社 基準信号を用いて同期伝送を行う装置および方法
US7543172B2 (en) * 2004-12-21 2009-06-02 Rambus Inc. Strobe masking in a signaling system having multiple clock domains
CN101536310B (zh) * 2006-12-05 2012-04-25 富士通半导体股份有限公司 数字dll电路
CN101834600B (zh) * 2010-04-21 2012-04-04 四川和芯微电子股份有限公司 多相时钟相位均匀性自修正系统及方法
US8537949B1 (en) * 2010-06-30 2013-09-17 Netlogic Microsystems, Inc. Systems, circuits and methods for filtering signals to compensate for channel effects

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002531966A (ja) 1998-11-30 2002-09-24 マイクロン・テクノロジー・インコーポレーテッド ビット対ビットのタイミング補正を用いる高速データキャプチャ方法および装置ならびにメモリデバイス
JP2001069127A (ja) * 1999-06-24 2001-03-16 Nec Corp 高速データ受信回路
JP2008068851A (ja) 2006-09-15 2008-03-27 Katsuyoshi Kishikawa 多機能台車

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021111886A (ja) * 2020-01-10 2021-08-02 アイホン株式会社 有線通信システム
JP7341069B2 (ja) 2020-01-10 2023-09-08 アイホン株式会社 有線通信システム

Also Published As

Publication number Publication date
US8855242B2 (en) 2014-10-07
JPWO2012086017A1 (ja) 2014-05-22
US20130272454A1 (en) 2013-10-17
EP2658162A1 (en) 2013-10-30
JP5598551B2 (ja) 2014-10-01

Similar Documents

Publication Publication Date Title
US8644085B2 (en) Duty cycle distortion correction
KR101030275B1 (ko) 듀티 보정 회로 및 이를 포함하는 클럭 보정 회로
US9030242B2 (en) Data output timing control circuit for semiconductor apparatus
US7612593B2 (en) Duty detection circuit
JP4951534B2 (ja) 試験装置および試験方法
US20140177359A1 (en) Method and apparatus for aligning a clock signal and a data strobe signal in a memory system
US8502577B2 (en) Phase correction circuit, data alignment circuit and method of aligning data using the same
KR102002462B1 (ko) 지연 고정 루프 회로 및 그 지연 고정 방법
US8004336B2 (en) Semiconductor memory device and method for operating the same
US9602112B2 (en) Clock delay detecting circuit and semiconductor apparatus using the same
US20120216095A1 (en) Memory device and memory control unit
US20120311372A1 (en) Memory access circuit and memory access system
JP5598551B2 (ja) データ受信回路、情報処理装置、データ受信プログラムおよびデータ受信方法
JP2013109637A (ja) メモリインターフェース回路、および、そのメモリインターフェース回路の動作方法
JP2007226308A (ja) インタフェース回路及びそのインタフェース回路を備えた記憶制御装置
JP2017079405A (ja) 周波数検出方法
US9654114B2 (en) Transmission circuit, integrated circuit, and parallel-to-serial conversion method
JP2013070323A (ja) Cdr回路及びcdr方法
US20120249199A1 (en) Internal clock generator and operating method thereof
JP6631117B2 (ja) 半導体装置、デマルチプレクサ、半導体回路、データ処理方法及び検査方法
JP6167855B2 (ja) 信号制御回路、情報処理装置及び信号制御方法
JP2020046800A (ja) 半導体装置
JP2015216439A (ja) 受信回路
WO2013038562A1 (ja) 伝送システム、送信装置、受信装置および伝送方法
US10505550B1 (en) Method and apparatus of operating synchronizing high-speed clock dividers to correct clock skew

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10860904

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2012549516

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 2010860904

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE