The invention is directed to non-volatile memories. More specifically, the invention is directed to mask programming of non-volatile memory cells.
Over the past 30 years, anti-fuse technology has attracted significant attention of many inventors, IC designers and manufacturers. An anti-fuse is a structure alterable to a conductive state, or in other words, an electronic device that changes state from not conducting to conducting. Equivalently, the binary states can be either one of high resistance and low resistance in response to electric stress, such as a programming voltage or current. There have been many attempts to develop and apply anti-fuses in microelectronic industry, but the most successful anti-fuse applications to date can be seen in FGPA devices manufactured by Actel and Quicklogic, and redundancy or option programming used in DRAM devices by Micron. Anti-fuse technology is well known in the art, and example anti-fuse transistors are shown in
Anti-fuse memory is one type of one-time programmable (OTP) memory in which the device can be permanently programmed (electrically) with data once. This data is programmed by an end user for a particular application. There are several types of OTP memory cells which can be used. OTP memories provide users with a level flexibility since any data can be programmed.
Anti-fuse memory can be utilized in all one time programmable applications, including RF-ID tags. RF-ID tagging applications are gaining more acceptance in the industry, particularly in sales, security, transport, logistics, and military applications for example. The simplicity and full CMOS compatibility anti-fuse memory allows for application of the RF-ID tag concept to integrated circuit manufacturing and testing processes. Therefore, IC manufacturing productivity can be increased by utilizing anti-fuse memory in combination with an RF communication interface on every wafer and/or every die on the wafer allowing for contact-less programming and reading chip specific or wafer specific information during IC manufacturing and packaging, as well as during printed circuit board assembly.
It can be seen from
a shows a cross-sectional view of an anti-fuse transistor that can be manufactured with any standard CMOS process. Variants of this anti-fuse transistor are disclosed in commonly owned U.S. patent application Ser. No. 10/553,873 filed on Oct. 21, 2005, and commonly owned U.S. patent application Ser. No. 11/762,552 filed on Jun. 13, 2007, the contents of which are incorporated by reference. In the presently shown example, the anti-fuse transistor is almost identical to a simple thick gate oxide, or input/output MOS transistor with one floating diffusion terminal. The disclosed anti-fuse transistor, also termed a split-channel capacitor or a half-transistor, can be reliably programmed such that the fuse link between the polysilicon gate and the substrate can be predictably localized to a particular region of the device. The cross-section view of
Anti-fuse transistor 30 includes a variable thickness gate oxide 32 formed on the substrate channel region 34, a polysilicon gate 36, sidewall spacers 38, a field oxide region 40 a diffusion region 42, and an LDD region 44 in the diffusion region 42. A bitline contact 46 is shown to be in electrical contact with diffusion region 42. The variable thickness gate oxide 32 consists of a thick oxide and a thin gate oxide such that a portion of the channel length is covered by the thick gate oxide and the remaining portion of the channel length is covered by the thin gate oxide. Generally, the thin gate oxide is a region where oxide breakdown can occur. The thick gate oxide edge meeting diffusion region 42 on the other hand, defines an access edge where gate oxide breakdown is prevented and current between the gate 36 and diffusion region 42 is to flow for a programmed anti-fuse transistor. While the distance that the thick oxide portion extends into the channel region depends on the mask grade, the thick oxide portion is preferably formed to be at least as long as the minimum length of a high voltage transistor formed on the same chip.
In this example, the diffusion region 42 is connected to a bitline through a bitline contact 46, or other line for sensing a current from the polysilicon gate 36, and can be doped to accommodate programming voltages or currents. This diffusion region 42 is formed proximate to the thick oxide portion of the variable thickness gate oxide 32. To further protect the edge of anti-fuse transistor 30 from high voltage damage, or current leakage, a resistor protection oxide (RPO), also known as a salicide protect oxide, can be introduced during the fabrication process to further space metal particles from the edge of sidewall spacer 38. This RPO is preferably used during the salicidiation process for preventing only a portion of diffusion region 42 and a portion of polysilicon gate 36 from being salicided. It is well known that salicided transistors are known to have higher leakage and therefore lower breakdown voltage. Thus having a non-salicided diffusion region 42 will reduce leakage. Diffusion region 42 can be doped for low voltage transistors or high voltage transistors or a combination of the two resulting in same or different diffusion profiles.
A simplified plan view of the anti-fuse transistor 30 is shown in
b shows a planar view of a two-transistor anti-fuse memory cell 60 having a minimized thin gate oxide area that can be manufactured with any standard CMOS process, according to an embodiment of the present invention.
The programming speed of OTP memories is relatively slow, since each programming cycle will attempt to program a certain number of data words at the same time. Following each programming cycle is a program verify cycle to ensure that the data words were successfully programmed. Any bits that do not pass the program verify step are reprogrammed. This process continues until all the memory cell states have been successfully programmed.
There are applications where the same data is to be programmed in every OTP memory. Boot block data for example, can be the same in every chip in the batch, while the actual user data can be different. The boot block can be programmed by the end user, or by the vendor. In either case, a significant number of program cycles will be required for programming this boot block data to all the OTP memory devices in the batch. There may be other applications where a portion of every OTP memory device will store the same data. In some cases, this data is not intended to be accessible or known by the end user, thereby requiring programming before delivery to the end user for integration into their systems. However, this pre-programming will add time overhead, which is undesired.
Mask ROM memory is a class of non-volatile memory which is programmed with data during the chip manufacturing stage. In a chip manufacturing stage, masks are used to define which memory cells in the memory array are to be permanently turned off. Since programming is performed during chip manufacturing, the effective “programming” speed is extremely high. This technique is cost effective with economies of scale, due to the capital cost of the mask sets that are required. For example, known video gaming console game cartridges used Mask ROM chips to store game data, and the fast manufacturing of the chips allowed for large quantities of game cartridges to be sold worldwide with minimal time.
Unfortunately, Mask ROM is programmable only at the manufacturing stage, and does not give end users the ability to program their own data to the memory device. U.S. Pat. No. 7,102,926 discloses a memory device whereby a Mask ROM memory array is paired with an electrically erasable programmable read only memory (EEPROM). However, there is additional complexity and cost associated with such a device because the manufacturing process for Mask ROM differs substantially from that of an EEPROM. Furthermore, the additional cost for an EEPROM device is not economical for applications in which data is only programmed to the memory once.
It is, therefore, desirable to provide a low cost OTP memory device which is mask programmable while having user programmability.
It is an object of the present invention to obviate or mitigate at least one disadvantage of prior OTP memories. More specifically, it is an object of the present invention provide an anti-fuse memory that is both mask programmable and electrically programmable.
In an aspect, the present invention provides a program lock circuit for a memory having programmable memory cells arranged in rows and columns configured for receiving a programming voltage. The program lock circuit includes a mask programmable inhibit circuit and an enable circuit. The mask programmable inhibit circuit is coupled to a wordline corresponding to a row of programmable memory cells. The enable circuit couples the mask programmable inhibit circuit to a voltage supply in a programming operation, such that the mask programmable inhibit circuit disables the programming voltage in response to the programming voltage of the wordline when the mask programmable inhibit circuit is programmed to lock the row of programmable memory cells. In an embodiment of the present aspect, the enable circuit includes a transistor for electrically coupling a common node to the voltage supply in the programming operation, and the mask programmable inhibit circuit includes a mask programmable transistor having a gate terminal coupled to the wordline, a drain terminal coupled to the programming voltage and a source terminal coupled to the common node. The mask programmable transistor includes either a channel region between the drain terminal and the source terminal for locking the row of programmable memory cells, or an absence of the channel region. Further included is a master mask programmable transistor configured as a diode-connected mask programmable transistor for coupling the programming voltage to the voltage supply when mask programmed for locking the row of programmable memory cells.
In another embodiment of the present aspect, the mask programmable inhibit circuit includes a mask programmable transistor having a gate terminal coupled to an enable signal, a drain terminal coupled to the wordline and a source terminal coupled to the voltage supply. The mask programmable transistor includes either an optional diffusion area between a channel region and the drain terminal for locking the row of programmable memory cells, or an absence of the optional diffusion area. In yet another embodiment of the present aspect, the program lock circuit includes a high voltage switch circuit and a logic circuit. The high voltage switch circuit provides one of the programming voltage and a read voltage in response to a control signal. The logic circuit has a first input for receiving the selection signal and a second input coupled to an override signal line. The logic circuit provides the control signal having a logic state corresponding to the selection signal when the override signal line is at an inactive logic level. The high voltage switch circuit is switched to provide the read voltage when the override signal line is at an active logic level. The mask programmable inhibit circuit includes an activating transistor and a mask programmable inverter. The activating transistor electrically couples the override signal line to another voltage supply corresponding to the active logic level. The mask programmable inverter is coupled to the wordline for driving a gate terminal of the activating transistor. According to an aspect of the present embodiment, the mask programmable inverter includes an n-channel transistor having a channel region for locking the row of programmable memory cells. Furthermore, there can be included a master mask programmable inhibit circuit. The master mask programmable inhibit circuit includes a master activating transistor and a master mask programmable inverter.
Other aspects and features of the present invention will become apparent to those ordinarily skilled in the art upon review of the following description of specific embodiments of the invention in conjunction with the accompanying figures.
Embodiments of the present invention will now be described, by way of example only, with reference to the attached Figures, wherein:
a is a cross-sectional view of a variable thickness gate oxide anti-fuse transistor;
b is a planar layout of the variable thickness gate oxide anti-fuse transistor of
a is a cross-sectional view of a two-transistor anti-fuse memory cell;
b is a planar layout of the two-transistor anti-fuse memory cell of
a is a plan view layout showing a hybrid memory array having two-transistor one-time programmable memory cells and two-transistor mask programmed memory cells, according to an embodiment of the present invention;
b is a plan view layout showing a hybrid memory array having two-transistor one-time programmable memory cells and two-transistor mask programmed memory cells, according to an alternate embodiment of the present invention;
c is a plan view layout showing a hybrid memory array having alternate two transistor one-time programmable memory cells and two-transistor mask programmed memory cells, according to the alternative mask programming technique of
d is a plan view layout showing a hybrid memory array having alternate two transistor one-time programmable memory cells and two-transistor mask programmed memory cells, according to the alternative mask programming technique of
a is the plan view layout showing a hybrid memory array illustrating an alternate mask programming technique;
b is the plan view layout showing a hybrid memory array illustrating the alternative mask programming technique of
a is a plan view layout showing a hybrid memory array having single transistor one-time programmable memory cells and single transistor mask programmed memory cells, according to an embodiment of the present invention;
b is a plan view layout showing an alternate hybrid memory array, according to an embodiment of the present invention;
a is a plan view layout of single transistor mask programmed memory cells programmed using an alternative mask programming technique;
b is a plan view layout of two transistor mask programmed memory cells programmed using the alternative mask programming technique of
a is an example embodiment of a mask programmable transistor shown in
b is an example embodiment of an alternate mask programmable transistor;
a is a plan view layout of a hybrid memory array with a status array column, according to an embodiment of the present invention;
b is a plan view layout of a hybrid memory array with a status array column, according to an alternate embodiment of the present invention.
Generally, the present invention provides a memory array having both mask programmable and one-time programmable memory cells connected to the wordlines and the bitlines. All memory cells of the memory array are configured as one-time programmable memory cells. Any number of these one-time programmable memory cells are convertible into mask programmable memory cells through mask programming, such as diffusion mask programming or contact/via mask programming. Manufacturing of such a hybrid memory array is simplified because both types of memory cells are constructed of the same materials, therefore only one common set of manufacturing process steps is required. Inadvertent user programming of the mask programmable memory cells is inhibited by a programming lock circuit. Each row of data can be tagged as invalid by the user, while mask programmed data is protected from user invalidation.
Therefore, the same code can be mask programmed to a large number of memory devices during the manufacturing process simply by making the appropriate mask modifications to the masks used for manufacturing the one-time programmable memory device. More specifically, the masks will be modified to effect mask programming of specific memory cells of the memory array. After manufacturing, the memory devices can then be immediately shipped to users for programming their own data. The overhead for mask programming is minimal prior to device fabrication, and far less than the accumulated time required for post-manufacturing electrical programming of each memory device. Furthermore, the mask programmed lock circuit provides security against post-manufacturing programming of the mask programmed memory cells.
The wordline driver circuit block 104 includes individual wordline drivers for applying read and program voltages to the wordlines. In the present embodiment, the read and program voltages are provided by the high voltage switch circuit 112 in response to a control signal indicating that a read or program operation is to be executed. The high voltage switch circuit 112 can either generate the read and program voltages, or couple received read and program voltages to the wordline driver circuit block 104. Specific wordlines are selected for a read or program operation in response to an inputted row address. The column decoder circuit block 106 couples any preset number of bitlines to respective bitline sense amplifier circuits in sense amplifier circuit block 108, in response to an inputted column address. The column decoder circuit block 106 can couple the appropriate bias voltage levels to the bitlines for either promoting or inhibiting programming of a one-time programmable memory cell. Persons skilled in the art will understand that there are many possible architectures and circuit implementations for column decoder circuit block 106 and sense amplifier circuit block 108.
Because a row of mask programmed memory cells are essentially one-time programmable memory cells, they can be programmed if the bitlines are appropriately biased and the wordline is driven to the program voltage level. Therefore, according to another embodiment of the present invention, the program lock circuit block 110 is provided as a means for inhibiting programming of any row of memory cells, thereby protecting mask programmed data stored in that row. This inhibiting is achieved by disrupting the programming voltage from reaching the memory cells. Further details of the program lock circuit block 110 will follow later.
a is a plan view layout of a portion of the memory array 102 of
The mask programmed cells of row 122 are programmed by connecting the source diffusion to a high voltage level such as VDD to create the source-drain path for VDD, via the channel region underneath the thin gate oxide of the memory cell, such as thin gate oxide 76 shown in
In the embodiment of
c shows an alternate embodiment of the hybrid memory array shown in
d shows an alternate embodiment of the hybrid memory array shown in
a shows the plan view layout of
a is a plan view layout of a portion of the memory array 102 of
The mask programmed cells of rows 152 are programmed by connecting the source diffusion to a high voltage level such as VDD to create the source-drain path for VDD, via the channel region underneath the variable thickness gate oxide of the memory cell, such as variable thickness gate oxide 32 shown in
b is an alternate plan view layout of the hybrid memory array of
a shows the plan view layout of two rows 170 of single transistor mask programmed memory cells programmed using an alternative mask programming technique. Each single transistor mask programmed memory cell of rows 170 is similar to the anti-fuse memory cell shown in
b shows the plan view layout of two rows 170 of the hybrid memory array of
As shown by the previous embodiments, one-time programmable anti-fuse memory cells and mask programmed one-time programmable anti-fuse memory cells can co-exist within the same memory array and be accessed with the same read operation. Furthermore, the one-time programmable anti-fuse memory cells can then be programmed with data by the end user. Depending on the application, the mask programmed data should not be modified either intentionally or accidentally. Since the mask programmed cells in the previously discussed embodiments are still one-time programmable anti-fuse memory cells, they can be programmed when the wordline is driven to the programming voltage and the bitlines are biased to a voltage level effective for programming the anti-fuse memory cell.
Therefore, a program lockout feature is provided for inhibiting programming of any row of memory cells, which can include mask programmed anti-fuse memory cells or one-time programmable anti-fuse memory cells. The hybrid one-time programmable and mask programmed memory shown in
Referring to
Wordline voltage VWL is controlled by high voltage switch circuit 212 that receives both the regular positive voltage supply VDD and a programming voltage VPP. High voltage switch circuit 212 will drive VWL with VDD in response to a first state of selection signal SEL and will drive VWL with VPP in response to a second state of selection signal SEL. The first state can be set when a read operation is being executed, while the second state can be set when a programming operation is being executed. It is during the programming operations that the program lock circuit block 210 will be automatically enabled. The program lock circuit block 210 includes mask programmable inhibit circuits for disabling the programming voltage, which in the present embodiment, includes mask programmable transistors 216 and 218 connected in parallel to the VWL line via a voltage drop circuit 220 consisting of a series of diodes. An optional diode configured mask programmable master lock transistor 222 is included in the present embodiment. The gate terminal of each mask programmable transistor 216 and 218 is coupled to a respective wordline, as shown in
The mask programmable transistors 216, 218 and 222 will either have a channel region formed between its drain and source terminals or an absence of a channel region. Any wordline coupled to a mask programmable transistor formed with a channel, such as mask programmable transistor 218, is considered to be a row of memory cells locked from being programmed. Any wordline coupled to a mask programmable transistor formed without a channel, such as mask programmable transistor 216, is considered to be a row of memory cells that are programmable. The mechanism through which programming of a row of memory cells is inhibited will now be described.
It is presumed that the desired rows are locked from being programmed during fabrication by mask programming the mask programmable transistors of the program lock circuit block 210. During normal use of the memory 200, and in particular during a program operation, SEL will control high voltage switch circuit 212 to drive VWL to the VPP voltage level. The selected row is activated by having a wordline driver circuit 214 drive its respective wordline with VWL at the VPP level in response to an active decoded row address signal. During a programming operation signal PGM is driven to the high logic level to connect the source terminals of mask programmable transistors 216, 218 and 222 to VSS. Any VPP driven wordline coupled to a mask programmable transistor having a channel region, such as mask programmable transistor 218, will turn it on to couple VWL to VSS through the voltage drop circuit. The voltage level of VWL will then be reduced to a voltage level insufficient for programming any of the anti-fuse memory cells in the memory array 202. On the other hand, if the VPP driven wordline is coupled to a mask programmable transistor having no channel region, such as mask programmable transistor 216, no conduction path to VSS is formed. Therefore, the anti-fuse memory cells connected to the VPP driven wordline can be programmed as VWL remains at the VPP level. The program lock circuit block 210 uses a feedback mechanism for automatically locking a row from being programmed by adjusting VWL from a programming voltage level to a non-programming voltage level during programming. No logic is required in the present embodiment of the program lock circuit block 210.
During a read operation, PGM will be at the low logic level to disable program lock circuit block 210, and therefore has no effect during read operations. As previously mentioned, an optional mask programmable master lock transistor 222 is provided for locking all rows of memory array 202 from being programmed. If programmed to include a channel region, transistor 222 will automatically discharge VWL towards VSS as soon as VWL is driven to VPP in a programming operation. This feature allows for simplified locking of all rows by mask programming a single transistor, instead of mask programming all the mask programmable transistors coupled to each wordline.
As previously mentioned, the mask programmable transistors used in program lock circuit block 210 can be mask programmed to include or omit a channel region.
b is an example embodiment of an alternate mask programmable transistor. Mask programmable transistor 240 has a drain region 242 coupled to WLn, a source region 244, a polysilicon gate 246 coupled to program signal PGM and overlying a channel region (not shown), and optional diffusion area 248. In the present embodiment, the source region 244 is electrically connected to VSS, such that when PGM is driven to the high logic level during a programming operation, WLn is coupled to VSS if the optional diffusion area 248 is included during mask programming. On the other hand, if the optional diffusion area 248 is omitted during fabrication, then WLn can never be coupled to VSS through mask programmable transistor 240. The optional diffusion area 248 can be included or omitted from the source region 244 instead of from the drain region 242. In another alternate mask programming technique, an optional contact or via connection can be formed between the wordline and drain region 242 in order to lock the corresponding row of cells from being programmed. The presences of an optional contact or via will have the same effect as including the optional diffusion area 248.
The previously discussed mask programming technique of including or omitting an optional diffusion area can be applied to the mask programmable transistor 218, while the optional channel region mask programming technique can be applied to the mask programmable transistor 240.
The program lock circuit of
The master lock circuit 308 includes a mask programmable inverter 318 having its input connected to VDD and its output coupled to the gate of another pull up transistor 320, which is configured identically to p-channel pull up transistors 316 with respect to override signal line SEL_OV. The function of master lock circuit 308 is the same as mask programmable master lock transistor 222 of
The operation of program lock circuit 302 is as follows. In the present embodiment, is assumed that the output of override logic 312 at the high logic level will cause VDD to be coupled to VWL, while a low logic level output will cause VPP to be coupled to VWL. SEL is set to the low logic level to couple VDD to VWL during a read operation and then to the high logic level to couple VPP to VWL during a programming operation. PGM is set to the low logic level during a read operation, and set to the high logic level during a programming operation. Therefore, during a read operation, the output of override logic 312 will be at the high logic level. During a program operation, PGM is driven to the high logic level to turn on n-channel transistor 324, thereby setting SEL_OV to the low logic level as it is now coupled to VSS. This enables override logic 312 to respond to SEL, which is then set to the high logic level. Accordingly, the output of override logic 312 will change to the low logic level. VWL is driven to VPP and a selected wordline is driven to VPP via its wordline driver circuit 214. If the mask programmable inverter 314 coupled to the driven wordline is mask programmed to operate as a normal inverter for locking the corresponding row, then it will turn on its corresponding pull up transistor 316. Now SEL_OV will be driven to the high logic level, thereby forcing the output of override logic 312 to rise to the high logic level.
In response to the high logic level output of override logic 312, the high voltage switch circuit couples VWL to VDD, which is sufficiently low to inhibit programming of the anti-fuse memory cells of the row. It is noted that the long channel transistor 324, or presence of an in-line resistance means, is selected to have a resistance value effective for allowing pull up transistors 316 to drive SEL_OV to VDD while transistor 324 is turned on. Those skilled in the art will understand that there are different possible logic configurations of override logic 312 which can be used in place of the illustrated NAND gate.
In an alternate embodiment, the mask programmable inverters 314 and 318 are replaced with normal inverters, and the pull up transistors 316 become mask programmable transistors, where either optional diffusion areas or optional channel regions such as those shown in
The program lock circuit embodiments shown in
a is a plan view layout showing a portion of memory array 202 and status array 402. Hybrid memory array 500 includes one-transistor anti-fuse memory cells coupled to wordlines WLi and WLi+1 corresponding to rows 508, and mask programmable one-transistor anti-fuse memory cells coupled to wordlines WLi+2 and WLi+3 corresponding to rows 506. The dashed outlines 510 defines the areas in which the thick gate oxide is to be formed via an OD2 mask during the fabrication process, and is analogous to dashed outline 50 shown in
In the present example, since the status memory cells coupled to WLi and WLi+1 do not have a channel region under the polysilicon wordline, they are un-programmable. However, should a programming voltage be applied to wordlines WLi+2 or WLi+3, then the corresponding electrically programmable status memory cell will be programmed to store an invalid status bit. It is assumed that the bitline connected to all the status memory cells is grounded, or set to a voltage level effective for programming the anti-fuse memory cell in the presence of a programming voltage on the wordline. Therefore, in a subsequent read operation of WLi+2 or WLi+3, the invalid status bit is read out with the mask programmed data to indicate the invalid state of the data. Because the anti-fuse memory cells of memory array 502 coupled to WLi and WLi+1 are intended to be electrically programmable, their corresponding status memory cells of status array 504 are mask programmed to always provide a valid status bit.
Accordingly, the hybrid memory array embodiment of
b is an alternate plan view layout of the hybrid memory array 500 shown in
While the embodiments shown in
The previously shown and described hybrid memory array embodiments combines both mask ROM programmability for storing preset data and OTP programmability for storing user data. The hybrid memory array is simple and reliable high density, anti-fuse array architecture suitable for implementation in standard CMOS technology, without any additional processing steps and with limited over-voltage exposure of switching elements.
In the preceding description, for purposes of explanation, numerous details are set forth in order to provide a thorough understanding of the embodiments of the invention. However, it will be apparent to one skilled in the art that these specific details are not required in order to practice the invention. In other instances, well-known electrical structures and circuits are shown in block diagram form in order not to obscure the invention. For example, specific details are not provided as to whether the embodiments of the invention described herein are implemented as a software routine, hardware circuit, firmware, or a combination thereof.
Embodiments of the invention can be represented as a software product stored in a machine-readable medium (also referred to as a computer-readable medium, a processor-readable medium, or a computer usable medium having a computer-readable program code embodied therein). The machine-readable medium can be any suitable tangible medium, including magnetic, optical, or electrical storage medium including a diskette, compact disk read only memory (CD-ROM), memory device (volatile or non-volatile), or similar storage mechanism. The machine-readable medium can contain various sets of instructions, code sequences, configuration information, or other data, which, when executed, cause a processor to perform steps in a method according to an embodiment of the invention. Those of ordinary skill in the art will appreciate that other instructions and operations necessary to implement the described invention can also be stored on the machine-readable medium. Software running from the machine-readable medium can interface with circuitry to perform the described tasks.
The above-described embodiments of the invention are intended to be examples only. Alterations, modifications and variations can be effected to the particular embodiments by those of skill in the art without departing from the scope of the invention, which is defined solely by the claims appended hereto.
This application claims the benefit of priority of U.S. Provisional Patent Application No. 60/871,519 filed Dec. 22, 2006, which is incorporated herein by reference in its entirety.
| Filing Document | Filing Date | Country | Kind | 371c Date |
|---|---|---|---|---|
| PCT/CA2007/002286 | 12/20/2007 | WO | 00 | 12/23/2008 |
| Publishing Document | Publishing Date | Country | Kind |
|---|---|---|---|
| WO2008/077239 | 7/3/2008 | WO | A |
| Number | Name | Date | Kind |
|---|---|---|---|
| 5495436 | Callahan | Feb 1996 | A |
| 5870327 | Gitlin et al. | Feb 1999 | A |
| 6590797 | Nachumovsky et al. | Jul 2003 | B1 |
| 7102926 | Lee et al. | Sep 2006 | B2 |
| 20030161184 | Lee et al. | Aug 2003 | A1 |
| 20040153725 | Derner et al. | Aug 2004 | A1 |
| 20060244099 | Kurjanowicz | Nov 2006 | A1 |
| 20070205485 | Hsu et al. | Sep 2007 | A1 |
| 20070257331 | Kurjanowicz et al. | Nov 2007 | A1 |
| 20090262566 | Kurjanowicz | Oct 2009 | A1 |
| Number | Date | Country |
|---|---|---|
| 102004056459 | Jun 2006 | DE |
| 0419202 | Mar 1991 | EP |
| Number | Date | Country | |
|---|---|---|---|
| 20090180307 A1 | Jul 2009 | US |
| Number | Date | Country | |
|---|---|---|---|
| 60871519 | Dec 2006 | US |