Frequency calibration method applicable in universal serial bus device and related universal serial bus device
10635129 ยท 2020-04-28
Assignee
Inventors
Cpc classification
G06F1/08
PHYSICS
International classification
Abstract
A frequency calibration method applied to a Universal Serial Bus (USB) device includes: coupling the USB device to a USB host, wherein the USB device comprises at least a programmable oscillator; utilizing the USB device to extract a low frequency periodic signal from the USB host; calibrating the programmable oscillator of the USB device according to the low frequency periodic signal, to make the programmable oscillator generate an oscillating signal having a predetermined frequency; and when the USB device receives the low frequency periodic signal from the USB host, controlling the USB device to generate a predetermined signal having a frequency higher than a frequency of the low frequency periodic signal to the USB host, to make the USB host continuously generate the low frequency periodic signal to the USB device.
Claims
1. A frequency calibration method applied to a Universal Serial Bus (USB) device, comprising: coupling the USB device to a USB host, wherein the USB device comprises at least a programmable oscillator; utilizing the USB device to extract a low frequency periodic signal (LFPS) from the USB host; calibrating the programmable oscillator of the USB device according to the LFPS, to make the programmable oscillator generate an oscillating signal having a predetermined frequency; and generating a feedback signal according to the oscillating signal, wherein during calibration upon the programmable oscillator, when the USB device receives the LFPS from the USB host, controlling the USB device to generate a predetermined signal having a frequency higher than a frequency of the LFPS to the USB host, to make the USB host continuously generate the LFPS to the USB device until the calibration upon the programmable oscillator is completed and a specific clock signal generated from the oscillating signal having a frequency that is higher than the predetermined frequency and the feedback signal are arranged to generate a comparison result to control the programmable oscillator to keep the oscillating signal having the predetermined frequency during calibration upon the programmable oscillator.
2. The frequency calibration method of claim 1, further comprising: if the programmable oscillator generates the oscillating signal having the predetermined frequency, temporarily storing a control word arranged for controlling the programmable oscillator into a register.
3. The frequency calibration method of claim 2, further comprising: when the USB device completes an initial activation procedure, storing the control word into a flash memory.
4. A Universal Serial Bus (USB) device, comprising: a detection circuit, arranged to extract a low frequency periodic signal (LFPS) from the USB host; a programmable oscillator, arranged to generate an oscillating signal; a control circuit, coupled to the detection circuit and the programmable oscillator, the control circuit arranged to calibrate the programmable oscillator according to the LFPS, to make the programmable oscillator generate the oscillating signal having a predetermined frequency; and the control circuit further comprises a frequency comparator and a frequency divider, and the frequency divider is arranged to generate a feedback signal according to the oscillating signal; a transmission circuit, coupled to the control circuit; wherein during calibration upon the programmable oscillator, when the USB device extracts the LFPS from the USB host, the control circuit further controls the transmission circuit to send a predetermined signal having a frequency higher than a frequency of the LFPS to the USB host, to make the USB host continuously generate the LFPS to the detection circuit until the calibration upon the programmable oscillator is completed; and the frequency comparator generates a comparison result according to a specific clock signal generated from the oscillating signal having a frequency that is higher than the predetermined frequency and the feedback signal to control the programmable oscillator to keep generating the oscillating signal having the predetermined frequency during calibration upon the programmable oscillator.
5. The USB device of claim 4, wherein if the programmable oscillator generates the oscillating signal having the predetermined frequency, the control circuit further temporarily stores a control word arranged for controlling the programmable oscillator into a register.
6. The USB device of claim 5, wherein when the USB device completes an initial activation procedure, the control circuit further stores the control word into a flash memory.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1)
(2)
(3)
(4)
(5)
(6)
DETAILED DESCRIPTION
(7) Certain terms are used throughout the description and following claims to refer to particular components. As one skilled in the art will appreciate, manufacturers may refer to a component by different names. This document does not intend to distinguish between components that differ in name but not function. In the following description and in the claims, the terms include and comprise are used in an open-ended fashion, and thus should be interpreted to mean include, but not limited to . . . . Also, the term couple is intended to mean either an indirect or direct electrical connection. Accordingly, if one device is coupled to another device, that connection may be through a direct electrical connection, or through an indirect electrical connection via other devices and connections.
(8) Please refer to
(9) According to an embodiment of the present invention, the USB device 100 is a USB 3.0 device, and the USB host 112 is a USB 3.0 host. However, the present invention is not limited thereto. In another embodiment, the USB host 112 may be a USB 3.0 hub. When the USB device 100 is plugged into the USB host 112, and the USB device 100 and the USB host 112 have not entered an ultra-high data transmission mode (i.e. 5 Gbps) of USB 3.0, the USB device 100 performs a frequency calibration method to calibrate the programmable oscillator 106 in advance, so as to make the programmable oscillator 106 capable of generating the oscillating signal Sosc having the predetermine frequency Fp, wherein the oscillating signal Sosc having the predetermined frequency Fp is used as a reference clock for synthesizing an operation clock (e.g., a 2.5 GHz operation clock) needed for operating the USB device 100 in the ultra-high speed data transmission mode.
(10) Please refer to
(11) Hence, when the USB device 100 is plugged into the USB host 112, the USB device 100 performs the frequency calibration method 300 shown in
(12) Step 302: Plug the USB device 100 into the USB host 112.
(13) Step 304: Control the USB device 100 to enable the terminal impedance 110 in the USB device 100, thus allowing the USB host 112 to transmit a low frequency periodic signal Sps to the USB device 100.
(14) Step 306: Delay a first delay time t1.
(15) Step 308: Determine whether the USB device 100 receives the low frequency periodic signal Sps. If yes, go to step 310; otherwise, go to step 306.
(16) Step 310: Utilize the USB device 100 to extract the low frequency periodic signal Sps from the USB host 112.
(17) Step 312: Calibrate the programmable oscillator 106 in the USB device 100 according to the low frequency periodic signal Sps.
(18) Step 314: Determine whether the programmable oscillator 106 generates an oscillation signal Sosc having a predetermined frequency Fp. If yes, go to step 316; otherwise, go to step 312.
(19) Step 316: Temporarily store a control word Sc in a register, wherein the control word Sc is arranged for controlling the programmable oscillator 106 to generate the oscillation signal Sosc having the predetermined frequency Fp.
(20) Step 318: Control the USB device 100 to disable the terminal impedance 110 of the USB device 100.
(21) Step 320: Delay a second delay time t2.
(22) Step 322: Perform an initial activation procedure of the USB device 100.
(23) Step 324: Feed an internal source program (ISP) from the USB device 100.
(24) Step 326: Store the control word Sc into a flash memory of the USB device 100.
(25) Please note that, in step 304, when the terminal impedance 110 is enabled, the USB host 112 detects the existence of the terminal impedance 110 and thereby outputs the low frequency periodic signal Sps. On the contrary, when the terminal impedance 110 is disabled, the USB host 112 does not detect the existence of the terminal impedance 110, and the USB host 112 determines that the USB device 110 is not correctly coupled to the USB host 112. When the USB host 112 transmits the low frequency periodic signal Sps to the USB device 100, the control circuit 104 controls the detection circuit 102 to first wait for the first delay time t1 and then detect the low frequency periodic signal Sps from the USB host 112. This is because when the USB host 112 detects the existence of the terminal impedance 110, the USB host 112 does not certainly transmit the low frequency periodic signal Sps immediately. According to the USB 3.0 specification, when the USB host 112 detects the existence of the terminal impedance 110, the USB host 112 must transmit the low frequency periodic signal Sps in 50 ms (millisecond). Hence, through proper designs, when the first delay time t1 is reached, the detection circuit 102 of the USB device 100 should have received the low frequency periodic signal Sps from the USB host 112.
(26) Please refer to
(27) Specifically, the detection circuit 102 extracts the detection oscillating signal Spsr which is identical to the low frequency periodic signal Sps. Then, the control circuit 104 reads the detection oscillating signal Spsr, and outputs the control word Sc to adjust the oscillating signal Sosc of the programmable circuit 106. Please note that, as can be seen from the embodiment of
(28) In another embodiment of the present invention, when the USB device 100 receives the low frequency periodic signal Sps form the USB host 112, the control circuit 104 controls the transmission circuit 108 to stop generating a normal response signal to the USB host 112, so as to make the USB host 112 continuously generate the low frequency periodic signal Sps to the USB device 100.
(29) Further, in another embodiment of the present invention, when the USB device 100 receives the low frequency periodic signal Sps from the USB host 112, the control circuit 104 controls the transmission circuit 108 to generate a predetermined signal dissimilar to the low frequency periodic signal Sps to the USB host 112, so as to make the USB host 112 continuously generate the low frequency periodic signal Sps to the USB device 100.
(30) In step 316, when the programmable oscillator 106 has been calibrated to generate the oscillating signal Sosc having the predetermined frequency Fp, the control circuit 104 temporarily stores the corresponding control word Sc into a register. At the same time, the control circuit 104 disables the terminal impedance 110 of the USB device 100, to make the USB host 112 determine that the USB device 100 is not correctly coupled to the USB host 112 (step 318).
(31) Next, after waiting for the second delay time t2 (step 320), the control circuit 104 starts entering an initializing activation procedure (step 322) of the USB device 100. In the initializing activation procedure, the control circuit 104 of the USB device 100 feeds an internal source program (ISP) to initialize the USB device 100 (step 324). Please note that, the ISP may be a firmware stored in a read-only memory (ROM).
(32) Then, in step 326, when the USB device 100 completes the initial activation procedure, the control circuit 104 stores the control word Sc previously stored in the register into a flash memory. Hence, after the USB device 100 completes the initial activation procedure, the flash memory has already stored the desired control word Sc capable of controlling the programmable oscillator 106 to generate the oscillating signal Sosc having the predetermined frequency Fp. When the USB device 100 is coupled to the USB host 112 again, the control circuit 104 no longer needs to calibrate the programmable oscillator 106, and may directly read the control word Sc in the flash memory instead. In this way, the USB device 100 of the present invention is capable of generating a reference clock having a precise frequency with lower cost.
(33) Please note that, in step 316, after the control circuit 104 temporarily stores the corresponding control word Sc into the register, the control circuit 104 does not need to disable the terminal impedance 110 of the USB device 100. Specifically, in another embodiment of the present invention, when the control circuit 104 calculates the corresponding control word Sc and then temporarily stores the control word Sc into the register, the control circuit 104 further continuously enables the terminal impedance 110 of the USB device 100, and controls the USB device 100 to generate another polling low frequency periodic signal Sps to the USB host 112. In this way, when the USB host 112 receives the polling low frequency periodic signal Sps from the USB device 100, the USB host 112 enters the state 2064 shown in
(34) Please refer to
(35) Further, the method for operating the control circuit 104 may be represented by the flowchart of
(36) Step 602: Control the programmable oscillator 106 to generate the oscillating signal Sosc.
(37) Step 604: Perform a frequency dividing operation upon the oscillating signal Sosc to generate a feedback signal Sfb.
(38) Step 606: Utilize the signal synthesizing circuit 1046 to synthesize the specific clock signal Sp according to the oscillating signal Sosc.
(39) Step 608: Utilize the frequency comparator 1044 to receive the detection oscillating signal Spsr, the feedback signal Sfb and the specific clock signal Sp.
(40) Step 610: Utilize the specific clock signal Sp to control the frequency comparator 1044, to detect a second frequency of the feedback signal Sfb.
(41) Step 612: Utilize the frequency comparator 1044 to compare the first frequency of the low frequency periodic signal Sps with the second frequency of the feedback signal Sfb, to generate a comparison result Sr.
(42) Step 614: Adjust the programmable oscillator 106 according to the comparison result Sr, to generate the oscillating signal Sosc having the predetermined frequency Fp.
(43) Please note that, in this embodiment, the frequency of the specific clock signal Sp is higher than the frequency of the oscillating signal Sosc. For example, the frequency of the specific clock signal Sp may be twice or triple the frequency of the oscillating signal Sosc. Hence, the frequency comparator 1044 may use the specific clock signal Sp to effectively calculate the period of the feedback signal Sfb, thereby calculating the oscillating frequency of the feedback signal Sfb (i.e., the second frequency). Then, the frequency comparator 1044 may compare the frequency of the detection oscillating signal Spsr with the second frequency of the feedback signal Sfb to generate the comparison result Sr used to adjust the control word Sc of the programmable oscillator 106. In this way, when the loop shown in
(44) In view of above, when the USB host 112 performs polling on the USB device 100, the devices and methods provided by the present invention intentionally delay the time of the USB host 112 performing the polling operation upon the USB device 100, to make the USB device 100 extract the detection oscillating signal Spsr having a frequency the same as that of the polling low frequency periodic signal Sps, and utilize the detection oscillating signal Spsr to calibrate the programmable oscillator 106. Hence, the present invention is capable of generating a reference clock having a precise frequency without arranging a built-in precise inductor capacitor oscillator (LC oscillator). Hence, compared with traditional designs, the USB device 100 of the present invention has a lower production cost.
(45) Those skilled in the art will readily observe that numerous modifications and alterations of the device and method may be made while retaining the teachings of the invention. Accordingly, the above disclosure should be construed as limited only by the metes and bounds of the appended claims.