IP Library Granted Patent US 7,991,921
Granted Patent B2
US 7,991,921 · App. 12/046,324 · Granted Aug 2, 2011

System and method for reducing power consumption of memory in an I/O controller

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,991,921
App. No.
12/046,324
Granted
Aug 2, 2011
Kind
B2
Abstract

A memory system for an I/O controller which includes a memory with multiple memory blocks, a supply voltage control circuit providing power to each memory block, and control logic. Each memory block retains stored information with reduced power consumption when receiving a reduced voltage level. The control logic allocates buffers in the memory and controls the supply voltage control circuit to provide the full voltage level to at least one memory block of at least one allocated buffer and to provide the reduced voltage level to remaining memory blocks. Each memory block includes one or more buffers. In various embodiments the control logic fully powers each memory block of a buffer or less than all of the memory blocks. A linked buffer structure may be used to reduce the memory blocks of an allocated buffer receiving full power, such as only one memory block in the buffer.

Claims (46)

1. A memory system for an input/output controller, comprising:

a memory comprising a plurality of memory blocks each having a corresponding one of a plurality of source voltage inputs, wherein each of said plurality of memory blocks performs transfer operations when its source voltage input is at a full voltage level and retains stored information with reduced power consumption when its source voltage input is at a reduced voltage level;

a supply voltage control circuit having a plurality of outputs, each said output coupled to a corresponding one of said plurality of source voltage inputs of said memory, wherein each of said plurality of outputs provides either one of said full voltage level and said reduced voltage level; and

control logic which allocates buffers in said memory to perform transfer operations based on input/output protocol, and which controls said supply voltage circuit to provide said full voltage level to at least two allocated memory blocks which includes at least one memory block of at least one allocated buffer and to provide said reduced voltage level to remaining memory blocks.

2. The memory system of claim 1 , wherein said control logic allocates a buffer comprising at least two memory blocks, and wherein said control logic controls said supply voltage control circuit to provide said full voltage level to less than all of said at least two memory blocks of said allocated buffer.

3. The memory system of claim 2 , wherein said control logic controls said supply voltage control circuit to provide said full voltage level to only one of said at least two memory blocks of said allocated buffer at a time.

4. The memory system of claim 1 , wherein said control logic organizes said plurality of memory blocks into a plurality of buffer blocks in which each buffer block is associated with at least one of said plurality of memory blocks, wherein said control logic allocates a buffer and dynamically links a buffer block into said allocated buffer as needed, and wherein said control logic causes said supply voltage control circuit to provide said full supply voltage to each of said plurality of memory blocks associated with each one of said plurality of buffer blocks newly linked into said allocated buffer.

5. The memory system of claim 4 , wherein said control logic causes said supply voltage control circuit to provide said reduced supply voltage to each of said plurality of memory blocks associated with a last one of said plurality of buffer blocks in said allocated buffer after linking a new buffer block.

6. The memory system of claim 4 , wherein said control logic determines an end of a current buffer block in said allocated buffer during usage, follows a link to a next buffer block of said allocated buffer, causes said supply voltage control circuit to provide said full supply voltage to each of said plurality of memory blocks associated with said next buffer block, and causes said supply voltage control circuit to provide said reduced supply voltage to each of said plurality of memory blocks associated with said current buffer block.

7. The memory system of claim 4 , wherein said input/output protocol indicates a new read or write transfer operation using said allocated buffer, wherein said control logic dynamically links a new buffer block into said allocated buffer to perform said new read or write transfer operation, and wherein said control logic causes said supply voltage control circuit to provide said full supply voltage to said new buffer block and to provide said reduced supply voltage to a last buffer block in said allocated buffer.

8. The memory system of claim 1 , wherein said control logic allocates a buffer comprising multiple memory blocks, and wherein said control logic controls said supply voltage control block to provide said full voltage level to each of said multiple memory blocks of said allocated buffer and to provide said reduced voltage level to at least one memory block of said memory.

9. A integrated input/output controller, comprising:

an embedded memory comprising a plurality of memory blocks each having a corresponding one of a plurality of source voltage inputs, wherein each of said plurality of memory blocks operates at a full voltage level and retains stored information with reduced power consumption when its source voltage input is at a reduced voltage level which is less than said full voltage level;

a memory power control circuit comprising a plurality of outputs, each said output coupled to a corresponding one of said plurality of source voltage inputs of said embedded memory, wherein each of said plurality of outputs provides either one of said full voltage level and said reduced voltage level; and

a controller which allocates buffers in said embedded memory for transfer operations according to input/output protocol, and which controls said memory power control circuit to provide said full voltage level to at least two allocated memory blocks which includes at least one memory block of at least one allocated buffer and to provide said reduced voltage level to remaining memory blocks.

10. The integrated input/output controller of claim 9 , wherein said memory power control circuit comprises:

a power control register storing a plurality of bits indicating which of said plurality of memory blocks receive said full voltage level and which of said plurality of memory blocks receive said reduced voltage level; and

a supply voltage control circuit having an input coupled to said power control register and a plurality of outputs providing either one of said full voltage level and said reduced voltage level based on said plurality of bits of said register.

11. The integrated input/output controller of claim 9 , wherein said controller comprises buffer control logic which allocates a buffer for a pending memory operation, which selects at least one of said plurality of memory blocks included in said allocated buffer, and which programs said memory power control circuit.

12. The integrated input/output controller of claim 11 , wherein said buffer control logic controls said memory power control circuit to provide said full voltage level to each of said plurality of memory blocks included in said allocated buffer.

13. The integrated input/output controller of claim 11 , wherein said buffer control logic controls said memory power control circuit to provide said full voltage level to less than all of said plurality of memory blocks included in said allocated buffer.

14. The integrated input/output controller of claim 13 , wherein said buffer control logic employs a linked buffer structure to identify only one of said memory blocks of said allocated buffer included in a pending memory operation, wherein said buffer control logic controls said memory power control circuit to provide said full voltage level to said identified memory block and to provide said reduced voltage level to every other memory block of said allocated buffer.

15. A method of reducing power consumption of a memory of an input/output controller, comprising:

providing a memory with a plurality of memory blocks each having a corresponding one of a plurality of source voltage inputs, wherein each memory block operates at a full voltage level and retains stored information with reduced power consumption when its source voltage input is at a reduced voltage level which is less than the full voltage level;

allocating buffers based on input/output protocol; and

providing voltage including providing the full voltage level to at least two allocated memory blocks which includes at least one memory block of at least one allocated buffer and providing the reduced voltage level to remaining memory blocks.

16. The method of claim 15 , wherein said allocating comprises allocating a buffer which includes at least one of the plurality of memory blocks and wherein said providing power comprises providing the full voltage level to each memory block included in the allocated buffer.

17. The method of claim 15 , wherein said selecting comprises allocating a buffer which includes at least two of the plurality of memory blocks and wherein said providing voltage comprises providing the full voltage level to less than all of the memory blocks included in the allocated buffer.

18. The method of claim 15 , further comprising:

organizing the plurality of memory blocks into a plurality of buffer blocks in which each buffer block is associated with at least one memory block;

wherein said allocating comprises allocating a buffer and dynamically linking a buffer block into the allocated buffer as needed;

wherein said providing voltage comprises providing the full supply voltage to each memory block associated with each buffer block newly linked into the allocated buffer.

19. The method of claim 18 , further comprising providing the reduced supply voltage to each memory block associated with a last buffer block in the allocated buffer after linking a new buffer block.

20. The method of claim 18 , further comprising:

determining a new read or write transfer operation using the allocated buffer;

dynamically linking a new buffer block into the allocated buffer to perform the new read or write transfer operation;

providing the full supply voltage to each memory block associated with the new buffer block; and

providing the reduced supply voltage to each memory block associated with a last buffer block in the allocated buffer.

21. The method of claim 18 , further comprising:

determining an end of a current buffer block in the allocated buffer during usage;

following a link to a next buffer block of the allocated buffer;

providing the full supply voltage to each memory block associated with the next buffer block; and

providing the reduced supply voltage to each memory block associated with the current buffer block.

22. The method of claim 18 , further comprising:

deallocating the buffer; and

providing the reduced supply voltage to each memory block associated with each buffer block included in the deallocated buffer.

Assignments (26)
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 040925 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Feb 17, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP, B.V. F/K/A FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 052917/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 040928 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Jan 17, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 052915/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 037486 FRAME 0517. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS. Recorded Dec 10, 2019
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 053547/0421 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 039361 FRAME 0212. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051029/0387 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 042985 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051029/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 038017 FRAME 0058. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051030/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 042762 FRAME 0145. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051145/0184 →
RELEASE OF SECURITY INTEREST Recorded Sep 10, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 050745/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 10, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 050744/0097 →
CORRECTIVE ASSIGNMENT TO CORRECT THE TO CORRECT THE APPLICATION NO. FROM 13,883,290 TO 13,833,290 PREVIOUSLY RECORDED ON REEL 041703 FRAME 0536. ASSIGNOR(S) HEREBY CONFIRMS THE THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS.. Recorded Feb 20, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: SHENZHEN XINGUODU TECHNOLOGY CO., LTD.
Reel/Frame 048734/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12681366 PREVIOUSLY RECORDED ON REEL 039361 FRAME 0212. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded May 9, 2017
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 042762/0145 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12681366 PREVIOUSLY RECORDED ON REEL 038017 FRAME 0058. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded May 9, 2017
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 042985/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENTS 8108266 AND 8062324 AND REPLACE THEM WITH 6108266 AND 8060324 PREVIOUSLY RECORDED ON REEL 037518 FRAME 0292. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS. Recorded Feb 1, 2017
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 041703/0536 →
CORRECTIVE ASSIGNMENT TO CORRECT THE NATURE OF CONVEYANCE LISTED CHANGE OF NAME SHOULD BE MERGER AND CHANGE PREVIOUSLY RECORDED AT REEL: 040652 FRAME: 0180. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER AND CHANGE OF NAME. Recorded Jan 12, 2017
From: FREESCALE SEMICONDUCTOR INC.
To: NXP USA, INC.
Reel/Frame 041354/0148 →
CHANGE OF NAME Recorded Nov 8, 2016
From: FREESCALE SEMICONDUCTOR INC.
To: NXP USA, INC.
Reel/Frame 040652/0180 →
RELEASE OF SECURITY INTEREST Recorded Nov 7, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 040928/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 21, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP, B.V., F/K/A FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 040925/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12092129 PREVIOUSLY RECORDED ON REEL 038017 FRAME 0058. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Jul 14, 2016
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 039361/0212 →
SUPPLEMENT TO THE SECURITY AGREEMENT Recorded Jun 16, 2016
From: FREESCALE SEMICONDUCTOR, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 039138/0001 →
SECURITY AGREEMENT SUPPLEMENT Recorded Mar 7, 2016
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 038017/0058 →
ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS Recorded Jan 13, 2016
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 037518/0292 →
ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS Recorded Jan 12, 2016
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 037486/0517 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037356/0553 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037356/0143 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037354/0688 →
SECURITY AGREEMENT Recorded Nov 6, 2013
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 031591/0266 →