IP Library Granted Patent US 8,161,313
Granted Patent B2
US 8,161,313 · App. 12/241,960 · Granted Apr 17, 2012

Serial-connected memory system with duty cycle correction

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 8,161,313
App. No.
12/241,960
Granted
Apr 17, 2012
Kind
B2
Abstract

Systems and methods for correcting clock duty cycle are provided for application in serial-connected devices operating as slave devices. A master device provides a clock to the first slave device, and each slave device passes the clock to the next slave device in turn, and the last slave device returns the clock to the master device. The master device compares the outgoing clock to the returned clock and determines if a duty cycle correction is needed. If so, the master device generates and outputs commands for the slave devices to perform duty cycle adjustment. Each of the slave devices has a circuit for performing duty cycle adjustment. In some implementations, each slave device is a memory device, and the master device is a memory controller.

Claims (111)

1. A method in a slave device of a plurality of serial-connected slave devices, the method comprising:

receiving a command from a master device specifying an adjustment to a clock duty cycle of an input clock signal from the master device or a preceding serial-connected slave device;

receiving an input clock signal from the master device or a preceding serial-connected slave device;

generating a duty cycle corrected clock signal from the input clock signal in accordance with the command;

outputting the duty cycle corrected clock signal to the master device or a succeeding serial-connected slave device.

2. The method of claim 1 wherein the slave device is a memory device and the master device is a memory controller.

3. The method of claim 1 further comprising:

receiving a command from a master device specifying how the slave device is to adjust a delay to be applied to at least one signal output by the slave device;

receiving at least one input signal, the at least one input signal comprising at least the input clock signal;

for each of the at least one input signal:

generating a delayed version of the input signal in accordance with the command;

outputting the delayed version of the input signal, the delayed version of the input clock signal comprising a delayed version of the duty cycle corrected clock signal.

4. The method of claim 1 wherein receiving a command from a master device specifying an adjustment to a clock duty cycle comprises receiving a command containing a command identifier that identifies the command as a duty cycle correction command, the command further containing data indicating how to adjust the duty cycle.

5. The method of claim 4 wherein receiving a command further comprises receiving a device address indicating which device(s) acting as slave devices is to execute the command.

6. The method of claim 5 further comprising:

performing the step of generating the duty cycle corrected clock signal in accordance with the command if the command has a device address that matches a device address of the slave device;

performing the step of generating the duty cycle corrected clock signal in accordance with the command if the command has a device address that is a broadcast device address.

7. The method of claim 4 wherein:

generating a duty cycle corrected clock signal comprises:

a) generating a half rate clock signal from the input clock signal;

b) delaying the half rate clock signal by a selected one of a plurality of delays to produce a delayed half rate clock signal;

c) combining the half rate clock signal with the delayed half rate clock signal to produce the duty cycle corrected clock signal.

8. The method of claim 7 wherein the data indicating how to adjust the duty cycle correction comprises an indication of the selected one of the plurality of delays.

9. A method in a memory system comprising a master device and a plurality of serial-connected slave devices comprising at least a first slave device and a last slave device, the method comprising:

in the master device:

a) outputting a first clock signal that functions as an input clock signal of the first slave device;

b) receiving a second clock signal that is an output clock signal of the last slave device;

c) generating a duty cycle correction command as a function of a duty cycle of the second clock signal and outputting the duty cycle correction command;

in the first slave device of the plurality of serial-connected slave devices:

a) receiving the first clock signal from the master device as the input clock signal of the first slave device;

b) generating an output clock signal from the input clock signal;

in each other slave device of the plurality of serial-connected slave devices:

a) receiving the output clock signal of a preceding slave device as an input clock signal of the slave device;

b) generating an output clock signal from the input clock signal;

in each of at least one of the plurality of serial-connected devices acting as a slave devices:

a) receiving the duty cycle correction command;

b) generating a duty cycle corrected clock signal from the input clock signal in accordance with the duty cycle correction command;

c) outputting the duty cycle corrected clock signal as the output clock signal of the slave device.

10. The method of claim 9 wherein each slave device is a memory device and the master device is a memory controller.

11. The method of claim 9 further comprising:

in the master device:

a) outputting at least one output signal, the at least one output signal comprising the first clock signal to function as an input clock signal of the first slave device;

b) receiving a second clock signal that is an output clock signal of the last slave device;

c) determining an amount of phase offset between the first clock signal and the second clock signal;

d) generating an output delay adjustment command as a function of the phase offset between the first clock signal and the second clock signal and outputting the output delay adjustment command.

12. The method of claim 9 wherein generating a duty cycle correction command as a function of a duty cycle of the second clock signal and outputting the duty cycle correction command comprises generating a duty cycle correction command for execution by any specified one of the plurality of serial-connected slave devices.

13. The method of claim 12 wherein generating a duty cycle correction command as a function of a duty cycle of the second clock signal and outputting the duty cycle correction command comprises generating a duty cycle correction command for execution by all of the plurality of serial-connected slave devices.

14. The method of claim 9 wherein receiving the duty cycle correction command comprises receiving a command containing a command identifier that identifies the command as a duty cycle correction command, and containing data indicating how to adjust the duty cycle.

15. The method of claim 14 wherein:

generating a duty cycle corrected clock signal comprises:

a) generating a half rate clock signal from the input clock signal;

b) delaying the half rate clock signal by a selected one of a plurality of delays to produce a delayed half rate clock signal;

c) combining the half rate clock signal with the delayed half rate clock signal to produce the duty cycle corrected clock signal.

16. The method of claim 15 wherein the data indicating how to adjust the duty cycle correction comprises an indication of the selected one of the plurality of delays.

17. A slave device for use in an arrangement comprising a plurality of serial-connected slave devices, the slave device comprising:

a command input for receiving a command from a master device specifying an adjustment to a duty cycle of an input clock signal from the master device or a preceding serial-connected slave device;

a clock input for receiving the input clock signal from the master device or a preceding serial-connected slave device;

a duty cycle correction circuit for generating a duty cycle corrected clock signal from the clock input in accordance with the control command;

a clock output for outputting the duty cycle corrected clock signal to the master device or a succeeding serial-connected slave device.

18. The slave device of claim 17 wherein the slave device is a memory device.

19. The slave device of claim 17 wherein:

the command input is also for receiving a command from the master device specifying an adjustment to output delay;

an output delay adjustment circuit for generating a delayed clock signal from the duty cycle corrected clock signal in accordance with the command;

wherein the clock output for outputting the duty cycle corrected clock signal outputs the delayed clock signal.

20. The slave device of claim 17 further comprising:

a command processing circuit that processes the command,

wherein the command comprises:

a command identifier that identifies the command as a duty cycle correction command; and

data indicating how to adjust the duty cycle.

21. The slave device of claim 20 further comprising:

a device address register;

wherein the command further comprises a device address indicating which slave device is to execute the command, the slave device configured to execute the command if the device address matches contents of the device address register.

22. The slave device of claim 17 wherein the duty cycle correction circuit comprises:

a) a clock divider circuit that generates a half rate clock signal from the input clock signal;

b) a delay circuit that delays the half rate clock signal by a selected one of a plurality of delays to produce a delayed half rate clock signal;

c) a combiner that combines the half rate clock signal with the delayed half rate clock signal to produce the duty cycle corrected clock signal.

23. The slave device of claim 22 wherein the delay circuit comprises M unit delay elements, M>=2, the duty cycle correction circuit further comprising:

an N-to-M decoder that decodes signals received on N input lines, N>=1, into a selection of how many of the unit delay elements are to be active in delaying the half rate clock signal to produce the delayed half rate clock signal.

24. A system comprising:

a plurality of serial-connected device acting as slave devices according to claim 17 comprising at least a first slave device and a last slave device;

a master device connected to the first slave device and to the last slave device;

the master device configured to output a first clock signal that functions as an input clock signal of the first slave device;

the master device having a clock input for receiving a second clock signal that is an output clock signal of the last slave device;

a duty detector that determines a duty cycle of the second clock signal;

a command generator that generates a duty cycle correction command specifying an adjustment to a clock duty cycle as a function of the duty cycle of the second clock signal;

wherein, the first slave device of the plurality of serial-connected device acting as slave devices:

a) receives the first clock signal from the master device as the input clock signal of the first slave device;

b) generates an output clock signal from the input clock signal;

wherein each other slave device of the plurality of serial-connected device acting as slave devices:

a) receives the output clock signal of a preceding slave device as an input clock signal of the slave device;

b) generates an output clock signal from the input clock signal;

wherein at least one of the plurality of serial-connected slave devices:

a) receives the duty cycle correction command;

b) generates a duty cycle corrected clock signal in accordance with the duty cycle correction command;

c) outputs the duty cycle corrected clock signal as the output clock signal of the slave device.

25. The system of claim 24 wherein the system is a memory system, each slave device is a memory device and the master device is a memory controller.

26. The memory system of claim 24 further comprising:

a phase detector that determines an amount of phase offset between the first clock signal and the second clock signal;

wherein the command generator also generates an output delay adjustment command as a function of the amount of phase offset;

wherein, the first slave device of the plurality of serial-connected slave devices:

a) receives the first clock signal from the master device as the input clock signal of the first slave device;

b) generates an output clock signal from the input clock signal;

wherein each other slave device of the plurality of serial-connected slave devices:

a) receives the output clock signal of a preceding slave device as an input clock signal of the slave device;

b) generates an output clock signal from the input clock signal;

wherein at least one of the plurality of serial-connected slave devices:

a) receives the output delay adjustment command;

b) generates the output clock signal of the device by delaying the input clock signal of the device in accordance with the output delay adjustment command.

27. The memory system of claim 24 wherein the command generator is configured to generate a duty cycle correction command as a function of a duty cycle of the second clock signal and output the duty cycle correction command by generating a duty cycle correction command for execution by a specified one of the plurality of serial-connected device acting as slave devices.

28. The memory system of claim 24 wherein the command generator is configured to generate a duty cycle correction command as a function of a duty cycle of the second clock signal and output the duty cycle correction command by generating a duty cycle correction command for execution by all of the plurality of serial-connected device acting as slave devices.

29. The memory system of claim 24 wherein receiving the duty cycle correction command comprises receiving a command containing a command identifier that identifies the command as a duty cycle correction command, and containing data indicating how to adjust the duty cycle.

Assignments (10)
RELEASE OF U.S. PATENT AGREEMENT (FOR NON-U.S. GRANTORS) Recorded Oct 12, 2018
From: ROYAL BANK OF CANADA, AS LENDER
To: CONVERSANT INTELLECTUAL PROPERTY MANAGEMENT INC.
Reel/Frame 047645/0424 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 26, 2015
From: CONVERSANT INTELLECTUAL PROPERTY MANAGEMENT INC.
To: NOVACHIPS CANADA INC.
Reel/Frame 035102/0702 →
RELEASE OF SECURITY INTEREST Recorded Feb 12, 2015
From: CPPIB CREDIT INVESTMENTS INC.; ROYAL BANK OF CANADA
To: CONVERSANT INTELLECTUAL PROPERTY MANAGEMENT INC.
Reel/Frame 034979/0850 →
U.S. PATENT SECURITY AGREEMENT (FOR NON-U.S. GRANTORS) Recorded Sep 9, 2014
From: CONVERSANT INTELLECTUAL PROPERTY MANAGEMENT INC.
To: CPPIB CREDIT INVESTMENTS INC., AS LENDER; ROYAL BANK OF CANADA, AS LENDER
Reel/Frame 033706/0367 →
CHANGE OF ADDRESS Recorded Sep 3, 2014
From: CONVERSANT INTELLECTUAL PROPERTY MANAGEMENT INC.
To: CONVERSANT INTELLECTUAL PROPERTY MANAGEMENT INC.
Reel/Frame 033678/0096 →
RELEASE OF SECURITY INTEREST Recorded Aug 7, 2014
From: ROYAL BANK OF CANADA
To: CONVERSANT INTELLECTUAL PROPERTY MANAGEMENT INC.; CONVERSANT IP N.B. 868 INC.; CONVERSANT IP N.B. 276 INC.
Reel/Frame 033484/0344 →
CHANGE OF NAME Recorded Mar 13, 2014
From: MOSAID TECHNOLOGIES INCORPORATED
To: CONVERSANT INTELLECTUAL PROPERTY MANAGEMENT INC.
Reel/Frame 032439/0638 →
U.S. INTELLECTUAL PROPERTY SECURITY AGREEMENT (FOR NON-U.S. GRANTORS) - SHORT FORM Recorded Jan 10, 2012
From: 658276 N.B. LTD.; 658868 N.B. INC.; MOSAID TECHNOLOGIES INCORPORATED
To: ROYAL BANK OF CANADA
Reel/Frame 027512/0196 →
CHANGE OF ADDRESS Recorded Nov 11, 2010
From: MOSAID TECHNOLOGIES INCORPORATED
To: MOSAID TECHNOLOGIES INCORPORATED
Reel/Frame 025346/0806 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 30, 2008
From: OH, HAKJUNE
To: MOSAID TECHNOLOGIES INCORPORATED
Reel/Frame 021609/0966 →