WEAK PRECHARGE BEFORE WRITE DUAL-RAIL SRAM WRITE OPTIMIZATION
20220415386 · 2022-12-29
Inventors
- Tawfik Ahmed (Austin, TX, US)
- Andrew J. Robison (Ft. Collins, CO, US)
- Russell J. Schreiber (Austin, TX, US)
Cpc classification
G11C7/12
PHYSICS
International classification
Abstract
A method for accessing a memory cell includes enabling precharging of a bit line of the memory cell before a next access of the memory cell. The method includes disabling the precharging after a first interval if the next access is a write. The method includes disabling the precharging after a second interval if the next access is a read. The first interval is shorter than the second interval.
Claims
1. A method for accessing a memory cell, the method comprising: enabling precharging of a bit line of the memory cell before a next access of the memory cell; disabling the precharging after a first interval if the next access is a write; and disabling the precharging after a second interval if the next access is a read, the first interval being shorter than the second interval.
2. The method, as recited in claim 1, wherein enabling precharging comprises setting a bit line precharge control signal of the memory cell to an active level prior to the next access of the memory cell, and wherein the next access of the memory cell is a write, the precharging is disabled after the first interval, and disabling comprises resetting the bit line precharge control signal to an inactive level prior to assertion of a word line control signal.
3. The method, as recited in claim 1, wherein enabling precharging comprises setting a bit line precharge control signal of the memory cell to an active level prior to the next access of the memory cell, and wherein the next access of the memory cell is a read, the precharging is disabled after the first interval, and disabling comprises resetting the bit line precharge control signal to an inactive level concurrently with setting of a word line control signal to a second active level.
4. The method, as recited in claim 1, wherein the first interval is substantially shorter than the second interval.
5. The method, as recited in claim 1, wherein a prior access is a read, the next access is a write, and the bit line is precharged to a power supply voltage.
6. The method, as recited in claim 1, wherein a prior access is a write, the next access is a write, and the bit line is weakly precharged to at most 90% of a power supply voltage.
7. The method, as recited in claim 1, wherein a memory cell control circuit receives a power supply voltage having a first positive voltage range and the memory cell receives a second power supply voltage having a second positive voltage range.
8. The method, as recited in claim 1, wherein the write is synchronous to a clock signal having a same frequency as a second clock signal of a processor accessing a memory array including the memory cell.
9. The method, as recited in claim 1, wherein a bit line precharge control signal is asserted concurrently with resetting of a word line control signal to an inactive level.
10. A memory comprising: a memory cell coupled to a bit line and responsive to a bit line precharge control signal, a memory cell select signal, and a memory cell write control signal; and a control circuit configured to generate the bit line precharge control signal, the memory cell select signal, and the memory cell write control signal to precharge the bit line before a next access of the memory cell, disable the precharging after a first interval if the next access is a write, and disable the precharging after a second interval if the next access is a read, the first interval being shorter than the second interval.
11. The memory recited in claim 10, wherein the control circuit asserts the bit line precharge control signal of the memory cell prior to the next access of the memory cell, and wherein the next access of the memory cell is a write and the control circuit clears the bit line precharge control signal prior to assertion of a word line control signal.
12. The memory recited in claim 10, wherein the control circuit asserts the bit line precharge control signal of the memory cell prior to the next access of the memory cell, and wherein the next access of the memory cell is a read and the control circuit clears the bit line precharge control signal concurrently with assertion of a word line control signal.
13. The memory recited in claim 10, wherein the first interval is substantially shorter than the second interval.
14. The memory recited in claim 10, wherein a prior access is a read, the next access is a write, and the bit line is precharged to a power supply voltage.
15. The memory recited in claim 10, wherein a prior access is a write, the next access is a write, and the bit line is weakly precharged to at most 90% of a power supply voltage.
16. The memory recited in claim 10, wherein the control circuit asserts a word line control signal and concurrently resets the bit line precharge control signal to an inactive level for a read access.
17. The memory recited in claim 10, wherein the control circuit asserts a word line control signal after resetting the bit line precharge control signal to an inactive level for a write access.
18. The memory recited in claim 10, wherein the control circuit receives a power supply voltage having a first positive voltage range and the memory cell receives a second power supply voltage having a second positive voltage range.
19. An apparatus comprising: a memory cell coupled to a bit line and responsive to a bit line precharge control signal, a memory cell select signal, and a memory cell write control signal; and means for precharging the bit line of the memory cell before a next access to the memory cell, the means for precharging performing a weak precharge of the bit line if the next access to the memory cell is a write and performing a normal precharge of the bit line if the next access to the memory cell is a read.
20. The apparatus recited in claim 19, wherein the normal precharge occurs over a first interval and the weak precharge occurs over a second interval, the first interval being shorter than the second interval.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0008] The present invention may be better understood, and its numerous objects, features, and advantages made apparent to those skilled in the art by referencing the accompanying drawings.
[0009]
[0010]
[0011]
[0012]
[0013]
[0014]
[0015]
[0016]
[0017] The use of the same reference symbols in different drawings indicates similar or identical items.
DETAILED DESCRIPTION
[0018] A technique for reducing or eliminating write failures of a dual-rail SRAM memory cell weakly precharges bit lines of the memory cell to power supply voltage VDD before a write to the memory cell and performs a regular precharge of the bit lines to VDD before a read of the memory cell. In at least one embodiment, a precharge interval begins when a precharge control signal enables precharging of the bit lines of the memory cell and the precharge interval ends when the precharge control signal disables precharging of the bit lines. In at least one embodiment, the duration of the precharge interval prior to a write is different from a duration of a precharge interval prior to a read. In at least one embodiment, weakly precharging uses a precharge interval that is substantially shorter than the precharge interval of a regular precharge. In at least one embodiment, the shorter precharge interval prior to a write provides additional time for a write driver to drive data on the bit lines prior to a word line for a write being asserted. In at least one embodiment, a controller asserts a word line for a write later in a memory operation cycle than it asserts the word line for a read, i.e., the controller delays word line assertion for a write.
[0019] Referring to
[0020] In waveform section 506, controller and address decoder 401 generates memory control signals for memory operation WRITE1 to memory cell 140. Controller and address decoder 401 resets bit line precharge signal BLPCX early, i.e., prior to assertion of word line WL, causing the precharge prior to the write to have duration t.sub.1. Since the write time is dominated by the time constant of the bit line, driving data onto the bit line earlier improves performance. In response to the end of the precharge, write column select line WRCS activates write driver 170 to drive data on bit lines BLT and BLC earlier than in a conventional memory access, thereby easing challenges (e.g., false reads) described above. For example, write driver 170 drives bit line BLT or bit line BLC all the way to ground while maintaining the other bit line at VDD after the precharge ends and before asserting write line WL.
[0021] Waveform section 508 of memory operation WRITE1 illustrates a precharge for a write immediately after a write to memory cell 140. One bit line falls slightly due to an equalizer transistor in precharge circuit 160. The other bit line rises, but since precharge device rolloff makes the last approximately 10% of the precharging (e.g., approximately 100 mV) slower than the rest of the precharging (e.g., the first 90%), with a high V.sub.DS and since the bit lines are only weakly precharged (e.g., bit line precharge signal BLPCX is reset early, after interval t.sub.1), bit line BLT or bit line BLC may not precharge all the way to VDD before the next write of memory operation WRITE2. However, under some conditions bit line BLT or bit line BLC does precharge all the way to VDD before the next write of memory operation WRITE2.
[0022] The weak precharge between memory operation WRITE1 and memory operation WRITE2 over interval t.sub.1 ends prior to controller and address decoder 401 setting write column select signal WRCS to an active level that cuts off the precharging. In at least one embodiment, write column select signal WRCS and write data signals WDT_X and WDC_X cause write driver 170 to drive one bit line to ground. In at least one embodiment, cross-coupled keeper transistors 180 slowly return the other bit line to VDD in response to controller and address decoder 401 asserting cross-couple enable signal XCENX. Since the precharge before a write is less stringent than the precharge before a read, controller and address decoder 401 ends the precharging early (e.g., at end of interval t.sub.1), the bit lines are weakly precharged, and may only reach a level that is less than VDD (e.g., 90% of VDD). However, under some conditions, the bit lines reach VDD.
[0023] A write to memory cell 140 requires data to be set up on bit lines BLT and BLC before assertion of word line signal WL. Rather than asserting word line WL concurrently with resetting bit line precharge signal BLPCX to an inactive level, bit line precharge signal BLPCX is reset early for the write, allowing data to be driven onto the bit lines early to reduce read-before-write challenges in a dual-rail SRAM. Controller and address decoder 401 drives write column select signal WRCS as fast as possible to set up data before assertion of word line WL. Write driver 170 drives data to be written to memory cell 140 on bit lines BLT and BLC before asserting word line WL. In at least one embodiment, assertion of word line WL is delayed for the write to provide additional time to setup data on bit lines BLT and BLC. In at least one embodiment, instead of the circuit illustrated in
[0024] After resetting write column select signal WRCS to an inactive level in memory operation WRITE2, controller and address decoder 401 resets word line WL and sets bit line precharge signal BLPCX to an active level for interval t.sub.2, which is longer than interval t.sub.1, and provides sufficient time to equalize the bitlines to VDD before a read. That is, controller and address decoder 401 does not reset bit line precharge signal BLPCX and disable precharging early as it did before a write. In at least one embodiment of controller and address decoder 401, interval t.sub.1 is substantially shorter than (e.g., 30%-40% shorter than interval t.sub.2). In at least one embodiment CLK has the same frequency (e.g., 5 GHz) as the remainder of the product (e.g., processor). Waveform section 510 illustrates a precharge for memory operation READ2 immediately after memory operation WRITE2. Bit lines BLT and BLC precharge all the way to VDD before the read.
[0025] To avoid an unintended read from occurring prior to a write, rather than precharging bit lines BLT and BLC to VDD and asserting the word line at the same time as disabling the precharge of bit lines BLT and BLC, bit lines BLT and BLC are weakly precharged. The bit line precharge is disabled earlier than for a read (e.g., and may not be precharged to VDD, but to at most 90% of VDD), allowing data to be driven on the bit lines early and increasing the time for the data to setup prior to asserting word line WL. The bit line precharge prior to a write operation is disabled prior to the assertion of the word line. As a result, the precharge interval preceding a write is shorter than the precharge interval preceding a read.
[0026] In at least one embodiment, controller and address decoder 401 includes a digital-to-time converter (e.g., a counter, a timer, or other suitable circuit) that converts a digital value corresponding to a selected precharge interval to corresponding edges of bit line precharge signal BLPCX. Bit line precharge signal BLPCX has an active level for interval t.sub.1 prior to a write instruction and has an active level for interval t.sub.2 prior to a read instruction. In at least one embodiment of controller and address decoder 401, interval t.sub.1 and interval t.sub.2 have predetermined values, which are determined by simulation. In other embodiments of controller and address decoder 401 interval t.sub.1 and interval t2 have programmable values that are configured based on values provided to controller and address decoder 401 during initialization of the system or during production test. Controller and address decoder 401 selects an interval value based on whether a next access is a read or the next access is a write and generates bit line precharge signal BLPCX accordingly.
[0027] In at least one embodiment, controller and address decoder 401 includes control logic configured to set bit line precharge signal BLPCX to an active level synchronously to resetting word line WL to an inactive level (402). Controller and address decoder 401 determines whether the next access to a memory cell is a write (404). If the next access is a read, then after interval t.sub.2 controller and address decoder 401 resets bit line precharge signal BLPCX and sets word line WL to an active level (414). At the end of the read, controller and address decoder 401 resets word line WL to an inactive level (416) and ends the memory access (418). If the next access is a write (404), then controller and address decoder 401 resets bit line precharge signal BLPCX to an inactive level after interval ti (406), asserts WRCS after resetting bit line precharge signal BLPCX (408), asserts word line WL to activate the write (410), resets word line WL to an inactive level to end the write (412), and ends the memory access (418). Note that the waveforms of
[0028]
[0029] Thus, a technique for controlling a memory cell that precharges the bit lines before a read using a regular precharge interval and weakly precharges the bit lines using a shorter interval before a write is disclosed. The description of the invention set forth herein is illustrative and is not intended to limit the scope of the invention as set forth in the following claims. For example, while the invention has been described in an embodiment in which a six-transistor memory cell is used, one of skill in the art will appreciate that the teachings herein can be utilized with memory cells including other numbers of transistors. In addition, while the invention has been described in an embodiment in which a write driver including only n-type transistors is used, one of skill in the art will appreciate that the teachings herein can be utilized with other write drivers including other types of transistors (e.g., the write driver of