You are on page 1of 7

Verification of Open-Source Memory Compiler Framework with a Practical PDK

Chao Geng, Daiki Ishikawa, Shoya Kudo, Shigetoshi Nakatake


Dept. of Information and Media Engineering
The University of Kitakyushu
Fukuoka, Japan
e-mail: naka-lab@kitakyu-u.ac.jp

Abstract—An open-source memory compiler has recently data), characterization (timing, power), and verification
drawn the attention of academic researchers involved in Static (DRC, LVS, PEX). Its feasibility is demonstrated by SRAM
Random Access Memory (SRAM) designs. Since simulation designs in a generic 45nm technology (FreePDK45) and a
results for circuits implemented by practical Process Design fabricable 0.5m technology (SCMOS). Based on
Kits (PDKs) have rarely been reported so far, the effectiveness OpenRAM project, authors in work [6] proposed a novel
and the reliability for circuit implementation by compiler still differential single-port 12T bitcell with improved read
needs to be further verified. This paper presents an SRAM
reliability for high-density and high-speed SRAMs, where
circuit implemented in a 0.6m/±2.5V CMOS process with the
component configurations can be freely customized, and
compiler framework. We present pre- and post-layout
SRAMs can be easily realized with the help of OpenRAM.
simulation results with respect to the functionality and various
performance parameters of our SRAM circuit, and the
OpenRAM is improved subsequently by several works.
simulation results are thoroughly analyzed. A summary for Authors in work [7] proposed a replica-based timing
our SRAM circuit demonstrates the effectiveness and the speculative SRAM to detect read timing failures and to
reliability of the compiler to design an SRAM in a fabricable protect from incorrect write operations, while maintaining
technology process, showing a promising result for the energy- and area-efficient. Aiming to optimize high-
compiler to be verified on a fabricated chip. performance word line driver topologies for SRAMs, the
work [8] proposed an analytical optimization methodology
Keywords-memory compiler, PDK, SRAM circuit, post-layout using a delay model that includes gate delay, wire resistance,
simulation and wire capacitance. The work [9] proposed a word-line
buffer insertion optimization algorithm that place and size
I. INTRODUCTION the buffers to reduce word line and overall SRAM delay. To
enhance the throughput and flexibility of SRAM, the work
Modern IC designs pay more and more attention to [10] proposed a parameterized bitcell that can support any
SRAM circuit as it plays a significant role in optimizing combination of read, write, and read-write ports, which in
system performance [1] [2]. Specifically, for the System-on- turn makes OpenRAM suitable for multi-port configurations
Chip (SoC), Application-specific Integrated Circuit (ASIC), and high-performance systems.
and microprocessor, SRAM is a critical component OpenRAM has brought about inspiring results to
embedded with the systems that affects drastically the overall academic researchers, though, its portability across
area and power as well as speed [3] [4]. In the past decades, technology nodes, effectiveness and reliability to SRAM
several memory-oriented commercial tools have emerged to design still need to be further verified with a practical PDK.
customize the SRAM design. However, these tools have the On the one hand, the existing works and progress made are
following limitations: They serve as the black box to users all from the same research group, practical PDKs or
without knowing the details; they lack flexibility as users fabricable technology processes that they apply are very few
cannot modify the configuration of the base cells; they are and also FreePDK45 process is non-fabricable, the
dependent of technology process and thus the portability effectiveness and the reliability of OpenRAM is less
over other processes are poor. For the academic researchers adequately demonstrated as compared to a mature
involved in memory related projects, most importantly, commercial memory compiler. On the other hand, simulation
licensing issue is a great obstacle due to the expensive cost. results for SRAM circuits designed with a practical PDK by
Although several non-commercial tools are also available, OpenRAM have rarely been reported by far. To this end, we
they either can only generate simply memory structures, or implement an SRAM circuit in a 0.6m/±2.5V CMOS
provide no public releases for methodologies and design process with OpenRAM framework. After an SRAM design
flows. is generated from OpenRAM, we import our design into
Aiming to overcome the above limitations, in 2016, Cadence for circuit simulation and layout verification with
Guthaus et al. developed an open-source memory compiler the tool interface that the framework provides. In this paper,
[5], referred as to OpenRAM, to meet a variety of we present pre- and post-layout simulation results with
requirements for the sizes, configurations, and technologies respect to the functionality and various performance
in SRAM designs. OpenRAM provides a framework that parameters of our SRAM circuit. The simulation results are
incorporates multiple methodologies for the design thoroughly analyzed, which shows a correct function and a
generation (Verilog model, SPICE netlist, GDSII layout
good performance. Furthermore, a summary for the access transistor (N3 or N4). The wordline rwwl connects to
simulation results and an OPenRAM report demonstrates the the gates of the access transistors and is shared by bitcells in
effectiveness and the reliability of OPenRAM framework to same row. The bitlines, rwbl and its complement rwbl_bar,
design an SRAM in a fabricable technology process. Our also connect to the access transistors and are shared by
realized SRAM circuit also contributes to the further bitcells in same column. The default 6T cell is a single-port
verification of OpenRAM framework by silicon (rw) bitcell as it only supports a read or write operation in an
measurements, after a chip is fabricated. access time. By adding the circuit in red and the circuit in
The rest of the paper is organized as follows. Section Ⅱ blue for a write-only port (w) and a read-only (r) port,
mainly introduces an SRAM architecture and methodologies respectively, a 6T cell can be extended to a multi-port bitcell
used in OpenRAM. Section Ⅲ describes our design flow for (rw/w, rw/r, and w/r). The newest version of OpenRAM
an SRAM circuit based on OpenRAM framework. Section provides multi-port bitcell so that an SRAM circuit can be
Ⅳ presents pre- and post-layout simulation results of an accessed simultaneously by multiple read or write operations,
SRAM circuit for the functionality and various performance such feature is very useful in high-performance SRAMs for
parameters. Finally, Section Ⅴ concludes this work. multi-core microprocessors. OpenRAM provides user with a
parameterized bitcell, though, we can replace it with our own
II. OPENRAM FRAMEWORK custom-designed one for the performance improvement and
In this section, we mainly introduce an SRAM the area efficiency.
architecture and methodology associated with the circuit Address codes are decoded by an address decoder, and
implementation in OpenRAM. then wordline driver drives the row select signal and the
associated wordline can be asserted. Fig. 1 (c) shows a 4-16
A. An SRAM Architecture in OpenRAM decoder that can select the associated row from 16 rows.
As shown in Fig. 1, the SRAM architecture is composed Precharge (see Fig. 1 (d)) circuit is used to charge the bitlines
of a bitcell array and peripheral circuit arrays including of a bitcell to VDD in a read operation. Column multiplexer
control logic, address decoder, wordline driver, precharge, (see Fig. 1 (e)) is used to select the associated word when
column multiplexer, write driver, and sense amplifier. The there are many words in a row, it is an optional module in the
SRAM shown has 4-bit address and 8-bit input/output data. architecture and is usually used in multi-bank SRAM
Note that the bit number for address and data can be set implementation. Write driver (see Fig. 1(f)) is used to drive
arbitrarily in OpenRAM. A bitcell array with the word the input data into memory during a write operation and each
number, m, and the word size, n, has m×n bitcells. As seen in bit has one driver. Sense amplifier (see Fig. 1(g)) is a latch-
Fig. 1 (a), it shows a 16×8 bitcell array, where the horizontal type amplifier used to sense the voltage swing on the bitlines
line is wordline and the vertical line is bitline, each bitcell during a read operation. The more sensitive it is to the
placed in a tile has two bitlines. voltage swing, the less read access time of SRAM.
Control logic and replica bitline receive external signals,
clock signal clk0, chip select signal csb0, and write enable
signal web0. csb0 and web0 are both active low, SRAM
circuit works only if csb0 is in low voltage. Control logic
adopts the Replica Bit Line (RBL) technique to optimize the
Sense Amplifier Enable (SAE) signal timing, and to prevent
read failures.
For a write operation: In a clock cycle, at the time of
positive clock edge, if both csb0 and web0 are low voltage
(GND), address and input datas are captured, and then input
datas are sent to bitlines. When the associated row is selected
by an address decoder and the wordline turns to be high
voltage (VDD), the datas are written into memory cells with
delays from the negative clock edge.
For a read operation: In a clock cycle, at the time of
positive clock edge, if csb0 is low voltage and web0 is high
voltage, address is captured. Then, bitlines are precharged to
VDD and the associated wordline turns to be high voltage as
in the write operation. Assume that storage value in a bitcell
(see 6T cell in Fig. 1 (b)) is 1, i.e., values at nodes Q and
Q_bar are 1 and 0, respectively. The bitline rwbl remains
Figure 1. AN SRAM architecture in OpenRAM. VDD through the current path from P1 to N3,whereas the
bitline rwbl_bar discharges to GND through the current path
As seen in Fig.1 (b), OpenRAM adopts a 6T cell (circuit from N4 to N2. Thus, storage value 1 is passed to bitlines by
in black) as the bitcell that is most commonly used in SRAM, making rwbl 1 and rwbl_bar 0, respectively. If storage value
where two inverters (N1, P1, and, N2, P2) are cross-coupled, is 0, due to the inverse electrical behavior, rwbl and
and each output of the inverters respectively connects an rwbl_bar would be 0 and 1, respectively. Next, sense
amplifier can sense the values on bitlines as long as there is a work we implement a single-port (rw) 96-bit SRAM circuit
minor voltage difference. Finally, the stored datas in all with 4-bit address (16 words) and 6-bit input/output data (6-
accessed bitcells are simultaneously read out by a word per bit word size), which utilizes a 0.6m/±2.5V CMOS process.
time. Likewise, output datas also have delays from the As we apply our SRAM circuit to a Programmable Logic
negative clock edge. Array (PLA), a large memory size is not our main concern.
B. Methodology Used in OpenRAM for An SRAM Design Besides, this work aims to demonstrate the effectiveness and
reliability of OpenRAM to generate SRAM designs.
Methodology used in OpenRAM for an SRAM design is
Our design requirements are defined in the configuration
shown in Fig. 2. A technology library for PDK needs to be
file as aforementioned in last section. Main challenges are
available before the circuit implementation, it consists of
design migration for base cells from reference technologies
netlist and layout files for base cells, SPICE device models
(FreePDK45 or SCMOS) to our technology, and
for different corners, a tech configuration file in Python,
modification to the tech configuration file. A custom-
along with other Python files for PDK environment setup.
designed library including netlists and layouts is
User can set up the library for a specific technology based on
implemented for base cells like 6T bitcell, D-type flip-flop,
the reference implementations for FreePDK45 and SCMOS
sense amplifier, write driver and tri-gate. Replica bitcell and
technologies. Base cells are essential elements to constitute
dummy bitcell are also designed because RBL technique is
an SRAM which can be premade cells by foundry or
used in OpenRAM for the read reliability improvement.
handmade cells by user. SPICE device models are used in a
During the dynamic generation of SRAM circuit, replica
characterizer for circuit simulation. The tech configuration
bitcell array is fixed to output a 0 value, and dummy bitcell
file is used to set up GDS layer map, DRC/LVS rules,
array is placed with bitlines disconnected for wordline load
analytical characterization parameters and SPICE simulation
and lithography regularity. If multi-port bitcell configuration
parameters. The SRAM design is defined in a configuration
is applied, then, bitcell, replica and dummy bitcells (1rw/1r,
file where user specifies parameters associated with the word
1rw/1w) need to be designed as well.
size, the number of words, port types for bitcell
configuration, PVT (process corner, voltage, temperature)
for characterization, and verification tools.
An SRAM is generated by the technology library and
configuration file based on a Python-implemented memory
compiler framework. The generated results consist of
logical, physical, timing/power modules, a datasheet for
design report, a log file, and a configuration file copy.
Specifically, characterizer uses analytical model or spice
model to generate the timing/power modules, analytical
characterization is default as it is close-accurate to estimate
the timing/power and can speed up the process. Memory
characterizer finally uses a netlist with the extracted
parasitics to perform post-layout simulation and obtain more
accurate timing/power modules.

Figure 3. Bitcell layouts in (a) SCMOS 0.35m technology and in (b) our
0.6m technology.

Our implementation is based on the reference


implementations provided by OpenRAM. An example case
of bitcell layouts in SCMOS 0.35m technology and in our
0.6m technology is shown in Fig. 3. Both layouts are same
configuration but with different transistor dimensions. Our
bitcell and other base cells are carefully designed to meet
DRC requirements.
Next, we need to modify a Python file for the tech
configuration. In the file of a reference technology, we need
Figure 2. Methodology used in OpenRAM for an SRAM design. to replace the GDS layer number with ours while remaining
the layer name same. Correct mapping relationship must be
satisfied when two technologies use different layer names.
III. DESIGN FLOW FOR SRAM CIRCUIT For example, in this work the GDS layer number for layers
This section describes our design flow for an SRAM p-implant and n-implant are replaced with that of layers
circuit based on the methodology used in OpenRAM. In this VTPE and VTNE, respectively. Then, we also need to
modify the parameters of DRC rules with respect to spacing, analyze the experimental results for our design. Our SRAM
enclosure and extension. For example, the minimum spacing circuit is implemented in a 0.6m/±2.5V CMOS process
of layer implant to transistor channel is 0.07m in the with a 0.38-mm2 layout area and a 96-bit memory size. Fig.
reference technology, but it is changed to 0.5 m for our 4 shows the SRAM layout embedded in a chip layout where
technology. The modification to DRC rules needs to be done SRAM is combined with a PLA for a research project, and a
by careful handling and OPenRAM considers the most buffer array is used to drive the output lines of SRAM for
common DRC rules for various technologies. Finally, readability improvement. We omit the introduction to PLA
parameters for analytical model such as unit wire resistance herein as we only focus on the implementation of SRAM in
this work.
and wire capacitance, gate delay and leakage power, need to
be updated as well based on those values in our technology.
Once above procedures are finished, the memory compiler
can generate an SRAM circuit. OPenRAM provides various
tool interfaces for circuit simulation and physical verification
as well as parasitic extraction. In this work, we use Cadence
spectre for circuit simulation and Mentor calibre for physical
verification.
IV. EXPERIMENTAL RESULTS
This section shows the functionality and performance of
our SRAM circuit generated by OPenRAM. We also present
values of various performance parameters from pre-
simulation and post-layout simulation as well as OPenRAM
analytical characterization. Post-layout simulation is
performed by using an SRAM netlist with parasitics Figure 4. SRAM layout embedded in a chip layout.
extracted from calibre PEX. Finally, we summarize and

Figure 5. Post-layout simulation for the functionality of our SRAM circuit.

bit address and 6-bit input/output data. During csb0 is active


A. Simulation Results for the Functionality in low voltage, we control signal web0 to realize the write
Post-layout simulation results for the functionality of our operation followed by the read operation and repeat it by
SRAM circuit is consistent with that of pre-simulation and is three times, each operation spends 8 clock cycles. In the
shown in Fig. 5. The circuit operates by a clock signal clk0 in write and read operations, address bits change synchronously
a 2-MHz frequency, csb0 controls enable or disable of the with the positive clock edge from 0000 to 0111 with a 1-bit
circuit, web0 controls the read or write operation by a step size. In the first write operation, we apply input data
scheme as introduced in section Ⅱ. Besides, the circuit has 4- ranging from 000000 to 000111 with a 1-bit step size to
synchronously follow the positive clock edge. For the second B. Simulation Results for Performance Parameters
and third write operations, however, random input data is Write delay and read delay are critical parameters to
applied. Then, in the read operation we check each output evaluate the performance of an SRAM circuit, the smaller it
dada after each negative clock edge, as shown by digital is, the higher speed and throughput the SRAM circuit can
codes (1 represents high voltage 2.5V, and 0 represents low achieve. Their results measured from pre- and post-layout
voltage -2.5V) in red in Fig. 5. We verify that during the read simulation are shown in Fig. 6 (a) and (b), respectively. For a
operation, each output dada is consistent with the input dada write delay, pre- and post-layout simulation results are
to the same address, and output pattern is always consistent respectively 5.2ns and 5.7ns, and the difference is 500ps. For
with the input patten being written into memory array during a read delay, pre- and post-layout simulation results are
the write operation. During csb0 is high voltage, the circuit is respectively 5.7ns and 6.7ns, and the difference is 1ns. The
disabled and therefore there is no output pattern. differences of delays are very small as compared to our
Consequently, simulation results demonstrate the tolerance 125ns that ensures not to break the functionality of
functionality of our SRAM circuit is correct. Note that for a SRAM. Besides, as the clock signal of the circuit operates at
write or read operation in a clock cycle, there is always a 2MHz, we can derive that write/read time are simply the sum
delay from the negative clock edge when data is written in or of write/read delay time and a three fourth of a clock cycle
read out. Besides, we can also observe the output pattern time (the time from address available to data stored or
during the write operation, this is because the newest output). Therefore, write time of pre- and post-layout
OPenRAM version omits oeb0 signal that is used to disable simulation is 380.2ns and 380.7ns, respectively. Read time of
the output during the write operation, in order to reduce the pre- and post-layout simulation is 380.7ns and 381.7ns,
hardware overhead. But this does not affect the functionality respectively. Note that our SRAM has parallel input and
of SRAM circuit when employed in our research project, we output ports and they work concurrently, thus write/read
do not care the output during the write operation. delay for all ports are same.

(a)

(b)
Figure 6. Pre- and post-layout simulation results for write delay (a) and read delay (b) of an SRAM circuit.
feedbacks of cross-coupled inverters of an SRAM bitcell (see
a 6T bitcell in Fig. 1), and then biasing bitcell ports with
appropriate voltages. Next, sweeping voltage at storage node
Q while monitoring voltage of the other storage node Q_bar.
SNM is simply the side of the largest square embedded
between the voltage transfer characteristic curves of inverters.
Simulation setup and the obtained results for SNM are
shown in Fig. 7. HSNM is 1.2V, RSNM is 0.6V, and WSNM
is 1.8V with supply voltages of ±2.5V. Because layout of
bitcell is well designed under the mismatch and symmetry
constraints, the parasitic effect to our bitcell circuit is very
small. Therefore, pre-simulation and post-layout simulation
results are totally same.
C. Summary and Analysis
(a)
Results for the maximum working frequency, area, and
power along with the performance parameters are
summarized in Table Ⅰ. They are from pre-simulation and
post-layout simulation, we also include results from an
OPenRAM report that is used to compare to simulation
results for the discussion of OPenRAM methodology.
TABLE I. SUMMARY FOR OUR SRAM CIRCUIT

Item
Specification OpenRAM Post-layout
Pre Sim.
Report Sim.
Max. Working Freq. (MHz) 357 71.4 66.7
Area (mm2 ) 0.38 n/a 0.38
Leakage Power (mW) 13.06 18.84 18.84
(b) Total Power (mW) 13.09 19.12 19.06
Write Delay (ns) n/a 5.2 5.7
Read Delay (ns) 1.4 5.7 6.7
Write Time (ns) n/a 380.2 380.7
Read Time (ns) 376.4 380.7 381.7
HSNM@±2.5V (V) n/a 1.2 1.2
RSNM@±2.5V (V) n/a 0.6 0.6
WSNM@±2.5V (V) n/a 1.8 1.8

For the maximum working frequency, we increase a


clock frequency and iterate simulation until the functionality
of SRAM circuit breaks. Post-layout simulation result shows
a lower frequency compared with pre-simulation result due
to the parasitic capacitance of a control logic. As for power,
there is no significant difference for leakage power between
(c) pre-simulation and post-layout simulation. On the one hand,
Figure 7. Simulation results for static noise margin. (a) HSNM. (b) RSNM.
the most of leakage power is consumed by bitcell array and
(c) WSNM. the effect of parasitic resistance to bitcell is very small. On
the other hand, the memory size of our SRAM is small and
Static Noise Margin (SNM) is also a critical parameter to has only 96 bits, the accumulative effect of power variation
evaluate the stability of an SRAM [11], it is defined as when is not significant. However, dynamic power (the subtraction
noise presents at the gates of cross-coupled inverters or of total power and leakage power) of post-layout simulation
storage nodes, the maximum value of noise that an SRAM is 0.06mW less than that of pre-simulation, this is because
bitcell can tolerate. When noise exceeds that value, the stored the parasitic capacitance affects the actual working
data would be changed. We measure this parameter in three frequency. For write delay/time and read delay/time, post-
states which includes Hold Static Noise margin (HSNM), layout simulation results respectively increase 0.5ns and 1ns
Read Static Noise Margin (RSNM), and Write Static Noise compared with pre-simulation results. The differences are
Margin (WSNM). Butterfly-curve method is mostly due to the parasitic capacitance of wordlines in a control
considered to measure SNM which first disconnects logic circuit. Optimizing the algorithm in OPenRAM for the
buffer insertion on wordlines can reduce the delay and effectiveness of the circuit designed by OPenRAM
improve the speed performance. Our SRAM circuit achieves framework can be further explored.
the high stability by the SNM values measured, as compared
to 5V from VDD (+2.5) to VSS (-2.5). Besides, there shows REFERENCES
no difference between pre-simulation and post-layout [1] Vishvakarma, Santosh Kumar, Bhupendra Singh Reniwal, V. Sharma,
simulation results for SNM, and nearly no parasitic effect for C. B. Khuswah, and D. Dwivedi. “Nanoscale Memory Design for
bitcell because of a fine layout structure. Efficient Computation: trends, challenges and opportunity,” Proc.
2015 International Symposium on Nanoelectronic and Information
As OPenRAM can support an analytical characterization Systems (ISNIS), IEEE, Feb. 2015, pp. 29-34, doi:
prior to a SPICE simulation, which estimates delay and 10.1109/iNIS.2015.58.
power of an SRAM by considering gate delay, unit wire [2] Clinton, Michael, Hank Cheng, Hung-Jen Liao, Robin Lee, Ching-
resistance and capacitance, and power parameters of base Wei Wu, Johnny Yang, Hau-Tai Hsieh et al. “12.3 A Low-power and
cells, we still compare simulation results to the estimated High-Performance 10nm SRAM Architecture for Mobile
Applications,” Proc. 2017 International Solid-State Circuits
results from an OPenRAM report generated by an analytical Conference (ISSCC), IEEE, Feb. 2017, pp. 210-211, doi:
characterization. They are all same in terms of layout area. 10.1109/ISSCC.2017.7870335.
However, OPenRAM estimates a maximum working [3] Prasad, Govind, Dulari Tandon, Bipin Chandra Mandi, and Maifuz
frequency as high as 357MHz by an analytical model, Ali, “Process Variation Analysis of 10T SRAM Cell for Low Power,
High Speed Cache Memory for IoT Applications,” Proc. 7th
whereas the simulation results are far smaller than that when International Conference on Signal Processing and Integrated
using a SPICE model. In terms of leakage/total power and Networks (SPIN), IEEE, Feb. 2020, pp. 891-895, doi:
read delay/time, they are smaller than corresponding results 10.1109/SPIN48934.2020.9070999.
from simulation. The result differences between analytical [4] Vashishtha, Vinay, Manoj Vangala, Parv Sharma, and Lawrence T.
characterization and SPICE simulation is due to the Clark. “Robust 7-nm SRAM Design on a Predictive PDK,” Proc.
2017 International Symposium on Circuits and Systems (ISCAS),
mismatch between analytical model and SPICE model, the IEEE, May 2017, pp. 1-4, doi: 10.1109/ISCAS.2017.8050316.
later contains more device and parasitic parameters and [5] M. R. Guthaus, J. E. Stine, S. Ataei, B. Chen, B. Wu, and M. Sarwar,
therefore is more accurate. As for other performance “OpenRAM: an open-source memory compiler,” Proc. the 35th
parameters such as write delay/time, and SNM, the International Conference on Computer-Aided Design (ICCAD), ACM,
OPenRAM report does not provide the corresponding Nov. 2016, pp. 1-6, doi: 10.1145/2966986.2980098.
results as they need to be measured from internal signals of [6] Ataei, Samira, James E. Stine, and Matthew R. Guthaus, “A 64 kb
Differential Single-port 12T SRAM Design with A Bit-interleaving
SRAM bitcells. Nevertheless, analytical characterization Scheme for Low-voltage Operation in 32 nm SOI CMOS,” Proc. 34th
provides estimate results close enough to real values for an International Conference on Computer Design (ICCD), IEEE, Oct.
SRAM design which is still helpful in reducing design 2016, pp. 499-506, doi: 10.1109/ICCD.2016.7753333.
iteration. [7] Ebrahimi, Elnaz, Matthew Guthaus, and Jose Renau, “Timing
Speculative SRAM,” Proc. 2017 International Symposium on Circuits
V. CONCLUSION and Systems (ISCAS), IEEE, May 2017, pp. 1-4, doi:
10.1109/ISCAS.2017.8050754.
This paper introduces a design flow for an SRAM circuit [8] Wu, Bin, James E. Stine, and Matthew R. Guthaus, “Fast and Area-
with OPenRAM framework. To verify the reliability to Efficient SRAM Word-Line Optimization,” Proc. 2019 International
design an SRAM circuit with the methodology used in Symposium on Circuits and Systems (ISCAS), IEEE, May 2019, pp.
1-5, doi:10.1109/iscas.2019.8702518.
OPenRAM, we use a practical PDK to implement an SRAM
[9] Wu, Bin, and Matthew R. Guthaus, “Bottom-Up Approach for High
circuit in a 0.6m/±2.5V CMOS process. We present pre- Speed SRAM Word-line Buffer Insertion Optimization,” Proc.
and post-layout simulation results with respect to the IFIP/IEEE 27th International Conference on Very Large Scale
functionality and performance of our SRAM circuit, where Integration (VLSI-SoC), IEEE, Oct. 2019, pp. 305-310, doi:
10.1109/VLSI-SoC.2019.8920325.
results for read/write delay and SNM as well as various
[10] Nichols, Hunter, Michael Grimes, Jennifer Sowash, Jesse Cirimelli-
performance parameters are included. The simulation results Low, and Matthew R. Guthaus, “Automated Synthesis of Multi-Port
are thoroughly analyzed, and a summary for our SRAM Memories and Control,” Proc. IFIP/IEEE 27th International
circuit demonstrates the effectiveness and the reliability of Conference on Very Large Scale Integration (VLSI-SoC), IEEE, Oct.
2019, pp. 59-64, doi: 10.1109/VLSI-SoC.2019.8920314.
OPenRAM framework to design an SRAM in a fabricable
[11] E. Seevinck, F. J. List, and J. Lohstroh, “Static-noise Margin Analysis
technology process. One of our future works is to measure of MOS SRAM Cells,” IEEE Journal of Solid-State Circuits (JSSC),
the silicon results of our SRAM circuit from a chip, the vol. 22, no. 5, Oct. 1987, pp. 748–754, doi:
10.1109/JSSC.1987.1052809.

You might also like