Patent Publication Number: US-7721137-B2

Title: Bus receiver and method of deskewing bus signals

Description:
This application claims the benefit of U.S. Provisional Application Ser. No. 60/712,850, entitled “RECEIVER FOR PARALLEL BUS”, filed Sep. 1, 2005. 

   BACKGROUND OF THE INVENTION 
   1. Field of Invention 
   The application relates to a receiver and, in particular, to a receiver for a parallel bus. 
   2. Related Art 
   With development of the integrated circuit, the processing speed for data bits of the processor may also be promoted. Thus, in order to maintain the whole system at the best performance, transmission bit rate between other element and the integrated circuit is required to promote and match up to the processor for achieving the best performance. 
   Please refer to  FIG. 1 , a PCB (printed circuit board)  1  including a parallel bus  11  and two integrated circuits  12 ,  13  is shown. The parallel bus  11  is electrically connected between the integrated circuit  12  and the integrated circuit  13 . The integrated circuit  12  receives a plurality of data signals  131  and a clock signal  132  delivered from the integrated circuit  13  through the parallel bus  11 . In this case, the parallel bus  11  may be a memory bus, and the integrated circuit  13  may be a DDR-SDRAM or a SDRAM. The integrated circuit  12  may be a system chipset, which connects with other device such as CPU, graphic card, or I/O bus. 
   The data signals  131  and the clock signal  132  are designated to be synchronous or to arrive to the integrated circuit  12  at the same time, however, a signal skew may be caused when the data signals  131  are transmitted through the parallel bus  11  via mismatch transmission path, and therefore it results in low system performance. The signal skew may be caused by the following issues: a length discrepancy between signal lines of the parallel bus  11 , a length discrepancy between signal lines of the integrated circuit  12  or  13 , a different package bond (or bump) location of the integrated circuit  12  or  13 , a path length mismatch package substrate layout mismatch, etc. 
   In the conventional technology, signal lines on PCB  1  have the uniform layouts, so that integrated circuit  12  and  13  resulting in less mismatch between data signals. However, it is required that the PCB  1 , the integrated circuit  12  and  13  have well layout to avoid a discrepancy between transmission paths of the signal lines. 
   It is therefore to reduce the skew amount between the data signals in the receiver, so as to adapt the receiver to the transmission path discrepancy of signals lines resulting from the layout of the mother board or the package board becomes important. 
   SUMMARY OF THE INVENTION 
   A receiver for a parallel bus and a phase synchronizing method for the parallel bus which can reduce the timing discrepancy between the data signals transmitted through the parallel bus is provided. 
   A bus receiver receives at least one first signal and a second signal both generated from a chip connected to a parallel bus. The bus receiver includes a receiving module and a deskewing module. The receiving module is electrically connected to the parallel bus and receives the first signal and the second signal transmitted through the parallel bus. The deskewing module is electrically connected to the receiving module and deskews the phase of the first signal and the phase of the second signal. The first signal and the second signal are in the same phase. 
   A method of deskewing bus signals, which is for at least one first signal and a second signal to be in the same phase both generated from an integrated circuit connected to a parallel bus, including the following steps: comparing the phases of the first signal and the second signal to enable a first phase skew signal or a second phase skew signal; and adjusting a delay time for transmitting the first signal and the second signal in response to the first phase skew signal or the second phase skew signal. 
   As mentioned above, the receiver and method deskewing bus signals of the invention compare the phase between the first signal and the second signal to adjust them, such that the phases of the first signal and the second signal are close to each other. Therefore, a skew amount between the first signal and the second signal is reduced, and transmission rate and performance of the receiver are improved. 

   
     BRIEF DESCRIPTION OF THE DRAWINGS 
     The invention will become more fully understood from the detailed description given herein below illustration only, and thus is not limitative of the present invention, and wherein: 
       FIG. 1  is a block diagram showing the conventional printed circuit board; 
       FIG. 2  is a block diagram showing a receiver for a parallel bus according to an embodiment of the invention; 
       FIG. 3  is another block diagram showing the receiver for the parallel bus according to the embodiment of the invention; 
       FIG. 4  is a schematic diagram showing a filter unit and a phase skew signal in the receiver for the parallel bus according to the embodiment of the invention; 
       FIG. 5  is a block diagram showing the deskewing module in the receiver for the parallel bus according to the embodiment of the invention; 
       FIG. 6  is a schematic diagram showing the deskewed signals in the receiver for the parallel bus according to the embodiment of the invention; 
       FIG. 7  is another schematic diagram showing the deskewed signals in the receiver for the parallel bus according to the embodiment of the invention; 
       FIG. 8  is a block diagram showing a receiver for a parallel bus according to another embodiment of the invention; 
       FIG. 9  is a block diagram showing the deskewing module in the receiver for the parallel bus according to another embodiment of the invention; 
       FIG. 10  is a schematic diagram showing the deskewed signals in the receiver for the parallel bus according to another embodiment of the invention; 
       FIG. 11  is another schematic diagram showing the deskewed signals in the receiver for the parallel bus according to another embodiment of the invention; and 
       FIG. 12  is flow chart showing a signal deskewing method for a parallel bus according to the embodiment of the application. 
   

   DETAILED DESCRIPTION OF THE INVENTION 
   The application will be described below with reference to relevant drawings, wherein the same elements are referred with the same reference numbers. 
   Please refer to  FIG. 2 , a receiver  4  according to one embodiment of the invention is electrically connected to one terminal of a parallel bus  2 . Another terminal of the parallel bus  2  is electrically connected to an integrated circuit  3 . Herein, the integrated circuit  3  generates a plurality of first signals S 10 -S 1n  and a second signal S 20 . 
   The receiver  4  includes a receiving module  41  and a deskewing module  42 . The receiving module  41  is electrically connected to the parallel bus  2 , and receives the first signals S 10 -S 1n  and the second signal S 20  transmitted through the parallel bus  2  from the integrated circuit  3 . The deskewing module  42  is electrically connected to the receiving module  41  to receive the first signals S 10 -S 1n  and the second signal S 20  respectively, and then adjusts the phase of the first signals S 10 -S 1n  and the second signal S 20  to synchronize the first signals S 10 -S 1n  and the second signal S 20 . 
   The second signal S 20  can be a data signal or a clock signal. The first signals S 10 -S 1n  can be data signals. If the first signals S 10 -S 1n  and the second signal S 20  are transmitted from the integrated circuit  3  synchronously but arrive at the receiving module  41  asynchronously, the deskewing module  42  may adjust the phase of the first signals S 10 -S 1n  and the second signal S 20  to synchronize the first signals S 10 -S 1n  and the second signal S 20 . 
   Please referring to  FIG. 3 , the first signals S 10 -S 1n  and second signal S 20  are illustrated as data signals Data 0 -Data n  and clock signal Clk respectively in the following explanation. 
   The deskewing module  42  is electrically connected to the receiving module  41  to receive the data signals Data 0 -Data n  and the clock signals Clk. The deskewing module  42  includes a plurality of delay units  421  and a plurality of comparing units  422 . In the following description about signal deskewing process, the data signal DATA n  is illustrated below for an example, and other data signals have the same signal deskewing process as the data signal DATA n . Delay unit  421  is electrically connected to the receiving module  41  to receive the data signal DATA n . The comparing unit  422  can be implemented as a phase detector, and is electrically connected to the delay unit  421  and the receiving module  41  respectively to receive the data signal DATA n  and clock signal Clk. The comparing unit  422  compares the phase difference between the data signal DATA n  and the clock signal Clk. 
   In the embodiment, when the data signal DATA n  falls behind the clock signal Clk, the comparing unit  422  enables a first phase skew signal UP. If the data signal DATA n  is seriously behind the clock signal Clk, the comparing unit  422  uninterruptedly enables the first phase skew signal UP within a continuous of clock timing. On the contrary, when the data signal DATA n  is ahead of the clock signal Clk, the comparing unit  422  enables a second phase skew signal DN. If the data signal DATA n  is seriously ahead the clock signal Clk, the comparing unit  422  uninterrupted enables the second phase skew signal DN within a continuous of clock timing. 
   The delay unit  421  receives the first phase skew signal UP and the second phase skew signal DN. It decreases a delay time for transmitting the data signal DATA n  when the first phase skew signal UP is enabled, or it increases the delay time for transmitting the data signal DATA n  when the second phase skew signal DN is enabled. Thus, the delay time for transmitting the data signal DATA n  is controlled, and the data signal DATA n  and the clock signal Clk are synchronous. 
   In addition, referring to  FIG. 4 , the deskewing module  42  further includes a filter unit  423 . The filter unit  423  is electrically connected between the comparing unit  422  and the delay unit  421 . In the embodiment, the filter unit  423  includes six D Flip Flops  4231 - 4236  and two AND gates  4237 - 4238 . The D Flip Flops  4231 - 4233  and the AND gate  4237  is configured to process the first phase skew signal UP. The D Flip Flops  4234 - 4236  and the AND gate  4238  are configured to process the second phase skew signal DN. 
   When the first phase skew signal UP or the second phase skew signal DN is continuously enabled at least three cycles of the clock time, a third phase skew signal UP′ or a fourth phase skew signal DN′ is enabled and outputted to the delay unit  421 . Then, the delay unit  421  adjusts the delay time of the data signal DATA n  in response to the third phase skew signal UP′ and the fourth phase skew signal DN′. Therefore, the delay unit  421  avoids sensitively adjusting the delay time of the data signal DATA n  according the first phase skew signal UP or the second phase skew signal DN. In addition, the amount of the D Flip Flops in the filter unit  423  is illustrated as six but is not limited to six. 
   Referring to  FIG. 5 , in the embodiment, the deskewing module  42  further includes a limit counter  424  and an adjusting unit  425 . The delay unit  421  includes a delay controller  4211  and a counter  4212 . 
   The counter  4212  is electrically connected to the filter unit  423  to receive the third phase skew signal UP′ and the fourth phase skew signal DN′. It counts enabled times of the third phase skew signal UP′ and the fourth phase skew signal DN′, and stores the enabled times in a count value C v . The delay controller  4211  is electrically connected to the counter  4212  and the receiving module  41  to receive the count value C v  and the data signal Data n , respectively. It controls the delay time for transmitting the data signal Data n  in order to synchronize the data signal Data n  with the clock signal Clk. 
   In the embodiment, the range of the count value C v  is between 0 and 7. The counter  4212  decreases the count value C v  with 1 when the third phase skew signal UP′ is enabled. If the count value C v  is 0, the count value C v  remains being 0 after decreasing. Similarly, the counter  4212  increases the count value C v  with 1 when the fourth phase skew signal DN′ is enabled. If the C v  is 7, the count value C v  remains being 7 after increasing. Therefore the count value C v  responses the skew amount between the data signal Data n  and the clock signal Clk. 
   For example, when the count value C v  is 7, the delay controller  4211  delays transmitting the data signal Data n  for 7 unit time periods. When the count value C v  is 1, the delay controller  4211  delays transmitting the data signal Data n  for 1 unit time period. The unit cycle is shorter than the cycle of the clock signal Clk. If the unit time period is shorter, the resolution of the delay time is higher. 
   Referring to  FIG. 6 , the data signal Data n−1  falls behind the clock signal Clk, and the data signal Data n  is ahead of the clock signal Clk. After applying with the process described above, the corresponding delay controller  4211  decreases the delay time of the data signal Data n−1 , and another corresponding delay controller  4211  increases the delay time of the data signal Data n  respectively. Thus the skew amount between data signals Data n−1 , Data n  and the clock signal Clk is reduced, and these signals are synchronous. 
   Please referring to  FIG. 5  again, when the count value C v  of the counter  4212  reaches its limit (ex: 0 or 7), the adjustable range of the delay controller  4211  also reaches its limit. Thus the delay controller  4211  is not able to adjust the data signal Data n  faster or slower. At this moment, the counter  4212  enables a first deskew limit signal M up  when the count value C v  is 0, or enables a second deskew limit signal M dn  when the count value C v  is 7. 
   The limit counter  424  is electrically connected to the counter  4212  to receive the first deskew limit signal M up  and the second deskew limit signal M dn  to generate a delay value D v . In the embodiment, the limit counter  424  counts and stores the enabled times of the first deskew limit signal M up  and the second deskew limit signal M dn  in the delay value D v . When the first deskew limit signal M up  is enabled, the delay value D v  is increased with 1. When the second deskew limit signal M dn  is enabled, the delay value D v  is decreased with 1. The range of the delay value D v  is between 0 and 7. 
   The adjusting unit  425  is electrically connected to the receiving module  41  and the limit counter  424  respectively to receive the clock signal Clk and the delay value D v . The adjusting unit  425  controls the delay time for transmitting the clock signal Clk in response to the delay value D v , and further adjusts the phase of the clock signal Clk close to the phase of the data signal Data n . Therefore, the data signal Data n  and the clock signal Clk are easier to synchronize. 
   For example, when the delay value D v  is 7, the adjusting unit  425  delays transmitting the clock signal Clk for 7 unit time periods. When the delay value D v  is 1, the adjusting unit  425  delays transmitting the clock signal Clk for 1 unit time period. 
   Referring to  FIG. 7 , the data signals Data 3 -Data n  are close to each other in phase. After applying the process described above, the adjusting unit  425  increases the delay time of the clock signal Clk. Therefore, the skew amount between data signals Data 3 -Data n  and the clock signal Clk is reduced so that these signals are synchronous. 
   If most signals are close to each other in phase and only the clock signal is far away from the data signals in phase, the phase of the clock signal is adjusted first because the skew amount between the data signals is smaller than the skew amount between the clock signal and the data signal. It is more effective to reduce the skew amount between the clock signal and the data signal for synchronizing these signals. 
   Referring to  FIGS. 8 and 9 . In difference with the above embodiment, the second signal S 20  is a data signal Data n+1 . The elements in this embodiment and those in the above embodiments which are marked with the same symbols or numbers, have the same function and result, thus the detailed descriptions are omitted here. 
   Referring to  FIG. 10 , the data signal Data n−1  falls behind the data signal Data n+1 , and the data signal Data n  is ahead of the data signal Data n+1 . After applying with the process described above, the corresponding delay controller  4211  decreases the delay time of the data signal Data n−1 , and another corresponding delay controller  4211  increases the delay time of the data signal Data n , respectively. Thus, the skew amount between data signals Data n−1 , Data n  and Data n  is reduced, so that these signals are synchronous. 
   In addition, referring to  FIG. 11 , the data signals Data n-3 -Data n  are close to each other in phase, and fall behind the data signal Data n+1  distantly. After applying the process described above, the adjusting unit  425  increases the delay time of the data signal Data n+1 . Thus, the skew amount between data signals Data n-3 -Data n+1  is reduced, so that these signals are synchronous. 
   If most signals are close to each other in phase and only one data signal is far away from the other data signals in phase, the phase of the lonely data signal is adjusted first. It is more effective to reduce the skew amount between the lonely data signal and the other data signals for synchronizing these signals. 
   The receiver  4  not only adjusts the skew amount of the data signal referring to the clock signal, but also adjusts the skew amount of the data signals referring to one data signal. In addition, the receiver  4  can adjust the clock signal regarding as a reference signal for synchronizing the data signals and the reference signal more easily, it can adjust the data signal regarding as another reference signal for synchronizing the data signals more easily, too. 
   In the above embodiment, the receiver  4  is implemented with a receiver in a chipset on a motherboard, the integrated circuit  3  is implemented with a memory or other function integrated circuit such as chipset on the motherboard. The parallel bus  2  is implemented with a memory bus, a high-speed bus between chipsets or between a processor and a chipset. 
   Besides, the receiver  4  adjusts the delay time of the deskewing module  42  when initialing a communication with the integrated circuit  3  and until the deskewing module  42  output signals synchronously. After the receiver  4  initials the communication with the integrated circuit  3 , the delay time of the deskewing module  42  is configured, thus the deskewing module  42  output signals synchronously and the skew amount between the signals is reduced. 
   Referring to  FIG. 12 , a method of deskewing bus signals according to the embodiment of the invention is for an integrated circuit connected to a parallel bus and such that at least one first signal and a second signal, which are outputted from the integrated circuit and transmitted through the parallel bus, are synchronous. The method includes the following steps P 01  and P 02 . The step P 01  compares the phase of the first signal and the second signal to enable a first phase skewing signal or a second phase skewing signal. The step P 02  adjusts a delay time for transmitting the first signal and the second signal in response to the first phase skewing signal or the second phase skewing signal. 
   The method of deskewing bus signals in the embodiment can be applied to the receiver as mentioned in the above embodiment as shown in  FIG. 2  to  FIG. 11 . Thus, the method of deskewing bus signals of this embodiment can be realized with referring to the previous embodiment, and the detailed descriptions are omitted here. 
   As mentioned above, the receiver and method deskewing bus signals of the invention compare the phase between the first signal and the second signal to adjust them, such that the phases of the first signal and the second signal are close to each other. Therefore, a skew amount between the first signal and the second signal is reduced, so that transmission rate and performance of the receiver are improved. 
   Although the invention has been described with reference to specific embodiments, this description is not meant to be construed in a limiting sense. Various modifications of the disclosed embodiments, as well as alternative embodiments, will be apparent to persons skilled in the art. It is, therefore, contemplated that the appended claims will cover all modifications that fall within the true scope of the invention.