Graphics hub subsystem for interfacing parallalized graphics processing units (GPUs) with the central processing unit (CPU) of a PC-based computing system having an CPU interface module and a PC bus
First Claim
1. A graphics hub subsystem for installation in a PC-based computing system including (i) system memory for storing software graphics applications, software drivers and graphics libraries, (ii) an operating system (OS), stored in said system memory, (iii) one or more graphics applications, stored in said system memory, for generating a stream of geometrical data and graphics commands supporting the representation of one or more 3D objects in a scene having 3D geometrical characteristics and the viewing of images of said one or more 3D objects in said scene during an interactive process carried out between said PC-based computing system and a user of said PC-based computing system, (iv) one or more graphic libraries, stored in said system memory, for storing data used to implement said stream of geometrical data and graphics commands, (v) a central processing unit (CPU) for executing said OS, said one or more graphics applications, said drivers and said graphics libraries, (vi) an CPU interface module for interfacing with said CPU, (vii) a PC bus, (viii) a plurality of graphic processing units (GPUs) arranged in a parallel architecture and operating according to a parallelization mode of operation so that said GPUs support multiple graphics pipelines and process data in a parallel manner, (viii) one or more GPU drivers, stored in said system memory, for allowing said GPUs to interact with said graphic libraries, and (ix) a display surface for displaying said images by graphically displaying frames of pixel data produced by said GPUs, wherein said graphics hub subsystem comprises:
- a hardware hub having a hub router for interfacing with said CPU interface module and said GPUs by way of said PC bus, distributing the stream of geometrical data and graphic commands among said GPUs, and transferring pixel data output from one or more of said GPUs during the composition of frames of pixel data corresponding to final images for display on said display surface; and
one or more software hub drivers, stored in said system memory;
wherein said CPU interface module and said PC bus provides an interface between said one or more software hub drivers and said hardware hub;
wherein said one or more software hub drivers perform the following functions;
(i) controlling the operation of said hardware hub,(ii) interacting with said OS and said graphic libraries, and(iii) forwarding said stream of geometrical data and graphic commands, or a portion thereof, to each said GPU over said PC bus; and
wherein, for each image of said 3D objects to be generated and displayed on said display surface, the following operations are performed;
(i) said hardware hub uses said hub router and said PC bus to distribute said stream of geometrical data and graphic commands, or a portion thereof, to said GPUs,(ii) one or more of said GPUs process said stream of geometrical data and graphic commands, or a portion thereof, during the generation of each said frame, while operating in said parallelization mode, so as to generate pixel data corresponding to at least a portion of said image, and(iii) said hardware hub uses said hub router and said PC bus to transfer said pixel data output from one or more of said GPUs for compositing pixel data, representative of the image of said 3D objects, for display on said display surface.
5 Assignments
0 Petitions
Accused Products
Abstract
A graphics hub subsystem for interfacing parallelized graphics processing units (GPUs) with the CPU of a PC-based computing system having a CPU interface module and a PC bus. The PC-based computing system includes system memory for storing software graphics applications, software drivers and graphics libraries, and an operating system (OS), stored in the system memory, and a central processing unit (CPU), for executing the OS, graphics applications, drivers. and graphics libraries. The graphics hub subsystem includes a hardware hub having a hub router for interfacing with the CPU interface module and the GPUs by way of the PC bus, distributing the stream of geometrical data and graphic commands among the GPUs, and transferring pixel data output from one or more of the GPUs during the composition of frames of pixel data corresponding to final images for display on the display surface. The subsystem also includes one or more software hub drivers, stored in the system memory. The CPU interface module provides an interface between one or more software hub drivers and the hardware hub. During system operation, the software hub drivers: (i) control the operation of the hardware hub, (ii) interact with the OS and graphic libraries, and (iii) forward the stream of geometrical data and graphic commands, or a portion thereof, to each GPU over the PC bus.
-
Citations
17 Claims
-
1. A graphics hub subsystem for installation in a PC-based computing system including (i) system memory for storing software graphics applications, software drivers and graphics libraries, (ii) an operating system (OS), stored in said system memory, (iii) one or more graphics applications, stored in said system memory, for generating a stream of geometrical data and graphics commands supporting the representation of one or more 3D objects in a scene having 3D geometrical characteristics and the viewing of images of said one or more 3D objects in said scene during an interactive process carried out between said PC-based computing system and a user of said PC-based computing system, (iv) one or more graphic libraries, stored in said system memory, for storing data used to implement said stream of geometrical data and graphics commands, (v) a central processing unit (CPU) for executing said OS, said one or more graphics applications, said drivers and said graphics libraries, (vi) an CPU interface module for interfacing with said CPU, (vii) a PC bus, (viii) a plurality of graphic processing units (GPUs) arranged in a parallel architecture and operating according to a parallelization mode of operation so that said GPUs support multiple graphics pipelines and process data in a parallel manner, (viii) one or more GPU drivers, stored in said system memory, for allowing said GPUs to interact with said graphic libraries, and (ix) a display surface for displaying said images by graphically displaying frames of pixel data produced by said GPUs, wherein said graphics hub subsystem comprises:
-
a hardware hub having a hub router for interfacing with said CPU interface module and said GPUs by way of said PC bus, distributing the stream of geometrical data and graphic commands among said GPUs, and transferring pixel data output from one or more of said GPUs during the composition of frames of pixel data corresponding to final images for display on said display surface; and one or more software hub drivers, stored in said system memory; wherein said CPU interface module and said PC bus provides an interface between said one or more software hub drivers and said hardware hub; wherein said one or more software hub drivers perform the following functions; (i) controlling the operation of said hardware hub, (ii) interacting with said OS and said graphic libraries, and (iii) forwarding said stream of geometrical data and graphic commands, or a portion thereof, to each said GPU over said PC bus; and wherein, for each image of said 3D objects to be generated and displayed on said display surface, the following operations are performed; (i) said hardware hub uses said hub router and said PC bus to distribute said stream of geometrical data and graphic commands, or a portion thereof, to said GPUs, (ii) one or more of said GPUs process said stream of geometrical data and graphic commands, or a portion thereof, during the generation of each said frame, while operating in said parallelization mode, so as to generate pixel data corresponding to at least a portion of said image, and (iii) said hardware hub uses said hub router and said PC bus to transfer said pixel data output from one or more of said GPUs for compositing pixel data, representative of the image of said 3D objects, for display on said display surface. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
Specification