An Improvised Design Implementation of S
An Improvised Design Implementation of S
ABSTRACT
Memory arrays are an essential building block in any digital system. Static random-access
memory (SRAM or static RAM) is a type of semiconductor memory that uses bistable latching
circuitry to store each bit. The term static differentiates it from dynamic RAM (DRAM) which must
be periodically refreshed. SRAM exhibits data remanence, but it is still volatile in the conventional
sense that data is eventually lost when the memory is not powered. The aspects of designing an
SRAM are very vital to designing other digital circuits as well. The majority of space taken in an
integrated circuit is the memory. SRAM design consists of key considerations, such as increased
speed and reduced layout area. This paper is aimed at creating an efficient SRAM design using
Cadence. The focus was on developing simplified design by reducing the transistor count and
replacing some of the conventional circuit designs.
I. INTRODUCTION
The basic architecture of a SRAM consists of an array of memory cells with support circuitry
to decode addresses and implement the read and write operations. SRAM arrays are arranged in rows
and columns of memory cells called wordlines and bitlines, respectively. Typically, the wordlines are
107
Proceedings of the 2nd International Conference on Current Trends in Engineering and Management ICCTEM -2014
17 – 19, July 2014, Mysore, Karnataka, India
made from poly silicon while the bitlines are metal. Each memory cell has a unique location or
address defined by the intersection of a row and a column.
There are some issues to be considered when sizing the transistors. The latch inverters (M1,
M2, M3, and M4) form a positive feedback loop, so that the stored value is maintained as long as
power is available. Since the bit lines are pre-charged to VDD-Vtn, the cell NFETs (M1 and M3)
cannot be smaller than the pass NFETs (M5 and M6) to overcome the current value on the bit line
when pulling it to a low value. Note that though a transmission gate may be used for the pass
transistors, only NFETs are used so that the area for a single SRAM cell may be small. It will be
shown later that special circuitry (bit-line conditioning and sense amplifiers) is needed to recover
from the performance losses due to using just NFETs .In an array of RAM cells, a single word line is
connected to an entire row of RAM cells, forming a long word-line row. Since the word line uses
108
Proceedings of the 2nd International Conference on Current Trends in Engineering and Management ICCTEM -2014
17 – 19, July 2014, Mysore, Karnataka, India
poly silicon (which has high resistivity), it is necessary to keep the two pass transistors (M5 and M6)
small. This improves signal integrity on the word lines and reduces power dissipation. Therefore, the
size is kept small.
During the read operation, it was concluded that transistor Q1 had to be stronger than
transistor Q5 to prevent accidental writing. Now in the write case, this feature actually prevents a
wanted write operation. Even when transistor Q5 is turned on and current is flowing from BL to the
storage node, the state of the node will not change. As soon as the node is raised transistor Q1 will
sink current to ground, and the node is prevented from reaching even close to the switching point. So
instead of writing a ’1’ to the node, a ’0’ will be written to the inverse node. Looking at the right side
of the cell we have the constellation Q4-Q6. In this case BLB is held at gnd. When the wordline is
raised Q6 is turned on and current is drawn from the inverse storage node to BLB.
At the same time, however, Q4 is turned on and, as soon as the potential at the inverse
storage node starts to decrease, current will flow from VDD to the node. In this case Q6 has to be
stronger than Q4 for the inverse node to change its state. The transistor Q4 is a PMOS Transistor and
inherently weaker than the NMOS transistor Q6 (the mobility is lower in PMOS than in NMOS).
The Sram array is functionally divided into four blocks
• I/O section
• Decoder Section
• Control section
This section of SRAM is responsible for pre-charging bitlines, sensing differential analog
voltage during read operation and driving bitlines during write operation. It has the following
functional blocks.
• Pre-charge
• Sense Amplifier
• Write Amplifier
b’ Pch’
wen
dout
Fig. 3.2: Sense amplifier using NAND latch
din
110
Proceedings of the 2nd International Conference on Current Trends in Engineering and Management ICCTEM -2014
17 – 19, July 2014, Mysore, Karnataka, India
111
Proceedings of the 2nd International Conference on Current Trends in Engineering and Management ICCTEM -2014
17 – 19, July 2014, Mysore, Karnataka, India
112
Proceedings of the 2nd International Conference on Current Trends in Engineering and Management ICCTEM -2014
17 – 19, July 2014, Mysore, Karnataka, India
Vector files come into picture when long bit patterns are used as stimuli. SPECTRE and
SPECTRE RF input netlists support digital vector files. A VEC file consists of three parts:
These four lines are required and appear in the first lines of a VEC file:
Where timex is the specified time, and signaln_valuen is the values of specific signals at
specific points in time. The set of values for a particular signal (over all times) is a vector, which
appears as a vertical column in the tabular data and vector table. The set of all signal1_valuen
constitutes one vector.
For example,
11.0 1000 1000
20.0 1100 1100
33.0 1010 1001
113
Proceedings of the 2nd International Conference on Current Trends in Engineering and Management ICCTEM -2014
17 – 19, July 2014, Mysore, Karnataka, India
V. RESULT
The simulation using vector files and the layout of complete array is shown in fig. 4.1 and fig.
4.2 respectively.
The waveform obtained using Wavescan window for layout of SRAM is shown in Fig 4.1.
The Tcq (Clock to Q) for layout of SRAM was found to be 1500 ps for a maximum clock frequency
of 250MHz.
114
Proceedings of the 2nd International Conference on Current Trends in Engineering and Management ICCTEM -2014
17 – 19, July 2014, Mysore, Karnataka, India
VI. CONCLUSION
The complete SRAM array includes peripheral components such as memory bit cell, writer
driven circuit, pre-charge circuit, sense amplifier and flip flops. The circuit is designed for storage
capacity of 512 bits. The decoder is a 6:64 decoder implemented in order to select 64 wordlines in
the bit cell array. The sense amplifier and write amplifier are designed in accordance to the
requirement of the circuit. The D flip flops used here, synchronize the data and address lines with the
clock signal of the circuit in order to perform the necessary read and write operation on the bit cell.
The proposed work is operating within an input voltage of 0 to 1.8v. The DRC and LVS are
performed for all the components and correspondingly necessary optimization is carried out for the
same. Eventually, designing and implementing a highly integrated & efficient SRAM circuit design.
We intend on extending the memory size to 1KB and with the help of Cadence SKILL code
designing a memory compiler. An SRAM compiler can be developed for the automatic layout
generation of memory elements in the ASIC environment. The compiler can generate an SRAM
layout based on a given SRAM size, input by the user, with the option of choosing between fast vs.
low-power SRAM.
The language that will be used to perform the layout automation is Cadence’s SKILL.
SKILL, which stands for Silicon Compiler Interface Language, has tool specific functions for several
of Cadence Suites –Virtuoso (Layout Editor) and Composer (Schematic Editor), among others.
115
Proceedings of the 2nd International Conference on Current Trends in Engineering and Management ICCTEM -2014
17 – 19, July 2014, Mysore, Karnataka, India
VIII. ACKNOWLEDGEMENT
First and foremost we pay our due regards to our renowned institution Vidyavardhaka
College of Engineering, which provided us a platform and an opportunity for carrying out this work
and our guide Sunil Kumar H V, layout team lead manager, Sankalp Semiconductors, Bangalore.
IX. REFERENCES
[1] Bhavya Daya, Shu Jiang, Piotr Nowak, Jaffer Sharief Synchronous 16x8 SRAM Design,
Electrical Engineering Department, University of Florida.
[2] Mehdi Alipour, Mostafa E. Salehi1, Hesamodin shojaei baghini, Design Space Exploration to
Find the Optimum Cache and Register File Size for Embedded Applications Islamic Azad
University.
[3] Meenatchi Jagasivamani Development of a Low-Power SRAM Compiler Virginia Polytechnic
Institute and State University.
[4] Andrei Pavlov and Manoj Sachdev CMOS SRAM Circuit Design and Parametric Test in
Nano-Scaled Technologies, Process-Aware SRAM Design and Test.
[5] Andrei S Pavlov Design and test of embedded SRAMSs University of Waterloo.
116