IP Library Granted Patent US 10,061,699
Granted Patent B2
US 10,061,699 · App. 15/806,217 · Granted Aug 28, 2018

Multiple data channel memory module architecture

Inventors: Tony M. Brewer (Plano, TX); J. Michael Andrewartha (Woodinville, WA); William D. O'Leary (Plano, TX); Michael K. Dugan (Richardson, TX)
Assignee: Micron Technology, Inc.
G06F12/0811G06F12/04G06F12/0607G11C7/1072G06F2212/283
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 10,061,699
App. No.
15/806,217
Granted
Aug 28, 2018
Kind
B2
Abstract

According to one example of the present disclosure, a system includes a computing element configured to provide requests for memory access operations and a memory module comprising a plurality of memories, a plurality of independent data channels, each of the independent data channels coupled to one of the plurality of memories, a plurality of internal address/control channels, each of the independent address/control channels coupled to one of the plurality of memories, and control logic coupled to the plurality of internal address/control channels and configured to receive and decode address and control information for a memory access operation, the control logic further configured to selectively provide the decoded address and control information to a selected internal address/control channel for a selected independent data channel of the plurality of independent data channels based on the received address and control information for the memory access operation.

Claims (32)

1. An apparatus comprising:

a processor configured to provide memory commands for memory access operations; and

a memory controller coupled to the processor; and

a memory comprising:

a plurality of memory elements; and

control logic coupled to the memory controller via a control channel, the control logic configured to decode control information and to selectively provide the control information to at least one of the plurality of memory elements, wherein the control logic is further configured to select an internal control channel of a plurality of internal control channels based on the selectively provided control information regarding the internal control channel, the selected internal control channel coupling the control logic and a selected memory element of the plurality of memory elements.

2. The apparatus of claim 1 , wherein the selected memory element includes an address corresponding to an address of the selectively provided control information.

3. The apparatus of claim 1 , wherein each internal control channel is coupled to a respective one of the plurality of memory elements.

4. The apparatus of claim 1 , wherein each internal control channel provides control information to each respective memory element independently of the other internal control channels.

5. The apparatus of claim 1 , wherein the control logic is configured to control data transfer over at least one data channel of a plurality of data channels, each data channel coupled to a respective one of the plurality of memory elements.

6. The apparatus of claim 5 , wherein each data channel provides data independently of the other data channels.

7. An apparatus comprising:

a processor comprising an instruction set including a memory access request;

a memory controller coupled to the processor and configured to receive the memory access request and to provide address/control information responsive to the memory access request;

a memory comprising a plurality of memory elements and control logic, wherein the control logic is coupled to the memory controller via an external address/control channel, the control logic configured to receive and decode the address/control information and to provide the decoded address/control information to at least one of the plurality of memory elements to control data transfer over multiple data channels; and

an additional processor comprising an additional instruction set, wherein the additional processor is configured to execute a portion of the instruction set of the processor, where the instruction set of the processor corresponds to a fixed instruction set, and wherein the additional processor is configured to be reconfigurable to include the portion of the instruction set of the processor.

8. The apparatus of claim 7 , wherein the instruction set comprises independent memory access requests for the plurality of memory elements, the independent memory access requests including the memory access request.

9. The apparatus of claim 8 , wherein the control logic is configured to decode the address/control information into component address/control information, wherein each component address/control information corresponds to one of the independent memory access requests.

10. The apparatus of claim 7 , wherein the control logic is configured to decode the address/control information based on a time multiplexed encoding scheme.

11. The apparatus of claim 7 , wherein each memory element is coupled to the control logic via a respective internal address/control channel of a plurality of internal address/control channels.

12. The apparatus of claim 7 , wherein the apparatus corresponds to a field-programmable gate array (FPGA).

13. The apparatus of claim 7 , wherein a first data channel of the multiple data channels is configured to transfer data based on a first memory access request, and wherein a second data channel of the multiple data channels is configured to transfer data based on a second memory access request.

14. The apparatus of claim 7 , wherein each memory element of the plurality of memory elements supports sub-cache data access operations.

15. The apparatus of claim 7 , wherein each memory element of the plurality of memory elements comprise at least one dynamic random access memory (DRAM).

16. An apparatus comprising:

a processor comprising an instruction set including a memory access request,

a memory controller coupled to the processor and configured to receive the memory access request and to provide address/control information responsive to the memory access request; and

a memory comprising a plurality of memory elements and control logic, wherein the control logic is coupled to the memory controller via an external address/control channel the control logic configured to receive and decode the address/control information and to provide the decoded address/control information to at least one of the plurality of memory elements to control data transfer over multiple data channels, wherein each memory element is coupled to the control logic via a respective internal address/control channel of a plurality of internal address/control channels, and wherein the control logic is configured to provide a first component address/control information to a first memory element of the plurality of memory elements over a first internal address/control channel of the plurality of internal address/control channels, wherein the control logic is configured to provide a second component address/control information to a second memory element of the plurality of memory elements over a second internal address/control channel of the plurality of internal address/control channels.

17. An apparatus comprising:

a processor comprising an instruction set including a memory access request;

a memory controller coupled to the processor and configured to receive the memory access request and to provide address/control information responsive to the memory access request; and

a memory comprising a plurality of memory elements and control logic wherein the control logic is coupled to the memory controller via an external address/control channel, the control logic configured to receive and decode the address/control information and to provide the decoded address/control information to at least one of the plurality of memory elements to control data transfer over multiple data channels, wherein a first data channel of the multiple data channels is configured to transfer data based on a first memory access request, and wherein a second data channel of the multiple data channels is configured to transfer data based on a second memory access request, and wherein the first memory access request corresponds to the memory access request included in the instruction set, and wherein the second memory access request corresponds to a memory access request received from an additional processor executing an additional instruction set.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 19, 2020
From: BREWER, TONY M.; ANDREWARTHA, J. MICHAEL; O'LEARY, WILLIAM D.; DUGAN, MICHAEL K.
To: MICRON TECHNOLOGY, INC.
Reel/Frame 054099/0141 →
RELEASE OF SECURITY INTEREST Recorded Nov 12, 2019
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
Reel/Frame 051028/0001 →
RELEASE OF SECURITY INTEREST Recorded Oct 10, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 050716/0678 →
SECURITY INTEREST Recorded Jul 13, 2018
From: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 047540/0001 →
SUPPLEMENT NO. 7 TO PATENT SECURITY AGREEMENT Recorded Feb 6, 2018
From: MICRON TECHNOLOGY, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 045267/0833 →
Continuity (4)
Continuation 15254975 · Sep 1, 2016
Continuation 14673732 · Mar 30, 2015
Continuation 12186372 · Aug 5, 2008
Related Publication 20180060234A1 · Mar 1, 2018
Cited By (1)
US 12,300,355