Abstract:
The present invention disclosed a Universal Serial Bus (USB) apparatus. The apparatus includes: a signal detecting unit for detecting a packet signal transmitted from a USB host and generating an acknowledgment signal according to a detection result; an error detecting unit, coupled to the signal detecting unit, for generating a control signal according to the acknowledgment signal; and a frequency generating unit, coupled to the error detecting unit, for generating an output clock signal according to the control signal.

Description:
BACKGROUND OF THE INVENTION  
       [0001]     1. Field of the Invention  
         [0002]     The present invention is related to a Universal Serial Bus (USB) apparatus and a method thereof, and more particularly, to a Universal Serial Bus (USB) apparatus without an accurate frequency oscillator and method thereof.  
         [0003]     2. Description of the Prior Art  
         [0004]     Universal Serial Bus (USB) is a common serial transmitting interface utilized in computer systems. It is very convenient for USB to establish connections in a high transmission speed (e.g., 480 Mbps of USB 2.0). Therefore, USB is becoming a very popular transmitting interface, and almost every apparatus available on the market today is compatible with the USB protocol to provide a connecting interface with computer systems, such as portable card readers, portable storage apparatus, and scanners.  
         [0005]     Normally, the transmitting frequency of the USB interface is required to have an accurate operating frequency. When operated at low-speed or full-speed (LS/FS) mode, the frequency error must be less than +/−2500 ppm, and when in high-speed (HS) mode, the frequency error must be less than +/−500 ppm. Therefore, an accurate oscillating signal source external to the USB chip is utilized to provide an accurate frequency to the USB chip to achieve the requirement of the frequency error.  FIG. 1  illustrates a USB system  10  including a USB host  12 , a USB apparatus  14  and an accurate oscillating signal source  16  such as a crystal oscillating component. A special oscillating apparatus can also be utilized to obtain the desired frequency accuracy.  
         [0006]     However, the cost of the above-mentioned special oscillating apparatus is very high. Therefore, in the low-cost application fields, to develop a USB chip that does not require the accurate external oscillating signal source is very important.  
       SUMMARY OF THE INVENTION  
       [0007]     It is therefore an objective of the present invention to provide a Universal Serial Bus (USB) apparatus that does not require an external accurate frequency oscillator and method thereof, to reduce the manufacturing costs without affecting the product performance.  
         [0008]     According to the present invention, a Universal Serial Bus (USB) apparatus is disclosed. The apparatus includes: a signal detecting unit for detecting a packet signal transmitted from a USB host and generating an acknowledgment signal according to a detection result; an error detecting unit, coupled to the signal detecting unit, for generating a control signal according to the acknowledgment signal; and a frequency generating unit, coupled to the error detecting unit, for generating an output clock signal according to the control signal.  
         [0009]     According to the present invention, a Universal Serial Bus (USB) system is disclosed. The system includes: a USB apparatus for receiving a packet signal transmitted from a USB host and generating a control signal, and a frequency generating unit coupled to the USB apparatus, for generating an output clock signal according to the control signal, wherein the frequency generating unit includes a reference clock generator for generating a first clock signal.  
         [0010]     These and other objectives of the present invention will no doubt become obvious to those of ordinary skill in the art after reading the following detailed description of the preferred embodiment that is illustrated in the various figures and drawings. 
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0011]      FIG. 1  is a diagram illustrating a prior art USB apparatus with an external oscillating component.  
         [0012]      FIG. 2  is a diagram illustrating a system diagram of an USB system according to the present invention.  
         [0013]      FIG. 3  is a diagram illustrating a functional block diagram of a USB apparatus according to an embodiment of the present invention.  
         [0014]      FIG. 4 ( a ) is a diagram illustrating an SOF detector according to an embodiment of the present invention.  
         [0015]      FIG. 4 ( b ) is diagram illustrating a state machine operating in FS mode corresponding to  FIG. 4 ( a ).  
         [0016]      FIG. 5  is a diagram illustrating a state machine operating in HS mode according to an embodiment of the present invention.  
         [0017]      FIG. 6  is a diagram illustrating an algorithm of a frequency error detecting circuit according to an embodiment of the present invention.  
         [0018]      FIG. 7  is a diagram illustrating a frequency generator according to an embodiment of the present invention.  
         [0019]      FIG. 8  is a diagram illustrating a reference clock generator.  
         [0020]      FIG. 9  is a diagram illustrating a fractional-N frequency synthesizer. 
     
    
     DETAILED DESCRIPTION  
       [0021]     Certain terms are used throughout the following description and claims to refer to particular system components. As one skilled in the art will appreciate, consumer electronic equipment 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 discussion and in the claims, the terms “including” and “comprising” are used in an open-ended fashion, and thus should be interpreted to mean “including, but not limited to . . . ” The terms “couple” and “couples” are intended to mean either an indirect or a direct electrical connection. Thus, if a first device couples to a second device, that connection may be through a direct electrical connection, or through an indirect electrical connection via other devices and connections.  
         [0022]     Please refer to  FIG. 2 .  FIG. 2  illustrates a system diagram of a USB system  20  according to the present invention. In  FIG. 2 , a USB host  22 , such as a personal computer, transmits a signal to the attached USB apparatus  24 , which is coupled to an oscillating signal source  26 , through a cable or PCB routing trace. The transmitting period of the signal varies according to the USB operating mode.  
         [0023]     Please refer to  FIG. 3 .  FIG. 3  illustrates a functional block diagram of a USB apparatus  100  according to an embodiment of the present invention. In  FIG. 3 , the USB apparatus  100  includes a “Start of Frame” (SOF) packet signal detector (SOF detector)  110 ; a frequency error detecting circuit  120  coupled to the SOF packet signal detector  110 ; and a frequency generator  130  coupled to the frequency error detecting circuit  120 . The functionality and operation of each component in USB apparatus  100  of the present invention will be explained in details in the following paragraph.  
         [0024]     The SOF signal is a specific periodic packet signal defined in the USB protocol. The USB host transmits the SOF packet signal to the attached USB apparatus through a cable or PCB routing trace every predetermined time interval, and the transmitting period of the SOF packet signal varies with the USB operating mode. In low-speed or full-speed (LS/FS) mode, the period is 1 ms+/−2500 ppm; however, in HS mode the period is reduced to 125 us+/−500 ppm. Accordingly, if the USB apparatus is capable of precisely detecting the SOF packet signal under various of operating modes, the SOF packet signal can be utilized as a reference clock signal of the system. Therefore, the system can utilize the period of the SOF packet signal to calibrate the internal operating frequency.  
         [0025]     For the detecting operation, there are various different detecting methods for the FS/FS mode and HS mode. A brief description is provided as below.  
         [0026]     Please refer to  FIG. 4 ( a ) for reference to a first method of detecting the SOF packet signal in the LS/FS mode.  FIG. 4 ( a ) is a diagram illustrating the SOF detector  110  according to an embodiment of the present invention. The SOF detector  110  includes a clock and data recovery circuit  112 , and a state machine  114 . The method of over-sampling is utilized for detecting the SOF packet signal because the transmitting rate of the LS mode is 1.5 Mbits/sec, and the transmitting rate of FS mode is 12 Mbits/sec.  
         [0027]     In  FIG. 4 ( a ), a signal received from a USB cable or PCB routing trace is transmitted to the clock and data recovery circuit  112  that operates under 96 MHz, and the corresponding recovered clock and recovered data can be obtained. Then, referring to  FIG. 4 ( b ) for reference to a state machine operating in FS mode, the corresponding recovered clock and recovered data is transmitted to the following state machine  114  for further analysis to determine whether the received signal is an SOF packet signal or not. If the received signal is a SOF packet signal, an acknowledgment signal is generated and passed to the next circuit.  
         [0028]     Please refer to  FIG. 5  for reference to a second method of detecting the SOF packet signal in the HS mode.  FIG. 5  shows a diagram illustrating the state machine  115  operating in the HS mode according to an embodiment of the present invention. In the HS mode, the transmitting rate is 480 Mbits/sec, thus the method of over-sampling is inadequate for detecting the SOF packet signal. However, each SOF packet signal in the HS mode will have a consecutive 40-bit data which includes continuous 0&#39;s or 1&#39;s, the so-called End of Packet (EOP). Normally, there are at most seven consecutive bits of 0&#39;s or 1&#39;s due to data encoding algorithm in a data packet signal. Therefore, by detecting a specific low frequency of 0&#39;s or 1&#39;s signal, the existence of the SOF in HS mode can be identified.  
         [0029]     In  FIG. 5 , the received signal in HS mode is analyzed by the state machine  114 , and the currently received signal can also be identified to be a SOF packet signal or not. If the currently received signal is a SOF packet, an acknowledgment signal is generated and passed to the next circuit.  
         [0030]     Please refer to  FIG. 6 .  FIG. 6  is a diagram illustrating an algorithm of the frequency error detecting circuit  120  according to an embodiment of the present invention. As mentioned above, a periodic SOF packet acknowledgment signal can be obtained by the SOF packet signal detector  110 . If a controllable oscillating signal source can be utilized to count the time interval between two adjacent SOF packet acknowledgment signals, the output frequency of the oscillating signal source can be adjusted in accordance with the counting result to achieve the objective of calibrating the frequency. According to the algorithm, a control signal can be obtained for adjusting the output frequency of the above mentioned oscillating signal source. Furthermore, as the periods of the SOF packet signal in the LS/FS mode are different from the periods of the SOF packet signal in the HS mode, the methods of calibrating the frequency are slightly different as well.  
         [0031]     The frequency calibrating method of the LS/FS mode is as provided below for reference:  
         [0032]     (a) the period of the SOF packet signal in the LS/FS mode is 1 ms+/−2500 ppm;  
         [0033]     (b) suppose that the frequency of the clock signal used for counting is 60 MHz;  
         [0034]     (c) within every 1 ms of time interval, the oscillating signal source generates 1 ms *60 MHz=60,000 cycles of clock signal for counting; and  
         [0035]     (d) every cycle of the clock signal used for counting can be represented as a 1/60,000=16.7 ppm of frequency error.  
         [0036]     Additionally, the frequency calibrating method of the HS mode is as provided below:  
         [0037]     (a) the period of the SOF packet signal in the HS mode is 125 us+/−500 ppm;  
         [0038]     (b) suppose that the frequency of the clock signal used for counting is 480 MHz;  
         [0039]     (c) within every 125 us of time interval, the oscillating signal source generates 125 us*480 MHz=60,000 cycles of clock signal for counting; and  
         [0040]     (d) every cycle of the clock signal used for counting can be represented as a 1/60,000=16.7 ppm of frequency error.  
         [0041]     As mentioned above, if the cycle number of the clock signal generated by the oscillating signal source is less than a predetermined value during a time interval between two adjacent SOF packet signals, the generated control signal will indicate that the oscillating signal source must slightly increase the frequency of the output clock. Otherwise, if the cycle number of the clock signal generated by the oscillating signal source is greater than a predetermined value during the time interval between two adjacent SOF packet signals, the generated control signal will indicate that the oscillating signal source must slightly decrease the frequency of the output clock. Accordingly, by the feedback mechanism described, the frequency accuracy of the output clock of the oscillating signal source is close to the frequency accuracy of the incoming SOF packet signal.  
         [0042]     The frequency (i.e., the calibrated frequency of the clock signal) is synchronized to the frequency of the incoming SOF packet signal whenever the counting result is equal to the predetermined value. Under this condition, a clock signal that precisely synchronized with the operating clock of USB host is generated and can be utilized in the following data processing.  
         [0043]     Furthermore, if the calibration time needs to be reduced, an acceptable tolerance range of frequency error can be set. If the difference between the counted cycle number of the clock signal and the predetermined value is smaller than the acceptable tolerance range of frequency error, the frequency error between the two signals is very small, and the calibrated clock signal is capable of being utilized in the subsequent data processing. The calibrating procedure can thus be stopped.  
         [0044]     Please refer to  FIG. 7 .  FIG. 7  is a diagram illustrating a frequency generator  130  with high frequency resolution according to an embodiment of the present invention. The purpose of the frequency generator  130  is for implementing the above mentioned controllable oscillating signal source. Furthermore, as the resolution of the output frequency of the frequency generator  130  is directly related to the precision of the frequency calibration result, the resolution of the output frequency of the frequency generator  130  must be as high as possible to increase the frequency precision of the calibrated clock signal.  
         [0045]     The frequency generator  130  includes a reference clock generator  132 , a fractional-N frequency synthesizer  134 , and a frequency synthesizer  136 .  
         [0046]     (1) Reference Clock Generator  132   
         [0047]     The reference clock generator  132  is for generating a clock signal source as a reference clock of the subsequent fractional-N frequency synthesizer  134 . Normally, a clock generator is implemented by combining of a resistor (R), a capacitor (C), an inductor (L), or other circuit components, and the generated clock frequency is dependent on the value of the respective resistance, capacitance, and inductance. If the R/L/C components are made off-chip, a more accurate resistance, capacitance, or inductance can be obtained (e.g., the error is less than +−10%, or 5%) due to precise components selected by a system manufacturer, and which results in an accurate output frequency. However, if the R/L/C components are made on-chip, the resulting resistance, capacitance, or inductance are less accurate (e.g., the error is greater than +/−20%) due to manufacturing process variation, and which results in a less accurate output frequency of the reference clock generator  132  (e.g., the error might be as high as +/−30%).  
         [0048]     Furthermore, a ring oscillator can be utilized to design the reference clock generator  132 . Thus the frequency of the output clock signal of the generated clock signal source is related to the propagation delay of each inverter. Accordingly, if the inverter is designed as an on-chip component, the frequency of the output clock signal will be influenced significantly by the conditions of the manufacturing process. In other words, the manufacturing sensitivity is high.  
         [0049]     Please refer to  FIG. 8 .  FIG. 8  is a diagram illustrating the reference clock generator  132  shown in  FIG. 7 . The reference clock generator  132  generates a reference frequency by adopting a capacitor and a ring oscillator, and which periodically oscillate due to the charging/discharging manner of the capacitor. The reference frequency determined by this configuration is related to the capacitance, the charging/discharging current, and the manufacturing process variation.  
         [0050]     (2) Fractional-N Frequency Synthesizer  134   
         [0051]     Please refer to  FIG. 9 .  FIG. 9  is a diagram illustrating a fractional-N frequency synthesizer  134 . The fractional-N frequency synthesizer  134  includes a phase/frequency detector  140 , a charge pump circuit  142 , a low-pass filter  144 , a voltage controlled oscillator  146 , an N/N+1 divider  148 , and a sigma-delta controller  150 . Compared with the traditional frequency synthesizer, the fractional-N frequency synthesizer  134  is able to fine-tune the frequency of the output clock signal while the frequency of the input reference clock signal remains unchanged. For example, when the frequency of the input reference clock signal is 12 MHz, the frequency of the output clock signal can be fine-tuned from 480 MHz to 480.1 MHz or other frequency closed to 480 MHz. In other words, if the fractional-N frequency synthesizer  134  is cascaded to the reference clock generator  132 , an oscillating signal source with a very high resolution of frequency can be obtained.  
         [0052]     (3) Frequency Synthesizer  136   
         [0053]     Although the above-mentioned fractional-N frequency synthesizer  134  is capable of generating an adjusted clock signal with very high resolution of frequency, a higher clock jitter is also generated. In the field of communication, the high clock jitter is a significant problem. Thus, high frequency resolution and low clock jitter are required. A frequency synthesizer  136  is also utilized to filter the generated clock signal from the fractional-N frequency synthesizer to assure that the performance of the clock jitter conforms the required specification. If the generated clock signal of the fractional-N frequency synthesizer  134  meets the required specification, the frequency synthesizer  136  can be omitted.  
         [0054]     There are various frequency generating means. For example, the output frequency can be changed by only adjusting the divider of the fractional-N frequency synthesizer  134  while the reference clock frequency keeps unchanged. The output frequency can be changed by adjusting the reference clock frequency while the divider of fractional-N frequency synthesizer  134  is unchanged. Moreover, the output frequency can also be changed by adjusting frequency of the reference clock and the divider of fractional-N frequency synthesizer  134  simultaneously, or even the divider of the frequency synthesizer  136 .  
         [0055]     Therefore, if frequency generator  130  cooperates with the frequency error detecting circuit  120 , the periodic SOF packet signal can be utilized for calibrating the error of the output frequency of the frequency generator, and the frequency error can be controlled to meet the USB specification such that the system can work properly. The calibrated clock signal that transmitted to the frequency error detecting circuit  120  can be generated by the clock signal from the fractional-N frequency synthesizer  134  or from frequency synthesizer  136 .  
         [0056]     According to the disclosure of the present invention, the conventional precise oscillating signal source  16 , such as the crystal oscillating component, can be replaced by an oscillating signal source consisting of the combination of passive components, such as resistors (R), capacitors (C), or inductors (L), and associated active components, such as current sources and comparators to achieve the goal of lower production cost while maintaining good frequency accuracy. Furthermore, the oscillating signal source formed by a ring oscillator also can operate correctly as expected. The above-mentioned resistors, capacitors, inductors, or other associated components are not restricted to be off-chip components, but also can be fabricated on-chip for reducing the manufacturing costs.  
         [0057]     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.