The present invention relates to a static random access memory.
Embedded systems particularly targeted towards portable applications require extremely low energy consumption as they are often battery powered. In these embedded systems memory consumes a significant portion of the total system power budget; thus memory power reduction is crucial. Lowering supply voltage is one of the options to reduce power (energy) consumption. However, ultra-low-power design of high-density Static Random Access Memory (SRAM) in which the operating voltage is below the transistor threshold voltage is extremely challenging. This is due to reduced static noise margin (SNM) and increased variability in design and process parameters in nanoscale CMOS (nano-CMOS) technology. Therefore, reducing the operating voltage for memory to reduce the leakage power and active energy in energy constraint applications is a major challenge.
In modern System on Chips (SoCs) devices when total power and total area is dominated by the SRAM, reduction in its supply voltage (Vdd) can save both active energy and leakage power during stand-by operation. Hence, supply voltage scaling is the first choice of semiconductor manufacturers for ultra-low-power applications. Also for system integration, SRAM must be compatible with sub-threshold combinational logic operating at ultra-low voltages. However, this leads to an increase in sensitivity of design and process parameter variability. This problem will worsen in nanometer technologies with ultra-low voltage operation and makes SRAM design and stability analysis more challenging.
Process variations have a major impact in both the inter-die and intra-die threshold voltage variation due to random dopant fluctuations in small geometry SRAM cell transistors. Consequently, there are major concerns over SRAM cell stability as well as the integrity of read and write operations in future nano-CMOS designs. This may lead to poor yield and density requirements due to: degraded static noise margin (SNM); poor write-ability; increased sensitivity of design; and severe variations in process parameters. Moreover, the density requirement is mainly limited by the poor driving capacity of bit-lines, which allows fewer cells per bit-line and reduced bit-line sensing margin.
Different types of SRAM bitcells consisting of five, seven, eight, and ten transistors, have been proposed to improve the yield, density and failure probability due to poor SNM, write-ability and process variations.
The 5-transistor bitcell proposed by Carlson et al in “A high density, low leakage, 5T SRAM for embedded caches”, Solid-State Circuits Conference 2004, ESSCIRC 2004, Proceeding of the 30th European, pages 215-218, 21-23 Sep. 2004 employs a single-ended input/output (I/O) line for reading and writing which requires additional sensing circuitry for reliable read operation. In the 7-transistor bitcell proposed by Aly et al in “Novel 7T SRAM cell for low power cache design”, SOC conference, 2005, Proceedings IEEE International, pages 171-174, 19-23 September 2005, a differential read operation is performed, while, during write operations, a feedback connection between inverters is disconnected to improve the read SNM. In the 8-transistor bitcell proposed by Chang et al in “Stable SRAM cell design for the 32 nm node and beyond”, VLSI Technology, 2005. Digest of Technical Papers, 2005 Symposium on, pages 128-129, 14-16 Jun. 2005, two additional NMOS transistors are included to decouple the cell and separate read and write word-lines are used to improve the read stability. A 10-transistor subthreshold bitcell proposed by Calhoun et al in “A 256 kb 65 nm sub-threshold SRAM design for ultra-low voltage operation”, IEEE Journal of Solid-State Circuits, 42(3): 680-688, March 2007 uses a buffer for reading to improve the read SNM. Read access is single ended and employs separate read and write word-lines. A 160 mV robust Schmitt trigger based subthreshold SRAM bitcell proposed by Kulkarni et al in “A 160 mV robust Schmitt trigger based subthreshold SRAM”, Solid State Circuits, IEEE Journal of, 42(10): 2303-2313, October 2007 focuses on making the basic inverter pair of the memory cell robust to improve the stability of the cross-coupled inverters. Here, we will refer to this cell as 10T-ST for subsequent discussions. In the literature, the read SNM of the 7-transistor, 8-transistor and 10-transistor SRAM cells has been improved by decoupling the bitcell nodes from the bit-lines during the read access, hence making the read SNM equal to the hold SNM. However, in 10T-ST, the read SNM has been improved by strengthening the inverter pairs. The write-ability has been improved in prior designs by using virtual supply voltage for write access transistors at the cost of generating and routing an extra supply voltage.
The limitations of current designs motivates the exploration of an alternative SRAM bitcell structure that will be suitable for nano-CMOS circuits for targeted ultra-low-power applications.
A first aspect of the invention provides a static random access memory comprising: a pair of inverters each having an input and an output; a cross-coupling path coupling the input of a first one of the inverters to the output of a second one of the inverters; and a transmission gate. The transmission gate comprises: a p-channel transistor coupling the input of the second one of the inverters to the output of the first one of the inverters; and an n-channel transistor coupling the input of the second one of the inverters to the output of the first one of the inverters in parallel with the p-channel transistor.
A second aspect of the invention provides a method of operating the static random access memory, the method comprising: switching the transistors of the transmission gate from an ON state to an OFF state to disconnect the input of the second one of the inverters from the output of the first one of the inverters; accessing the memory, for instance in a read operation or a write operation, with the transistors of the transmission gate in the OFF state; and switching the transistors of the transmission gate from the OFF state to the ON state after the access operation in order to reconnect the input of the second one of the inverters to the output of the first one of the inverters.
A third aspect of the invention provides a static random access memory comprising: a first inverter having a supply voltage node connected to a supply voltage, and a ground node connected to ground; a second inverter cross-coupled with the first inverter and having a supply voltage node connected to a supply voltage, and a ground node; and a switch for selectively connecting and disconnecting the ground node of the second inverter to and from ground.
A fourth aspect of the invention provides a method of operating a static random access memory, the memory comprising a pair of cross-coupled inverters each having a supply voltage node connected to a supply voltage, and a ground node connected to ground, the method comprising disconnecting the ground node of one of the inverters from ground during a write operation.
Various preferred features of the invention are described in the dependent claims.
Embodiments of the invention will now be described with reference to the accompanying drawings, in which:
A proposed 7-transistor Latch-Style Static Random Access Memory (7T-LSRAM) bitcell is shown in
The TG 15 comprises PMOS and NMOS transistors 16, 17. The PMOS transistor 16 couples the input of the inverter 11 to the output of the inverter 12; and the NMOS transistor 17 couples the input of the inverter 11 to the output of the inverter 12 in parallel with the PMOS transistor 16. The transistors 16, 17 are switched ON and OFF together by a controller (not shown). By switching the transistors 16, 17 on together, the cross-coupling path between the output of the inverter 12 and the input of the inverter 11 is completed (in addition to the permanent cross-coupling path 13 between the output of the inverter 11 and the input of the inverter 12). This configuration allows the TG 15 to pass either a perfect logic “0” or a perfect logic “1”, preventing any loss of signal integrity. Similarly, by switching the transistors 16, 17 off together, the TG 15 can be opened, removing the feedback connection between the inverters 11, 12.
During a data retention period between read access or write access operations, the word-line 2 is low and the TG 15 is switched to an ON state to provide a strong feedback between the cross-coupled inverters 11, 12.
The write operation begins with asserting the word line 2 high (to turn on access transistor 14) and disconnecting the feedback between inverters, 11, 12. The feedback connection is switched OFF through the TG 15 with appropriate write control signals W (on line 20) and WB (on line 19) which are complements of one another. Once the feedback between the inverters is disconnected, read/write node 21 is charged/discharged to an equivalent logic level 1/0. Node 22 stores the complement of node 21.
To illustrate a write 0/1 operation, initially we assume that the node 21 is at logic level “1” and node 22 is at logic level “0”.
As described above, the feedback loop between the inverters is connected and disconnected through TG 15 which improves the write-ability, in other words a successful write to the memory. This significantly reduces the chance of an error occurring in the writing operation.
Prior to read access, both the word-line 2 and bit-line 18 are pre-charged to logic level “1”. The access transistor 14 provides a path to the storage node 21 to charge/discharge the bit line to an equivalent logic level I/O. The use of single bit line 18 and TG 15 provides strong coupling between the inverters 11, 12 and prevents the “0” internal storage node 21 (or 22) of the bitcell from being elevated to a voltage higher than ground.
As discussed, the proposed 7T-LSRAM has two nodes 21, 22 which hold the stored binary data in the bit cell. Node 22 is positioned between the two inverters 11, 12; consequently the logic value stored at node 22 is the complement of the logic value at node 21. Conventional bit cells, such as the 10T-ST, have similar nodes containing the stored logic value and its complement. Conventionally, the stored logic value is labelled ‘Q’ and its complement is labelled QB.
Due to their shape, these plots are known as ‘butterfly curves’. The first lobe of the butterfly curve for each bitcell arrangement can be obtained by asserting a voltage at node Q and monitoring the voltage at node QB. The second lobe can be obtained by asserting a voltage at node QB and monitoring the voltage at node Q.
Static Noise Margin (SNM) voltage is considered to be the best measure for read and hold stability. This can be estimated graphically as the length of the diagonal of the largest square that can be embedded inside the lobes of the butterfly curve.
Example SNM measurements are shown for the 7T-LSRAM and 10T-ST designs by arrows 30-33 in
Moreover, the comparison between the 7T-LSRAM SNM 30 and 10T-ST SNM 31 in
Write-ability of an SRAM bitcell is best characterized using write-trip-point voltage (WTPV), which determines how expensive it is in terms of energy to write to a bitcell. The lower the write trip point, the higher pulling down energy is required and vice-versa. The WTPV defines the maximum voltage on the bit-line needed to flip the bitcell content.
The WTPV of the 7T-LSRAM cell is about 27% less than the 10T-ST at Vdd=1.2 V. Thus, it can be concluded that the writing operation of the proposed 7T-LSRAM bitcell is about 27% more expensive in terms of energy consumption as compared to 10T-ST SRAM bitcells. In other words, the 7T-LSRAM is more robust to noise that can cause undesirable write operations, because it requires more energy to pull down the bit-line to change the bitcell state. Also after the write-trip-point, both the internal nodes change from 1 to 0 or from 0 to 1 perfectly, whereas in the 10T-ST SRAM bitcell one state of the internal nodes floats after the trip-point and is more susceptible to noise. In the subthreshold regime at Vdd=0.3 V the WTPV is 26% lower than that of 10T-ST SRAM bitcells. Thus, it can be concluded that the write operation of the 7T-LSRAM bitcell is more robust as compared to 10T-ST SRAM bitcells which is the prime requirement of the subthreshold nano-CMOS regime.
The 7T-LSRAM bitcell has been simulated using the Berkley predictive technology model (BPTM) and compared with the 10T-ST bitcells. The results suggest that the 7T-LSRAM bitcell has better SNM (read and hold) and WTPV (write), compared to the 10T-ST bitcells. Moreover, an improvement is also predicted in the static power noise margin (SPNM) and the write trip power (WTP). For Vdd=0.3 V, using predictive models, the 7T-LSRAM bitcell predicts 1.8× improvement in read SNM compared to its 10T-ST counterpart.
Thus the proposed 7T-LSRAM bitcell scales well with future technologies. As mentioned earlier, with increased process variations, the memory bitcell failure would probability worsen at lower supply voltages. Simulation shows that the proposed 7T-LSRAM bitcell has better process variation tolerance than the 10T-ST.
An 8 transistor SRAM cell 40 is shown in
The SRAM cell 40 comprises an inverter pair 11, 12, and a read and write access transistor 14. The output of the inverter 12 is permanently connected to the input of the inverter 11 via a first cross-coupling path 41. Rather than having two bit-lines as in standard SRAM bitcells, these lines have been replaced by a Single Ended Input/Output (SEIO) bit-line 18 carrying a signal denoted BL in
The write operation is similar to the 7T cell of
In the 8T design, better read-ability is achieved by not disturbing the node 21 (which carries a signal denoted Q in
In order to read bit level ‘0’ (i.e. Q=0, W=0, BL=1 (pre-charged) and R=1) transistors 46 and 47 are turned on, thereby pulling the bit line 18 to ground. Thus the bit line voltage BL indicates the voltage at node 21. On the other hand, if node 21 is at a high level ‘1’ (QB at ‘0’), transistor 46 is turned off and the bit line 18 keeps the pre-charged voltage, hence indicating that node 21 has a high level (Q=1). It is important to note that during the read operation, the bit line 18 is not connected to node 21 (because W=0), so that both nodes 21 (Q) and 48 (QB) are isolated from the bit line 18. This makes the read SNM high.
For a write operation (i.e. W=1, BL=1 (pre-charged), and R=0) the transistor 44 is turned off which keeps the inverter 12 floating (i.e. disconnected from ground) thus allowing a successful write to the node 21 (Q). During the write operation, BL remains high to write a binary “1” and BL drops to zero to write a binary “0”. Also the transistor 47 is switched off (as R=0) which isolates the bit line 18 from ground. Thus, the bit line 18 changes the state of node 21 (Q) appropriately (either low or high) according to the data on the bit line 18.
Although the invention has been described above with reference to one or more preferred embodiments, it will be appreciated that various changes or modifications may be made without departing from the scope of the invention as defined in the appended claims.