1461145886-df48ce14-71e1-4447-82b1-bf54b6b577ae

1. A polishing pad assembly for use in a CMP process using a sensor assembly to detect the progress of the CMP process, said polishing pad assembly comprising:
a pad having a center;
a spool shaped void disposed in the pad, radially displaced from the center of the pad;
a sensor assembly disposed in a spool shaped plug, with said spool shaped plug disposed within the spool shaped void.
2. The polishing pad of claim 1 wherein the spool shaped plug comprises urethane.
3. The polishing pad of claim 1 wherein the spool shaped plug comprises an optically transparent urethane.
4. The polishing pad of claim 1 further comprising an electrical conductor disposed within the pad and running from the sensor assembly to the center of the pad.
5. A polishing pad assembly for use in a CMP process using a sensor assembly to detect the progress of the CMP process, said polishing pad assembly comprising:
a pad having a center;
a releasable mating structure disposed at the center of the pad, said releasable mating structure having a first set of electrical contacts disposed thereon;
a sensor assembly disposed within the pad, said sensor assembly radially spaced from the center of the pad; and
an electrical conductor connecting the sensor assembly to the releasable rotating mating structure;
a hub adapted to be releasably attached to the releasable mating structure, said hub having a second set of electrical contacts disposed thereon such that insertion of the hub into the releasable fitting results in electrical contact between the first set of electrical contacts and the second set of electrical contacts.
6. The polishing pad of claim 5 wherein the releasable mating structure further comprises:
a snap ring assembly disposed in the center of the polishing pad, said snap ring assembly having snap ring and a hub receiving aperture, said hub receiving aperture having a bottom;
a contact pad disposed on the bottom of the hub receiving aperture, wherein the first set of electrical contacts are disposed on the contact pad, and wherein said contacts face towards the hub receiving aperture; and
the electrical conductor electrically connects the sensor assembly to the plurality of electrical contacts on the bottom of the snap ring.
7. The polishing pad of claim 5 wherein the top surface of the releasable mating structure and the top surface of the pad are substantially co-planar and wherein the bottom surface of the snap ring and the bottom surface of the pad are substantially co-planar.
8. The polishing pad of claim 6 wherein the top surface of the snap ring and the top surface of the pad are substantially co-planar and wherein the bottom surface of the snap ring and the bottom surface of the pad are substantially co-planar.
9. The polishing pad of claim 5 where the removably attachable hub is an electronics hub holding electronics.
10. The polishing pad of claim 6 where the removably attachable hub is an electronics hub holding electronics.
11. The polishing pad of claim 5 wherein the first set of contacts comprises a signal contact, a power contact, and a ground contact, and the removably attached hub is an electronics hub holding electronics for processing a signal received from the signal contact, for transferring power to the power contact, and for connecting a common ground to the ground contact.
12. The polishing pad of claim 6 wherein the first set of contacts comprises a signal contact, a power contact, and a ground contact, and the removably attached hub is an electronics hub holding electronics for processing a signal received from the signal contact, for transferring power to the power contact, and for connecting a common ground to the ground contact.
13. The polishing pad of claim 5 where the electrical conductor comprises a power conducting line, a signal conducting line, and a ground conducting line.
14. The polishing pad of claim 5 where the optical aperture further comprises circular lips inserted laterally into the lower layer and the upper layer of the polishing pad, said aperture being suitable for receiving a liquid sealant which becomes transparent and solid when dry.
15. The polishing pad of claim 5 where the polishing pad has a cutout section extending from the snap ring assembly to the optical assembly, said cutout section being suitable for receiving a liquid sealant which becomes transparent and solid when dry.
16. The polishing pad of claim 15 where the optical sensing assembly, the electrically conducting ribbon, and the snap ring are sealed into the cutout section by the liquid sealant.
17. The polishing pad of claim 16 where the liquid sealant comprises liquid urethane.
18. A method of sealing an optical sensor assembly in an optical aperture cut through a polishing pad having an upper surface and a lower surface, comprising the steps of:
providing a polishing pad fashioned with an aperture cut through a pad, said aperture being suitable for receiving a liquid sealant which becomes transparent and solid when dry;
inserting the optical sensor assembly into the optical aperture, said optical sensor assembly being sized relative to the aperture so that a void space remains between the optical sensor assembly and the pad;
pressing an upper mold plate against the upper surface of the polishing pad and a lower plate against the lower surface of the polishing pad;
injecting the liquid sealant into the aperture until the liquid sealant fills the void space;
allowing the liquid sealant to dry; and,
removing the upper mold plate and the lower mold plate.
19. The method of claim 18 where the liquid sealant comprises liquiad urethane.
20. The method of claim 18 wherein the liquid sealant comprises an optically transparent urethane.

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. A storage system, comprising:
N storage elements, organized as (N\u22122) storage elements for storing data, a storage element for storing a P parity, and a storage element for storing a Q parity, said N storage elements storing at least one block comprising a group of M symbols from each of said N storage elements, N being an integer greater than 3 and M being an integer greater than 1;
a storage controller for controlling a data transfer between said N storage elements and at least one host, said storage controller comprising:
a host interface for coupling said storage controller to at least one host;
a storage element interface for coupling said storage controller to said N storage elements;
a buffer memory for temporarily storing a block of symbols associated with symbols from said data transfer, said block of symbols comprising M sets of N symbols, each of said M sets including at least one data symbol, a P parity symbol, and a Q parity symbol; and
a parity system, for maintaining said P parity symbols, said Q parity symbols, and for regenerating missing symbols in said block of symbols from up to two failed storage elements of said N storage elements;

wherein
said parity system calculates each P parity symbol in said block using a first relationship including said P parity symbol and (N\u22122) data symbols from each one of (N\u22122) storage elements which stores data, such that each data symbol in said block is associated with only one P parity symbol, and no two first relationship in said block shares a common symbol; and
said parity system calculates each Q parity symbol in said block using a second relationship including said Q parity symbol, one of said P parity symbol, and (N\u22123) data symbols from all but one of said (N\u22122) storage elements which store data, such that no two second relationships in said block miss a same data symbol and no two second relationships in said block share a common symbol.
2. The storage system of claim 1, wherein said parity system comprises:
a table for storing K scripts;
wherein
K is equal to a total number of possible single and double storage element failure in said storage system,
each script provides parameters for said parity system to reconstruct any missing symbols, and
each script is associated with a different one of said K potential single or double storage element failure.
3. The storage system of claim 1, wherein said storage controller further comprises a mapping engine for mapping between host asserted addresses to storage element addresses.
4. The storage system of claim 1, wherein said storage controller further comprises a cache memory.
5. The storage system of claim 1, wherein N is equal to 10.
6. The storage system of claim 1, wherein N is equal to 16.
7. The storage system of claim 1, wherein M is equal to 16.
8. The storage system of claim 1, wherein each of said storage elements is a disk.
9. The storage system of claim 8, wherein said each of said storage elements is a serial advanced attachment (SATA) disk.
10. The storage system of claim 1, wherein said host interface is a fibre channel interface.
11. A method for operating a storage system having N storage elements organized as (N\u22122) data storage elements, a P parity storage element for storing P parity, and a Q parity storage elements for storing Q parity, the storage system being organized into at least one block, each block having M symbols from each of said N storage elements, the method comprising:
creating a set of P parity relationships for respectively calculating a set of P parity in a block, each P parity relationship including one P parity symbol in said block, and one data symbol in said block from each of said (N\u22122) data storage elements, such that no data symbol in said block is associated with more than one P parity relationship and none of the P parity relationships in said block any common symbol;
creating a set of Q parity relationships for respectively calculating a set of Q parity in said block, each Q parity relationship including one Q parity symbol in said block, one P parity symbol in said block, and (N\u22123) data symbols from all but one of said (N\u22122) data storage elements, such that none of the Q relationships in said block miss a common data symbol and none of the Q parity relationships in said block share any common symbols; and
storing said set of P parity relationships and said set of Q parity relationships.
12. The method of claim 11, wherein said step of storing comprises:
generating a set of scripts from said set of P parity relationships and said set of Q parity relationships; and
storing said set of scripts;
wherein each script in said set of scripts is associated with a different one of a potential single or potential double storage element failure of said storage system.
13. The method of claim 12, wherein said set of scripts comprise a plurality of scripts respectively associated with every possible potential single or potential double storage element failure of said storage system.
14. The method of claim 11, wherein said step of creating a set of Q parity relationship comprises:
deriving a candidate Q parity relationship by selecting one unused P parity symbol and (N\u22123) data symbols respectively from all but one of said (N\u22122) storage elements which store data symbols;
evaluating whether adding said candidate Q parity relationship to said set of Q parity relationship would permit reconstructing all missing symbols arising from every combination of single and double failures in said N data storage elements to be resolved;
if said step of evaluation determines that all missing symbols can be reconstructed, adding said candidate Q parity relationship to said set of Q parity relationships;
if said step of evaluation determines that all missing symbols cannot be reconstructed,
repeatedly, until there are no longer any surviving relationships:
identifying all intact, surviving, and non-surviving relationships for one group of missing symbols; and
if said step of identifying yields at least one surviving relationship, resolving an unresolved symbol associated with one of said at least one surviving relationship;

determining whether all relationships are intact;
if all relationships are intact, continuing at said step of evaluating; and
if not all relationships are intact, continuing at said step of deriving a Q parity relationship.
15. The method of claim 11, further comprising:
receiving a write request, said write request including a host address and a write data;
mapping said host address to a storage element address;
identifying a P parity relationship and a Q parity relationship corresponding to said, write data;
determining whether all symbols require to compute an updated P parity symbol and a Q parity symbol are available in said block;
if said step of determination determines that all symbols are not available, reading all missing symbols from said storage elements;
calculating an updated P parity symbol and an updated Q parity symbol based on the identified P parity relationship and Q parity relationship; and
writing said write data as at least one write symbols, said updated P parity symbol, and Q parity symbol to said N storage elements.
16. The method of claim 15, further comprising storing said write data in a cache memory.
17. The method of claim 15, further comprising signaling completion of said write request.
18. The method of claim 11, further comprising:
receiving a read request, said read request including a host address;
mapping said host address to a storage element address;
reading, from said N storage elements, at said storage element address;
identifying a P parity relationship and a Q parity relationship corresponding to said read request;
regenerating any missing data symbols associated with said read request based on the identified P parity relationship and Q parity relationship; and
transmitting data symbols associated with said read request.
19. The method of claim 18, further comprising caching at least some of said data symbols associated with said read request.
20. The method of claim 18, further comprising caching regenerated data symbols associated with said read request.