Nvidia Patent Grants

Video decoder architecture for processing out-of-order macro-blocks of a video stream

Granted: October 17, 2017
Patent Number: 9794593
A video decoder architecture for processing out-of-order macro-blocks of a video stream. A microcode engine receives compressed data representing macro-blocks of a frame of a video stream, wherein at least one macro-block is received out-of-order. The microcode engine is for buffering the compressed data and for ordering the macro-blocks of the frame in raster scan order. A digital video decoder receives the macro-blocks in raster scan order and is for decoding the macro-blocks.

Heuristics for improving performance in a tile based architecture

Granted: October 17, 2017
Patent Number: 9792122
One embodiment of the present invention includes a technique for processing graphics primitives in a tile-based architecture. The technique includes storing, in a buffer, a first plurality of graphics primitives and a first plurality of state bundles received from the world-space pipeline. The technique further includes determining, based on a first condition, that the first plurality of graphics primitives should be replayed from the buffer, and, in response, replaying the first…

Microcontroller for memory management unit

Granted: October 17, 2017
Patent Number: 9792220
One embodiment of the present invention includes a microcontroller coupled to a memory management unit (MMU). The MMU is coupled to a page table included in a physical memory, and the microcontroller is configured to perform one or more virtual memory operations associated with the physical memory and the page table. In operation, the microcontroller receives a page fault generated by the MMU in response to an invalid memory access via a virtual memory address. To remedy such a page…

Technique for simulating the dynamics of hair

Granted: October 10, 2017
Patent Number: 9785729
A simulation engine is configured to generate a physical simulation of a chain of particles by implementing a physics-based algorithm. The simulation engine is configured to generate a predicted position for each particle and to then adjust the predicted position of each particle based on a set of constraints associated with the physics-based algorithm. The simulation engine may then generate a predicted velocity for a given particle based on the adjusted, predicted position of that…

Dynamic frame repetition in a variable refresh rate system

Granted: October 10, 2017
Patent Number: 9786255
A method, computer program product, and system for adjusting a dynamic refresh frequency of a display device are disclosed. The method includes the steps of obtaining a current frame duration associated with a first image, computing, based on the current frame duration, a repetition value for a second image, and repeating presentation of the second image on a display device based on the repetition value. The logic for implementing the method may be included in a graphics processing unit…

Influence clock data recovery settling point by applying decision feedback equalization to a crossing sample

Granted: October 10, 2017
Patent Number: 9787509
An apparatus including a receiver coupled to receive an input signal from a communication link and operable to employ decision feedback equalization to the input signal of the communication link and generate an edge sample signal. The apparatus also includes a timing recovery module coupled to the receiver and operable to receive the edge sample signal and use the edge sample signal to generate a data sampling phase signal, wherein the edge sample signal influences a settling point of…

Fourier transform for a signal to be transmitted on a random access channel

Granted: October 10, 2017
Patent Number: 9788347
Provided is a recursive method and apparatus for processing a signal for determining a plurality of frequency components of the signal, the signal being a chirp-like polyphase sequence. In one embodiment, the method includes: (1) determining a first frequency component of the plurality of frequency components, (2) determining a component factor by accessing a factor table, (3) determining the second frequency component using the determined first frequency component and the determined…

Hierarchical tiled caching

Granted: October 3, 2017
Patent Number: 9779533
One embodiment of the present invention includes a method for processing graphics objects. The method includes receiving a first draw-call and a second draw-call. The method also includes dividing the first draw-call into a first set of sub-draw-calls and the second draw-call into a second set of sub-draw-calls. The method further includes identifying a first screen tile. The method also includes identifying a first group of sub-draw-calls included in the first set of sub-draw-calls that…

Techniques for determining instruction dependencies

Granted: September 26, 2017
Patent Number: 9772827
One embodiment sets forth a method for efficiently determining memory resource dependencies between instructions included in a software application. For each instruction, a dependency analyzer uses overlapping search techniques to identify one or more overlaps between the memory elements included in the current instruction and the memory elements included in previous instructions. The dependency analyzer then maps objects included in the instructions to a set of partition elements…

Rendering cover geometry without internal edges

Granted: September 26, 2017
Patent Number: 9773341
One embodiment of the present invention includes techniques for rasterizing geometries. First, a processing unit defines a bounding primitive that covers the geometry and does not include any internal edges. If the bounding primitive intersects any enabled clip plane, then the processing unit generates fragments to fill a current viewport. Alternatively, the processing unit generates fragments to fill the bounding primitive. Because the rasterized region includes no internal edges,…

Barycentric filtering for measured biderectional scattering distribution function

Granted: September 26, 2017
Patent Number: 9773342
The disclosure provides a method of determining reflected irradiance for a surface point on a surface whose reflectance properties are represented by a measured BSDF. Additionally, the disclosure provides a renderer and a computer program product. In one embodiment, the method includes: (1) determining u, v and w coordinates in the measured BSDF for the surface point based on an incoming and an outgoing ray direction, (2) selecting a triangle for barycentric interpolation based on values…

Graphics processor clock scaling based on idle time

Granted: September 26, 2017
Patent Number: 9773344
A method for graphics processor clock scaling comprises the following steps. A percentage of idle-time is calculated, based upon an elapsed idle-time and an elapsed active time. A graphics processor clock rate is reduced if the percentage of idle time is higher than a high limit threshold. The graphics processor clock rate is increased if the percentage of idle time is lower than a low limit threshold.

System, method, and computer program product for combining low motion blur and variable refresh rate in a display

Granted: September 26, 2017
Patent Number: 9773460
A system, method, and computer program product are provided for combining low motion blur and variable refresh rate in a display. In one embodiment, a hold-type display is operated in a first mode of operation where the hold-type display is dynamically refreshed such that the hold type display handles updates to image frames at unpredictable times and where for each of the image frames a backlight of the hold-type display is activated for an entire duration of display of the image frame.…

Physiologically based adaptive image generation

Granted: September 26, 2017
Patent Number: 9773473
A system, computer-readable medium, and method are provided for generating images based on adaptations of the human visual system. An input image is received, an effect provoking change is received, and an afterimage resulting from a cumulative effect of human visual adaptation is computed based on the effect provoking change and a per-photoreceptor type physiological adaptation of the human visual system. The computed afterimage may include a bleaching afterimage effect and/or a local…

Internally die-referenced thermal transfer plate

Granted: September 26, 2017
Patent Number: 9775229
This disclosure describes an electronics device that effectively removes heat from the SoC, which increases its efficiency and extends its useful life by spreading heat in the thermally conductive plate before transferring it across the interface. Surface area is a significant factor in TIM thermal performance, so this increases the performance substantially when using the same type of TIM pad. This device allows the use of lower performance TIM pads that resolve the issues of high die…

Closed loop dynamic voltage and frequency scaling

Granted: September 19, 2017
Patent Number: 9766649
A system is based on an IC. A first component of the IC generates a signal that clocks the IC at a target operating frequency. A period corresponding to the target clock frequency exceeds a duration of a longest critical path associated with the IC. The first component and synchronous logic of the IC clocked therewith, each functions with the core supply voltage, which may be supplied to each via the same power supply rail. A second IC component detects errors that relate to an operation…

Page state directory for managing unified virtual memory

Granted: September 19, 2017
Patent Number: 9767036
A system for managing virtual memory. The system includes a first processing unit configured to execute a first operation that references a first virtual memory address. The system also includes a first memory management unit (MMU) associated with the first processing unit and configured to generate a first page fault upon determining that a first page table that is stored in a first memory unit associated with the first processing unit does not include a mapping corresponding to the…

Technique for deblurring images

Granted: September 19, 2017
Patent Number: 9767538
An image capture application captures a sequence of images via a digital camera. The sequence of images may have undesirable levels of blurriness due to the motion of objects in the field of view of the digital camera or due to movement of the digital camera itself. A deblur engine within the image capture application generates image segments within one of the captured images, where a given image segment includes pixel values that move coherently between different images in the sequence.…

Target independent rasterization with multiple color samples

Granted: September 19, 2017
Patent Number: 9767600
A graphics processing pipeline within a parallel processing unit (PPU) is configured to perform path rendering by generating a collection of graphics primitives that represent each path to be rendered. The graphics processing pipeline determines the coverage of each primitive at a number of stencil sample locations within each different pixel. Then, the graphics processing pipeline reduces the number of stencil samples down to a smaller number of color samples, for each pixel. The…

Efficient digital microphone receiver process and system

Granted: September 19, 2017
Patent Number: 9769550
A method for processing a bitstream starts by shifting a bitstream of a first sample of a signal into a buffer. The buffer also holds bits of one or more additional bitstreams for one or more additional samples of the signal. Bits of a first half of the buffer are incrementally compared to corresponding bits of a second half of the buffer. Each bit of the first half of the buffer is compared to a corresponding bit of the second half of the buffer. A computation is performed on each bit…