Patent | Date |
---|
Queue manager for streaming multiprocessor systems Grant 10,983,699 - Lindholm April 20, 2 | 2021-04-20 |
Queue Manager For Streaming Multiprocessor Systems App 20200057560 - Lindholm; John Erik | 2020-02-20 |
Queue manager for streaming multiprocessor systems Grant 10,489,056 - Lindholm Nov | 2019-11-26 |
Approach for a configurable phase-based priority scheduler Grant 10,346,212 - Choquette , et al. July 9, 2 | 2019-07-09 |
Queue Manager For Streaming Multiprocessor Systems App 20190138210 - Lindholm; John Erik | 2019-05-09 |
Beam tracing Grant 10,242,485 - Karras , et al. | 2019-03-26 |
Programmable graphics processor for multithreaded execution of programs Grant 10,217,184 - Lindholm , et al. Feb | 2019-02-26 |
Beam Tracing App 20180182158 - Karras; Tero Tapani ;   et al. | 2018-06-28 |
Tree-based thread management Grant 9,921,847 - Lindholm March 20, 2 | 2018-03-20 |
Tree-based thread management Grant 9,830,161 - Lindholm , et al. November 28, 2 | 2017-11-28 |
Programmable Graphics Processor For Multithreaded Execution Of Programs App 20170256022 - LINDHOLM; John Erik ;   et al. | 2017-09-07 |
Approach For A Configurable Phase-based Priority Scheduler App 20170192822 - CHOQUETTE; Jack Hilaire ;   et al. | 2017-07-06 |
Programmable graphics processor for multithreaded execution of programs Grant 9,659,339 - Lindholm , et al. May 23, 2 | 2017-05-23 |
Indirect function call instructions in a synchronous parallel thread processor Grant 9,639,365 - Coon , et al. May 2, 2 | 2017-05-02 |
Beam tracing Grant 9,569,559 - Karras , et al. February 14, 2 | 2017-02-14 |
Architecture and instructions for accessing multi-dimensional formatted surface memory Grant 9,519,947 - Nickolls , et al. December 13, 2 | 2016-12-13 |
Programmable Graphics Processor For Multithreaded Execution Of Programs App 20160300319 - LINDHOLM; John Erik ;   et al. | 2016-10-13 |
System and method for hardware scheduling of conditional barriers and impatient barriers Grant 9,448,803 - Lindholm , et al. September 20, 2 | 2016-09-20 |
System and method for hardware scheduling of indexed barriers Grant 9,442,755 - Lindholm , et al. September 13, 2 | 2016-09-13 |
Approach For A Configurable Phase-based Priority Scheduler App 20160224386 - CHOQUETTE; Jack Hilaire ;   et al. | 2016-08-04 |
Dispatching of instructions for execution by heterogeneous processing engines Grant 9,304,775 - Lindholm , et al. April 5, 2 | 2016-04-05 |
Beam Tracing App 20160071310 - Karras; Tero Tapani ;   et al. | 2016-03-10 |
Using condition codes in the presence of non-numeric values Grant 9,195,460 - Glanville , et al. November 24, 2 | 2015-11-24 |
Credit-based streaming multiprocessor warp scheduling Grant 9,189,242 - Lindholm , et al. November 17, 2 | 2015-11-17 |
Graphics processing unit with a texture return buffer and a texture queue Grant 9,171,525 - Lindholm October 27, 2 | 2015-10-27 |
Tree-based Thread Management App 20150205607 - LINDHOLM; John Erik | 2015-07-23 |
Tree-based Thread Management App 20150205606 - LINDHOLM; John Erik ;   et al. | 2015-07-23 |
Using a pixel offset for evaluating a plane equation Grant 9,058,672 - Lindholm , et al. June 16, 2 | 2015-06-16 |
Generating clip state for a batch of vertices Grant 8,976,195 - Lindholm , et al. March 10, 2 | 2015-03-10 |
Approach for a configurable phase-based priority scheduler Grant 8,949,841 - Choquette , et al. February 3, 2 | 2015-02-03 |
Programmable graphics processor for multithreaded execution of programs Grant 8,860,737 - Lindholm , et al. October 14, 2 | 2014-10-14 |
Programmable Graphics Processor For Multithreaded Execution Of Programs App 20140285500 - LINDHOLM; John Erik ;   et al. | 2014-09-25 |
System And Method For Hardware Scheduling Of Indexed Barriers App 20140282566 - Lindholm; John Erik ;   et al. | 2014-09-18 |
System And Method For Hardware Scheduling Of Conditional Barriers And Impatient Barriers App 20140258693 - Lindholm; John Erik ;   et al. | 2014-09-11 |
Graphics Processing Unit With A Texture Return Buffer And A Texture Queue App 20140240337 - Lindholm; John Erik | 2014-08-28 |
Approach For A Configurable Phase-based Priority Scheduler App 20140189698 - CHOQUETTE; Jack Hilaire ;   et al. | 2014-07-03 |
Two-level scheduler for multi-threaded processing Grant 8,732,711 - Dally , et al. May 20, 2 | 2014-05-20 |
Thread group scheduler for computing on a parallel thread processor Grant 8,732,713 - Coon , et al. May 20, 2 | 2014-05-20 |
Parallel array architecture for a graphics processor Grant 8,730,249 - Danskin , et al. May 20, 2 | 2014-05-20 |
System, method and computer program product for bump mapping Grant 8,730,252 - Moreton , et al. May 20, 2 | 2014-05-20 |
Hardware Scheduling Of Ordered Critical Code Sections App 20140123150 - LINDHOLM; John Erik ;   et al. | 2014-05-01 |
Systems and method for managing divergent threads in a SIMD architecture Grant 8,667,256 - Coon , et al. March 4, 2 | 2014-03-04 |
Methods and apparatus for source operand collector caching Grant 8,639,882 - Choquette , et al. January 28, 2 | 2014-01-28 |
Register indexed sampler for texture opcodes Grant 8,624,910 - Lindholm , et al. January 7, 2 | 2014-01-07 |
Dynamic load balancing of instructions for execution by heterogeneous processing engines Grant 8,578,387 - Mills , et al. November 5, 2 | 2013-11-05 |
Cull before vertex attribute fetch and vertex lighting Grant 8,564,616 - Hakura , et al. October 22, 2 | 2013-10-22 |
System and method for accelerated ray-box intersection testing Grant 8,564,589 - Aila , et al. October 22, 2 | 2013-10-22 |
Cull before vertex attribute fetch and vertex lighting Grant 8,542,247 - Hakura , et al. September 24, 2 | 2013-09-24 |
Reordering operands assigned to each one of read request ports concurrently accessing multibank register file to avoid bank conflict Grant 8,533,435 - Qiu , et al. September 10, 2 | 2013-09-10 |
System and method for performing ray tracing node traversal in image rendering Grant 8,502,819 - Aila , et al. August 6, 2 | 2013-08-06 |
Methods And Apparatus For Source Operand Collector Caching App 20130159628 - CHOQUETTE; Jack Hilaire ;   et al. | 2013-06-20 |
Indirect Function Call Instructions In A Synchronous Parallel Thread Processor App 20130138926 - Coon; Brett W. ;   et al. | 2013-05-30 |
Programmable graphics processor for multithreaded execution of programs Grant 8,405,665 - Lindholm , et al. March 26, 2 | 2013-03-26 |
Generating clip state for a batch of vertices Grant 8,384,736 - Lindholm , et al. February 26, 2 | 2013-02-26 |
Indirect function call instructions in a synchronous parallel thread processor Grant 8,312,254 - Coon , et al. November 13, 2 | 2012-11-13 |
System, method and article of manufacture for a programmable processing model with instruction set Grant 8,264,492 - Lindholm , et al. September 11, 2 | 2012-09-11 |
System, method and article of manufacture for a programmable processing model with instruction set Grant 8,259,122 - Lindholm , et al. September 4, 2 | 2012-09-04 |
Programmable Graphics Processor For Multithreaded Execution Of Programs App 20120218267 - Lindholm; John Erik ;   et al. | 2012-08-30 |
Hierarchical processor array Grant 8,237,705 - Lindholm , et al. August 7, 2 | 2012-08-07 |
Method and system for connecting multiple shaders Grant 8,223,158 - Lindholm , et al. July 17, 2 | 2012-07-17 |
Reduction operations in a synchronous parallel thread processing system with disabled execution threads Grant 8,200,940 - Lindholm June 12, 2 | 2012-06-12 |
Programmable graphics processor for multithreaded execution of programs Grant 8,174,531 - Lindholm , et al. May 8, 2 | 2012-05-08 |
Thread Group Scheduler For Computing On A Parallel Thread Processor App 20120110586 - Coon; Brett W. ;   et al. | 2012-05-03 |
Subdividing a shader program Grant 8,159,496 - Lindholm , et al. April 17, 2 | 2012-04-17 |
Two-Level Scheduler for Multi-Threaded Processing App 20120079503 - DALLY; William James ;   et al. | 2012-03-29 |
Instruction Execution Based On Outstanding Load Operations App 20120079241 - DALLY; William James ;   et al. | 2012-03-29 |
Parallel Array Architecture For A Graphics Processor App 20120026171 - Danskin; John M. ;   et al. | 2012-02-02 |
Hierarchical Processor Array App 20120026175 - Lindholm; John Erik ;   et al. | 2012-02-02 |
Thread-type-based resource allocation in a multithreaded processor Grant 8,108,872 - Lindholm , et al. January 31, 2 | 2012-01-31 |
Thread-type-based load balancing in a multithreaded processor Grant 8,087,029 - Lindholm , et al. December 27, 2 | 2011-12-27 |
Hierarchical processor array Grant 8,077,174 - Lindholm , et al. December 13, 2 | 2011-12-13 |
Multiple simultaneous context architecture Grant 7,979,683 - Danskin , et al. July 12, 2 | 2011-07-12 |
Scheduler in multi-threaded processor prioritizing instructions passing qualification rule Grant 7,949,855 - Mills , et al. May 24, 2 | 2011-05-24 |
Using A Pixel Offset For Evaluating A Plane Equation App 20110081100 - Lindholm; John Erik ;   et al. | 2011-04-07 |
Architecture and Instructions for Accessing Multi-Dimensional Formatted Surface Memory App 20110074802 - Nickolls; John R. ;   et al. | 2011-03-31 |
Unified Collector Structure for Multi-Bank Register File App 20110072243 - Qiu; Xiaogang ;   et al. | 2011-03-24 |
Credit-Based Streaming Multiprocessor Warp Scheduling App 20110072244 - Lindholm; John Erik ;   et al. | 2011-03-24 |
Register Indexed Sampler For Texture Opcodes App 20110069076 - LINDHOLM; John Erik ;   et al. | 2011-03-24 |
Z-texture mapping system, method and computer program product Grant 7,889,208 - Moreton , et al. February 15, 2 | 2011-02-15 |
Structured programming control flow in a SIMD architecture Grant 7,877,585 - Coon , et al. January 25, 2 | 2011-01-25 |
Register based queuing for texture requests Grant 7,864,185 - Lindholm , et al. January 4, 2 | 2011-01-04 |
Offloading cube map calculations to a shader Grant 7,859,548 - Lindholm December 28, 2 | 2010-12-28 |
Programmable graphics processor for generalized texturing Grant 7,852,346 - Donovan , et al. December 14, 2 | 2010-12-14 |
System and method for processing thread groups in a SIMD architecture Grant 7,836,276 - Coon , et al. November 16, 2 | 2010-11-16 |
Operand collector architecture Grant 7,834,881 - Liu , et al. November 16, 2 | 2010-11-16 |
Processing an indirect branch instruction in a SIMD architecture Grant 7,761,697 - Coon , et al. July 20, 2 | 2010-07-20 |
System, method and article of manufacture for a programmable processing model with instruction set Grant 7,755,636 - Lindholm , et al. July 13, 2 | 2010-07-13 |
System, method and computer program product for branching during programmable vertex processing Grant 7,755,634 - Lindholm , et al. July 13, 2 | 2010-07-13 |
Across-thread Out-of-order Instruction Dispatch In A Multithreaded Microprocessor App 20100122067 - Lindholm; John Erik ;   et al. | 2010-05-13 |
System, method and article of manufacture for a programmable processing model with instruction set Grant 7,697,008 - Lindholm , et al. April 13, 2 | 2010-04-13 |
Methods of processing graphics data including reading and writing buffers Grant 7,683,905 - Kirk , et al. March 23, 2 | 2010-03-23 |
Across-thread out-of-order instruction dispatch in a multithreaded microprocessor Grant 7,676,657 - Lindholm , et al. March 9, 2 | 2010-03-09 |
Register file allocation Grant 7,634,621 - Coon , et al. December 15, 2 | 2009-12-15 |
Execution of parallel groups of threads with per-instruction serialization Grant 7,634,637 - Lindholm , et al. December 15, 2 | 2009-12-15 |
Structured programming control flow using a disable mask in a SIMD architecture Grant 7,617,384 - Coon , et al. November 10, 2 | 2009-11-10 |
Indirect Function Call Instructions in a Synchronous Parallel Thread Processor App 20090240931 - Coon; Brett W. ;   et al. | 2009-09-24 |
Apparatus and method for raster tile coalescing Grant 7,564,456 - Lindholm , et al. July 21, 2 | 2009-07-21 |
Subdividing a shader program Grant 7,542,043 - Lindholm , et al. June 2, 2 | 2009-06-02 |
System and method for managing divergent threads using synchronization tokens and program instructions that include set-synchronization bits Grant 7,543,136 - Coon , et al. June 2, 2 | 2009-06-02 |
System and method for synchronizing divergent samples in a programmable graphics processing unit Grant 7,477,255 - Lindholm , et al. January 13, 2 | 2009-01-13 |
Register based queuing for texture requests Grant 7,456,835 - Lindholm , et al. November 25, 2 | 2008-11-25 |
Hierarchical Processor Array App 20080143730 - Lindholm; John Erik ;   et al. | 2008-06-19 |
Apparatus, system, and method for increased processing flexibility of a graphic pipeline Grant 7,385,609 - Lindholm , et al. June 10, 2 | 2008-06-10 |
Operand Collector Architecture App 20080109611 - Liu; Samuel ;   et al. | 2008-05-08 |
Scheduling instructions from multi-thread instruction buffer based on phase boundary qualifying rule for phases of math and data access operations with better caching Grant 7,366,878 - Mills , et al. April 29, 2 | 2008-04-29 |
System and method for managing divergent threads in a SIMD architecture Grant 7,353,369 - Coon , et al. April 1, 2 | 2008-04-01 |
Simulating multiported memories using lower port count memories Grant 7,339,592 - Lindholm , et al. March 4, 2 | 2008-03-04 |
A Programmable Graphics Processor For Multithreaded Execution of Programs App 20080024506 - Lindholm; John Erik ;   et al. | 2008-01-31 |
System and method for processing divergent samples in a programmable graphics processing unit Grant 7,324,112 - Lindholm , et al. January 29, 2 | 2008-01-29 |
Across-thread out of order instruction dispatch in a multithreaded graphics processor Grant 7,310,722 - Moy , et al. December 18, 2 | 2007-12-18 |
System, method and computer program product for providing arbitrary texture filtering Grant 7,274,373 - Bastos , et al. September 25, 2 | 2007-09-25 |
Across-thread Out-of-order Instruction Dispatch In A Multithreaded Microprocessor App 20070214343 - Lindholm; John Erik ;   et al. | 2007-09-13 |
Per-fragment control for writing an output buffer Grant 7,256,796 - Bastos , et al. August 14, 2 | 2007-08-14 |
Parallel Array Architecture for a Graphics Processor App 20070159488 - Danskin; John M. ;   et al. | 2007-07-12 |
System and method for grouping execution threads App 20070143582 - Coon; Brett W. ;   et al. | 2007-06-21 |
System and method for reserving and managing memory spaces in a memory resource Grant 7,233,335 - Moreton , et al. June 19, 2 | 2007-06-19 |
System and method for processing thread groups in a SIMD architecture App 20070130447 - Coon; Brett W. ;   et al. | 2007-06-07 |
System, method and article of manufacture for a programmable vertex processing model with instruction set Grant 7,209,140 - Lindholm , et al. April 24, 2 | 2007-04-24 |
Software emulator for optimizing application-programmable vertex processing Grant 7,162,716 - Glanville , et al. January 9, 2 | 2007-01-09 |
System, method and computer program product for texture shading Grant 7,154,507 - Moreton , et al. December 26, 2 | 2006-12-26 |
Vertex processor with multiple interfaces Grant 7,151,543 - Moreton , et al. December 19, 2 | 2006-12-19 |
Methods of processing graphics data including reading and writing buffers Grant 7,139,003 - Kirk , et al. November 21, 2 | 2006-11-21 |
System, method and computer program product for using an arbitrary quantity as texture address Grant 7,136,070 - Papakipos , et al. November 14, 2 | 2006-11-14 |
Method and system for implementing programmable texture lookups from texture coordinate sets Grant 7,109,999 - Lindholm , et al. September 19, 2 | 2006-09-19 |
Shader cache using a coherency protocol Grant 7,103,720 - Moy , et al. September 5, 2 | 2006-09-05 |
Blending system and method in an integrated computer graphics pipeline Grant 7,095,414 - Lindholm , et al. August 22, 2 | 2006-08-22 |
Single semiconductor graphics platform Grant 7,064,763 - Lindholm , et al. June 20, 2 | 2006-06-20 |
Register based queuing for texture requests App 20060119607 - Lindholm; John Erik ;   et al. | 2006-06-08 |
Position conflict detection and avoidance in a programmable graphics processor Grant 7,053,904 - Kirk , et al. May 30, 2 | 2006-05-30 |
Single semiconductor graphics platform with blending and fog capabilities Grant 7,050,055 - Lindholm , et al. May 23, 2 | 2006-05-23 |
Programmable graphics processor for multithreaded execution of programs Grant 7,038,685 - Lindholm May 2, 2 | 2006-05-02 |
Programmable graphics processor for multithreaded execution of programs Grant 7,038,686 - Lindholm May 2, 2 | 2006-05-02 |
Masking system and method for a graphics processing framework embodied on a single semiconductor platform Grant 7,034,829 - Lindholm , et al. April 25, 2 | 2006-04-25 |
Register based queuing for texture requests Grant 7,027,062 - Lindholm , et al. April 11, 2 | 2006-04-11 |
Method and apparatus for multithreaded processing of data in a programmable graphics processor Grant 7,015,913 - Lindholm , et al. March 21, 2 | 2006-03-21 |
Method, apparatus and article of manufacture for a transform module in a graphics processor Grant 7,009,607 - Lindholm , et al. March 7, 2 | 2006-03-07 |
System, method and computer program product for branching during programmable vertex processing Grant 7,002,588 - Lindholm , et al. February 21, 2 | 2006-02-21 |
Clipping system and method for a single graphics semiconductor platform Grant 7,002,577 - Lindholm , et al. February 21, 2 | 2006-02-21 |
Single semiconductor graphics platform system and method with skinning, swizzling and masking capabilities Grant 6,992,667 - Lindholm , et al. January 31, 2 | 2006-01-31 |
Simulating multiported memories using lower port count memories App 20060012603 - Lindholm; John Erik ;   et al. | 2006-01-19 |
Programmable graphics processor for generalized texturing Grant 6,987,517 - Donovan , et al. January 17, 2 | 2006-01-17 |
System and method for generating multiple outputs in a single shader processing pass in a hardware graphics pipeline Grant 6,975,321 - Lindholm , et al. December 13, 2 | 2005-12-13 |
Programmable graphics system and method using flexible, high-precision data formats Grant 6,954,204 - Zatz , et al. October 11, 2 | 2005-10-11 |
System and method for reserving and managing memory spaces in a memory resource Grant 6,950,107 - Moreton , et al. September 27, 2 | 2005-09-27 |
Method and system for programmable pipelined graphics processing with branching instructions Grant 6,947,047 - Moy , et al. September 20, 2 | 2005-09-20 |
Register based queuing for texture requests App 20050190195 - Lindholm, John Erik ;   et al. | 2005-09-01 |
Across-thread out of order instruction dispatch in a multithreaded graphics processor App 20050138328 - Moy, Simon S. ;   et al. | 2005-06-23 |
System, method and computer program product for vertex attribute aliasing in a graphics pipeline Grant 6,894,687 - Kilgard , et al. May 17, 2 | 2005-05-17 |
System, method and computer program product for a programmable pixel processing model with instruction set Grant 6,870,540 - Lindholm , et al. March 22, 2 | 2005-03-22 |
System, method and computer program product for an improved programmable vertex processing model with instruction set Grant 6,844,880 - Lindholm , et al. January 18, 2 | 2005-01-18 |
System, method and computer program product for z-texture mapping Grant 6,828,980 - Moreton , et al. December 7, 2 | 2004-12-07 |
System and method for reserving and managing memory spaces in a memory resource App 20040207630 - Moreton, Henry P. ;   et al. | 2004-10-21 |
Programmable graphics system and method using flexible, high-precision data formats App 20040189651 - F. Zatz, Harold R. ;   et al. | 2004-09-30 |
Sequencer system and method for sequencing graphics processing Grant 6,778,176 - Lindholm , et al. August 17, 2 | 2004-08-17 |
Graphics processing unit with transform module capable of handling scalars and vectors Grant 6,734,874 - Lindholm , et al. May 11, 2 | 2004-05-11 |
System, method and article of manufacture for z-texture mapping Grant 6,731,298 - Moreton , et al. May 4, 2 | 2004-05-04 |
Programmable pixel shading architecture Grant 6,724,394 - Zatz , et al. April 20, 2 | 2004-04-20 |
System, method and computer program product for matrix tracking during vertex processing in a graphics pipeline Grant 6,697,064 - Kilgard , et al. February 24, 2 | 2004-02-24 |
Graphics system and method for processing multiple independent execution threads Grant 6,650,330 - Lindholm , et al. November 18, 2 | 2003-11-18 |
System, method and computer program product for performing a scissor operation in a graphics processing framework embodied on a single semiconductor platform Grant 6,650,331 - Lindholm , et al. November 18, 2 | 2003-11-18 |
Single semiconductor graphics platform system and method with skinning, swizzling and masking capabilities App 20030189565 - Lindholm, John Erik ;   et al. | 2003-10-09 |
Blending system and method in an integrated computer graphics pipeline App 20030112246 - Lindholm, John Erik ;   et al. | 2003-06-19 |
Single semiconductor graphics platform App 20030112245 - Lindholm, John Erik ;   et al. | 2003-06-19 |
Masking system and method for a graphics processing framework embodied on a single semiconductor platform App 20030103050 - Lindholm, John Erik ;   et al. | 2003-06-05 |
Method, apparatus and article of manufacture for a sequencer in a transform/lighting module capable of processing multiple independent execution threads Grant 6,573,900 - Lindholm , et al. June 3, 2 | 2003-06-03 |
Method, apparatus and article of manufacture for a sequencer in a transform/lighting module capable of processing multiple independent execution threads App 20030038808 - Lindholm, John Erik ;   et al. | 2003-02-27 |
Lighting system and method for a graphics processor App 20030034975 - Lindholm, John Erik ;   et al. | 2003-02-20 |
Method, apparatus and article of manufacture for a vertex attribute buffer in a graphics processor Grant 6,515,671 - Lindholm , et al. February 4, 2 | 2003-02-04 |
Method, apparatus and article of manufacture for a sequencer in a transform/lighting module capable of processing multiple independent execution threads App 20030020720 - Lindholm, John Erik ;   et al. | 2003-01-30 |
Software emulator for optimizing application-programmable vertex processing App 20030009748 - Glanville, Robert Steven ;   et al. | 2003-01-09 |
Single semiconductor graphics platform with blending and fog capabilities App 20020196259 - Lindholm, John Erik ;   et al. | 2002-12-26 |
Clipping system and method for a single graphics semiconductor platform App 20020180740 - Lindholm, John Erik ;   et al. | 2002-12-05 |
Clipping system and method for a graphics processing framework embodied on a single semiconductor platform App 20020105519 - Lindholm, John Erik ;   et al. | 2002-08-08 |
System, method and computer program product for performing a scissor operation in a graphics processing framework embodied on a single semiconductor platform App 20020047846 - Lindholm, John Erik ;   et al. | 2002-04-25 |
Diffuse-coloring system and method for a graphics processing framework embodied on a single semiconductor platform App 20020027553 - Lindholm, John Erik ;   et al. | 2002-03-07 |
System, method and computer program product for a blending operation in a transform module of a computer graphics pipeline Grant 6,353,439 - Lindholm , et al. March 5, 2 | 2002-03-05 |
Graphics processing unit with transform module capable of handling scalars and vectors App 20010017626 - Lindholm, John Erik ;   et al. | 2001-08-30 |
Method, apparatus and article of manufacture for a transform module in a graphics processor App 20010005209 - Lindholm, John Erik ;   et al. | 2001-06-28 |
Transform, lighting and rasterization system embodied on a single semiconductor platform Grant 6,198,488 - Lindholm , et al. March 6, 2 | 2001-03-06 |