This invention relates to holographic data storage, and, more particularly, to the storage of data as holograms at a plurality of locations of a holographic storage medium
Holographic storage comprises a high density data storage capability. Typically, data is recorded into a holographic medium by employing a data beam that is two-dimensional in nature and comprises a rectangular image of a large number of bits arranged in a raster pattern. The data beam and a reference beam are separately directed to the holographic medium and intersect and interfere to form an interference wave front that is recorded as a holographic image known as a hologram into the holographic medium. Additional holograms may be recorded along linear tracks and at various depths of the holographic medium to provide a high capacity data storage.
Holographic data storage systems, computer program products and methods are configured to determine the verification of data storage holograms.
In one embodiment, a holographic storage drive of a holographic storage system is configured to write and read holograms with respect to at least one holographic storage medium, the holograms at a plurality of locations of a holographic storage medium; and a control of the holographic data storage system is configured to operate the holographic storage drive to write a known image aggregated with data in the form of a hologram to the holographic storage medium; to operate the holographic storage drive to read back the written hologram, employing a partial matched filter to cross-correlate the read-back image with the ideal version of the known image, excluding the remainder of the written hologram; and to determine whether the cross-correlation at least meets a write/readback threshold.
In a further embodiment, the control is configured to, if the control determines the cross-correlation fails to meet the write/readback threshold, operate the holographic storage drive to write the aggregated known image and the data in the form of a hologram at another location of the at least one holographic storage medium.
In another embodiment, the control is additionally configured to operate the holographic storage drive to read a hologram having the aggregated known image and data from the holographic storage medium, employing a partial matched filter to cross-correlate the read image with the ideal version of the known image, excluding the remainder of the read hologram; and to determine whether the cross-correlation at least meets a read threshold.
In a further embodiment, the read threshold is less stringent than the write/readback threshold.
In a still further embodiment, the control is configured to, if the control determines the cross-correlation fails to meet the read threshold, operate the holographic storage drive to write the aggregated known image and the read data in the form of a hologram at another location of the at least one holographic storage medium.
In another embodiment, the holographic storage drive is configured to read back the written hologram by illuminating the written hologram with an object wave; and the control is configured to operate the holographic storage drive to provide the ideal version of the known image as the object wave and to cross-correlate the resultant wave image employing a partial matched filter matched to the impulse response of a reference wave for the known image.
In still another embodiment, the holographic storage drive is configured to read back the written hologram by illuminating the written hologram with a reference wave; and the control is configured to cross-correlate the resultant wave image employing a partial matched filter matched to the impulse response of an ideal version of the known image.
In another embodiment, the holographic storage drive is configured to read back the read hologram by illuminating the hologram with an object wave; and the control is configured to operate the holographic storage drive to provide the ideal version of the known image as the object wave and to cross-correlate the resultant wave image employing a partial matched filter matched to the impulse response of a reference wave for the known image.
In still another embodiment, wherein the holographic storage drive is configured to read back the read hologram by illuminating the hologram with a reference wave; and the control is configured to cross-correlate the resultant wave image employing a partial matched filter matched to the impulse response of an ideal version of the known image.
For a fuller understanding of the present invention, reference should be made to the following detailed description taken in conjunction with the accompanying drawings.
This invention is described in preferred embodiments in the following description with reference to the Figures, in which like numbers represent the same or similar elements. While this invention is described in terms of the best mode for achieving this invention's objectives, it will be appreciated by those skilled in the art that variations may be accomplished in view of these teachings without deviating from the spirit or scope of the invention.
Referring to
In holographic information storage, an entire segment of information 118 is stored at once as an optical interference pattern within a thick, photosensitive optical material, such as holographic storage media 119. This is done by intersecting two coherent laser beams within the material. One beam, called the reference beam 108, is designed to be simple to reproduce, for example, a collimated beam with a planar wavefront. The other beam, called the signal beam 110, is modulated so as to contain the information to be stored. The resulting optical interference pattern from the two coherent laser beams causes chemical and/or physical changes in the photosensitive optical material to provide a replica of the interference pattern. As examples, the replica of the interference pattern is stored as a change in the absorption, refractive index, or thickness of the photosensitive optical material. When the stored interference pattern, called a hologram, is illuminated with one of the two waves that were used during recording, some of the incident light is diffracted by the stored interference pattern in such a fashion that the information can be read by a detector 130. Illuminating the hologram 118 with the reference beam 108 reconstructs the stored information as beam 145, and illuminating the hologram 118 with the signal beam 110 reconstructs the reference beam as beam 140.
A large number of these holograms may be superimposed in the same media and can be accessed independently, as long as they are distinguishable by the direction or the spacing of the holograms. Such separation can be accomplished by changing the angle between the signal and reference beams or by changing the laser wavelength. Also, the holographic storage drive may reposition the holographic storage media 119. Any particular hologram can then be read out independently by illuminating the hologram with a beam that was used to store that hologram. Because of the thickness of the hologram, the beam is diffracted by the interference pattern in such a fashion that only the desired beam is significantly reconstructed and imaged on a detector 130. Examples of various holograms are illustrated in
Referring to
Referring to
The invention can take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment containing both hardware and software elements, which includes but is not limited to resident software, microcode, firmware, etc.
Furthermore, the invention can take the form of a computer program product accessible from a computer usable or computer readable medium providing program code for use by or in connection with a computer or any instruction execution system. For the purposes of this description, a computer usable or computer readable medium can be any apparatus that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
The medium can be an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system (or apparatus or device) or a propagation medium. Examples of a computer readable medium include a semiconductor or solid state memory, magnetic tape, a removable computer diskette, and random access memory (RAM), a read-only memory (ROM), a rigid magnetic disk and an optical disk. Current examples of optical disks include compact disk-read only memory (CD-ROM), compact disk-read/write (CD-R/W) and DVD.
A data processing system suitable for storing and/or executing program code will include at least one processor 152 coupled directly or indirectly to memory elements 153 through a system bus. The memory elements can include local memory employed during actual execution of the program code, bulk storage, and cache memories which provide temporary storage of at least some program code in order to reduce the number of times code must be retrieved from bulk storage during execution.
Input/output or I/O devices 154 (including but not limited to keyboards, displays, pointing devices, etc.) can be coupled to the system either directly or through intervening I/O controllers. Connections to the I/O may encompass connection links including intervening private or public networks. The communication links may comprise serial interconnections, such as RS-232 or RS-422, Ethernet connections, SCSI interconnections, iSCSI interconnections, ESCON interconnections, Fibre Channel interconnections, FICON interconnections, a Local Area Network (LAN), a private Wide Area Network (WAN), a public wide area network, Storage Area Network (SAN), Transmission Control Protocol/Internet Protocol (TCP/IP), the Internet, and combinations thereof.
Referring to
The control 150 operates the holographic storage drive 100 to read back the written hologram 118, employing a partial matched filter to cross-correlate the read-back image of the known image 120 with the ideal version of the known image 112, excluding the remainder 122 of the written hologram; and to determine whether the cross-correlation at least meets a write/readback threshold.
Referring to
The desired known image of the object wave 148 illuminates the hologram 118 and the incident light is diffracted by the stored interference pattern in such a fashion that an output beam 140 is produced that comprises information can be read by detector 130. The information read by the detector should resemble the original reference beam used to write the hologram. In an abstract sense, a hologram that is being read can be thought of as a little like an optical XOR operation, where the stored HOLOGRAM=REFERENCE WAVE <XOR> SIGNAL BEARING WAVE, and the read output beam 140 is SIGNAL BEARING WAVE <XOR> HOLOGRAM=REFERENCE WAVE.
Alternatively, in the example of
Referring to
The control 150 performs the following calculation between the respective image g(x,y) read from the hologram and the matched filter matched to the impulse response h(x,y)=s*(−x,−y) of the ideal case of that same image, as shown in eqn. (1). For example, for use of the known image for illumination of
Eqn[1] comprises a double integral, meaning that the integration is over the X axis and Y axis directions of the detector 130. The calculation is a partial matched filter in that the integration is only over the area of the known image, thereby excluding and effectively masking the remainder of the hologram. ξ is the integration variable along the X axis of detector 130, η is the integration variable along the Y axis of detector 130, and * denotes a complex conjugate.
V(x,y)=∫∫g(ξ,η)s*(ξ−x,η−y)]dξdη Eqn. [1]
Mathematically, V(x,y) is a surface varying along the X axis and the Y axis, for each (x,y). There is one value of V(x,y) for each detector element in detector 130. The range of V(x,y) for each (x,y) is between −1 and +1, where +1 represents the ideal correlation of one hundred percent (100%). To maximize V(x,y), the following difference surface, Difference(x,y), is defined in Eqn[2]. As shown, Difference(x,y) is calculated by subtracting the matched filter correlation V(x,y) from unity. Difference(x,y) may be evaluated (a) point-to-point, (b) as an arithmetic mean, (c) as a geometric mean, and (d) as a root-mean-square. Difference(x,y) ranges between 0 and +2, and the ideal difference for each value of (x,y) is 0, meaning for a value of 0 that there is no difference between the image 140 or 145 read from the holographic media 119 and the ideal holographic pattern at that point (x,y). Difference(x,y) may be evaluated point-by-point in read difference calculations, but the control 150 alternatively may quantify surface Difference(x,y) in terms of a single number, to simplify read difference calculations. Such single numbers may be MAX_Difference which is equal to the maximum value of Difference(x,y). Alternately AM_Difference, the arithmetic mean of the values of Difference(x,y), GM_Difference, the geometric mean of the values of Difference(x,y), or RMS_Difference, the root-mean-square of the values of Difference(x,y) may be used in the read difference calculations.
Difference(x,y)=1−V(x,y) Eqn. [2]
V(x,y) would have to exceed a threshold for the correlation to be acceptable. Alternately, Difference(x,y), MAX_Difference, AM_Difference, GM_Difference, or RMS_Difference, would have to be beneath a threshold for the correlation to be acceptable. It is the set of Difference(x,y), MAX_Difference, AM_Difference, GM_Difference, and RMS_Difference which give the most flexibility for implementation.
The correlation can never exceed a 100% correlation (a perfect condition). However, a correlation less than 100% means that imperfections exist.
In the example of
Thus, the terms “cross-correlation”, “partial matched filter” and “known image” refer to whatever means is used to make the correlation, whether the known image is used to generate a read output beam that resembles the reference wave and the correlation calculation is with respect to the impulse response of the reference wave, or whether a reference wave is used to generate a read output beam that resembles the known image and the correlation calculation is with respect to the impulse response of the known image.
A reflective spatial light modulator (RSLM) 175 may comprise an assembly of a plurality of micro mirrors. Alternatively, the RSLM comprises a liquid crystal on silicon (“LCOS”) display device in which the crystals are coated over the surface of a silicon chip. The electronic circuits that drive the formation of the image are etched into the chip, which is coated with a reflective (for example, aluminized) surface.
In a manner similar to the TSLM drive 100 of
The read and read-back process is also similar to the TSLM drive 100 of
Reference is made to the incorporated Ser. No. 11/737,670 Application for its showing of holographic data storage systems and matched filters.
The present invention is therefore applicable to the various holographic drives and light paths.
In summary, in one embodiment, the holographic storage drive is configured to read back the written hologram by illuminating the written hologram with an object wave; and the control is configured to operate the holographic storage drive to provide the ideal version of the known image as the object wave and to cross-correlate the resultant wave image employing a partial matched filter matched to the impulse response of a reference wave for the known image. In another embodiment, the holographic storage drive is configured to read back the written hologram by illuminating the written hologram with a reference wave; and the control is configured to cross-correlate the resultant wave image employing a partial matched filter matched to the impulse response of an ideal version of the known image.
Referring additionally to
In step 204, the determination is made by control 150 whether the next item of the workload is to write data to the holographic media. If so, the process flows to step 206, where the known image 120 and data 122 are written as an aggregated pair to the holographic media 119. In step 208, the control operates the holographic storage drive to read back the newly written hologram, using, in step 210, the partial matched filter to cross-correlate the read-back image with the ideal version of the known image, excluding the remainder of the written hologram, as discussed above.
In step 212, the average of V(x,y) is compared to a first write/readback correlation threshold X1. In effect, the level of imperfections is compared to threshold at which the level of imperfections is deemed to indicate a healthy hologram. If the average exceeds X1, the write is considered successful and the data storage hologram is verified, and the process flows back to step 204. Otherwise, the control determines that the cross-correlation fails to meet the write/readback threshold, and the process flows to step 214, where the control operates the holographic storage drive to write the aggregated known image and the data in the form of a hologram at another location of the at least one holographic storage medium, for example, as hologram 160.
If in step 204, there is no write workload, the process flows to step 216 for either the next read operation or a verification read of another hologram even if there is no read operation. In step 216, the control operates the holographic storage drive to read back the newly written hologram, using, in step 218, the partial matched filter to cross-correlate the read-back image with the ideal version of the known image, excluding the remainder of the written hologram, as discussed above.
In step 220, the average of V(x,y) is compared to a second read correlation threshold X2. In effect, the level of imperfections is compared to threshold at which the level of imperfections is deemed to indicate the hologram is still healthy, but the read threshold X2 is less stringent than the write/readback threshold X1. If the average exceeds X2, the read data is considered satisfactory and the process flows to step 222 to check for additional read workload or to conduct another check of a hologram. If there is none, the process ends at step 224. Otherwise, the control determines that the cross-correlation fails to meet the read threshold, and the process flows to step 214, where the control operates the holographic storage drive to relocate the aggregated known image and the data in the form of a hologram at another location of the at least one holographic storage medium, for example, as hologram 161.
Although the “average” values of V(x,y) are discussed above when comparing to the correlation thresholds X1 and X2, the worst-case value of V(x,y), the arithmetic mean of Difference (x,y), the geometric mean of Difference (x,y), or the root-mean-square of Difference (x,y) may alternatively be used.
Those of skill in the art will understand that changes may be made with respect to the methods discussed above, including changes to the ordering of the steps. Further, those of skill in the art will understand that differing specific component arrangements may be employed than those illustrated herein.
While the preferred embodiments of the present invention have been illustrated in detail, it should be apparent that modifications and adaptations to those embodiments may occur to one skilled in the art without departing from the scope of the present invention as set forth in the following claims.
Commonly assigned U.S. patent application Ser. No. 11/737,670 is incorporated for its showing of holographic data storage systems and matched filters.