IP Library Granted Patent US 7,139,985
Granted Patent B2
US 7,139,985 · App. 10/871,311 · Granted Nov 21, 2006

Development system for an integrated circuit having standardized hardware objects

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,139,985
App. No.
10/871,311
Granted
Nov 21, 2006
Kind
B2
Abstract

Embodiments of the invention include a system for an integrated circuit development. Elements of the development system include hardware and software objects. These objects can be instanced, ordered, parameterized, and connected in a software environment to implement different functions. Once in software, the description defines the topology and the properties of a set of objects and hence the overall function. These objects are hierarchically composed from a set of primitive objects. By using a piece of hardware that can model any primitive object set as pre-established encapsulated hardware objects, the topology and properties define a piece of hardware that can perform the desired, implemented, functions. Using embodiments of the invention, circuit designers can design hardware systems with little or no knowledge of hardware or hardware design, requiring only a high-level software description.

Claims (33)

1. A method for programming a collection of physically instanced hardware objects, comprising:

accepting a collection of software objects which themselves are collections of abstractions of the physically instanced hardware objects, each software object including:

a list of hardware objects used in the software object,

a list of rules for connecting the list of hardware objects, and

an instruction file to be loaded into the list of hardware objects;

accepting a description of the collection of the physically instanced hardware objects;

allocating an identifier to each of the physically instanced hardware objects from the list of hardware objects; and

creating an initialization file for the collection of the physically instanced hardware objects using the identifiers to replace symbolic information in the instruction file.

2. The method of claim 1 , further comprising storing the initialization file in a memory.

3. The method of claim 2 wherein the memory is one of the physically instanced hardware objects.

4. The method of claim 2 wherein the memory is separate from the physically instanced hardware objects.

5. The method of claim 1 wherein one of the physically instanced hardware objects is a Read Only Memory containing boot-up instructions.

6. The method of claim 1 wherein one of the physically instanced hardware objects is reset to be a state machine structured to load boot-up instructions.

7. The method of claim 1 wherein the hardware objects are structured to operate independently from one another.

8. The method of claim 1 the wherein accepting a collection of software objects comprises accepting a list of rules for the hardware objects to communicate to one another by passing asynchronous messages.

9. The method of claim 1 wherein the creating an initialization file comprises creating a signal that sets an operating speed of one of the hardware objects.

10. The method of claim 9 wherein the operating speed is zero.

11. The method of claim 1 wherein at least some of the collection of software objects are formed solely of lower level software objects.

12. The method of claim 1 wherein the creating an initialization file comprises creating a file that will be acted on by one of the hardware objects.

13. A method for programming an integrated circuit of physically instanced hardware objects, comprising:

accepting a library of software object descriptions of a plurality of hardware objects contained in the integrated circuit, each of the plurality of hardware objects structured to operate independently of the others;

accepting a collection of hardware resources that describe the integrated circuit to be programmed;

accepting a design formed of a plurality of interconnected software object descriptions, the design including nonspecific hardware object identifiers;

associating the nonspecific hardware object identifiers to individual specific hardware resources in the collection of hardware resources; and

creating an initialization file from the design and the associated specific hardware resources.

14. The method of claim 13 wherein one of the physically instanced hardware objects is structured to load boot-up instructions.

15. The method of claim 13 wherein the accepting a library of software objects comprises accepting a list of rules for the hardware objects to communicate to one another by passing asynchronous messages.

16. The method of claim 13 wherein the creating an initialization file comprises creating a signal that sets an operating speed of one or more of the hardware objects.

17. The method of claim 16 wherein the operating speed is zero.

18. The method of claim 13 wherein at least some of a collection of software objects are formed solely of lower level software objects.

19. The method of claim 13 wherein the creating an initialization file comprises creating a file that will be acted on by one of the hardware plurality of objects.

20. The method of claim 13 wherein the creating an initialization file comprises creating an initialization file that includes instructions for the plurality of hardware objects.

21. The method of claim 13 wherein the associating the nonspecific hardware object identifiers to individual specific hardware resources in the collection of hardware resources comprises associating at least one of the nonspecific hardware object identifiers to one of two hardware resources having identical function.

Assignments (12)
SECURITY INTEREST Recorded Jul 31, 2024
From: IMAGINATION TECHNOLOGIES LIMITED
To: FORTRESS INVESTMENT GROUP (UK) LTD
Reel/Frame 068221/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 11, 2013
From: METAGENCE TECHNOLOGIES LIMITED
To: IMAGINATION TECHNOLOGIES LIMITED
Reel/Frame 031576/0540 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 11, 2013
From: NETHRA IMAGING, INC.
To: METAGENCE TECHNOLOGIES LIMITED
Reel/Frame 031576/0320 →
RELEASE OF SECURITY INTEREST Recorded Feb 13, 2013
From: SILICON VALLEY BANK
To: AMBRIC, INC.
Reel/Frame 029809/0076 →
SECURITY AGREEMENT Recorded Jun 30, 2010
From: NETHRA IMAGING, INC.
To: ARM LIMITED
Reel/Frame 024611/0288 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 16, 2009
From: AMBRIC, INC.
To: NETHRA IMAGING INC.
Reel/Frame 022399/0380 →
RELEASE OF SECURITY INTEREST Recorded Mar 10, 2009
From: SILICON VALLEY BANK
To: AMBRIC, INC.
Reel/Frame 022390/0992 →
CORRECTIVE ASSIGNMENT TO CORRECT ASSIGNMENT TO SECURITY AGREEMENT PREVIOUSLY RECORDED REEL/FRAME: 019193/0658 Recorded Feb 17, 2009
From: AMBRIC, INC.
To: SILICON VALLEY BANK
Reel/Frame 022288/0190 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 12, 2007
From: AMBRIC, INC.
To: SILICON VALLEY BANK
Reel/Frame 019193/0658 →
CORRECTION TO CHANGE NATURE OF CONVEYANCE ON DOCUMENT #103361115 WITH R/F 018777/0202, CONVEYANCE SHOULD READ SECURITY AGREEMENT. Recorded Mar 29, 2007
From: AMBRIC, INC.
To: SILICON VALLEY BANK
Reel/Frame 019116/0277 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 10, 2007
From: AMBRIC, INC.
To: SILICON VALLEY BANK
Reel/Frame 018777/0202 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 13, 2004
From: JONES, ANTHONY MARK
To: AMBRIC, INC.
Reel/Frame 015061/0649 →