IP Library Granted Patent US 7,260,734
Granted Patent B2
US 7,260,734 · App. 10/480,736 · Granted Aug 21, 2007

Method and circuit for transmitting data between systems having different clock speeds

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,260,734
App. No.
10/480,736
Granted
Aug 21, 2007
Kind
B2
Abstract

In order to carry out an equidistant data transfer between clock domains having different clock rates, a combination of a counter ( 1 ) and a finite state machine ( 2 ) is proposed. Said counter ( 1 ) continuously counts off the clock cycles of the faster clock (CLK 2 , while the finite state machine ( 2 ) monitors the clock edges of the slower clock (CLK 1 ) and an enabling signal (EN) for the data transfer with the faster clock (CLK 2 ) is produced according to the count of the counter ( 1 ).

Claims (40)

1. A method for transmitting data from a first system having a first clock to a second system having a second clock, whereby the clock rate of the second clock is higher than the clock rate of the first clock, the method comprising:

a) detecting a reference clock edge of the first clock;

b) identifying a clock cycle of the second clock in which the reference clock edge is detected, the identified clock cycle referenced to a first clock cycle period;

c) outputting subsequent data to be transmitted using the second clock only on subsequent occurrences of the identified clock cycle of the second clock; and

d) for each subsequent data to be transmitted, determining whether a clock edge of the first clock corresponding to the subsequent data occurs during a set of acceptable clock cycles of the second clock, wherein the set of acceptable clock cycles includes the identified clock cycle and an immediately adjacent clock cycle of the identified clock cycle.

2. The method of claim 1 , wherein step c) further comprises

c1) buffering subsequent data to be transmitted; and

c2) outputting the buffered data using the second clock only on subsequent occurrences of the identified clock cycle of the second clock.

3. A method for transmitting data from a first system having a first clock to a second system having a second clock whereby the clock rate of the second clock is higher than the clock rate of the first clock, the method comprising:

a) detecting a reference clock edge of the first clock;

b) identifying a clock cycle of the second clock in which the reference clock edge is detected, the identified clock cycle referenced to a first clock cycle period;

c) outputting subsequent data to be transmitted using the second clock only on subsequent occurrences of the identified clock cycle of the second clock; and

d) for each subsequent data to be transmitted, determining whether a clock edge of the first clock corresponding to the subsequent data occurs during a set of acceptable clock cycles of the second clock, and

e) returning to step a) if it is determined that the clock edge of the first clock corresponding to the subsequent data occurs out of the set of acceptable clock cycles of the second clock.

4. The method of claim 3 wherein the set of acceptable clock cycles includes the identified clock cycle.

5. The method of claim 3 wherein the set of acceptable clock cycles further includes an immediately adjacent clock cycle of the identified clock cycle.

6. The method of claim 3 , wherein step c) further comprises

c1) buffering subsequent data to be transmitted; and

c2) outputting the buffered data using the second clock only on subsequent occurrences of the identified clock cycle of the second clock.

7. The method of claim 6 , wherein the set of acceptable clock cycles includes the identified clock cycle.

8. The method of claim 7 , wherein the set of acceptable clock cycles further includes an immediately adjacent clock cycle of the identified clock cycle.

9. The method of claim 6 , wherein the set of acceptable clock cycles further includes an immediately adjacent clock cycle of the identified clock cycle.

10. An arrangement for transmitting data from a first system having a first clock to a second system having a second clock, whereby the clock rate of the second clock is higher than the clock rate of the first clock, the arrangement comprising:

a counter configured to generate a count value for each clock cycle of the second clock;

a memory device configured to receive data to be transmitted, the received data clocked by the first clock;

a control unit operable to

cause the memory to output the received data on clock cycles of the second clock corresponding to a first counter value,

identify the counter value corresponding to a clock edge of the first clock associated with the received data, and

determine whether the counter value corresponds to a predetermined set of counter values, the predetermined set of counter values including the first counter value and one or more counter values adjacent to the first counter value, the one or more adjacent counter values including higher and lower adjacent counter values.

11. The arrangement of claim 10 , wherein the control unit further operable to generate cause the memory to output the received data memory only if the control unit determines that the counter value corresponds to a predetermined set of counter values.

12. An arrangement for transmitting data from a first system having a first clock to a second system having a second clock, whereby the clock rate of the second clock is higher than the clock rate of the first clock, the arrangement comprising:

a counter configured to generate a count value for each clock cycle of the second clock;

a memory device configured to receive data to be transmitted, the received data clocked by the first clock;

a control unit operable to

cause the memory to output the received data on clock cycles of the second clock corresponding to a first counter value,

identify the counter value corresponding to a clock edge of the first clock associated with the received data,

determine whether the counter value corresponds to a predetermined set of counter values, wherein the predetermined set of counter values includes the first counter value, and

cause the memory to output the received data memory only if the control unit determines that the counter value corresponds to a predetermined set of counter values.

13. The arrangement of claim 12 , wherein the predetermined set of counter values includes one or more counter values adjacent to the first counter value.

14. The arrangement of claim 13 , wherein the one or more adjacent counter values includes higher and lower adjacent counter values.

Assignments (5)
MERGER AND CHANGE OF NAME Recorded Jan 17, 2018
From: LANTIQ DEUTSCHLAND GMBH; LANTIQ BETEILIGUNGS-GMBH & CO. KG
To: LANTIQ BETEILIGUNGS-GMBH & CO. KG
Reel/Frame 045086/0015 →
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 025413/0340 AND 025406/0677 Recorded Apr 17, 2015
From: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
To: LANTIQ BETEILIGUNGS-GMBH & CO. KG
Reel/Frame 035453/0712 →
GRANT OF SECURITY INTEREST IN U.S. PATENTS Recorded Nov 29, 2010
From: LANTIQ DEUTSCHLAND GMBH
To: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
Reel/Frame 025406/0677 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 15, 2010
From: INFINEON TECHNOLOGIES WIRELESS SOLUTIONS GMBH
To: LANTIQ DEUTSCHLAND GMBH
Reel/Frame 024529/0635 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 3, 2010
From: INFINEON TECHNOLOGIES AG
To: INFINEON TECHNOLOGIES WIRELESS SOLUTIONS GMBH
Reel/Frame 024483/0021 →