Sparse refresh double-buffering
AssigneeIntel Corporation
InventorThomas E. Willis
Life of this patent
Estimating the term…
Abstract
A spatial light modulator having a double-buffering pixel value storage mechanism. A double-buffering mechanism enabling sparse refresh. A double-buffering value storage mechanism suitable for use with a serial or raster value producer and a value consumer, especially those in which it is desirable to consume an entire, completed frame or set of values at a time, and particularly those in which it is desirable to enable the producer to continue producing serially while the consumer is consuming in parallel fashion.
Claims49
An apparatus comprising:
- global control logic for providing a commit signal and a write signal;
- and
- a double-buffering circuit including,
- local control logic coupled to receive the commit signal and the write signal, for providing a copy signal in response to the commit signal if the write signal was received subsequent to receipt of a previous commit signal,
- a first buffer having a value input for receiving a new value from a source and having a control input for receiving the write signal, and for storing the new value in response to the write signal, and
- a second buffer having a value input for receiving the new value from the first buffer and having a control input for receiving the copy signal, and for storing the new value as an old value in response to the copy signal.
An apparatus comprising:
- global control logic for providing a commit signal and a write signal;
- a double-buffering circuit including,
- a first buffer and a second buffer coupled to receive a value from a source,
- a multiplexor coupled to receive values stored by the first and second buffers,
- local control logic coupled to receive the commit signal and the write signal, for providing a mux select signal to the multiplexor to cause the multiplexor to pass either the value stored by the first buffer or the value stored by the second buffer, and for issuing, in response to the write signal,
- a first read enable signal to the first buffer if the multiplexor is 12 passing the value stored by the second buffer, or
- a second read enable signal to the second buffer if the multiplexor is passing the value stored by the first buffer,
- and, in response to the commit signal, for toggling the mux select signal if the write signal was received subsequent to a most recent prior receipt of the commit signal.
An apparatus for use with a series of values received from a serial value producer, the apparatus comprising:
- a value consumer;
- and
- a double-buffering mechanism coupled between the serial value producer and the value consumer, the double-buffering mechanism including,
- global control logic for issuing a commit signal and a write signal, and
- a plurality of local logic mechanisms for providing values in parallel to the value consumer, each local logic mechanism including,
- a first buffer,
- a second buffer,
- wherein one of the first and second buffers will store a previously received value from the serial value producer and provide the stored value to the value consumer, and
- local control logic responsive the write signal to cause the other of the first and second buffers to store a new value from the serial value producer, and responsive to the commit signal to cause the other rather than the one of the buffers to provide its stored value to the value consumer if the write signal was received subsequent to a most recent previously received commit signal.
A method of passing new pixel values from a source to a spatial light modulator which has multiple pixel display cells, the method comprising:
- (A) for each respective new pixel value from the source,
- buffering the new pixel value in a first buffer coupled to the pixel display cell to which that new pixel value is to be written,
- continuing to drive the pixel display cell with a previously received pixel value, and
- setting a dirty bit indicating that the display pixel cell has been written to;
- and
- (B) at the end of a frame of new pixel values, for each pixel display cell to which a new value was written,
- committing the buffered new value to an output coupled to drive the pixel display cell, and
- clearing the dirty bit to indicate that the pixel display cell has not been written to since being committed.
A method of operating a spatial light modulator, the method comprising:
- driving respective pixel values of an old frame to corresponding pixel display cells of a display cell array;
- (A) receiving a new frame of new pixel values;
- (B) for each new pixel value in the new frame, buffering the new pixel value while continuing to drive a corresponding pixel value of the old frame to the display cell array;
- and
- (C) upon completion of receipt of the new frame, transferring the new pixel values in parallel to corresponding pixel display cells of the display cell array.
A spatial light modulator comprising:
- a display having a plurality of regions, each region including at least one display pixel;
- global control means for providing to each of the regions a respective write signal, and for providing a commit signal;
- and
- for each of the regions,
- buffer means for buffering values and including a first buffer and a second buffer, and
- local control means, coupled to receive the region's write signal and the commit signal, for providing a control signal to the buffer means in response to receiving the commit signal if the write signal has been received subsequent to an immediately prior receipt of the commit signal
- wherein the control signal causes one of the first and second buffers to present its buffered value to the display.
A method of performing sparse refresh of a display, the display including a plurality of regions each containing at least one display pixel, the method comprising:
- driving the at least one display pixel of each region according to a present value stored in a driving buffer of a double-buffering mechanism uniquely associated with that region;
- updating a non-driving buffer of the double-buffering mechanism of less than all of the regions;
- and
- driving the at least one display pixel of each region according to the present value if the region was not updated, and according to the updated non-driving buffer if the region was updated.
A method of performing sparse refresh in a system having a set of first buffers and a set of second buffers and a multi-location destination, the method comprising:
- first driving the destination with previous values while,
- updating a subset of the buffers with new values;
- leaving a remainder of the buffers un-updated;
- and
- second driving the destination with the new values from the updated buffers and the previous values from the non-updated buffers only after completion of the updating.
Dependencies are inferred from the claim text.