IP Library Granted Patent US 7,620,530
Granted Patent B2
US 7,620,530 · App. 10/988,588 · Granted Nov 17, 2009

System with PPU/GPU architecture

Assignee: NVIDIA Corporation
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,620,530
App. No.
10/988,588
Granted
Nov 17, 2009
Kind
B2
Abstract

A PPU-enhanced computer system is provided including a Physics Processing Unit (PPU), a Graphics Processing Unit (GPU), a Central Processing Unit (CPU) and a main memory, wherein the system creates an animation from application data stored in the main memory by data communication between the GPU, PPU, CPU and main memory. The system may include a memory controller and a chip set connecting the bus structure to the CPU and GPU through an I/O interface and connecting the PPU though a bus structure. The PPU may be a separate processing core logically grouped with the CPU and GPU processing cores. In this preferred embodiment, the CPU, GPU and PPU receive data from a common L2 cache and/or a main system memory.

Claims (43)

1. A computing device, comprising:

an L2 cache;

a central processing unit (CPU) coupled to the L2 cache and configured to:

generate application data, and

store the application data in the L2 cache;

a physics processing unit (PPU) coupled to the L2 cache and configured to:

receive the application data from the L2 cache,

perform physics operations on the application data, and

store results of the physics operations in the L2 cache; and

a graphics processing unit (GPU) coupled to the L2 cache and directly

connected to the PPU via a high-bandwidth bus and configured to:

receive the results of the physics operations directly from the PPU via the high-bandwidth bus,

perform graphics operations on the results of the physics operations, and

store the results of the graphics operations in the L2 cache.

2. The computing device of claim 1 , further comprising:

a system memory;

a memory controller coupled to the system memory; and

a bus interface coupled to the L2 cache and to the memory controller and configured to:

retrieve first data from the system memory via the memory controller for storage in the L2 cache, and

transmit second data from the L2 cache to the system memory via the memory controller.

3. The computing device of claim 1 , wherein the PPU comprises a PPU memory for storing one or more physics subroutines associated with the physics operations.

4. The computing device of claim 3 , wherein the PPU is further configured to perform one or more physics operations by executing a sequence of physics subroutines operating on the application data.

5. The computing device of claim 1 , wherein the GPU comprises a GPU memory, and the GPU is further configured to store the results of the physics operations received from the PPU in the GPU memory.

6. The computing device of claim 1 , wherein the L2 cache is divided into one or more portions, and each of the one or more portions is associated with at least one of the CPU, the PPU, or the GPU.

7. The computing device of claim 1 , wherein the computing device further comprises an Input/Output interface, a disk drive, and a chipset, the Input/Output interface coupled to the bus interface and configured to communicate with the disk drive via the chipset.

8. The computing device of claim 1 , further comprising a display device coupled to the GPU.

9. The computing device of claim 1 , wherein the GPU is further configured to render an animation based on the results of the physics operations and the application data.

10. The computing device of claim 1 , wherein the results of the physics operations comprises animation data.

11. The computing device of claim 10 , wherein the animation data comprises fluid animation data.

12. The computing device of claim 11 , wherein the fluid animation data comprises a vertex buffer, an index buffer, and normal data.

13. A computer-implemented method for rendering an animation sequence, the method comprising:

retrieving application data from an L2 cache included in a computer system having a central processing unit (CPU), a physics processing unit (PPU), and a graphics processing unit (GPU), wherein the L2 cache is coupled to the CPU, the PPU, and the GPU;

performing one or more physics operations based on the application data;

transmitting the results of performing the one or more physics operations to the GPU directly via a high-bandwidth bus directly connecting the PPU and the GPU; and

rendering the animation sequence based on the results of performing the one or more physics operations and the application data.

14. The method of claim 13 , further comprising the step of storing one or more physics subroutines associated with the physics operations in a PPU memory included in the PPU.

15. The method of claim 13 , further comprising the step of performing one or more physics operations by executing a sequence of physics subroutines operating on the application data.

16. The method of claim 13 , further comprising the step of storing the results of performing the one or more physics operations received from the PPU in a GPU memory included in the GPU.

17. The method of claim 13 , wherein the L2 cache is divided into one or more portions, and each of the one or more portions is associated with at least one of the CPU, the PPU, or the GPU.

18. The method of claim 13 , further comprising the step of causing the animation sequence to be displayed on a display device coupled to the GPU.

19. The method of claim 13 , wherein the results of performing the one or more physics operations comprises animation data.

20. The method of claim 19 , wherein the animation data comprises fluid animation data.

21. The method of claim 20 , wherein the fluid animation data comprises a vertex buffer, an index buffer, and normal data.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 28, 2008
From: AGEIA TECHNOLOGIES, INC.
To: NVIDIA CORPORATION
Reel/Frame 021011/0059 →
RELEASE OF SECURITY INTEREST Recorded Apr 18, 2008
From: HERCULES TECHNOLOGY GROWTH CAPITAL, INC.
To: AGEIA TECHNOLOGIES, INC.
Reel/Frame 020827/0853 →
SECURITY AGREEMENT Recorded Sep 2, 2005
From: AGEIA TECHNOLOGIES, INC.
To: HERCULES TECHNOLOGY GROWTH CAPITAL, INC.
Reel/Frame 016490/0928 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 10, 2005
From: BORDES, JEAN PIERRE; DAVIS, CURTIS; HEGDE, MANJU
To: AGEIA TECHNOLOGIES, INC.
Reel/Frame 016262/0815 →
Continuity (1)
Related Publication 20060106591A1 · May 18, 2006