1460951909-37e1bfb6-45bf-4eac-a7a5-281541613ccb

1. A tangible, non-transitory, computer-readable medium comprising computer-readable instructions for instructing a processor to implement a method for adjusting image code values for backlight variations, said method comprising:
a) determining a first backlight intensity value for a first color channel of a backlight element corresponding to a pixel;
b) determining a first ideal gain value to compensate for said first backlight intensity value in said first color channel;
c) determining a first gain equivalent value to compensate for said first backlight intensity value in said first color channel;
d) calculating a first gain reduction factor based on said first ideal gain value and said first gain equivalent value for said first color channel;
e) determining a second backlight intensity value for a second color channel of said pixel;
f) determining a second ideal gain value to compensate for said second backlight intensity value in said second color channel;
g) determining a second gain equivalent value to compensate for said second backlight intensity value in said second color channel;
h) calculating a second gain reduction factor based on said second ideal gain value and said second gain equivalent value for said second color channel;
i) selecting one of said first gain reduction factor related to said first color channel and said second gain reduction factor related to said second color channel as a selected gain reduction factor to be applied to both said first color channel and said second color channel, said selecting being based on color preservation; and
j) determining an adjusted image color channel code value using an original image code value for a color channel of said pixel, said ideal gain and said selected gain reduction factor.
2. A tangible, non-transitory, computer-readable medium as described in claim 1 where in said first ideal gain value is determined with the relationship,
IdealGain
R

=
(

1

I
R
)
1
\u03b3
,
wherein IR is the backlight intensity for said first color channel and \u03b3 is a display gamma value.
3. A tangible, non-transitory, computer-readable medium as described in claim 1 wherein said second ideal gain value is determined with the relationship,
IdealGain
G

=
(

1

I
G
)
1
y
,
wherein IG is the backlight intensity for said second color channel and \u03b3 is a display gamma value.
4. A tangible, non-transitory, computer-readable medium as described in claim 1 wherein said first gain equivalent value is determined with the relationship,
x
~

=
T
\u03b1

\u2061

(
x
)
\u21d2
G
\u03b1

\u2061

(
x
)
=
T
\u03b1

\u2061

(
x
)
x
wherein x is an input code value, {tilde over (x)} is the output code value, \u03b1 is a color channel, T\u03b1(x) is the compensating tonescale and G\u03b1(x) is the equivalent gain defined by the compensating tonescale.
5. A tangible, non-transitory, computer-readable medium as described in claim 1 wherein said first gain reduction factor is determined with the relationship,
K
\u03b1

\u2061

(
x
)
=
Gain
\u03b1

\u2061

(
x
)
IdealGain
\u03b1
\u21d2
K
\u03b1

\u2061

(
x
)
=
T
\u03b1

\u2061

(
x
)
x
(

1

I
\u03b1
)
1
\u03b3
=
T
\u03b1

\u2061

(
x
)
\xb7

I
\u03b1

1
\u03b3
x
,
wherein \u03b1 denotes said first color channel, x is an image code value, K\u03b1(x) is the gain reduction factor, T\u03b1(x) is the compensating tonescale and I is a backlight intensity value.
6. A method for adjusting image code values for backlight variations, said method comprising:
a) determining a first backlight intensity value for a first color channel of a backlight element corresponding to a pixel;
b) determining a first ideal gain value to compensate for said first backlight intensity value in said first color channel;
c) determining a first gain equivalent value to compensate for said first backlight intensity value in said first color channel;
d) calculating a first gain reduction factor based on said first ideal gain value and said first gain equivalent value for said first color channel;
e) determining a second backlight intensity value for a second color channel of said pixel;
f) determining a second ideal gain value to compensate for said second backlight intensity value in said second color channel;
g) determining a second gain equivalent value to compensate for said second backlight intensity value in said second color channel;
h) calculating a second gain reduction factor based on said second ideal gain value and said second gain equivalent value for said second color channel;
i) selecting one of said first gain reduction factor related to said first color channel and said second gain reduction factor related to said second color channel as a selected gain reduction factor to be applied to both said first color channel and said second color channel, said selecting being based on color preservation; and
j) determining an adjusted image color channel code value using an original image code value for a color channel of said pixel, said ideal gain and said selected gain reduction factor.
7. A method as described in claim 6 wherein said first ideal gain value is determined with the relationship,
IdealGain
R

=
(

1

I
R
)
1
\u03b3
,
wherein IR is the backlight intensity for said first color channel and \u03b3 is a display gamma value.
8. A method as described in claim 6 wherein said second ideal gain value is determined with the relationship,
IdealGain
G

=
(

1

I
G
)
1
\u03b3
,
wherein IG is the backlight intensity for said second color channel and \u03b3 is a display gamma value.
9. A method as described in claim 6 wherein said first gain equivalent value is determined with the relationship,
x
~

=
T
\u03b1

\u2061

(
x
)
\u21d2
G
\u03b1

\u2061

(
x
)
=
T
\u03b1

\u2061

(
x
)
x
wherein x is an input code value, {tilde over (x)} is the output code value, \u03b1 is a color channel, T\u03b1(x) is the compensating tonescale and G\u03b1(x) is the equivalent gain defined by the compensating tonescale.
10. A method as described in claim 6 wherein said second gain equivalent value is determined with the relationship,
x
~

=
T
\u03b1

\u2061

(
x
)
\u21d2
G
\u03b1

\u2061

(
x
)
=
T
\u03b1

\u2061

(
x
)
x
wherein x is an input code value, {tilde over (x)} is the output code value, \u03b1 is a color channel, T\u03b1(x) is the compensating tonescale and G\u03b1(x) is the equivalent gain defined by the compensating tonescale.
11. A method as described in claim 6 wherein said first gain reduction factor is determined with the relationship,
K
\u03b1

\u2061

(
x
)
=
Gain
\u03b1

\u2061

(
x
)
IdealGain
\u03b1
\u21d2
K
\u03b1

\u2061

(
x
)
=
T
\u03b1

\u2061

(
x
)
x
(

1

I
\u03b1
)
1
\u03b3
=
T
\u03b1

\u2061

(
x
)
\xb7

I
\u03b1

1
\u03b3
x
,
wherein \u03b1 denotes said first color channel, x is an image code value, K\u03b1(x) is the gain reduction factor, T\u03b1(x) is the compensating tonescale and I is a backlight intensity value.
12. A method as described in claim 6 wherein said second gain reduction factor is determined with the relationship,
K
\u03b1

\u2061

(
x
)
=
Gain
\u03b1

\u2061

(
x
)
IdealGain
\u03b1
\u21d2
K
\u03b1

\u2061

(
x
)
=
T
\u03b1

\u2061

(
x
)
x
(

1

I
\u03b1
)
1
\u03b3
=
T
\u03b1

\u2061

(
x
)
\xb7

I
\u03b1

1
\u03b3
x
,
wherein \u03b1 denotes said second color channel and x is an image code value, K\u03b1(x) is the gain reduction factor and T\u03b1(x) is the compensating tonescale and I is a backlight intensity value.
13. A method as described in claim 6 wherein said selecting one of said first gain reduction factor and said second gain reduction factor as a selected gain reduction factor comprises selecting a minimum gain reduction factor that reduces clipping.
14. A method as described in claim 6 wherein said first ideal gain value is determined using a backlight crosstalk matrix.
15. A method as described in claim 6 wherein said second ideal gain value is determined using a backlight crosstalk matrix.
16. A method as described in claim 6 wherein said first gain equivalent value is determined using a backlight crosstalk matrix.
17. A method as described in claim 6 wherein said second gain equivalent value is determined using a backlight crosstalk matrix.
18. A method for adjusting image code values for backlight variations, said method comprising:
a) determining a first backlight intensity value for a first color channel of a pixel;
b) determining a first ideal gain value to compensate for said first backlight intensity value, wherein said first ideal gain value is determined with the relationship,
IdealGain
R

=
(

1

I
R
)
1
\u03b3
,
wherein IR is the backlight intensity for said first color channel and \u03b3 is a display gamma value;

c) determining a first code-value-dependent gain value to compensate for said first backlight intensity value, said determining a first code-value-dependent gain value comprising using the relationship,
x
~

=
T
\u03b1

\u2061

(
x
)
\u21d2
G
\u03b1

\u2061

(
x
)
=
T
\u03b1

\u2061

(
x
)
x
wherein x is an input code value, {tilde over (x)} is the output code value, \u03b1 is a color channel, T\u03b1(x) is the compensating tonescale and G\u03b1(x) is the equivalent gain defined by the compensating tonescale;

d) calculating a first gain reduction factor, for said first color channel, using the relationship,
K
\u03b1

\u2061

(
x
)
=
Gain
\u03b1

\u2061

(
x
)
IdealGain
\u03b1
\u21d2
K
\u03b1

\u2061

(
x
)
=
T
\u03b1

\u2061

(
x
)
x
(

1

I
\u03b1
)
1
\u03b3
=
T
\u03b1

\u2061

(
x
)
\xb7

I
\u03b1

1
\u03b3
x
,
wherein \u03b1 denotes a specific color channel, x is an image code value, K\u03b1(x) is the gain reduction factor, I\u03b1 is the backlight intensity and \u03b3 is a display gamma value;
e) determining a second backlight intensity value for a second color channel of said pixel;
f) determining a second ideal gain value to compensate for said second backlight intensity value, wherein said second ideal gain value is determined with the relationship,
IdealGain
R

=
(

1

I
R
)
1
\u03b3
,
wherein IG is the backlight intensity for said second color channel and \u03b3 is a display gamma value;

g) determining a second code-value-dependent gain value to compensate for said second backlight intensity value, said determining a second code-value-dependent gain value comprising using the relationship,
x
~

=
T
\u03b1

\u2061

(
x
)
\u21d2
G
\u03b1

\u2061

(
x
)
=
T
\u03b1

\u2061

(
x
)
x
wherein x is an input code value, {tilde over (x)} is the output code value, \u03b1 is a color channel, T\u03b1(x) is the compensating tonescale and G\u03b1(x) is the equivalent gain defined by the compensating tonescale;

h) calculating a second gain reduction factor, for said second color channel, using the relationship,
K
\u03b1

\u2061

(
x
)
=
Gain
\u03b1

\u2061

(
x
)
IdealGain
\u03b1
\u21d2
K
\u03b1

\u2061

(
x
)
=
T
\u03b1

\u2061

(
x
)
x
(

1

I
\u03b1
)
1
\u03b3
=
T
\u03b1

\u2061

(
x
)
\xb7

I
\u03b1

1
\u03b3
x
,
wherein \u03b1 denotes a specific color channel, x is an image code value, and K\u03b1(x) is the gain reduction factor, I\u03b1 is the backlight intensity and \u03b3 is a display gamma value;
i) selecting one of said first gain reduction factor and said second gain reduction factor as a selected gain reduction factor based on which factor effects the least gain; and
j) determining an adjusted image code value using an original image code value, said ideal gain value and said selected gain reduction factor for one of said first or second color channels.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. An apparatus for elastic caching of redundant cache data, comprising:
a plurality of buffers; and
a circuit configured to (i) receive a write request from a host to store write data in a storage volume, (ii) select a particular redundant organization from a plurality of redundant organizations based on said write request, (iii) allocate a number of extents in said buffers based upon both a size of said write data and said particular redundant organization, and (iv) store said write data in said number of extents, wherein (a) each individual extent of said number of extents is located in a different one of said buffers, (b) said number of extents are dynamically linked together in response to said write request and (c) two or more of said links cross one or more boundaries between said buffers.
2. The apparatus according to claim 1, wherein said circuit is further configured to (i) copy a portion less than all of said write data from said buffers to said storage volume and (ii) unlink at least one and less than all of said number of extents in response to said copy of said portion of said write data.
3. The apparatus according to claim 1, wherein said number of extents are dynamically linked by changing a respective parameter corresponding to each of said number of extents.
4. The apparatus according to claim 3, wherein each of said respective parameters is changed to point to another extent in said number of extents allocated to said write data.
5. The apparatus according to claim 1, wherein said circuit is further configured to (i) select a non-redundant organization based on another request received from said host and (ii) allocate one or more extents based upon said non-redundant organization.
6. The apparatus according to claim 1, wherein (i) said circuit is further configured to allocate another number of extents based upon another redundant organization of said redundant organizations associated with another write request received from said host and (ii) said another redundant organization is different than said particular redundant organization.
7. The apparatus according to claim 1, wherein said particular redundant organization comprises an organization used with a redundance array of independent disks in said storage volume.
8. The apparatus according to claim 1, wherein said apparatus is implemented as one or more integrated circuits.
9. A method for elastic caching of redundant cache data, comprising the steps of:
(A) receiving a write request from a host to an apparatus to store write data in a storage volume;
(B) selecting a particular redundant organization from a plurality of redundant organizations based on said write request;
(C) allocating a number of extents in a plurality of buffers based upon both a size of said write data and said particular redundant organization; and
(D) storing said write data in said number of extents, wherein (i) each individual extent of said number of extents is located in a different one of said buffers, (ii) said number of extents are dynamically linked together in response to said write request and (iii) two or more of said links cross one or more boundaries between said buffers.
10. The method according to claim 9, further comprising the steps of:
copying a portion less than all of said write data from said buffers to said storage volume; and
unlinking at least one and less than all of said number of extents in response to said copying of said portion of said write data.
11. The method according to claim 9, wherein said number of extents are dynamically linked by changing a respective parameter corresponding to each of said number of extents.
12. The method according to claim 11, wherein each of said respective parameters is changed to point to another extent in said number of extents allocated to said write data.
13. The method according to claim 9, further comprising the steps of:
selecting a non-redundant organization based on another request received from said host; and
allocating one or more extents based upon said non-redundant organization.
14. The method according to claim 9, further comprising the steps of:
allocating another number of extents based upon another redundant organization of said redundant organizations associated with another write request received from said host, wherein said another redundant organization is different than said particular redundant organization.
15. The method according to claim 9, wherein said particular redundant organization comprises an organization used with a redundance array of independent disks in said storage volume.
16. The apparatus according to claim 1, wherein said circuit is further configured to (i) receive a read request from said host and (ii) allocate one or more unused extents in response to a cache miss of said read request.
17. The apparatus according to claim 16, wherein said unused extents are allocated in a non-redundant organization.
18. The method according to claim 9, further comprising the steps of:
receiving a read request from said host; and
allocating one or more unused extents in response to a cache miss of said read request.
19. The method according to claim 18, wherein said unused extents are allocated in a non-redundant organization.
20. The method according to claim 9, wherein said apparatus comprises a cache circuit.