WO2011077563A1 - 情報処理装置又は情報処理方法 - Google Patents
情報処理装置又は情報処理方法 Download PDFInfo
- Publication number
- WO2011077563A1 WO2011077563A1 PCT/JP2009/071656 JP2009071656W WO2011077563A1 WO 2011077563 A1 WO2011077563 A1 WO 2011077563A1 JP 2009071656 W JP2009071656 W JP 2009071656W WO 2011077563 A1 WO2011077563 A1 WO 2011077563A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- external device
- data
- clock
- information processing
- processing apparatus
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/003—Modifications for increasing the reliability for protection
- H03K19/00323—Delay compensation
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03L—AUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
- H03L7/00—Automatic control of frequency or phase; Synchronisation
- H03L7/06—Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
- H03L7/07—Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop using several loops, e.g. for redundant clock signal generation
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03L—AUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
- H03L7/00—Automatic control of frequency or phase; Synchronisation
- H03L7/06—Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
- H03L7/08—Details of the phase-locked loop
- H03L7/0805—Details of the phase-locked loop the loop being adapted to provide an additional control signal for use outside the loop
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03L—AUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
- H03L7/00—Automatic control of frequency or phase; Synchronisation
- H03L7/06—Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
- H03L7/08—Details of the phase-locked loop
- H03L7/081—Details of the phase-locked loop provided with an additional controlled phase shifter
- H03L7/0812—Details of the phase-locked loop provided with an additional controlled phase shifter and where no voltage or current controlled oscillator is used
Definitions
- the present invention relates to an information processing apparatus or information processing method for capturing an external device data output by an information processing apparatus such as an external device controller supplying a clock to the external device in synchronization with the clock.
- Patent Document 1 for an information processing apparatus having an external device controller, when the external device is communicably connected to the information processing apparatus, the information processing apparatus operates from the external device controller to the external device.
- the external device controller is configured to take in the data output from the external device.
- the external device controller temporarily stops the supply of data from the external device to the external device controller by temporarily stopping the clock supply to the external device (corresponding to clock gating). You can stop. For example, when data is stored up to the allowable capacity of the reception buffer in the external device controller, the external device controller can stop the clock supply and stop the data supply. Overflow can be suppressed.
- an information processing apparatus provides: Supply means for supplying a clock to an external device; Control means for transmitting a control signal for stopping the supply of the clock to the supply means; Receiving means for receiving data output by the external device in synchronization with the clock, and stopping capturing of the data in response to the control signal; A first delay means for correcting a phase shift of data received by the receiving means; a second delay means for correcting a shift in a unit of a period of the control signal; It is characterized by having.
- an information processing method includes: An information processing method in an information processing apparatus having an external device controller that supplies a clock to an external device and receives data output by the external device in synchronization with the clock, A first delay step of adjusting a phase shift of data received by the external device controller; After the first delay step, a second delay step of adjusting a shift of control in which the external device controller stops the data capture; It is characterized by having.
- the present invention even if the data received by the information processing apparatus from the external device is delayed by one cycle or more with respect to the clock of the information processing apparatus, data loss on the information processing apparatus side is suppressed.
- the block diagram and timing chart of the skew control part of a reference example are shown.
- 7 is a timing chart in which an output clock is gated based on a gating pattern during reception of a calibration pattern.
- Timing chart which shows the correlation of the number of gating cycles and the received calibration pattern. It is a timing chart which shows the correlation of the number of gating cycles and the received calibration pattern. It is a timing chart which shows the correlation of the cycle number between gating and the received calibration pattern. It is a timing chart which shows the correlation of the cycle number between gating and the received calibration pattern. It is a timing chart which shows the correlation of the cycle number between gating and the received calibration pattern. It is a timing chart which shows the correlation of the cycle number between gating and the received calibration pattern. 6 is a timing chart showing a correlation between a gating start position / gating end position and a received calibration pattern.
- 6 is a timing chart showing a correlation between a gating start position / gating end position and a received calibration pattern. 6 is a timing chart showing a correlation between a gating start position / gating end position and a received calibration pattern. It is a timing chart of the signal which an external device controller and an external device handle when the correct cycle setting is used. It is the schematic of a system configuration
- FIG. 19 is a block diagram of a system including an information processing apparatus that communicates with the external device 107.
- the ASIC 100 that is an LSI having a function of communicating with the external device 107 includes a CPU 101, a DRAM controller 104, a DMA controller 102, an external device controller 103, and a CLOCK generator 105.
- ASIC is an abbreviation for Application Specific Integrated Circuit
- DMA is an abbreviation for Direct Memory Access
- CLOCK generator 105 as an oscillation means is a clock used by CPU 101, DMA controller 102, external device controller 103 and DRAM controller 104 (cpu_clock dmac_clock 114, host_clock 115, dram_clock 116) are generated and supplied.
- the CPU 101 performs register access to the external device controller 103, the DMA controller 102, and the DRAM controller 104 via the CPU I / F 110.
- the DMA controller 102 performs data transfer with the DRAM controller 104 via the CPU I / F 110.
- the DRAM controller 104 performs data transfer with the DRAM 106 via the DRAM I / F 117.
- the external device controller 103 performs data transfer with the DMA controller 102 via the DMA I / F 111. Further, the external device controller 103 performs data transfer with the external device 107 via the external device I / F 112.
- FIG. 1 shows the configuration of an external device controller 103 according to an embodiment of the present invention.
- the external device controller 103 receives the host clock 115 (host_clock in the figure) from the CLOCK generator 105.
- the host clock 115 is connected to each block in the external device controller 103, and each block of the external device controller 103 operates in synchronization with this host clock 115.
- the CPU I / F control unit 201 receives data, commands, and register access transmitted from the CPU 101 to the card, and transmits commands and data received from the card to the CPU 101.
- the DMA I / F control unit 111 receives data to be transmitted to the external device 107 from the DMA controller 102, while transmitting data to be received from the external device 107 to the DMA controller 102.
- the external device controller 103 exchanges commands with the external device 107 via the transmission command parallel / serial conversion unit 125 and the reception command serial / parallel conversion unit 126.
- the CPU I / F control unit 201 transmits the transmission command 223 (s_cmd) in parallel format received from the CPU 101 via the CPU I / F 110 to the transmission command parallel serial conversion unit 125 (hereinafter referred to as transmission command PS conversion unit).
- the transmission command PS conversion unit 125 converts the received transmission command 223 in the parallel format into a transmission command 224 (s_cmd_data) in the serial format and transmits it to the external device 107.
- the external device 107 decodes the received serial format transmission command 224 and detects the transmission command. Further, the external device 107 transmits detection information indicating the detection result of the transmission command to the external device controller 103 as a serial reception command 226 (r_cmd_data).
- reception command serial / parallel conversion unit 126 receives the serial format reception command 226 output from the external device 107, converts it into a parallel format reception command 225 (r_cmd_reg), and converts it into a CPU I / F. It transmits to CPU101 via the control part 201 and CPU I / F110.
- the external device controller 103 exchanges data with the external device 107 via the transmission buffer 207, the transmission data parallel / serial conversion unit 208, the skew control unit 211, the reception data serial / parallel conversion unit 210, and the reception buffer 209.
- an output clock control unit 213 and an output clock gating unit 214 are provided to de-assert the output clock 244 to stop data from the external device 107.
- the external device controller 103 has a gating mode setting register 605 and a gating pattern setting register 606 in order to perform effective cycle adjustment.
- the external device controller 103 includes a skew control unit 211 and a skew setting register 212 in order to perform skew adjustment (correction).
- the skew adjustment (correction) refers to data input to the reception data serial / parallel conversion unit 210 (hereinafter referred to as reception data SP conversion unit) or data fetch timing (latch timing) of the external device controller 103 (skew control unit 211). ) (With respect to the host clock 115) is adjusted (corrected) by a delay within one cycle.
- the external device controller 103 includes a cycle setting register 601, a cycle calculation unit 602, a cycle control unit 603, and an expected value setting register 604 in order to perform cycle adjustment (correction).
- the cycle adjustment (correction) refers to the reception data SP conversion unit 210 by delaying the reception enable signal 250 (rcv_en), which is a control signal of the reception data SP conversion unit 210, in units of cycles (relative to the host clock 115). This indicates that the data acquisition stop timing and the data acquisition restart timing are adjusted (corrected).
- the skew setting register 212 receives and holds the skew setting value 227 (skew_reg) from the CPU I / F control unit 201.
- the skew control unit 211 receives the skew selection value 238 (skew_sel) from the skew setting register 212, and receives the serial format received data 236 (d2h_data, hereinafter simply referred to as received data 236) from the external device 107 according to the set value. Delay).
- the cycle setting register 601 receives and holds the cycle setting value 256 (cycle_reg) from the CPU I / F control unit 201.
- the expected value setting register 604 receives and holds the expected value setting value 253 (exp_reg) from the CPU I / F control unit 201.
- An example of the expected value setting value 253 is shown in FIG.
- the pattern received when the difference from the actual number of cycles is 0 matches the true value (pattern output by the external device 107), but the pattern received by the external device controller 103 is the cycle when calibration is performed. It changes according to the difference between the set value and the correct cycle set value (corresponding to a cycle delay amount described later).
- the cycle calculation unit 602 receives the cycle setting value 255 (cycle_val) from the cycle setting register 601 and the expected value 254 (exp_pattern) from the expected value setting register 604, and calculates a desirable cycle setting value. Specifically, the received calibration pattern and the expected value are compared to determine whether they match. The difference between the cycle setting value corresponding to the expected value when the values match and the correct cycle setting value is obtained. Thereafter, the correct cycle setting value is calculated by adding the obtained difference to the cycle setting value at the time of calibration.
- the cycle control unit 603 receives the correct cycle selection value 249 (cycle_sel) from the cycle calculation unit 602. Further, the cycle control unit 603 receives an output clock enable signal 243 (clock control signal) from the output clock control unit 213.
- the external device controller 103 When the external device controller 103 starts data reception, the external device controller 103 first transmits a command for instructing data reception from the external device 107 to the external device 107 by the command transmission / reception process described above. Further, the external device 107 transmits a response to this transmission command to the external device controller 103 as a reception command, and further transmits data.
- ⁇ Receive data as follows. First, the skew control unit 211 receives serial format received data 236 (d2h_data) transmitted from the external device 107.
- the skew control unit 211 performs skew adjustment between the serial format received data 236 and the clock 115 (host_clk) of the external device controller (details will be described later).
- the reception data 235 after skew adjustment is input to the reception data SP conversion unit 210.
- the reception data SP conversion unit 210 is configured to receive a reception enable signal 250 (details will be described later) obtained by delaying the output clock enable signal 243 output from the output clock control unit 213 by a cycle control unit 603 described later. ing. If the reception enable signal 250 is asserted, the reception data SP converter 210 receives the received skew-adjusted reception data 235 and converts it into parallel reception data 234 (r_data_buf).
- the reception data SP conversion unit 210 has a K-stage shift register (serial input parallel output type flip-flop) (not shown), and is configured to send data received in serial format as Kbit parallel format data. Yes. Therefore, if the reception enable signal continues to be asserted, the reception data SP conversion unit 210 transmits parallel data once in K cycles.
- the timing at which the received data SP converter 210 captures data (external device data) from the external device 107 corresponds to the latch timing of the first-stage (0 bit) flip-flop (as viewed from the external device 107 side). I can say that.
- the reception buffer 209 as a holding means is configured to be able to notify that it cannot hold more data than the data currently held by the reception buffer full signal 241. Therefore, if the reception enable signal 250 is asserted and the reception buffer full signal 241 (r_buff_full) of the reception buffer 209 is deasserted, the reception data SP conversion unit 210 transmits the reception data 234 in parallel format to the reception buffer 209. On the other hand, if reception enable signal 250 is not asserted, reception data SP converter 210 stops receiving reception data 235 after skew adjustment.
- reception data SP conversion unit 210 When the reception data SP conversion unit 210 starts receiving data, it asserts a reception status signal 239 (rcv_status). The reception data SP conversion unit 210 continues to assert the reception status signal 239 until the final data is received from the external device 107, and deasserts it when the end bit of the reception data 235 after skew adjustment is detected. When the reception data SP converter 210 transmits the reception data 234 in parallel format to the reception buffer 209, the reception buffer 209 deasserts the reception buffer empty signal 233 (r_buff_emp).
- the reception buffer 209 receives and holds the reception data 234 (r_data_buff) converted into the parallel format from the reception data SP conversion unit 210.
- the reception buffer 209 asserts the reception buffer full signal 241 to the output clock control unit 213 and the reception data SP conversion unit 210.
- the reception buffer 209 asserts a reception buffer empty signal 233 to the DMA I / F control unit 206.
- the DMA I / F control unit 206 receives the deassertion of the reception buffer empty signal 233 of the reception buffer 209 and detects that reception data from the external device 107 remains in the reception buffer 209. Then, the reception data 232 (r_data_dma) in parallel format held in the reception buffer 209 is received from the reception buffer 209 and transmitted to the DMA I / F 111. However, when the reception buffer 209 becomes empty, reception of data is stopped. If data reception is not stopped, a buffer underrun of the reception buffer 209 may occur. Accordingly, when the reception buffer empty signal 233 of the reception buffer 209 is asserted, the DMA I / F control unit 206 stops receiving the parallel format reception data 232 and transmits the data to the DMA I / F 111. To stop.
- the DMA I / F control unit 206 resumes reception of the parallel reception data 232 and resumes transmission of reception data to the DMA I / F 111.
- reception data SP conversion unit 210 is receiving data is detected by asserting the reception status signal 239.
- the reception data SP converter 210 asserts the reception status signal 239 when the first reception data is received, continues to assert until the final data is received, and deasserts when the final data is received. For this reason, the output clock enable signal 243 is not deasserted while waiting for received data (waiting for the start bit detection).
- the external device 107 receives the deassertion of the output clock 244 (dev_clk) and stops the transmission of the reception data 237 (d2h_data ′). Data reception continues to stop until the reception buffer full signal 241 (r_buff_full) of the reception buffer 209 is deasserted. When the reception buffer full signal 241 (r_buff_full) of the reception buffer 209 is deasserted, the reception data SP conversion unit 210 resumes data reception. Then, the output clock gating unit 214 cancels the gating of the output clock 244, and the external device 107 resumes transmission of the reception data 237.
- FIG. 2A is a block diagram of the skew control unit 211.
- the skew control unit 211 receives the host clock 115 (host_clk) from the CLOCK generator 105 (FIG. 19).
- the host clock 115 is delayed by N1 delay elements 216 (first delay means) whose inputs and outputs are connected in series.
- the output of each delay element 216 is input to the delay selection unit 217, and the delay element 216 used for output is selected based on the value of the skew selection value 238 (skew_sel).
- the selected delayed clock signal 246 (clk_with_skew) is input to the flip-flop 218 as a clock.
- the serial format received data 236 (d2h_data) transmitted from the external device is received by the flip-flop 218, and is synchronized with the delayed clock signal 246 (clk_with_skew) by the flip-flop 218.
- the synchronized serial format reception data is output to the reception data SP conversion unit 210 by the skew control unit 211 as serial format reception data 235 after skew adjustment (d2h_data_1d, hereinafter referred to as reception data 235 after skew adjustment).
- the N1 delay elements of the skew control unit 211 preferably cause a delay obtained by dividing one clock (of the host clock 115) into N1 equal parts or a little smaller than that.
- FIG. 2B shows a timing chart of signals handled by the skew control unit 211 when the skew setting values are 0, 1, and 2.
- each signal in FIG. 2B is associated with the codes in FIG. 1 and FIG. 2).
- FIG. 3A shows a schematic configuration of the cycle control unit 603.
- the cycle control unit 603 has N2 flip-flops 701 (second delay means) whose inputs and outputs are connected in series.
- the flip-flop 701 causes the output clock enable signal 243 to be delayed by one clock.
- the cycle control unit 603 delays the input output clock enable signal 243 by the flip-flop 701 by the number of cycles indicated by the cycle setting value 256.
- the delayed output clock enable signal 243 is input to the reception data SP conversion unit 210 as the reception enable signal 250.
- FIG. 3B shows waveforms of various signals handled by the cycle control unit 603.
- the respective signals in FIG. 3B are described in correspondence with the reference numerals in FIG. 1, they are host_clk 115, dev_clk_en 243, and rcv_en 250 in order from the top.
- the cycle control unit 603 uses the selector 702 to select the output that has passed through the two flip-flops 701, thereby delaying the output clock enable signal 243 by two cycles and receiving the reception enable signal. It outputs as 250. Since there are N2 flip-flops 701 in the configuration of FIG. 3, the output clock enable signal 243 can be delayed by an integral multiple of one cycle (up to N2 cycles).
- the reception data SP conversion unit 210 determines the data acquisition stop timing by deasserting the reception enable signal 250, and determines the data acquisition restart timing when the reception enable signal 250 is reasserted.
- the gating mode setting register 605 receives the gating mode register setting value (247 gate_reg) from the CPU I / F control unit 201 and holds it.
- the gating mode setting register 605 outputs the received gating mode register setting value 247 to the output clock control unit 213 as the gating mode setting value (251 gate_mode).
- the gating pattern setting register 606 receives the gating pattern register setting value (248 pattern_reg) from the CPU I / F control unit 201 and holds it.
- the received gating pattern register setting value 248 is output to the output clock control unit 213 as a gating pattern setting value (252 gate_pattern).
- the gating pattern register setting value 248 is information (gating information) for generating a clock gating pattern, and indicates how to perform clock gating. (Details are information indicating L, N, S, and E described later in FIG. 5.)
- FIG. 4B shows the configuration of the output clock controller 213 that functions as a selection means in this embodiment.
- the first clock control unit 221 receives the reception buffer full signal 241 and the reception status signal 239, and performs clock control similar to that of Patent Document 1 and the reference example (see FIG. 21) (first operation). Three clock control mode).
- the second clock control unit 222 performs clock control to be described later based on the reception status signal 239 and the gating pattern 252 (first clock control mode).
- the third clock control unit 223 controls to generate an output clock enable signal 243 that controls to output the host clock 115 of the external device controller without stopping (second clock). Control mode).
- the second clock control unit 222 determines how many bits the reception data SP conversion unit 210 has received. If the condition that the gating pattern 252 indicates to perform gating is not satisfied, the output clock enable signal 243 is generated.
- the clock control selection unit 220 is a selector, and the first clock control unit 221, the second clock control unit 222, and the third clock control according to the set value indicated by the gating mode 251 from the gating mode setting register.
- One of the units 223 is selectively functioned.
- the external device controller 103 and the external device 107 exchange serial commands or serial data with the format shown in FIG. In the following description, it is assumed that parallel commands and parallel data have the same format.
- the transmission command 224 includes a 1-bit start bit, an N-bit transmission command, an M-bit CRC (cyclic redundancy check signal), and a 1-bit end bit.
- the transmission command PS conversion unit 125 detects reception of the transmission command 223 in parallel format, it first transmits a start bit of 1 bit. Subsequently, the N-bit parallel transmission command 223 is converted into a serial transmission command 224 and transmitted. The transmission command PS conversion unit 125 performs CRC calculation together with transmission of a serial transmission command. Then, after transmitting the serial transmission command 224, the calculated M-bit CRC is transmitted. Finally, 1 end bit is transmitted to complete the command transmission.
- the format of the serial reception command 226 is also as shown in FIG. 21B. However, since the reception command and the transmission command do not need to match, the command length and CRC length of the reception command and the transmission command are as follows. It can be different.
- the reception command SP conversion unit 126 detects a 1-bit start bit and starts receiving a command. Subsequently, an N-bit serial format reception command is received and converted into a parallel format reception command. The reception command SP conversion unit 126 performs CRC calculation together with reception of a serial reception command. After receiving the reception command in the serial format, the calculated CRC is compared with the transmitted M-bit CRC (cyclic redundancy check) to detect a CRC error. Finally, 1 end bit is received and command reception is completed.
- the transmission data PS conversion unit 208 When the transmission data PS conversion unit 208 receives the parallel format transmission data 230 (s_data_buf) from the transmission buffer 207, the transmission data PS conversion unit 208 converts the parallel format transmission data into the serial format transmission data 231 in the same manner as the transmission command PS conversion unit 125. Transmit to the external device 107. However, the transmission data length and CRC length may be different from the transmission command.
- the format of the received data is as shown in FIG. However, the length of the received data and the length of the CRC may be different from the transmission command.
- step S101 when the external device controller 103 is instructed to start calibration by the CPU 101, the external device controller 103 transmits a transmission command for causing the external device 107 to output a calibration pattern to the external device 107.
- the external device 107 transmits a reception command for the calibration transmission command to the external device controller 103.
- the external device 107 transmits a predetermined calibration pattern to the external device controller 103 instead of the serial received data 237.
- the external device controller 103 receives the calibration pattern according to the data reception flow described above.
- the received calibration pattern is written into the DRAM 106 via the DMA controller 102 and the DRAM controller 104.
- the calibration pattern is stored in advance on the external device 107 side, and the external device 107 transmits the stored calibration pattern when receiving a command to start calibration.
- FIG. 23 shows waveforms during the calibration sequence when the received data 236 has a delay of one cycle or more in the reference example.
- the case where the received data 236 has a delay of one cycle or more corresponds to the case where a wiring delay of 1 ⁇ 2 cycle or more occurs between the external device controller 103 and the external device 107.
- 21 in correspondence with the reference numerals in FIG. 21 and FIG. Note that there is a difference between the timing of the fetched clock and the fetched data, but this indicates a delay until the data is fetched into the flip-flop when fetching with reference to the clock edge in an actual circuit.
- the clock 245 (dev_clk ′) input to the external device 107 is delayed by 1 ⁇ 2 cycle with respect to the output clock 244 (dev_clk) output from the external device controller 103. Further, the reception data 236 (d2h_data) received by the external device controller is delayed by 1 ⁇ 2 cycle with respect to the reception data 237 (d2h_data ′) transmitted by the external device.
- the calibration pattern is usually sufficiently smaller than the size of the reception buffer 209. For this reason, the external device controller 103 in the reference example does not stop the output clock during calibration. (Even if the calibration pattern is larger than the size of the reception buffer 209, whether the output clock stops depends on the transfer rate of the DMA controller 102. Therefore, the output clock 244 stops during calibration. It is difficult to occur.)
- the timing chart of FIG. 24 shows the waveform of a signal when the external device controller 103 is actually receiving data from the external device 107 when the received data 236 has a one-cycle delay as in FIG. Yes.
- the correspondence of each signal with FIG. 21 and FIG. 2 is the same as FIG.
- the data entering the reception buffer 209 (which is a reference when issuing the reception buffer full signal 241) is delayed by a half cycle when entering the external device controller 103 from the external device 107. Then, in addition to the delay until the output clock 244 is gated after the reception buffer full signal 241 is asserted, 1 ⁇ 2 cycle until the external device 107 can recognize that the output clock 244 has been gated. There is a delay. As a result, in order for the external device 107 to recognize that the external device controller 103 is requesting to stop data transmission, it is delayed by the sum of these delays, so that “D1” and “D2” are transmitted. .
- the output clock enable signal 243 is asserted, and the gating of the output clock 244 is released. Since the output clock 244 is gated on the basis of the fall, the output clock 244 rises after 1/2 of the release. However, although the gating of the output clock 244 is canceled, the serial format received data “D2” continues to be transmitted from the external device 107 due to the delay between the external device 107 and the external device controller.
- the reception data SP conversion unit 210 receives the assertion of the output clock enable signal 243 and immediately resumes reception of reception data in the serial format. Therefore, the reception data SP converter 210 receives the serial reception data “D2” twice. Looking at the received data 234 in parallel format, it can be seen that D2 has been received twice.
- the external device controller 103 of the reference example may not be able to detect the presence or absence of a delay of one cycle or more generated in the reception data 236 in the calibration sequence.
- FIG. 24 is based on the premise that the period until the reception buffer full signal 241 is asserted and deasserted is extremely short, and the reception buffer is extremely small. is there.
- skew adjustment is performed while the third clock control unit 223 is functioning, and then cycle adjustment is performed while the second clock control unit 222 is functioning. If it is known that the calibration pattern is sufficiently smaller than the size of the reception buffer and clock gating does not always occur during reception of the calibration pattern, the first clock control means instead of the third clock control means May be used.
- the skew adjustment is an adjustment to correct a phase shift between the host clock 115 and the reception data 236 by the configuration shown in FIG.
- the cycle adjustment adjustment is performed so as to correct a shift in a cycle unit between the host clock 115 and the reception data 236 by the configuration shown in FIG.
- a period shift (corresponding to a shift in data capture timing or a shift in data capture restart timing) is simply referred to as a delay cycle number (cycle delay amount).
- step S1201 the CPU 101 sets the clock gating mode to the external device controller 103 to a calibration mode (mode using the third clock control unit) that does not stop the clock.
- step S1202 the CPU 101 instructs the external device controller 103 to acquire a calibration pattern.
- the calibration pattern acquisition process by the external device controller 103 is the same as in the reference example.
- step S1203 the CPU 101 compares the calibration pattern read out from the ROM or RAM with the calibration pattern actually received. If the comparison results match, the skew setting is considered correct and the skew adjustment flow is completed.
- the CPU 101 changes the value of the skew setting register 212 in step S1204, changes the skew setting, and proceeds to step S1202.
- the skew setting is changed, and the processes in steps S1202 and S1203 are repeated until the patterns match in step S1203.
- step S1205 the CPU 101 sets the clock gating mode of the external device controller 103 to a calibration mode for stopping the clock based on the value indicated by the reception status signal 239 and the gating pattern 252 (a mode for causing the second clock control unit to function). ). Further, the CPU 101 sets a gating pattern register set value 248 for the external device controller 103. In step S1206, the CPU 101 instructs the external device controller 103 to acquire a calibration pattern.
- the outline of the calibration pattern acquisition process by the external device controller 103 is the same as in the reference example.
- the output clock control unit 213 issues an output clock enable signal 243 according to the gating pattern 252.
- the output clock gating unit 214 gates the output clock 244 according to the output clock enable signal 243 during reception of the calibration pattern.
- the cycle calculation unit 602 completes acquisition of the calibration pattern in step S1206, the process proceeds to step S1207.
- step S ⁇ b> 1207 the cycle calculation unit 602 compares the expected value that the CPU 101 has read from the DRAM 106 and the like and stored in the expected value setting register 604 as the calibration pattern scheduled to be received with the actually received calibration pattern. I do.
- the actually received calibration pattern differs depending on the gating pattern, the calibration pattern (expected value), and the difference between the current cycle setting value and the actual delay cycle. (Details will be described later.)
- FIG. 20 shows an example in which “01010101” is used as the calibration pattern.
- the external device controller 103 can receive the calibration pattern as “01010101”.
- the calibration pattern is received as “01011101”.
- the cycle calculation unit 602 compares the calibration pattern received by the above-described process with the calibration pattern (expected value) to be received, and detects the presence or absence of delay. If there is a delay, a calibration pattern (see FIG. 20) when the delay occurs (see FIG. 20) is detected.
- the external device controller 103 gates the output clock 244 based on the gating pattern regardless of the assertion of the reception buffer full signal 241. If the cycle setting or skew setting is incorrect, an incorrect calibration pattern is acquired as it is (so that it can be seen that the calibration is not successful).
- the CPU 101 stores “0” in the clock control selection unit in the gating mode setting register 605 in order to switch to the mode using the first clock control unit 221. To prepare for data transmission / reception.
- the external device controller 103 can detect the presence or absence of a delay even if a delay of one clock cycle or more occurs in the reception data 236. Therefore, various parameters for transmitting and receiving data without missing it. (Skew setting, cycle setting) can be set.
- the delay between the cycles is performed while performing the clock gating based on the gating pattern.
- Calibration can be performed efficiently by making adjustments. If the skew adjustment and the cycle adjustment are not separated as described above, the calibration pattern must be received and compared (N1 ⁇ N2 times at the maximum) until the expected value matches the received data 236, and the calibration is performed. Processing takes considerable time.
- skew adjustment is performed by the first clock controller 221 without using the third clock controller 223 in steps S1201 to S1204 in FIG. May be. (This is because clock gating does not always occur even if the first clock control unit 221 is used during reception of the calibration pattern.) Even in this case, the processing shown in FIG. 21A is performed by the processing of steps S1205 to S1208. Compared with the reference example, calibration is more likely to succeed (reducing the number of times).
- the accuracy of the calibration process increases as the gating pattern and calibration pattern setting of the output clock 244 are appropriately set.
- the reception data “D1” cannot be received, and instead, the reception data “D2” has been received twice. Since data replacement occurs in this way, when a comparison is made with the received data 236 using an unfavorable calibration pattern (a pattern that does not take into account the viewpoint described later), the calibration pattern is received and compared. There is a high possibility that the number of times increases or the accuracy of processing decreases. For example, for skew adjustment and cycle adjustment, it is necessary to make a brute force comparison (maximum N1 + N2 times) until the expected value matches the received data 236.
- the gating pattern is set based on the calibration pattern and the following four viewpoints.
- the control signal (output clock enable signal 243) for stopping the data capture control of the reception data SP converter 210 is not delayed by the cycle delay amount by using the gating pattern for calibration, the external device controller is actually It is possible to cause duplication or omission in the data (received data 234) received by 103.
- FIG. 20 shows the correlation between the cycle delay amount and the pattern (received data 234) that the received data SP conversion unit 210 receives in a situation where a preferable gating pattern (for example, “01010101”) is set.
- delay index M (actual delay amount) ⁇ (cycle setting value)
- cycle setting value (cycle setting value)
- the actual delay amount is the number of cycles in which the received data 236 is delayed with respect to the output clock 244 when the cycle set value is “0” (corresponding to the cycle unadjusted after the skew adjustment).
- FIGS. 6 and 7 show waveforms of the reception data 234 in parallel format when the change timing of the reception enable signal 250 is fixed to the timing when there is no delay and the actual delay amount is changed.
- the signals in FIGS. 6 and 7 are associated with the codes in FIG. 6 and 7 show four sets when the delay index M is 0, 1, 2, 3.
- the output clock enable signal 243 is gated to deassert the output clock 244.
- the received calibration pattern (corresponding to dh2_data 236) differs depending on the delay index M.
- the delay index is M> 1
- the data received after 1 cycle to the data after M cycles are based on the data (D3 in the examples of FIGS. 6 and 7) received when gating is started. Replaced with data after M + 1 cycles.
- M 0, the actual delay amount matches the cycle setting value, so that the correct pattern is received.
- FIGS. 15, 16, and 17 show waveforms during calibration when the positional relationship between S and the start bit and the positional relationship between E and the end bit are changed.
- FIG. 15 shows a waveform when the gating start position S is after the start bit is detected and the gating end position E is before the end bit is detected.
- FIG. 16 shows a waveform when the gating start position S is before the start bit detection and the gating end position E is after the end bit detection.
- FIG. 17 shows a waveform when the gating start position S is after the start bit detection and is the gating end position E.
- the calibration patterns and the gating patterns have the correlations shown in (1) to (4).
- gating is performed in the next cycle after receiving “D3” of the calibration pattern.
- “D4 to D6” may be replaced with “D5 to D7” because of the relationship between the cycle setting value and the actual delay. Therefore, if “D4 to D7” of the calibration pattern are all the same value, the value before the replacement and the value after the replacement are the same value, which is not preferable for detecting the delay (cycle delay).
- the relationship between the difference from the actual number of cycles and the received pattern (received data 236) when this calibration pattern (expected value) is used is shown in FIG.
- the difference between the actual number of cycles can be determined based on information indicating the relationship between the received pattern and the delay amount shown in FIG. Note that it is necessary to set a pattern in which different calibration patterns are received 1: 1 depending on M. Therefore, when using a gating pattern along the correlations (1) to (4), the continuous value (bit, “1”, “0”, etc.) in the calibration pattern is first transferred to the external device controller 103. When a predetermined number of values different from the input value are continuous, a delay up to a predetermined number of cycles can be detected.
- delay information (such as a look-up table as shown in FIG. 20 or a simple numerical sequence) indicating this relationship is tested in advance and stored in the DRAM 106 or other storage device that can be referred to by the CPU 101 to determine the cycle delay amount.
- the CPU 101 may refer to it when doing so.
- FIG. 18 shows signals handled by the external device controller 103 and the external device 107 during data reception when the configuration of FIG. 1 is operated using correct parameters (skew setting value, cycle setting value). .
- the example of FIG. 18 has a cycle delay of one cycle, but when the calibration is completed and the cycle selection value 249 (cycle setting value 256) corresponding to one cycle is set. The waveform is shown. (Note that when the delay occurring in the reception data 236 is one cycle, the setting indicated by the correct cycle selection value 249 (cycle setting value 256) is 1. Since the setting indicated by the cycle selection value 249 is 1, The reception enable signal 250 is delayed by one cycle by the cycle control unit 603 with respect to the output clock enable signal 243.)
- the output clock enable signal 243 is deasserted and the output clock 244 is gated. Although the output clock 244 is gated, “D 1” and “D 2” are transmitted from the external device 107 for the received data 237 in the serial format.
- the reception enable signal 250 is also deasserted.
- the reception data SP conversion unit 210 receives the deassertion of the reception enable signal 250, and immediately stops receiving the serial format reception data.
- reception of data is stopped while receiving “D1” of received data 235 after skew adjustment.
- “D1” can be received, and that the data acquisition stop timing of the reception data SP converter 210 can be adjusted to correspond to the cycle delay.
- the output clock enable signal 243 is reasserted one cycle after being deasserted, and the gating of the output clock 244 is released in response to this.
- the gating of the output clock 244 is cancelled, since the received data 236 has a delay of one cycle or more, “D2” of the serial format received data 236 is continuously transmitted from the external device 107.
- the reception enable signal 250 is also asserted one cycle after the assertion of the output clock enable signal 243 by the delay amount (one cycle) indicated by the cycle setting value 256.
- the reception data SP converter 210 immediately receives the serial reception data in response to the assertion of the reception enable signal 250. Therefore, “D2” of the received data 236 in the serial format can be correctly received. Looking at the first bit of the reception data 234 in the parallel format, it can be seen that “D2” has been correctly received, and the data acquisition restart timing of the reception data SP converter 210 can be adjusted to correspond to the cycle delay.
- the cycle control unit 603 of the present embodiment if the correct cycle setting value 256 is set, the received data is set so as to correspond to the amount of cycle delay that occurs between the external device controller 103 and the external device 107.
- the data acquisition stop timing and the data acquisition restart timing of the SP converter 210 can be delayed. This suppresses the occurrence of data loss as shown in FIG.
- the skew control unit 211 and the cycle control unit 603 are separately configured.
- the skew adjustment and the cycle adjustment may be combined as a single configuration or combined with the reception data SP conversion unit 210. May be.
- adjustment is performed by inputting a clock with corrected deviation.
- a delay configuration (delay element, flip-flop) for skew adjustment and cycle adjustment is directly arranged in the data supply system, and a selector, etc. The delay amount may be selected with.
- the opportunity to execute the calibration process is not mentioned, but the effect of the present invention can be obtained by performing calibration at the same opportunity as a known external device controller.
- the ASIC 100 when the ASIC 100 is started up or when the external device controller 103 is initialized, the ASIC 100 connects to the external device 107 every predetermined time (for example, every 10 msec at 208 MHz according to a standard such as SDXC) or every predetermined number of cycles. What is necessary is just to carry out when it detects.
- the cycle calculation unit 602, the cycle setting register 601, and the expected value setting register 604 are described as hardware, but may be realized by software instead of the CPU 101.
- the CPU 101 reads out and executes a program for realizing the function as the cycle calculation unit 602 from the DRAM 106 or the like, and secures storage areas corresponding to various registers in the cache (or DRAM 106) of the CPU 101, as described above.
- the values stored in various registers are stored in the storage area.
- the wiring delay between the external device 107 and the external device controller 103 when the external device 107 is configured to be attachable to and detachable from the external device IF 112, it is considered that the variation in delay amount becomes large. Actually, in addition to the length, material, and temperature rise of the wiring, it is considered that a delay due to various factors such as poor contact is included.
- the above embodiment does not exemplify the frequency of the host clock 115, but the higher the operating frequency, the more the cycle of the received data 236 generated in the configuration shown in FIG. Delay detection becomes difficult, and calibration failure tends to occur.
- the present invention also contributes to the realization of high-speed and highly reliable data communication. That's right.
- the cycle calculation unit 602 compares the calibration pattern (received data 234) with the expected value to perform cycle adjustment.
- the CPU 101 reads the expected value and performs comparison processing in the same manner as skew adjustment. You may make it do.
- the data portion (D0, D1,... In FIG. 21b) of the reception data 236 is compared.
- the CRC portion (CRC0, FIG. 21b) calculated by the reception data SP conversion unit 210 as a calculation unit is compared.
- CRC1 (7) may be used for comparison. In that case, it is necessary to previously calculate and store the CRC received when the skew setting and the cycle setting are normal for the calibration pattern stored in advance.
- the external device controller 103 and the external device 107 are described as communicating using a 1-bit width bus, but a 4-bit width bus, an 8-bit width bus, or the like may be used. Can be applied without being limited to the bus width. However, for example, when a 4-bit (8-bit) bus is used, four flip-flops 218 and four delay selection units 217 may be arranged in the skew control unit 211 so that skew adjustment can be performed for each 1-bit width. In this case, the reception data SP conversion unit 210 only has to merge 4 bits, and the data that the external device 107 is trying to output is changed to the reception data SP conversion unit 210 or the reception buffer 209 by changing the order of the 4 bit data. A configuration that matches is required.
- the operating frequency of the host clock 115 is single is described.
- the external device 107 may be identified and the operating frequency may be switched.
- a frequency dividing circuit or a multiplying circuit for dividing the host clock may be provided between the CLOCK generator 105 and the external device controller 103 to change the frequency of the host clock input to the external device controller 103.
- a frequency division circuit and a frequency multiplication circuit are part of the oscillation means.
- the host clock 115 input to the external device 107 may be decreased to a lower frequency to stabilize the communication with the external device.
- the case where the calibration is unsatisfactory means that, for example, the above-mentioned calibration occurs a predetermined number of times per unit time or the time required for the calibration is a predetermined time or more (for example, the number of times required for the brute force) May be required.
- the frequency to be switched by a frequency divider or a multiplier circuit is determined by a specific type of standard. May be used.
- the standard of the external device 107 (or the communication type of the external device 107 and the controller) can be identified before data transmission / reception.
- the CPU 101 instructs to return identification information indicating the type (or communication type) of the external device 107 by the above-described command transmission / reception.
- the CPU 101 may switch to a high frequency (208 MHz) by the above-described oscillating means according to the identified standard, or to a low frequency (50 Hz or 20 Hz) otherwise.
- the calibration cycle adjustment function may be stopped.
- the external device 107 is configured to transmit a 64 byte calibration pattern to the external device controller 103.
- the external device controller 103 may handle a calibration pattern for 64 bytes.
- attention may be paid to a portion of 64 bytes in which a value different from the value input earlier by a delay cycle amount that can be detected continues continuously.
- the CPU 101 may read only the address of the location of interest.
- the maximum delay amount allowed between the external device 107 and the external device controller 103 is defined depending on the standard, the number of consecutive different values based on the allowable delay amount (predetermined number described above) May be determined. In this case, a number larger than the number corresponding to the allowable delay amount is preferably set in advance as the predetermined number.
- the transmission buffer 207 and the reception buffer 209 in the above-described embodiment may have a FIFO structure.
- the buffer full signal and the buffer empty signal may be created based on information (remaining amount information) indicating the FIFO free capacity, or the remaining amount information may be used as it is.
- the CPU 101 may write the calibration pattern once in the FIFO and use it as it is for comparison. .
- the data size that can be stored in the FIFO of the reception buffer is smaller than the calibration pattern, it is preferable to compare sequentially (every predetermined cycle) by the data size equal to or smaller than the FIFO capacity of the calibration pattern.
- control signal such as the output clock enable signal 243 in the above-described embodiment may be configured to assert the disable signal at the timing when the enable signal is deasserted.
- the present invention has been described as the information processing apparatus having the external device controller 103.
- the present invention can be applied to the case where the configuration of the external device 107 is included in the information processing apparatus. It can be said.
- examples of the information processing apparatus to which the present invention is applied include various apparatuses such as an image processing apparatus and a calculation processing apparatus.
- the present invention can also be realized by executing the following processing. That is, software (program) for realizing the functions of the above-described embodiments is supplied to a system or apparatus via a network or various storage media, and a computer (or CPU, MPU, etc.) of the system or apparatus reads the program. It is a process to be executed.
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Information Transfer Systems (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
Description
外部デバイスに対してクロックを供給する供給手段と、
前記供給手段に対して前記クロックの供給を停止させる制御信号を送信する制御手段と、
前記外部デバイスが前記クロックと同期させて出力するデータを受信し、前記制御信号に応じて前記データの取り込みを停止する受信手段と、
前記受信手段の受信するデータの位相ズレを補正する第1遅延手段と
前記制御信号の周期単位のズレを補正する第2遅延手段と、
を有することを特徴とする。
外部デバイスに対してクロックを供給し、前記外部デバイスが当該クロックに同期させて出力するデータを受信する外部デバイスコントローラを有する情報処理装置における情報処理方法であって、
前記外部デバイスコントローラの受信するデータの位相ズレを調節する第1遅延工程と、
前記第1遅延工程の後に、前記外部デバイスコントローラが前記データの取り込みを停止させる制御のズレを調節する第2遅延工程と、
を有することを特徴とする。
次に、外部デバイスコントローラ103が外部デバイス107からデータ(外部デバイスデータ)を受信する処理について説明する。
次に、スキュー補正をするための構成の詳細を説明する。
次に、サイクル遅延を補正するための構成の詳細を説明する。
ここで、外部デバイスコントローラ103と外部デバイス107との間でコマンドやデータの授受に用いる信号のフォーマットについて説明する。
次に、外部デバイスコントローラ103が正しくデータを取り込めるように、各種パラメータ(スキュー設定値、サイクル設定値)を調節するキャリブレーション処理について説明する。
ここで、キャリブレーションパターンとゲーティングパターンの相関について説明する。キャリブレーション処理が完了した際には、サイクル設定値256の示すサイクル数が、実際に遅延しているサイクル数と一致するものとする。図24の例では、サイクル遅延が1サイクルである為に、設定すべき正しいサイクル設定値256の示す値は“1”となる。(図24に示す波形は、サイクル設定値256がサイクル未調節の場合に相当する。)
ディレイ指標M=(実際のディレイ量)-(サイクル設定値)とし、ディレイ指標Mと受信されるキャリブレーションパターンとの相関について説明する。ここで、実際のディレイ量とは、サイクル設定値が“0”の場合(スキュー調節後でサイクル未調節に相当)に、受信データ236が出力クロック244に対して遅延しているサイクル数である。
出力クロック244をゲーティングし続けるサイクル数をゲーティング量Nとして、(スキュー調節後でサイクル調節が誤っている場合に)Nと受信されるキャリブレーションパターンの相関について説明する(Nの定義は図5参照)。
ゲーティングを複数回行う場合、前のゲーティングタイミングから、次のゲーティングタイミングまでのサイクルをLとし、(スキュー調節後でサイクル調節が誤っている場合に)Lと受信されるキャリブレーションパターンとの相関について説明する。(Lの定義は図5参照)。図11、図12、図13、図14にLが1~4の時の、キャリブレーション中の波形を示す。L>=Mならば、複数回のゲーティングは、独立したゲーティングとして扱える。すなわち、Mサイクル分のデータの置き換えが、ゲーティングの回数分だけ発生する。そうでない場合には、複数回のゲーティングは、互いに相関を持ち、M*(ゲーティングの回数)-(M-L)個のデータが連続して置き換わる。
ゲーティング開始位置をS、ゲーティング終了位置をEとし、(スキュー調節後でサイクル調節が誤っている場合に)S、Eと受信されるキャリブレーションパターンとの相関について説明する(S,Eの定義は図5参照)。
“D4~D7=0101”
これは、(1)~(4)の相関に基づいて設定している、もちろん“1”と“0”は逆であっても、その場合に対応する期待値を設定しておけばよい。
Claims (19)
- 外部デバイスに対してクロックを供給する供給手段と、
前記供給手段に対して前記クロックの供給を停止させる制御信号を送信する制御手段と、
前記外部デバイスが前記クロックと同期させて出力するデータを受信し、前記制御信号に応じて前記データの取り込みを停止する受信手段と、
前記受信手段の受信するデータの位相ズレを補正する第1遅延手段と
前記制御信号の周期単位のズレを補正する第2遅延手段と、
を有することを特徴とする情報処理装置。 - 前記クロックを発振する発振手段を更に有し、
前記第1遅延手段は、前記受信手段の受信するデータを前記発振手段の発振するクロックの1サイクルより小さい量だけ遅延させて位相ズレを補正し、
前記第2遅延手段は、前記制御信号を前記発振手段の発振するクロックの1サイクルの整数倍だけ遅延させて前記受信手段に入力させることで、前記受信手段における周期単位のデータ取り込みタイミングのズレを補正することを有することを特徴とする請求項1に記載の情報処理装置。 - 前記受信手段に受信させるキャリブレーションパターンを送信するように前記外部デバイスに対して指示する指示手段と、
前記クロックをどのタイミングで停止させるかを示すゲーティング情報に基づいて前記供給手段による前記クロックの供給を停止させる第一クロック制御モードと、前記クロックの供給を停止させない第二クロック制御モードとを選択的に機能させる選択手段と
を有し、
前記選択手段は、前記キャリブレーションパターンの位相ズレを調節する場合に前記第二クロック制御モードを機能させ、前記キャリブレーションパターンのサイクル遅延を調節する場合に前記第一クロック制御モードを機能させることを特徴とする請求項1又は2に記載の情報処理装置。 - 受信するキャリブレーションパターンの期待値を保持する記憶手段と、
前記選択手段によって前記制御手段を機能させた状態で前記受信手段の受信したキャリブレーションパターンと前記記憶手段の保持する期待値とを比較して一致するかを判定するする判定手段と
を更に有することを特徴とする請求項3に記載の情報処理装置。 - 前記判定手段は前記受信手段の受信したキャリブレーションパターンと前記期待値とが一致することを判定し、前記受信手段によるデータの取り込みタイミングの調整が完了したことを判断することを特徴する請求項4に記載の情報処理装置。
- 前記キャリブレーションパターンは複数の値によって構成され、当該複数の値のうち連続する所定数の値の夫々が直前の値と異なっていることを特徴とする請求項3乃至5のいずれか1項に記載の情報処理装置。
- 前記所定数は前記情報処理装置と前記外部デバイスとの間で発生し得る遅延量に対応するサイクル数以上であることを特徴とする請求項6に記載の情報処理装置。
- 前記受信手段の受信したデータを保持し、自身がデータの保持をできない場合に通知する保持手段を更に有し、
前記選択手段は、前記キャリブレーションパターンに基づくデータの取り込みタイミングの調節が完了した場合に、前記保持手段からの通知を受けて前記供給手段による前記クロックの供給を停止させる第三クロック制御モードを機能させることを特徴とする請求項3乃至7のいずれか1項に記載の情報処理装置。 - 前記保持手段はFIFO構造であり、前記通知がFIFOの残量情報を示す信号に基づいていることを特徴とする請求項8に記載の情報処理装置。
- 前記外部デバイスとの通信の種別を判断する識別手段を更に有し、前記外部デバイスが所定の種別でないと判断できる場合に、前記選択手段は前記受信手段のデータ取り込みタイミングを調節する際に前記第三クロック制御モードを機能させることを特徴とする請求項8又は9に記載の情報処理装置。
- 前記第2遅延手段は入出力が直列に接続されている複数のフリップフロップを有し、前記制御信号を周期単位で遅延させる場合に前記複数のフリップフロップのうちの1つの出力を選択的に出力することを特徴とする請求項1乃至10のいずれか1項に記載の情報処理装置。
- 前記ゲーティング情報は、周期的なタイミングで前記供給手段がクロックを停止することを示す情報を有することを特徴とする請求項3乃至11のいずれか1項に記載の情報処理装置。
- 前記ゲーティング情報は、前記制御手段によって前記クロックの停止し始めるタイミング、前記クロックの停止を解除させるタイミング、クロックを停止させる周期の少なくとも何れか1つを示すことを特徴とする請求項3乃至12のいずれか1項に記載の情報処理装置。
- 前記外部デバイスとの通信の種別を判断する識別手段を更に有し、前記外部デバイスが所定の種別であると判断できる場合に、前記選択手段は前記受信手段のデータ取り込みタイミングを調節する際に前記第一クロック制御モードを機能させることを特徴とする請求項3乃至13のいずれか1項に記載の情報処理装置。
- 前記制御手段が、少なくとも前記受信手段の受信しているキャリブレーションパターンの値が変動するタイミングの1つで前記クロックを停止し始めることを特徴とする請求項1乃至14のいずれか1項に記載の情報処理装置。
- 前記制御手段が、少なくとも前記受信手段の受信しているキャリブレーションパターンの値が変動するタイミングの1つで前記クロックの停止を解除することを特徴とする請求項請求項1乃至15のいずれか1項に記載の情報処理装置。
- 外部デバイスに対してクロックを供給し、前記外部デバイスが当該クロックに同期させて出力するデータを受信する外部デバイスコントローラを有する情報処理装置であって、
前記外部デバイスコントローラの受信するデータの位相ズレを補正する第1遅延手段と
前記外部デバイスコントローラの前記データの取り込みを停止させる制御信号を補正する第2遅延手段と、
を有することを特徴とする情報処理装置。 - 外部デバイスに対してクロックを供給する供給工程と、
前記供給工程における前記クロックの供給を停止させる制御信号を送信する制御工程と、
前記外部デバイスが前記クロックと同期させて出力するデータを受信し、前記制御信号に応じて前記データの取り込みを停止する受信工程と、
前記受信工程で受信するデータの位相ズレを補正する第1遅延工程と
前記制御信号の周期単位のズレを補正する第2遅延工程と、
を有することを特徴とする情報処理方法。 - 外部デバイスに対してクロックを供給し、前記外部デバイスが当該クロックに同期させて出力するデータを受信する外部デバイスコントローラを有する情報処理装置における情報処理方法であって、
前記外部デバイスコントローラの受信するデータの位相ズレを調節する第1遅延工程と、
前記第1遅延工程の後に、前記外部デバイスコントローラが前記データの取り込みを停止させる制御のズレを調節する第2遅延工程と、
を有することを特徴とする情報処理方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2009/071656 WO2011077563A1 (ja) | 2009-12-25 | 2009-12-25 | 情報処理装置又は情報処理方法 |
JP2011547172A JP5501378B2 (ja) | 2009-12-25 | 2009-12-25 | 情報処理装置又は情報処理方法 |
CN200980163122.XA CN102668378B (zh) | 2009-12-25 | 2009-12-25 | 信息处理装置和信息处理方法 |
US12/971,684 US9054691B2 (en) | 2009-12-25 | 2010-12-17 | Information processing apparatus or information processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2009/071656 WO2011077563A1 (ja) | 2009-12-25 | 2009-12-25 | 情報処理装置又は情報処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2011077563A1 true WO2011077563A1 (ja) | 2011-06-30 |
Family
ID=44188941
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2009/071656 WO2011077563A1 (ja) | 2009-12-25 | 2009-12-25 | 情報処理装置又は情報処理方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9054691B2 (ja) |
JP (1) | JP5501378B2 (ja) |
CN (1) | CN102668378B (ja) |
WO (1) | WO2011077563A1 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9360915B1 (en) * | 2012-04-26 | 2016-06-07 | Marvell International Ltd. | Dynamically controlling clocking rate of a processor based on user defined rule |
CN108538311B (zh) * | 2018-04-13 | 2020-09-15 | 腾讯音乐娱乐科技(深圳)有限公司 | 音频分类方法、装置及计算机可读存储介质 |
CN112188181B (zh) * | 2019-07-02 | 2023-07-04 | 中强光电股份有限公司 | 图像显示设备、立体图像处理电路及其同步信号校正方法 |
MY205100A (en) * | 2020-12-29 | 2024-10-02 | Skyechip Sdn Bhd | A generic physical layer providing a unified architecture for interfacing with an external memory device and methods of interfacing with an external memory device |
JP2024048776A (ja) * | 2022-09-28 | 2024-04-09 | ラピステクノロジー株式会社 | データ受信回路、表示ドライバ及び表示装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6368959A (ja) * | 1986-09-11 | 1988-03-28 | Mitsubishi Electric Corp | 情報転送方式 |
JPS6472641A (en) * | 1987-09-08 | 1989-03-17 | Tektronix Inc | Skew correction apparatus |
JPH04105412A (ja) * | 1990-08-27 | 1992-04-07 | Nec Ibaraki Ltd | フリップフロップ |
JPH08223003A (ja) * | 1995-02-16 | 1996-08-30 | Kawasaki Steel Corp | クロック逓倍回路 |
JPH1188153A (ja) * | 1997-09-03 | 1999-03-30 | Nec Corp | ディジタルdll回路 |
JP2005301963A (ja) * | 2003-07-08 | 2005-10-27 | Ricoh Co Ltd | データ転送装置、画像形成装置、データ転送方法、コンピュータプログラム及び記録媒体 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS59173839A (ja) | 1983-03-22 | 1984-10-02 | Matsushita Electric Ind Co Ltd | 直列デ−タ転送回路 |
JP2965049B2 (ja) | 1991-07-31 | 1999-10-18 | 株式会社アドバンテスト | タイミング発生装置 |
JP3367009B2 (ja) | 1995-08-31 | 2003-01-14 | 京セラ株式会社 | プリンタ装置における同期式データ伝送方式 |
JP3973308B2 (ja) * | 1998-11-27 | 2007-09-12 | 富士通株式会社 | セルフタイミング制御回路を内蔵する集積回路装置 |
JP4831899B2 (ja) * | 2001-08-28 | 2011-12-07 | 富士通セミコンダクター株式会社 | 半導体集積回路及びクロック制御方法 |
JP2005286467A (ja) * | 2004-03-29 | 2005-10-13 | Fujitsu Ltd | デジタルdll装置、デジタルdll制御方法、デジタルdll制御プログラム |
JP4667196B2 (ja) * | 2005-10-12 | 2011-04-06 | パナソニック株式会社 | 位相調整回路 |
US7173462B1 (en) * | 2005-10-27 | 2007-02-06 | Mediatek Inc. | Second order delay-locked loop for data recovery |
US7746134B1 (en) * | 2007-04-18 | 2010-06-29 | Altera Corporation | Digitally controlled delay-locked loops |
JP5579373B2 (ja) * | 2008-05-22 | 2014-08-27 | ピーエスフォー ルクスコ エスエイアールエル | Dll回路 |
US8036614B2 (en) * | 2008-11-13 | 2011-10-11 | Seiko Epson Corporation | Replica DLL for phase resetting |
-
2009
- 2009-12-25 CN CN200980163122.XA patent/CN102668378B/zh active Active
- 2009-12-25 JP JP2011547172A patent/JP5501378B2/ja not_active Expired - Fee Related
- 2009-12-25 WO PCT/JP2009/071656 patent/WO2011077563A1/ja active Application Filing
-
2010
- 2010-12-17 US US12/971,684 patent/US9054691B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6368959A (ja) * | 1986-09-11 | 1988-03-28 | Mitsubishi Electric Corp | 情報転送方式 |
JPS6472641A (en) * | 1987-09-08 | 1989-03-17 | Tektronix Inc | Skew correction apparatus |
JPH04105412A (ja) * | 1990-08-27 | 1992-04-07 | Nec Ibaraki Ltd | フリップフロップ |
JPH08223003A (ja) * | 1995-02-16 | 1996-08-30 | Kawasaki Steel Corp | クロック逓倍回路 |
JPH1188153A (ja) * | 1997-09-03 | 1999-03-30 | Nec Corp | ディジタルdll回路 |
JP2005301963A (ja) * | 2003-07-08 | 2005-10-27 | Ricoh Co Ltd | データ転送装置、画像形成装置、データ転送方法、コンピュータプログラム及び記録媒体 |
Also Published As
Publication number | Publication date |
---|---|
CN102668378B (zh) | 2015-01-07 |
JPWO2011077563A1 (ja) | 2013-05-02 |
US20110161715A1 (en) | 2011-06-30 |
US9054691B2 (en) | 2015-06-09 |
CN102668378A (zh) | 2012-09-12 |
JP5501378B2 (ja) | 2014-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20170124403A (ko) | SRIS를 지원하는 PCIe 장치 | |
JP5501378B2 (ja) | 情報処理装置又は情報処理方法 | |
US10401900B2 (en) | Using a stuttered clock signal to reduce self-induced voltage noise | |
JP5808097B2 (ja) | 半導体装置及び半導体装置におけるリセット制御方法 | |
US6791953B2 (en) | Interface apparatus | |
JP5377275B2 (ja) | 情報処理装置又は情報処理方法 | |
EP1058180B1 (en) | Control circuit having clock control unit | |
US8751842B2 (en) | Microcontroller and method of controlling the same | |
JP5448795B2 (ja) | 情報処理装置又は情報処理方法 | |
JP2012124716A (ja) | データ受信装置、データ送信装置、制御方法 | |
JP5717897B2 (ja) | 情報処理装置又は情報処理方法 | |
US20060195638A1 (en) | Peripheral device | |
US6639436B2 (en) | Semiconductor integrated circuit with function to start and stop supply of clock signal | |
US8401139B2 (en) | Data transfer unit, data transmission device, data receiving device, and control method | |
US20090232266A1 (en) | Signal processing device | |
US20030002589A1 (en) | Serial communication circuit and serial transmitting and receiving system | |
JP2024122106A (ja) | 制御装置 | |
KR20060080380A (ko) | 시스템 온 칩을 위한 ip 모듈 | |
JP2005094597A (ja) | 遅延制御装置 | |
US7325085B2 (en) | Motherboard and control method thereof | |
JP2021174018A (ja) | 情報処理装置、インタフェース制御回路および情報処理装置の制御方法 | |
JPH09277664A (ja) | プリンタ制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 200980163122.X Country of ref document: CN |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 09852578 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2011547172 Country of ref document: JP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 09852578 Country of ref document: EP Kind code of ref document: A1 |