IP Library Patent Application 11771764
Patent Application
App. No. 11/771,764

EXTERNAL MEMORY INTERFACE ENGINE

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 None
App. No.
11/771,764
Abstract

A configurable device interface enhances the ability of a processor to communicate with other devices. The configurable device interface provides programmers with an efficient mechanism for communicating with a wide variety of external memories, each of which may have their own unique interface requirements. As a result, the configurable device interface permits a data processor to operate without hard coded dedicated state machines, and without waiting for an external memory to complete an instruction before the data processor may perform its next instruction.

Claims (43)

1 . An external memory interface engine, comprising:

a processor;

a memory control subsystem comprising programmable external memory control bits that specify an access operation of an external memory;

a memory subsystem comprising:

a first memory shared between the processor and the memory control subsystem;

a second memory shared between the processor and the memory control subsystem; and

a swap controller configured to alternately couple the first memory and the second memory between the processor and the control subsystem,

where the memory control subsystem is configured to analyze control information and address information stored in the memory subsystem and responsively output the programmable external memory control bits.

2 . The external memory interface engine of claim 1 , where the first memory stores control information and address information and the second memory stores data information.

3 . The external memory interface engine of claim 2 , where the address information comprises a data storage location in an external memory.

4 . The external memory interface engine of claim 4 , where the control information comprises an address offset.

5 . The external memory interface engine of claim 1 , where the swap controller is operable to alternately couple the memories between the processor and the memory control subsystem at a processing period boundary qualified by a synchronization event.

6 . The external memory interface engine of claim 1 , where the memory control subsystem further comprises a host register comprising an external memory access parameter.

7 . The external memory interface engine of claim 1 , where the memory control subsystem further comprises an address reformatter operable to split an external memory address into smaller sections.

8 . An external memory interface engine, comprising:

a processor;

a memory control subsystem comprising a programmable external memory instruction data string that specifies an access operation of an external memory;

a memory subsystem comprising:

a first memory shared between the processor and the memory control subsystem; and

a second memory shared between the processor and the memory control subsystem; and

means for alternately coupling the first memory and the second memory between the processor and the memory control subsystem.

9 . The external memory interface engine of claim 8 , where the programmable instruction data string comprises a sequence of programmable instruction data strings, each programmable instruction data string specifying external memory control bits.

10 . The external memory interface engine of claim 9 , where the programmable instruction data string defines a memory read operation from the external memory to the memory subsystem.

11 . The external memory interface engine of claim 9 , where the programmable instruction data string defines a memory write operation from the memory subsystem to the external memory.

12 . A method of accessing an external memory, comprising:

establishing access for a processor to a first memory during a first processing period;

establishing access for an external memory control subsystem to a second memory during the first processing period;

accessing processor supplied control information and address information defining a memory access operation in the first memory;

swapping accessibility between the first memory, the second memory, the processor, and the memory control subsystem upon initiation of a second processing period;

reading the control information and address information with the memory control subsystem; and

performing the memory access operation specified by the control information.

13 . The method of claim 12 , further comprising decoding the control information to determine the memory access operation.

14 . The method of claim 13 , where the act of decoding further comprises determining a type of external memory.

15 . The method of claim 14 , further comprising reading a programmable instruction data string comprising external memory control bits programmed to establish communication with the external memory.

16 . The method of claim 15 , where the programmable instruction data string is one of a number of programmable instruction data strings, each comprising external memory control bits coordinating the memory access operation.

17 . The method of claim 12 , further comprising decoding the processor supplied control information and address information to determine external memory access formatting information.

18 . The method of claim 12 , further comprising reformatting a portion of the processor supplied address information into a smaller section.

19 . The method of claim 12 , further comprising analyzing a portion of the processor supplied control information to determine a memory address offset.

20 . The method of claim 19 , further comprising adding the memory address offset to the processor supplied address information automatically, the addition controlled by the external memory control subsystem.

21 . The method of claim 20 , where the memory address offset comprises a positive value.

22 . The method of claim 21 , where the memory address offset comprises a negative value.

23 . The method of claim 20 , further comprising incrementing the memory address offset by a predetermined value upon initiation of the second processing period.

24 . The method of claim 20 , further comprising verifying the address information after adding the memory address offset is within the boundary of a circularly addressable memory space.

Assignments (5)
RELEASE Recorded Nov 14, 2012
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: HARMAN INTERNATIONAL INDUSTRIES, INCORPORATED; HARMAN BECKER AUTOMOTIVE SYSTEMS GMBH
Reel/Frame 029294/0254 →
SECURITY AGREEMENT Recorded Feb 17, 2011
From: HARMAN INTERNATIONAL INDUSTRIES, INCORPORATED; HARMAN BECKER AUTOMOTIVE SYSTEMS GMBH
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 025823/0354 →
RELEASE Recorded Feb 15, 2011
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: HARMAN INTERNATIONAL INDUSTRIES, INCORPORATED; HARMAN BECKER AUTOMOTIVE SYSTEMS GMBH
Reel/Frame 025795/0143 →
SECURITY AGREEMENT Recorded May 8, 2009
From: HARMAN INTERNATIONAL INDUSTRIES, INCORPORATED; BECKER SERVICE-UND VERWALTUNG GMBH; CROWN AUDIO, INC.; HARMAN BECKER AUTOMOTIVE SYSTEMS (MICHIGAN), INC.; HARMAN BECKER AUTOMOTIVE SYSTEMS HOLDING GMBH; HARMAN BECKER AUTOMOTIVE SYSTEMS, INC.; HARMAN CONSUMER GROUP, INC.; HARMAN DEUTSCHLAND GMBH; HARMAN FINANCIAL GROUP LLC; HARMAN HOLDING GMBH & CO. KG; HARMAN MUSIC GROUP, INCORPORATED; HARMAN SOFTWARE TECHNOLOGY INTERNATIONAL BETEILIGUNGS GMBH; HARMAN SOFTWARE TECHNOLOGY MANAGEMENT GMBH; HBAS INTERNATIONAL GMBH; HBAS MANUFACTURING, INC.; INNOVATIVE SYSTEMS GMBH NAVIGATION-MULTIMEDIA; JBL INCORPORATED; LEXICON, INCORPORATED; MARGI SYSTEMS, INC.; QNX SOFTWARE SYSTEMS (WAVEMAKERS), INC.; QNX SOFTWARE SYSTEMS CANADA CORPORATION; QNX SOFTWARE SYSTEMS CO.; QNX SOFTWARE SYSTEMS GMBH; QNX SOFTWARE SYSTEMS GMBH & CO. KG; QNX SOFTWARE SYSTEMS INTERNATIONAL CORPORATION; QNX SOFTWARE SYSTEMS, INC.; XS EMBEDDED GMBH (F/K/A HARMAN BECKER MEDIA DRIVE TECHNOLOGY GMBH)
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 022659/0743 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 29, 2007
From: PENNOCK, JAMES D.; BAKER, RONALD; PARKER, BRIAN R.; BELCHER, CHRISTOPHER
To: HARMAN INTERNATIONAL INDUSTRIES, INCORPORATED
Reel/Frame 019500/0842 →