Parallel computing system for volumetric modeling, data processing and visualization
First Claim
1. A parallel computing system for producing, storing, and processing voxel data elements in parallel within a three-dimensional memory storage array, and producing and buffering pixel data elements in parallel for use in visualization of voxel data elements stored within said three-dimensional memory storage array, said parallel computing system comprising:
- a system bus for transferring parameters and local programs;
a plurality of local computing units indexable as k=0,1,2, . . . , N-1, each said local computing unit being connected to said system bus and havingmeans for storing one or more local programs capable of producing, storing and processing voxel data elements within said three dimensional memory storage array, andmeans for executing said one or more local programs using said parameters so as to locally produce, store and process voxel data elements within said three-dimensional memory storage array, and produce one or more pixel data elements from one or more voxel data elements stored within said three-dimensional memory storage array;
a plurality of local memory storage modules indexable as k=0,1,2, . . . , N-1, each said local memory storage module having a set of memory storage elements and each said memory storage element being capable of storing one or more voxel data elements, wherein a plurality of said memory storage elements in said plurality of local memory storage modules are indexed so as to represent said three-dimensional memory storage array in 3-D space characterized by three coordinate directions;
a plurality of local buses indexable as k=0,1,2, . . . N-1, each said local bus being operably connected to one said local computing unit and one said local memory storage module, for transferring voxel data elements therebetween;
a control computing unit, operably connected to said plurality of local computing units by way of said system bus, for coordinating parallel execution of said one or more local programs by said plurality of local computing units;
voxel data element transfer means operably connected to said plurality of local buses, for transferring voxel data elements between each said k-th local computing unit and said (k+Δ
k)th local computing unit, where Δ
k equals a module distance defined between said local memory storage modules in memory space; and
pixel data element buffering means, operably connected to said plurality of local buses and said system bus and controlled by said control computing unit, for buffering pixel data elements produced from said plurality of local computing units and transferred over said plurality of local buses, wherein pixel data elements buffered in said pixel data element buffering means are transferable over said system bus to a user interface computing unit operably connected to said system bus, for use in visualization of voxel data elements stored within said three-dimensional memory storage array.
9 Assignments
0 Petitions
Accused Products
Abstract
A parallel computing system producing, storing, and processing voxel data elements in parallel within a three-dimensional memory storage array, and producing and buffering pixel data elements in parallel for use in volume visualization of the stored voxel data elements. The parallel computing system includes a system bus for transferring parameters and local programs. A plurality of local computing units are connected to the system bus. Each local computing unit has a local program storage memory for storing one or more local programs, and RISC processor for executing the local programs. A local memory storage module is connected to each local computing unit. Each local memory storage module has a set of memory storage elements, each of which is capable of storing one or more voxel data elements. A plurality of the memory storage elements in the local memory storage modules are indexed so as to represent the three-dimensional memory storage array in 3-D space characterized by three coordinate directions. A local bus is connected to each local computing unit and one local memory storage module, for transferring voxel data elements therebetween. A control computing unit is connected to the plurality of local computing units by way of the system bus, for coordinating (i.e., synchronizing) parallel execution of the local programs by the plurality of local computing units. A voxel data element transfer means mechanism transfers voxel data elements among the local computing units. A pixel data element buffer memory is connected to the buses, and is controlled by the control computing unit. These pixel data elements are transferrable over the system bus to a user interface/display computing unit, for use in visualization of voxel data elements stored in the three-dimensional memory storage array.
90 Citations
66 Claims
-
1. A parallel computing system for producing, storing, and processing voxel data elements in parallel within a three-dimensional memory storage array, and producing and buffering pixel data elements in parallel for use in visualization of voxel data elements stored within said three-dimensional memory storage array, said parallel computing system comprising:
-
a system bus for transferring parameters and local programs; a plurality of local computing units indexable as k=0,1,2, . . . , N-1, each said local computing unit being connected to said system bus and having means for storing one or more local programs capable of producing, storing and processing voxel data elements within said three dimensional memory storage array, and means for executing said one or more local programs using said parameters so as to locally produce, store and process voxel data elements within said three-dimensional memory storage array, and produce one or more pixel data elements from one or more voxel data elements stored within said three-dimensional memory storage array; a plurality of local memory storage modules indexable as k=0,1,2, . . . , N-1, each said local memory storage module having a set of memory storage elements and each said memory storage element being capable of storing one or more voxel data elements, wherein a plurality of said memory storage elements in said plurality of local memory storage modules are indexed so as to represent said three-dimensional memory storage array in 3-D space characterized by three coordinate directions; a plurality of local buses indexable as k=0,1,2, . . . N-1, each said local bus being operably connected to one said local computing unit and one said local memory storage module, for transferring voxel data elements therebetween; a control computing unit, operably connected to said plurality of local computing units by way of said system bus, for coordinating parallel execution of said one or more local programs by said plurality of local computing units; voxel data element transfer means operably connected to said plurality of local buses, for transferring voxel data elements between each said k-th local computing unit and said (k+Δ
k)th local computing unit, where Δ
k equals a module distance defined between said local memory storage modules in memory space; andpixel data element buffering means, operably connected to said plurality of local buses and said system bus and controlled by said control computing unit, for buffering pixel data elements produced from said plurality of local computing units and transferred over said plurality of local buses, wherein pixel data elements buffered in said pixel data element buffering means are transferable over said system bus to a user interface computing unit operably connected to said system bus, for use in visualization of voxel data elements stored within said three-dimensional memory storage array. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 21, 22, 23, 24, 28, 29, 30, 31, 32, 33)
-
-
17. The parallel computing system of 16, wherein said module distance Δ
- k is determined by said control computing unit.
- View Dependent Claims (18, 19, 20)
-
25. The parallel computing system of 1, wherein said module distance Δ
- k is determined by said control computing unit.
- View Dependent Claims (26, 27)
-
34. A volume visualization workstation for producing, storing, and processing voxel data elements in parallel within a three-dimensional memory storage array, and producing and buffering pixel data elements in parallel for use in visualization of voxel data elements stored in said three-dimensional memory storage array, said parallel computing workstation comprising:
-
a system bus for transferring parameters and local programs; a plurality of local computing units indexable as k=0,1,2, . . . N-1, each said local computing unit being connected to said system bus and having means for storing one or more local programs capable of producing, storing and processing voxel data elements within said three dimensional memory storage array, and means for executing said one or more local programs using said parameters so as to locally produce, store and process voxel data elements within said three-dimensional memory storage array, and produce one or more pixel data elements from one or more voxel data elements stored within said three-dimensional memory storage array; a plurality of local memory storage modules indexable as k=0,1,2, . . . , N-1, each said local memory storage module having a set of memory storage elements and each said memory storage element being capable of storing one or more voxel data elements, wherein a plurality of said memory storage elements in said plurality of local memory storage modules are indexed so as to represent said three-dimensional memory storage array in 3-D space characterized by three coordinate directions; a plurality of local buses indexable as k=0,1,2, . . . N-1, each said local bus being operably connected to one said local computing unit and one said local memory storage module, for transferring voxel data elements therebetween; a control computing unit, operably connected to said plurality of local computing units by way of said system bus, for coordinating parallel execution of said one or more local programs by said plurality of local computing units; voxel data element transfer means operably connected to said plurality of local buses, for transferring voxel data elements between each said k-th local computing unit and said (k+Δ
k)th local computing unit, where Δ
k equals a memory distance defined between said local memory storage modules in memory space;pixel data element buffering means, operably connected to said plurality of local buses and said system bus, and controlled by said control computing unit, for buffering pixel data elements produced from said plurality of local computing units and transferred over said plurality of local buses to said pixel data element buffering means; and a user interface computing unit operably connected to said system bus for producing and transferring said parameters to said control computing unit by way of said system bus, and for receiving pixel data elements transferred from said pixel data element buffering means over said system bus to said user interface computing unit, for use in visualization of voxel data elements stored within said three-dimensional memory storage array. - View Dependent Claims (35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 54, 55, 60, 61, 62, 63, 64, 65, 66)
-
-
50. The volume visualization workstation of 49, wherein said module distance Δ
- k is determined by said control computing unit.
- View Dependent Claims (51, 52, 53)
-
56. The volume visualization workstation of 34, wherein said module distance Δ
- k is determined by said control computing unit.
- View Dependent Claims (57, 58, 59)
Specification