m05 18ec72 Vlsi Design
m05 18ec72 Vlsi Design
ON
VLSI DESIGN
(18EC72)
MODULE 05
SEMICONDUCTOR MEMORIES
TESTING & VERIFICATION
by
MOHAMED ANEES
Assistant Professor
Department of Electronics & Communication
Vidyavardhaka College of Engineering, Mysore
https://vvce.ac.in/
1.2.2 SRAM
• The SRAM cell has a six-transistor latch structure to hold the state of each cell node.
• Since the cell data can be held indefinitely at one of the two possible states of the bistable latch
as long as power supply is provided, the refresh operation is not needed in SRAMs.
• The data storage structure consists of individual memory cells arranged in an array of horizontal
rows and vertical columns.
• Each cell is capable of storing one bit of binary information.
• In this structure, there are 𝟐𝐍 rows, also called 𝒘𝒐𝒓𝒅 𝒍𝒊𝒏𝒆𝒔, and 𝟐𝐌 columns, also called bit
lines. Thus, the total number of memory cells in this array is 𝟐𝑵 𝐱 𝟐𝑴 .
• To access a particular memory cell, the corresponding word line and the corresponding bit line
must be selected according to the addresses coming from outside of the memory array. These
addresses are provided by the memory controller or the processor directly.
• The row and column selection operations are accomplished by row and column decoders,
respectively.
• The four-transistor cell shown in the figure is one of the earliest dynamic cells from the 1970’s.
• Its “write” and “read” operations are similar to those of the SRAM cell.
• Write Operation
In the “write” operation, a word line is enabled and complementary data are written from a pair
of bit lines. Charge is stored at the parasitic and gate capacitances of a node connected with a
high voltage bit line. Since no current path if provided to the storage nodes for restoring the
charge lost due to leakage, the cell must be refreshed periodically.
• Read Operation
In the “read” operation, the voltage of a bit line is discharged to the ground through the
transistor where the gate is charged with the high voltage. The read operation is non-
destructive since the voltage stored at the node is maintained during the read operation.
Dept. of E&CE 6 VVCE Mysore
VLSI DESIGN (18EC72)
Fig.: Three transistor DRAM cell with two-bit lines and two-word lines
• The three-transistor DRAM cell utilizes a single transistor (M3) as the storage device and one
transistor each for “read” and “write” access switches.
• Write Operation
During the “write” operation, the “write” word line is enable and the voltage of the “Write” bit
line is passed onto the gate of storage device through the M1 transistor
• Read Operation
During the “read” operation, the voltage of the “read” bit line is discharged to the ground the
M2 and M3 transistors when the gate voltage of the storage device is high. The read operation
of the three-transistor DRAM cell is also non-destructive and relatively fast.
Figure depicts the typical voltage waveforms associated with the 3-T DRAM cell during a sequence
of four consecutive operations: write “1”, read “1”, write “0”, and read “0”.
Fig.: Typical voltage waveforms associated with the 3-T DRAM cell during four consecutive
operations: : write “1”, read “1”, write “0”, and read “0”.
• The memory cell consists of a simple CMOS latch (two inverters connected back-to-back), and
two complementary access transistors (M3 and M4).
• The cell will preserve the state as long as the power supply is available.
• The access transistors are turned on whenever a word line (row) is activated for read or write
operation, connecting the cell to the complementary bit-line columns.
• Advantages
- Very small static power dissipation (limited to leakage current).
- High noise immunity (large noise margin).
- Ability to operate at lower supply.
• Disadvantages
- Cell area slightly larger, latch-up phenomena.
b) Silicon debug
This silicon debug requires creative detective work to locate the cause of failures because the
designer has much less visibility into the fabricated chip compared to during design verification.
c) Manufacturing tests
The third set of tests verify that every transistor, gate, and storage element in the chip functions
correctly. These tests are conducted on each manufactured chip before shipping to the customer to
verify that the silicon is completely intact.
2.1.2 FAULT
• The yield of a particular IC was the number of good die divided by the total number of die per
wafer.
• Because of the complexity of the manufacturing process, not all die on a wafer function
correctly.
• Dust particles and small imperfections in starting material or photomasking can result in bridged
connections or missing features. These imperfections result in what is termed a fault.
• In an extreme example, Intel failed to correct a logic bug in the Pentium floating point divider
until more than 4 million units had shipped in 1994. IBM halted sales of Pentium-based
computers and Intel was forced to recall the flawed chips. The mistake and lack of prompt
response cost the company an estimated $450 million.
• Functional equivalence involves running a simulator at gate level and functional level of the chip.
Outputs are checked at for all the inputs applied at convenient check points. This is most
conveniently done in an HDL by employing a test bench.
• RTL level description - the behaviour at a system level may be able to be fully verified. For
instance, in the case of a microprocessor, one can boot the operating system and run key programs
for the behavioural description. However, this might be impractical due to long simulation times for
a gate-level model and even harder for a transistor-level model.
• Functional tests should be written to simulate as closely as possible the way in which the chip or
system will be used in the real world. Often, this is impractical due to slow simulation times and
extremely long verification sequences.
• One approach is to move up the simulation hierarchy as modules become verified at lower levels.
Verification at the top chip level using an FPGA emulator offers several advantages over
simulation and close to real time.
2.1.6 DEBUGGING
2.1.6.1 LAB RUN TESTS
When a chip returns from fabrication, several tests are run in a lab environment.
• Construct a circuit board that provides the following attributes:
o Power for the IC with ability to vary VDD and measure power dissipation
o Real-world signal connections (i.e., analog and digital inputs and outputs as
required)
o Clock inputs as required (it is helpful to have a stable variable-frequency clock
o generator)
o A digital interface to a PC (either serial or parallel ports for slow data or PCI bus for fast
data interchanges)
• Writing software routines
o Software routines can be written to interface with the chip through serial or parallel port
or the bus interface.
o The lowest level of the software should provide for peeking (reading) and poking
(writing) registers in the chip.
• Smoke Test
This involves ramping the supply voltages from zero to VDD while monitoring the current
without any clocks running. For a fully static circuit, the current should remain at zero. Analog
circuits will draw their quiescent current.
• PC based peek and poke software can be used to examine the health of various registers.
• Tests are required to verify that each gate and register is operational and has not been
compromised by a manufacturing defect.
• Tests can be carried out at the wafer level to discard bad dies, or can be left until the parts are
packaged. This decision would normally be determined by the yield and package cost.
• If the yield is high and the package cost low (i.e., a plastic package), then the part can be tested
only once after packaging. However, if the wafer yield was lower and the package cost high (i.e.,
an expensive ceramic package), it is more economical to first screen bad dice at the wafer level.
• Apart from the verification of internal gates, I/O integrity is also tested, with the following
tests being completed:
o I/O levels (i.e., checking noise margin for TTL, ECL, or CMOS I/O pads)
o Speed test
The circuit could be tested by applying all combinations of these directed vectors to the various
inputs. Directed vectors are an efficient way to catch the most obvious design errors and a good
logic designer will always run a set of directed tests on a new piece of RTL to ensure a minimum
level of quality.
• Applying a large number of random or semirandom vectors is a good way to detect more
refined errors. The effectiveness of the set of vectors is measured by the fault coverage. Automatic
test pattern generation tools are good at producing high fault coverage for manufacturing test.
Two bridging or shorted faults are shown in Figure a. The short S1 results in an S-A-0 fault at input
A, while short S2 modifies the function of the gate.
• Considering the case of a 2-input NOR gate in which one of the transistors is rendered ineffective.
̅̅̅̅ ) +
If nMOS transistor A is stuck open, then the function displayed by the gate will be 𝑍 = (𝐴+𝐵
𝐵𝑍̅, where 𝑍̅ is the previous state of the gate.
• Stuck - closed states can be detected by observing the static VDD current (IDD) while applying
test vectors.
2.3.2 OBSERVABILITY
• The observability of a particular internal circuit node is the degree to which one can observe that
node at the outputs of an IC.
• This metric is relevant when one wants to measure the output of a gate within a larger circuit to
check that it operates correctly.
• Given the limited number of nodes that can be directly observed, it is the aim of good chip
designers to have easily observed gate outputs.
• Ideally, one should be able to observe directly or with moderate indirection every gate output
within an integrated circuit. This involves expense of extra test circuitry and a lack of design
methodology, current processes and design practices allow you to approach this ideal.
Dept. of E&CE 19 VVCE Mysore
VLSI DESIGN (18EC72)
2.3.3 CONTROLLABILITY
• The controllability of an internal circuit node within a chip is a measure of the ease of setting the
node to a 1 or 0 state.
• This metric is of importance when assessing the degree of difficulty of testing a particular signal
within a circuit.
• An easily controllable node would be directly settable via an input pad. A node with little
controllability might require many hundreds or thousands of cycles to get it to the right state.
• It should be the aim of good chip designers to make all nodes easily controllable. Making all flip-
flops resettable via a global reset signal is one step toward good controllability.
2.3.4 REPEATABILITY
• The repeatability of a system is the ability to produce the same outputs given the same inputs.
• Combinational logic and synchronous sequential logic are always repeatable when it is
functioning correctly.
• However, certain asynchronous sequential circuits are nondeterministic. For example, an arbiter
may select either input when both arrive at nearly the same time.
• Testing is much easier when the system is repeatable. Some systems with asynchronous interfaces
have a lock-step mode to facilitate repeatable testing.
2.3.5 SURVIVABILITY
• The survivability of a system is the ability to continue function after a fault.
• For example, error-correcting codes provide survivability in the event of soft errors. Redundant
rows and columns in memories and spare cores provide survivability in the event of
manufacturing defects. Adaptive techniques provide survivability in the event of process
variation.
• Some survivability features are invoked automatically by the hardware, while others are activated
by blowing fuses after manufacturing test.
• A complete feedback shift register (CFSR), shown in Figure, includes the zero state that may be
required in some test situations.
• An n-bit LFSR is converted to an n-bit CFSR by adding an n – 1 input NOR gate connected to
all but the last bit.
• A signature analyzer receives successive outputs of a combinational logic block and produces a
syndrome that is a function of these outputs.
• The syndrome is reset to 0, and then XORed with the output on each cycle. The syndrome is
swizzled each cycle so that a fault in one bit is unlikely to cancel itself out.
• At the end of a test sequence, the LFSR contains the syndrome that is a function of all previous
outputs. This can be compared with the correct syndrome (derived by running a test program on
the good logic) to determine whether the circuit is good or bad. If the syndrome contains enough
bits, it is improbable that a defective circuit will produce the correct syndrome.
(a)
(b)
Fig.: BIST (a) 3-bit register, (b) use in a system
• The 3-bit BIST register shown in Figure is a scannable, resettable register that also can serve as
a pattern generator and signature analyzer.
• C[1:0] specifies the mode of operation.
• In the reset mode (10), all the flip-flops are synchronously initialized to 0.
• In normal mode (11), the flip-flops behave normally with their D input and Q output.
• In scan mode (00), the flip-flops are configured as a 3-bit shift register between SI and SO. Note
that there is an inversion between each stage.
• In test mode (01), the register behaves as a pseudo-random sequence generator or signature
analyzer.
• If all the D inputs are held low, the Q outputs loop through a pseudo-random bit sequence, which
can serve as the input to the combinational logic. If the D inputs are taken from the
combinational logic output, they are swizzled with the existing state to produce the syndrome.
• In summary, BIST is performed by first resetting the syndrome in the output register. Then both
registers are placed in the test mode to produce the pseudo-random inputs and calculate the
syndrome. Finally, the syndrome is shifted out through the scan chain.
2) What is fault model? Explain stuck-at model with examples [Mar 2022, 07 M]
3) Mention the approaches used in design for testability. Explain scan-based testing using necessary
diagrams. [Mar 2022, 07 M]
4) Draw the circuit of 3-bit BIST register and explain. [Mar 2022, 06 M]
5) With necessary circuit diagram, explain the operation of three transistor DRAM cell.
[Mar 2022, 08 M]
6) Explain full CMOS SRAM cell with necessary circuit topology. [Mar 2022, 08 M]