Patents by Inventor Charles N. Boyd

Charles N. Boyd has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 10720091
    Abstract: Innovations in content mastering operations performed during playback of high dynamic range (“HDR”) video on a display device are described. When content mastering is performed during playback on a display device, a video playback system can use details retained for input HDR video (e.g., retained in metadata) and the properties of the display device to improve the perceptual quality of the HDR video as shown on that display device. For example, the video playback system can use an energy-preserving bloom operator to make bright highlights “bloom” into adjacent areas, thereby accentuating the bright highlights in the HDR video while operating within the constraints of the display device. The video playback system can also perform various other types of operations when content mastering is deferred until playback, including application of a lens flare operator as well as alternative tone mapping operators and alternative color gamut mapping operators selected according to metadata.
    Type: Grant
    Filed: February 16, 2017
    Date of Patent: July 21, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventor: Charles N. Boyd
  • Publication number: 20180233075
    Abstract: Innovations in content mastering operations performed during playback of high dynamic range (“HDR”) video on a display device are described. When content mastering is performed during playback on a display device, a video playback system can use details retained for input HDR video (e.g., retained in metadata) and the properties of the display device to improve the perceptual quality of the HDR video as shown on that display device. For example, the video playback system can use an energy-preserving bloom operator to make bright highlights “bloom” into adjacent areas, thereby accentuating the bright highlights in the HDR video while operating within the constraints of the display device. The video playback system can also perform various other types of operations when content mastering is deferred until playback, including application of a lens flare operator as well as alternative tone mapping operators and alternative color gamut mapping operators selected according to metadata.
    Type: Application
    Filed: February 16, 2017
    Publication date: August 16, 2018
    Applicant: Microsoft Technology Licensing, LLC
    Inventor: Charles N. Boyd
  • Publication number: 20180097527
    Abstract: Methods, systems, and devices are described herein for encoding, decoding, and otherwise processing in hardware and/or software a high dynamic range (HDR) color data structure. In one example, a method for encoding pixel data may include receiving pixel data comprising a red, green, and blue (RGB) value. The method may further include transforming the received pixel data to an intermediate color space data, such as transformed CIE AYB space data. The method may further include compressing the intermediate color space data into less than 64 bits, such as 32 bits. In some aspects, the 32 bits may be divided into luminance information and chrominance information, including, for example, 14 bits representing a floating point luminance value, and 9 bits each representing two fixed point chrominance channel values.
    Type: Application
    Filed: June 26, 2017
    Publication date: April 5, 2018
    Inventors: Charles N. Boyd, James D. Stanard
  • Patent number: 9183651
    Abstract: Methods, systems, and computer-storage media for target independent rasterization of an image. The target is the memory allocated for a rendered image within a graphics pipeline. Embodiments of the present invention allow the rasterization process's sampling rate to be specified independently from the memory allocated for the rendered image. Embodiments of the present invention also allow the rasterization process to be executed at a rate that does not correspond to the memory allocated for the rendered target.
    Type: Grant
    Filed: October 6, 2010
    Date of Patent: November 10, 2015
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Shai Hinitz, Amar Patel, Charles N. Boyd, Blake D. Pelton
  • Patent number: 9064334
    Abstract: An enhanced graphics pipeline is provided that enables common core hardware to perform as different components of the graphics pipeline, programmability of primitives including lines and triangles by a component in the pipeline, and a stream output before or simultaneously with the rendering a graphical display with the data in the pipeline. The programmer does not have to optimize the code, as the common core will balance the load of functions necessary and dynamically allocate those instructions on the common core hardware. The programmer may program primitives using algorithms to simplify all vertex calculations by substituting with topology made with lines and triangles. The programmer takes the calculated output data and can read it before or while it is being rendered. Thus, a programmer has greater flexibility in programming.
    Type: Grant
    Filed: June 3, 2011
    Date of Patent: June 23, 2015
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Amar Patel, Charles N. Boyd, David R. Blythe, Jeff M. J. Noyle, Michael A. Toelle, Stephen Harry Wright
  • Patent number: 8823718
    Abstract: Systems and methods for downloading algorithmic elements to a coprocessor and corresponding processing and communication techniques are provided. For an improved graphics pipeline, the invention provides a class of co-processing device, such as a graphics processor unit (GPU), providing improved capabilities for an abstract or virtual machine for performing graphics calculations and rendering.
    Type: Grant
    Filed: November 12, 2004
    Date of Patent: September 2, 2014
    Assignee: Microsoft Corporation
    Inventors: Charles N. Boyd, Michele B. Boland, Michael A. Toelle, Anantha Rao Kancherla, Amar Patel, Iouri Tarassov, Stephen H. Wright
  • Patent number: 8587602
    Abstract: Systems and associated methods for processing textures in a graphical processing unit (GPU) are disclosed. Textures may be managed on a per region (e.g., tile) basis, which allows efficient use of texture memory. Moreover, very large textures may be used. Techniques provide for both texture streaming, as well as sparse textures. A GPU texture unit may be used to intelligently clamp LOD based on a shader specified value. The texture unit may provide feedback to the shader to allow the shader to react conditionally based on whether clamping was used, etc. Per region (e.g., per-tile) independent mipmap stacks may be used to allow very large textures.
    Type: Grant
    Filed: August 16, 2010
    Date of Patent: November 19, 2013
    Assignee: Microsoft Corporation
    Inventors: Mark S. Grossman, Charles N. Boyd, Allison W. Klein, Craig Peeper
  • Patent number: 8379035
    Abstract: Systems and methods for utilizing intermediate target(s) in connection with computer graphics in a computer system allow serialized programs from graphics APIs to support algorithms that exceed the instruction limits of procedural shaders for single programs. The intermediate buffers may also allow sharing of data between programs for other purposes as well, and are atomically accessible. The size of the buffers, i.e., the amount of data stored in the intermediate targets, can be variably set for a varying amount of resolution with respect to the graphics data. In this regard, a single program generates intermediate data, which can then be used, and re-used, by an extension of the same program and/or any number of other programs any number of times as may be desired, enabling considerable flexibility and complexity of shading programs, while maintaining the speed of modern graphics chips.
    Type: Grant
    Filed: October 31, 2011
    Date of Patent: February 19, 2013
    Assignee: Microsoft Corporation
    Inventors: Michele B Boland, Charles N Boyd, Anantha R Kancherla
  • Patent number: 8305381
    Abstract: Systems and methods for downloading algorithmic elements to a coprocessor and corresponding processing and communication techniques are provided. For an improved graphics pipeline, the invention provides a class of co-processing device, such as a graphics processor unit (GPU), providing improved capabilities for an abstract or virtual machine for performing graphics calculations and rendering.
    Type: Grant
    Filed: April 30, 2008
    Date of Patent: November 6, 2012
    Assignee: Microsoft Corporation
    Inventors: Charles N. Boyd, Michele B. Boland, Michael A. Toelle, Anantha Rao Kancherla, Amar Patel, Iouri Tarassov, Stephen H. Wright
  • Patent number: 8274517
    Abstract: Systems and methods for downloading algorithmic elements to a coprocessor and corresponding processing and communication techniques are provided. For an improved graphics pipeline, the invention provides a class of co-processing device, such as a graphics processor unit (GPU), providing improved capabilities for an abstract or virtual machine for performing graphics calculations and rendering.
    Type: Grant
    Filed: November 12, 2004
    Date of Patent: September 25, 2012
    Assignee: Microsoft Corporation
    Inventors: Charles N. Boyd, Michele B. Boland, Michael A. Toelle, Anantha Rao Kancherla, Amar Patel, Iouri Tarassov, Stephen H. Wright
  • Publication number: 20120113118
    Abstract: Utilizing intermediate target(s) in connection with computer graphics in a computer system is provided. In various embodiments, intermediate memory buffers in video memory are provided and utilized to allow serialized programs from graphics APIs to support algorithms that exceed the instruction limits of procedural shaders for single programs. The intermediate buffers may also allow sharing of data between programs for other purposes as well, and are atomically accessible. The size of the buffers can be variably set for a varying amount of resolution with respect to the graphics data. In this regard, a single program generates intermediate data, which can then be used, and re-used, by an extension of the same program and/or any number of other programs any number of times as may be desired, enabling considerable flexibility and complexity of shading programs, while maintaining the speed of modern graphics chips.
    Type: Application
    Filed: October 31, 2011
    Publication date: May 10, 2012
    Applicant: Microsoft Corporation
    Inventors: Michele B. Boland, Charles N. Boyd, Anantha R. Kancherla
  • Publication number: 20120086715
    Abstract: Methods, systems, and computer-storage media for target independent rasterization of an image. The target is the memory allocated for a rendered image within a graphics pipeline. Embodiments of the present invention allow the rasterization process's sampling rate to be specified independently from the memory allocated for the rendered image. Embodiments of the present invention also allow the rasterization process to be executed at a rate that does not correspond to the memory allocated for the rendered target.
    Type: Application
    Filed: October 6, 2010
    Publication date: April 12, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: AMAR PATEL, CHARLES N. BOYD, BLAKE D. PELTON, SHAI HINITZ
  • Publication number: 20120038657
    Abstract: Systems and associated methods for processing textures in a graphical processing unit (GPU) are disclosed. Textures may be managed on a per region (e.g., tile) basis, which allows efficient use of texture memory. Moreover, very large textures may be used. Techniques provide for both texture streaming, as well as sparse textures. A GPU texture unit may be used to intelligently clamp LOD based on a shader specified value. The texture unit may provide feedback to the shader to allow the shader to react conditionally based on whether clamping was used, etc. Per region (e.g., per-tile) independent mipmap stacks may be used to allow very large textures.
    Type: Application
    Filed: August 16, 2010
    Publication date: February 16, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Mark S. Grossman, Charles N. Boyd, Allison W. Klein, Craig Peeper
  • Patent number: 8063909
    Abstract: Intermediate target(s) are utilized in connection with computer graphics in a computer system. In various embodiments, intermediate memory buffers in video memory are utilized to allow serialized programs from graphics APIs to support algorithms that exceed the instruction limits of procedural shaders for single programs. The intermediate buffers may also allow sharing of data between programs for other purposes as well, and are atomically accessible. The size of the buffers, i.e., the amount of data stored in the intermediate targets, can be variably set for a varying amount of resolution with respect to the graphics data. In this regard, a single program generates intermediate data, which can then be used, and re-used, by an extension of the same program and/or any number of other programs any number of times, enabling considerable flexibility and complexity of shading programs, while maintaining the speed of modern graphics chips.
    Type: Grant
    Filed: June 22, 2009
    Date of Patent: November 22, 2011
    Assignee: Microsoft Corporation
    Inventors: Michele B Boland, Charles N Boyd, Anantha R Kancherla
  • Patent number: 8035646
    Abstract: Systems and methods for downloading algorithmic elements to a coprocessor and corresponding processing and communication techniques are provided. For an improved graphics pipeline, the invention provides a class of co-processing device, such as a graphics processor unit (GPU), providing improved capabilities for an abstract or virtual machine for performing graphics calculations and rendering.
    Type: Grant
    Filed: November 12, 2004
    Date of Patent: October 11, 2011
    Assignee: Microsoft Corporation
    Inventors: Charles N. Boyd, Michele B. Boland, Michael A. Toelle, Anantha Rao Kancherla, Amar Patel, Iouri Tarassov, Stephen H. Wright
  • Publication number: 20110234592
    Abstract: An enhanced graphics pipeline is provided that enables common core hardware to perform as different components of the graphics pipeline, programmability of primitives including lines and triangles by a component in the pipeline, and a stream output before or simultaneously with the rendering a graphical display with the data in the pipeline. The programmer does not have to optimize the code, as the common core will balance the load of functions necessary and dynamically allocate those instructions on the common core hardware. The programmer may program primitives using algorithms to simplify all vertex calculations by substituting with topology made with lines and triangles. The programmer takes the calculated output data and can read it before or while it is being rendered. Thus, a programmer has greater flexibility in programming.
    Type: Application
    Filed: June 3, 2011
    Publication date: September 29, 2011
    Applicant: Microsoft Corporation
    Inventors: Amar Patel, Charles N. Boyd, David R. Blythe, Jeff M.J. Noyle, Michael A. Toelle, Stephen Harry Wright
  • Patent number: 7978197
    Abstract: Systems and methods for downloading algorithmic elements to a coprocessor and corresponding processing and communication techniques are provided. For an improved graphics pipeline, the invention provides a class of co-processing device, such as a graphics processor unit (GPU), providing improved capabilities for an abstract or virtual machine for performing graphics calculations and rendering.
    Type: Grant
    Filed: November 12, 2004
    Date of Patent: July 12, 2011
    Assignee: Microsoft Corporation
    Inventors: Charles N. Boyd, Michele B. Boland, Michael A. Toelle, Anantha Rao Kancherla, Amar Patel, Iouri Tarassov, Stephen H. Wright
  • Patent number: 7978205
    Abstract: An enhanced graphics pipeline is provided that enables common core hardware to perform as different components of the graphics pipeline, programmability of primitives including lines and triangles by a component in the pipeline, and a stream output before or simultaneously with the rendering a graphical display with the data in the pipeline. The programmer does not have to optimize the code, as the common core will balance the load of functions necessary and dynamically allocate those instructions on the common core hardware. The programmer may program primitives using algorithms to simplify all vertex calculations by substituting with topology made with lines and triangles. The programmer takes the calculated output data and can read it before or while it is being rendered. Thus, a programmer has greater flexibility in programming.
    Type: Grant
    Filed: September 3, 2004
    Date of Patent: July 12, 2011
    Assignee: Microsoft Corporation
    Inventors: Amar Patel, Charles N. Boyd, David R. Blythe, Jeff M. J. Noyle, Michael A. Toelle, Stephen Harry Wright
  • Patent number: 7965288
    Abstract: An API is provided that enables programmability of a 3D chip, wherein programming or algorithmic elements written by the developer can be downloaded to the chip, thereby programming the chip to perform those algorithms. A developer writes a routine that is downloadable to a 3D graphics chip. There are also a set of algorithmic elements that are provided in connection with the API that have already been programmed for the developer, that are downloadable to the programmable chip for improved performance. Thus, a developer may download preexisting API objects to a 3D graphics chip. A developer adheres to a specific format for packing up an algorithmic element, or set of instructions, for implementation by a 3D graphics chip. The developer packs the instruction set into an array of numbers, by referring to a list of ‘tokens’ understood by the 3D graphics chip. This array of numbers in turn is mapped correctly to the 3D graphics chip for implementation of the algorithmic element by the 3D graphics chip.
    Type: Grant
    Filed: October 22, 2009
    Date of Patent: June 21, 2011
    Assignee: Microsoft Corporation
    Inventors: Charles N. Boyd, Michael A. Toelle
  • Patent number: 7884817
    Abstract: An API is provided that enables programmability of a 3D chip, wherein programming or algorithmic elements written by the developer can be downloaded to the chip, thereby programming the chip to perform those algorithms. A developer writes a routine that is downloadable to a 3D graphics chip. There are also a set of algorithmic elements that are provided in connection with the API that have already been programmed for the developer, that are downloadable to the programmable chip for improved performance. Thus, a developer may download preexisting API objects to a 3D graphics chip. A developer adheres to a specific format for packing up an algorithmic element, or set of instructions, for implementation by a 3D graphics chip. The developer packs the instruction set into an array of numbers, by referring to a list of ‘tokens’ understood by the 3D graphics chip. This array of numbers in turn is mapped correctly to the 3D graphics chip for implementation of the algorithmic element by the 3D graphics chip.
    Type: Grant
    Filed: September 2, 2004
    Date of Patent: February 8, 2011
    Assignee: Microsoft Corporation
    Inventors: Charles N. Boyd, Michael A. Toelle