Automatic programming time selection for one time programmable memory

inventors: Turner, Tony M. (Foothill, CA, US)

What claimed is:




1. A method programming memory comprising: (a) attempting program bit designated address for predetermined time; (b) testing bit see if it been programmed; (c) increasing predetermined time by approximately order magnitude; (d) repeating steps (a)鈥(c) until bit designated address programmed; (e) repeating steps (a)鈥(d) by advancing designated address until all bits memory are programmed.


2. The method claim 1, further including step testing selected bits memory, defining initial predetermined time based testing.


3. A method programming memory comprising: (a) attempting program bit for predetermined program time; (b) testing bit see if bit been programmed; (c) repeating steps (a)鈥(b) with program time that increased by order magnitude until bit programmed; (d) repeating steps (a)鈥(c) by advancing next address until all bits are programmed.


4. The method claim 3, further including step testing selected bits memory, defining initial predetermined time based testing.

BACKGROUND OF THE INVENTION

1. Field Invention

The present invention relates one-time programmable (OTP) memories, more particularly, more efficient system method for programming memories faster.

2. Related Art

The OTP memory gate oxide barrier that broken down by applying voltage one side gate. When barrier broken down, resistance power rail (or ground rail) becomes lower value forever stored OTP bit. The value either 1 or 0.

The time required break down barrier program bit variable depending fabrication process silicon. Some memories require longer programming time program bit if wafer process skewed one comer fabrication process. Other memories program shorter periods time.

Thus, particular problem that exists non-uniformity programming time for one-time programmable memories. For example, wafer or particular programmable memory might 99% its bits that may programmed fairly short time, for example, 10 渭sec. However, handful bits are such that they require much longer programming, sometimes long 1 sec. For 1K-bit programmable memory, using lowest common denominator, or this case, longest possible time required program any bit time program all bits, means that for 1K-bit memory, 1000 seconds would required program it. This means that throughput programming device used program memories extremely low, causing increase cost manufacturing memories.

Tester time costly, so method needed determine minimum amount programming time use tester.

BRIEF SUMMARY OF THE INVENTION

Accordingly, present invention directed automatic programming time selection for one time programmable memory that substantially obviates, one or more disadvantages related art.

There provided method programming memory including steps attempting program bit designated address for predetermined time; testing bit see if it been programmed; increasing predetermined time by approximately order magnitude; repeating previous steps (until bit designated address programmed; repeating all previous steps by advancing designated address until all bits memory are programmed.

Additional features advantages invention set forth description which follows, part apparent description, or may learned by practice invention. The advantages invention realized attained by structure particularly pointed out written description claims hereof well appended drawings.

It understood that both foregoing general description following detailed description are exemplary explanatory are intended provide further explanation invention claimed.

BRIEF DESCRIPTION OF THE DRAWINGS/FIGURES

The accompanying drawings, which are included provide further understanding invention are incorporated constitute part this specification, illustrate embodiments invention together with description serve explain principles invention. In drawings:

FIG. 1 illustrates proposed programming method according present invention.

DETAILED DESCRIPTION OF THE INVENTION

Reference now made detail preferred embodiments present invention, examples which are illustrated accompanying drawings.

The programming bit OTP memory done based time. If bit programmed for time X (e.g., 10 渭sec), tester returns GOOD status, programming bit done. If time X program cycle complete, bit not programmed correctly yet, programming done again (and again) until it returns GOOD status. The gate oxide barrier OTP memory lower lower resistance with each programming attempt. However lab results show that if bit fails first attempt, subsequent attempts must longer duration reach success.

The algorithm implemented logic that select program time based seeing same bit get programmed repeatedly. On first attempt, default time selected. On second attempt, address bit compared found same location, then programming time extended by approximately order magnitude. On third attempt, if address same again, program time extended even longer. The process continue.

After bit returns GOOD status, programming move another bit time drop back shorter default value.

FIG. 1 illustrates flow diagram programming method present invention. As shown FIG. 1, programming apparatus waits for program Start command (step 101 ). Upon Start command, bit address selected for programming (step 102 ). If address equal previous address (step 103 ), program time increased (step 104 ). The bit then programmed (step 105 ). On next step, status bit (Good or Bad) returned tester (step 106 ). The tester then returns back step 101 . If, step 103 , address not equal previous address, short (i.e., default or standard) program time selected (step 107 ). The bit then programmed (see step 105 , etc.)

By automatically selecting longer program time for bits which require it automatically selecting short time for those bits that program quickly, tester time saved, no user intervention needed. This algorithm also applies 鈥渋n system鈥 programming well, where time not important, but success programming important.

As alternative, set bits used determine wafer process. These bits are programmed once for short period. If any bits fail, then wafer assumed slow program configuration bit (or bits) OTP then programmed that cause all future program times extended by roughly order magnitude.

Thus, default starting point for program time selected based wafer process.

For example, if 鈥渟low program鈥 part found during test bit programming, this part would then all its bits programmed OTP memory programming times longer than 鈥渟hort program鈥 part. This true for tester well system programming.

The programming method present invention tests each bit see whether it belongs fast programmable bit or slow programmable bit. Most bits are typically fast programming type, may programmed, for example, 10鈥20 渭sec. In that case, method involves programming bit that corresponds given address, then testing see if bit fact been programmed during 10 渭sec. If bit programming was successful, then programming apparatus moves onto bit next address. If programming not been successful, then tester increases time required program that particular bit by, for example, factor 10. The tester then tries again program bit. Following next attempt, tester again checks see if bit been successfully programmed. If it has, then it moves onto bit next address. If it not, then it again increases time required program this particular bit by, for example, factor 10, process repeats itself.

It understood by those skilled art that various changes form details may made therein without departing spirit scope invention defined appended claims. Thus, breadth scope present invention should not limited by any above-described exemplary embodiments, but should defined only accordance with following claims their equivalents.