IP Library Granted Patent US 7,155,602
Granted Patent B2
US 7,155,602 · App. 10/011,835 · Granted Dec 26, 2006

Interface for integrating reconfigurable processors into a general purpose computing system

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,155,602
App. No.
10/011,835
Granted
Dec 26, 2006
Kind
B2
Abstract

The present invention describes a method and system for an interface for integrating reconfigurable processors into a general purpose computing system. In particular, the system resides in a computer system containing standard instruction processors, as well as reconfigurable processors. The interface includes a command processor, a command list memory, various registers, a direct memory access engine, a translation look-aside buffer, a dedicated section of common memory, and a dedicated memory. The interface is controlled via commands from a command list that is created during compilation of a user application, or various direct commands.

Claims (41)

1. A method for processing command processor commands compiled from a user application, said method comprising the steps of:

storing command lists into an area of common memory;

receiving a fetch command sent by the user application;

fetching a command list from the common memory;

loading the command list into a command list memory within an interface;

processing of the command list;

interacting with user logic to exchange data and control signals;

determining if a second command list is ready for processing; and

wherein if the second command list is ready for processing, processing the second command list in the same method as the command list, and wherein otherwise await a second fetch command.

2. The method of claim 1 , wherein the loading of the command list further comprises receiving a fetch done signal when the entire command list has been loaded.

3. The method of claim 1 , wherein the processing of the command list further comprises the step of determining if the command list length exceeds a length limit,

wherein if the command list length exceeds the length limit, an interrupt is generated and processing of the command list is halted.

4. The method of claim 1 further comprising the step of halting execution.

5. The method of claim 4 , wherein the halting execution further comprises the steps of:

terminating the execution of control logic;

saving control state data in dedicated memory;

saving status and control data;

saving translation look-aside data;

if halt request was not received via a direct command, and if interrupts are enabled, sending an interrupt; and

halting further execution.

6. The method of claim 4 further comprising the step of continuing execution.

7. The method of claim 6 wherein continuing execution further comprises the steps of:

determining reason for halting execution; and

restarting execution.

8. The method of claim 7 , wherein if processing is to be continued from a partially processed instruction, the step of restarting execution further comprises the steps of:

making necessary changes to parameters in the status and control data, and translation look-aside data;

reloading control state data in dedicated memory;

reloading status and control data;

reloading translation look-aside data;

issuing a continue from saved command; and

processing instructions.

9. The method of claim 7 , wherein if processing is to be continued from a fully processed instruction, the step of restarting execution further comprises the steps of:

reloading control state data in dedicated memory;

reloading status and control data;

reloading translation look-aside data;

issuing a continue command; and

processing instructions.

10. The method of claim 7 , wherein if a new sequence is to be started, the step of restarting execution further comprises the steps of:

loading a command list;

issuing a direct command to start execution; and

processing the command list.

Assignments (10)
RELEASE OF SECURITY INTEREST IN SPECIFIED PATENTS Recorded May 22, 2023
From: BARINGS FINANCE LLC, AS COLLATERAL AGENT
To: RPX CORPORATION
Reel/Frame 063723/0139 →
PATENT SECURITY AGREEMENT Recorded May 1, 2023
From: RPX CORPORATION
To: BARINGS FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 063503/0742 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 24, 2020
From: DIRECTSTREAM LLC
To: FG SRC LLC
Reel/Frame 051615/0344 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 22, 2019
From: SAINT REGIS MOHAWK TRIBE
To: DIRECTSTREAM, LLC
Reel/Frame 049251/0855 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 2, 2017
From: SRC LABS, LLC
To: SAINT REGIS MOHAWK TRIBE
Reel/Frame 043174/0318 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 13, 2016
From: SRC COMPUTERS, LLC
To: SRC LABS, LLC
Reel/Frame 037820/0147 →
RELEASE OF SECURITY INTEREST Recorded Feb 11, 2016
From: FREEMAN CAPITAL PARTNERS LP
To: SRC COMPUTERS, LLC
Reel/Frame 037707/0196 →
MERGER Recorded Oct 30, 2013
From: SRC COMPUTERS, INC.
To: SRC COMPUTERS, LLC
Reel/Frame 031514/0769 →
SECURITY AGREEMENT Recorded Sep 23, 2013
From: SRC COMPUTERS, LLC
To: FREEMAN CAPITAL PARTNERS LP
Reel/Frame 031263/0288 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 5, 2001
From: POZNANOVIC, DANIEL
To: SRC COMPUTER, INC.
Reel/Frame 012385/0068 →