SRAM Integrated: Go to Specifications page
The circuit diagram of
the overall Static RAM circuit could be found in the specifications part. Please
refer to the Specifications for details of the working of the overall circuit.
We will be concentrating on the MAX layout and timing issues here.
We are simulating two Read and two Write cycles on same 8 bits specified
by the same address. To simulate 8
bits of the SRAM circuit, we are using 1 row and 8 columns of the memory array.
Basic Specifications:
|
Name |
SRAM |
|
Inputs |
CE: Chip EnableOE: Output EnableWE:
Write Enable
A9-A0:
Address Lines
|
|
Inputs/Outputs |
D7-D0: Data lines (Bi-directional) |
|
Size |
560.070*1128.190
(currently) |
|
*Time Delay |
12 ns
(worst case) Read Cycle 21 ns
(worst case) Write Cycle |
* Will improve
The basic task at this point is to WRITE 8 bits at a specific memory address (where a row and 8 columns intersect), and then to READ the memory at the same address and to make sure that the previously written data was recorded and is read during the READ cycle.
Below is a MAX layout of the simulated SRAM circuit
|
SRAM: LAYOUT. |
Worst
Case Timing:
·
Write Operation: the worst-case timing delay will occur when we
are writing 8 bits to the topmost row and to the rightmost 8 columns of the
memory array.
· Read Operation: the worst-case timing delay will occur when we are reading 8 bits from the topmost row and from the rightmost 8 columns of the memory array.
Simulation and results
To
simulate the WRITE and READ cycles of the 8 bits of the SRAM circuit we need to
include some outside circuitry in the form of a “dummy processor” in
addition to the circuitry already present on the chip.
In the *.hsp file, you will find inputs ID7-ID0.
These 8 bits correspond to the “Input Data” that are sent by the
dummy processor to the SRAM chip during the Write operation.
The
address to which we are writing and from which we are reading will remain
constant, thus the inputs to the Row and Column Decoders will also remain
constant. The only active inputs
that will go into both decoders are the Pre-charge bits, which we will control
manually for this simulation.
We
will also control the Pre-Charge signal going to the Memory Array, and the Sense
Amplifier Enable signal going to the Sense Amplifier.
Out
of the three control signal: CE, OE, and WE, we will only use WE signal, which
is active low. We will not use the
other two because they mainly deal with I/O control logic, and at this point we
are not using I/O control logic because we only have 8 bits to simulate.
To
sum up what is said above, here is the table of all the signals that go in and
out of the SRAM circuit
|
Input/Output
Signal |
Explanation |
|
*ID7
– ID0 |
Input
data specified for the “Dummy Processor” that is sent to the SRAM chip
during a Write operation. Have
no effect during a Read operation. |
|
Y7
– Y0 |
Output
data coming from the SRAM chip during a Read operation. Have
no effect during a Write operation. |
|
**A9
– A0 |
Memory
address to which and from which the data is being written to or read from.
(Always constant in this simulation) |
|
WE |
Write
enable: ·
‘1’ – Read operation ·
‘0’ – Write operation |
|
PCM |
Pre-charge
Memory Array |
|
PCDR |
Pre-charge
Row Decoder |
|
PCDC |
Pre-charge
Column Decoder |
|
SE |
Sense
Amplifier Enable |
* These signals are not shown on
the HSpice simulation, they could be found in the .hsp file
** These signals are always
constant, so there is no point of showing them on the HSpice simulation
The
figure above shows a simulation of 8 bit of SRAM circuit.
Four cycles have been simulated, in the following order.
|
Cycle |
Time
of Cycle on Hspice simulation |
Associated
Delay |
Notes |
|
Write |
3
– 15 ns |
12.0
ns |
ID
(7-0) = “01010101”. “01010101”
is written to the memory (leftmost
bit corresponds to the MSB ) |
|
Read |
20
– 45 ns |
21.0
ns |
Y
(7-0) = “01010101”. “01010101”
is read on the output lines (leftmost
bit corresponds to the MSB ) |
|
Write |
49
– 61 ns |
12.0
ns |
ID
(7-0) = “10101010”. “10101010”
is written to the memory (leftmost
bit corresponds to the MSB ) |
|
Read |
63
– 88 ns |
21.0
ns |
Y
(7-0) = “10101010”. “10101010”
is read on the output lines (leftmost
bit corresponds to the MSB ) |
·
Associated Delay means:
o
Write Cycle:
the time from which WE goes low to the time when WE goes high.
o
Read Cycle:
the time from which the PCDC goes low to the time when the data is available on
the output lines Y (7-0). (at this point this is the best way to measure the
delay)
For
the final design stage, we will only have A9-A0, D7-D0, CE, OE, and WE signals
as inputs to the circuit, and have only D7-D0 as inputs/outputs
(bi-directional). We will simulate
Read/Write operations for several addresses in the array.